payload 3.85.0 → 4.0.0-canary.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (646) hide show
  1. package/README.md +5 -5
  2. package/dist/admin/RichText.d.ts +2 -7
  3. package/dist/admin/RichText.d.ts.map +1 -1
  4. package/dist/admin/RichText.js.map +1 -1
  5. package/dist/admin/adapters/cookies.d.ts +21 -0
  6. package/dist/admin/adapters/cookies.d.ts.map +1 -0
  7. package/dist/admin/adapters/cookies.js +3 -0
  8. package/dist/admin/adapters/cookies.js.map +1 -0
  9. package/dist/admin/adapters/index.d.ts +4 -0
  10. package/dist/admin/adapters/index.d.ts.map +1 -0
  11. package/dist/admin/adapters/index.js +3 -0
  12. package/dist/admin/adapters/index.js.map +1 -0
  13. package/dist/admin/adapters/router.d.ts +56 -0
  14. package/dist/admin/adapters/router.d.ts.map +1 -0
  15. package/dist/admin/adapters/router.js +3 -0
  16. package/dist/admin/adapters/router.js.map +1 -0
  17. package/dist/admin/adapters/server.d.ts +23 -0
  18. package/dist/admin/adapters/server.d.ts.map +1 -0
  19. package/dist/admin/adapters/server.js +6 -0
  20. package/dist/admin/adapters/server.js.map +1 -0
  21. package/dist/admin/elements/Nav.d.ts +13 -0
  22. package/dist/admin/elements/Nav.d.ts.map +1 -1
  23. package/dist/admin/elements/Nav.js.map +1 -1
  24. package/dist/admin/elements/Table.d.ts +1 -0
  25. package/dist/admin/elements/Table.d.ts.map +1 -1
  26. package/dist/admin/elements/Table.js.map +1 -1
  27. package/dist/admin/functions/index.d.ts +1 -38
  28. package/dist/admin/functions/index.d.ts.map +1 -1
  29. package/dist/admin/functions/index.js.map +1 -1
  30. package/dist/admin/types.d.ts +5 -4
  31. package/dist/admin/types.d.ts.map +1 -1
  32. package/dist/admin/types.js.map +1 -1
  33. package/dist/admin/views/hierarchyList.d.ts +10 -0
  34. package/dist/admin/views/hierarchyList.d.ts.map +1 -0
  35. package/dist/admin/views/hierarchyList.js +3 -0
  36. package/dist/admin/views/hierarchyList.js.map +1 -0
  37. package/dist/admin/views/index.d.ts +1 -3
  38. package/dist/admin/views/index.d.ts.map +1 -1
  39. package/dist/admin/views/index.js.map +1 -1
  40. package/dist/admin/views/list.d.ts +47 -2
  41. package/dist/admin/views/list.d.ts.map +1 -1
  42. package/dist/admin/views/list.js.map +1 -1
  43. package/dist/auth/cookies.d.ts.map +1 -1
  44. package/dist/auth/defaultAccess.d.ts.map +1 -1
  45. package/dist/auth/ensureUsernameOrEmail.d.ts.map +1 -1
  46. package/dist/auth/executeAccess.d.ts.map +1 -1
  47. package/dist/auth/executeAuthStrategies.d.ts.map +1 -1
  48. package/dist/auth/extractAccessFromPermission.d.ts.map +1 -1
  49. package/dist/auth/extractJWT.d.ts.map +1 -1
  50. package/dist/auth/getAuthFields.d.ts.map +1 -1
  51. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  52. package/dist/auth/getLoginOptions.d.ts.map +1 -1
  53. package/dist/auth/isUserLocked.d.ts.map +1 -1
  54. package/dist/auth/jwt.d.ts.map +1 -1
  55. package/dist/auth/operations/access.d.ts.map +1 -1
  56. package/dist/auth/operations/auth.d.ts.map +1 -1
  57. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  58. package/dist/auth/operations/init.d.ts.map +1 -1
  59. package/dist/auth/operations/local/auth.d.ts.map +1 -1
  60. package/dist/auth/operations/login.d.ts.map +1 -1
  61. package/dist/auth/operations/logout.d.ts.map +1 -1
  62. package/dist/auth/operations/me.d.ts.map +1 -1
  63. package/dist/auth/operations/refresh.d.ts.map +1 -1
  64. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  65. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  66. package/dist/auth/operations/unlock.d.ts.map +1 -1
  67. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  68. package/dist/auth/sessions.d.ts.map +1 -1
  69. package/dist/auth/strategies/apiKey.d.ts.map +1 -1
  70. package/dist/auth/strategies/apiKey.js +6 -17
  71. package/dist/auth/strategies/apiKey.js.map +1 -1
  72. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  73. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
  74. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
  75. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  76. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  77. package/dist/bin/build.d.ts +25 -0
  78. package/dist/bin/build.d.ts.map +1 -0
  79. package/dist/bin/build.js +80 -0
  80. package/dist/bin/build.js.map +1 -0
  81. package/dist/bin/build.spec.js +170 -0
  82. package/dist/bin/build.spec.js.map +1 -0
  83. package/dist/bin/generateImportMap/index.d.ts.map +1 -1
  84. package/dist/bin/generateImportMap/index.js +8 -5
  85. package/dist/bin/generateImportMap/index.js.map +1 -1
  86. package/dist/bin/generateImportMap/iterateCollections.d.ts.map +1 -1
  87. package/dist/bin/generateImportMap/iterateCollections.js +1 -0
  88. package/dist/bin/generateImportMap/iterateCollections.js.map +1 -1
  89. package/dist/bin/generateImportMap/iterateConfig.d.ts.map +1 -1
  90. package/dist/bin/generateImportMap/iterateConfig.js +7 -0
  91. package/dist/bin/generateImportMap/iterateConfig.js.map +1 -1
  92. package/dist/bin/generateImportMap/iterateFields.d.ts.map +1 -1
  93. package/dist/bin/generateImportMap/iterateFields.js +4 -1
  94. package/dist/bin/generateImportMap/iterateFields.js.map +1 -1
  95. package/dist/bin/generateImportMap/iterateGlobals.d.ts.map +1 -1
  96. package/dist/bin/generateImportMap/iterateGlobals.js +20 -8
  97. package/dist/bin/generateImportMap/iterateGlobals.js.map +1 -1
  98. package/dist/bin/generateImportMap/utilities/getFromImportMap.d.ts.map +1 -1
  99. package/dist/bin/index.d.ts.map +1 -1
  100. package/dist/bin/index.js +10 -3
  101. package/dist/bin/index.js.map +1 -1
  102. package/dist/bin/migrate.d.ts.map +1 -1
  103. package/dist/collections/config/client.d.ts +4 -2
  104. package/dist/collections/config/client.d.ts.map +1 -1
  105. package/dist/collections/config/client.js +13 -1
  106. package/dist/collections/config/client.js.map +1 -1
  107. package/dist/collections/config/defaults.d.ts.map +1 -1
  108. package/dist/collections/config/defaults.js +1 -1
  109. package/dist/collections/config/defaults.js.map +1 -1
  110. package/dist/collections/config/sanitize.d.ts +10 -1
  111. package/dist/collections/config/sanitize.d.ts.map +1 -1
  112. package/dist/collections/config/sanitize.js +51 -10
  113. package/dist/collections/config/sanitize.js.map +1 -1
  114. package/dist/collections/config/sanitizeCompoundIndexes.d.ts.map +1 -1
  115. package/dist/collections/config/types.d.ts +76 -91
  116. package/dist/collections/config/types.d.ts.map +1 -1
  117. package/dist/collections/config/types.js.map +1 -1
  118. package/dist/collections/config/useAsTitle.d.ts.map +1 -1
  119. package/dist/collections/dataloader.d.ts.map +1 -1
  120. package/dist/collections/operations/count.d.ts.map +1 -1
  121. package/dist/collections/operations/countVersions.d.ts.map +1 -1
  122. package/dist/collections/operations/create.d.ts.map +1 -1
  123. package/dist/collections/operations/create.js +25 -19
  124. package/dist/collections/operations/create.js.map +1 -1
  125. package/dist/collections/operations/delete.d.ts.map +1 -1
  126. package/dist/collections/operations/delete.js +7 -2
  127. package/dist/collections/operations/delete.js.map +1 -1
  128. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  129. package/dist/collections/operations/deleteByID.js +7 -2
  130. package/dist/collections/operations/deleteByID.js.map +1 -1
  131. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  132. package/dist/collections/operations/find.d.ts.map +1 -1
  133. package/dist/collections/operations/find.js +7 -2
  134. package/dist/collections/operations/find.js.map +1 -1
  135. package/dist/collections/operations/findByID.d.ts.map +1 -1
  136. package/dist/collections/operations/findByID.js +10 -5
  137. package/dist/collections/operations/findByID.js.map +1 -1
  138. package/dist/collections/operations/findDistinct.d.ts.map +1 -1
  139. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  140. package/dist/collections/operations/findVersionByID.js +6 -4
  141. package/dist/collections/operations/findVersionByID.js.map +1 -1
  142. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  143. package/dist/collections/operations/findVersions.js +6 -4
  144. package/dist/collections/operations/findVersions.js.map +1 -1
  145. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  146. package/dist/collections/operations/restoreVersion.js +7 -2
  147. package/dist/collections/operations/restoreVersion.js.map +1 -1
  148. package/dist/collections/operations/update.d.ts.map +1 -1
  149. package/dist/collections/operations/update.js +7 -2
  150. package/dist/collections/operations/update.js.map +1 -1
  151. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  152. package/dist/collections/operations/updateByID.js +7 -2
  153. package/dist/collections/operations/updateByID.js.map +1 -1
  154. package/dist/collections/operations/utilities/buildAfterOperation.d.ts.map +1 -1
  155. package/dist/collections/operations/utilities/sanitizeSortQuery.d.ts.map +1 -1
  156. package/dist/collections/operations/utilities/update.d.ts.map +1 -1
  157. package/dist/collections/operations/utilities/update.js +21 -12
  158. package/dist/collections/operations/utilities/update.js.map +1 -1
  159. package/dist/config/build.d.ts.map +1 -1
  160. package/dist/config/build.js +8 -0
  161. package/dist/config/build.js.map +1 -1
  162. package/dist/config/client.d.ts +1 -1
  163. package/dist/config/client.d.ts.map +1 -1
  164. package/dist/config/client.js +2 -11
  165. package/dist/config/client.js.map +1 -1
  166. package/dist/config/defaults.d.ts.map +1 -1
  167. package/dist/config/defaults.js +0 -15
  168. package/dist/config/defaults.js.map +1 -1
  169. package/dist/config/orderable/index.d.ts.map +1 -1
  170. package/dist/config/orderable/index.js +0 -4
  171. package/dist/config/orderable/index.js.map +1 -1
  172. package/dist/config/sanitize.d.ts.map +1 -1
  173. package/dist/config/sanitize.js +6 -53
  174. package/dist/config/sanitize.js.map +1 -1
  175. package/dist/config/types.d.ts +188 -32
  176. package/dist/config/types.d.ts.map +1 -1
  177. package/dist/config/types.js.map +1 -1
  178. package/dist/database/combineQueries.d.ts.map +1 -1
  179. package/dist/database/migrations/findMigrationDir.d.ts.map +1 -1
  180. package/dist/database/migrations/getPredefinedMigration.d.ts.map +1 -1
  181. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  182. package/dist/database/migrations/templates/localizeStatus.d.ts.map +1 -1
  183. package/dist/database/migrations/writeMigrationIndex.d.ts.map +1 -1
  184. package/dist/database/sanitizeJoinQuery.d.ts.map +1 -1
  185. package/dist/database/sanitizeWhereQuery.d.ts.map +1 -1
  186. package/dist/duplicateDocument/index.d.ts.map +1 -1
  187. package/dist/email/getStringifiedToAddress.d.ts.map +1 -1
  188. package/dist/email/types.d.ts +2 -7
  189. package/dist/email/types.d.ts.map +1 -1
  190. package/dist/email/types.js.map +1 -1
  191. package/dist/exports/shared.d.ts +6 -3
  192. package/dist/exports/shared.d.ts.map +1 -1
  193. package/dist/exports/shared.js +4 -2
  194. package/dist/exports/shared.js.map +1 -1
  195. package/dist/fields/baseFields/slug/countVersions.d.ts.map +1 -1
  196. package/dist/fields/baseFields/slug/generateSlug.d.ts.map +1 -1
  197. package/dist/fields/baseFields/slug/index.d.ts.map +1 -1
  198. package/dist/fields/baseFields/slug/index.js +7 -5
  199. package/dist/fields/baseFields/slug/index.js.map +1 -1
  200. package/dist/fields/config/client.d.ts +1 -1
  201. package/dist/fields/config/client.d.ts.map +1 -1
  202. package/dist/fields/config/client.js +4 -3
  203. package/dist/fields/config/client.js.map +1 -1
  204. package/dist/fields/config/sanitize.d.ts.map +1 -1
  205. package/dist/fields/config/sanitize.js +13 -20
  206. package/dist/fields/config/sanitize.js.map +1 -1
  207. package/dist/fields/config/sanitizeJoinField.d.ts.map +1 -1
  208. package/dist/fields/config/sanitizeJoinField.js +3 -0
  209. package/dist/fields/config/sanitizeJoinField.js.map +1 -1
  210. package/dist/fields/config/types.d.ts +40 -114
  211. package/dist/fields/config/types.d.ts.map +1 -1
  212. package/dist/fields/config/types.js +12 -2
  213. package/dist/fields/config/types.js.map +1 -1
  214. package/dist/fields/getDefaultValue.d.ts.map +1 -1
  215. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  216. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  217. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  218. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  219. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  220. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  221. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.d.ts.map +1 -1
  222. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.d.ts.map +1 -1
  223. package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts.map +1 -1
  224. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  225. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  226. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  227. package/dist/fields/hooks/beforeDuplicate/index.d.ts.map +1 -1
  228. package/dist/fields/hooks/beforeDuplicate/promise.d.ts.map +1 -1
  229. package/dist/fields/hooks/beforeDuplicate/traverseFields.d.ts.map +1 -1
  230. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  231. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  232. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  233. package/dist/fields/isFieldDisabled.d.ts +12 -0
  234. package/dist/fields/isFieldDisabled.d.ts.map +1 -0
  235. package/dist/fields/isFieldDisabled.js +15 -0
  236. package/dist/fields/isFieldDisabled.js.map +1 -0
  237. package/dist/fields/isFieldDisabled.spec.js +134 -0
  238. package/dist/fields/isFieldDisabled.spec.js.map +1 -0
  239. package/dist/fields/mergeBaseFields.d.ts.map +1 -1
  240. package/dist/fields/setDefaultBeforeDuplicate.d.ts.map +1 -1
  241. package/dist/fields/validations.js +1 -1
  242. package/dist/fields/validations.js.map +1 -1
  243. package/dist/globals/config/client.d.ts +1 -1
  244. package/dist/globals/config/client.d.ts.map +1 -1
  245. package/dist/globals/config/client.js +2 -1
  246. package/dist/globals/config/client.js.map +1 -1
  247. package/dist/globals/config/sanitize.d.ts +6 -1
  248. package/dist/globals/config/sanitize.d.ts.map +1 -1
  249. package/dist/globals/config/sanitize.js +6 -2
  250. package/dist/globals/config/sanitize.js.map +1 -1
  251. package/dist/globals/config/types.d.ts +4 -57
  252. package/dist/globals/config/types.d.ts.map +1 -1
  253. package/dist/globals/config/types.js.map +1 -1
  254. package/dist/globals/operations/countGlobalVersions.d.ts.map +1 -1
  255. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  256. package/dist/globals/operations/findOne.d.ts.map +1 -1
  257. package/dist/globals/operations/findOne.js +7 -2
  258. package/dist/globals/operations/findOne.js.map +1 -1
  259. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  260. package/dist/globals/operations/findVersionByID.js +6 -4
  261. package/dist/globals/operations/findVersionByID.js.map +1 -1
  262. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  263. package/dist/globals/operations/findVersions.js +6 -4
  264. package/dist/globals/operations/findVersions.js.map +1 -1
  265. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  266. package/dist/globals/operations/update.d.ts.map +1 -1
  267. package/dist/globals/operations/update.js +7 -2
  268. package/dist/globals/operations/update.js.map +1 -1
  269. package/dist/hierarchy/addHierarchyToCollection.d.ts +9 -0
  270. package/dist/hierarchy/addHierarchyToCollection.d.ts.map +1 -0
  271. package/dist/hierarchy/addHierarchyToCollection.js +76 -0
  272. package/dist/hierarchy/addHierarchyToCollection.js.map +1 -0
  273. package/dist/hierarchy/buildParentField.d.ts +11 -0
  274. package/dist/hierarchy/buildParentField.d.ts.map +1 -0
  275. package/dist/hierarchy/buildParentField.js +42 -0
  276. package/dist/hierarchy/buildParentField.js.map +1 -0
  277. package/dist/hierarchy/constants.d.ts +15 -0
  278. package/dist/hierarchy/constants.d.ts.map +1 -0
  279. package/dist/hierarchy/constants.js +11 -0
  280. package/dist/hierarchy/constants.js.map +1 -0
  281. package/dist/hierarchy/createFolderField.d.ts +39 -0
  282. package/dist/hierarchy/createFolderField.d.ts.map +1 -0
  283. package/dist/hierarchy/createFolderField.js +54 -0
  284. package/dist/hierarchy/createFolderField.js.map +1 -0
  285. package/dist/hierarchy/createTagField.d.ts +44 -0
  286. package/dist/hierarchy/createTagField.d.ts.map +1 -0
  287. package/dist/hierarchy/createTagField.js +48 -0
  288. package/dist/hierarchy/createTagField.js.map +1 -0
  289. package/dist/hierarchy/getInitialTreeData.d.ts +27 -0
  290. package/dist/hierarchy/getInitialTreeData.d.ts.map +1 -0
  291. package/dist/hierarchy/getInitialTreeData.js +125 -0
  292. package/dist/hierarchy/getInitialTreeData.js.map +1 -0
  293. package/dist/hierarchy/hooks/collectionAfterDelete.d.ts +14 -0
  294. package/dist/hierarchy/hooks/collectionAfterDelete.d.ts.map +1 -0
  295. package/dist/hierarchy/hooks/collectionAfterDelete.js +21 -0
  296. package/dist/hierarchy/hooks/collectionAfterDelete.js.map +1 -0
  297. package/dist/hierarchy/hooks/collectionAfterRead.d.ts +27 -0
  298. package/dist/hierarchy/hooks/collectionAfterRead.d.ts.map +1 -0
  299. package/dist/hierarchy/hooks/collectionAfterRead.js +72 -0
  300. package/dist/hierarchy/hooks/collectionAfterRead.js.map +1 -0
  301. package/dist/hierarchy/hooks/collectionBeforeChange.d.ts +19 -0
  302. package/dist/hierarchy/hooks/collectionBeforeChange.d.ts.map +1 -0
  303. package/dist/hierarchy/hooks/collectionBeforeChange.js +90 -0
  304. package/dist/hierarchy/hooks/collectionBeforeChange.js.map +1 -0
  305. package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts +15 -0
  306. package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts.map +1 -0
  307. package/dist/hierarchy/hooks/collectionBeforeDelete.js +20 -0
  308. package/dist/hierarchy/hooks/collectionBeforeDelete.js.map +1 -0
  309. package/dist/hierarchy/hooks/collectionBeforeOperation.d.ts +33 -0
  310. package/dist/hierarchy/hooks/collectionBeforeOperation.d.ts.map +1 -0
  311. package/dist/hierarchy/hooks/collectionBeforeOperation.js +66 -0
  312. package/dist/hierarchy/hooks/collectionBeforeOperation.js.map +1 -0
  313. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts +8 -0
  314. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts.map +1 -0
  315. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js +108 -0
  316. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js.map +1 -0
  317. package/dist/hierarchy/injectHierarchyButton.d.ts +14 -0
  318. package/dist/hierarchy/injectHierarchyButton.d.ts.map +1 -0
  319. package/dist/hierarchy/injectHierarchyButton.js +37 -0
  320. package/dist/hierarchy/injectHierarchyButton.js.map +1 -0
  321. package/dist/hierarchy/presets.d.ts +13 -0
  322. package/dist/hierarchy/presets.d.ts.map +1 -0
  323. package/dist/hierarchy/presets.js +52 -0
  324. package/dist/hierarchy/presets.js.map +1 -0
  325. package/dist/hierarchy/resolveHierarchyCollections.d.ts +23 -0
  326. package/dist/hierarchy/resolveHierarchyCollections.d.ts.map +1 -0
  327. package/dist/hierarchy/resolveHierarchyCollections.js +321 -0
  328. package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -0
  329. package/dist/hierarchy/sanitizeHierarchyCollection.d.ts +14 -0
  330. package/dist/hierarchy/sanitizeHierarchyCollection.d.ts.map +1 -0
  331. package/dist/hierarchy/sanitizeHierarchyCollection.js +119 -0
  332. package/dist/hierarchy/sanitizeHierarchyCollection.js.map +1 -0
  333. package/dist/hierarchy/types.d.ts +162 -0
  334. package/dist/hierarchy/types.d.ts.map +1 -0
  335. package/dist/hierarchy/types.js +6 -0
  336. package/dist/hierarchy/types.js.map +1 -0
  337. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.d.ts +77 -0
  338. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.d.ts.map +1 -0
  339. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.js +77 -0
  340. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.js.map +1 -0
  341. package/dist/hierarchy/utils/computePaths.d.ts +31 -0
  342. package/dist/hierarchy/utils/computePaths.d.ts.map +1 -0
  343. package/dist/hierarchy/utils/computePaths.js +445 -0
  344. package/dist/hierarchy/utils/computePaths.js.map +1 -0
  345. package/dist/hierarchy/utils/findUseAsTitle.d.ts +14 -0
  346. package/dist/hierarchy/utils/findUseAsTitle.d.ts.map +1 -0
  347. package/dist/hierarchy/utils/findUseAsTitle.js +89 -0
  348. package/dist/hierarchy/utils/findUseAsTitle.js.map +1 -0
  349. package/dist/hierarchy/utils/getAncestors.d.ts +34 -0
  350. package/dist/hierarchy/utils/getAncestors.d.ts.map +1 -0
  351. package/dist/hierarchy/utils/getAncestors.js +94 -0
  352. package/dist/hierarchy/utils/getAncestors.js.map +1 -0
  353. package/dist/hierarchy/utils/getLocalizedValue.d.ts +30 -0
  354. package/dist/hierarchy/utils/getLocalizedValue.d.ts.map +1 -0
  355. package/dist/hierarchy/utils/getLocalizedValue.js +46 -0
  356. package/dist/hierarchy/utils/getLocalizedValue.js.map +1 -0
  357. package/dist/hierarchy/utils/getLocalizedValue.spec.js +250 -0
  358. package/dist/hierarchy/utils/getLocalizedValue.spec.js.map +1 -0
  359. package/dist/index.bundled.d.ts +968 -637
  360. package/dist/index.d.ts +31 -9
  361. package/dist/index.d.ts.map +1 -1
  362. package/dist/index.js +14 -14
  363. package/dist/index.js.map +1 -1
  364. package/dist/kv/adapters/DatabaseKVAdapter.d.ts.map +1 -1
  365. package/dist/locked-documents/config.d.ts.map +1 -1
  366. package/dist/preferences/config.d.ts.map +1 -1
  367. package/dist/preferences/deleteUserPreferences.d.ts.map +1 -1
  368. package/dist/preferences/keys.d.ts +8 -4
  369. package/dist/preferences/keys.d.ts.map +1 -1
  370. package/dist/preferences/keys.js +7 -4
  371. package/dist/preferences/keys.js.map +1 -1
  372. package/dist/preferences/types.d.ts +1 -1
  373. package/dist/preferences/types.d.ts.map +1 -1
  374. package/dist/preferences/types.js.map +1 -1
  375. package/dist/query-presets/access.d.ts.map +1 -1
  376. package/dist/query-presets/config.d.ts.map +1 -1
  377. package/dist/query-presets/config.js +11 -7
  378. package/dist/query-presets/config.js.map +1 -1
  379. package/dist/query-presets/constraints.d.ts.map +1 -1
  380. package/dist/query-presets/constraints.js +1 -1
  381. package/dist/query-presets/constraints.js.map +1 -1
  382. package/dist/queues/config/generateJobsJSONSchemas.js +2 -2
  383. package/dist/queues/config/generateJobsJSONSchemas.js.map +1 -1
  384. package/dist/queues/config/types/index.d.ts +0 -21
  385. package/dist/queues/config/types/index.d.ts.map +1 -1
  386. package/dist/queues/config/types/index.js.map +1 -1
  387. package/dist/queues/config/types/taskTypes.d.ts +0 -20
  388. package/dist/queues/config/types/taskTypes.d.ts.map +1 -1
  389. package/dist/queues/config/types/taskTypes.js.map +1 -1
  390. package/dist/queues/endpoints/run.d.ts.map +1 -1
  391. package/dist/queues/localAPI.d.ts.map +1 -1
  392. package/dist/queues/localAPI.js +26 -67
  393. package/dist/queues/localAPI.js.map +1 -1
  394. package/dist/queues/operations/handleSchedules/getQueuesWithSchedules.d.ts.map +1 -1
  395. package/dist/queues/operations/handleSchedules/index.d.ts.map +1 -1
  396. package/dist/queues/operations/handleSchedules/index.js +1 -4
  397. package/dist/queues/operations/handleSchedules/index.js.map +1 -1
  398. package/dist/queues/operations/runJobs/index.d.ts.map +1 -1
  399. package/dist/queues/operations/runJobs/index.js +7 -27
  400. package/dist/queues/operations/runJobs/index.js.map +1 -1
  401. package/dist/queues/operations/runJobs/runJSONJob/index.d.ts.map +1 -1
  402. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.d.ts.map +1 -1
  403. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +3 -22
  404. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
  405. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts.map +1 -1
  406. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js +0 -2
  407. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js.map +1 -1
  408. package/dist/queues/operations/runJobs/runJob/index.d.ts.map +1 -1
  409. package/dist/queues/utilities/getJobTaskStatus.d.ts.map +1 -1
  410. package/dist/queues/utilities/updateJob.d.ts +1 -3
  411. package/dist/queues/utilities/updateJob.d.ts.map +1 -1
  412. package/dist/queues/utilities/updateJob.js +2 -18
  413. package/dist/queues/utilities/updateJob.js.map +1 -1
  414. package/dist/translations/getLocalI18n.d.ts.map +1 -1
  415. package/dist/types/index.d.ts +54 -5
  416. package/dist/types/index.d.ts.map +1 -1
  417. package/dist/types/index.js.map +1 -1
  418. package/dist/uploads/checkFileAccess.d.ts.map +1 -1
  419. package/dist/uploads/checkFileRestrictions.d.ts.map +1 -1
  420. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  421. package/dist/uploads/endpoints/getFileFromURL.d.ts.map +1 -1
  422. package/dist/uploads/endpoints/getFileFromURL.js +9 -5
  423. package/dist/uploads/endpoints/getFileFromURL.js.map +1 -1
  424. package/dist/uploads/fetchAPI-multipart/isEligibleRequest.d.ts.map +1 -1
  425. package/dist/uploads/fetchAPI-multipart/processNested.d.ts.map +1 -1
  426. package/dist/uploads/fetchAPI-multipart/utilities.d.ts.map +1 -1
  427. package/dist/uploads/fileExists.d.ts.map +1 -1
  428. package/dist/uploads/generateFileData.d.ts +2 -1
  429. package/dist/uploads/generateFileData.d.ts.map +1 -1
  430. package/dist/uploads/generateFileData.js +5 -2
  431. package/dist/uploads/generateFileData.js.map +1 -1
  432. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  433. package/dist/uploads/getBaseFields.js +24 -70
  434. package/dist/uploads/getBaseFields.js.map +1 -1
  435. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  436. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  437. package/dist/uploads/getFileTypeFallback.d.ts.map +1 -1
  438. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  439. package/dist/uploads/image-resizing/createImageSize.d.ts.map +1 -1
  440. package/dist/uploads/image-resizing/generateImageSizeFilename.d.ts.map +1 -1
  441. package/dist/uploads/image-resizing/getImageResizeAction.d.ts.map +1 -1
  442. package/dist/uploads/image-resizing/parseFilename.d.ts.map +1 -1
  443. package/dist/uploads/image-resizing/sanitizeResizeConfig.d.ts.map +1 -1
  444. package/dist/uploads/mimeTypeValidator.d.ts.map +1 -1
  445. package/dist/uploads/safeFetch.d.ts +1 -1
  446. package/dist/uploads/safeFetch.d.ts.map +1 -1
  447. package/dist/uploads/saveBufferToFile.d.ts.map +1 -1
  448. package/dist/uploads/tempFile.d.ts.map +1 -1
  449. package/dist/uploads/types.d.ts +12 -29
  450. package/dist/uploads/types.d.ts.map +1 -1
  451. package/dist/uploads/types.js.map +1 -1
  452. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  453. package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
  454. package/dist/utilities/addSelectGenericsToGeneretedTypes.d.ts.map +1 -1
  455. package/dist/utilities/appendDateTimezoneSelectFields.d.ts +13 -0
  456. package/dist/utilities/appendDateTimezoneSelectFields.d.ts.map +1 -0
  457. package/dist/utilities/appendDateTimezoneSelectFields.js +47 -0
  458. package/dist/utilities/appendDateTimezoneSelectFields.js.map +1 -0
  459. package/dist/utilities/appendNonTrashedFilter.d.ts.map +1 -1
  460. package/dist/utilities/appendUploadSelectFields.d.ts.map +1 -1
  461. package/dist/utilities/appendUploadSelectFields.js +3 -0
  462. package/dist/utilities/appendUploadSelectFields.js.map +1 -1
  463. package/dist/utilities/canAccessAdmin.d.ts.map +1 -1
  464. package/dist/utilities/checkDocumentLockStatus.d.ts.map +1 -1
  465. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  466. package/dist/utilities/configToJSONSchema.js +68 -50
  467. package/dist/utilities/configToJSONSchema.js.map +1 -1
  468. package/dist/utilities/configToJSONSchema.spec.js +98 -69
  469. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  470. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  471. package/dist/utilities/deepCopyObject.d.ts.map +1 -1
  472. package/dist/utilities/dependencies/resolveFrom.d.ts.map +1 -1
  473. package/dist/utilities/escapeRegExp.d.ts.map +1 -1
  474. package/dist/utilities/extractID.d.ts.map +1 -1
  475. package/dist/utilities/extractID.js +1 -1
  476. package/dist/utilities/extractID.js.map +1 -1
  477. package/dist/utilities/flattenAllFields.d.ts.map +1 -1
  478. package/dist/utilities/formatAdminURL.d.ts +13 -2
  479. package/dist/utilities/formatAdminURL.d.ts.map +1 -1
  480. package/dist/utilities/formatAdminURL.js.map +1 -1
  481. package/dist/utilities/formatErrors.d.ts.map +1 -1
  482. package/dist/utilities/formatLabels.d.ts.map +1 -1
  483. package/dist/utilities/getBestFitFromSizes.d.ts.map +1 -1
  484. package/dist/utilities/getBlockSelect.d.ts.map +1 -1
  485. package/dist/utilities/getDataByPath.d.ts.map +1 -1
  486. package/dist/utilities/getEntityPermissions/populateFieldPermissions.d.ts.map +1 -1
  487. package/dist/utilities/getFieldByPath.d.ts.map +1 -1
  488. package/dist/utilities/getFieldPermissions.d.ts.map +1 -1
  489. package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
  490. package/dist/utilities/getRequestEntity.d.ts.map +1 -1
  491. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  492. package/dist/utilities/getRequestOrigin.d.ts.map +1 -1
  493. package/dist/utilities/getSafeRedirect.d.ts.map +1 -1
  494. package/dist/utilities/getSelectMode.d.ts.map +1 -1
  495. package/dist/utilities/getSiblingData.d.ts.map +1 -1
  496. package/dist/utilities/getTranslatedLabel.d.ts.map +1 -1
  497. package/dist/utilities/getVersionsConfig.d.ts.map +1 -1
  498. package/dist/utilities/handleEndpoints.d.ts.map +1 -1
  499. package/dist/utilities/handleEndpoints.js +0 -2
  500. package/dist/utilities/handleEndpoints.js.map +1 -1
  501. package/dist/utilities/headersWithCors.d.ts.map +1 -1
  502. package/dist/utilities/isEntityHidden.d.ts.map +1 -1
  503. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  504. package/dist/utilities/isValidID.d.ts.map +1 -1
  505. package/dist/utilities/logError.d.ts.map +1 -1
  506. package/dist/utilities/logger.d.ts.map +1 -1
  507. package/dist/utilities/mergeHeaders.d.ts.map +1 -1
  508. package/dist/utilities/mergeListSearchAndWhere.d.ts.map +1 -1
  509. package/dist/utilities/optionsAreEqual.d.ts.map +1 -1
  510. package/dist/utilities/parseBooleanString.d.ts.map +1 -1
  511. package/dist/utilities/parseCookies.d.ts.map +1 -1
  512. package/dist/utilities/parseParams/index.d.ts.map +1 -1
  513. package/dist/utilities/profiling.d.ts.map +1 -1
  514. package/dist/utilities/reduceFieldsToValues.d.ts.map +1 -1
  515. package/dist/utilities/resolveSelect.d.ts +16 -0
  516. package/dist/utilities/resolveSelect.d.ts.map +1 -0
  517. package/dist/utilities/resolveSelect.js +19 -0
  518. package/dist/utilities/resolveSelect.js.map +1 -0
  519. package/dist/utilities/routeError.d.ts.map +1 -1
  520. package/dist/utilities/sanitizeFallbackLocale.d.ts.map +1 -1
  521. package/dist/utilities/sanitizeInternalFields.d.ts.map +1 -1
  522. package/dist/utilities/sanitizeJoinParams.d.ts.map +1 -1
  523. package/dist/utilities/sanitizePopulateParam.d.ts.map +1 -1
  524. package/dist/utilities/sanitizeSelect.d.ts +1 -2
  525. package/dist/utilities/sanitizeSelect.d.ts.map +1 -1
  526. package/dist/utilities/sanitizeSelect.js +19 -25
  527. package/dist/utilities/sanitizeSelect.js.map +1 -1
  528. package/dist/utilities/sanitizeSelectParam.d.ts.map +1 -1
  529. package/dist/utilities/sanitizeSortParams.d.ts.map +1 -1
  530. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  531. package/dist/utilities/slugify.d.ts.map +1 -1
  532. package/dist/utilities/stripUnselectedFields.d.ts.map +1 -1
  533. package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
  534. package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
  535. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  536. package/dist/utilities/telemetry/oneWayHash.d.ts.map +1 -1
  537. package/dist/utilities/timestamp.d.ts.map +1 -1
  538. package/dist/utilities/toKebabCase.d.ts.map +1 -1
  539. package/dist/utilities/transformColumnPreferences.d.ts.map +1 -1
  540. package/dist/utilities/transformWhereQuery.d.ts.map +1 -1
  541. package/dist/utilities/traverseFields.d.ts.map +1 -1
  542. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  543. package/dist/utilities/unflatten.d.ts.map +1 -1
  544. package/dist/utilities/validateMimeType.d.ts.map +1 -1
  545. package/dist/utilities/validateTimezones.d.ts.map +1 -1
  546. package/dist/utilities/validateWhereQuery.d.ts.map +1 -1
  547. package/dist/utilities/wordBoundariesRegex.d.ts.map +1 -1
  548. package/dist/utilities/wrapInternalEndpoints.d.ts.map +1 -1
  549. package/dist/versions/baseFields.d.ts.map +1 -1
  550. package/dist/versions/baseFields.js +3 -2
  551. package/dist/versions/baseFields.js.map +1 -1
  552. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  553. package/dist/versions/buildCollectionFields.js +0 -1
  554. package/dist/versions/buildCollectionFields.js.map +1 -1
  555. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  556. package/dist/versions/buildGlobalFields.js +0 -1
  557. package/dist/versions/buildGlobalFields.js.map +1 -1
  558. package/dist/versions/buildVersionCompoundIndexes.d.ts.map +1 -1
  559. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  560. package/dist/versions/deleteScheduledPublishJobs.d.ts.map +1 -1
  561. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  562. package/dist/versions/drafts/getQueryDraftsSelect.d.ts.map +1 -1
  563. package/dist/versions/drafts/getQueryDraftsSort.d.ts.map +1 -1
  564. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  565. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  566. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  567. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  568. package/dist/versions/migrations/localizeStatus/shared.d.ts.map +1 -1
  569. package/dist/versions/payloadPackageList.d.ts.map +1 -1
  570. package/dist/versions/payloadPackageList.js +0 -1
  571. package/dist/versions/payloadPackageList.js.map +1 -1
  572. package/dist/versions/saveSnapshot.d.ts.map +1 -1
  573. package/dist/versions/schedule/job.d.ts.map +1 -1
  574. package/package.json +20 -20
  575. package/dist/admin/views/folderList.d.ts +0 -56
  576. package/dist/admin/views/folderList.d.ts.map +0 -1
  577. package/dist/admin/views/folderList.js +0 -3
  578. package/dist/admin/views/folderList.js.map +0 -1
  579. package/dist/email/normalizeSendEmailOptions.d.ts +0 -13
  580. package/dist/email/normalizeSendEmailOptions.d.ts.map +0 -1
  581. package/dist/email/normalizeSendEmailOptions.js +0 -20
  582. package/dist/email/normalizeSendEmailOptions.js.map +0 -1
  583. package/dist/folders/addFolderCollection.d.ts +0 -10
  584. package/dist/folders/addFolderCollection.d.ts.map +0 -1
  585. package/dist/folders/addFolderCollection.js +0 -26
  586. package/dist/folders/addFolderCollection.js.map +0 -1
  587. package/dist/folders/addFolderFieldToCollection.d.ts +0 -8
  588. package/dist/folders/addFolderFieldToCollection.d.ts.map +0 -1
  589. package/dist/folders/addFolderFieldToCollection.js +0 -20
  590. package/dist/folders/addFolderFieldToCollection.js.map +0 -1
  591. package/dist/folders/buildFolderField.d.ts +0 -8
  592. package/dist/folders/buildFolderField.d.ts.map +0 -1
  593. package/dist/folders/buildFolderField.js +0 -87
  594. package/dist/folders/buildFolderField.js.map +0 -1
  595. package/dist/folders/constants.d.ts +0 -3
  596. package/dist/folders/constants.d.ts.map +0 -1
  597. package/dist/folders/constants.js +0 -4
  598. package/dist/folders/constants.js.map +0 -1
  599. package/dist/folders/createFolderCollection.d.ts +0 -11
  600. package/dist/folders/createFolderCollection.d.ts.map +0 -1
  601. package/dist/folders/createFolderCollection.js +0 -115
  602. package/dist/folders/createFolderCollection.js.map +0 -1
  603. package/dist/folders/hooks/deleteSubfoldersAfterDelete.d.ts +0 -8
  604. package/dist/folders/hooks/deleteSubfoldersAfterDelete.d.ts.map +0 -1
  605. package/dist/folders/hooks/deleteSubfoldersAfterDelete.js +0 -15
  606. package/dist/folders/hooks/deleteSubfoldersAfterDelete.js.map +0 -1
  607. package/dist/folders/hooks/dissasociateAfterDelete.d.ts +0 -8
  608. package/dist/folders/hooks/dissasociateAfterDelete.d.ts.map +0 -1
  609. package/dist/folders/hooks/dissasociateAfterDelete.js +0 -20
  610. package/dist/folders/hooks/dissasociateAfterDelete.js.map +0 -1
  611. package/dist/folders/hooks/ensureSafeCollectionsChange.d.ts +0 -5
  612. package/dist/folders/hooks/ensureSafeCollectionsChange.d.ts.map +0 -1
  613. package/dist/folders/hooks/ensureSafeCollectionsChange.js +0 -107
  614. package/dist/folders/hooks/ensureSafeCollectionsChange.js.map +0 -1
  615. package/dist/folders/hooks/reparentChildFolder.d.ts +0 -24
  616. package/dist/folders/hooks/reparentChildFolder.d.ts.map +0 -1
  617. package/dist/folders/hooks/reparentChildFolder.js +0 -72
  618. package/dist/folders/hooks/reparentChildFolder.js.map +0 -1
  619. package/dist/folders/types.d.ts +0 -118
  620. package/dist/folders/types.d.ts.map +0 -1
  621. package/dist/folders/types.js +0 -3
  622. package/dist/folders/types.js.map +0 -1
  623. package/dist/folders/utils/buildFolderWhereConstraints.d.ts +0 -13
  624. package/dist/folders/utils/buildFolderWhereConstraints.d.ts.map +0 -1
  625. package/dist/folders/utils/buildFolderWhereConstraints.js +0 -45
  626. package/dist/folders/utils/buildFolderWhereConstraints.js.map +0 -1
  627. package/dist/folders/utils/formatFolderOrDocumentItem.d.ts +0 -12
  628. package/dist/folders/utils/formatFolderOrDocumentItem.d.ts.map +0 -1
  629. package/dist/folders/utils/formatFolderOrDocumentItem.js +0 -30
  630. package/dist/folders/utils/formatFolderOrDocumentItem.js.map +0 -1
  631. package/dist/folders/utils/getFolderBreadcrumbs.d.ts +0 -14
  632. package/dist/folders/utils/getFolderBreadcrumbs.d.ts.map +0 -1
  633. package/dist/folders/utils/getFolderBreadcrumbs.js +0 -45
  634. package/dist/folders/utils/getFolderBreadcrumbs.js.map +0 -1
  635. package/dist/folders/utils/getFolderData.d.ts +0 -33
  636. package/dist/folders/utils/getFolderData.d.ts.map +0 -1
  637. package/dist/folders/utils/getFolderData.js +0 -88
  638. package/dist/folders/utils/getFolderData.js.map +0 -1
  639. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.d.ts +0 -24
  640. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.d.ts.map +0 -1
  641. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.js +0 -66
  642. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.js.map +0 -1
  643. package/dist/folders/utils/getOrphanedDocs.d.ts +0 -15
  644. package/dist/folders/utils/getOrphanedDocs.d.ts.map +0 -1
  645. package/dist/folders/utils/getOrphanedDocs.js +0 -40
  646. package/dist/folders/utils/getOrphanedDocs.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"incrementLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/incrementLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AAErF,OAAO,EAAmB,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAGjF,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAID,eAAO,MAAM,sBAAsB,mCAIhC,IAAI,KAAG,OAAO,CAAC,IAAI,CAuIrB,CAAA"}
1
+ {"version":3,"file":"incrementLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/incrementLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AAErF,OAAO,EAAmB,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAGjF,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAID,eAAO,MAAM,sBAAsB,GAAU,gCAI1C,IAAI,KAAG,OAAO,CAAC,IAAI,CAuIrB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAMhF,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,UAAU,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,qBAAqB,iDAM/B,IAAI,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0ExC,CAAA"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAMhF,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,UAAU,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAU,8CAMzC,IAAI,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0ExC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"resetLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/resetLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAE7D,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CAAA;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,kBAAkB,uCAK5B,IAAI,KAAG,OAAO,CAAC,IAAI,CAiBrB,CAAA"}
1
+ {"version":3,"file":"resetLoginAttempts.d.ts","sourceRoot":"","sources":["../../../../src/auth/strategies/local/resetLoginAttempts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACjG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAE7D,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,CAAA;IACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CAAA;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAU,oCAKtC,IAAI,KAAG,OAAO,CAAC,IAAI,CAiBrB,CAAA"}
@@ -0,0 +1,25 @@
1
+ import type { SanitizedConfig } from '../config/types.js';
2
+ /**
3
+ * `payload build` — generate the import map (and types) so they are on disk
4
+ * before `next build` statically imports them, then run the project's Next.js
5
+ * build, forwarding any extra CLI args verbatim.
6
+ *
7
+ * Owns its own process lifecycle: it exits with `next build`'s exit code, or
8
+ * exits 1 if pre-build generation fails (never builds against a stale map).
9
+ */
10
+ export declare function build({ config }: {
11
+ config: SanitizedConfig;
12
+ }): Promise<void>;
13
+ /**
14
+ * Resolve the project's `next` binary from its own manifest, robust to a future
15
+ * `exports` field and to internal layout changes. Resolving from `cwd` (not
16
+ * PATH) works whether `payload build` runs via an npm script or `npx`.
17
+ */
18
+ export declare function resolveNextBin(cwd?: string): string;
19
+ /**
20
+ * Forward the raw args that follow the `build` subcommand to `next build`,
21
+ * dropping payload-only flags. Uses raw argv (not minimist) so flags like
22
+ * `--turbopack` or `--experimental-build-mode` pass through verbatim.
23
+ */
24
+ export declare function getForwardedArgs(argv?: string[]): string[];
25
+ //# sourceMappingURL=build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/bin/build.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAKzD;;;;;;;GAOG;AACH,wBAAsB,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgClF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,CAmBlE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,MAAM,EAAE,CAIjF"}
@@ -0,0 +1,80 @@
1
+ /* eslint-disable no-console */ import { spawn } from 'node:child_process';
2
+ import { readFileSync } from 'node:fs';
3
+ import { createRequire } from 'node:module';
4
+ import path from 'node:path';
5
+ import { generateImportMap } from './generateImportMap/index.js';
6
+ import { generateTypes } from './generateTypes.js';
7
+ /**
8
+ * `payload build` — generate the import map (and types) so they are on disk
9
+ * before `next build` statically imports them, then run the project's Next.js
10
+ * build, forwarding any extra CLI args verbatim.
11
+ *
12
+ * Owns its own process lifecycle: it exits with `next build`'s exit code, or
13
+ * exits 1 if pre-build generation fails (never builds against a stale map).
14
+ */ export async function build({ config }) {
15
+ const skipTypes = process.argv.includes('--no-types');
16
+ try {
17
+ await generateImportMap(config, {
18
+ log: true
19
+ });
20
+ if (!skipTypes) {
21
+ await generateTypes(config, {
22
+ log: true
23
+ });
24
+ }
25
+ } catch (err) {
26
+ console.error('Pre-build generation failed:');
27
+ console.error(err);
28
+ return process.exit(1);
29
+ }
30
+ const nextBin = resolveNextBin();
31
+ const forwardedArgs = getForwardedArgs();
32
+ const exitCode = await new Promise((resolve)=>{
33
+ const child = spawn(process.execPath, [
34
+ nextBin,
35
+ 'build',
36
+ ...forwardedArgs
37
+ ], {
38
+ stdio: 'inherit'
39
+ });
40
+ child.on('error', (err)=>{
41
+ console.error('Failed to run next build:');
42
+ console.error(err);
43
+ resolve(1);
44
+ });
45
+ child.on('exit', (code)=>{
46
+ resolve(code ?? 0);
47
+ });
48
+ });
49
+ process.exit(exitCode);
50
+ }
51
+ /**
52
+ * Resolve the project's `next` binary from its own manifest, robust to a future
53
+ * `exports` field and to internal layout changes. Resolving from `cwd` (not
54
+ * PATH) works whether `payload build` runs via an npm script or `npx`.
55
+ */ export function resolveNextBin(cwd = process.cwd()) {
56
+ const require = createRequire(path.join(cwd, 'package.json'));
57
+ let nextPkgPath;
58
+ try {
59
+ nextPkgPath = require.resolve('next/package.json');
60
+ } catch {
61
+ throw new Error('Could not resolve "next" from the current project. Is Next.js installed?');
62
+ }
63
+ const nextPkg = JSON.parse(readFileSync(nextPkgPath, 'utf8'));
64
+ const binField = typeof nextPkg.bin === 'string' ? nextPkg.bin : nextPkg.bin?.next;
65
+ if (!binField) {
66
+ throw new Error('Could not determine the "next" binary path from next/package.json.');
67
+ }
68
+ return path.join(path.dirname(nextPkgPath), binField);
69
+ }
70
+ /**
71
+ * Forward the raw args that follow the `build` subcommand to `next build`,
72
+ * dropping payload-only flags. Uses raw argv (not minimist) so flags like
73
+ * `--turbopack` or `--experimental-build-mode` pass through verbatim.
74
+ */ export function getForwardedArgs(argv = process.argv.slice(2)) {
75
+ const buildIndex = argv.indexOf('build');
76
+ const rest = buildIndex === -1 ? argv : argv.slice(buildIndex + 1);
77
+ return rest.filter((arg)=>arg !== '--no-types');
78
+ }
79
+
80
+ //# sourceMappingURL=build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/bin/build.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport { spawn } from 'node:child_process'\nimport { readFileSync } from 'node:fs'\nimport { createRequire } from 'node:module'\nimport path from 'node:path'\n\nimport type { SanitizedConfig } from '../config/types.js'\n\nimport { generateImportMap } from './generateImportMap/index.js'\nimport { generateTypes } from './generateTypes.js'\n\n/**\n * `payload build` — generate the import map (and types) so they are on disk\n * before `next build` statically imports them, then run the project's Next.js\n * build, forwarding any extra CLI args verbatim.\n *\n * Owns its own process lifecycle: it exits with `next build`'s exit code, or\n * exits 1 if pre-build generation fails (never builds against a stale map).\n */\nexport async function build({ config }: { config: SanitizedConfig }): Promise<void> {\n const skipTypes = process.argv.includes('--no-types')\n\n try {\n await generateImportMap(config, { log: true })\n if (!skipTypes) {\n await generateTypes(config, { log: true })\n }\n } catch (err) {\n console.error('Pre-build generation failed:')\n console.error(err)\n return process.exit(1)\n }\n\n const nextBin = resolveNextBin()\n const forwardedArgs = getForwardedArgs()\n\n const exitCode = await new Promise<number>((resolve) => {\n const child = spawn(process.execPath, [nextBin, 'build', ...forwardedArgs], {\n stdio: 'inherit',\n })\n child.on('error', (err) => {\n console.error('Failed to run next build:')\n console.error(err)\n resolve(1)\n })\n child.on('exit', (code) => {\n resolve(code ?? 0)\n })\n })\n\n process.exit(exitCode)\n}\n\n/**\n * Resolve the project's `next` binary from its own manifest, robust to a future\n * `exports` field and to internal layout changes. Resolving from `cwd` (not\n * PATH) works whether `payload build` runs via an npm script or `npx`.\n */\nexport function resolveNextBin(cwd: string = process.cwd()): string {\n const require = createRequire(path.join(cwd, 'package.json'))\n\n let nextPkgPath: string\n try {\n nextPkgPath = require.resolve('next/package.json')\n } catch {\n throw new Error('Could not resolve \"next\" from the current project. Is Next.js installed?')\n }\n\n const nextPkg = JSON.parse(readFileSync(nextPkgPath, 'utf8')) as {\n bin?: Record<string, string> | string\n }\n const binField = typeof nextPkg.bin === 'string' ? nextPkg.bin : nextPkg.bin?.next\n if (!binField) {\n throw new Error('Could not determine the \"next\" binary path from next/package.json.')\n }\n\n return path.join(path.dirname(nextPkgPath), binField)\n}\n\n/**\n * Forward the raw args that follow the `build` subcommand to `next build`,\n * dropping payload-only flags. Uses raw argv (not minimist) so flags like\n * `--turbopack` or `--experimental-build-mode` pass through verbatim.\n */\nexport function getForwardedArgs(argv: string[] = process.argv.slice(2)): string[] {\n const buildIndex = argv.indexOf('build')\n const rest = buildIndex === -1 ? argv : argv.slice(buildIndex + 1)\n return rest.filter((arg) => arg !== '--no-types')\n}\n"],"names":["spawn","readFileSync","createRequire","path","generateImportMap","generateTypes","build","config","skipTypes","process","argv","includes","log","err","console","error","exit","nextBin","resolveNextBin","forwardedArgs","getForwardedArgs","exitCode","Promise","resolve","child","execPath","stdio","on","code","cwd","require","join","nextPkgPath","Error","nextPkg","JSON","parse","binField","bin","next","dirname","slice","buildIndex","indexOf","rest","filter","arg"],"mappings":"AAAA,6BAA6B,GAC7B,SAASA,KAAK,QAAQ,qBAAoB;AAC1C,SAASC,YAAY,QAAQ,UAAS;AACtC,SAASC,aAAa,QAAQ,cAAa;AAC3C,OAAOC,UAAU,YAAW;AAI5B,SAASC,iBAAiB,QAAQ,+BAA8B;AAChE,SAASC,aAAa,QAAQ,qBAAoB;AAElD;;;;;;;CAOC,GACD,OAAO,eAAeC,MAAM,EAAEC,MAAM,EAA+B;IACjE,MAAMC,YAAYC,QAAQC,IAAI,CAACC,QAAQ,CAAC;IAExC,IAAI;QACF,MAAMP,kBAAkBG,QAAQ;YAAEK,KAAK;QAAK;QAC5C,IAAI,CAACJ,WAAW;YACd,MAAMH,cAAcE,QAAQ;gBAAEK,KAAK;YAAK;QAC1C;IACF,EAAE,OAAOC,KAAK;QACZC,QAAQC,KAAK,CAAC;QACdD,QAAQC,KAAK,CAACF;QACd,OAAOJ,QAAQO,IAAI,CAAC;IACtB;IAEA,MAAMC,UAAUC;IAChB,MAAMC,gBAAgBC;IAEtB,MAAMC,WAAW,MAAM,IAAIC,QAAgB,CAACC;QAC1C,MAAMC,QAAQxB,MAAMS,QAAQgB,QAAQ,EAAE;YAACR;YAAS;eAAYE;SAAc,EAAE;YAC1EO,OAAO;QACT;QACAF,MAAMG,EAAE,CAAC,SAAS,CAACd;YACjBC,QAAQC,KAAK,CAAC;YACdD,QAAQC,KAAK,CAACF;YACdU,QAAQ;QACV;QACAC,MAAMG,EAAE,CAAC,QAAQ,CAACC;YAChBL,QAAQK,QAAQ;QAClB;IACF;IAEAnB,QAAQO,IAAI,CAACK;AACf;AAEA;;;;CAIC,GACD,OAAO,SAASH,eAAeW,MAAcpB,QAAQoB,GAAG,EAAE;IACxD,MAAMC,UAAU5B,cAAcC,KAAK4B,IAAI,CAACF,KAAK;IAE7C,IAAIG;IACJ,IAAI;QACFA,cAAcF,QAAQP,OAAO,CAAC;IAChC,EAAE,OAAM;QACN,MAAM,IAAIU,MAAM;IAClB;IAEA,MAAMC,UAAUC,KAAKC,KAAK,CAACnC,aAAa+B,aAAa;IAGrD,MAAMK,WAAW,OAAOH,QAAQI,GAAG,KAAK,WAAWJ,QAAQI,GAAG,GAAGJ,QAAQI,GAAG,EAAEC;IAC9E,IAAI,CAACF,UAAU;QACb,MAAM,IAAIJ,MAAM;IAClB;IAEA,OAAO9B,KAAK4B,IAAI,CAAC5B,KAAKqC,OAAO,CAACR,cAAcK;AAC9C;AAEA;;;;CAIC,GACD,OAAO,SAASjB,iBAAiBV,OAAiBD,QAAQC,IAAI,CAAC+B,KAAK,CAAC,EAAE;IACrE,MAAMC,aAAahC,KAAKiC,OAAO,CAAC;IAChC,MAAMC,OAAOF,eAAe,CAAC,IAAIhC,OAAOA,KAAK+B,KAAK,CAACC,aAAa;IAChE,OAAOE,KAAKC,MAAM,CAAC,CAACC,MAAQA,QAAQ;AACtC"}
@@ -0,0 +1,170 @@
1
+ import { describe, expect, it, vi, beforeEach, afterEach } from 'vitest';
2
+ // Default fake child auto-fires `exit(0)` synchronously so ordering/generation
3
+ // tests resolve. Specific tests override via `mockReturnValueOnce` to drive the
4
+ // exit/error handlers manually.
5
+ const spawnMock = vi.fn(()=>({
6
+ on (event, cb) {
7
+ if (event === 'exit') {
8
+ cb(0);
9
+ }
10
+ return this;
11
+ }
12
+ }));
13
+ const generateImportMapMock = vi.fn(async ()=>{});
14
+ const generateTypesMock = vi.fn(async ()=>{});
15
+ vi.mock('node:child_process', ()=>({
16
+ spawn: spawnMock
17
+ }));
18
+ vi.mock('./generateImportMap/index.js', ()=>({
19
+ generateImportMap: generateImportMapMock
20
+ }));
21
+ vi.mock('./generateTypes.js', ()=>({
22
+ generateTypes: generateTypesMock
23
+ }));
24
+ // Imported after mocks are registered
25
+ const { build, getForwardedArgs, resolveNextBin } = await import('./build.js');
26
+ const fakeConfig = {};
27
+ describe('getForwardedArgs', ()=>{
28
+ it('returns args after the build token and strips --no-types', ()=>{
29
+ expect(getForwardedArgs([
30
+ 'build',
31
+ '--turbopack',
32
+ '--no-types',
33
+ 'foo'
34
+ ])).toEqual([
35
+ '--turbopack',
36
+ 'foo'
37
+ ]);
38
+ });
39
+ it('returns empty array when only build is present', ()=>{
40
+ expect(getForwardedArgs([
41
+ 'build'
42
+ ])).toEqual([]);
43
+ });
44
+ });
45
+ describe('resolveNextBin', ()=>{
46
+ it('resolves next bin from the current project', ()=>{
47
+ // next is installed at the repo root; resolving from cwd must succeed
48
+ const binPath = resolveNextBin(process.cwd());
49
+ expect(binPath).toMatch(/next[\\/].*bin[\\/]next$/);
50
+ });
51
+ it('throws a clear error when next cannot be resolved', ()=>{
52
+ expect(()=>resolveNextBin('/nonexistent-project-root')).toThrow(/next/i);
53
+ });
54
+ });
55
+ describe('build', ()=>{
56
+ let exitMock;
57
+ let originalArgv;
58
+ beforeEach(()=>{
59
+ spawnMock.mockClear();
60
+ generateImportMapMock.mockClear();
61
+ generateTypesMock.mockClear();
62
+ originalArgv = process.argv;
63
+ process.argv = [
64
+ 'node',
65
+ 'payload',
66
+ 'build'
67
+ ];
68
+ exitMock = vi.spyOn(process, 'exit').mockImplementation(()=>undefined);
69
+ });
70
+ afterEach(()=>{
71
+ process.argv = originalArgv;
72
+ exitMock.mockRestore();
73
+ });
74
+ it('generates the import map before spawning, and generates types by default', async ()=>{
75
+ await build({
76
+ config: fakeConfig
77
+ });
78
+ expect(generateImportMapMock).toHaveBeenCalledTimes(1);
79
+ expect(generateTypesMock).toHaveBeenCalledTimes(1);
80
+ expect(spawnMock).toHaveBeenCalledTimes(1);
81
+ expect(generateImportMapMock.mock.invocationCallOrder[0]).toBeLessThan(spawnMock.mock.invocationCallOrder[0]);
82
+ });
83
+ it('skips type generation with --no-types', async ()=>{
84
+ process.argv = [
85
+ 'node',
86
+ 'payload',
87
+ 'build',
88
+ '--no-types'
89
+ ];
90
+ await build({
91
+ config: fakeConfig
92
+ });
93
+ expect(generateImportMapMock).toHaveBeenCalledTimes(1);
94
+ expect(generateTypesMock).not.toHaveBeenCalled();
95
+ expect(spawnMock).toHaveBeenCalledTimes(1);
96
+ });
97
+ it('exits 1 and does not spawn when generation fails', async ()=>{
98
+ generateImportMapMock.mockRejectedValueOnce(new Error('boom'));
99
+ await build({
100
+ config: fakeConfig
101
+ });
102
+ expect(exitMock).toHaveBeenCalledWith(1);
103
+ expect(spawnMock).not.toHaveBeenCalled();
104
+ });
105
+ it('spawns next build with forwarded args and propagates the child exit code', async ()=>{
106
+ process.argv = [
107
+ 'node',
108
+ 'payload',
109
+ 'build',
110
+ '--turbopack'
111
+ ];
112
+ let exitCb;
113
+ spawnMock.mockReturnValueOnce({
114
+ on (event, cb) {
115
+ if (event === 'exit') {
116
+ exitCb = cb;
117
+ }
118
+ return this;
119
+ }
120
+ });
121
+ const buildPromise = build({
122
+ config: fakeConfig
123
+ });
124
+ // generation awaits before spawn; let those microtasks settle
125
+ await vi.waitFor(()=>expect(spawnMock).toHaveBeenCalledTimes(1));
126
+ const [execPath, spawnArgs, opts] = spawnMock.mock.calls[0];
127
+ expect(execPath).toBe(process.execPath);
128
+ expect(spawnArgs[1]).toBe('build');
129
+ expect(spawnArgs).toContain('--turbopack');
130
+ expect(opts).toEqual({
131
+ stdio: 'inherit'
132
+ });
133
+ // Simulate the child exiting with a non-zero code
134
+ exitCb?.(2);
135
+ await buildPromise;
136
+ expect(exitMock).toHaveBeenCalledWith(2);
137
+ });
138
+ it('does not exit until the spawned child exits, then propagates its code', async ()=>{
139
+ let exitCb;
140
+ spawnMock.mockReturnValueOnce({
141
+ on (event, cb) {
142
+ if (event === 'exit') {
143
+ exitCb = cb;
144
+ }
145
+ return this;
146
+ }
147
+ });
148
+ let resolved = false;
149
+ const buildPromise = build({
150
+ config: fakeConfig
151
+ }).then(()=>{
152
+ resolved = true;
153
+ });
154
+ // Wait for generation to settle and the child to be spawned. build() must
155
+ // still be pending because the child has not exited yet.
156
+ await vi.waitFor(()=>expect(exitCb).toBeDefined());
157
+ // Flush all pending microtasks; the OLD (buggy) build() resolved here
158
+ // without awaiting the child, so this assertion catches the race.
159
+ await new Promise((r)=>setTimeout(r, 0));
160
+ expect(resolved).toBe(false);
161
+ expect(exitMock).not.toHaveBeenCalled();
162
+ // Child exits non-zero -> build() must exit with that exact code
163
+ exitCb?.(3);
164
+ await buildPromise;
165
+ expect(resolved).toBe(true);
166
+ expect(exitMock).toHaveBeenCalledWith(3);
167
+ });
168
+ });
169
+
170
+ //# sourceMappingURL=build.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/bin/build.spec.ts"],"sourcesContent":["import { describe, expect, it, vi, beforeEach, afterEach } from 'vitest'\n\n// Default fake child auto-fires `exit(0)` synchronously so ordering/generation\n// tests resolve. Specific tests override via `mockReturnValueOnce` to drive the\n// exit/error handlers manually.\nconst spawnMock = vi.fn(() => ({\n on(event: string, cb: (arg?: never) => void) {\n if (event === 'exit') {\n cb(0 as never)\n }\n return this\n },\n}))\nconst generateImportMapMock = vi.fn(async () => {})\nconst generateTypesMock = vi.fn(async () => {})\n\nvi.mock('node:child_process', () => ({ spawn: spawnMock }))\nvi.mock('./generateImportMap/index.js', () => ({ generateImportMap: generateImportMapMock }))\nvi.mock('./generateTypes.js', () => ({ generateTypes: generateTypesMock }))\n\n// Imported after mocks are registered\nconst { build, getForwardedArgs, resolveNextBin } = await import('./build.js')\n\nconst fakeConfig = {} as never\n\ndescribe('getForwardedArgs', () => {\n it('returns args after the build token and strips --no-types', () => {\n expect(getForwardedArgs(['build', '--turbopack', '--no-types', 'foo'])).toEqual([\n '--turbopack',\n 'foo',\n ])\n })\n\n it('returns empty array when only build is present', () => {\n expect(getForwardedArgs(['build'])).toEqual([])\n })\n})\n\ndescribe('resolveNextBin', () => {\n it('resolves next bin from the current project', () => {\n // next is installed at the repo root; resolving from cwd must succeed\n const binPath = resolveNextBin(process.cwd())\n expect(binPath).toMatch(/next[\\\\/].*bin[\\\\/]next$/)\n })\n\n it('throws a clear error when next cannot be resolved', () => {\n expect(() => resolveNextBin('/nonexistent-project-root')).toThrow(/next/i)\n })\n})\n\ndescribe('build', () => {\n let exitMock: ReturnType<typeof vi.spyOn>\n let originalArgv: string[]\n\n beforeEach(() => {\n spawnMock.mockClear()\n generateImportMapMock.mockClear()\n generateTypesMock.mockClear()\n originalArgv = process.argv\n process.argv = ['node', 'payload', 'build']\n exitMock = vi.spyOn(process, 'exit').mockImplementation((() => undefined) as never)\n })\n\n afterEach(() => {\n process.argv = originalArgv\n exitMock.mockRestore()\n })\n\n it('generates the import map before spawning, and generates types by default', async () => {\n await build({ config: fakeConfig })\n\n expect(generateImportMapMock).toHaveBeenCalledTimes(1)\n expect(generateTypesMock).toHaveBeenCalledTimes(1)\n expect(spawnMock).toHaveBeenCalledTimes(1)\n expect(generateImportMapMock.mock.invocationCallOrder[0]).toBeLessThan(\n spawnMock.mock.invocationCallOrder[0],\n )\n })\n\n it('skips type generation with --no-types', async () => {\n process.argv = ['node', 'payload', 'build', '--no-types']\n\n await build({ config: fakeConfig })\n\n expect(generateImportMapMock).toHaveBeenCalledTimes(1)\n expect(generateTypesMock).not.toHaveBeenCalled()\n expect(spawnMock).toHaveBeenCalledTimes(1)\n })\n\n it('exits 1 and does not spawn when generation fails', async () => {\n generateImportMapMock.mockRejectedValueOnce(new Error('boom'))\n\n await build({ config: fakeConfig })\n\n expect(exitMock).toHaveBeenCalledWith(1)\n expect(spawnMock).not.toHaveBeenCalled()\n })\n\n it('spawns next build with forwarded args and propagates the child exit code', async () => {\n process.argv = ['node', 'payload', 'build', '--turbopack']\n let exitCb: ((code: number | null) => void) | undefined\n spawnMock.mockReturnValueOnce({\n on(event: string, cb: (code: number | null) => void) {\n if (event === 'exit') {\n exitCb = cb\n }\n return this\n },\n })\n\n const buildPromise = build({ config: fakeConfig })\n\n // generation awaits before spawn; let those microtasks settle\n await vi.waitFor(() => expect(spawnMock).toHaveBeenCalledTimes(1))\n const [execPath, spawnArgs, opts] = spawnMock.mock.calls[0]\n expect(execPath).toBe(process.execPath)\n expect(spawnArgs[1]).toBe('build')\n expect(spawnArgs).toContain('--turbopack')\n expect(opts).toEqual({ stdio: 'inherit' })\n\n // Simulate the child exiting with a non-zero code\n exitCb?.(2)\n await buildPromise\n expect(exitMock).toHaveBeenCalledWith(2)\n })\n\n it('does not exit until the spawned child exits, then propagates its code', async () => {\n let exitCb: ((code: number | null) => void) | undefined\n spawnMock.mockReturnValueOnce({\n on(event: string, cb: (code: number | null) => void) {\n if (event === 'exit') {\n exitCb = cb\n }\n return this\n },\n })\n\n let resolved = false\n const buildPromise = build({ config: fakeConfig }).then(() => {\n resolved = true\n })\n\n // Wait for generation to settle and the child to be spawned. build() must\n // still be pending because the child has not exited yet.\n await vi.waitFor(() => expect(exitCb).toBeDefined())\n // Flush all pending microtasks; the OLD (buggy) build() resolved here\n // without awaiting the child, so this assertion catches the race.\n await new Promise((r) => setTimeout(r, 0))\n expect(resolved).toBe(false)\n expect(exitMock).not.toHaveBeenCalled()\n\n // Child exits non-zero -> build() must exit with that exact code\n exitCb?.(3)\n await buildPromise\n expect(resolved).toBe(true)\n expect(exitMock).toHaveBeenCalledWith(3)\n })\n})\n"],"names":["describe","expect","it","vi","beforeEach","afterEach","spawnMock","fn","on","event","cb","generateImportMapMock","generateTypesMock","mock","spawn","generateImportMap","generateTypes","build","getForwardedArgs","resolveNextBin","fakeConfig","toEqual","binPath","process","cwd","toMatch","toThrow","exitMock","originalArgv","mockClear","argv","spyOn","mockImplementation","undefined","mockRestore","config","toHaveBeenCalledTimes","invocationCallOrder","toBeLessThan","not","toHaveBeenCalled","mockRejectedValueOnce","Error","toHaveBeenCalledWith","exitCb","mockReturnValueOnce","buildPromise","waitFor","execPath","spawnArgs","opts","calls","toBe","toContain","stdio","resolved","then","toBeDefined","Promise","r","setTimeout"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,EAAEC,EAAE,EAAEC,UAAU,EAAEC,SAAS,QAAQ,SAAQ;AAExE,+EAA+E;AAC/E,gFAAgF;AAChF,gCAAgC;AAChC,MAAMC,YAAYH,GAAGI,EAAE,CAAC,IAAO,CAAA;QAC7BC,IAAGC,KAAa,EAAEC,EAAyB;YACzC,IAAID,UAAU,QAAQ;gBACpBC,GAAG;YACL;YACA,OAAO,IAAI;QACb;IACF,CAAA;AACA,MAAMC,wBAAwBR,GAAGI,EAAE,CAAC,WAAa;AACjD,MAAMK,oBAAoBT,GAAGI,EAAE,CAAC,WAAa;AAE7CJ,GAAGU,IAAI,CAAC,sBAAsB,IAAO,CAAA;QAAEC,OAAOR;IAAU,CAAA;AACxDH,GAAGU,IAAI,CAAC,gCAAgC,IAAO,CAAA;QAAEE,mBAAmBJ;IAAsB,CAAA;AAC1FR,GAAGU,IAAI,CAAC,sBAAsB,IAAO,CAAA;QAAEG,eAAeJ;IAAkB,CAAA;AAExE,sCAAsC;AACtC,MAAM,EAAEK,KAAK,EAAEC,gBAAgB,EAAEC,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC;AAEjE,MAAMC,aAAa,CAAC;AAEpBpB,SAAS,oBAAoB;IAC3BE,GAAG,4DAA4D;QAC7DD,OAAOiB,iBAAiB;YAAC;YAAS;YAAe;YAAc;SAAM,GAAGG,OAAO,CAAC;YAC9E;YACA;SACD;IACH;IAEAnB,GAAG,kDAAkD;QACnDD,OAAOiB,iBAAiB;YAAC;SAAQ,GAAGG,OAAO,CAAC,EAAE;IAChD;AACF;AAEArB,SAAS,kBAAkB;IACzBE,GAAG,8CAA8C;QAC/C,sEAAsE;QACtE,MAAMoB,UAAUH,eAAeI,QAAQC,GAAG;QAC1CvB,OAAOqB,SAASG,OAAO,CAAC;IAC1B;IAEAvB,GAAG,qDAAqD;QACtDD,OAAO,IAAMkB,eAAe,8BAA8BO,OAAO,CAAC;IACpE;AACF;AAEA1B,SAAS,SAAS;IAChB,IAAI2B;IACJ,IAAIC;IAEJxB,WAAW;QACTE,UAAUuB,SAAS;QACnBlB,sBAAsBkB,SAAS;QAC/BjB,kBAAkBiB,SAAS;QAC3BD,eAAeL,QAAQO,IAAI;QAC3BP,QAAQO,IAAI,GAAG;YAAC;YAAQ;YAAW;SAAQ;QAC3CH,WAAWxB,GAAG4B,KAAK,CAACR,SAAS,QAAQS,kBAAkB,CAAE,IAAMC;IACjE;IAEA5B,UAAU;QACRkB,QAAQO,IAAI,GAAGF;QACfD,SAASO,WAAW;IACtB;IAEAhC,GAAG,4EAA4E;QAC7E,MAAMe,MAAM;YAAEkB,QAAQf;QAAW;QAEjCnB,OAAOU,uBAAuByB,qBAAqB,CAAC;QACpDnC,OAAOW,mBAAmBwB,qBAAqB,CAAC;QAChDnC,OAAOK,WAAW8B,qBAAqB,CAAC;QACxCnC,OAAOU,sBAAsBE,IAAI,CAACwB,mBAAmB,CAAC,EAAE,EAAEC,YAAY,CACpEhC,UAAUO,IAAI,CAACwB,mBAAmB,CAAC,EAAE;IAEzC;IAEAnC,GAAG,yCAAyC;QAC1CqB,QAAQO,IAAI,GAAG;YAAC;YAAQ;YAAW;YAAS;SAAa;QAEzD,MAAMb,MAAM;YAAEkB,QAAQf;QAAW;QAEjCnB,OAAOU,uBAAuByB,qBAAqB,CAAC;QACpDnC,OAAOW,mBAAmB2B,GAAG,CAACC,gBAAgB;QAC9CvC,OAAOK,WAAW8B,qBAAqB,CAAC;IAC1C;IAEAlC,GAAG,oDAAoD;QACrDS,sBAAsB8B,qBAAqB,CAAC,IAAIC,MAAM;QAEtD,MAAMzB,MAAM;YAAEkB,QAAQf;QAAW;QAEjCnB,OAAO0B,UAAUgB,oBAAoB,CAAC;QACtC1C,OAAOK,WAAWiC,GAAG,CAACC,gBAAgB;IACxC;IAEAtC,GAAG,4EAA4E;QAC7EqB,QAAQO,IAAI,GAAG;YAAC;YAAQ;YAAW;YAAS;SAAc;QAC1D,IAAIc;QACJtC,UAAUuC,mBAAmB,CAAC;YAC5BrC,IAAGC,KAAa,EAAEC,EAAiC;gBACjD,IAAID,UAAU,QAAQ;oBACpBmC,SAASlC;gBACX;gBACA,OAAO,IAAI;YACb;QACF;QAEA,MAAMoC,eAAe7B,MAAM;YAAEkB,QAAQf;QAAW;QAEhD,8DAA8D;QAC9D,MAAMjB,GAAG4C,OAAO,CAAC,IAAM9C,OAAOK,WAAW8B,qBAAqB,CAAC;QAC/D,MAAM,CAACY,UAAUC,WAAWC,KAAK,GAAG5C,UAAUO,IAAI,CAACsC,KAAK,CAAC,EAAE;QAC3DlD,OAAO+C,UAAUI,IAAI,CAAC7B,QAAQyB,QAAQ;QACtC/C,OAAOgD,SAAS,CAAC,EAAE,EAAEG,IAAI,CAAC;QAC1BnD,OAAOgD,WAAWI,SAAS,CAAC;QAC5BpD,OAAOiD,MAAM7B,OAAO,CAAC;YAAEiC,OAAO;QAAU;QAExC,kDAAkD;QAClDV,SAAS;QACT,MAAME;QACN7C,OAAO0B,UAAUgB,oBAAoB,CAAC;IACxC;IAEAzC,GAAG,yEAAyE;QAC1E,IAAI0C;QACJtC,UAAUuC,mBAAmB,CAAC;YAC5BrC,IAAGC,KAAa,EAAEC,EAAiC;gBACjD,IAAID,UAAU,QAAQ;oBACpBmC,SAASlC;gBACX;gBACA,OAAO,IAAI;YACb;QACF;QAEA,IAAI6C,WAAW;QACf,MAAMT,eAAe7B,MAAM;YAAEkB,QAAQf;QAAW,GAAGoC,IAAI,CAAC;YACtDD,WAAW;QACb;QAEA,0EAA0E;QAC1E,yDAAyD;QACzD,MAAMpD,GAAG4C,OAAO,CAAC,IAAM9C,OAAO2C,QAAQa,WAAW;QACjD,sEAAsE;QACtE,kEAAkE;QAClE,MAAM,IAAIC,QAAQ,CAACC,IAAMC,WAAWD,GAAG;QACvC1D,OAAOsD,UAAUH,IAAI,CAAC;QACtBnD,OAAO0B,UAAUY,GAAG,CAACC,gBAAgB;QAErC,iEAAiE;QACjEI,SAAS;QACT,MAAME;QACN7C,OAAOsD,UAAUH,IAAI,CAAC;QACtBnD,OAAO0B,UAAUgB,oBAAoB,CAAC;IACxC;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAO9E,KAAK,gBAAgB,GAAG,MAAM,CAAA;AAC9B,KAAK,eAAe,GAAG,MAAM,CAAA;AAC7B,KAAK,UAAU,GAAG,MAAM,CAAA;AACxB,KAAK,cAAc,GAAG,MAAM,CAAA;AAE5B;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAA;CACzC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,UAAU,EAAE,gBAAgB,GAAG;QAC9B,IAAI,EAAE,UAAU,CAAA;QAChB,SAAS,EAAE,eAAe,CAAA;KAC3B,CAAA;CACF,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,KAAK,IAAI,CAAA;AAE/F,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAA,CAAC;;;OAGb;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,GAAG,EAAE,OAAO,CAAA;CACb,GACA,OAAO,CAAC,IAAI,CAAC,CA8Ef;AAED,wBAAsB,cAAc,CAAC,EACnC,YAAY,EACZ,KAAK,EACL,SAAS,EACT,iBAAiB,EACjB,GAAG,GACJ,EAAE;IACD,YAAY,EAAE,iBAAiB,CAAA;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,MAAM,CAAA;IACzB,GAAG,CAAC,EAAE,OAAO,CAAA;CACd,iBAoCA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAQ9E,KAAK,gBAAgB,GAAG,MAAM,CAAA;AAC9B,KAAK,eAAe,GAAG,MAAM,CAAA;AAC7B,KAAK,UAAU,GAAG,MAAM,CAAA;AACxB,KAAK,cAAc,GAAG,MAAM,CAAA;AAE5B;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAA;CACzC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,UAAU,EAAE,gBAAgB,GAAG;QAC9B,IAAI,EAAE,UAAU,CAAA;QAChB,SAAS,EAAE,eAAe,CAAA;KAC3B,CAAA;CACF,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,KAAK,IAAI,CAAA;AAE/F,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAA,CAAC;;;OAGb;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,GAAG,EAAE,OAAO,CAAA;CACb,GACA,OAAO,CAAC,IAAI,CAAC,CA+Ef;AAED,wBAAsB,cAAc,CAAC,EACnC,YAAY,EACZ,KAAK,EACL,SAAS,EACT,iBAAiB,EACjB,GAAG,GACJ,EAAE;IACD,YAAY,EAAE,iBAAiB,CAAA;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,MAAM,CAAA;IACzB,GAAG,CAAC,EAAE,OAAO,CAAA;CACd,iBAqCA"}
@@ -1,13 +1,15 @@
1
- /* eslint-disable no-console */ import fs from 'fs/promises';
1
+ import fs from 'fs/promises';
2
2
  import process from 'node:process';
3
+ import { getLogger } from '../../utilities/logger.js';
3
4
  import { iterateConfig } from './iterateConfig.js';
4
5
  import { addPayloadComponentToImportMap } from './utilities/addPayloadComponentToImportMap.js';
5
6
  import { getImportMapToBaseDirPath } from './utilities/getImportMapToBaseDirPath.js';
6
7
  import { resolveImportMapFilePath } from './utilities/resolveImportMapFilePath.js';
7
8
  export async function generateImportMap(config, options) {
9
+ const logger = getLogger('payload', 'sync');
8
10
  const shouldLog = options?.log ?? true;
9
11
  if (shouldLog) {
10
- console.log('Generating import map');
12
+ logger.info('Generating import map');
11
13
  }
12
14
  const importMap = {};
13
15
  const imports = {};
@@ -35,7 +37,7 @@ export async function generateImportMap(config, options) {
35
37
  return;
36
38
  }
37
39
  if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {
38
- console.error(payloadComponent);
40
+ logger.error(payloadComponent);
39
41
  throw new Error('addToImportMap > Payload component must be an object or a string');
40
42
  }
41
43
  if (Array.isArray(payloadComponent)) {
@@ -72,6 +74,7 @@ export async function generateImportMap(config, options) {
72
74
  });
73
75
  }
74
76
  export async function writeImportMap({ componentMap, force, importMap, importMapFilePath, log }) {
77
+ const logger = getLogger('payload', 'sync');
75
78
  const imports = [];
76
79
  for (const [identifier, { path, specifier }] of Object.entries(importMap)){
77
80
  imports.push(`import { ${specifier} as ${identifier} } from '${path}'`);
@@ -92,13 +95,13 @@ ${mapKeys.join(',\n')}
92
95
  const currentImportMap = await fs.readFile(importMapFilePath, 'utf-8');
93
96
  if (currentImportMap?.trim() === importMapOutputFile?.trim()) {
94
97
  if (log) {
95
- console.log('No new imports found, skipping writing import map');
98
+ logger.info('No new imports found, skipping writing import map');
96
99
  }
97
100
  return;
98
101
  }
99
102
  }
100
103
  if (log) {
101
- console.log('Writing import map to', importMapFilePath);
104
+ logger.info(`Writing import map to ${importMapFilePath}`);
102
105
  }
103
106
  await fs.writeFile(importMapFilePath, importMapOutputFile);
104
107
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/index.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport fs from 'fs/promises'\nimport process from 'node:process'\n\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\n\nimport { iterateConfig } from './iterateConfig.js'\nimport { addPayloadComponentToImportMap } from './utilities/addPayloadComponentToImportMap.js'\nimport { getImportMapToBaseDirPath } from './utilities/getImportMapToBaseDirPath.js'\nimport { resolveImportMapFilePath } from './utilities/resolveImportMapFilePath.js'\n\ntype ImportIdentifier = string\ntype ImportSpecifier = string\ntype ImportPath = string\ntype UserImportPath = string\n\n/**\n * Import Map before being written to the file. Only contains all paths\n */\nexport type InternalImportMap = {\n [path: UserImportPath]: ImportIdentifier\n}\n\n/**\n * Imports of the import map.\n */\nexport type Imports = {\n [identifier: ImportIdentifier]: {\n path: ImportPath\n specifier: ImportSpecifier\n }\n}\n\n/**\n * Import Map after being imported from the actual import map. Contains all the actual imported components\n */\nexport type ImportMap = {\n [path: UserImportPath]: any\n}\n\nexport type AddToImportMap = (payloadComponent?: PayloadComponent | PayloadComponent[]) => void\n\nexport async function generateImportMap(\n config: SanitizedConfig,\n options?: {\n force?: boolean /**\n * If true, will not throw an error if the import map file path cannot be resolved\n Instead, it will return silently.\n */\n ignoreResolveError?: boolean\n log: boolean\n },\n): Promise<void> {\n const shouldLog = options?.log ?? true\n\n if (shouldLog) {\n console.log('Generating import map')\n }\n\n const importMap: InternalImportMap = {}\n const imports: Imports = {}\n\n // Determine the root directory of the project - usually the directory where the src or app folder is located\n const rootDir = process.env.ROOT_DIR ?? process.cwd()\n\n const baseDir = config.admin.importMap.baseDir ?? process.cwd()\n\n const importMapFilePath = await resolveImportMapFilePath({\n adminRoute: config.routes.admin,\n importMapFile: config?.admin?.importMap?.importMapFile,\n rootDir,\n })\n\n if (importMapFilePath instanceof Error) {\n if (options?.ignoreResolveError) {\n return\n } else {\n throw importMapFilePath\n }\n }\n\n const importMapToBaseDirPath = getImportMapToBaseDirPath({\n baseDir,\n importMapPath: importMapFilePath,\n })\n\n const addToImportMap: AddToImportMap = (payloadComponent) => {\n if (!payloadComponent) {\n return\n }\n\n if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {\n console.error(payloadComponent)\n throw new Error('addToImportMap > Payload component must be an object or a string')\n }\n\n if (Array.isArray(payloadComponent)) {\n for (const component of payloadComponent) {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent: component,\n })\n }\n } else {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent,\n })\n }\n }\n\n iterateConfig({\n addToImportMap,\n baseDir: config.admin.importMap.baseDir,\n config,\n importMap,\n imports,\n })\n\n await writeImportMap({\n componentMap: importMap,\n force: options?.force,\n importMap: imports,\n importMapFilePath,\n log: shouldLog,\n })\n}\n\nexport async function writeImportMap({\n componentMap,\n force,\n importMap,\n importMapFilePath,\n log,\n}: {\n componentMap: InternalImportMap\n force?: boolean\n importMap: Imports\n importMapFilePath: string\n log?: boolean\n}) {\n const imports: string[] = []\n for (const [identifier, { path, specifier }] of Object.entries(importMap)) {\n imports.push(`import { ${specifier} as ${identifier} } from '${path}'`)\n }\n\n const mapKeys: string[] = []\n for (const [userPath, identifier] of Object.entries(componentMap)) {\n mapKeys.push(` \"${userPath}\": ${identifier}`)\n }\n\n const importMapOutputFile = `${imports.join('\\n')}\n\n/** @type import('payload').ImportMap */\nexport const importMap = {\n${mapKeys.join(',\\n')}\n}\n`\n\n if (!force) {\n // Read current import map and check in the IMPORTS if there are any new imports. If not, don't write the file.\n const currentImportMap = await fs.readFile(importMapFilePath, 'utf-8')\n\n if (currentImportMap?.trim() === importMapOutputFile?.trim()) {\n if (log) {\n console.log('No new imports found, skipping writing import map')\n }\n return\n }\n }\n\n if (log) {\n console.log('Writing import map to', importMapFilePath)\n }\n\n await fs.writeFile(importMapFilePath, importMapOutputFile)\n}\n"],"names":["fs","process","iterateConfig","addPayloadComponentToImportMap","getImportMapToBaseDirPath","resolveImportMapFilePath","generateImportMap","config","options","shouldLog","log","console","importMap","imports","rootDir","env","ROOT_DIR","cwd","baseDir","admin","importMapFilePath","adminRoute","routes","importMapFile","Error","ignoreResolveError","importMapToBaseDirPath","importMapPath","addToImportMap","payloadComponent","error","Array","isArray","component","writeImportMap","componentMap","force","identifier","path","specifier","Object","entries","push","mapKeys","userPath","importMapOutputFile","join","currentImportMap","readFile","trim","writeFile"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/index.ts"],"sourcesContent":["import fs from 'fs/promises'\nimport process from 'node:process'\n\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\n\nimport { getLogger } from '../../utilities/logger.js'\nimport { iterateConfig } from './iterateConfig.js'\nimport { addPayloadComponentToImportMap } from './utilities/addPayloadComponentToImportMap.js'\nimport { getImportMapToBaseDirPath } from './utilities/getImportMapToBaseDirPath.js'\nimport { resolveImportMapFilePath } from './utilities/resolveImportMapFilePath.js'\n\ntype ImportIdentifier = string\ntype ImportSpecifier = string\ntype ImportPath = string\ntype UserImportPath = string\n\n/**\n * Import Map before being written to the file. Only contains all paths\n */\nexport type InternalImportMap = {\n [path: UserImportPath]: ImportIdentifier\n}\n\n/**\n * Imports of the import map.\n */\nexport type Imports = {\n [identifier: ImportIdentifier]: {\n path: ImportPath\n specifier: ImportSpecifier\n }\n}\n\n/**\n * Import Map after being imported from the actual import map. Contains all the actual imported components\n */\nexport type ImportMap = {\n [path: UserImportPath]: any\n}\n\nexport type AddToImportMap = (payloadComponent?: PayloadComponent | PayloadComponent[]) => void\n\nexport async function generateImportMap(\n config: SanitizedConfig,\n options?: {\n force?: boolean /**\n * If true, will not throw an error if the import map file path cannot be resolved\n Instead, it will return silently.\n */\n ignoreResolveError?: boolean\n log: boolean\n },\n): Promise<void> {\n const logger = getLogger('payload', 'sync')\n const shouldLog = options?.log ?? true\n\n if (shouldLog) {\n logger.info('Generating import map')\n }\n\n const importMap: InternalImportMap = {}\n const imports: Imports = {}\n\n // Determine the root directory of the project - usually the directory where the src or app folder is located\n const rootDir = process.env.ROOT_DIR ?? process.cwd()\n\n const baseDir = config.admin.importMap.baseDir ?? process.cwd()\n\n const importMapFilePath = await resolveImportMapFilePath({\n adminRoute: config.routes.admin,\n importMapFile: config?.admin?.importMap?.importMapFile,\n rootDir,\n })\n\n if (importMapFilePath instanceof Error) {\n if (options?.ignoreResolveError) {\n return\n } else {\n throw importMapFilePath\n }\n }\n\n const importMapToBaseDirPath = getImportMapToBaseDirPath({\n baseDir,\n importMapPath: importMapFilePath,\n })\n\n const addToImportMap: AddToImportMap = (payloadComponent) => {\n if (!payloadComponent) {\n return\n }\n\n if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {\n logger.error(payloadComponent)\n throw new Error('addToImportMap > Payload component must be an object or a string')\n }\n\n if (Array.isArray(payloadComponent)) {\n for (const component of payloadComponent) {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent: component,\n })\n }\n } else {\n addPayloadComponentToImportMap({\n importMap,\n importMapToBaseDirPath,\n imports,\n payloadComponent,\n })\n }\n }\n\n iterateConfig({\n addToImportMap,\n baseDir: config.admin.importMap.baseDir,\n config,\n importMap,\n imports,\n })\n\n await writeImportMap({\n componentMap: importMap,\n force: options?.force,\n importMap: imports,\n importMapFilePath,\n log: shouldLog,\n })\n}\n\nexport async function writeImportMap({\n componentMap,\n force,\n importMap,\n importMapFilePath,\n log,\n}: {\n componentMap: InternalImportMap\n force?: boolean\n importMap: Imports\n importMapFilePath: string\n log?: boolean\n}) {\n const logger = getLogger('payload', 'sync')\n const imports: string[] = []\n for (const [identifier, { path, specifier }] of Object.entries(importMap)) {\n imports.push(`import { ${specifier} as ${identifier} } from '${path}'`)\n }\n\n const mapKeys: string[] = []\n for (const [userPath, identifier] of Object.entries(componentMap)) {\n mapKeys.push(` \"${userPath}\": ${identifier}`)\n }\n\n const importMapOutputFile = `${imports.join('\\n')}\n\n/** @type import('payload').ImportMap */\nexport const importMap = {\n${mapKeys.join(',\\n')}\n}\n`\n\n if (!force) {\n // Read current import map and check in the IMPORTS if there are any new imports. If not, don't write the file.\n const currentImportMap = await fs.readFile(importMapFilePath, 'utf-8')\n\n if (currentImportMap?.trim() === importMapOutputFile?.trim()) {\n if (log) {\n logger.info('No new imports found, skipping writing import map')\n }\n return\n }\n }\n\n if (log) {\n logger.info(`Writing import map to ${importMapFilePath}`)\n }\n\n await fs.writeFile(importMapFilePath, importMapOutputFile)\n}\n"],"names":["fs","process","getLogger","iterateConfig","addPayloadComponentToImportMap","getImportMapToBaseDirPath","resolveImportMapFilePath","generateImportMap","config","options","logger","shouldLog","log","info","importMap","imports","rootDir","env","ROOT_DIR","cwd","baseDir","admin","importMapFilePath","adminRoute","routes","importMapFile","Error","ignoreResolveError","importMapToBaseDirPath","importMapPath","addToImportMap","payloadComponent","error","Array","isArray","component","writeImportMap","componentMap","force","identifier","path","specifier","Object","entries","push","mapKeys","userPath","importMapOutputFile","join","currentImportMap","readFile","trim","writeFile"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"iterateCollections.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAI5E,wBAAgB,kBAAkB,CAAC,EACjC,cAAc,EACd,OAAO,EACP,WAAW,EACX,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAgEA"}
1
+ {"version":3,"file":"iterateCollections.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAI5E,wBAAgB,kBAAkB,CAAC,EACjC,cAAc,EACd,OAAO,EACP,WAAW,EACX,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAiEA"}
@@ -16,6 +16,7 @@ export function iterateCollections({ addToImportMap, baseDir, collections, confi
16
16
  addToImportMap(collection.admin?.components?.beforeListTable);
17
17
  addToImportMap(collection.admin?.components?.Description);
18
18
  addToImportMap(collection.admin?.components?.edit?.beforeDocumentControls);
19
+ addToImportMap(collection.admin?.components?.edit?.BeforeDocumentMeta);
19
20
  addToImportMap(collection.admin?.components?.edit?.editMenuItems);
20
21
  addToImportMap(collection.admin?.components?.edit?.PreviewButton);
21
22
  addToImportMap(collection.admin?.components?.edit?.PublishButton);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"sourcesContent":["import type { AdminViewConfig } from '../../admin/views/index.js'\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { genImportMapIterateFields } from './iterateFields.js'\n\nexport function iterateCollections({\n addToImportMap,\n baseDir,\n collections,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n for (const collection of collections) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: collection.fields,\n importMap,\n imports,\n })\n\n addToImportMap(collection.admin?.components?.afterList)\n addToImportMap(collection.admin?.components?.listMenuItems)\n addToImportMap(collection.admin?.components?.afterListTable)\n addToImportMap(collection.admin?.components?.beforeList)\n addToImportMap(collection.admin?.components?.beforeListTable)\n addToImportMap(collection.admin?.components?.Description)\n\n addToImportMap(collection.admin?.components?.edit?.beforeDocumentControls)\n addToImportMap(collection.admin?.components?.edit?.editMenuItems)\n addToImportMap(collection.admin?.components?.edit?.PreviewButton)\n addToImportMap(collection.admin?.components?.edit?.PublishButton)\n addToImportMap(collection.admin?.components?.edit?.SaveButton)\n addToImportMap(collection.admin?.components?.edit?.SaveDraftButton)\n addToImportMap(collection.admin?.components?.edit?.Status)\n addToImportMap(collection.admin?.components?.edit?.UnpublishButton)\n addToImportMap(collection.admin?.components?.edit?.Upload)\n\n if (collection.upload?.admin?.components?.controls) {\n addToImportMap(collection.upload?.admin?.components?.controls)\n }\n\n if (collection.admin?.components?.views?.edit) {\n for (const editViewConfig of Object.values(collection.admin?.components?.views?.edit)) {\n if ('Component' in editViewConfig) {\n addToImportMap(editViewConfig?.Component)\n }\n\n if ('actions' in editViewConfig) {\n addToImportMap(editViewConfig?.actions)\n }\n\n if ('tab' in editViewConfig) {\n addToImportMap(editViewConfig?.tab?.Component)\n addToImportMap(editViewConfig?.tab?.Pill)\n }\n }\n }\n\n addToImportMap(collection.admin?.components?.views?.list?.Component)\n addToImportMap(collection.admin?.components?.views?.list?.actions)\n\n // Register custom collection view components (any key other than 'edit' and 'list')\n if (collection.admin?.components?.views) {\n for (const [key, view] of Object.entries(collection.admin.components.views)) {\n if (key === 'edit' || key === 'list') {\n continue\n }\n if (view && typeof view === 'object' && 'Component' in view && 'path' in view) {\n addToImportMap((view as AdminViewConfig).Component)\n }\n }\n }\n }\n}\n"],"names":["genImportMapIterateFields","iterateCollections","addToImportMap","baseDir","collections","config","importMap","imports","collection","fields","admin","components","afterList","listMenuItems","afterListTable","beforeList","beforeListTable","Description","edit","beforeDocumentControls","editMenuItems","PreviewButton","PublishButton","SaveButton","SaveDraftButton","Status","UnpublishButton","Upload","upload","controls","views","editViewConfig","Object","values","Component","actions","tab","Pill","list","key","view","entries"],"mappings":"AAKA,SAASA,yBAAyB,QAAQ,qBAAoB;AAE9D,OAAO,SAASC,mBAAmB,EACjCC,cAAc,EACdC,OAAO,EACPC,WAAW,EACXC,MAAM,EACNC,SAAS,EACTC,OAAO,EAQR;IACC,KAAK,MAAMC,cAAcJ,YAAa;QACpCJ,0BAA0B;YACxBE;YACAC;YACAE;YACAI,QAAQD,WAAWC,MAAM;YACzBH;YACAC;QACF;QAEAL,eAAeM,WAAWE,KAAK,EAAEC,YAAYC;QAC7CV,eAAeM,WAAWE,KAAK,EAAEC,YAAYE;QAC7CX,eAAeM,WAAWE,KAAK,EAAEC,YAAYG;QAC7CZ,eAAeM,WAAWE,KAAK,EAAEC,YAAYI;QAC7Cb,eAAeM,WAAWE,KAAK,EAAEC,YAAYK;QAC7Cd,eAAeM,WAAWE,KAAK,EAAEC,YAAYM;QAE7Cf,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMC;QACnDjB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAME;QACnDlB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMG;QACnDnB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMI;QACnDpB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMK;QACnDrB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMM;QACnDtB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMO;QACnDvB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMQ;QACnDxB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMS;QAEnD,IAAInB,WAAWoB,MAAM,EAAElB,OAAOC,YAAYkB,UAAU;YAClD3B,eAAeM,WAAWoB,MAAM,EAAElB,OAAOC,YAAYkB;QACvD;QAEA,IAAIrB,WAAWE,KAAK,EAAEC,YAAYmB,OAAOZ,MAAM;YAC7C,KAAK,MAAMa,kBAAkBC,OAAOC,MAAM,CAACzB,WAAWE,KAAK,EAAEC,YAAYmB,OAAOZ,MAAO;gBACrF,IAAI,eAAea,gBAAgB;oBACjC7B,eAAe6B,gBAAgBG;gBACjC;gBAEA,IAAI,aAAaH,gBAAgB;oBAC/B7B,eAAe6B,gBAAgBI;gBACjC;gBAEA,IAAI,SAASJ,gBAAgB;oBAC3B7B,eAAe6B,gBAAgBK,KAAKF;oBACpChC,eAAe6B,gBAAgBK,KAAKC;gBACtC;YACF;QACF;QAEAnC,eAAeM,WAAWE,KAAK,EAAEC,YAAYmB,OAAOQ,MAAMJ;QAC1DhC,eAAeM,WAAWE,KAAK,EAAEC,YAAYmB,OAAOQ,MAAMH;QAE1D,oFAAoF;QACpF,IAAI3B,WAAWE,KAAK,EAAEC,YAAYmB,OAAO;YACvC,KAAK,MAAM,CAACS,KAAKC,KAAK,IAAIR,OAAOS,OAAO,CAACjC,WAAWE,KAAK,CAACC,UAAU,CAACmB,KAAK,EAAG;gBAC3E,IAAIS,QAAQ,UAAUA,QAAQ,QAAQ;oBACpC;gBACF;gBACA,IAAIC,QAAQ,OAAOA,SAAS,YAAY,eAAeA,QAAQ,UAAUA,MAAM;oBAC7EtC,eAAe,AAACsC,KAAyBN,SAAS;gBACpD;YACF;QACF;IACF;AACF"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/iterateCollections.ts"],"sourcesContent":["import type { AdminViewConfig } from '../../admin/views/index.js'\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { genImportMapIterateFields } from './iterateFields.js'\n\nexport function iterateCollections({\n addToImportMap,\n baseDir,\n collections,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n for (const collection of collections) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: collection.fields,\n importMap,\n imports,\n })\n\n addToImportMap(collection.admin?.components?.afterList)\n addToImportMap(collection.admin?.components?.listMenuItems)\n addToImportMap(collection.admin?.components?.afterListTable)\n addToImportMap(collection.admin?.components?.beforeList)\n addToImportMap(collection.admin?.components?.beforeListTable)\n addToImportMap(collection.admin?.components?.Description)\n\n addToImportMap(collection.admin?.components?.edit?.beforeDocumentControls)\n addToImportMap(collection.admin?.components?.edit?.BeforeDocumentMeta)\n addToImportMap(collection.admin?.components?.edit?.editMenuItems)\n addToImportMap(collection.admin?.components?.edit?.PreviewButton)\n addToImportMap(collection.admin?.components?.edit?.PublishButton)\n addToImportMap(collection.admin?.components?.edit?.SaveButton)\n addToImportMap(collection.admin?.components?.edit?.SaveDraftButton)\n addToImportMap(collection.admin?.components?.edit?.Status)\n addToImportMap(collection.admin?.components?.edit?.UnpublishButton)\n addToImportMap(collection.admin?.components?.edit?.Upload)\n\n if (collection.upload?.admin?.components?.controls) {\n addToImportMap(collection.upload?.admin?.components?.controls)\n }\n\n if (collection.admin?.components?.views?.edit) {\n for (const editViewConfig of Object.values(collection.admin?.components?.views?.edit)) {\n if ('Component' in editViewConfig) {\n addToImportMap(editViewConfig?.Component)\n }\n\n if ('actions' in editViewConfig) {\n addToImportMap(editViewConfig?.actions)\n }\n\n if ('tab' in editViewConfig) {\n addToImportMap(editViewConfig?.tab?.Component)\n addToImportMap(editViewConfig?.tab?.Pill)\n }\n }\n }\n\n addToImportMap(collection.admin?.components?.views?.list?.Component)\n addToImportMap(collection.admin?.components?.views?.list?.actions)\n\n // Register custom collection view components (any key other than 'edit' and 'list')\n if (collection.admin?.components?.views) {\n for (const [key, view] of Object.entries(collection.admin.components.views)) {\n if (key === 'edit' || key === 'list') {\n continue\n }\n if (view && typeof view === 'object' && 'Component' in view && 'path' in view) {\n addToImportMap((view as AdminViewConfig).Component)\n }\n }\n }\n }\n}\n"],"names":["genImportMapIterateFields","iterateCollections","addToImportMap","baseDir","collections","config","importMap","imports","collection","fields","admin","components","afterList","listMenuItems","afterListTable","beforeList","beforeListTable","Description","edit","beforeDocumentControls","BeforeDocumentMeta","editMenuItems","PreviewButton","PublishButton","SaveButton","SaveDraftButton","Status","UnpublishButton","Upload","upload","controls","views","editViewConfig","Object","values","Component","actions","tab","Pill","list","key","view","entries"],"mappings":"AAKA,SAASA,yBAAyB,QAAQ,qBAAoB;AAE9D,OAAO,SAASC,mBAAmB,EACjCC,cAAc,EACdC,OAAO,EACPC,WAAW,EACXC,MAAM,EACNC,SAAS,EACTC,OAAO,EAQR;IACC,KAAK,MAAMC,cAAcJ,YAAa;QACpCJ,0BAA0B;YACxBE;YACAC;YACAE;YACAI,QAAQD,WAAWC,MAAM;YACzBH;YACAC;QACF;QAEAL,eAAeM,WAAWE,KAAK,EAAEC,YAAYC;QAC7CV,eAAeM,WAAWE,KAAK,EAAEC,YAAYE;QAC7CX,eAAeM,WAAWE,KAAK,EAAEC,YAAYG;QAC7CZ,eAAeM,WAAWE,KAAK,EAAEC,YAAYI;QAC7Cb,eAAeM,WAAWE,KAAK,EAAEC,YAAYK;QAC7Cd,eAAeM,WAAWE,KAAK,EAAEC,YAAYM;QAE7Cf,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMC;QACnDjB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAME;QACnDlB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMG;QACnDnB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMI;QACnDpB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMK;QACnDrB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMM;QACnDtB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMO;QACnDvB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMQ;QACnDxB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMS;QACnDzB,eAAeM,WAAWE,KAAK,EAAEC,YAAYO,MAAMU;QAEnD,IAAIpB,WAAWqB,MAAM,EAAEnB,OAAOC,YAAYmB,UAAU;YAClD5B,eAAeM,WAAWqB,MAAM,EAAEnB,OAAOC,YAAYmB;QACvD;QAEA,IAAItB,WAAWE,KAAK,EAAEC,YAAYoB,OAAOb,MAAM;YAC7C,KAAK,MAAMc,kBAAkBC,OAAOC,MAAM,CAAC1B,WAAWE,KAAK,EAAEC,YAAYoB,OAAOb,MAAO;gBACrF,IAAI,eAAec,gBAAgB;oBACjC9B,eAAe8B,gBAAgBG;gBACjC;gBAEA,IAAI,aAAaH,gBAAgB;oBAC/B9B,eAAe8B,gBAAgBI;gBACjC;gBAEA,IAAI,SAASJ,gBAAgB;oBAC3B9B,eAAe8B,gBAAgBK,KAAKF;oBACpCjC,eAAe8B,gBAAgBK,KAAKC;gBACtC;YACF;QACF;QAEApC,eAAeM,WAAWE,KAAK,EAAEC,YAAYoB,OAAOQ,MAAMJ;QAC1DjC,eAAeM,WAAWE,KAAK,EAAEC,YAAYoB,OAAOQ,MAAMH;QAE1D,oFAAoF;QACpF,IAAI5B,WAAWE,KAAK,EAAEC,YAAYoB,OAAO;YACvC,KAAK,MAAM,CAACS,KAAKC,KAAK,IAAIR,OAAOS,OAAO,CAAClC,WAAWE,KAAK,CAACC,UAAU,CAACoB,KAAK,EAAG;gBAC3E,IAAIS,QAAQ,UAAUA,QAAQ,QAAQ;oBACpC;gBACF;gBACA,IAAIC,QAAQ,OAAOA,SAAS,YAAY,eAAeA,QAAQ,UAAUA,MAAM;oBAC7EvC,eAAe,AAACuC,KAAyBN,SAAS;gBACpD;YACF;QACF;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"iterateConfig.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAM5E,wBAAgB,aAAa,CAAC,EAC5B,cAAc,EACd,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAkHA"}
1
+ {"version":3,"file":"iterateConfig.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAM5E,wBAAgB,aAAa,CAAC,EAC5B,cAAc,EACd,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QA0HA"}
@@ -50,6 +50,13 @@ export function iterateConfig({ addToImportMap, baseDir, config, importMap, impo
50
50
  addToImportMap(config.admin?.components?.beforeNav);
51
51
  addToImportMap(config.admin?.components?.beforeNavLinks);
52
52
  addToImportMap(config.admin?.components?.providers);
53
+ // Sidebar tabs
54
+ if (config.admin?.components?.sidebar?.tabs?.length) {
55
+ for (const tab of config.admin.components.sidebar.tabs){
56
+ addToImportMap(tab.components.Icon);
57
+ addToImportMap(tab.components.Content);
58
+ }
59
+ }
53
60
  if (config.admin?.components?.views) {
54
61
  if (Object.keys(config.admin?.components?.views)?.length) {
55
62
  for(const key in config.admin?.components?.views){
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"sourcesContent":["import type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { iterateCollections } from './iterateCollections.js'\nimport { genImportMapIterateFields } from './iterateFields.js'\nimport { iterateGlobals } from './iterateGlobals.js'\n\nexport function iterateConfig({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n iterateCollections({\n addToImportMap,\n baseDir,\n collections: config.collections,\n config,\n importMap,\n imports,\n })\n\n iterateGlobals({\n addToImportMap,\n baseDir,\n config,\n globals: config.globals,\n importMap,\n imports,\n })\n\n if (config?.blocks) {\n const blocks = Object.values(config.blocks)\n if (blocks?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: blocks,\n importMap,\n imports,\n })\n }\n }\n\n if (typeof config.admin?.avatar === 'object') {\n addToImportMap(config.admin?.avatar?.Component)\n }\n\n addToImportMap(config.admin?.components?.Nav)\n addToImportMap(config.admin?.components?.header)\n addToImportMap(config.admin?.components?.logout?.Button)\n addToImportMap(config.admin?.components?.settingsMenu)\n addToImportMap(config.admin?.components?.graphics?.Icon)\n addToImportMap(config.admin?.components?.graphics?.Logo)\n\n addToImportMap(config.admin?.components?.actions)\n addToImportMap(config.admin?.components?.afterDashboard)\n addToImportMap(config.admin?.components?.afterLogin)\n addToImportMap(config.admin?.components?.afterNav)\n addToImportMap(config.admin?.components?.afterNavLinks)\n addToImportMap(config.admin?.components?.beforeDashboard)\n addToImportMap(config.admin?.components?.beforeLogin)\n addToImportMap(config.admin?.components?.beforeNav)\n addToImportMap(config.admin?.components?.beforeNavLinks)\n\n addToImportMap(config.admin?.components?.providers)\n\n if (config.admin?.components?.views) {\n if (Object.keys(config.admin?.components?.views)?.length) {\n for (const key in config.admin?.components?.views) {\n const adminViewConfig = config.admin?.components?.views[key]\n addToImportMap(adminViewConfig?.Component)\n }\n }\n }\n\n if (config.admin?.dashboard?.widgets?.length) {\n for (const dashboardWidget of config.admin.dashboard.widgets) {\n addToImportMap(dashboardWidget.Component)\n if (dashboardWidget.fields?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: dashboardWidget.fields,\n importMap,\n imports,\n })\n }\n }\n }\n\n if (config?.admin?.importMap?.generators?.length) {\n for (const generator of config.admin.importMap.generators) {\n generator({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n })\n }\n }\n\n if (config?.admin?.dependencies) {\n for (const dependency of Object.values(config.admin.dependencies)) {\n addToImportMap(dependency.path)\n }\n }\n\n /*\n if (\n config?.editor &&\n typeof config.editor === 'object' &&\n config.editor.generateImportMap &&\n typeof config.editor.generateImportMap === 'function'\n ) {\n config.editor.generateImportMap({\n addToImportMap,\n baseDir,\n componentMap,\n config,\n importMap,\n })\n }*/ // No need to do that here since in the sanitized editor config, this root editor is already added to the field editor - and we already process that in iterateFields\n}\n"],"names":["iterateCollections","genImportMapIterateFields","iterateGlobals","iterateConfig","addToImportMap","baseDir","config","importMap","imports","collections","globals","blocks","Object","values","length","fields","admin","avatar","Component","components","Nav","header","logout","Button","settingsMenu","graphics","Icon","Logo","actions","afterDashboard","afterLogin","afterNav","afterNavLinks","beforeDashboard","beforeLogin","beforeNav","beforeNavLinks","providers","views","keys","key","adminViewConfig","dashboard","widgets","dashboardWidget","generators","generator","dependencies","dependency","path"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/iterateConfig.ts"],"sourcesContent":["import type { SanitizedConfig } from '../../config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nimport { iterateCollections } from './iterateCollections.js'\nimport { genImportMapIterateFields } from './iterateFields.js'\nimport { iterateGlobals } from './iterateGlobals.js'\n\nexport function iterateConfig({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n config: SanitizedConfig\n importMap: InternalImportMap\n imports: Imports\n}) {\n iterateCollections({\n addToImportMap,\n baseDir,\n collections: config.collections,\n config,\n importMap,\n imports,\n })\n\n iterateGlobals({\n addToImportMap,\n baseDir,\n config,\n globals: config.globals,\n importMap,\n imports,\n })\n\n if (config?.blocks) {\n const blocks = Object.values(config.blocks)\n if (blocks?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: blocks,\n importMap,\n imports,\n })\n }\n }\n\n if (typeof config.admin?.avatar === 'object') {\n addToImportMap(config.admin?.avatar?.Component)\n }\n\n addToImportMap(config.admin?.components?.Nav)\n addToImportMap(config.admin?.components?.header)\n addToImportMap(config.admin?.components?.logout?.Button)\n addToImportMap(config.admin?.components?.settingsMenu)\n addToImportMap(config.admin?.components?.graphics?.Icon)\n addToImportMap(config.admin?.components?.graphics?.Logo)\n\n addToImportMap(config.admin?.components?.actions)\n addToImportMap(config.admin?.components?.afterDashboard)\n addToImportMap(config.admin?.components?.afterLogin)\n addToImportMap(config.admin?.components?.afterNav)\n addToImportMap(config.admin?.components?.afterNavLinks)\n addToImportMap(config.admin?.components?.beforeDashboard)\n addToImportMap(config.admin?.components?.beforeLogin)\n addToImportMap(config.admin?.components?.beforeNav)\n addToImportMap(config.admin?.components?.beforeNavLinks)\n\n addToImportMap(config.admin?.components?.providers)\n\n // Sidebar tabs\n if (config.admin?.components?.sidebar?.tabs?.length) {\n for (const tab of config.admin.components.sidebar.tabs) {\n addToImportMap(tab.components.Icon)\n addToImportMap(tab.components.Content)\n }\n }\n\n if (config.admin?.components?.views) {\n if (Object.keys(config.admin?.components?.views)?.length) {\n for (const key in config.admin?.components?.views) {\n const adminViewConfig = config.admin?.components?.views[key]\n addToImportMap(adminViewConfig?.Component)\n }\n }\n }\n\n if (config.admin?.dashboard?.widgets?.length) {\n for (const dashboardWidget of config.admin.dashboard.widgets) {\n addToImportMap(dashboardWidget.Component)\n if (dashboardWidget.fields?.length) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: dashboardWidget.fields,\n importMap,\n imports,\n })\n }\n }\n }\n\n if (config?.admin?.importMap?.generators?.length) {\n for (const generator of config.admin.importMap.generators) {\n generator({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n })\n }\n }\n\n if (config?.admin?.dependencies) {\n for (const dependency of Object.values(config.admin.dependencies)) {\n addToImportMap(dependency.path)\n }\n }\n\n /*\n if (\n config?.editor &&\n typeof config.editor === 'object' &&\n config.editor.generateImportMap &&\n typeof config.editor.generateImportMap === 'function'\n ) {\n config.editor.generateImportMap({\n addToImportMap,\n baseDir,\n componentMap,\n config,\n importMap,\n })\n }*/ // No need to do that here since in the sanitized editor config, this root editor is already added to the field editor - and we already process that in iterateFields\n}\n"],"names":["iterateCollections","genImportMapIterateFields","iterateGlobals","iterateConfig","addToImportMap","baseDir","config","importMap","imports","collections","globals","blocks","Object","values","length","fields","admin","avatar","Component","components","Nav","header","logout","Button","settingsMenu","graphics","Icon","Logo","actions","afterDashboard","afterLogin","afterNav","afterNavLinks","beforeDashboard","beforeLogin","beforeNav","beforeNavLinks","providers","sidebar","tabs","tab","Content","views","keys","key","adminViewConfig","dashboard","widgets","dashboardWidget","generators","generator","dependencies","dependency","path"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"iterateFields.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateFields.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAoB,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAe5E,wBAAgB,yBAAyB,CAAC,EACxC,cAAc,EACd,OAAO,EACP,MAAM,EACN,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,EAAE,CAAA;IACjC,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAmFA"}
1
+ {"version":3,"file":"iterateFields.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateFields.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAoB,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAkB5E,wBAAgB,yBAAyB,CAAC,EACxC,cAAc,EACd,OAAO,EACP,MAAM,EACN,MAAM,EACN,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,EAAE,CAAA;IACjC,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAmFA"}
@@ -1,4 +1,7 @@
1
- /* eslint-disable @typescript-eslint/no-unused-expressions */ function hasKey(obj, key) {
1
+ /* eslint-disable @typescript-eslint/no-unused-expressions */ // Only checks that `obj` has `key`.
2
+ // Keep this narrow: adding `& T` makes TypeScript expand large field types at every call,
3
+ // and callers already read components from `field` directly and don't need extra type info from this function.
4
+ function hasKey(obj, key) {
2
5
  return obj != null && Object.prototype.hasOwnProperty.call(obj, key);
3
6
  }
4
7
  const defaultUIFieldComponentKeys = [
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/iterateFields.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-expressions */\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\nimport type { Block, Field, Tab } from '../../fields/config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\nfunction hasKey<T, K extends string>(\n obj: null | T | undefined,\n key: K,\n): obj is { [P in K]: PayloadComponent | PayloadComponent[] } & T {\n return obj != null && Object.prototype.hasOwnProperty.call(obj, key)\n}\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\nexport function genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n config: SanitizedConfig\n fields: Block[] | Field[] | Tab[]\n importMap: InternalImportMap\n imports: Imports\n}) {\n for (const field of fields) {\n if ('fields' in field) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: field.fields,\n importMap,\n imports,\n })\n } else if (field.type === 'blocks') {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: field.blocks.filter((block) => typeof block !== 'string'),\n importMap,\n imports,\n })\n } else if (field.type === 'tabs') {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: field.tabs,\n importMap,\n imports,\n })\n } else if (field.type === 'richText') {\n if (\n field?.editor &&\n typeof field.editor === 'object' &&\n field.editor.generateImportMap &&\n typeof field.editor.generateImportMap === 'function'\n ) {\n field.editor.generateImportMap({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n })\n }\n } else if (field.type === 'ui') {\n if (field?.admin?.components) {\n // Render any extra, untyped components\n for (const key in field.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n addToImportMap(field.admin.components[key])\n }\n }\n }\n\n hasKey(field?.admin, 'jsx') && addToImportMap(field.admin.jsx) // For Blocks\n\n hasKey(field?.admin?.components, 'Label') && addToImportMap(field.admin.components.Label)\n\n hasKey(field?.admin?.components, 'Block') && addToImportMap(field.admin.components.Block)\n\n hasKey(field?.admin?.components, 'Cell') && addToImportMap(field?.admin?.components?.Cell)\n\n hasKey(field?.admin?.components, 'Description') &&\n addToImportMap(field?.admin?.components?.Description)\n\n hasKey(field?.admin?.components, 'Field') && addToImportMap(field?.admin?.components?.Field)\n hasKey(field?.admin?.components, 'Filter') && addToImportMap(field?.admin?.components?.Filter)\n\n hasKey(field?.admin?.components, 'Error') && addToImportMap(field?.admin?.components?.Error)\n\n hasKey(field?.admin?.components, 'afterInput') &&\n addToImportMap(field?.admin?.components?.afterInput)\n\n hasKey(field?.admin?.components, 'beforeInput') &&\n addToImportMap(field?.admin?.components?.beforeInput)\n\n hasKey(field?.admin?.components, 'RowLabel') &&\n addToImportMap(field?.admin?.components?.RowLabel)\n\n hasKey(field?.admin?.components, 'Diff') && addToImportMap(field?.admin?.components?.Diff)\n }\n}\n"],"names":["hasKey","obj","key","Object","prototype","hasOwnProperty","call","defaultUIFieldComponentKeys","genImportMapIterateFields","addToImportMap","baseDir","config","fields","importMap","imports","field","type","blocks","filter","block","tabs","editor","generateImportMap","admin","components","jsx","Label","Block","Cell","Description","Field","Filter","Error","afterInput","beforeInput","RowLabel","Diff"],"mappings":"AAAA,2DAA2D,GAK3D,SAASA,OACPC,GAAyB,EACzBC,GAAM;IAEN,OAAOD,OAAO,QAAQE,OAAOC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACL,KAAKC;AAClE;AAEA,MAAMK,8BAAkF;IACtF;IACA;IACA;IACA;CACD;AACD,OAAO,SAASC,0BAA0B,EACxCC,cAAc,EACdC,OAAO,EACPC,MAAM,EACNC,MAAM,EACNC,SAAS,EACTC,OAAO,EAQR;IACC,KAAK,MAAMC,SAASH,OAAQ;QAC1B,IAAI,YAAYG,OAAO;YACrBP,0BAA0B;gBACxBC;gBACAC;gBACAC;gBACAC,QAAQG,MAAMH,MAAM;gBACpBC;gBACAC;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,UAAU;YAClCR,0BAA0B;gBACxBC;gBACAC;gBACAC;gBACAC,QAAQG,MAAME,MAAM,CAACC,MAAM,CAAC,CAACC,QAAU,OAAOA,UAAU;gBACxDN;gBACAC;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,QAAQ;YAChCR,0BAA0B;gBACxBC;gBACAC;gBACAC;gBACAC,QAAQG,MAAMK,IAAI;gBAClBP;gBACAC;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,YAAY;YACpC,IACED,OAAOM,UACP,OAAON,MAAMM,MAAM,KAAK,YACxBN,MAAMM,MAAM,CAACC,iBAAiB,IAC9B,OAAOP,MAAMM,MAAM,CAACC,iBAAiB,KAAK,YAC1C;gBACAP,MAAMM,MAAM,CAACC,iBAAiB,CAAC;oBAC7Bb;oBACAC;oBACAC;oBACAE;oBACAC;gBACF;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,MAAM;YAC9B,IAAID,OAAOQ,OAAOC,YAAY;gBAC5B,uCAAuC;gBACvC,IAAK,MAAMtB,OAAOa,MAAMQ,KAAK,CAACC,UAAU,CAAE;oBACxC,IAAItB,OAAOK,6BAA6B;wBACtC;oBACF;oBACAE,eAAeM,MAAMQ,KAAK,CAACC,UAAU,CAACtB,IAAI;gBAC5C;YACF;QACF;QAEAF,OAAOe,OAAOQ,OAAO,UAAUd,eAAeM,MAAMQ,KAAK,CAACE,GAAG,GAAE,aAAa;QAE5EzB,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,MAAMQ,KAAK,CAACC,UAAU,CAACE,KAAK;QAExF1B,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,MAAMQ,KAAK,CAACC,UAAU,CAACG,KAAK;QAExF3B,OAAOe,OAAOQ,OAAOC,YAAY,WAAWf,eAAeM,OAAOQ,OAAOC,YAAYI;QAErF5B,OAAOe,OAAOQ,OAAOC,YAAY,kBAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYK;QAE3C7B,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,OAAOQ,OAAOC,YAAYM;QACtF9B,OAAOe,OAAOQ,OAAOC,YAAY,aAAaf,eAAeM,OAAOQ,OAAOC,YAAYO;QAEvF/B,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,OAAOQ,OAAOC,YAAYQ;QAEtFhC,OAAOe,OAAOQ,OAAOC,YAAY,iBAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYS;QAE3CjC,OAAOe,OAAOQ,OAAOC,YAAY,kBAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYU;QAE3ClC,OAAOe,OAAOQ,OAAOC,YAAY,eAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYW;QAE3CnC,OAAOe,OAAOQ,OAAOC,YAAY,WAAWf,eAAeM,OAAOQ,OAAOC,YAAYY;IACvF;AACF"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/iterateFields.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-expressions */\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\nimport type { Block, Field, Tab } from '../../fields/config/types.js'\nimport type { AddToImportMap, Imports, InternalImportMap } from './index.js'\n\n// Only checks that `obj` has `key`.\n// Keep this narrow: adding `& T` makes TypeScript expand large field types at every call,\n// and callers already read components from `field` directly and don't need extra type info from this function.\nfunction hasKey<K extends string>(\n obj: unknown,\n key: K,\n): obj is { [P in K]: PayloadComponent | PayloadComponent[] } {\n return obj != null && Object.prototype.hasOwnProperty.call(obj, key)\n}\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\nexport function genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields,\n importMap,\n imports,\n}: {\n addToImportMap: AddToImportMap\n baseDir: string\n config: SanitizedConfig\n fields: Block[] | Field[] | Tab[]\n importMap: InternalImportMap\n imports: Imports\n}) {\n for (const field of fields) {\n if ('fields' in field) {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: field.fields,\n importMap,\n imports,\n })\n } else if (field.type === 'blocks') {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: field.blocks.filter((block) => typeof block !== 'string'),\n importMap,\n imports,\n })\n } else if (field.type === 'tabs') {\n genImportMapIterateFields({\n addToImportMap,\n baseDir,\n config,\n fields: field.tabs,\n importMap,\n imports,\n })\n } else if (field.type === 'richText') {\n if (\n field?.editor &&\n typeof field.editor === 'object' &&\n field.editor.generateImportMap &&\n typeof field.editor.generateImportMap === 'function'\n ) {\n field.editor.generateImportMap({\n addToImportMap,\n baseDir,\n config,\n importMap,\n imports,\n })\n }\n } else if (field.type === 'ui') {\n if (field?.admin?.components) {\n // Render any extra, untyped components\n for (const key in field.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n addToImportMap(field.admin.components[key])\n }\n }\n }\n\n hasKey(field?.admin, 'jsx') && addToImportMap(field.admin.jsx) // For Blocks\n\n hasKey(field?.admin?.components, 'Label') && addToImportMap(field.admin.components.Label)\n\n hasKey(field?.admin?.components, 'Block') && addToImportMap(field.admin.components.Block)\n\n hasKey(field?.admin?.components, 'Cell') && addToImportMap(field?.admin?.components?.Cell)\n\n hasKey(field?.admin?.components, 'Description') &&\n addToImportMap(field?.admin?.components?.Description)\n\n hasKey(field?.admin?.components, 'Field') && addToImportMap(field?.admin?.components?.Field)\n hasKey(field?.admin?.components, 'Filter') && addToImportMap(field?.admin?.components?.Filter)\n\n hasKey(field?.admin?.components, 'Error') && addToImportMap(field?.admin?.components?.Error)\n\n hasKey(field?.admin?.components, 'afterInput') &&\n addToImportMap(field?.admin?.components?.afterInput)\n\n hasKey(field?.admin?.components, 'beforeInput') &&\n addToImportMap(field?.admin?.components?.beforeInput)\n\n hasKey(field?.admin?.components, 'RowLabel') &&\n addToImportMap(field?.admin?.components?.RowLabel)\n\n hasKey(field?.admin?.components, 'Diff') && addToImportMap(field?.admin?.components?.Diff)\n }\n}\n"],"names":["hasKey","obj","key","Object","prototype","hasOwnProperty","call","defaultUIFieldComponentKeys","genImportMapIterateFields","addToImportMap","baseDir","config","fields","importMap","imports","field","type","blocks","filter","block","tabs","editor","generateImportMap","admin","components","jsx","Label","Block","Cell","Description","Field","Filter","Error","afterInput","beforeInput","RowLabel","Diff"],"mappings":"AAAA,2DAA2D,GAK3D,oCAAoC;AACpC,0FAA0F;AAC1F,+GAA+G;AAC/G,SAASA,OACPC,GAAY,EACZC,GAAM;IAEN,OAAOD,OAAO,QAAQE,OAAOC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACL,KAAKC;AAClE;AAEA,MAAMK,8BAAkF;IACtF;IACA;IACA;IACA;CACD;AACD,OAAO,SAASC,0BAA0B,EACxCC,cAAc,EACdC,OAAO,EACPC,MAAM,EACNC,MAAM,EACNC,SAAS,EACTC,OAAO,EAQR;IACC,KAAK,MAAMC,SAASH,OAAQ;QAC1B,IAAI,YAAYG,OAAO;YACrBP,0BAA0B;gBACxBC;gBACAC;gBACAC;gBACAC,QAAQG,MAAMH,MAAM;gBACpBC;gBACAC;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,UAAU;YAClCR,0BAA0B;gBACxBC;gBACAC;gBACAC;gBACAC,QAAQG,MAAME,MAAM,CAACC,MAAM,CAAC,CAACC,QAAU,OAAOA,UAAU;gBACxDN;gBACAC;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,QAAQ;YAChCR,0BAA0B;gBACxBC;gBACAC;gBACAC;gBACAC,QAAQG,MAAMK,IAAI;gBAClBP;gBACAC;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,YAAY;YACpC,IACED,OAAOM,UACP,OAAON,MAAMM,MAAM,KAAK,YACxBN,MAAMM,MAAM,CAACC,iBAAiB,IAC9B,OAAOP,MAAMM,MAAM,CAACC,iBAAiB,KAAK,YAC1C;gBACAP,MAAMM,MAAM,CAACC,iBAAiB,CAAC;oBAC7Bb;oBACAC;oBACAC;oBACAE;oBACAC;gBACF;YACF;QACF,OAAO,IAAIC,MAAMC,IAAI,KAAK,MAAM;YAC9B,IAAID,OAAOQ,OAAOC,YAAY;gBAC5B,uCAAuC;gBACvC,IAAK,MAAMtB,OAAOa,MAAMQ,KAAK,CAACC,UAAU,CAAE;oBACxC,IAAItB,OAAOK,6BAA6B;wBACtC;oBACF;oBACAE,eAAeM,MAAMQ,KAAK,CAACC,UAAU,CAACtB,IAAI;gBAC5C;YACF;QACF;QAEAF,OAAOe,OAAOQ,OAAO,UAAUd,eAAeM,MAAMQ,KAAK,CAACE,GAAG,GAAE,aAAa;QAE5EzB,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,MAAMQ,KAAK,CAACC,UAAU,CAACE,KAAK;QAExF1B,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,MAAMQ,KAAK,CAACC,UAAU,CAACG,KAAK;QAExF3B,OAAOe,OAAOQ,OAAOC,YAAY,WAAWf,eAAeM,OAAOQ,OAAOC,YAAYI;QAErF5B,OAAOe,OAAOQ,OAAOC,YAAY,kBAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYK;QAE3C7B,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,OAAOQ,OAAOC,YAAYM;QACtF9B,OAAOe,OAAOQ,OAAOC,YAAY,aAAaf,eAAeM,OAAOQ,OAAOC,YAAYO;QAEvF/B,OAAOe,OAAOQ,OAAOC,YAAY,YAAYf,eAAeM,OAAOQ,OAAOC,YAAYQ;QAEtFhC,OAAOe,OAAOQ,OAAOC,YAAY,iBAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYS;QAE3CjC,OAAOe,OAAOQ,OAAOC,YAAY,kBAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYU;QAE3ClC,OAAOe,OAAOQ,OAAOC,YAAY,eAC/Bf,eAAeM,OAAOQ,OAAOC,YAAYW;QAE3CnC,OAAOe,OAAOQ,OAAOC,YAAY,WAAWf,eAAeM,OAAOQ,OAAOC,YAAYY;IACvF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"iterateGlobals.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateGlobals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAI5E,wBAAgB,cAAc,CAAC,EAC7B,cAAc,EACd,OAAO,EACP,MAAM,EACN,OAAO,EACP,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,qBAAqB,EAAE,CAAA;IAChC,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAqCA"}
1
+ {"version":3,"file":"iterateGlobals.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/iterateGlobals.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAI5E,wBAAgB,cAAc,CAAC,EAC7B,cAAc,EACd,OAAO,EACP,MAAM,EACN,OAAO,EACP,SAAS,EACT,OAAO,GACR,EAAE;IACD,cAAc,EAAE,cAAc,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,EAAE,qBAAqB,EAAE,CAAA;IAChC,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB,QAmDA"}