@strapi/core 0.0.0-experimental.a9a5a36dd73072c19eadeff5f387e8286b2a4d22 → 0.0.0-experimental.aa7a2469494b789539dfb9508d5dce9526d83b7d

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 (821) hide show
  1. package/LICENSE +18 -3
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/Strapi.js +430 -403
  4. package/dist/Strapi.js.map +1 -1
  5. package/dist/Strapi.mjs +429 -402
  6. package/dist/Strapi.mjs.map +1 -1
  7. package/dist/compile.js +23 -14
  8. package/dist/compile.js.map +1 -1
  9. package/dist/compile.mjs +22 -14
  10. package/dist/compile.mjs.map +1 -1
  11. package/dist/configuration/config-loader.js +110 -97
  12. package/dist/configuration/config-loader.js.map +1 -1
  13. package/dist/configuration/config-loader.mjs +109 -96
  14. package/dist/configuration/config-loader.mjs.map +1 -1
  15. package/dist/configuration/get-dirs.js +31 -29
  16. package/dist/configuration/get-dirs.js.map +1 -1
  17. package/dist/configuration/get-dirs.mjs +30 -30
  18. package/dist/configuration/get-dirs.mjs.map +1 -1
  19. package/dist/configuration/index.d.ts +4 -0
  20. package/dist/configuration/index.d.ts.map +1 -1
  21. package/dist/configuration/index.js +88 -73
  22. package/dist/configuration/index.js.map +1 -1
  23. package/dist/configuration/index.mjs +87 -69
  24. package/dist/configuration/index.mjs.map +1 -1
  25. package/dist/configuration/urls.d.ts.map +1 -1
  26. package/dist/configuration/urls.js +74 -61
  27. package/dist/configuration/urls.js.map +1 -1
  28. package/dist/configuration/urls.mjs +73 -62
  29. package/dist/configuration/urls.mjs.map +1 -1
  30. package/dist/container.js +27 -23
  31. package/dist/container.js.map +1 -1
  32. package/dist/container.mjs +26 -24
  33. package/dist/container.mjs.map +1 -1
  34. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  35. package/dist/core-api/controller/collection-type.js +77 -76
  36. package/dist/core-api/controller/collection-type.js.map +1 -1
  37. package/dist/core-api/controller/collection-type.mjs +76 -77
  38. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  39. package/dist/core-api/controller/index.d.ts.map +1 -1
  40. package/dist/core-api/controller/index.js +64 -48
  41. package/dist/core-api/controller/index.js.map +1 -1
  42. package/dist/core-api/controller/index.mjs +63 -49
  43. package/dist/core-api/controller/index.mjs.map +1 -1
  44. package/dist/core-api/controller/single-type.js +41 -40
  45. package/dist/core-api/controller/single-type.js.map +1 -1
  46. package/dist/core-api/controller/single-type.mjs +40 -41
  47. package/dist/core-api/controller/single-type.mjs.map +1 -1
  48. package/dist/core-api/controller/transform.d.ts +3 -2
  49. package/dist/core-api/controller/transform.d.ts.map +1 -1
  50. package/dist/core-api/controller/transform.js +79 -64
  51. package/dist/core-api/controller/transform.js.map +1 -1
  52. package/dist/core-api/controller/transform.mjs +78 -65
  53. package/dist/core-api/controller/transform.mjs.map +1 -1
  54. package/dist/core-api/routes/index.d.ts +4 -22
  55. package/dist/core-api/routes/index.d.ts.map +1 -1
  56. package/dist/core-api/routes/index.js +205 -61
  57. package/dist/core-api/routes/index.js.map +1 -1
  58. package/dist/core-api/routes/index.mjs +185 -62
  59. package/dist/core-api/routes/index.mjs.map +1 -1
  60. package/dist/core-api/routes/validation/attributes.d.ts +244 -0
  61. package/dist/core-api/routes/validation/attributes.d.ts.map +1 -0
  62. package/dist/core-api/routes/validation/attributes.js +560 -0
  63. package/dist/core-api/routes/validation/attributes.js.map +1 -0
  64. package/dist/core-api/routes/validation/attributes.mjs +521 -0
  65. package/dist/core-api/routes/validation/attributes.mjs.map +1 -0
  66. package/dist/core-api/routes/validation/common.d.ts +105 -0
  67. package/dist/core-api/routes/validation/common.d.ts.map +1 -0
  68. package/dist/core-api/routes/validation/common.js +116 -0
  69. package/dist/core-api/routes/validation/common.js.map +1 -0
  70. package/dist/core-api/routes/validation/common.mjs +95 -0
  71. package/dist/core-api/routes/validation/common.mjs.map +1 -0
  72. package/dist/core-api/routes/validation/component.d.ts +34 -0
  73. package/dist/core-api/routes/validation/component.d.ts.map +1 -0
  74. package/dist/core-api/routes/validation/component.js +45 -0
  75. package/dist/core-api/routes/validation/component.js.map +1 -0
  76. package/dist/core-api/routes/validation/component.mjs +43 -0
  77. package/dist/core-api/routes/validation/component.mjs.map +1 -0
  78. package/dist/core-api/routes/validation/constants.d.ts +8 -0
  79. package/dist/core-api/routes/validation/constants.d.ts.map +1 -0
  80. package/dist/core-api/routes/validation/constants.js +18 -0
  81. package/dist/core-api/routes/validation/constants.js.map +1 -0
  82. package/dist/core-api/routes/validation/constants.mjs +16 -0
  83. package/dist/core-api/routes/validation/constants.mjs.map +1 -0
  84. package/dist/core-api/routes/validation/content-type.d.ts +128 -0
  85. package/dist/core-api/routes/validation/content-type.d.ts.map +1 -0
  86. package/dist/core-api/routes/validation/content-type.js +201 -0
  87. package/dist/core-api/routes/validation/content-type.js.map +1 -0
  88. package/dist/core-api/routes/validation/content-type.mjs +180 -0
  89. package/dist/core-api/routes/validation/content-type.mjs.map +1 -0
  90. package/dist/core-api/routes/validation/index.d.ts +5 -0
  91. package/dist/core-api/routes/validation/index.d.ts.map +1 -0
  92. package/dist/core-api/routes/validation/mappers.d.ts +105 -0
  93. package/dist/core-api/routes/validation/mappers.d.ts.map +1 -0
  94. package/dist/core-api/routes/validation/mappers.js +238 -0
  95. package/dist/core-api/routes/validation/mappers.js.map +1 -0
  96. package/dist/core-api/routes/validation/mappers.mjs +214 -0
  97. package/dist/core-api/routes/validation/mappers.mjs.map +1 -0
  98. package/dist/core-api/routes/validation/utils.d.ts +47 -0
  99. package/dist/core-api/routes/validation/utils.d.ts.map +1 -0
  100. package/dist/core-api/routes/validation/utils.js +112 -0
  101. package/dist/core-api/routes/validation/utils.js.map +1 -0
  102. package/dist/core-api/routes/validation/utils.mjs +90 -0
  103. package/dist/core-api/routes/validation/utils.mjs.map +1 -0
  104. package/dist/core-api/service/collection-type.d.ts +2 -2
  105. package/dist/core-api/service/collection-type.js +73 -60
  106. package/dist/core-api/service/collection-type.js.map +1 -1
  107. package/dist/core-api/service/collection-type.mjs +72 -62
  108. package/dist/core-api/service/collection-type.mjs.map +1 -1
  109. package/dist/core-api/service/core-service.js +9 -8
  110. package/dist/core-api/service/core-service.js.map +1 -1
  111. package/dist/core-api/service/core-service.mjs +8 -9
  112. package/dist/core-api/service/core-service.mjs.map +1 -1
  113. package/dist/core-api/service/index.js +13 -13
  114. package/dist/core-api/service/index.js.map +1 -1
  115. package/dist/core-api/service/index.mjs +12 -14
  116. package/dist/core-api/service/index.mjs.map +1 -1
  117. package/dist/core-api/service/pagination.js +69 -43
  118. package/dist/core-api/service/pagination.js.map +1 -1
  119. package/dist/core-api/service/pagination.mjs +68 -47
  120. package/dist/core-api/service/pagination.mjs.map +1 -1
  121. package/dist/core-api/service/single-type.js +43 -39
  122. package/dist/core-api/service/single-type.js.map +1 -1
  123. package/dist/core-api/service/single-type.mjs +42 -41
  124. package/dist/core-api/service/single-type.mjs.map +1 -1
  125. package/dist/domain/content-type/index.js +95 -100
  126. package/dist/domain/content-type/index.js.map +1 -1
  127. package/dist/domain/content-type/index.mjs +94 -100
  128. package/dist/domain/content-type/index.mjs.map +1 -1
  129. package/dist/domain/content-type/validator.js +84 -69
  130. package/dist/domain/content-type/validator.js.map +1 -1
  131. package/dist/domain/content-type/validator.mjs +83 -68
  132. package/dist/domain/content-type/validator.mjs.map +1 -1
  133. package/dist/domain/module/index.d.ts.map +1 -1
  134. package/dist/domain/module/index.js +112 -100
  135. package/dist/domain/module/index.js.map +1 -1
  136. package/dist/domain/module/index.mjs +111 -99
  137. package/dist/domain/module/index.mjs.map +1 -1
  138. package/dist/domain/module/validation.js +25 -20
  139. package/dist/domain/module/validation.js.map +1 -1
  140. package/dist/domain/module/validation.mjs +24 -21
  141. package/dist/domain/module/validation.mjs.map +1 -1
  142. package/dist/ee/index.d.ts +7 -0
  143. package/dist/ee/index.d.ts.map +1 -1
  144. package/dist/ee/index.js +197 -132
  145. package/dist/ee/index.js.map +1 -1
  146. package/dist/ee/index.mjs +196 -134
  147. package/dist/ee/index.mjs.map +1 -1
  148. package/dist/ee/license.d.ts +3 -1
  149. package/dist/ee/license.d.ts.map +1 -1
  150. package/dist/ee/license.js +105 -75
  151. package/dist/ee/license.js.map +1 -1
  152. package/dist/ee/license.mjs +103 -76
  153. package/dist/ee/license.mjs.map +1 -1
  154. package/dist/factories.d.ts +3 -1
  155. package/dist/factories.d.ts.map +1 -1
  156. package/dist/factories.js +80 -67
  157. package/dist/factories.js.map +1 -1
  158. package/dist/factories.mjs +77 -70
  159. package/dist/factories.mjs.map +1 -1
  160. package/dist/index.d.ts +14 -0
  161. package/dist/index.d.ts.map +1 -1
  162. package/dist/index.js +29 -26
  163. package/dist/index.js.map +1 -1
  164. package/dist/index.mjs +29 -29
  165. package/dist/index.mjs.map +1 -1
  166. package/dist/loaders/admin.d.ts.map +1 -1
  167. package/dist/loaders/admin.js +21 -20
  168. package/dist/loaders/admin.js.map +1 -1
  169. package/dist/loaders/admin.mjs +20 -20
  170. package/dist/loaders/admin.mjs.map +1 -1
  171. package/dist/loaders/apis.js +143 -120
  172. package/dist/loaders/apis.js.map +1 -1
  173. package/dist/loaders/apis.mjs +142 -119
  174. package/dist/loaders/apis.mjs.map +1 -1
  175. package/dist/loaders/components.js +33 -34
  176. package/dist/loaders/components.js.map +1 -1
  177. package/dist/loaders/components.mjs +32 -34
  178. package/dist/loaders/components.mjs.map +1 -1
  179. package/dist/loaders/index.js +22 -20
  180. package/dist/loaders/index.js.map +1 -1
  181. package/dist/loaders/index.mjs +21 -21
  182. package/dist/loaders/index.mjs.map +1 -1
  183. package/dist/loaders/middlewares.js +29 -25
  184. package/dist/loaders/middlewares.js.map +1 -1
  185. package/dist/loaders/middlewares.mjs +28 -25
  186. package/dist/loaders/middlewares.mjs.map +1 -1
  187. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  188. package/dist/loaders/plugins/get-enabled-plugins.js +125 -102
  189. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  190. package/dist/loaders/plugins/get-enabled-plugins.mjs +124 -101
  191. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  192. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  193. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  194. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  195. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  196. package/dist/loaders/plugins/index.d.ts.map +1 -1
  197. package/dist/loaders/plugins/index.js +141 -104
  198. package/dist/loaders/plugins/index.js.map +1 -1
  199. package/dist/loaders/plugins/index.mjs +121 -104
  200. package/dist/loaders/plugins/index.mjs.map +1 -1
  201. package/dist/loaders/policies.js +24 -20
  202. package/dist/loaders/policies.js.map +1 -1
  203. package/dist/loaders/policies.mjs +23 -20
  204. package/dist/loaders/policies.mjs.map +1 -1
  205. package/dist/loaders/sanitizers.js +10 -4
  206. package/dist/loaders/sanitizers.js.map +1 -1
  207. package/dist/loaders/sanitizers.mjs +9 -6
  208. package/dist/loaders/sanitizers.mjs.map +1 -1
  209. package/dist/loaders/src-index.js +35 -27
  210. package/dist/loaders/src-index.js.map +1 -1
  211. package/dist/loaders/src-index.mjs +34 -29
  212. package/dist/loaders/src-index.mjs.map +1 -1
  213. package/dist/loaders/validators.js +9 -4
  214. package/dist/loaders/validators.js.map +1 -1
  215. package/dist/loaders/validators.mjs +8 -6
  216. package/dist/loaders/validators.mjs.map +1 -1
  217. package/dist/middlewares/body.d.ts.map +1 -1
  218. package/dist/middlewares/body.js +58 -54
  219. package/dist/middlewares/body.js.map +1 -1
  220. package/dist/middlewares/body.mjs +57 -51
  221. package/dist/middlewares/body.mjs.map +1 -1
  222. package/dist/middlewares/compression.js +6 -6
  223. package/dist/middlewares/compression.js.map +1 -1
  224. package/dist/middlewares/compression.mjs +5 -5
  225. package/dist/middlewares/compression.mjs.map +1 -1
  226. package/dist/middlewares/cors.d.ts +9 -1
  227. package/dist/middlewares/cors.d.ts.map +1 -1
  228. package/dist/middlewares/cors.js +81 -44
  229. package/dist/middlewares/cors.js.map +1 -1
  230. package/dist/middlewares/cors.mjs +78 -42
  231. package/dist/middlewares/cors.mjs.map +1 -1
  232. package/dist/middlewares/errors.js +32 -30
  233. package/dist/middlewares/errors.js.map +1 -1
  234. package/dist/middlewares/errors.mjs +31 -31
  235. package/dist/middlewares/errors.mjs.map +1 -1
  236. package/dist/middlewares/favicon.js +27 -17
  237. package/dist/middlewares/favicon.js.map +1 -1
  238. package/dist/middlewares/favicon.mjs +26 -16
  239. package/dist/middlewares/favicon.mjs.map +1 -1
  240. package/dist/middlewares/index.js +32 -30
  241. package/dist/middlewares/index.js.map +1 -1
  242. package/dist/middlewares/index.mjs +31 -31
  243. package/dist/middlewares/index.mjs.map +1 -1
  244. package/dist/middlewares/ip.js +6 -6
  245. package/dist/middlewares/ip.js.map +1 -1
  246. package/dist/middlewares/ip.mjs +5 -5
  247. package/dist/middlewares/ip.mjs.map +1 -1
  248. package/dist/middlewares/logger.js +10 -9
  249. package/dist/middlewares/logger.js.map +1 -1
  250. package/dist/middlewares/logger.mjs +9 -10
  251. package/dist/middlewares/logger.mjs.map +1 -1
  252. package/dist/middlewares/powered-by.js +13 -9
  253. package/dist/middlewares/powered-by.js.map +1 -1
  254. package/dist/middlewares/powered-by.mjs +12 -10
  255. package/dist/middlewares/powered-by.mjs.map +1 -1
  256. package/dist/middlewares/public.js +33 -29
  257. package/dist/middlewares/public.js.map +1 -1
  258. package/dist/middlewares/public.mjs +32 -28
  259. package/dist/middlewares/public.mjs.map +1 -1
  260. package/dist/middlewares/query.d.ts.map +1 -1
  261. package/dist/middlewares/query.js +35 -32
  262. package/dist/middlewares/query.js.map +1 -1
  263. package/dist/middlewares/query.mjs +34 -31
  264. package/dist/middlewares/query.mjs.map +1 -1
  265. package/dist/middlewares/response-time.js +10 -9
  266. package/dist/middlewares/response-time.js.map +1 -1
  267. package/dist/middlewares/response-time.mjs +9 -10
  268. package/dist/middlewares/response-time.mjs.map +1 -1
  269. package/dist/middlewares/responses.js +14 -12
  270. package/dist/middlewares/responses.js.map +1 -1
  271. package/dist/middlewares/responses.mjs +13 -13
  272. package/dist/middlewares/responses.mjs.map +1 -1
  273. package/dist/middlewares/security.d.ts.map +1 -1
  274. package/dist/middlewares/security.js +109 -71
  275. package/dist/middlewares/security.js.map +1 -1
  276. package/dist/middlewares/security.mjs +108 -70
  277. package/dist/middlewares/security.mjs.map +1 -1
  278. package/dist/middlewares/session.js +26 -25
  279. package/dist/middlewares/session.js.map +1 -1
  280. package/dist/middlewares/session.mjs +25 -24
  281. package/dist/middlewares/session.mjs.map +1 -1
  282. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +14 -11
  283. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  284. package/dist/migrations/database/5.0.0-discard-drafts.js +153 -35
  285. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  286. package/dist/migrations/database/5.0.0-discard-drafts.mjs +152 -37
  287. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  288. package/dist/migrations/draft-publish.d.ts +2 -2
  289. package/dist/migrations/draft-publish.d.ts.map +1 -1
  290. package/dist/migrations/draft-publish.js +61 -34
  291. package/dist/migrations/draft-publish.js.map +1 -1
  292. package/dist/migrations/draft-publish.mjs +60 -36
  293. package/dist/migrations/draft-publish.mjs.map +1 -1
  294. package/dist/migrations/i18n.d.ts +5 -0
  295. package/dist/migrations/i18n.d.ts.map +1 -0
  296. package/dist/migrations/i18n.js +71 -0
  297. package/dist/migrations/i18n.js.map +1 -0
  298. package/dist/migrations/i18n.mjs +68 -0
  299. package/dist/migrations/i18n.mjs.map +1 -0
  300. package/dist/migrations/index.d.ts +5 -0
  301. package/dist/migrations/index.d.ts.map +1 -0
  302. package/dist/migrations/index.js +29 -0
  303. package/dist/migrations/index.js.map +1 -0
  304. package/dist/migrations/index.mjs +26 -0
  305. package/dist/migrations/index.mjs.map +1 -0
  306. package/dist/package.json.js +186 -0
  307. package/dist/package.json.js.map +1 -0
  308. package/dist/package.json.mjs +163 -0
  309. package/dist/package.json.mjs.map +1 -0
  310. package/dist/providers/admin.d.ts.map +1 -1
  311. package/dist/providers/admin.js +27 -17
  312. package/dist/providers/admin.js.map +1 -1
  313. package/dist/providers/admin.mjs +26 -19
  314. package/dist/providers/admin.mjs.map +1 -1
  315. package/dist/providers/coreStore.js +13 -8
  316. package/dist/providers/coreStore.js.map +1 -1
  317. package/dist/providers/coreStore.mjs +12 -10
  318. package/dist/providers/coreStore.mjs.map +1 -1
  319. package/dist/providers/cron.js +19 -16
  320. package/dist/providers/cron.js.map +1 -1
  321. package/dist/providers/cron.mjs +18 -18
  322. package/dist/providers/cron.mjs.map +1 -1
  323. package/dist/providers/index.js +18 -9
  324. package/dist/providers/index.js.map +1 -1
  325. package/dist/providers/index.mjs +17 -10
  326. package/dist/providers/index.mjs.map +1 -1
  327. package/dist/providers/provider.js +4 -3
  328. package/dist/providers/provider.js.map +1 -1
  329. package/dist/providers/provider.mjs +3 -4
  330. package/dist/providers/provider.mjs.map +1 -1
  331. package/dist/providers/registries.js +37 -32
  332. package/dist/providers/registries.js.map +1 -1
  333. package/dist/providers/registries.mjs +36 -34
  334. package/dist/providers/registries.mjs.map +1 -1
  335. package/dist/providers/telemetry.js +19 -16
  336. package/dist/providers/telemetry.js.map +1 -1
  337. package/dist/providers/telemetry.mjs +18 -18
  338. package/dist/providers/telemetry.mjs.map +1 -1
  339. package/dist/providers/webhooks.js +28 -26
  340. package/dist/providers/webhooks.js.map +1 -1
  341. package/dist/providers/webhooks.mjs +27 -28
  342. package/dist/providers/webhooks.mjs.map +1 -1
  343. package/dist/registries/apis.js +23 -20
  344. package/dist/registries/apis.js.map +1 -1
  345. package/dist/registries/apis.mjs +22 -22
  346. package/dist/registries/apis.mjs.map +1 -1
  347. package/dist/registries/components.js +35 -37
  348. package/dist/registries/components.js.map +1 -1
  349. package/dist/registries/components.mjs +34 -39
  350. package/dist/registries/components.mjs.map +1 -1
  351. package/dist/registries/content-types.js +54 -59
  352. package/dist/registries/content-types.js.map +1 -1
  353. package/dist/registries/content-types.mjs +53 -61
  354. package/dist/registries/content-types.mjs.map +1 -1
  355. package/dist/registries/controllers.js +70 -71
  356. package/dist/registries/controllers.js.map +1 -1
  357. package/dist/registries/controllers.mjs +69 -73
  358. package/dist/registries/controllers.mjs.map +1 -1
  359. package/dist/registries/custom-fields.js +75 -65
  360. package/dist/registries/custom-fields.js.map +1 -1
  361. package/dist/registries/custom-fields.mjs +74 -67
  362. package/dist/registries/custom-fields.mjs.map +1 -1
  363. package/dist/registries/hooks.js +46 -49
  364. package/dist/registries/hooks.js.map +1 -1
  365. package/dist/registries/hooks.mjs +45 -51
  366. package/dist/registries/hooks.mjs.map +1 -1
  367. package/dist/registries/middlewares.js +49 -51
  368. package/dist/registries/middlewares.js.map +1 -1
  369. package/dist/registries/middlewares.mjs +48 -53
  370. package/dist/registries/middlewares.mjs.map +1 -1
  371. package/dist/registries/models.js +14 -13
  372. package/dist/registries/models.js.map +1 -1
  373. package/dist/registries/models.mjs +13 -14
  374. package/dist/registries/models.mjs.map +1 -1
  375. package/dist/registries/modules.js +39 -36
  376. package/dist/registries/modules.js.map +1 -1
  377. package/dist/registries/modules.mjs +38 -38
  378. package/dist/registries/modules.mjs.map +1 -1
  379. package/dist/registries/namespace.js +21 -20
  380. package/dist/registries/namespace.js.map +1 -1
  381. package/dist/registries/namespace.mjs +20 -23
  382. package/dist/registries/namespace.mjs.map +1 -1
  383. package/dist/registries/plugins.js +23 -20
  384. package/dist/registries/plugins.js.map +1 -1
  385. package/dist/registries/plugins.mjs +22 -22
  386. package/dist/registries/plugins.mjs.map +1 -1
  387. package/dist/registries/policies.d.ts +1 -1
  388. package/dist/registries/policies.d.ts.map +1 -1
  389. package/dist/registries/policies.js +103 -96
  390. package/dist/registries/policies.js.map +1 -1
  391. package/dist/registries/policies.mjs +102 -98
  392. package/dist/registries/policies.mjs.map +1 -1
  393. package/dist/registries/sanitizers.js +23 -22
  394. package/dist/registries/sanitizers.js.map +1 -1
  395. package/dist/registries/sanitizers.mjs +22 -22
  396. package/dist/registries/sanitizers.mjs.map +1 -1
  397. package/dist/registries/services.js +71 -71
  398. package/dist/registries/services.js.map +1 -1
  399. package/dist/registries/services.mjs +70 -73
  400. package/dist/registries/services.mjs.map +1 -1
  401. package/dist/registries/validators.js +23 -22
  402. package/dist/registries/validators.js.map +1 -1
  403. package/dist/registries/validators.mjs +22 -22
  404. package/dist/registries/validators.mjs.map +1 -1
  405. package/dist/services/auth/index.js +74 -74
  406. package/dist/services/auth/index.js.map +1 -1
  407. package/dist/services/auth/index.mjs +73 -74
  408. package/dist/services/auth/index.mjs.map +1 -1
  409. package/dist/services/config.js +47 -43
  410. package/dist/services/config.js.map +1 -1
  411. package/dist/services/config.mjs +46 -44
  412. package/dist/services/config.mjs.map +1 -1
  413. package/dist/services/content-api/index.d.ts +10 -12
  414. package/dist/services/content-api/index.d.ts.map +1 -1
  415. package/dist/services/content-api/index.js +80 -79
  416. package/dist/services/content-api/index.js.map +1 -1
  417. package/dist/services/content-api/index.mjs +79 -79
  418. package/dist/services/content-api/index.mjs.map +1 -1
  419. package/dist/services/content-api/permissions/engine.js +8 -5
  420. package/dist/services/content-api/permissions/engine.js.map +1 -1
  421. package/dist/services/content-api/permissions/engine.mjs +7 -5
  422. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  423. package/dist/services/content-api/permissions/index.d.ts +10 -12
  424. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  425. package/dist/services/content-api/permissions/index.js +101 -81
  426. package/dist/services/content-api/permissions/index.js.map +1 -1
  427. package/dist/services/content-api/permissions/index.mjs +100 -81
  428. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  429. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  430. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  431. package/dist/services/content-api/permissions/providers/action.js +17 -14
  432. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  433. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  434. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  435. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  436. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  437. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  438. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  439. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  440. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  441. package/dist/services/content-source-maps.d.ts +8 -0
  442. package/dist/services/content-source-maps.d.ts.map +1 -0
  443. package/dist/services/content-source-maps.js +119 -0
  444. package/dist/services/content-source-maps.js.map +1 -0
  445. package/dist/services/content-source-maps.mjs +117 -0
  446. package/dist/services/content-source-maps.mjs.map +1 -0
  447. package/dist/services/core-store.d.ts +2 -2
  448. package/dist/services/core-store.d.ts.map +1 -1
  449. package/dist/services/core-store.js +115 -95
  450. package/dist/services/core-store.js.map +1 -1
  451. package/dist/services/core-store.mjs +114 -97
  452. package/dist/services/core-store.mjs.map +1 -1
  453. package/dist/services/cron.d.ts +3 -3
  454. package/dist/services/cron.d.ts.map +1 -1
  455. package/dist/services/cron.js +74 -60
  456. package/dist/services/cron.js.map +1 -1
  457. package/dist/services/cron.mjs +73 -62
  458. package/dist/services/cron.mjs.map +1 -1
  459. package/dist/services/custom-fields.js +9 -7
  460. package/dist/services/custom-fields.js.map +1 -1
  461. package/dist/services/custom-fields.mjs +8 -9
  462. package/dist/services/custom-fields.mjs.map +1 -1
  463. package/dist/services/document-service/attributes/index.js +23 -18
  464. package/dist/services/document-service/attributes/index.js.map +1 -1
  465. package/dist/services/document-service/attributes/index.mjs +22 -19
  466. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  467. package/dist/services/document-service/attributes/transforms.js +16 -15
  468. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  469. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  470. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  471. package/dist/services/document-service/common.d.ts +1 -1
  472. package/dist/services/document-service/common.d.ts.map +1 -1
  473. package/dist/services/document-service/common.js +5 -4
  474. package/dist/services/document-service/common.js.map +1 -1
  475. package/dist/services/document-service/common.mjs +4 -5
  476. package/dist/services/document-service/common.mjs.map +1 -1
  477. package/dist/services/document-service/components.d.ts.map +1 -1
  478. package/dist/services/document-service/components.js +255 -257
  479. package/dist/services/document-service/components.js.map +1 -1
  480. package/dist/services/document-service/components.mjs +254 -262
  481. package/dist/services/document-service/components.mjs.map +1 -1
  482. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  483. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  484. package/dist/services/document-service/draft-and-publish.js +88 -48
  485. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  486. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  487. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  488. package/dist/services/document-service/entries.d.ts +2 -2
  489. package/dist/services/document-service/entries.d.ts.map +1 -1
  490. package/dist/services/document-service/entries.js +151 -92
  491. package/dist/services/document-service/entries.js.map +1 -1
  492. package/dist/services/document-service/entries.mjs +150 -93
  493. package/dist/services/document-service/entries.mjs.map +1 -1
  494. package/dist/services/document-service/events.d.ts +1 -1
  495. package/dist/services/document-service/events.d.ts.map +1 -1
  496. package/dist/services/document-service/events.js +52 -40
  497. package/dist/services/document-service/events.js.map +1 -1
  498. package/dist/services/document-service/events.mjs +51 -41
  499. package/dist/services/document-service/events.mjs.map +1 -1
  500. package/dist/services/document-service/index.d.ts +2 -1
  501. package/dist/services/document-service/index.d.ts.map +1 -1
  502. package/dist/services/document-service/index.js +53 -32
  503. package/dist/services/document-service/index.js.map +1 -1
  504. package/dist/services/document-service/index.mjs +52 -33
  505. package/dist/services/document-service/index.mjs.map +1 -1
  506. package/dist/services/document-service/internationalization.d.ts +6 -1
  507. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  508. package/dist/services/document-service/internationalization.js +94 -46
  509. package/dist/services/document-service/internationalization.js.map +1 -1
  510. package/dist/services/document-service/internationalization.mjs +92 -50
  511. package/dist/services/document-service/internationalization.mjs.map +1 -1
  512. package/dist/services/document-service/middlewares/errors.js +23 -19
  513. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  514. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  515. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  516. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  517. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  518. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  519. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  520. package/dist/services/document-service/params.js +11 -5
  521. package/dist/services/document-service/params.js.map +1 -1
  522. package/dist/services/document-service/params.mjs +10 -6
  523. package/dist/services/document-service/params.mjs.map +1 -1
  524. package/dist/services/document-service/repository.d.ts.map +1 -1
  525. package/dist/services/document-service/repository.js +356 -269
  526. package/dist/services/document-service/repository.js.map +1 -1
  527. package/dist/services/document-service/repository.mjs +355 -270
  528. package/dist/services/document-service/repository.mjs.map +1 -1
  529. package/dist/services/document-service/transform/data.js +22 -12
  530. package/dist/services/document-service/transform/data.js.map +1 -1
  531. package/dist/services/document-service/transform/data.mjs +21 -13
  532. package/dist/services/document-service/transform/data.mjs.map +1 -1
  533. package/dist/services/document-service/transform/fields.js +26 -17
  534. package/dist/services/document-service/transform/fields.js.map +1 -1
  535. package/dist/services/document-service/transform/fields.mjs +25 -18
  536. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  537. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  538. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  539. package/dist/services/document-service/transform/id-map.js +116 -69
  540. package/dist/services/document-service/transform/id-map.js.map +1 -1
  541. package/dist/services/document-service/transform/id-map.mjs +115 -70
  542. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  543. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  544. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  545. package/dist/services/document-service/transform/id-transform.js +37 -29
  546. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  547. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  548. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  549. package/dist/services/document-service/transform/populate.js +23 -18
  550. package/dist/services/document-service/transform/populate.js.map +1 -1
  551. package/dist/services/document-service/transform/populate.mjs +22 -19
  552. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  553. package/dist/services/document-service/transform/query.js +11 -6
  554. package/dist/services/document-service/transform/query.js.map +1 -1
  555. package/dist/services/document-service/transform/query.mjs +10 -7
  556. package/dist/services/document-service/transform/query.mjs.map +1 -1
  557. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  558. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  559. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  560. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  561. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  562. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  563. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  564. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  565. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  566. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  567. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  568. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  569. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  570. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  571. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  572. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  573. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  574. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  575. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  576. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  577. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  578. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  579. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  580. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  581. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  582. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  583. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  584. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  585. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  586. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  587. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  588. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  589. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  590. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  591. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  592. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  593. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  594. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  595. package/dist/services/document-service/utils/populate.d.ts +1 -1
  596. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  597. package/dist/services/document-service/utils/populate.js +67 -41
  598. package/dist/services/document-service/utils/populate.js.map +1 -1
  599. package/dist/services/document-service/utils/populate.mjs +66 -42
  600. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  601. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  602. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  603. package/dist/services/document-service/utils/unidirectional-relations.js +116 -0
  604. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  605. package/dist/services/document-service/utils/unidirectional-relations.mjs +113 -0
  606. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  607. package/dist/services/entity-service/index.js +230 -161
  608. package/dist/services/entity-service/index.js.map +1 -1
  609. package/dist/services/entity-service/index.mjs +229 -160
  610. package/dist/services/entity-service/index.mjs.map +1 -1
  611. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  612. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  613. package/dist/services/entity-validator/blocks-validator.js +137 -104
  614. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  615. package/dist/services/entity-validator/blocks-validator.mjs +135 -105
  616. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  617. package/dist/services/entity-validator/index.d.ts +2 -1
  618. package/dist/services/entity-validator/index.d.ts.map +1 -1
  619. package/dist/services/entity-validator/index.js +370 -367
  620. package/dist/services/entity-validator/index.js.map +1 -1
  621. package/dist/services/entity-validator/index.mjs +366 -364
  622. package/dist/services/entity-validator/index.mjs.map +1 -1
  623. package/dist/services/entity-validator/validators.d.ts +33 -23
  624. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  625. package/dist/services/entity-validator/validators.js +285 -150
  626. package/dist/services/entity-validator/validators.js.map +1 -1
  627. package/dist/services/entity-validator/validators.mjs +276 -149
  628. package/dist/services/entity-validator/validators.mjs.map +1 -1
  629. package/dist/services/errors.js +65 -65
  630. package/dist/services/errors.js.map +1 -1
  631. package/dist/services/errors.mjs +64 -66
  632. package/dist/services/errors.mjs.map +1 -1
  633. package/dist/services/event-hub.js +82 -69
  634. package/dist/services/event-hub.js.map +1 -1
  635. package/dist/services/event-hub.mjs +81 -71
  636. package/dist/services/event-hub.mjs.map +1 -1
  637. package/dist/services/features.js +19 -14
  638. package/dist/services/features.js.map +1 -1
  639. package/dist/services/features.mjs +18 -15
  640. package/dist/services/features.mjs.map +1 -1
  641. package/dist/services/fs.js +41 -40
  642. package/dist/services/fs.js.map +1 -1
  643. package/dist/services/fs.mjs +40 -39
  644. package/dist/services/fs.mjs.map +1 -1
  645. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  646. package/dist/services/metrics/admin-user-hash.js +13 -11
  647. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  648. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  649. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  650. package/dist/services/metrics/index.d.ts +1 -1
  651. package/dist/services/metrics/index.d.ts.map +1 -1
  652. package/dist/services/metrics/index.js +47 -40
  653. package/dist/services/metrics/index.js.map +1 -1
  654. package/dist/services/metrics/index.mjs +46 -42
  655. package/dist/services/metrics/index.mjs.map +1 -1
  656. package/dist/services/metrics/is-truthy.js +13 -6
  657. package/dist/services/metrics/is-truthy.js.map +1 -1
  658. package/dist/services/metrics/is-truthy.mjs +12 -6
  659. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  660. package/dist/services/metrics/middleware.d.ts.map +1 -1
  661. package/dist/services/metrics/middleware.js +37 -22
  662. package/dist/services/metrics/middleware.js.map +1 -1
  663. package/dist/services/metrics/middleware.mjs +36 -24
  664. package/dist/services/metrics/middleware.mjs.map +1 -1
  665. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  666. package/dist/services/metrics/rate-limiter.js +24 -19
  667. package/dist/services/metrics/rate-limiter.js.map +1 -1
  668. package/dist/services/metrics/rate-limiter.mjs +23 -21
  669. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  670. package/dist/services/metrics/sender.d.ts.map +1 -1
  671. package/dist/services/metrics/sender.js +78 -69
  672. package/dist/services/metrics/sender.js.map +1 -1
  673. package/dist/services/metrics/sender.mjs +77 -64
  674. package/dist/services/metrics/sender.mjs.map +1 -1
  675. package/dist/services/query-params.js +13 -10
  676. package/dist/services/query-params.js.map +1 -1
  677. package/dist/services/query-params.mjs +12 -12
  678. package/dist/services/query-params.mjs.map +1 -1
  679. package/dist/services/reloader.js +35 -32
  680. package/dist/services/reloader.js.map +1 -1
  681. package/dist/services/reloader.mjs +34 -33
  682. package/dist/services/reloader.mjs.map +1 -1
  683. package/dist/services/request-context.js +11 -8
  684. package/dist/services/request-context.js.map +1 -1
  685. package/dist/services/request-context.mjs +10 -10
  686. package/dist/services/request-context.mjs.map +1 -1
  687. package/dist/services/server/admin-api.js +11 -10
  688. package/dist/services/server/admin-api.js.map +1 -1
  689. package/dist/services/server/admin-api.mjs +10 -11
  690. package/dist/services/server/admin-api.mjs.map +1 -1
  691. package/dist/services/server/api.js +33 -27
  692. package/dist/services/server/api.js.map +1 -1
  693. package/dist/services/server/api.mjs +32 -26
  694. package/dist/services/server/api.mjs.map +1 -1
  695. package/dist/services/server/compose-endpoint.js +116 -105
  696. package/dist/services/server/compose-endpoint.js.map +1 -1
  697. package/dist/services/server/compose-endpoint.mjs +115 -105
  698. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  699. package/dist/services/server/content-api.js +11 -9
  700. package/dist/services/server/content-api.js.map +1 -1
  701. package/dist/services/server/content-api.mjs +10 -10
  702. package/dist/services/server/content-api.mjs.map +1 -1
  703. package/dist/services/server/http-server.js +48 -44
  704. package/dist/services/server/http-server.js.map +1 -1
  705. package/dist/services/server/http-server.mjs +47 -43
  706. package/dist/services/server/http-server.mjs.map +1 -1
  707. package/dist/services/server/index.js +85 -82
  708. package/dist/services/server/index.js.map +1 -1
  709. package/dist/services/server/index.mjs +84 -81
  710. package/dist/services/server/index.mjs.map +1 -1
  711. package/dist/services/server/koa.js +49 -47
  712. package/dist/services/server/koa.js.map +1 -1
  713. package/dist/services/server/koa.mjs +48 -44
  714. package/dist/services/server/koa.mjs.map +1 -1
  715. package/dist/services/server/middleware.js +86 -82
  716. package/dist/services/server/middleware.js.map +1 -1
  717. package/dist/services/server/middleware.mjs +85 -82
  718. package/dist/services/server/middleware.mjs.map +1 -1
  719. package/dist/services/server/policy.js +24 -17
  720. package/dist/services/server/policy.js.map +1 -1
  721. package/dist/services/server/policy.mjs +23 -18
  722. package/dist/services/server/policy.mjs.map +1 -1
  723. package/dist/services/server/register-middlewares.js +68 -61
  724. package/dist/services/server/register-middlewares.js.map +1 -1
  725. package/dist/services/server/register-middlewares.mjs +67 -63
  726. package/dist/services/server/register-middlewares.mjs.map +1 -1
  727. package/dist/services/server/register-routes.js +109 -66
  728. package/dist/services/server/register-routes.js.map +1 -1
  729. package/dist/services/server/register-routes.mjs +108 -66
  730. package/dist/services/server/register-routes.mjs.map +1 -1
  731. package/dist/services/server/routing.d.ts +10 -0
  732. package/dist/services/server/routing.d.ts.map +1 -1
  733. package/dist/services/server/routing.js +100 -81
  734. package/dist/services/server/routing.js.map +1 -1
  735. package/dist/services/server/routing.mjs +99 -81
  736. package/dist/services/server/routing.mjs.map +1 -1
  737. package/dist/services/utils/conditional-fields.d.ts +3 -0
  738. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  739. package/dist/services/utils/conditional-fields.js +22 -0
  740. package/dist/services/utils/conditional-fields.js.map +1 -0
  741. package/dist/services/utils/conditional-fields.mjs +20 -0
  742. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  743. package/dist/services/utils/dynamic-zones.js +13 -14
  744. package/dist/services/utils/dynamic-zones.js.map +1 -1
  745. package/dist/services/utils/dynamic-zones.mjs +12 -16
  746. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  747. package/dist/services/webhook-runner.js +124 -122
  748. package/dist/services/webhook-runner.js.map +1 -1
  749. package/dist/services/webhook-runner.mjs +123 -121
  750. package/dist/services/webhook-runner.mjs.map +1 -1
  751. package/dist/services/webhook-store.js +132 -99
  752. package/dist/services/webhook-store.js.map +1 -1
  753. package/dist/services/webhook-store.mjs +131 -101
  754. package/dist/services/webhook-store.mjs.map +1 -1
  755. package/dist/services/worker-queue.js +44 -49
  756. package/dist/services/worker-queue.js.map +1 -1
  757. package/dist/services/worker-queue.mjs +43 -49
  758. package/dist/services/worker-queue.mjs.map +1 -1
  759. package/dist/utils/convert-custom-field-type.js +17 -20
  760. package/dist/utils/convert-custom-field-type.js.map +1 -1
  761. package/dist/utils/convert-custom-field-type.mjs +16 -21
  762. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  763. package/dist/utils/cron.js +64 -30
  764. package/dist/utils/cron.js.map +1 -1
  765. package/dist/utils/cron.mjs +63 -31
  766. package/dist/utils/cron.mjs.map +1 -1
  767. package/dist/utils/fetch.d.ts +5 -1
  768. package/dist/utils/fetch.d.ts.map +1 -1
  769. package/dist/utils/fetch.js +28 -18
  770. package/dist/utils/fetch.js.map +1 -1
  771. package/dist/utils/fetch.mjs +27 -19
  772. package/dist/utils/fetch.mjs.map +1 -1
  773. package/dist/utils/filepath-to-prop-path.js +20 -28
  774. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  775. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  776. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  777. package/dist/utils/is-initialized.js +21 -12
  778. package/dist/utils/is-initialized.js.map +1 -1
  779. package/dist/utils/is-initialized.mjs +20 -13
  780. package/dist/utils/is-initialized.mjs.map +1 -1
  781. package/dist/utils/lifecycles.js +6 -5
  782. package/dist/utils/lifecycles.js.map +1 -1
  783. package/dist/utils/lifecycles.mjs +5 -6
  784. package/dist/utils/lifecycles.mjs.map +1 -1
  785. package/dist/utils/load-config-file.js +40 -38
  786. package/dist/utils/load-config-file.js.map +1 -1
  787. package/dist/utils/load-config-file.mjs +39 -36
  788. package/dist/utils/load-config-file.mjs.map +1 -1
  789. package/dist/utils/load-files.js +40 -35
  790. package/dist/utils/load-files.js.map +1 -1
  791. package/dist/utils/load-files.mjs +39 -32
  792. package/dist/utils/load-files.mjs.map +1 -1
  793. package/dist/utils/open-browser.js +8 -8
  794. package/dist/utils/open-browser.js.map +1 -1
  795. package/dist/utils/open-browser.mjs +7 -7
  796. package/dist/utils/open-browser.mjs.map +1 -1
  797. package/dist/utils/resolve-working-dirs.js +23 -10
  798. package/dist/utils/resolve-working-dirs.js.map +1 -1
  799. package/dist/utils/resolve-working-dirs.mjs +22 -9
  800. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  801. package/dist/utils/signals.js +20 -14
  802. package/dist/utils/signals.js.map +1 -1
  803. package/dist/utils/signals.mjs +19 -15
  804. package/dist/utils/signals.mjs.map +1 -1
  805. package/dist/utils/startup-logger.d.ts.map +1 -1
  806. package/dist/utils/startup-logger.js +107 -78
  807. package/dist/utils/startup-logger.js.map +1 -1
  808. package/dist/utils/startup-logger.mjs +106 -75
  809. package/dist/utils/startup-logger.mjs.map +1 -1
  810. package/dist/utils/transform-content-types-to-models.d.ts +552 -23
  811. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  812. package/dist/utils/transform-content-types-to-models.js +350 -260
  813. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  814. package/dist/utils/transform-content-types-to-models.mjs +349 -268
  815. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  816. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  817. package/dist/utils/update-notifier/index.js +68 -73
  818. package/dist/utils/update-notifier/index.js.map +1 -1
  819. package/dist/utils/update-notifier/index.mjs +67 -67
  820. package/dist/utils/update-notifier/index.mjs.map +1 -1
  821. package/package.json +35 -32
@@ -1,81 +1,81 @@
1
- "use strict";
2
- const assert = require("assert/strict");
3
- const fp = require("lodash/fp");
4
- const strapiUtils = require("@strapi/utils");
5
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
6
- const assert__default = /* @__PURE__ */ _interopDefault(assert);
7
- const INVALID_STRATEGY_MSG = "Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}";
8
- const validStrategy = (strategy) => {
9
- assert__default.default(fp.has("authenticate", strategy), INVALID_STRATEGY_MSG);
10
- assert__default.default(typeof strategy.authenticate === "function", INVALID_STRATEGY_MSG);
11
- if (fp.has("verify", strategy)) {
12
- assert__default.default(typeof strategy.verify === "function", INVALID_STRATEGY_MSG);
13
- }
1
+ 'use strict';
2
+
3
+ var assert = require('assert/strict');
4
+ var fp = require('lodash/fp');
5
+ var strapiUtils = require('@strapi/utils');
6
+
7
+ const INVALID_STRATEGY_MSG = 'Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}';
8
+ const validStrategy = (strategy)=>{
9
+ assert(fp.has('authenticate', strategy), INVALID_STRATEGY_MSG);
10
+ assert(typeof strategy.authenticate === 'function', INVALID_STRATEGY_MSG);
11
+ if (fp.has('verify', strategy)) {
12
+ assert(typeof strategy.verify === 'function', INVALID_STRATEGY_MSG);
13
+ }
14
14
  };
15
- const createAuthentication = () => {
16
- const strategies = {};
17
- return {
18
- register(type, strategy) {
19
- validStrategy(strategy);
20
- if (!strategies[type]) {
21
- strategies[type] = [];
22
- }
23
- strategies[type].push(strategy);
24
- return this;
25
- },
26
- async authenticate(ctx, next) {
27
- const route = ctx.state.route;
28
- const config = route?.config?.auth;
29
- if (config === false) {
30
- return next();
31
- }
32
- const routeStrategies = route.info.type ? strategies[route.info.type] : [];
33
- const configStrategies = config?.strategies ?? routeStrategies ?? [];
34
- const strategiesToUse = configStrategies.reduce(
35
- (acc, strategy) => {
36
- if (typeof strategy === "string") {
37
- const routeStrategy = routeStrategies.find((rs) => rs.name === strategy);
38
- if (routeStrategy) {
39
- acc.push(routeStrategy);
40
- }
41
- } else if (typeof strategy === "object") {
15
+ const createAuthentication = ()=>{
16
+ const strategies = {};
17
+ return {
18
+ register (type, strategy) {
42
19
  validStrategy(strategy);
43
- acc.push(strategy);
44
- }
45
- return acc;
20
+ if (!strategies[type]) {
21
+ strategies[type] = [];
22
+ }
23
+ strategies[type].push(strategy);
24
+ return this;
46
25
  },
47
- []
48
- );
49
- for (const strategy of strategiesToUse) {
50
- const result = await strategy.authenticate(ctx);
51
- const { authenticated = false, credentials, ability = null, error = null } = result || {};
52
- if (error !== null) {
53
- return ctx.unauthorized(error);
54
- }
55
- if (authenticated) {
56
- ctx.state.isAuthenticated = true;
57
- ctx.state.auth = {
58
- strategy,
59
- credentials,
60
- ability
61
- };
62
- return next();
26
+ async authenticate (ctx, next) {
27
+ const route = ctx.state.route;
28
+ // use route strategy
29
+ const config = route?.config?.auth;
30
+ if (config === false) {
31
+ return next();
32
+ }
33
+ const routeStrategies = route.info.type ? strategies[route.info.type] : [];
34
+ const configStrategies = config?.strategies ?? routeStrategies ?? [];
35
+ const strategiesToUse = configStrategies.reduce((acc, strategy)=>{
36
+ // Resolve by strategy name
37
+ if (typeof strategy === 'string') {
38
+ const routeStrategy = routeStrategies.find((rs)=>rs.name === strategy);
39
+ if (routeStrategy) {
40
+ acc.push(routeStrategy);
41
+ }
42
+ } else if (typeof strategy === 'object') {
43
+ validStrategy(strategy);
44
+ acc.push(strategy);
45
+ }
46
+ return acc;
47
+ }, []);
48
+ for (const strategy of strategiesToUse){
49
+ const result = await strategy.authenticate(ctx);
50
+ const { authenticated = false, credentials, ability = null, error = null } = result || {};
51
+ if (error !== null) {
52
+ return ctx.unauthorized(error);
53
+ }
54
+ if (authenticated) {
55
+ ctx.state.isAuthenticated = true;
56
+ ctx.state.auth = {
57
+ strategy,
58
+ credentials,
59
+ ability
60
+ };
61
+ return next();
62
+ }
63
+ }
64
+ return ctx.unauthorized('Missing or invalid credentials');
65
+ },
66
+ async verify (auth, config = {}) {
67
+ if (config === false) {
68
+ return;
69
+ }
70
+ if (!auth) {
71
+ throw new strapiUtils.errors.UnauthorizedError();
72
+ }
73
+ if (typeof auth.strategy.verify === 'function') {
74
+ return auth.strategy.verify(auth, config);
75
+ }
63
76
  }
64
- }
65
- return ctx.unauthorized("Missing or invalid credentials");
66
- },
67
- async verify(auth, config = {}) {
68
- if (config === false) {
69
- return;
70
- }
71
- if (!auth) {
72
- throw new strapiUtils.errors.UnauthorizedError();
73
- }
74
- if (typeof auth.strategy.verify === "function") {
75
- return auth.strategy.verify(auth, config);
76
- }
77
- }
78
- };
77
+ };
79
78
  };
79
+
80
80
  module.exports = createAuthentication;
81
81
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/services/auth/index.ts"],"sourcesContent":["import assert from 'assert/strict';\nimport { has } from 'lodash/fp';\n\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport type { ParameterizedContext } from 'koa';\n\ninterface AuthenticationResponse {\n authenticated?: boolean;\n credentials?: unknown;\n ability?: unknown;\n error?: Error | null;\n}\n\ninterface AuthenticationInfo {\n strategy: Strategy;\n credentials: unknown;\n ability: unknown;\n}\n\ninterface Strategy {\n name: string;\n authenticate: (ctx: ParameterizedContext) => Promise<AuthenticationResponse>;\n verify?: (auth: AuthenticationInfo, config: Core.RouteConfig['auth']) => Promise<any>;\n}\n\ninterface Authentication {\n register: (type: string, strategy: Strategy) => Authentication;\n authenticate: Core.MiddlewareHandler;\n verify: (auth: AuthenticationInfo, config?: Core.RouteConfig['auth']) => Promise<any>;\n}\n\nconst INVALID_STRATEGY_MSG =\n 'Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}';\n\nconst validStrategy = (strategy: Strategy) => {\n assert(has('authenticate', strategy), INVALID_STRATEGY_MSG);\n assert(typeof strategy.authenticate === 'function', INVALID_STRATEGY_MSG);\n\n if (has('verify', strategy)) {\n assert(typeof strategy.verify === 'function', INVALID_STRATEGY_MSG);\n }\n};\n\nconst createAuthentication = (): Authentication => {\n const strategies: Record<string, Strategy[]> = {};\n\n return {\n register(type, strategy) {\n validStrategy(strategy);\n\n if (!strategies[type]) {\n strategies[type] = [];\n }\n\n strategies[type].push(strategy);\n\n return this;\n },\n\n async authenticate(ctx, next) {\n const route: Core.Route = ctx.state.route;\n\n // use route strategy\n const config = route?.config?.auth;\n\n if (config === false) {\n return next();\n }\n\n const routeStrategies = route.info.type ? strategies[route.info.type] : [];\n const configStrategies = (config?.strategies ?? routeStrategies ?? []) as Array<\n string | Strategy\n >;\n\n const strategiesToUse: Strategy[] = configStrategies.reduce(\n (acc, strategy: string | Strategy) => {\n // Resolve by strategy name\n if (typeof strategy === 'string') {\n const routeStrategy = routeStrategies.find((rs) => rs.name === strategy);\n\n if (routeStrategy) {\n acc.push(routeStrategy);\n }\n }\n\n // Use the given strategy as is\n else if (typeof strategy === 'object') {\n validStrategy(strategy);\n\n acc.push(strategy);\n }\n\n return acc;\n },\n [] as Strategy[]\n );\n\n for (const strategy of strategiesToUse) {\n const result = await strategy.authenticate(ctx);\n\n const { authenticated = false, credentials, ability = null, error = null } = result || {};\n\n if (error !== null) {\n return ctx.unauthorized(error);\n }\n\n if (authenticated) {\n ctx.state.isAuthenticated = true;\n ctx.state.auth = {\n strategy,\n credentials,\n ability,\n };\n\n return next();\n }\n }\n\n return ctx.unauthorized('Missing or invalid credentials');\n },\n\n async verify(auth, config = {}) {\n if (config === false) {\n return;\n }\n\n if (!auth) {\n throw new errors.UnauthorizedError();\n }\n\n if (typeof auth.strategy.verify === 'function') {\n return auth.strategy.verify(auth, config);\n }\n },\n };\n};\n\nexport default createAuthentication;\n"],"names":["assert","has","errors"],"mappings":";;;;;;AAgCA,MAAM,uBACJ;AAEF,MAAM,gBAAgB,CAAC,aAAuB;AAC5CA,kBAAAA,QAAOC,GAAAA,IAAI,gBAAgB,QAAQ,GAAG,oBAAoB;AAC1DD,kBAAAA,QAAO,OAAO,SAAS,iBAAiB,YAAY,oBAAoB;AAEpE,MAAAC,GAAA,IAAI,UAAU,QAAQ,GAAG;AAC3BD,oBAAAA,QAAO,OAAO,SAAS,WAAW,YAAY,oBAAoB;AAAA,EACpE;AACF;AAEA,MAAM,uBAAuB,MAAsB;AACjD,QAAM,aAAyC,CAAA;AAExC,SAAA;AAAA,IACL,SAAS,MAAM,UAAU;AACvB,oBAAc,QAAQ;AAElB,UAAA,CAAC,WAAW,IAAI,GAAG;AACV,mBAAA,IAAI,IAAI;MACrB;AAEW,iBAAA,IAAI,EAAE,KAAK,QAAQ;AAEvB,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,aAAa,KAAK,MAAM;AACtB,YAAA,QAAoB,IAAI,MAAM;AAG9B,YAAA,SAAS,OAAO,QAAQ;AAE9B,UAAI,WAAW,OAAO;AACpB,eAAO,KAAK;AAAA,MACd;AAEM,YAAA,kBAAkB,MAAM,KAAK,OAAO,WAAW,MAAM,KAAK,IAAI,IAAI;AACxE,YAAM,mBAAoB,QAAQ,cAAc,mBAAmB,CAAA;AAInE,YAAM,kBAA8B,iBAAiB;AAAA,QACnD,CAAC,KAAK,aAAgC;AAEhC,cAAA,OAAO,aAAa,UAAU;AAChC,kBAAM,gBAAgB,gBAAgB,KAAK,CAAC,OAAO,GAAG,SAAS,QAAQ;AAEvE,gBAAI,eAAe;AACjB,kBAAI,KAAK,aAAa;AAAA,YACxB;AAAA,UAAA,WAIO,OAAO,aAAa,UAAU;AACrC,0BAAc,QAAQ;AAEtB,gBAAI,KAAK,QAAQ;AAAA,UACnB;AAEO,iBAAA;AAAA,QACT;AAAA,QACA,CAAC;AAAA,MAAA;AAGH,iBAAW,YAAY,iBAAiB;AACtC,cAAM,SAAS,MAAM,SAAS,aAAa,GAAG;AAExC,cAAA,EAAE,gBAAgB,OAAO,aAAa,UAAU,MAAM,QAAQ,KAAA,IAAS,UAAU;AAEvF,YAAI,UAAU,MAAM;AACX,iBAAA,IAAI,aAAa,KAAK;AAAA,QAC/B;AAEA,YAAI,eAAe;AACjB,cAAI,MAAM,kBAAkB;AAC5B,cAAI,MAAM,OAAO;AAAA,YACf;AAAA,YACA;AAAA,YACA;AAAA,UAAA;AAGF,iBAAO,KAAK;AAAA,QACd;AAAA,MACF;AAEO,aAAA,IAAI,aAAa,gCAAgC;AAAA,IAC1D;AAAA,IAEA,MAAM,OAAO,MAAM,SAAS,IAAI;AAC9B,UAAI,WAAW,OAAO;AACpB;AAAA,MACF;AAEA,UAAI,CAAC,MAAM;AACH,cAAA,IAAIE,YAAAA,OAAO;MACnB;AAEA,UAAI,OAAO,KAAK,SAAS,WAAW,YAAY;AAC9C,eAAO,KAAK,SAAS,OAAO,MAAM,MAAM;AAAA,MAC1C;AAAA,IACF;AAAA,EAAA;AAEJ;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/services/auth/index.ts"],"sourcesContent":["import assert from 'assert/strict';\nimport { has } from 'lodash/fp';\n\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport type { ParameterizedContext } from 'koa';\n\ninterface AuthenticationResponse {\n authenticated?: boolean;\n credentials?: unknown;\n ability?: unknown;\n error?: Error | null;\n}\n\ninterface AuthenticationInfo {\n strategy: Strategy;\n credentials: unknown;\n ability: unknown;\n}\n\ninterface Strategy {\n name: string;\n authenticate: (ctx: ParameterizedContext) => Promise<AuthenticationResponse>;\n verify?: (auth: AuthenticationInfo, config: Core.RouteConfig['auth']) => Promise<any>;\n}\n\ninterface Authentication {\n register: (type: string, strategy: Strategy) => Authentication;\n authenticate: Core.MiddlewareHandler;\n verify: (auth: AuthenticationInfo, config?: Core.RouteConfig['auth']) => Promise<any>;\n}\n\nconst INVALID_STRATEGY_MSG =\n 'Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}';\n\nconst validStrategy = (strategy: Strategy) => {\n assert(has('authenticate', strategy), INVALID_STRATEGY_MSG);\n assert(typeof strategy.authenticate === 'function', INVALID_STRATEGY_MSG);\n\n if (has('verify', strategy)) {\n assert(typeof strategy.verify === 'function', INVALID_STRATEGY_MSG);\n }\n};\n\nconst createAuthentication = (): Authentication => {\n const strategies: Record<string, Strategy[]> = {};\n\n return {\n register(type, strategy) {\n validStrategy(strategy);\n\n if (!strategies[type]) {\n strategies[type] = [];\n }\n\n strategies[type].push(strategy);\n\n return this;\n },\n\n async authenticate(ctx, next) {\n const route: Core.Route = ctx.state.route;\n\n // use route strategy\n const config = route?.config?.auth;\n\n if (config === false) {\n return next();\n }\n\n const routeStrategies = route.info.type ? strategies[route.info.type] : [];\n const configStrategies = (config?.strategies ?? routeStrategies ?? []) as Array<\n string | Strategy\n >;\n\n const strategiesToUse: Strategy[] = configStrategies.reduce(\n (acc, strategy: string | Strategy) => {\n // Resolve by strategy name\n if (typeof strategy === 'string') {\n const routeStrategy = routeStrategies.find((rs) => rs.name === strategy);\n\n if (routeStrategy) {\n acc.push(routeStrategy);\n }\n }\n\n // Use the given strategy as is\n else if (typeof strategy === 'object') {\n validStrategy(strategy);\n\n acc.push(strategy);\n }\n\n return acc;\n },\n [] as Strategy[]\n );\n\n for (const strategy of strategiesToUse) {\n const result = await strategy.authenticate(ctx);\n\n const { authenticated = false, credentials, ability = null, error = null } = result || {};\n\n if (error !== null) {\n return ctx.unauthorized(error);\n }\n\n if (authenticated) {\n ctx.state.isAuthenticated = true;\n ctx.state.auth = {\n strategy,\n credentials,\n ability,\n };\n\n return next();\n }\n }\n\n return ctx.unauthorized('Missing or invalid credentials');\n },\n\n async verify(auth, config = {}) {\n if (config === false) {\n return;\n }\n\n if (!auth) {\n throw new errors.UnauthorizedError();\n }\n\n if (typeof auth.strategy.verify === 'function') {\n return auth.strategy.verify(auth, config);\n }\n },\n };\n};\n\nexport default createAuthentication;\n"],"names":["INVALID_STRATEGY_MSG","validStrategy","strategy","assert","has","authenticate","verify","createAuthentication","strategies","register","type","push","ctx","next","route","state","config","auth","routeStrategies","info","configStrategies","strategiesToUse","reduce","acc","routeStrategy","find","rs","name","result","authenticated","credentials","ability","error","unauthorized","isAuthenticated","errors","UnauthorizedError"],"mappings":"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"}
@@ -1,80 +1,79 @@
1
- import assert from "assert/strict";
2
- import { has } from "lodash/fp";
3
- import { errors } from "@strapi/utils";
4
- const INVALID_STRATEGY_MSG = "Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}";
5
- const validStrategy = (strategy) => {
6
- assert(has("authenticate", strategy), INVALID_STRATEGY_MSG);
7
- assert(typeof strategy.authenticate === "function", INVALID_STRATEGY_MSG);
8
- if (has("verify", strategy)) {
9
- assert(typeof strategy.verify === "function", INVALID_STRATEGY_MSG);
10
- }
1
+ import assert from 'assert/strict';
2
+ import { has } from 'lodash/fp';
3
+ import { errors } from '@strapi/utils';
4
+
5
+ const INVALID_STRATEGY_MSG = 'Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}';
6
+ const validStrategy = (strategy)=>{
7
+ assert(has('authenticate', strategy), INVALID_STRATEGY_MSG);
8
+ assert(typeof strategy.authenticate === 'function', INVALID_STRATEGY_MSG);
9
+ if (has('verify', strategy)) {
10
+ assert(typeof strategy.verify === 'function', INVALID_STRATEGY_MSG);
11
+ }
11
12
  };
12
- const createAuthentication = () => {
13
- const strategies = {};
14
- return {
15
- register(type, strategy) {
16
- validStrategy(strategy);
17
- if (!strategies[type]) {
18
- strategies[type] = [];
19
- }
20
- strategies[type].push(strategy);
21
- return this;
22
- },
23
- async authenticate(ctx, next) {
24
- const route = ctx.state.route;
25
- const config = route?.config?.auth;
26
- if (config === false) {
27
- return next();
28
- }
29
- const routeStrategies = route.info.type ? strategies[route.info.type] : [];
30
- const configStrategies = config?.strategies ?? routeStrategies ?? [];
31
- const strategiesToUse = configStrategies.reduce(
32
- (acc, strategy) => {
33
- if (typeof strategy === "string") {
34
- const routeStrategy = routeStrategies.find((rs) => rs.name === strategy);
35
- if (routeStrategy) {
36
- acc.push(routeStrategy);
37
- }
38
- } else if (typeof strategy === "object") {
13
+ const createAuthentication = ()=>{
14
+ const strategies = {};
15
+ return {
16
+ register (type, strategy) {
39
17
  validStrategy(strategy);
40
- acc.push(strategy);
41
- }
42
- return acc;
18
+ if (!strategies[type]) {
19
+ strategies[type] = [];
20
+ }
21
+ strategies[type].push(strategy);
22
+ return this;
43
23
  },
44
- []
45
- );
46
- for (const strategy of strategiesToUse) {
47
- const result = await strategy.authenticate(ctx);
48
- const { authenticated = false, credentials, ability = null, error = null } = result || {};
49
- if (error !== null) {
50
- return ctx.unauthorized(error);
51
- }
52
- if (authenticated) {
53
- ctx.state.isAuthenticated = true;
54
- ctx.state.auth = {
55
- strategy,
56
- credentials,
57
- ability
58
- };
59
- return next();
24
+ async authenticate (ctx, next) {
25
+ const route = ctx.state.route;
26
+ // use route strategy
27
+ const config = route?.config?.auth;
28
+ if (config === false) {
29
+ return next();
30
+ }
31
+ const routeStrategies = route.info.type ? strategies[route.info.type] : [];
32
+ const configStrategies = config?.strategies ?? routeStrategies ?? [];
33
+ const strategiesToUse = configStrategies.reduce((acc, strategy)=>{
34
+ // Resolve by strategy name
35
+ if (typeof strategy === 'string') {
36
+ const routeStrategy = routeStrategies.find((rs)=>rs.name === strategy);
37
+ if (routeStrategy) {
38
+ acc.push(routeStrategy);
39
+ }
40
+ } else if (typeof strategy === 'object') {
41
+ validStrategy(strategy);
42
+ acc.push(strategy);
43
+ }
44
+ return acc;
45
+ }, []);
46
+ for (const strategy of strategiesToUse){
47
+ const result = await strategy.authenticate(ctx);
48
+ const { authenticated = false, credentials, ability = null, error = null } = result || {};
49
+ if (error !== null) {
50
+ return ctx.unauthorized(error);
51
+ }
52
+ if (authenticated) {
53
+ ctx.state.isAuthenticated = true;
54
+ ctx.state.auth = {
55
+ strategy,
56
+ credentials,
57
+ ability
58
+ };
59
+ return next();
60
+ }
61
+ }
62
+ return ctx.unauthorized('Missing or invalid credentials');
63
+ },
64
+ async verify (auth, config = {}) {
65
+ if (config === false) {
66
+ return;
67
+ }
68
+ if (!auth) {
69
+ throw new errors.UnauthorizedError();
70
+ }
71
+ if (typeof auth.strategy.verify === 'function') {
72
+ return auth.strategy.verify(auth, config);
73
+ }
60
74
  }
61
- }
62
- return ctx.unauthorized("Missing or invalid credentials");
63
- },
64
- async verify(auth, config = {}) {
65
- if (config === false) {
66
- return;
67
- }
68
- if (!auth) {
69
- throw new errors.UnauthorizedError();
70
- }
71
- if (typeof auth.strategy.verify === "function") {
72
- return auth.strategy.verify(auth, config);
73
- }
74
- }
75
- };
76
- };
77
- export {
78
- createAuthentication as default
75
+ };
79
76
  };
77
+
78
+ export { createAuthentication as default };
80
79
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/services/auth/index.ts"],"sourcesContent":["import assert from 'assert/strict';\nimport { has } from 'lodash/fp';\n\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport type { ParameterizedContext } from 'koa';\n\ninterface AuthenticationResponse {\n authenticated?: boolean;\n credentials?: unknown;\n ability?: unknown;\n error?: Error | null;\n}\n\ninterface AuthenticationInfo {\n strategy: Strategy;\n credentials: unknown;\n ability: unknown;\n}\n\ninterface Strategy {\n name: string;\n authenticate: (ctx: ParameterizedContext) => Promise<AuthenticationResponse>;\n verify?: (auth: AuthenticationInfo, config: Core.RouteConfig['auth']) => Promise<any>;\n}\n\ninterface Authentication {\n register: (type: string, strategy: Strategy) => Authentication;\n authenticate: Core.MiddlewareHandler;\n verify: (auth: AuthenticationInfo, config?: Core.RouteConfig['auth']) => Promise<any>;\n}\n\nconst INVALID_STRATEGY_MSG =\n 'Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}';\n\nconst validStrategy = (strategy: Strategy) => {\n assert(has('authenticate', strategy), INVALID_STRATEGY_MSG);\n assert(typeof strategy.authenticate === 'function', INVALID_STRATEGY_MSG);\n\n if (has('verify', strategy)) {\n assert(typeof strategy.verify === 'function', INVALID_STRATEGY_MSG);\n }\n};\n\nconst createAuthentication = (): Authentication => {\n const strategies: Record<string, Strategy[]> = {};\n\n return {\n register(type, strategy) {\n validStrategy(strategy);\n\n if (!strategies[type]) {\n strategies[type] = [];\n }\n\n strategies[type].push(strategy);\n\n return this;\n },\n\n async authenticate(ctx, next) {\n const route: Core.Route = ctx.state.route;\n\n // use route strategy\n const config = route?.config?.auth;\n\n if (config === false) {\n return next();\n }\n\n const routeStrategies = route.info.type ? strategies[route.info.type] : [];\n const configStrategies = (config?.strategies ?? routeStrategies ?? []) as Array<\n string | Strategy\n >;\n\n const strategiesToUse: Strategy[] = configStrategies.reduce(\n (acc, strategy: string | Strategy) => {\n // Resolve by strategy name\n if (typeof strategy === 'string') {\n const routeStrategy = routeStrategies.find((rs) => rs.name === strategy);\n\n if (routeStrategy) {\n acc.push(routeStrategy);\n }\n }\n\n // Use the given strategy as is\n else if (typeof strategy === 'object') {\n validStrategy(strategy);\n\n acc.push(strategy);\n }\n\n return acc;\n },\n [] as Strategy[]\n );\n\n for (const strategy of strategiesToUse) {\n const result = await strategy.authenticate(ctx);\n\n const { authenticated = false, credentials, ability = null, error = null } = result || {};\n\n if (error !== null) {\n return ctx.unauthorized(error);\n }\n\n if (authenticated) {\n ctx.state.isAuthenticated = true;\n ctx.state.auth = {\n strategy,\n credentials,\n ability,\n };\n\n return next();\n }\n }\n\n return ctx.unauthorized('Missing or invalid credentials');\n },\n\n async verify(auth, config = {}) {\n if (config === false) {\n return;\n }\n\n if (!auth) {\n throw new errors.UnauthorizedError();\n }\n\n if (typeof auth.strategy.verify === 'function') {\n return auth.strategy.verify(auth, config);\n }\n },\n };\n};\n\nexport default createAuthentication;\n"],"names":[],"mappings":";;;AAgCA,MAAM,uBACJ;AAEF,MAAM,gBAAgB,CAAC,aAAuB;AAC5C,SAAO,IAAI,gBAAgB,QAAQ,GAAG,oBAAoB;AAC1D,SAAO,OAAO,SAAS,iBAAiB,YAAY,oBAAoB;AAEpE,MAAA,IAAI,UAAU,QAAQ,GAAG;AAC3B,WAAO,OAAO,SAAS,WAAW,YAAY,oBAAoB;AAAA,EACpE;AACF;AAEA,MAAM,uBAAuB,MAAsB;AACjD,QAAM,aAAyC,CAAA;AAExC,SAAA;AAAA,IACL,SAAS,MAAM,UAAU;AACvB,oBAAc,QAAQ;AAElB,UAAA,CAAC,WAAW,IAAI,GAAG;AACV,mBAAA,IAAI,IAAI;MACrB;AAEW,iBAAA,IAAI,EAAE,KAAK,QAAQ;AAEvB,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,aAAa,KAAK,MAAM;AACtB,YAAA,QAAoB,IAAI,MAAM;AAG9B,YAAA,SAAS,OAAO,QAAQ;AAE9B,UAAI,WAAW,OAAO;AACpB,eAAO,KAAK;AAAA,MACd;AAEM,YAAA,kBAAkB,MAAM,KAAK,OAAO,WAAW,MAAM,KAAK,IAAI,IAAI;AACxE,YAAM,mBAAoB,QAAQ,cAAc,mBAAmB,CAAA;AAInE,YAAM,kBAA8B,iBAAiB;AAAA,QACnD,CAAC,KAAK,aAAgC;AAEhC,cAAA,OAAO,aAAa,UAAU;AAChC,kBAAM,gBAAgB,gBAAgB,KAAK,CAAC,OAAO,GAAG,SAAS,QAAQ;AAEvE,gBAAI,eAAe;AACjB,kBAAI,KAAK,aAAa;AAAA,YACxB;AAAA,UAAA,WAIO,OAAO,aAAa,UAAU;AACrC,0BAAc,QAAQ;AAEtB,gBAAI,KAAK,QAAQ;AAAA,UACnB;AAEO,iBAAA;AAAA,QACT;AAAA,QACA,CAAC;AAAA,MAAA;AAGH,iBAAW,YAAY,iBAAiB;AACtC,cAAM,SAAS,MAAM,SAAS,aAAa,GAAG;AAExC,cAAA,EAAE,gBAAgB,OAAO,aAAa,UAAU,MAAM,QAAQ,KAAA,IAAS,UAAU;AAEvF,YAAI,UAAU,MAAM;AACX,iBAAA,IAAI,aAAa,KAAK;AAAA,QAC/B;AAEA,YAAI,eAAe;AACjB,cAAI,MAAM,kBAAkB;AAC5B,cAAI,MAAM,OAAO;AAAA,YACf;AAAA,YACA;AAAA,YACA;AAAA,UAAA;AAGF,iBAAO,KAAK;AAAA,QACd;AAAA,MACF;AAEO,aAAA,IAAI,aAAa,gCAAgC;AAAA,IAC1D;AAAA,IAEA,MAAM,OAAO,MAAM,SAAS,IAAI;AAC9B,UAAI,WAAW,OAAO;AACpB;AAAA,MACF;AAEA,UAAI,CAAC,MAAM;AACH,cAAA,IAAI,OAAO;MACnB;AAEA,UAAI,OAAO,KAAK,SAAS,WAAW,YAAY;AAC9C,eAAO,KAAK,SAAS,OAAO,MAAM,MAAM;AAAA,MAC1C;AAAA,IACF;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/services/auth/index.ts"],"sourcesContent":["import assert from 'assert/strict';\nimport { has } from 'lodash/fp';\n\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport type { ParameterizedContext } from 'koa';\n\ninterface AuthenticationResponse {\n authenticated?: boolean;\n credentials?: unknown;\n ability?: unknown;\n error?: Error | null;\n}\n\ninterface AuthenticationInfo {\n strategy: Strategy;\n credentials: unknown;\n ability: unknown;\n}\n\ninterface Strategy {\n name: string;\n authenticate: (ctx: ParameterizedContext) => Promise<AuthenticationResponse>;\n verify?: (auth: AuthenticationInfo, config: Core.RouteConfig['auth']) => Promise<any>;\n}\n\ninterface Authentication {\n register: (type: string, strategy: Strategy) => Authentication;\n authenticate: Core.MiddlewareHandler;\n verify: (auth: AuthenticationInfo, config?: Core.RouteConfig['auth']) => Promise<any>;\n}\n\nconst INVALID_STRATEGY_MSG =\n 'Invalid auth strategy. Expecting an object with properties {name: string, authenticate: function, verify: function}';\n\nconst validStrategy = (strategy: Strategy) => {\n assert(has('authenticate', strategy), INVALID_STRATEGY_MSG);\n assert(typeof strategy.authenticate === 'function', INVALID_STRATEGY_MSG);\n\n if (has('verify', strategy)) {\n assert(typeof strategy.verify === 'function', INVALID_STRATEGY_MSG);\n }\n};\n\nconst createAuthentication = (): Authentication => {\n const strategies: Record<string, Strategy[]> = {};\n\n return {\n register(type, strategy) {\n validStrategy(strategy);\n\n if (!strategies[type]) {\n strategies[type] = [];\n }\n\n strategies[type].push(strategy);\n\n return this;\n },\n\n async authenticate(ctx, next) {\n const route: Core.Route = ctx.state.route;\n\n // use route strategy\n const config = route?.config?.auth;\n\n if (config === false) {\n return next();\n }\n\n const routeStrategies = route.info.type ? strategies[route.info.type] : [];\n const configStrategies = (config?.strategies ?? routeStrategies ?? []) as Array<\n string | Strategy\n >;\n\n const strategiesToUse: Strategy[] = configStrategies.reduce(\n (acc, strategy: string | Strategy) => {\n // Resolve by strategy name\n if (typeof strategy === 'string') {\n const routeStrategy = routeStrategies.find((rs) => rs.name === strategy);\n\n if (routeStrategy) {\n acc.push(routeStrategy);\n }\n }\n\n // Use the given strategy as is\n else if (typeof strategy === 'object') {\n validStrategy(strategy);\n\n acc.push(strategy);\n }\n\n return acc;\n },\n [] as Strategy[]\n );\n\n for (const strategy of strategiesToUse) {\n const result = await strategy.authenticate(ctx);\n\n const { authenticated = false, credentials, ability = null, error = null } = result || {};\n\n if (error !== null) {\n return ctx.unauthorized(error);\n }\n\n if (authenticated) {\n ctx.state.isAuthenticated = true;\n ctx.state.auth = {\n strategy,\n credentials,\n ability,\n };\n\n return next();\n }\n }\n\n return ctx.unauthorized('Missing or invalid credentials');\n },\n\n async verify(auth, config = {}) {\n if (config === false) {\n return;\n }\n\n if (!auth) {\n throw new errors.UnauthorizedError();\n }\n\n if (typeof auth.strategy.verify === 'function') {\n return auth.strategy.verify(auth, config);\n }\n },\n };\n};\n\nexport default createAuthentication;\n"],"names":["INVALID_STRATEGY_MSG","validStrategy","strategy","assert","has","authenticate","verify","createAuthentication","strategies","register","type","push","ctx","next","route","state","config","auth","routeStrategies","info","configStrategies","strategiesToUse","reduce","acc","routeStrategy","find","rs","name","result","authenticated","credentials","ability","error","unauthorized","isAuthenticated","errors","UnauthorizedError"],"mappings":"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"}
@@ -1,47 +1,51 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const _ = require("lodash");
4
- const createConfigProvider = (initialConfig = {}, strapi) => {
5
- const state = {
6
- config: { ...initialConfig }
7
- // not deep clone because it would break some config
8
- };
9
- const transformPathString = (path) => {
10
- if (path.startsWith("plugin.")) {
11
- const newPath = path.replace("plugin.", "plugin::");
12
- (strapi?.log?.warn ?? console.warn)(
13
- `Using dot notation for model config namespaces is deprecated, for example "plugin::myplugin" should be used instead of "plugin.myplugin". Modifying requested path ${path} to ${newPath}`
14
- );
15
- return newPath;
16
- }
17
- return path;
18
- };
19
- const transformDeprecatedPaths = (path) => {
20
- if (_.isString(path)) {
21
- return transformPathString(path);
22
- }
23
- if (_.isArray(path)) {
24
- if (path.some((part) => !(_.isString(part) || _.isNumber(part)))) {
1
+ 'use strict';
2
+
3
+ var _ = require('lodash');
4
+
5
+ const createConfigProvider = (initialConfig = {}, strapi)=>{
6
+ const state = {
7
+ config: {
8
+ ...initialConfig
9
+ }
10
+ };
11
+ // Accessing model configs with dot (.) was deprecated between v4->v5, but to avoid a major breaking change
12
+ // we will still support certain namespaces, currently only 'plugin.'
13
+ const transformPathString = (path)=>{
14
+ if (path.startsWith('plugin.')) {
15
+ const newPath = path.replace('plugin.', 'plugin::');
16
+ // strapi logger may not be loaded yet, so fall back to console
17
+ (strapi?.log?.warn ?? console.warn)(`Using dot notation for model config namespaces is deprecated, for example "plugin::myplugin" should be used instead of "plugin.myplugin". Modifying requested path ${path} to ${newPath}`);
18
+ return newPath;
19
+ }
25
20
  return path;
26
- }
27
- return transformPathString(path.join("."));
28
- }
29
- return path;
30
- };
31
- return {
32
- ...state.config,
33
- // TODO: to remove
34
- get(path, defaultValue) {
35
- return _.get(state.config, transformDeprecatedPaths(path), defaultValue);
36
- },
37
- set(path, val) {
38
- _.set(state.config, transformDeprecatedPaths(path), val);
39
- return this;
40
- },
41
- has(path) {
42
- return _.has(state.config, transformDeprecatedPaths(path));
43
- }
44
- };
21
+ };
22
+ const transformDeprecatedPaths = (path)=>{
23
+ if (_.isString(path)) {
24
+ return transformPathString(path);
25
+ }
26
+ if (_.isArray(path)) {
27
+ // if the path is not joinable, we won't apply our deprecation support
28
+ if (path.some((part)=>!(_.isString(part) || _.isNumber(part)))) {
29
+ return path;
30
+ }
31
+ return transformPathString(path.join('.'));
32
+ }
33
+ return path;
34
+ };
35
+ return {
36
+ ...state.config,
37
+ get (path, defaultValue) {
38
+ return _.get(state.config, transformDeprecatedPaths(path), defaultValue);
39
+ },
40
+ set (path, val) {
41
+ _.set(state.config, transformDeprecatedPaths(path), val);
42
+ return this;
43
+ },
44
+ has (path) {
45
+ return _.has(state.config, transformDeprecatedPaths(path));
46
+ }
47
+ };
45
48
  };
49
+
46
50
  exports.createConfigProvider = createConfigProvider;
47
51
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sources":["../../src/services/config.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { get, set, has, isString, isNumber, isArray, type PropertyPath } from 'lodash';\n\ntype State = {\n config: Config;\n};\n\ntype Config = Record<string, unknown>;\n\nexport const createConfigProvider = (\n initialConfig: Record<string, unknown> = {},\n strapi?: Core.Strapi\n): Core.ConfigProvider => {\n const state: State = {\n config: { ...initialConfig }, // not deep clone because it would break some config\n };\n\n // Accessing model configs with dot (.) was deprecated between v4->v5, but to avoid a major breaking change\n // we will still support certain namespaces, currently only 'plugin.'\n const transformPathString = (path: string) => {\n if (path.startsWith('plugin.')) {\n const newPath = path.replace('plugin.', 'plugin::');\n\n // strapi logger may not be loaded yet, so fall back to console\n (strapi?.log?.warn ?? console.warn)(\n `Using dot notation for model config namespaces is deprecated, for example \"plugin::myplugin\" should be used instead of \"plugin.myplugin\". Modifying requested path ${path} to ${newPath}`\n );\n return newPath;\n }\n\n return path;\n };\n\n const transformDeprecatedPaths = (path: PropertyPath): PropertyPath => {\n if (isString(path)) {\n return transformPathString(path);\n }\n if (isArray(path)) {\n // if the path is not joinable, we won't apply our deprecation support\n if (path.some((part) => !(isString(part) || isNumber(part)))) {\n return path;\n }\n\n return transformPathString(path.join('.'));\n }\n\n return path;\n };\n\n return {\n ...state.config, // TODO: to remove\n get(path: PropertyPath, defaultValue?: unknown) {\n return get(state.config, transformDeprecatedPaths(path), defaultValue);\n },\n set(path: PropertyPath, val: unknown) {\n set(state.config, transformDeprecatedPaths(path), val);\n return this;\n },\n has(path: PropertyPath) {\n return has(state.config, transformDeprecatedPaths(path));\n },\n };\n};\n"],"names":["isString","isArray","isNumber","get","set","has"],"mappings":";;;AASO,MAAM,uBAAuB,CAClC,gBAAyC,IACzC,WACwB;AACxB,QAAM,QAAe;AAAA,IACnB,QAAQ,EAAE,GAAG,cAAc;AAAA;AAAA,EAAA;AAKvB,QAAA,sBAAsB,CAAC,SAAiB;AACxC,QAAA,KAAK,WAAW,SAAS,GAAG;AAC9B,YAAM,UAAU,KAAK,QAAQ,WAAW,UAAU;AAGjD,OAAA,QAAQ,KAAK,QAAQ,QAAQ;AAAA,QAC5B,sKAAsK,IAAI,OAAO,OAAO;AAAA,MAAA;AAEnL,aAAA;AAAA,IACT;AAEO,WAAA;AAAA,EAAA;AAGH,QAAA,2BAA2B,CAAC,SAAqC;AACjE,QAAAA,EAAAA,SAAS,IAAI,GAAG;AAClB,aAAO,oBAAoB,IAAI;AAAA,IACjC;AACI,QAAAC,EAAAA,QAAQ,IAAI,GAAG;AAEb,UAAA,KAAK,KAAK,CAAC,SAAS,EAAED,EAAAA,SAAS,IAAI,KAAKE,EAAA,SAAS,IAAI,EAAE,GAAG;AACrD,eAAA;AAAA,MACT;AAEA,aAAO,oBAAoB,KAAK,KAAK,GAAG,CAAC;AAAA,IAC3C;AAEO,WAAA;AAAA,EAAA;AAGF,SAAA;AAAA,IACL,GAAG,MAAM;AAAA;AAAA,IACT,IAAI,MAAoB,cAAwB;AAC9C,aAAOC,EAAAA,IAAI,MAAM,QAAQ,yBAAyB,IAAI,GAAG,YAAY;AAAA,IACvE;AAAA,IACA,IAAI,MAAoB,KAAc;AACpCC,QAAA,IAAI,MAAM,QAAQ,yBAAyB,IAAI,GAAG,GAAG;AAC9C,aAAA;AAAA,IACT;AAAA,IACA,IAAI,MAAoB;AACtB,aAAOC,EAAAA,IAAI,MAAM,QAAQ,yBAAyB,IAAI,CAAC;AAAA,IACzD;AAAA,EAAA;AAEJ;;"}
1
+ {"version":3,"file":"config.js","sources":["../../src/services/config.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { get, set, has, isString, isNumber, isArray, type PropertyPath } from 'lodash';\n\ntype State = {\n config: Config;\n};\n\ntype Config = Record<string, unknown>;\n\nexport const createConfigProvider = (\n initialConfig: Record<string, unknown> = {},\n strapi?: Core.Strapi\n): Core.ConfigProvider => {\n const state: State = {\n config: { ...initialConfig }, // not deep clone because it would break some config\n };\n\n // Accessing model configs with dot (.) was deprecated between v4->v5, but to avoid a major breaking change\n // we will still support certain namespaces, currently only 'plugin.'\n const transformPathString = (path: string) => {\n if (path.startsWith('plugin.')) {\n const newPath = path.replace('plugin.', 'plugin::');\n\n // strapi logger may not be loaded yet, so fall back to console\n (strapi?.log?.warn ?? console.warn)(\n `Using dot notation for model config namespaces is deprecated, for example \"plugin::myplugin\" should be used instead of \"plugin.myplugin\". Modifying requested path ${path} to ${newPath}`\n );\n return newPath;\n }\n\n return path;\n };\n\n const transformDeprecatedPaths = (path: PropertyPath): PropertyPath => {\n if (isString(path)) {\n return transformPathString(path);\n }\n if (isArray(path)) {\n // if the path is not joinable, we won't apply our deprecation support\n if (path.some((part) => !(isString(part) || isNumber(part)))) {\n return path;\n }\n\n return transformPathString(path.join('.'));\n }\n\n return path;\n };\n\n return {\n ...state.config, // TODO: to remove\n get(path: PropertyPath, defaultValue?: unknown) {\n return get(state.config, transformDeprecatedPaths(path), defaultValue);\n },\n set(path: PropertyPath, val: unknown) {\n set(state.config, transformDeprecatedPaths(path), val);\n return this;\n },\n has(path: PropertyPath) {\n return has(state.config, transformDeprecatedPaths(path));\n },\n };\n};\n"],"names":["createConfigProvider","initialConfig","strapi","state","config","transformPathString","path","startsWith","newPath","replace","log","warn","console","transformDeprecatedPaths","isString","isArray","some","part","isNumber","join","get","defaultValue","set","val","has"],"mappings":";;;;MASaA,oBAAuB,GAAA,CAClCC,aAAyC,GAAA,EAAE,EAC3CC,MAAAA,GAAAA;AAEA,IAAA,MAAMC,KAAe,GAAA;QACnBC,MAAQ,EAAA;AAAE,YAAA,GAAGH;AAAc;AAC7B,KAAA;;;AAIA,IAAA,MAAMI,sBAAsB,CAACC,IAAAA,GAAAA;QAC3B,IAAIA,IAAAA,CAAKC,UAAU,CAAC,SAAY,CAAA,EAAA;AAC9B,YAAA,MAAMC,OAAUF,GAAAA,IAAAA,CAAKG,OAAO,CAAC,SAAW,EAAA,UAAA,CAAA;;AAGvCP,YAAAA,CAAAA,MAAQQ,EAAAA,GAAAA,EAAKC,IAAQC,IAAAA,OAAAA,CAAQD,IAAI,EAChC,CAAC,mKAAmK,EAAEL,IAAAA,CAAK,IAAI,EAAEE,QAAQ,CAAC,CAAA;YAE5L,OAAOA,OAAAA;AACT;QAEA,OAAOF,IAAAA;AACT,KAAA;AAEA,IAAA,MAAMO,2BAA2B,CAACP,IAAAA,GAAAA;AAChC,QAAA,IAAIQ,WAASR,IAAO,CAAA,EAAA;AAClB,YAAA,OAAOD,mBAAoBC,CAAAA,IAAAA,CAAAA;AAC7B;AACA,QAAA,IAAIS,UAAQT,IAAO,CAAA,EAAA;;YAEjB,IAAIA,IAAAA,CAAKU,IAAI,CAAC,CAACC,IAAAA,GAAS,EAAEH,UAASG,CAAAA,IAAAA,CAAAA,IAASC,UAASD,CAAAA,IAAAA,CAAI,CAAK,CAAA,EAAA;gBAC5D,OAAOX,IAAAA;AACT;YAEA,OAAOD,mBAAAA,CAAoBC,IAAKa,CAAAA,IAAI,CAAC,GAAA,CAAA,CAAA;AACvC;QAEA,OAAOb,IAAAA;AACT,KAAA;IAEA,OAAO;AACL,QAAA,GAAGH,MAAMC,MAAM;QACfgB,GAAId,CAAAA,CAAAA,IAAkB,EAAEe,YAAsB,EAAA;AAC5C,YAAA,OAAOD,KAAIjB,CAAAA,KAAAA,CAAMC,MAAM,EAAES,yBAAyBP,IAAOe,CAAAA,EAAAA,YAAAA,CAAAA;AAC3D,SAAA;QACAC,GAAIhB,CAAAA,CAAAA,IAAkB,EAAEiB,GAAY,EAAA;AAClCD,YAAAA,KAAAA,CAAInB,KAAMC,CAAAA,MAAM,EAAES,wBAAAA,CAAyBP,IAAOiB,CAAAA,EAAAA,GAAAA,CAAAA;AAClD,YAAA,OAAO,IAAI;AACb,SAAA;AACAC,QAAAA,GAAAA,CAAAA,CAAIlB,IAAkB,EAAA;AACpB,YAAA,OAAOkB,KAAIrB,CAAAA,KAAAA,CAAMC,MAAM,EAAES,wBAAyBP,CAAAA,IAAAA,CAAAA,CAAAA;AACpD;AACF,KAAA;AACF;;;;"}
@@ -1,47 +1,49 @@
1
- import { get, set, has, isString, isArray, isNumber } from "lodash";
2
- const createConfigProvider = (initialConfig = {}, strapi) => {
3
- const state = {
4
- config: { ...initialConfig }
5
- // not deep clone because it would break some config
6
- };
7
- const transformPathString = (path) => {
8
- if (path.startsWith("plugin.")) {
9
- const newPath = path.replace("plugin.", "plugin::");
10
- (strapi?.log?.warn ?? console.warn)(
11
- `Using dot notation for model config namespaces is deprecated, for example "plugin::myplugin" should be used instead of "plugin.myplugin". Modifying requested path ${path} to ${newPath}`
12
- );
13
- return newPath;
14
- }
15
- return path;
16
- };
17
- const transformDeprecatedPaths = (path) => {
18
- if (isString(path)) {
19
- return transformPathString(path);
20
- }
21
- if (isArray(path)) {
22
- if (path.some((part) => !(isString(part) || isNumber(part)))) {
1
+ import { get, set, has, isString, isArray, isNumber } from 'lodash';
2
+
3
+ const createConfigProvider = (initialConfig = {}, strapi)=>{
4
+ const state = {
5
+ config: {
6
+ ...initialConfig
7
+ }
8
+ };
9
+ // Accessing model configs with dot (.) was deprecated between v4->v5, but to avoid a major breaking change
10
+ // we will still support certain namespaces, currently only 'plugin.'
11
+ const transformPathString = (path)=>{
12
+ if (path.startsWith('plugin.')) {
13
+ const newPath = path.replace('plugin.', 'plugin::');
14
+ // strapi logger may not be loaded yet, so fall back to console
15
+ (strapi?.log?.warn ?? console.warn)(`Using dot notation for model config namespaces is deprecated, for example "plugin::myplugin" should be used instead of "plugin.myplugin". Modifying requested path ${path} to ${newPath}`);
16
+ return newPath;
17
+ }
23
18
  return path;
24
- }
25
- return transformPathString(path.join("."));
26
- }
27
- return path;
28
- };
29
- return {
30
- ...state.config,
31
- // TODO: to remove
32
- get(path, defaultValue) {
33
- return get(state.config, transformDeprecatedPaths(path), defaultValue);
34
- },
35
- set(path, val) {
36
- set(state.config, transformDeprecatedPaths(path), val);
37
- return this;
38
- },
39
- has(path) {
40
- return has(state.config, transformDeprecatedPaths(path));
41
- }
42
- };
43
- };
44
- export {
45
- createConfigProvider
19
+ };
20
+ const transformDeprecatedPaths = (path)=>{
21
+ if (isString(path)) {
22
+ return transformPathString(path);
23
+ }
24
+ if (isArray(path)) {
25
+ // if the path is not joinable, we won't apply our deprecation support
26
+ if (path.some((part)=>!(isString(part) || isNumber(part)))) {
27
+ return path;
28
+ }
29
+ return transformPathString(path.join('.'));
30
+ }
31
+ return path;
32
+ };
33
+ return {
34
+ ...state.config,
35
+ get (path, defaultValue) {
36
+ return get(state.config, transformDeprecatedPaths(path), defaultValue);
37
+ },
38
+ set (path, val) {
39
+ set(state.config, transformDeprecatedPaths(path), val);
40
+ return this;
41
+ },
42
+ has (path) {
43
+ return has(state.config, transformDeprecatedPaths(path));
44
+ }
45
+ };
46
46
  };
47
+
48
+ export { createConfigProvider };
47
49
  //# sourceMappingURL=config.mjs.map