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,"sources":["../../src/uploads/types.ts"],"sourcesContent":["import type { ResizeOptions, Sharp, SharpOptions } from 'sharp'\n\nimport type { CollectionConfig, TypeWithID } from '../collections/config/types.js'\nimport type { PayloadComponent } from '../config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\nimport type { WithMetadata } from './optionallyAppendMetadata.js'\n\nexport type FileSize = {\n filename: null | string\n filesize: null | number\n height: null | number\n mimeType: null | string\n url?: null | string // TODO V4: make non-optional\n width: null | number\n}\n\n// TODO: deprecate in Payload v4.\n/**\n * FileSizeImproved is a more precise type, and will replace FileSize in Payload v4.\n * This type is for internal use only as it will be deprecated in the future.\n * @internal\n */\nexport type FileSizeImproved = {\n url: null | string\n} & FileSize\n\nexport type FileSizes = {\n [size: string]: FileSize\n}\n\nexport type FileData = {\n filename: string\n filesize: number\n focalX?: number\n focalY?: number\n height: number\n mimeType: string\n sizes: FileSizes\n tempFilePath?: string\n url?: string\n width: number\n}\n\nexport type ProbedImageSize = {\n height: number\n width: number\n}\n\n/**\n * Params sent to the sharp `toFormat()` function\n * @link https://sharp.pixelplumbing.com/api-output#toformat\n */\nexport type ImageUploadFormatOptions = {\n format: Parameters<Sharp['toFormat']>[0]\n options?: Parameters<Sharp['toFormat']>[1]\n}\n\n/**\n * Params sent to the sharp trim() function\n * @link https://sharp.pixelplumbing.com/api-resize#trim\n */\nexport type ImageUploadTrimOptions = Parameters<Sharp['trim']>[0]\n\nexport type GenerateImageName = (args: {\n extension: string\n height: number\n originalName: string\n sizeName: string\n width: number\n}) => string\n\nexport type ImageSize = {\n /**\n * Admin UI options that control how this image size appears in list views.\n *\n * NOTE: In Payload v4, these options (`disableGroupBy`, `disableListColumn` and `disableListFilter`)\n * should default to `true` so image size subfields are hidden from list columns\n * and filters by default, reducing noise in the admin UI.\n */\n admin?: {\n /**\n * If set to true, this image size will not be available\n * as a selectable groupBy option in the collection list view.\n * @default false\n */\n disableGroupBy?: boolean\n /**\n * If set to true, this image size will not be available\n * as a selectable column in the collection list view.\n * @default false\n */\n disableListColumn?: boolean\n /**\n * If set to true, this image size will not be available\n * as a filter option in the collection list view.\n * @default false\n */\n disableListFilter?: boolean\n }\n /**\n * @deprecated prefer position\n */\n crop?: string // comes from sharp package\n formatOptions?: ImageUploadFormatOptions\n /**\n * Generate a custom name for the file of this image size.\n */\n generateImageName?: GenerateImageName\n name: string\n trimOptions?: ImageUploadTrimOptions\n /**\n * When an uploaded image is smaller than the defined image size, we have 3 options:\n *\n * `undefined | false | true`\n *\n * 1. `undefined` [default]: uploading images with smaller width AND height than the image size will return null\n * 2. `false`: always enlarge images to the image size\n * 3. `true`: if the image is smaller than the image size, return the original image\n */\n withoutEnlargement?: ResizeOptions['withoutEnlargement']\n} & Omit<ResizeOptions, 'withoutEnlargement'>\n\nexport type GetAdminThumbnail = (args: { doc: Record<string, unknown> }) => false | null | string\n\nexport type AllowList = Array<{\n hostname: string\n pathname?: string\n port?: string\n protocol?: 'http' | 'https'\n search?: string\n}>\n\nexport type FileAllowList = Array<{\n extensions: string[]\n mimeType: string\n}>\n\ntype Admin = {\n components?: {\n /**\n * The Controls component to extend the upload controls in the admin panel.\n */\n controls?: PayloadComponent[]\n }\n}\n\nexport type UploadConfig = {\n /**\n * The adapter name to use for uploads. Used for storage adapter telemetry.\n * @default undefined\n */\n adapter?: string\n /**\n * The admin configuration for the upload field.\n */\n admin?: Admin\n /**\n * Represents an admin thumbnail, which can be either a React component or a string.\n * - If a string, it should be one of the image size names.\n * - A function that generates a fully qualified URL for the thumbnail, receives the doc as the only argument.\n **/\n adminThumbnail?: GetAdminThumbnail | string\n /**\n * Allow restricted file types known to be problematic.\n * - If set to `true`, it will allow all file types.\n * - If set to `false`, it will not allow file types and extensions known to be problematic.\n * - This setting is overriden by the `mimeTypes` option.\n * @default false\n */\n allowRestrictedFileTypes?: boolean\n /**\n * Enables bulk upload of files from the list view.\n * @default true\n */\n bulkUpload?: boolean\n /**\n * Appends a cache tag to the image URL when fetching the thumbnail in the admin panel. It may be desirable to disable this when hosting via CDNs with strict parameters.\n *\n * @default true\n */\n cacheTags?: boolean\n /**\n * Sharp constructor options to be passed to the uploaded file.\n * @link https://sharp.pixelplumbing.com/api-constructor/#sharp\n */\n constructorOptions?: SharpOptions\n /**\n * Enables cropping of images.\n * @default true\n */\n crop?: boolean\n /**\n * Disable the ability to save files to disk.\n * @default false\n */\n disableLocalStorage?: boolean\n /**\n * Enable displaying preview of the uploaded file in Upload fields related to this Collection.\n * Can be locally overridden by `displayPreview` option in Upload field.\n * @default false\n */\n displayPreview?: boolean\n /**\n *\n * Accepts existing headers and returns the headers after filtering or modifying.\n * If using this option, you should handle the removal of any sensitive cookies\n * (like payload-prefixed cookies) to prevent leaking session information to external\n * services. By default, Payload automatically filters out payload-prefixed cookies\n * when this option is NOT defined.\n *\n * Useful for adding custom headers to fetch from external providers.\n * @default undefined\n */\n externalFileHeaderFilter?: (headers: Record<string, string>) => Record<string, string>\n /**\n * Field slugs to use for a compound index instead of the default filename index.\n */\n filenameCompoundIndex?: string[]\n /**\n * Require files to be uploaded when creating a document.\n * @default true\n */\n filesRequiredOnCreate?: boolean\n /**\n * Enables focal point positioning for image manipulation.\n * @default true\n */\n focalPoint?: boolean\n /**\n * Format options for the uploaded file. Formatting image sizes needs to be done within each formatOptions individually.\n */\n formatOptions?: ImageUploadFormatOptions\n /**\n * Custom handlers to run when a file is fetched.\n *\n * - If a handler returns a Response, the response will be sent to the client and no further handlers will be run.\n * - If a handler returns null, the next handler will be run.\n * - If no handlers return a response the file will be returned by default.\n *\n * @link https://sharp.pixelplumbing.com/api-output/#toformat\n * @default undefined\n */\n handlers?: ((\n req: PayloadRequest,\n args: {\n doc: TypeWithID\n headers?: Headers\n params: {\n clientUploadContext?: unknown\n collection: string\n filename: string\n prefix?: string\n }\n },\n ) => Promise<Response> | Promise<void> | Response | void)[]\n /**\n * Set to `true` to prevent the admin UI from showing file inputs during document creation, useful for programmatic file generation.\n */\n hideFileInputOnCreate?: boolean\n /**\n * Set to `true` to prevent the admin UI having a way to remove an existing file while editing.\n */\n hideRemoveFile?: boolean\n imageSizes?: ImageSize[]\n /**\n * Restrict mimeTypes in the file picker. Array of valid mime types or mimetype wildcards\n * @example ['image/*', 'application/pdf']\n * @default undefined\n */\n mimeTypes?: string[]\n /**\n * Ability to modify the response headers fetching a file.\n * @default undefined\n */\n modifyResponseHeaders?: ({ headers }: { headers: Headers }) => Headers | void\n /**\n * Controls the behavior of pasting/uploading files from URLs.\n * If set to `false`, fetching from remote URLs is disabled.\n * If an `allowList` is provided, server-side fetching will be enabled for specified URLs.\n *\n * @default true (client-side fetching enabled)\n */\n pasteURL?:\n | {\n allowList: AllowList\n }\n | false\n /**\n * Sharp resize options for the original image.\n * @link https://sharp.pixelplumbing.com/api-resize#resize\n * @default undefined\n */\n resizeOptions?: ResizeOptions\n /**\n * Skip safe fetch when using server-side fetching for external files from these URLs.\n * @default false\n */\n skipSafeFetch?: AllowList | boolean\n /**\n * The directory to serve static files from. Defaults to collection slug.\n * @default undefined\n */\n staticDir?: string\n trimOptions?: ImageUploadTrimOptions\n /**\n * Optionally append metadata to the image during processing.\n *\n * Can be a boolean or a function.\n *\n * If true, metadata will be appended to the image.\n * If false, no metadata will be appended.\n * If a function, it will receive an object containing the metadata and should return a boolean indicating whether to append the metadata.\n * @default false\n */\n withMetadata?: WithMetadata\n}\nexport type checkFileRestrictionsParams = {\n collection: CollectionConfig\n file: File\n req: PayloadRequest\n}\n\nexport type SanitizedUploadConfig = {\n staticDir: UploadConfig['staticDir']\n} & UploadConfig\n\nexport type File = {\n /**\n * The buffer of the file.\n */\n data: Buffer\n /**\n * The mimetype of the file.\n */\n mimetype: string\n /**\n * The name of the file.\n */\n name: string\n /**\n * The size of the file in bytes.\n */\n size: number\n /**\n * Path to the temp file on disk when useTempFiles is enabled. In this case file.data will be an empty buffer.\n */\n tempFilePath?: string\n}\n\nexport type FileToSave = {\n /**\n * The buffer of the file.\n */\n buffer: Buffer\n /**\n * The path to save the file.\n */\n path: string\n}\n\ntype Crop = {\n height: number\n unit: '%' | 'px'\n width: number\n x: number\n y: number\n}\n\nexport type FocalPoint = {\n x: number\n y: number\n}\n\nexport type UploadEdits = {\n crop?: Crop\n focalPoint?: FocalPoint\n heightInPixels?: number\n widthInPixels?: number\n}\n"],"names":[],"mappings":"AAqXA,WAKC"}
1
+ {"version":3,"sources":["../../src/uploads/types.ts"],"sourcesContent":["import type { ResizeOptions, Sharp, SharpOptions } from 'sharp'\n\nimport type { CollectionConfig, TypeWithID } from '../collections/config/types.js'\nimport type { PayloadComponent } from '../config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\nimport type { WithMetadata } from './optionallyAppendMetadata.js'\n\nexport type FileSize = {\n filename: null | string\n filesize: null | number\n height: null | number\n mimeType: null | string\n url: null | string\n width: null | number\n}\n\nexport type FileSizes = {\n [size: string]: FileSize\n}\n\nexport type FileData = {\n filename: string\n filesize: number\n focalX?: number\n focalY?: number\n height: number\n mimeType: string\n sizes: FileSizes\n tempFilePath?: string\n url?: string\n width: number\n}\n\nexport type ProbedImageSize = {\n height: number\n width: number\n}\n\n/**\n * Params sent to the sharp `toFormat()` function\n * @link https://sharp.pixelplumbing.com/api-output#toformat\n */\nexport type ImageUploadFormatOptions = {\n format: Parameters<Sharp['toFormat']>[0]\n options?: Parameters<Sharp['toFormat']>[1]\n}\n\n/**\n * Params sent to the sharp trim() function\n * @link https://sharp.pixelplumbing.com/api-resize#trim\n */\nexport type ImageUploadTrimOptions = Parameters<Sharp['trim']>[0]\n\nexport type GenerateImageName = (args: {\n extension: string\n height: number\n originalName: string\n sizeName: string\n width: number\n}) => string\n\nexport type ImageSize = {\n /**\n * Admin UI options that control how this image size appears in list views.\n */\n admin?: {\n /**\n * Controls visibility of this image size in the collection list view.\n * Defaults to hiding the image size from columns, filters, and group-by to reduce noise.\n *\n * - `column` — whether to hide this size from selectable list columns. @default false\n * - `filter` — whether to hide this size from filter options. @default false\n * - `groupBy` — whether to hide this size from group-by options. @default false\n */\n disabled?: {\n column?: boolean\n filter?: boolean\n groupBy?: boolean\n }\n }\n /**\n * @deprecated prefer position\n */\n crop?: string // comes from sharp package\n formatOptions?: ImageUploadFormatOptions\n /**\n * Generate a custom name for the file of this image size.\n */\n generateImageName?: GenerateImageName\n name: string\n trimOptions?: ImageUploadTrimOptions\n /**\n * When an uploaded image is smaller than the defined image size, we have 3 options:\n *\n * `undefined | false | true`\n *\n * 1. `undefined` [default]: uploading images with smaller width AND height than the image size will return null\n * 2. `false`: always enlarge images to the image size\n * 3. `true`: if the image is smaller than the image size, return the original image\n */\n withoutEnlargement?: ResizeOptions['withoutEnlargement']\n} & Omit<ResizeOptions, 'withoutEnlargement'>\n\nexport type GetAdminThumbnail = (args: { doc: Record<string, unknown> }) => false | null | string\n\nexport type AllowList = Array<{\n hostname: string\n pathname?: string\n port?: string\n protocol?: 'http' | 'https'\n search?: string\n}>\n\nexport type FileAllowList = Array<{\n extensions: string[]\n mimeType: string\n}>\n\ntype Admin = {\n components?: {\n /**\n * The Controls component to extend the upload controls in the admin panel.\n */\n controls?: PayloadComponent[]\n }\n}\n\nexport type UploadConfig = {\n /**\n * The adapter name to use for uploads. Used for storage adapter telemetry.\n * @default undefined\n */\n adapter?: string\n /**\n * The admin configuration for the upload field.\n */\n admin?: Admin\n /**\n * Represents an admin thumbnail, which can be either a React component or a string.\n * - If a string, it should be one of the image size names.\n * - A function that generates a fully qualified URL for the thumbnail, receives the doc as the only argument.\n **/\n adminThumbnail?: GetAdminThumbnail | string\n /**\n * Allow restricted file types known to be problematic.\n * - If set to `true`, it will allow all file types.\n * - If set to `false`, it will not allow file types and extensions known to be problematic.\n * - This setting is overriden by the `mimeTypes` option.\n * @default false\n */\n allowRestrictedFileTypes?: boolean\n /**\n * Enables bulk upload of files from the list view.\n * @default true\n */\n bulkUpload?: boolean\n /**\n * Appends a cache tag to the image URL when fetching the thumbnail in the admin panel. It may be desirable to disable this when hosting via CDNs with strict parameters.\n *\n * @default true\n */\n cacheTags?: boolean\n /**\n * Sharp constructor options to be passed to the uploaded file.\n * @link https://sharp.pixelplumbing.com/api-constructor/#sharp\n */\n constructorOptions?: SharpOptions\n /**\n * Enables cropping of images.\n * @default true\n */\n crop?: boolean\n /**\n * Disable the ability to save files to disk.\n * @default false\n */\n disableLocalStorage?: boolean\n /**\n * Enable displaying preview of the uploaded file in Upload fields related to this Collection.\n * Can be locally overridden by `displayPreview` option in Upload field.\n * @default false\n */\n displayPreview?: boolean\n /**\n *\n * Accepts existing headers and returns the headers after filtering or modifying.\n * If using this option, you should handle the removal of any sensitive cookies\n * (like payload-prefixed cookies) to prevent leaking session information to external\n * services. By default, Payload automatically filters out payload-prefixed cookies\n * when this option is NOT defined.\n *\n * Useful for adding custom headers to fetch from external providers.\n * @default undefined\n */\n externalFileHeaderFilter?: (headers: Record<string, string>) => Record<string, string>\n /**\n * Field slugs to use for a compound index instead of the default filename index.\n */\n filenameCompoundIndex?: string[]\n /**\n * Require files to be uploaded when creating a document.\n * @default true\n */\n filesRequiredOnCreate?: boolean\n /**\n * Enables focal point positioning for image manipulation.\n * @default true\n */\n focalPoint?: boolean\n /**\n * Format options for the uploaded file. Formatting image sizes needs to be done within each formatOptions individually.\n */\n formatOptions?: ImageUploadFormatOptions\n /**\n * Custom handlers to run when a file is fetched.\n *\n * - If a handler returns a Response, the response will be sent to the client and no further handlers will be run.\n * - If a handler returns null, the next handler will be run.\n * - If no handlers return a response the file will be returned by default.\n *\n * @link https://sharp.pixelplumbing.com/api-output/#toformat\n * @default undefined\n */\n handlers?: ((\n req: PayloadRequest,\n args: {\n doc: TypeWithID\n headers?: Headers\n params: {\n clientUploadContext?: unknown\n collection: string\n filename: string\n prefix?: string\n }\n },\n ) => Promise<Response> | Promise<void> | Response | void)[]\n /**\n * Set to `true` to prevent the admin UI from showing file inputs during document creation, useful for programmatic file generation.\n */\n hideFileInputOnCreate?: boolean\n /**\n * Set to `true` to prevent the admin UI having a way to remove an existing file while editing.\n */\n hideRemoveFile?: boolean\n imageSizes?: ImageSize[]\n /**\n * Restrict mimeTypes in the file picker. Array of valid mime types or mimetype wildcards\n * @example ['image/*', 'application/pdf']\n * @default undefined\n */\n mimeTypes?: string[]\n /**\n * Ability to modify the response headers fetching a file.\n * @default undefined\n */\n modifyResponseHeaders?: ({ headers }: { headers: Headers }) => Headers | void\n /**\n * Controls the behavior of pasting/uploading files from URLs.\n * If set to `false`, fetching from remote URLs is disabled.\n * If an `allowList` is provided, server-side fetching will be enabled for specified URLs.\n *\n * @default true (client-side fetching enabled)\n */\n pasteURL?:\n | {\n allowList: AllowList\n }\n | false\n /**\n * Sharp resize options for the original image.\n * @link https://sharp.pixelplumbing.com/api-resize#resize\n * @default undefined\n */\n resizeOptions?: ResizeOptions\n /**\n * Skip safe fetch when using server-side fetching for external files from these URLs.\n * @default false\n */\n skipSafeFetch?: AllowList | boolean\n /**\n * The directory to serve static files from. Defaults to collection slug.\n * @default undefined\n */\n staticDir?: string\n trimOptions?: ImageUploadTrimOptions\n /**\n * Optionally append metadata to the image during processing.\n *\n * Can be a boolean or a function.\n *\n * If true, metadata will be appended to the image.\n * If false, no metadata will be appended.\n * If a function, it will receive an object containing the metadata and should return a boolean indicating whether to append the metadata.\n * @default false\n */\n withMetadata?: WithMetadata\n}\nexport type checkFileRestrictionsParams = {\n collection: CollectionConfig\n file: File\n req: PayloadRequest\n}\n\nexport type SanitizedUploadConfig = {\n staticDir: UploadConfig['staticDir']\n} & UploadConfig\n\nexport type File = {\n /**\n * The buffer of the file.\n */\n data: Buffer\n /**\n * The mimetype of the file.\n */\n mimetype: string\n /**\n * The name of the file.\n */\n name: string\n /**\n * The size of the file in bytes.\n */\n size: number\n /**\n * Path to the temp file on disk when useTempFiles is enabled. In this case file.data will be an empty buffer.\n */\n tempFilePath?: string\n}\n\nexport type FileToSave = {\n /**\n * The buffer of the file.\n */\n buffer: Buffer\n /**\n * The path to save the file.\n */\n path: string\n}\n\ntype Crop = {\n height: number\n unit: '%' | 'px'\n width: number\n x: number\n y: number\n}\n\nexport type FocalPoint = {\n x: number\n y: number\n}\n\nexport type UploadEdits = {\n crop?: Crop\n focalPoint?: FocalPoint\n heightInPixels?: number\n widthInPixels?: number\n}\n"],"names":[],"mappings":"AAkWA,WAKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"uploadFiles.d.ts","sourceRoot":"","sources":["../../src/uploads/uploadFiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAK5C,eAAO,MAAM,WAAW,YACb,OAAO,SACT,UAAU,EAAE,OACd,cAAc,KAClB,OAAO,CAAC,IAAI,CAWd,CAAA"}
1
+ {"version":3,"file":"uploadFiles.d.ts","sourceRoot":"","sources":["../../src/uploads/uploadFiles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAK5C,eAAO,MAAM,WAAW,GACtB,SAAS,OAAO,EAChB,OAAO,UAAU,EAAE,EACnB,KAAK,cAAc,KAClB,OAAO,CAAC,IAAI,CAWd,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"addLocalesToRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/addLocalesToRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CA0CrE;AAED,KAAK,mBAAmB,GAAG;IACzB,cAAc,EAAE,mBAAmB,CAAA;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,eAAe,CAAC,cAAc,CAAC,CAAA;CAC9C,CAAA;AACD,KAAK,qBAAqB,GAAG;IAC3B,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AACD,eAAO,MAAM,eAAe,8CAIzB,mBAAmB,KAAG,qBAqBxB,CAAA"}
1
+ {"version":3,"file":"addLocalesToRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/addLocalesToRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CA0CrE;AAED,KAAK,mBAAmB,GAAG;IACzB,cAAc,EAAE,mBAAmB,CAAA;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,eAAe,CAAC,cAAc,CAAC,CAAA;CAC9C,CAAA;AACD,KAAK,qBAAqB,GAAG;IAC3B,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AACD,eAAO,MAAM,eAAe,GAAI,2CAI7B,mBAAmB,KAAG,qBAqBxB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"addSelectGenericsToGeneretedTypes.d.ts","sourceRoot":"","sources":["../../src/utilities/addSelectGenericsToGeneretedTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,gCAE3C;IACD,sBAAsB,EAAE,MAAM,CAAA;CAC/B,WAoDA,CAAA"}
1
+ {"version":3,"file":"addSelectGenericsToGeneretedTypes.d.ts","sourceRoot":"","sources":["../../src/utilities/addSelectGenericsToGeneretedTypes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iCAAiC,GAAI,6BAE/C;IACD,sBAAsB,EAAE,MAAM,CAAA;CAC/B,WAoDA,CAAA"}
@@ -0,0 +1,13 @@
1
+ import type { FlattenedField } from '../fields/config/types.js';
2
+ import type { SelectType } from '../types/index.js';
3
+ /**
4
+ * Mutates the incoming select object to append `{name}_tz` siblings for any date
5
+ * field with `timezone` enabled that has been requested in the select. Without
6
+ * this, the List View's Select API would omit the timezone sibling and
7
+ * cells would render dates in the server's timezone.
8
+ */
9
+ export declare const appendDateTimezoneSelectFields: ({ fields, select, }: {
10
+ fields: FlattenedField[];
11
+ select: SelectType;
12
+ }) => void;
13
+ //# sourceMappingURL=appendDateTimezoneSelectFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appendDateTimezoneSelectFields.d.ts","sourceRoot":"","sources":["../../src/utilities/appendDateTimezoneSelectFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,GAAI,qBAG5C;IACD,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,MAAM,EAAE,UAAU,CAAA;CACnB,SAoDA,CAAA"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Mutates the incoming select object to append `{name}_tz` siblings for any date
3
+ * field with `timezone` enabled that has been requested in the select. Without
4
+ * this, the List View's Select API would omit the timezone sibling and
5
+ * cells would render dates in the server's timezone.
6
+ */ export const appendDateTimezoneSelectFields = ({ fields, select })=>{
7
+ if (!select) {
8
+ return;
9
+ }
10
+ for (const field of fields){
11
+ if (!('name' in field)) {
12
+ continue;
13
+ }
14
+ const value = select[field.name];
15
+ if (field.type === 'date' && field.timezone && value) {
16
+ select[`${field.name}_tz`] = true;
17
+ continue;
18
+ }
19
+ if (!value || typeof value !== 'object') {
20
+ continue;
21
+ }
22
+ if ('flattenedFields' in field) {
23
+ appendDateTimezoneSelectFields({
24
+ fields: field.flattenedFields,
25
+ select: value
26
+ });
27
+ continue;
28
+ }
29
+ if (field.type === 'blocks') {
30
+ const blockReferences = field.blockReferences ?? field.blocks;
31
+ for (const block of blockReferences){
32
+ if (typeof block === 'string') {
33
+ continue;
34
+ }
35
+ const blockSelect = value[block.slug];
36
+ if (blockSelect && typeof blockSelect === 'object') {
37
+ appendDateTimezoneSelectFields({
38
+ fields: block.flattenedFields,
39
+ select: blockSelect
40
+ });
41
+ }
42
+ }
43
+ }
44
+ }
45
+ };
46
+
47
+ //# sourceMappingURL=appendDateTimezoneSelectFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utilities/appendDateTimezoneSelectFields.ts"],"sourcesContent":["import type { FlattenedField } from '../fields/config/types.js'\nimport type { SelectType } from '../types/index.js'\n\n/**\n * Mutates the incoming select object to append `{name}_tz` siblings for any date\n * field with `timezone` enabled that has been requested in the select. Without\n * this, the List View's Select API would omit the timezone sibling and\n * cells would render dates in the server's timezone.\n */\nexport const appendDateTimezoneSelectFields = ({\n fields,\n select,\n}: {\n fields: FlattenedField[]\n select: SelectType\n}) => {\n if (!select) {\n return\n }\n\n for (const field of fields) {\n if (!('name' in field)) {\n continue\n }\n\n const value = select[field.name]\n\n if (field.type === 'date' && field.timezone && value) {\n select[`${field.name}_tz`] = true\n continue\n }\n\n if (!value || typeof value !== 'object') {\n continue\n }\n\n if ('flattenedFields' in field) {\n appendDateTimezoneSelectFields({\n fields: field.flattenedFields,\n select: value as SelectType,\n })\n continue\n }\n\n if (field.type === 'blocks') {\n const blockReferences = (field.blockReferences ?? field.blocks) as Array<\n | {\n flattenedFields: FlattenedField[]\n slug: string\n }\n | string\n >\n\n for (const block of blockReferences) {\n if (typeof block === 'string') {\n continue\n }\n const blockSelect = (value as SelectType)[block.slug]\n if (blockSelect && typeof blockSelect === 'object') {\n appendDateTimezoneSelectFields({\n fields: block.flattenedFields,\n select: blockSelect as SelectType,\n })\n }\n }\n }\n }\n}\n"],"names":["appendDateTimezoneSelectFields","fields","select","field","value","name","type","timezone","flattenedFields","blockReferences","blocks","block","blockSelect","slug"],"mappings":"AAGA;;;;;CAKC,GACD,OAAO,MAAMA,iCAAiC,CAAC,EAC7CC,MAAM,EACNC,MAAM,EAIP;IACC,IAAI,CAACA,QAAQ;QACX;IACF;IAEA,KAAK,MAAMC,SAASF,OAAQ;QAC1B,IAAI,CAAE,CAAA,UAAUE,KAAI,GAAI;YACtB;QACF;QAEA,MAAMC,QAAQF,MAAM,CAACC,MAAME,IAAI,CAAC;QAEhC,IAAIF,MAAMG,IAAI,KAAK,UAAUH,MAAMI,QAAQ,IAAIH,OAAO;YACpDF,MAAM,CAAC,GAAGC,MAAME,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG;YAC7B;QACF;QAEA,IAAI,CAACD,SAAS,OAAOA,UAAU,UAAU;YACvC;QACF;QAEA,IAAI,qBAAqBD,OAAO;YAC9BH,+BAA+B;gBAC7BC,QAAQE,MAAMK,eAAe;gBAC7BN,QAAQE;YACV;YACA;QACF;QAEA,IAAID,MAAMG,IAAI,KAAK,UAAU;YAC3B,MAAMG,kBAAmBN,MAAMM,eAAe,IAAIN,MAAMO,MAAM;YAQ9D,KAAK,MAAMC,SAASF,gBAAiB;gBACnC,IAAI,OAAOE,UAAU,UAAU;oBAC7B;gBACF;gBACA,MAAMC,cAAc,AAACR,KAAoB,CAACO,MAAME,IAAI,CAAC;gBACrD,IAAID,eAAe,OAAOA,gBAAgB,UAAU;oBAClDZ,+BAA+B;wBAC7BC,QAAQU,MAAMH,eAAe;wBAC7BN,QAAQU;oBACV;gBACF;YACF;QACF;IACF;AACF,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"appendNonTrashedFilter.d.ts","sourceRoot":"","sources":["../../src/utilities/appendNonTrashedFilter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAE9C,eAAO,MAAM,sBAAsB,kDAKhC;IACD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,KAAK,CAAA;CACb,KAAG,KAmBH,CAAA"}
1
+ {"version":3,"file":"appendNonTrashedFilter.d.ts","sourceRoot":"","sources":["../../src/utilities/appendNonTrashedFilter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAE9C,eAAO,MAAM,sBAAsB,GAAI,+CAKpC;IACD,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,KAAK,CAAA;CACb,KAAG,KAmBH,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"appendUploadSelectFields.d.ts","sourceRoot":"","sources":["../../src/utilities/appendUploadSelectFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAEhG;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,kCAGlC;IACD,gBAAgB,EAAE,sBAAsB,GAAG,yBAAyB,CAAA;IACpE,MAAM,EAAE,UAAU,CAAA;CACnB,SAmCA,CAAA"}
1
+ {"version":3,"file":"appendUploadSelectFields.d.ts","sourceRoot":"","sources":["../../src/utilities/appendUploadSelectFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAEhG;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,GAAI,+BAGtC;IACD,gBAAgB,EAAE,sBAAsB,GAAG,yBAAyB,CAAA;IACpE,MAAM,EAAE,UAAU,CAAA;CACnB,SAuCA,CAAA"}
@@ -8,6 +8,9 @@
8
8
  }
9
9
  select.mimeType = true;
10
10
  select.thumbnailURL = true;
11
+ if (collectionConfig.upload.cacheTags) {
12
+ select.updatedAt = true;
13
+ }
11
14
  if (collectionConfig.upload.imageSizes && collectionConfig.upload.imageSizes.length > 0) {
12
15
  if (collectionConfig.upload.adminThumbnail && typeof collectionConfig.upload.adminThumbnail === 'string') {
13
16
  /** Only return image size properties that are required to generate the adminThumbnailURL */ select.sizes = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/appendUploadSelectFields.ts"],"sourcesContent":["import type { ClientCollectionConfig, SanitizedCollectionConfig, SelectType } from '../index.js'\n\n/**\n * Mutates the incoming select object to append fields required for upload thumbnails\n * @param collectionConfig\n * @param select\n */\nexport const appendUploadSelectFields = ({\n collectionConfig,\n select,\n}: {\n collectionConfig: ClientCollectionConfig | SanitizedCollectionConfig\n select: SelectType\n}) => {\n if (!collectionConfig.upload || !select) {\n return\n }\n\n select.mimeType = true\n select.thumbnailURL = true\n\n if (collectionConfig.upload.imageSizes && collectionConfig.upload.imageSizes.length > 0) {\n if (\n collectionConfig.upload.adminThumbnail &&\n typeof collectionConfig.upload.adminThumbnail === 'string'\n ) {\n /** Only return image size properties that are required to generate the adminThumbnailURL */\n select.sizes = {\n [collectionConfig.upload.adminThumbnail]: {\n filename: true,\n },\n }\n } else {\n /** Only return image size properties that are required for thumbnails */\n select.sizes = collectionConfig.upload.imageSizes.reduce((acc, imageSizeConfig) => {\n return {\n ...acc,\n [imageSizeConfig.name]: {\n filename: true,\n url: true,\n width: true,\n },\n }\n }, {})\n }\n } else {\n select.url = true\n }\n}\n"],"names":["appendUploadSelectFields","collectionConfig","select","upload","mimeType","thumbnailURL","imageSizes","length","adminThumbnail","sizes","filename","reduce","acc","imageSizeConfig","name","url","width"],"mappings":"AAEA;;;;CAIC,GACD,OAAO,MAAMA,2BAA2B,CAAC,EACvCC,gBAAgB,EAChBC,MAAM,EAIP;IACC,IAAI,CAACD,iBAAiBE,MAAM,IAAI,CAACD,QAAQ;QACvC;IACF;IAEAA,OAAOE,QAAQ,GAAG;IAClBF,OAAOG,YAAY,GAAG;IAEtB,IAAIJ,iBAAiBE,MAAM,CAACG,UAAU,IAAIL,iBAAiBE,MAAM,CAACG,UAAU,CAACC,MAAM,GAAG,GAAG;QACvF,IACEN,iBAAiBE,MAAM,CAACK,cAAc,IACtC,OAAOP,iBAAiBE,MAAM,CAACK,cAAc,KAAK,UAClD;YACA,0FAA0F,GAC1FN,OAAOO,KAAK,GAAG;gBACb,CAACR,iBAAiBE,MAAM,CAACK,cAAc,CAAC,EAAE;oBACxCE,UAAU;gBACZ;YACF;QACF,OAAO;YACL,uEAAuE,GACvER,OAAOO,KAAK,GAAGR,iBAAiBE,MAAM,CAACG,UAAU,CAACK,MAAM,CAAC,CAACC,KAAKC;gBAC7D,OAAO;oBACL,GAAGD,GAAG;oBACN,CAACC,gBAAgBC,IAAI,CAAC,EAAE;wBACtBJ,UAAU;wBACVK,KAAK;wBACLC,OAAO;oBACT;gBACF;YACF,GAAG,CAAC;QACN;IACF,OAAO;QACLd,OAAOa,GAAG,GAAG;IACf;AACF,EAAC"}
1
+ {"version":3,"sources":["../../src/utilities/appendUploadSelectFields.ts"],"sourcesContent":["import type { ClientCollectionConfig, SanitizedCollectionConfig, SelectType } from '../index.js'\n\n/**\n * Mutates the incoming select object to append fields required for upload thumbnails\n * @param collectionConfig\n * @param select\n */\nexport const appendUploadSelectFields = ({\n collectionConfig,\n select,\n}: {\n collectionConfig: ClientCollectionConfig | SanitizedCollectionConfig\n select: SelectType\n}) => {\n if (!collectionConfig.upload || !select) {\n return\n }\n\n select.mimeType = true\n select.thumbnailURL = true\n\n if (collectionConfig.upload.cacheTags) {\n select.updatedAt = true\n }\n\n if (collectionConfig.upload.imageSizes && collectionConfig.upload.imageSizes.length > 0) {\n if (\n collectionConfig.upload.adminThumbnail &&\n typeof collectionConfig.upload.adminThumbnail === 'string'\n ) {\n /** Only return image size properties that are required to generate the adminThumbnailURL */\n select.sizes = {\n [collectionConfig.upload.adminThumbnail]: {\n filename: true,\n },\n }\n } else {\n /** Only return image size properties that are required for thumbnails */\n select.sizes = collectionConfig.upload.imageSizes.reduce((acc, imageSizeConfig) => {\n return {\n ...acc,\n [imageSizeConfig.name]: {\n filename: true,\n url: true,\n width: true,\n },\n }\n }, {})\n }\n } else {\n select.url = true\n }\n}\n"],"names":["appendUploadSelectFields","collectionConfig","select","upload","mimeType","thumbnailURL","cacheTags","updatedAt","imageSizes","length","adminThumbnail","sizes","filename","reduce","acc","imageSizeConfig","name","url","width"],"mappings":"AAEA;;;;CAIC,GACD,OAAO,MAAMA,2BAA2B,CAAC,EACvCC,gBAAgB,EAChBC,MAAM,EAIP;IACC,IAAI,CAACD,iBAAiBE,MAAM,IAAI,CAACD,QAAQ;QACvC;IACF;IAEAA,OAAOE,QAAQ,GAAG;IAClBF,OAAOG,YAAY,GAAG;IAEtB,IAAIJ,iBAAiBE,MAAM,CAACG,SAAS,EAAE;QACrCJ,OAAOK,SAAS,GAAG;IACrB;IAEA,IAAIN,iBAAiBE,MAAM,CAACK,UAAU,IAAIP,iBAAiBE,MAAM,CAACK,UAAU,CAACC,MAAM,GAAG,GAAG;QACvF,IACER,iBAAiBE,MAAM,CAACO,cAAc,IACtC,OAAOT,iBAAiBE,MAAM,CAACO,cAAc,KAAK,UAClD;YACA,0FAA0F,GAC1FR,OAAOS,KAAK,GAAG;gBACb,CAACV,iBAAiBE,MAAM,CAACO,cAAc,CAAC,EAAE;oBACxCE,UAAU;gBACZ;YACF;QACF,OAAO;YACL,uEAAuE,GACvEV,OAAOS,KAAK,GAAGV,iBAAiBE,MAAM,CAACK,UAAU,CAACK,MAAM,CAAC,CAACC,KAAKC;gBAC7D,OAAO;oBACL,GAAGD,GAAG;oBACN,CAACC,gBAAgBC,IAAI,CAAC,EAAE;wBACtBJ,UAAU;wBACVK,KAAK;wBACLC,OAAO;oBACT;gBACF;YACF,GAAG,CAAC;QACN;IACF,OAAO;QACLhB,OAAOe,GAAG,GAAG;IACf;AACF,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"canAccessAdmin.d.ts","sourceRoot":"","sources":["../../src/utilities/canAccessAdmin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,YAAmB;IAAE,GAAG,EAAE,cAAc,CAAA;CAAE,kBA8BpE,CAAA"}
1
+ {"version":3,"file":"canAccessAdmin.d.ts","sourceRoot":"","sources":["../../src/utilities/canAccessAdmin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GAAU,SAAS;IAAE,GAAG,EAAE,cAAc,CAAA;CAAE,kBA8BpE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkDocumentLockStatus.d.ts","sourceRoot":"","sources":["../../src/utilities/checkDocumentLockStatus.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAKnE,KAAK,2BAA2B,GAAG;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,uBAAuB,kGAQjC,2BAA2B,KAAG,OAAO,CAAC,IAAI,CAgF5C,CAAA"}
1
+ {"version":3,"file":"checkDocumentLockStatus.d.ts","sourceRoot":"","sources":["../../src/utilities/checkDocumentLockStatus.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAKnE,KAAK,2BAA2B,GAAG;IACjC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAU,+FAQ3C,2BAA2B,KAAG,OAAO,CAAC,IAAI,CAgF5C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"configToJSONSchema.d.ts","sourceRoot":"","sources":["../../src/utilities/configToJSONSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAGnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAsB,cAAc,EAAU,MAAM,2BAA2B,CAAA;AAC3F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AA4SvE;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,mBAAmB,EAC9B,UAAU,EAAE,OAAO,GAClB,mBAAmB,GAAG,mBAAmB,EAAE,CAO7C;AA4BD,KAAK,yBAAyB,GAAG;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,wBAAgB,kBAAkB;AAChC;;;;GAIG;AACH,sBAAsB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAAE,EAC9D,MAAM,EAAE,cAAc,EAAE;AACxB;;GAEG;AACH,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,MAAM,CAAC,EAAE,eAAe,EACxB,IAAI,CAAC,EAAE,IAAI,EACX,IAAI,GAAE,yBAA8B,GACnC;IACD,UAAU,EAAE;QACV,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;KACzB,CAAA;IACD,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,CAyfA;AAGD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,yBAAyB,GAAG,qBAAqB,EACzD,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,aAAa,EAAE,QAAQ,GAAG,MAAM,EAChC,sBAAsB,CAAC,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAAE,EAC/D,IAAI,CAAC,EAAE,IAAI,EACX,IAAI,GAAE,yBAA8B,GACnC,WAAW,CAsFb;AAED,wBAAgB,wBAAwB,CAAC,EACvC,MAAM,EACN,MAAM,EACN,wBAAwB,GACzB,EAAE;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CACnD,GAAG,WAAW,CAgGd;AAgHD,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,yBAAyB,GAChC,WAAW,CA0Bb;AAGD,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,GAC9E,WAAW,CAOb;AAuBD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,EACjC,IAAI,CAAC,EAAE,IAAI,EACX,IAAI,GAAE,yBAA8B,GACnC,WAAW,CAuMb"}
1
+ {"version":3,"file":"configToJSONSchema.d.ts","sourceRoot":"","sources":["../../src/utilities/configToJSONSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAKnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAsB,cAAc,EAAU,MAAM,2BAA2B,CAAA;AAC3F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AA4SvE;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,mBAAmB,EAC9B,UAAU,EAAE,OAAO,GAClB,mBAAmB,GAAG,mBAAmB,EAAE,CAO7C;AA4BD,KAAK,yBAAyB,GAAG;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,wBAAgB,kBAAkB;AAChC;;;;GAIG;AACH,sBAAsB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAAE,EAC9D,MAAM,EAAE,cAAc,EAAE;AACxB;;GAEG;AACH,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,MAAM,CAAC,EAAE,eAAe,EACxB,IAAI,CAAC,EAAE,IAAI,EACX,IAAI,GAAE,yBAA8B,GACnC;IACD,UAAU,EAAE;QACV,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;KACzB,CAAA;IACD,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,CA+eA;AAGD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,yBAAyB,GAAG,qBAAqB,EACzD,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClD,aAAa,EAAE,QAAQ,GAAG,MAAM,EAChC,sBAAsB,CAAC,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAAE,EAC/D,IAAI,CAAC,EAAE,IAAI,EACX,IAAI,GAAE,yBAA8B,GACnC,WAAW,CAsFb;AAED,wBAAgB,wBAAwB,CAAC,EACvC,MAAM,EACN,MAAM,EACN,wBAAwB,GACzB,EAAE;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;CACnD,GAAG,WAAW,CAgGd;AAgHD,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,yBAAyB,GAChC,WAAW,CA0Bb;AAGD,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,GAC9E,WAAW,CAOb;AA8DD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,EACvB,aAAa,CAAC,EAAE,QAAQ,GAAG,MAAM,EACjC,IAAI,CAAC,EAAE,IAAI,EACX,IAAI,GAAE,yBAA8B,GACnC,WAAW,CAyMb"}
@@ -1,8 +1,9 @@
1
+ import { createHash } from 'crypto';
1
2
  import { MissingEditorProp } from '../errors/MissingEditorProp.js';
2
3
  import { fieldAffectsData } from '../fields/config/types.js';
3
4
  import { generateJobsJSONSchemas } from '../queues/config/generateJobsJSONSchemas.js';
4
5
  import { flattenAllFields } from './flattenAllFields.js';
5
- import { formatNames } from './formatLabels.js';
6
+ import { formatNames, toWords } from './formatLabels.js';
6
7
  import { getCollectionIDFieldTypes } from './getCollectionIDFieldTypes.js';
7
8
  import { optionsAreEqual } from './optionsAreEqual.js';
8
9
  const fieldIsRequired = (field)=>{
@@ -33,7 +34,7 @@ function generateEntitySchemas(entities) {
33
34
  ...entities
34
35
  ].reduce((acc, { slug })=>{
35
36
  acc[slug] = {
36
- $ref: `#/definitions/${slug}`
37
+ $ref: `#/$defs/${slug}`
37
38
  };
38
39
  return acc;
39
40
  }, {});
@@ -49,7 +50,7 @@ function generateEntitySelectSchemas(entities) {
49
50
  ...entities
50
51
  ].reduce((acc, { slug })=>{
51
52
  acc[slug] = {
52
- $ref: `#/definitions/${slug}_select`
53
+ $ref: `#/$defs/${slug}_select`
53
54
  };
54
55
  return acc;
55
56
  }, {});
@@ -161,7 +162,7 @@ function generateWidgetSchemas({ collectionIDFieldTypes, config, i18n, interface
161
162
  ]
162
163
  };
163
164
  properties[widget.slug] = {
164
- $ref: `#/definitions/${definition}`
165
+ $ref: `#/$defs/${definition}`
165
166
  };
166
167
  }
167
168
  return {
@@ -240,7 +241,7 @@ function generateAuthEntitySchemas(entities) {
240
241
  ...entities
241
242
  ].filter(({ auth })=>Boolean(auth)).map(({ slug })=>{
242
243
  return {
243
- $ref: `#/definitions/${slug}`
244
+ $ref: `#/$defs/${slug}`
244
245
  };
245
246
  }, {});
246
247
  return {
@@ -334,7 +335,7 @@ export function fieldsToJSONSchema(/**
334
335
  if (field.interfaceName) {
335
336
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
336
337
  fieldSchema = {
337
- $ref: `#/definitions/${field.interfaceName}`
338
+ $ref: `#/$defs/${field.interfaceName}`
338
339
  };
339
340
  }
340
341
  break;
@@ -349,18 +350,10 @@ export function fieldsToJSONSchema(/**
349
350
  ...baseFieldSchema,
350
351
  type: withNullableJSONSchemaType('array', isRequired),
351
352
  items: hasBlocks ? {
352
- oneOf: (field.blockReferences ?? field.blocks).map((block)=>{
353
- if (typeof block === 'string') {
354
- const resolvedBlock = config?.blocks?.find((b)=>b.slug === block);
355
- if (!resolvedBlock) {
356
- return {};
357
- }
358
- if (!opts.forceInlineBlocks) {
359
- return {
360
- $ref: `#/definitions/${resolvedBlock.interfaceName ?? resolvedBlock.slug}`
361
- };
362
- }
363
- block = resolvedBlock;
353
+ oneOf: (field.blockReferences ?? field.blocks).map((blockOrReference)=>{
354
+ const block = typeof blockOrReference === 'string' ? config?.blocks?.find((b)=>b.slug === blockOrReference) : blockOrReference;
355
+ if (!block) {
356
+ return {};
364
357
  }
365
358
  const blockFieldSchemas = fieldsToJSONSchema(collectionIDFieldTypes, block.flattenedFields, interfaceNameDefinitions, config, i18n, opts);
366
359
  const blockSchema = {
@@ -377,13 +370,9 @@ export function fieldsToJSONSchema(/**
377
370
  ...blockFieldSchemas.required
378
371
  ]
379
372
  };
380
- if (!opts.forceInlineBlocks && block.interfaceName) {
381
- interfaceNameDefinitions.set(block.interfaceName, blockSchema);
382
- return {
383
- $ref: `#/definitions/${block.interfaceName}`
384
- };
385
- }
386
- return blockSchema;
373
+ return opts.forceInlineBlocks ? blockSchema : {
374
+ $ref: `#/$defs/${registerBlockInterface(block, blockSchema, interfaceNameDefinitions)}`
375
+ };
387
376
  })
388
377
  } : {}
389
378
  };
@@ -420,7 +409,7 @@ export function fieldsToJSONSchema(/**
420
409
  if (field.interfaceName) {
421
410
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
422
411
  fieldSchema = {
423
- $ref: `#/definitions/${field.interfaceName}`
412
+ $ref: `#/$defs/${field.interfaceName}`
424
413
  };
425
414
  }
426
415
  }
@@ -444,7 +433,7 @@ export function fieldsToJSONSchema(/**
444
433
  type: collectionIDFieldTypes[collection]
445
434
  },
446
435
  {
447
- $ref: `#/definitions/${collection}`
436
+ $ref: `#/$defs/${collection}`
448
437
  }
449
438
  ]
450
439
  }
@@ -462,7 +451,7 @@ export function fieldsToJSONSchema(/**
462
451
  type: collectionIDFieldTypes[field.collection]
463
452
  },
464
453
  {
465
- $ref: `#/definitions/${field.collection}`
454
+ $ref: `#/$defs/${field.collection}`
466
455
  }
467
456
  ]
468
457
  };
@@ -547,7 +536,7 @@ export function fieldsToJSONSchema(/**
547
536
  if (field.interfaceName) {
548
537
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
549
538
  fieldSchema = {
550
- $ref: `#/definitions/${field.interfaceName}`
539
+ $ref: `#/$defs/${field.interfaceName}`
551
540
  };
552
541
  }
553
542
  break;
@@ -575,7 +564,7 @@ export function fieldsToJSONSchema(/**
575
564
  type: collectionIDFieldTypes[relation]
576
565
  },
577
566
  {
578
- $ref: `#/definitions/${relation}`
567
+ $ref: `#/$defs/${relation}`
579
568
  }
580
569
  ]
581
570
  }
@@ -605,7 +594,7 @@ export function fieldsToJSONSchema(/**
605
594
  type: collectionIDFieldTypes[relation]
606
595
  },
607
596
  {
608
- $ref: `#/definitions/${relation}`
597
+ $ref: `#/$defs/${relation}`
609
598
  }
610
599
  ]
611
600
  }
@@ -628,7 +617,7 @@ export function fieldsToJSONSchema(/**
628
617
  type: collectionIDFieldTypes[field.relationTo]
629
618
  },
630
619
  {
631
- $ref: `#/definitions/${field.relationTo}`
620
+ $ref: `#/$defs/${field.relationTo}`
632
621
  }
633
622
  ]
634
623
  }
@@ -641,7 +630,7 @@ export function fieldsToJSONSchema(/**
641
630
  type: withNullableJSONSchemaType(collectionIDFieldTypes[field.relationTo], isRequired)
642
631
  },
643
632
  {
644
- $ref: `#/definitions/${field.relationTo}`
633
+ $ref: `#/$defs/${field.relationTo}`
645
634
  }
646
635
  ]
647
636
  };
@@ -657,10 +646,10 @@ export function fieldsToJSONSchema(/**
657
646
  if (typeof field.editor === 'function') {
658
647
  throw new Error('Attempted to access unsanitized rich text editor.');
659
648
  }
660
- if (field.editor.outputSchema) {
649
+ if (field.editor.jsonSchema) {
661
650
  fieldSchema = {
662
651
  ...baseFieldSchema,
663
- ...field.editor.outputSchema({
652
+ ...field.editor.jsonSchema({
664
653
  collectionIDFieldTypes,
665
654
  config,
666
655
  field,
@@ -694,7 +683,7 @@ export function fieldsToJSONSchema(/**
694
683
  // only if the field's options match the global config
695
684
  if (isTimezoneField && hasMatchingGlobalTimezones) {
696
685
  fieldSchema = {
697
- $ref: `#/definitions/supportedTimezones`
686
+ $ref: `#/$defs/supportedTimezones`
698
687
  };
699
688
  } else {
700
689
  if (field.hasMany) {
@@ -721,7 +710,7 @@ export function fieldsToJSONSchema(/**
721
710
  if (field.interfaceName) {
722
711
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
723
712
  fieldSchema = {
724
- $ref: `#/definitions/${field.interfaceName}`
713
+ $ref: `#/$defs/${field.interfaceName}`
725
714
  };
726
715
  }
727
716
  break;
@@ -739,7 +728,7 @@ export function fieldsToJSONSchema(/**
739
728
  if (field.interfaceName) {
740
729
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
741
730
  fieldSchema = {
742
- $ref: `#/definitions/${field.interfaceName}`
731
+ $ref: `#/$defs/${field.interfaceName}`
743
732
  };
744
733
  }
745
734
  break;
@@ -765,8 +754,8 @@ export function fieldsToJSONSchema(/**
765
754
  break;
766
755
  }
767
756
  }
768
- if ('typescriptSchema' in field && field?.typescriptSchema?.length) {
769
- for (const schema of field.typescriptSchema){
757
+ if ('jsonSchema' in field && field?.jsonSchema?.length) {
758
+ for (const schema of field.jsonSchema){
770
759
  fieldSchema = schema({
771
760
  jsonSchema: fieldSchema
772
761
  });
@@ -886,7 +875,7 @@ export function fieldsToSelectJSONSchema({ config, fields, interfaceNameDefiniti
886
875
  const definition = `${field.interfaceName}_select`;
887
876
  interfaceNameDefinitions.set(definition, fieldSchema);
888
877
  fieldSchema = {
889
- $ref: `#/definitions/${definition}`
878
+ $ref: `#/$defs/${definition}`
890
879
  };
891
880
  }
892
881
  schema.properties[field.name] = {
@@ -919,7 +908,7 @@ export function fieldsToSelectJSONSchema({ config, fields, interfaceNameDefiniti
919
908
  const definition = `${block.interfaceName}_select`;
920
909
  interfaceNameDefinitions.set(definition, blockSchema);
921
910
  blockSchema = {
922
- $ref: `#/definitions/${definition}`
911
+ $ref: `#/$defs/${definition}`
923
912
  };
924
913
  }
925
914
  blocksSchema.properties[block.slug] = {
@@ -1121,7 +1110,7 @@ function generateAuthOperationSchemas(collections) {
1121
1110
  const properties = collections.reduce((acc, collection)=>{
1122
1111
  if (collection.auth) {
1123
1112
  acc[collection.slug] = {
1124
- $ref: `#/definitions/auth/${collection.slug}`
1113
+ $ref: `#/$defs/auth/${collection.slug}`
1125
1114
  };
1126
1115
  }
1127
1116
  return acc;
@@ -1133,10 +1122,41 @@ function generateAuthOperationSchemas(collections) {
1133
1122
  required: Object.keys(properties)
1134
1123
  };
1135
1124
  }
1125
+ const hashBlockSchema = (schema)=>createHash('sha256').update(JSON.stringify(schema)).digest('hex').slice(0, 8).toUpperCase();
1126
+ /**
1127
+ * Registers a block's schema as a top-level definition and returns its name.
1128
+ *
1129
+ * The name is the block's `interfaceName`, or a PascalCase form of its slug. If a different
1130
+ * block already uses that name, this one gets a content-hash suffix (`Hero_3F2A1B0C`) so the
1131
+ * two don't overwrite each other. Registering the same block shape again reuses its name.
1132
+ */ function registerBlockInterface(block, blockSchema, interfaceNameDefinitions) {
1133
+ const baseName = block.interfaceName ?? toWords(block.slug, true);
1134
+ const existing = interfaceNameDefinitions.get(baseName);
1135
+ // Use the clean name if it is free, or if the block sets an explicit interfaceName.
1136
+ if (!existing || block.interfaceName) {
1137
+ interfaceNameDefinitions.set(baseName, blockSchema);
1138
+ return baseName;
1139
+ }
1140
+ const hash = hashBlockSchema(blockSchema);
1141
+ // The same block shape is already registered under this name, so reuse it.
1142
+ if (hashBlockSchema(existing) === hash) {
1143
+ return baseName;
1144
+ }
1145
+ // A different block already owns the clean name. Disambiguate this one with its hash.
1146
+ blockSchema.description = `Multiple blocks resolve to the \`${baseName}\` interface with different fields, so a content hash is appended to keep the generated types stable and unambiguous. Set a unique \`interfaceName\` on the block to choose the name yourself. See https://payloadcms.com/docs/typescript/generating-types#block-interface-name-collisions`;
1147
+ const uniqueName = `${baseName}_${hash}`;
1148
+ interfaceNameDefinitions.set(uniqueName, blockSchema);
1149
+ return uniqueName;
1150
+ }
1136
1151
  /**
1137
1152
  * This is used for generating the TypeScript types (payload-types.ts) with the payload generate:types command.
1138
1153
  */ export function configToJSONSchema(config, defaultIDType, i18n, opts = {}) {
1139
- // a mutable Map to store custom top-level `interfaceName` types. Fields with an `interfaceName` property will be moved to the top-level definitions here
1154
+ // a mutable Map of top-level definitions in the generated JSON Schema.
1155
+ // - `array`/`group`/named-`tab` fields are registered here when they set
1156
+ // `interfaceName` (otherwise they stay inline).
1157
+ // - `block` configs always register here via `registerBlockInterface`, keyed by
1158
+ // `block.interfaceName` if set, else a PascalCase form of the slug (with a
1159
+ // content-hash suffix when two different blocks resolve to the same name).
1140
1160
  const interfaceNameDefinitions = new Map();
1141
1161
  // Used for relationship fields, to determine whether to use a string or number type for the ID.
1142
1162
  const collectionIDFieldTypes = getCollectionIDFieldTypes({
@@ -1214,23 +1234,21 @@ function generateAuthOperationSchemas(collections) {
1214
1234
  ...blockFieldSchemas.required
1215
1235
  ]
1216
1236
  };
1217
- const interfaceName = block.interfaceName ?? block.slug;
1218
- interfaceNameDefinitions.set(interfaceName, blockSchema);
1219
1237
  blocksDefinition.properties[block.slug] = {
1220
- $ref: `#/definitions/${interfaceName}`
1238
+ $ref: `#/$defs/${registerBlockInterface(block, blockSchema, interfaceNameDefinitions)}`
1221
1239
  };
1222
1240
  blocksDefinition.required.push(block.slug);
1223
1241
  }
1224
1242
  }
1225
1243
  let jsonSchema = {
1226
- additionalProperties: false,
1227
- definitions: {
1244
+ $defs: {
1228
1245
  supportedTimezones: timezoneDefinitions,
1229
1246
  ...entityDefinitions,
1230
1247
  ...widgetSchemas.definitions,
1231
1248
  ...Object.fromEntries(interfaceNameDefinitions),
1232
1249
  ...authOperationDefinitions
1233
1250
  },
1251
+ additionalProperties: false,
1234
1252
  // These properties here will be very simple, as all the complexity is in the definitions. These are just the properties for the top-level `Config` type
1235
1253
  type: 'object',
1236
1254
  properties: {
@@ -1275,7 +1293,7 @@ function generateAuthOperationSchemas(collections) {
1275
1293
  };
1276
1294
  if (jobsSchemas.definitions?.size) {
1277
1295
  for (const [key, value] of jobsSchemas.definitions){
1278
- jsonSchema.definitions[key] = value;
1296
+ jsonSchema.$defs[key] = value;
1279
1297
  }
1280
1298
  }
1281
1299
  if (jobsSchemas.properties) {