payload 4.0.0-internal.5b1e7cd → 4.0.0-internal.5f0cd13

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 (641) hide show
  1. package/dist/admin/RichText.d.ts +3 -16
  2. package/dist/admin/RichText.d.ts.map +1 -1
  3. package/dist/admin/RichText.js.map +1 -1
  4. package/dist/admin/adapters/cookies.d.ts +21 -0
  5. package/dist/admin/adapters/cookies.d.ts.map +1 -0
  6. package/dist/admin/adapters/cookies.js +3 -0
  7. package/dist/admin/adapters/cookies.js.map +1 -0
  8. package/dist/admin/adapters/index.d.ts +4 -0
  9. package/dist/admin/adapters/index.d.ts.map +1 -0
  10. package/dist/admin/adapters/index.js +3 -0
  11. package/dist/admin/adapters/index.js.map +1 -0
  12. package/dist/admin/adapters/router.d.ts +56 -0
  13. package/dist/admin/adapters/router.d.ts.map +1 -0
  14. package/dist/admin/adapters/router.js +3 -0
  15. package/dist/admin/adapters/router.js.map +1 -0
  16. package/dist/admin/adapters/server.d.ts +23 -0
  17. package/dist/admin/adapters/server.d.ts.map +1 -0
  18. package/dist/admin/adapters/server.js +6 -0
  19. package/dist/admin/adapters/server.js.map +1 -0
  20. package/dist/admin/elements/Nav.d.ts +13 -0
  21. package/dist/admin/elements/Nav.d.ts.map +1 -1
  22. package/dist/admin/elements/Nav.js.map +1 -1
  23. package/dist/admin/elements/Table.d.ts +1 -0
  24. package/dist/admin/elements/Table.d.ts.map +1 -1
  25. package/dist/admin/elements/Table.js.map +1 -1
  26. package/dist/admin/functions/index.d.ts +1 -38
  27. package/dist/admin/functions/index.d.ts.map +1 -1
  28. package/dist/admin/functions/index.js.map +1 -1
  29. package/dist/admin/types.d.ts +5 -4
  30. package/dist/admin/types.d.ts.map +1 -1
  31. package/dist/admin/types.js.map +1 -1
  32. package/dist/admin/views/hierarchyList.d.ts +10 -0
  33. package/dist/admin/views/hierarchyList.d.ts.map +1 -0
  34. package/dist/admin/views/hierarchyList.js +3 -0
  35. package/dist/admin/views/hierarchyList.js.map +1 -0
  36. package/dist/admin/views/index.d.ts +1 -3
  37. package/dist/admin/views/index.d.ts.map +1 -1
  38. package/dist/admin/views/index.js.map +1 -1
  39. package/dist/admin/views/list.d.ts +47 -2
  40. package/dist/admin/views/list.d.ts.map +1 -1
  41. package/dist/admin/views/list.js.map +1 -1
  42. package/dist/auth/cookies.d.ts.map +1 -1
  43. package/dist/auth/defaultAccess.d.ts.map +1 -1
  44. package/dist/auth/ensureUsernameOrEmail.d.ts.map +1 -1
  45. package/dist/auth/executeAccess.d.ts.map +1 -1
  46. package/dist/auth/executeAuthStrategies.d.ts.map +1 -1
  47. package/dist/auth/extractAccessFromPermission.d.ts.map +1 -1
  48. package/dist/auth/extractJWT.d.ts.map +1 -1
  49. package/dist/auth/getAuthFields.d.ts.map +1 -1
  50. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  51. package/dist/auth/getLoginOptions.d.ts.map +1 -1
  52. package/dist/auth/isUserLocked.d.ts.map +1 -1
  53. package/dist/auth/jwt.d.ts.map +1 -1
  54. package/dist/auth/operations/access.d.ts.map +1 -1
  55. package/dist/auth/operations/auth.d.ts.map +1 -1
  56. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  57. package/dist/auth/operations/init.d.ts.map +1 -1
  58. package/dist/auth/operations/local/auth.d.ts.map +1 -1
  59. package/dist/auth/operations/login.d.ts.map +1 -1
  60. package/dist/auth/operations/logout.d.ts.map +1 -1
  61. package/dist/auth/operations/me.d.ts.map +1 -1
  62. package/dist/auth/operations/refresh.d.ts.map +1 -1
  63. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  64. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  65. package/dist/auth/operations/unlock.d.ts.map +1 -1
  66. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  67. package/dist/auth/sessions.d.ts.map +1 -1
  68. package/dist/auth/strategies/apiKey.d.ts.map +1 -1
  69. package/dist/auth/strategies/apiKey.js +6 -17
  70. package/dist/auth/strategies/apiKey.js.map +1 -1
  71. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  72. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
  73. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
  74. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  75. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  76. package/dist/bin/generateImportMap/iterateCollections.d.ts.map +1 -1
  77. package/dist/bin/generateImportMap/iterateCollections.js +1 -0
  78. package/dist/bin/generateImportMap/iterateCollections.js.map +1 -1
  79. package/dist/bin/generateImportMap/iterateConfig.d.ts.map +1 -1
  80. package/dist/bin/generateImportMap/iterateConfig.js +7 -0
  81. package/dist/bin/generateImportMap/iterateConfig.js.map +1 -1
  82. package/dist/bin/generateImportMap/iterateFields.d.ts.map +1 -1
  83. package/dist/bin/generateImportMap/iterateFields.js +4 -1
  84. package/dist/bin/generateImportMap/iterateFields.js.map +1 -1
  85. package/dist/bin/generateImportMap/iterateGlobals.d.ts.map +1 -1
  86. package/dist/bin/generateImportMap/iterateGlobals.js +20 -8
  87. package/dist/bin/generateImportMap/iterateGlobals.js.map +1 -1
  88. package/dist/bin/generateImportMap/utilities/getFromImportMap.d.ts.map +1 -1
  89. package/dist/bin/generateTypes.d.ts.map +1 -1
  90. package/dist/bin/generateTypes.js +7 -1
  91. package/dist/bin/generateTypes.js.map +1 -1
  92. package/dist/bin/index.d.ts.map +1 -1
  93. package/dist/bin/index.js +1 -3
  94. package/dist/bin/index.js.map +1 -1
  95. package/dist/bin/migrate.d.ts.map +1 -1
  96. package/dist/collections/config/client.d.ts +4 -2
  97. package/dist/collections/config/client.d.ts.map +1 -1
  98. package/dist/collections/config/client.js +13 -1
  99. package/dist/collections/config/client.js.map +1 -1
  100. package/dist/collections/config/defaults.d.ts.map +1 -1
  101. package/dist/collections/config/defaults.js +1 -1
  102. package/dist/collections/config/defaults.js.map +1 -1
  103. package/dist/collections/config/sanitize.d.ts +10 -1
  104. package/dist/collections/config/sanitize.d.ts.map +1 -1
  105. package/dist/collections/config/sanitize.js +51 -10
  106. package/dist/collections/config/sanitize.js.map +1 -1
  107. package/dist/collections/config/sanitizeCompoundIndexes.d.ts.map +1 -1
  108. package/dist/collections/config/types.d.ts +76 -91
  109. package/dist/collections/config/types.d.ts.map +1 -1
  110. package/dist/collections/config/types.js.map +1 -1
  111. package/dist/collections/config/useAsTitle.d.ts.map +1 -1
  112. package/dist/collections/dataloader.d.ts.map +1 -1
  113. package/dist/collections/operations/count.d.ts.map +1 -1
  114. package/dist/collections/operations/countVersions.d.ts.map +1 -1
  115. package/dist/collections/operations/create.d.ts.map +1 -1
  116. package/dist/collections/operations/create.js +24 -19
  117. package/dist/collections/operations/create.js.map +1 -1
  118. package/dist/collections/operations/delete.d.ts.map +1 -1
  119. package/dist/collections/operations/delete.js +7 -2
  120. package/dist/collections/operations/delete.js.map +1 -1
  121. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  122. package/dist/collections/operations/deleteByID.js +7 -2
  123. package/dist/collections/operations/deleteByID.js.map +1 -1
  124. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  125. package/dist/collections/operations/find.d.ts.map +1 -1
  126. package/dist/collections/operations/find.js +7 -2
  127. package/dist/collections/operations/find.js.map +1 -1
  128. package/dist/collections/operations/findByID.d.ts.map +1 -1
  129. package/dist/collections/operations/findByID.js +10 -5
  130. package/dist/collections/operations/findByID.js.map +1 -1
  131. package/dist/collections/operations/findDistinct.d.ts.map +1 -1
  132. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  133. package/dist/collections/operations/findVersionByID.js +6 -4
  134. package/dist/collections/operations/findVersionByID.js.map +1 -1
  135. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  136. package/dist/collections/operations/findVersions.js +6 -4
  137. package/dist/collections/operations/findVersions.js.map +1 -1
  138. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  139. package/dist/collections/operations/restoreVersion.js +7 -2
  140. package/dist/collections/operations/restoreVersion.js.map +1 -1
  141. package/dist/collections/operations/update.d.ts.map +1 -1
  142. package/dist/collections/operations/update.js +7 -2
  143. package/dist/collections/operations/update.js.map +1 -1
  144. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  145. package/dist/collections/operations/updateByID.js +7 -2
  146. package/dist/collections/operations/updateByID.js.map +1 -1
  147. package/dist/collections/operations/utilities/buildAfterOperation.d.ts.map +1 -1
  148. package/dist/collections/operations/utilities/sanitizeSortQuery.d.ts.map +1 -1
  149. package/dist/collections/operations/utilities/update.d.ts.map +1 -1
  150. package/dist/collections/operations/utilities/update.js +5 -4
  151. package/dist/collections/operations/utilities/update.js.map +1 -1
  152. package/dist/config/build.d.ts.map +1 -1
  153. package/dist/config/build.js +8 -0
  154. package/dist/config/build.js.map +1 -1
  155. package/dist/config/client.d.ts +1 -1
  156. package/dist/config/client.d.ts.map +1 -1
  157. package/dist/config/client.js +2 -11
  158. package/dist/config/client.js.map +1 -1
  159. package/dist/config/defaults.d.ts.map +1 -1
  160. package/dist/config/defaults.js +0 -15
  161. package/dist/config/defaults.js.map +1 -1
  162. package/dist/config/orderable/index.d.ts.map +1 -1
  163. package/dist/config/orderable/index.js +0 -4
  164. package/dist/config/orderable/index.js.map +1 -1
  165. package/dist/config/sanitize.d.ts.map +1 -1
  166. package/dist/config/sanitize.js +6 -53
  167. package/dist/config/sanitize.js.map +1 -1
  168. package/dist/config/types.d.ts +188 -32
  169. package/dist/config/types.d.ts.map +1 -1
  170. package/dist/config/types.js.map +1 -1
  171. package/dist/database/combineQueries.d.ts.map +1 -1
  172. package/dist/database/migrations/findMigrationDir.d.ts.map +1 -1
  173. package/dist/database/migrations/getPredefinedMigration.d.ts.map +1 -1
  174. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  175. package/dist/database/migrations/templates/localizeStatus.d.ts.map +1 -1
  176. package/dist/database/migrations/writeMigrationIndex.d.ts.map +1 -1
  177. package/dist/database/sanitizeJoinQuery.d.ts.map +1 -1
  178. package/dist/database/sanitizeWhereQuery.d.ts.map +1 -1
  179. package/dist/duplicateDocument/index.d.ts.map +1 -1
  180. package/dist/email/getStringifiedToAddress.d.ts.map +1 -1
  181. package/dist/exports/shared.d.ts +6 -3
  182. package/dist/exports/shared.d.ts.map +1 -1
  183. package/dist/exports/shared.js +4 -2
  184. package/dist/exports/shared.js.map +1 -1
  185. package/dist/fields/baseFields/slug/countVersions.d.ts.map +1 -1
  186. package/dist/fields/baseFields/slug/generateSlug.d.ts.map +1 -1
  187. package/dist/fields/baseFields/slug/index.d.ts.map +1 -1
  188. package/dist/fields/baseFields/slug/index.js +7 -5
  189. package/dist/fields/baseFields/slug/index.js.map +1 -1
  190. package/dist/fields/config/client.d.ts +1 -1
  191. package/dist/fields/config/client.d.ts.map +1 -1
  192. package/dist/fields/config/client.js +4 -3
  193. package/dist/fields/config/client.js.map +1 -1
  194. package/dist/fields/config/sanitize.d.ts.map +1 -1
  195. package/dist/fields/config/sanitize.js +13 -20
  196. package/dist/fields/config/sanitize.js.map +1 -1
  197. package/dist/fields/config/sanitizeJoinField.d.ts.map +1 -1
  198. package/dist/fields/config/sanitizeJoinField.js +3 -0
  199. package/dist/fields/config/sanitizeJoinField.js.map +1 -1
  200. package/dist/fields/config/types.d.ts +44 -118
  201. package/dist/fields/config/types.d.ts.map +1 -1
  202. package/dist/fields/config/types.js +12 -2
  203. package/dist/fields/config/types.js.map +1 -1
  204. package/dist/fields/getDefaultValue.d.ts.map +1 -1
  205. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  206. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  207. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  208. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  209. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  210. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  211. package/dist/fields/hooks/afterRead/virtualFieldPopulationPromise.d.ts.map +1 -1
  212. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.d.ts.map +1 -1
  213. package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts.map +1 -1
  214. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  215. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  216. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  217. package/dist/fields/hooks/beforeDuplicate/index.d.ts.map +1 -1
  218. package/dist/fields/hooks/beforeDuplicate/promise.d.ts.map +1 -1
  219. package/dist/fields/hooks/beforeDuplicate/traverseFields.d.ts.map +1 -1
  220. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  221. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  222. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  223. package/dist/fields/isFieldDisabled.d.ts +12 -0
  224. package/dist/fields/isFieldDisabled.d.ts.map +1 -0
  225. package/dist/fields/isFieldDisabled.js +15 -0
  226. package/dist/fields/isFieldDisabled.js.map +1 -0
  227. package/dist/fields/isFieldDisabled.spec.js +134 -0
  228. package/dist/fields/isFieldDisabled.spec.js.map +1 -0
  229. package/dist/fields/mergeBaseFields.d.ts.map +1 -1
  230. package/dist/fields/setDefaultBeforeDuplicate.d.ts.map +1 -1
  231. package/dist/fields/validations.js +1 -1
  232. package/dist/fields/validations.js.map +1 -1
  233. package/dist/globals/config/client.d.ts +1 -1
  234. package/dist/globals/config/client.d.ts.map +1 -1
  235. package/dist/globals/config/client.js +2 -1
  236. package/dist/globals/config/client.js.map +1 -1
  237. package/dist/globals/config/sanitize.d.ts +6 -1
  238. package/dist/globals/config/sanitize.d.ts.map +1 -1
  239. package/dist/globals/config/sanitize.js +6 -2
  240. package/dist/globals/config/sanitize.js.map +1 -1
  241. package/dist/globals/config/types.d.ts +4 -57
  242. package/dist/globals/config/types.d.ts.map +1 -1
  243. package/dist/globals/config/types.js.map +1 -1
  244. package/dist/globals/operations/countGlobalVersions.d.ts.map +1 -1
  245. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  246. package/dist/globals/operations/findOne.d.ts.map +1 -1
  247. package/dist/globals/operations/findOne.js +7 -2
  248. package/dist/globals/operations/findOne.js.map +1 -1
  249. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  250. package/dist/globals/operations/findVersionByID.js +6 -4
  251. package/dist/globals/operations/findVersionByID.js.map +1 -1
  252. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  253. package/dist/globals/operations/findVersions.js +6 -4
  254. package/dist/globals/operations/findVersions.js.map +1 -1
  255. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  256. package/dist/globals/operations/update.d.ts.map +1 -1
  257. package/dist/globals/operations/update.js +7 -2
  258. package/dist/globals/operations/update.js.map +1 -1
  259. package/dist/hierarchy/addHierarchyToCollection.d.ts +9 -0
  260. package/dist/hierarchy/addHierarchyToCollection.d.ts.map +1 -0
  261. package/dist/hierarchy/addHierarchyToCollection.js +76 -0
  262. package/dist/hierarchy/addHierarchyToCollection.js.map +1 -0
  263. package/dist/hierarchy/buildParentField.d.ts +11 -0
  264. package/dist/hierarchy/buildParentField.d.ts.map +1 -0
  265. package/dist/hierarchy/buildParentField.js +42 -0
  266. package/dist/hierarchy/buildParentField.js.map +1 -0
  267. package/dist/hierarchy/constants.d.ts +15 -0
  268. package/dist/hierarchy/constants.d.ts.map +1 -0
  269. package/dist/hierarchy/constants.js +11 -0
  270. package/dist/hierarchy/constants.js.map +1 -0
  271. package/dist/hierarchy/createFolderField.d.ts +39 -0
  272. package/dist/hierarchy/createFolderField.d.ts.map +1 -0
  273. package/dist/hierarchy/createFolderField.js +54 -0
  274. package/dist/hierarchy/createFolderField.js.map +1 -0
  275. package/dist/hierarchy/createTagField.d.ts +44 -0
  276. package/dist/hierarchy/createTagField.d.ts.map +1 -0
  277. package/dist/hierarchy/createTagField.js +48 -0
  278. package/dist/hierarchy/createTagField.js.map +1 -0
  279. package/dist/hierarchy/getInitialTreeData.d.ts +27 -0
  280. package/dist/hierarchy/getInitialTreeData.d.ts.map +1 -0
  281. package/dist/hierarchy/getInitialTreeData.js +125 -0
  282. package/dist/hierarchy/getInitialTreeData.js.map +1 -0
  283. package/dist/hierarchy/hooks/collectionAfterDelete.d.ts +14 -0
  284. package/dist/hierarchy/hooks/collectionAfterDelete.d.ts.map +1 -0
  285. package/dist/hierarchy/hooks/collectionAfterDelete.js +21 -0
  286. package/dist/hierarchy/hooks/collectionAfterDelete.js.map +1 -0
  287. package/dist/hierarchy/hooks/collectionAfterRead.d.ts +27 -0
  288. package/dist/hierarchy/hooks/collectionAfterRead.d.ts.map +1 -0
  289. package/dist/hierarchy/hooks/collectionAfterRead.js +72 -0
  290. package/dist/hierarchy/hooks/collectionAfterRead.js.map +1 -0
  291. package/dist/hierarchy/hooks/collectionBeforeChange.d.ts +19 -0
  292. package/dist/hierarchy/hooks/collectionBeforeChange.d.ts.map +1 -0
  293. package/dist/hierarchy/hooks/collectionBeforeChange.js +90 -0
  294. package/dist/hierarchy/hooks/collectionBeforeChange.js.map +1 -0
  295. package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts +15 -0
  296. package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts.map +1 -0
  297. package/dist/hierarchy/hooks/collectionBeforeDelete.js +20 -0
  298. package/dist/hierarchy/hooks/collectionBeforeDelete.js.map +1 -0
  299. package/dist/hierarchy/hooks/collectionBeforeOperation.d.ts +33 -0
  300. package/dist/hierarchy/hooks/collectionBeforeOperation.d.ts.map +1 -0
  301. package/dist/hierarchy/hooks/collectionBeforeOperation.js +66 -0
  302. package/dist/hierarchy/hooks/collectionBeforeOperation.js.map +1 -0
  303. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts +8 -0
  304. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts.map +1 -0
  305. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js +108 -0
  306. package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js.map +1 -0
  307. package/dist/hierarchy/injectHierarchyButton.d.ts +14 -0
  308. package/dist/hierarchy/injectHierarchyButton.d.ts.map +1 -0
  309. package/dist/hierarchy/injectHierarchyButton.js +37 -0
  310. package/dist/hierarchy/injectHierarchyButton.js.map +1 -0
  311. package/dist/hierarchy/presets.d.ts +13 -0
  312. package/dist/hierarchy/presets.d.ts.map +1 -0
  313. package/dist/hierarchy/presets.js +52 -0
  314. package/dist/hierarchy/presets.js.map +1 -0
  315. package/dist/hierarchy/resolveHierarchyCollections.d.ts +23 -0
  316. package/dist/hierarchy/resolveHierarchyCollections.d.ts.map +1 -0
  317. package/dist/hierarchy/resolveHierarchyCollections.js +321 -0
  318. package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -0
  319. package/dist/hierarchy/sanitizeHierarchyCollection.d.ts +14 -0
  320. package/dist/hierarchy/sanitizeHierarchyCollection.d.ts.map +1 -0
  321. package/dist/hierarchy/sanitizeHierarchyCollection.js +119 -0
  322. package/dist/hierarchy/sanitizeHierarchyCollection.js.map +1 -0
  323. package/dist/hierarchy/types.d.ts +162 -0
  324. package/dist/hierarchy/types.d.ts.map +1 -0
  325. package/dist/hierarchy/types.js +6 -0
  326. package/dist/hierarchy/types.js.map +1 -0
  327. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.d.ts +77 -0
  328. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.d.ts.map +1 -0
  329. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.js +77 -0
  330. package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.js.map +1 -0
  331. package/dist/hierarchy/utils/computePaths.d.ts +31 -0
  332. package/dist/hierarchy/utils/computePaths.d.ts.map +1 -0
  333. package/dist/hierarchy/utils/computePaths.js +445 -0
  334. package/dist/hierarchy/utils/computePaths.js.map +1 -0
  335. package/dist/hierarchy/utils/findUseAsTitle.d.ts +14 -0
  336. package/dist/hierarchy/utils/findUseAsTitle.d.ts.map +1 -0
  337. package/dist/hierarchy/utils/findUseAsTitle.js +89 -0
  338. package/dist/hierarchy/utils/findUseAsTitle.js.map +1 -0
  339. package/dist/hierarchy/utils/getAncestors.d.ts +34 -0
  340. package/dist/hierarchy/utils/getAncestors.d.ts.map +1 -0
  341. package/dist/hierarchy/utils/getAncestors.js +94 -0
  342. package/dist/hierarchy/utils/getAncestors.js.map +1 -0
  343. package/dist/hierarchy/utils/getLocalizedValue.d.ts +30 -0
  344. package/dist/hierarchy/utils/getLocalizedValue.d.ts.map +1 -0
  345. package/dist/hierarchy/utils/getLocalizedValue.js +46 -0
  346. package/dist/hierarchy/utils/getLocalizedValue.js.map +1 -0
  347. package/dist/hierarchy/utils/getLocalizedValue.spec.js +250 -0
  348. package/dist/hierarchy/utils/getLocalizedValue.spec.js.map +1 -0
  349. package/dist/index.bundled.d.ts +1017 -672
  350. package/dist/index.d.ts +32 -10
  351. package/dist/index.d.ts.map +1 -1
  352. package/dist/index.js +13 -8
  353. package/dist/index.js.map +1 -1
  354. package/dist/kv/adapters/DatabaseKVAdapter.d.ts.map +1 -1
  355. package/dist/locked-documents/config.d.ts.map +1 -1
  356. package/dist/preferences/config.d.ts.map +1 -1
  357. package/dist/preferences/deleteUserPreferences.d.ts.map +1 -1
  358. package/dist/preferences/keys.d.ts +8 -4
  359. package/dist/preferences/keys.d.ts.map +1 -1
  360. package/dist/preferences/keys.js +7 -4
  361. package/dist/preferences/keys.js.map +1 -1
  362. package/dist/preferences/types.d.ts +1 -1
  363. package/dist/preferences/types.d.ts.map +1 -1
  364. package/dist/preferences/types.js.map +1 -1
  365. package/dist/query-presets/access.d.ts.map +1 -1
  366. package/dist/query-presets/config.d.ts.map +1 -1
  367. package/dist/query-presets/config.js +11 -7
  368. package/dist/query-presets/config.js.map +1 -1
  369. package/dist/query-presets/constraints.d.ts.map +1 -1
  370. package/dist/query-presets/constraints.js +1 -1
  371. package/dist/query-presets/constraints.js.map +1 -1
  372. package/dist/queues/config/generateJobsJSONSchemas.d.ts +1 -1
  373. package/dist/queues/config/generateJobsJSONSchemas.d.ts.map +1 -1
  374. package/dist/queues/config/generateJobsJSONSchemas.js +31 -10
  375. package/dist/queues/config/generateJobsJSONSchemas.js.map +1 -1
  376. package/dist/queues/config/types/index.d.ts +0 -21
  377. package/dist/queues/config/types/index.d.ts.map +1 -1
  378. package/dist/queues/config/types/index.js.map +1 -1
  379. package/dist/queues/config/types/taskTypes.d.ts +0 -20
  380. package/dist/queues/config/types/taskTypes.d.ts.map +1 -1
  381. package/dist/queues/config/types/taskTypes.js.map +1 -1
  382. package/dist/queues/endpoints/run.d.ts.map +1 -1
  383. package/dist/queues/errors/handleWorkflowError.d.ts.map +1 -1
  384. package/dist/queues/errors/handleWorkflowError.js +9 -1
  385. package/dist/queues/errors/handleWorkflowError.js.map +1 -1
  386. package/dist/queues/localAPI.d.ts.map +1 -1
  387. package/dist/queues/localAPI.js +26 -67
  388. package/dist/queues/localAPI.js.map +1 -1
  389. package/dist/queues/operations/handleSchedules/getQueuesWithSchedules.d.ts.map +1 -1
  390. package/dist/queues/operations/handleSchedules/index.d.ts.map +1 -1
  391. package/dist/queues/operations/handleSchedules/index.js +1 -4
  392. package/dist/queues/operations/handleSchedules/index.js.map +1 -1
  393. package/dist/queues/operations/runJobs/index.d.ts.map +1 -1
  394. package/dist/queues/operations/runJobs/index.js +40 -37
  395. package/dist/queues/operations/runJobs/index.js.map +1 -1
  396. package/dist/queues/operations/runJobs/runJSONJob/index.d.ts.map +1 -1
  397. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.d.ts.map +1 -1
  398. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +3 -22
  399. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
  400. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts.map +1 -1
  401. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js +0 -2
  402. package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js.map +1 -1
  403. package/dist/queues/operations/runJobs/runJob/index.d.ts.map +1 -1
  404. package/dist/queues/utilities/getJobTaskStatus.d.ts.map +1 -1
  405. package/dist/queues/utilities/updateJob.d.ts +1 -3
  406. package/dist/queues/utilities/updateJob.d.ts.map +1 -1
  407. package/dist/queues/utilities/updateJob.js +2 -18
  408. package/dist/queues/utilities/updateJob.js.map +1 -1
  409. package/dist/translations/getLocalI18n.d.ts.map +1 -1
  410. package/dist/types/index.d.ts +54 -5
  411. package/dist/types/index.d.ts.map +1 -1
  412. package/dist/types/index.js.map +1 -1
  413. package/dist/uploads/checkFileAccess.d.ts.map +1 -1
  414. package/dist/uploads/checkFileRestrictions.d.ts.map +1 -1
  415. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  416. package/dist/uploads/endpoints/getFileFromURL.d.ts.map +1 -1
  417. package/dist/uploads/endpoints/getFileFromURL.js +9 -5
  418. package/dist/uploads/endpoints/getFileFromURL.js.map +1 -1
  419. package/dist/uploads/fetchAPI-multipart/isEligibleRequest.d.ts.map +1 -1
  420. package/dist/uploads/fetchAPI-multipart/processNested.d.ts.map +1 -1
  421. package/dist/uploads/fetchAPI-multipart/utilities.d.ts.map +1 -1
  422. package/dist/uploads/fileExists.d.ts.map +1 -1
  423. package/dist/uploads/generateFileData.d.ts.map +1 -1
  424. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  425. package/dist/uploads/getBaseFields.js +24 -70
  426. package/dist/uploads/getBaseFields.js.map +1 -1
  427. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  428. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  429. package/dist/uploads/getFileTypeFallback.d.ts.map +1 -1
  430. package/dist/uploads/getSafeFilename.d.ts +9 -4
  431. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  432. package/dist/uploads/getSafeFilename.js +5 -5
  433. package/dist/uploads/getSafeFilename.js.map +1 -1
  434. package/dist/uploads/image-resizing/createImageSize.d.ts.map +1 -1
  435. package/dist/uploads/image-resizing/generateImageSizeFilename.d.ts.map +1 -1
  436. package/dist/uploads/image-resizing/getImageResizeAction.d.ts.map +1 -1
  437. package/dist/uploads/image-resizing/parseFilename.d.ts.map +1 -1
  438. package/dist/uploads/image-resizing/sanitizeResizeConfig.d.ts.map +1 -1
  439. package/dist/uploads/mimeTypeValidator.d.ts.map +1 -1
  440. package/dist/uploads/safeFetch.d.ts +1 -1
  441. package/dist/uploads/safeFetch.d.ts.map +1 -1
  442. package/dist/uploads/saveBufferToFile.d.ts.map +1 -1
  443. package/dist/uploads/tempFile.d.ts.map +1 -1
  444. package/dist/uploads/types.d.ts +12 -29
  445. package/dist/uploads/types.d.ts.map +1 -1
  446. package/dist/uploads/types.js.map +1 -1
  447. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  448. package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
  449. package/dist/utilities/addSelectGenericsToGeneretedTypes.d.ts.map +1 -1
  450. package/dist/utilities/appendDateTimezoneSelectFields.d.ts +13 -0
  451. package/dist/utilities/appendDateTimezoneSelectFields.d.ts.map +1 -0
  452. package/dist/utilities/appendDateTimezoneSelectFields.js +47 -0
  453. package/dist/utilities/appendDateTimezoneSelectFields.js.map +1 -0
  454. package/dist/utilities/appendNonTrashedFilter.d.ts.map +1 -1
  455. package/dist/utilities/appendUploadSelectFields.d.ts.map +1 -1
  456. package/dist/utilities/appendUploadSelectFields.js +3 -0
  457. package/dist/utilities/appendUploadSelectFields.js.map +1 -1
  458. package/dist/utilities/canAccessAdmin.d.ts.map +1 -1
  459. package/dist/utilities/checkDocumentLockStatus.d.ts.map +1 -1
  460. package/dist/utilities/configToJSONSchema.d.ts +34 -16
  461. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  462. package/dist/utilities/configToJSONSchema.js +127 -52
  463. package/dist/utilities/configToJSONSchema.js.map +1 -1
  464. package/dist/utilities/configToJSONSchema.spec.js +94 -65
  465. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  466. package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
  467. package/dist/utilities/deepCopyObject.d.ts.map +1 -1
  468. package/dist/utilities/dependencies/resolveFrom.d.ts.map +1 -1
  469. package/dist/utilities/escapeRegExp.d.ts.map +1 -1
  470. package/dist/utilities/extractID.d.ts.map +1 -1
  471. package/dist/utilities/extractID.js +1 -1
  472. package/dist/utilities/extractID.js.map +1 -1
  473. package/dist/utilities/flattenAllFields.d.ts.map +1 -1
  474. package/dist/utilities/formatAdminURL.d.ts +13 -2
  475. package/dist/utilities/formatAdminURL.d.ts.map +1 -1
  476. package/dist/utilities/formatAdminURL.js +3 -15
  477. package/dist/utilities/formatAdminURL.js.map +1 -1
  478. package/dist/utilities/formatAdminURL.spec.js +1 -90
  479. package/dist/utilities/formatAdminURL.spec.js.map +1 -1
  480. package/dist/utilities/formatErrors.d.ts.map +1 -1
  481. package/dist/utilities/formatLabels.d.ts.map +1 -1
  482. package/dist/utilities/getBestFitFromSizes.d.ts.map +1 -1
  483. package/dist/utilities/getBlockSelect.d.ts.map +1 -1
  484. package/dist/utilities/getDataByPath.d.ts.map +1 -1
  485. package/dist/utilities/getEntityPermissions/populateFieldPermissions.d.ts.map +1 -1
  486. package/dist/utilities/getFieldByPath.d.ts.map +1 -1
  487. package/dist/utilities/getFieldPermissions.d.ts.map +1 -1
  488. package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
  489. package/dist/utilities/getRequestEntity.d.ts.map +1 -1
  490. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  491. package/dist/utilities/getRequestOrigin.d.ts.map +1 -1
  492. package/dist/utilities/getSafeRedirect.d.ts.map +1 -1
  493. package/dist/utilities/getSelectMode.d.ts.map +1 -1
  494. package/dist/utilities/getSiblingData.d.ts.map +1 -1
  495. package/dist/utilities/getTranslatedLabel.d.ts.map +1 -1
  496. package/dist/utilities/getVersionsConfig.d.ts.map +1 -1
  497. package/dist/utilities/handleEndpoints.d.ts.map +1 -1
  498. package/dist/utilities/handleEndpoints.js +2 -6
  499. package/dist/utilities/handleEndpoints.js.map +1 -1
  500. package/dist/utilities/headersWithCors.d.ts.map +1 -1
  501. package/dist/utilities/isEntityHidden.d.ts.map +1 -1
  502. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  503. package/dist/utilities/isValidID.d.ts.map +1 -1
  504. package/dist/utilities/logError.d.ts.map +1 -1
  505. package/dist/utilities/logger.d.ts.map +1 -1
  506. package/dist/utilities/mergeHeaders.d.ts.map +1 -1
  507. package/dist/utilities/mergeListSearchAndWhere.d.ts.map +1 -1
  508. package/dist/utilities/optionsAreEqual.d.ts.map +1 -1
  509. package/dist/utilities/parseBooleanString.d.ts.map +1 -1
  510. package/dist/utilities/parseCookies.d.ts.map +1 -1
  511. package/dist/utilities/parseParams/index.d.ts.map +1 -1
  512. package/dist/utilities/profiling.d.ts.map +1 -1
  513. package/dist/utilities/reduceFieldsToValues.d.ts.map +1 -1
  514. package/dist/utilities/resolveSelect.d.ts +16 -0
  515. package/dist/utilities/resolveSelect.d.ts.map +1 -0
  516. package/dist/utilities/resolveSelect.js +19 -0
  517. package/dist/utilities/resolveSelect.js.map +1 -0
  518. package/dist/utilities/routeError.d.ts.map +1 -1
  519. package/dist/utilities/sanitizeFallbackLocale.d.ts.map +1 -1
  520. package/dist/utilities/sanitizeInternalFields.d.ts.map +1 -1
  521. package/dist/utilities/sanitizeJoinParams.d.ts.map +1 -1
  522. package/dist/utilities/sanitizePopulateParam.d.ts.map +1 -1
  523. package/dist/utilities/sanitizeSelect.d.ts +1 -2
  524. package/dist/utilities/sanitizeSelect.d.ts.map +1 -1
  525. package/dist/utilities/sanitizeSelect.js +19 -25
  526. package/dist/utilities/sanitizeSelect.js.map +1 -1
  527. package/dist/utilities/sanitizeSelectParam.d.ts.map +1 -1
  528. package/dist/utilities/sanitizeSortParams.d.ts.map +1 -1
  529. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  530. package/dist/utilities/slugify.d.ts.map +1 -1
  531. package/dist/utilities/stripUnselectedFields.d.ts.map +1 -1
  532. package/dist/utilities/telemetry/events/adminInit.d.ts.map +1 -1
  533. package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
  534. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  535. package/dist/utilities/telemetry/oneWayHash.d.ts.map +1 -1
  536. package/dist/utilities/timestamp.d.ts.map +1 -1
  537. package/dist/utilities/toKebabCase.d.ts.map +1 -1
  538. package/dist/utilities/transformColumnPreferences.d.ts.map +1 -1
  539. package/dist/utilities/transformWhereQuery.d.ts.map +1 -1
  540. package/dist/utilities/traverseFields.d.ts.map +1 -1
  541. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  542. package/dist/utilities/unflatten.d.ts.map +1 -1
  543. package/dist/utilities/validateMimeType.d.ts.map +1 -1
  544. package/dist/utilities/validateTimezones.d.ts.map +1 -1
  545. package/dist/utilities/validateWhereQuery.d.ts.map +1 -1
  546. package/dist/utilities/wordBoundariesRegex.d.ts.map +1 -1
  547. package/dist/utilities/wrapInternalEndpoints.d.ts.map +1 -1
  548. package/dist/versions/baseFields.d.ts.map +1 -1
  549. package/dist/versions/baseFields.js +3 -2
  550. package/dist/versions/baseFields.js.map +1 -1
  551. package/dist/versions/buildCollectionFields.d.ts.map +1 -1
  552. package/dist/versions/buildCollectionFields.js +0 -1
  553. package/dist/versions/buildCollectionFields.js.map +1 -1
  554. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  555. package/dist/versions/buildGlobalFields.js +0 -1
  556. package/dist/versions/buildGlobalFields.js.map +1 -1
  557. package/dist/versions/buildVersionCompoundIndexes.d.ts.map +1 -1
  558. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  559. package/dist/versions/deleteScheduledPublishJobs.d.ts.map +1 -1
  560. package/dist/versions/drafts/appendVersionToQueryKey.d.ts.map +1 -1
  561. package/dist/versions/drafts/getQueryDraftsSelect.d.ts.map +1 -1
  562. package/dist/versions/drafts/getQueryDraftsSort.d.ts.map +1 -1
  563. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  564. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  565. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  566. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  567. package/dist/versions/migrations/localizeStatus/shared.d.ts.map +1 -1
  568. package/dist/versions/payloadPackageList.d.ts.map +1 -1
  569. package/dist/versions/payloadPackageList.js +0 -1
  570. package/dist/versions/payloadPackageList.js.map +1 -1
  571. package/dist/versions/saveSnapshot.d.ts.map +1 -1
  572. package/dist/versions/schedule/job.d.ts.map +1 -1
  573. package/package.json +20 -20
  574. package/dist/admin/views/folderList.d.ts +0 -56
  575. package/dist/admin/views/folderList.d.ts.map +0 -1
  576. package/dist/admin/views/folderList.js +0 -3
  577. package/dist/admin/views/folderList.js.map +0 -1
  578. package/dist/folders/addFolderCollection.d.ts +0 -10
  579. package/dist/folders/addFolderCollection.d.ts.map +0 -1
  580. package/dist/folders/addFolderCollection.js +0 -26
  581. package/dist/folders/addFolderCollection.js.map +0 -1
  582. package/dist/folders/addFolderFieldToCollection.d.ts +0 -8
  583. package/dist/folders/addFolderFieldToCollection.d.ts.map +0 -1
  584. package/dist/folders/addFolderFieldToCollection.js +0 -20
  585. package/dist/folders/addFolderFieldToCollection.js.map +0 -1
  586. package/dist/folders/buildFolderField.d.ts +0 -8
  587. package/dist/folders/buildFolderField.d.ts.map +0 -1
  588. package/dist/folders/buildFolderField.js +0 -87
  589. package/dist/folders/buildFolderField.js.map +0 -1
  590. package/dist/folders/constants.d.ts +0 -3
  591. package/dist/folders/constants.d.ts.map +0 -1
  592. package/dist/folders/constants.js +0 -4
  593. package/dist/folders/constants.js.map +0 -1
  594. package/dist/folders/createFolderCollection.d.ts +0 -11
  595. package/dist/folders/createFolderCollection.d.ts.map +0 -1
  596. package/dist/folders/createFolderCollection.js +0 -115
  597. package/dist/folders/createFolderCollection.js.map +0 -1
  598. package/dist/folders/hooks/deleteSubfoldersAfterDelete.d.ts +0 -8
  599. package/dist/folders/hooks/deleteSubfoldersAfterDelete.d.ts.map +0 -1
  600. package/dist/folders/hooks/deleteSubfoldersAfterDelete.js +0 -15
  601. package/dist/folders/hooks/deleteSubfoldersAfterDelete.js.map +0 -1
  602. package/dist/folders/hooks/dissasociateAfterDelete.d.ts +0 -8
  603. package/dist/folders/hooks/dissasociateAfterDelete.d.ts.map +0 -1
  604. package/dist/folders/hooks/dissasociateAfterDelete.js +0 -20
  605. package/dist/folders/hooks/dissasociateAfterDelete.js.map +0 -1
  606. package/dist/folders/hooks/ensureSafeCollectionsChange.d.ts +0 -5
  607. package/dist/folders/hooks/ensureSafeCollectionsChange.d.ts.map +0 -1
  608. package/dist/folders/hooks/ensureSafeCollectionsChange.js +0 -107
  609. package/dist/folders/hooks/ensureSafeCollectionsChange.js.map +0 -1
  610. package/dist/folders/hooks/reparentChildFolder.d.ts +0 -24
  611. package/dist/folders/hooks/reparentChildFolder.d.ts.map +0 -1
  612. package/dist/folders/hooks/reparentChildFolder.js +0 -72
  613. package/dist/folders/hooks/reparentChildFolder.js.map +0 -1
  614. package/dist/folders/types.d.ts +0 -118
  615. package/dist/folders/types.d.ts.map +0 -1
  616. package/dist/folders/types.js +0 -3
  617. package/dist/folders/types.js.map +0 -1
  618. package/dist/folders/utils/buildFolderWhereConstraints.d.ts +0 -13
  619. package/dist/folders/utils/buildFolderWhereConstraints.d.ts.map +0 -1
  620. package/dist/folders/utils/buildFolderWhereConstraints.js +0 -45
  621. package/dist/folders/utils/buildFolderWhereConstraints.js.map +0 -1
  622. package/dist/folders/utils/formatFolderOrDocumentItem.d.ts +0 -12
  623. package/dist/folders/utils/formatFolderOrDocumentItem.d.ts.map +0 -1
  624. package/dist/folders/utils/formatFolderOrDocumentItem.js +0 -30
  625. package/dist/folders/utils/formatFolderOrDocumentItem.js.map +0 -1
  626. package/dist/folders/utils/getFolderBreadcrumbs.d.ts +0 -14
  627. package/dist/folders/utils/getFolderBreadcrumbs.d.ts.map +0 -1
  628. package/dist/folders/utils/getFolderBreadcrumbs.js +0 -45
  629. package/dist/folders/utils/getFolderBreadcrumbs.js.map +0 -1
  630. package/dist/folders/utils/getFolderData.d.ts +0 -33
  631. package/dist/folders/utils/getFolderData.d.ts.map +0 -1
  632. package/dist/folders/utils/getFolderData.js +0 -88
  633. package/dist/folders/utils/getFolderData.js.map +0 -1
  634. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.d.ts +0 -24
  635. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.d.ts.map +0 -1
  636. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.js +0 -66
  637. package/dist/folders/utils/getFoldersAndDocumentsFromJoin.js.map +0 -1
  638. package/dist/folders/utils/getOrphanedDocs.d.ts +0 -15
  639. package/dist/folders/utils/getOrphanedDocs.d.ts.map +0 -1
  640. package/dist/folders/utils/getOrphanedDocs.js +0 -40
  641. 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"}
@@ -11,27 +11,42 @@ export declare function withNullableJSONSchemaType(fieldType: JSONSchema4TypeNam
11
11
  type ConfigToJSONSchemaOptions = {
12
12
  forceInlineBlocks?: boolean;
13
13
  };
14
- export declare function fieldsToJSONSchema(
15
- /**
16
- * Used for relationship fields, to determine whether to use a string or number type for the ID.
17
- * While there is a default ID field type set by the db adapter, they can differ on a collection-level
18
- * if they have custom ID fields.
19
- */
20
- collectionIDFieldTypes: {
21
- [key: string]: 'number' | 'string';
22
- }, fields: FlattenedField[],
23
- /**
24
- * Allows you to define new top-level interfaces that can be re-used in the output schema.
25
- */
26
- interfaceNameDefinitions: Map<string, JSONSchema4>, config?: SanitizedConfig, i18n?: I18n, opts?: ConfigToJSONSchemaOptions): {
14
+ export type FieldsToJSONSchemaArgs = {
15
+ /**
16
+ * Used for relationship fields, to determine whether to use a string or
17
+ * number type for the ID. While there is a default ID field type set by
18
+ * the db adapter, they can differ on a collection-level if they have
19
+ * custom ID fields.
20
+ */
21
+ collectionIDFieldTypes: {
22
+ [key: string]: 'number' | 'string';
23
+ };
24
+ config?: SanitizedConfig;
25
+ fields: FlattenedField[];
26
+ /**
27
+ * If true, blocks are inlined into each `block` field instead of being
28
+ * lifted to a top-level definition. Used by the MCP plugin.
29
+ */
30
+ forceInlineBlocks?: boolean;
31
+ i18n?: I18n;
32
+ /** Allows you to define new top-level interfaces that can be re-used in the output schema. */
33
+ interfaceNameDefinitions: Map<string, JSONSchema4>;
34
+ /**
35
+ * Allows you to append raw TS source to `payload-types.ts`. Identical
36
+ * strings de-dupe naturally, so the same helper written from many fields
37
+ * ends up emitted once.
38
+ */
39
+ typeStringDefinitions: Set<string>;
40
+ };
41
+ export declare function fieldsToJSONSchema({ collectionIDFieldTypes, config, fields, forceInlineBlocks, i18n, interfaceNameDefinitions, typeStringDefinitions, }: FieldsToJSONSchemaArgs): {
27
42
  properties: {
28
43
  [k: string]: JSONSchema4;
29
44
  };
30
45
  required: string[];
31
46
  };
32
- export declare function entityToJSONSchema(config: SanitizedConfig, entity: SanitizedCollectionConfig | SanitizedGlobalConfig, interfaceNameDefinitions: Map<string, JSONSchema4>, defaultIDType: 'number' | 'text', collectionIDFieldTypes?: {
47
+ export declare function entityToJSONSchema(config: SanitizedConfig, entity: SanitizedCollectionConfig | SanitizedGlobalConfig, interfaceNameDefinitions: Map<string, JSONSchema4>, defaultIDType: 'number' | 'text', typeStringDefinitions: Set<string>, collectionIDFieldTypes?: {
33
48
  [key: string]: 'number' | 'string';
34
- }, i18n?: I18n, opts?: ConfigToJSONSchemaOptions): JSONSchema4;
49
+ }, i18n?: I18n, forceInlineBlocks?: boolean): JSONSchema4;
35
50
  export declare function fieldsToSelectJSONSchema({ config, fields, interfaceNameDefinitions, }: {
36
51
  config: SanitizedConfig;
37
52
  fields: FlattenedField[];
@@ -42,6 +57,9 @@ export declare function timezonesToJSONSchema(supportedTimezones: SanitizedConfi
42
57
  /**
43
58
  * This is used for generating the TypeScript types (payload-types.ts) with the payload generate:types command.
44
59
  */
45
- export declare function configToJSONSchema(config: SanitizedConfig, defaultIDType?: 'number' | 'text', i18n?: I18n, opts?: ConfigToJSONSchemaOptions): JSONSchema4;
60
+ export declare function configToJSONSchema(config: SanitizedConfig, defaultIDType?: 'number' | 'text', i18n?: I18n, { forceInlineBlocks }?: ConfigToJSONSchemaOptions): {
61
+ jsonSchema: JSONSchema4;
62
+ typeStringDefinitions: Set<string>;
63
+ };
46
64
  export {};
47
65
  //# sourceMappingURL=configToJSONSchema.d.ts.map
@@ -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;AA+SvE;;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,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;;;OAKG;IACH,sBAAsB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;KAAE,CAAA;IAC9D,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,8FAA8F;IAC9F,wBAAwB,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAClD;;;;OAIG;IACH,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CACnC,CAAA;AAED,wBAAgB,kBAAkB,CAAC,EACjC,sBAAsB,EACtB,MAAM,EACN,MAAM,EACN,iBAAiB,EACjB,IAAI,EACJ,wBAAwB,EACxB,qBAAqB,GACtB,EAAE,sBAAsB,GAAG;IAC1B,UAAU,EAAE;QACV,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;KACzB,CAAA;IACD,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,CAofA;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,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,EAClC,sBAAsB,CAAC,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAAE,EAC/D,IAAI,CAAC,EAAE,IAAI,EACX,iBAAiB,CAAC,EAAE,OAAO,GAC1B,WAAW,CAuFb;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,EAAE,iBAAiB,EAAE,GAAE,yBAA8B,GACpD;IAAE,UAAU,EAAE,WAAW,CAAC;IAAC,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,CA+MjE"}
@@ -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)=>{
@@ -120,7 +121,7 @@ function getAllowedWidgetWidths({ maxWidth, minWidth }) {
120
121
  }
121
122
  return widgetWidths.slice(minIndex, maxIndex + 1);
122
123
  }
123
- function generateWidgetSchemas({ collectionIDFieldTypes, config, i18n, interfaceNameDefinitions, opts = {} }) {
124
+ function generateWidgetSchemas({ collectionIDFieldTypes, config, forceInlineBlocks, i18n, interfaceNameDefinitions, typeStringDefinitions }) {
124
125
  const widgets = config.admin?.dashboard?.widgets ?? [];
125
126
  const definitions = {};
126
127
  const properties = {};
@@ -132,9 +133,17 @@ function generateWidgetSchemas({ collectionIDFieldTypes, config, i18n, interface
132
133
  });
133
134
  let dataSchema;
134
135
  if (widget.fields?.length) {
135
- const widgetFieldSchemas = fieldsToJSONSchema(collectionIDFieldTypes, flattenAllFields({
136
- fields: widget.fields
137
- }), interfaceNameDefinitions, config, i18n, opts);
136
+ const widgetFieldSchemas = fieldsToJSONSchema({
137
+ collectionIDFieldTypes,
138
+ config,
139
+ fields: flattenAllFields({
140
+ fields: widget.fields
141
+ }),
142
+ forceInlineBlocks,
143
+ i18n,
144
+ interfaceNameDefinitions,
145
+ typeStringDefinitions
146
+ });
138
147
  dataSchema = {
139
148
  type: 'object',
140
149
  additionalProperties: false,
@@ -299,13 +308,7 @@ function entityOrFieldToJsDocs({ entity, i18n }) {
299
308
  }
300
309
  return description;
301
310
  }
302
- export function fieldsToJSONSchema(/**
303
- * Used for relationship fields, to determine whether to use a string or number type for the ID.
304
- * While there is a default ID field type set by the db adapter, they can differ on a collection-level
305
- * if they have custom ID fields.
306
- */ collectionIDFieldTypes, fields, /**
307
- * Allows you to define new top-level interfaces that can be re-used in the output schema.
308
- */ interfaceNameDefinitions, config, i18n, opts = {}) {
311
+ export function fieldsToJSONSchema({ collectionIDFieldTypes, config, fields, forceInlineBlocks, i18n, interfaceNameDefinitions, typeStringDefinitions }) {
309
312
  const requiredFieldNames = new Set();
310
313
  return {
311
314
  properties: Object.fromEntries(fields.reduce((fieldSchemas, field, index)=>{
@@ -328,7 +331,15 @@ export function fieldsToJSONSchema(/**
328
331
  items: {
329
332
  type: 'object',
330
333
  additionalProperties: false,
331
- ...fieldsToJSONSchema(collectionIDFieldTypes, field.flattenedFields, interfaceNameDefinitions, config, i18n, opts)
334
+ ...fieldsToJSONSchema({
335
+ collectionIDFieldTypes,
336
+ config,
337
+ fields: field.flattenedFields,
338
+ forceInlineBlocks,
339
+ i18n,
340
+ interfaceNameDefinitions,
341
+ typeStringDefinitions
342
+ })
332
343
  }
333
344
  };
334
345
  if (field.interfaceName) {
@@ -349,20 +360,20 @@ export function fieldsToJSONSchema(/**
349
360
  ...baseFieldSchema,
350
361
  type: withNullableJSONSchemaType('array', isRequired),
351
362
  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;
363
+ oneOf: (field.blockReferences ?? field.blocks).map((blockOrReference)=>{
364
+ const block = typeof blockOrReference === 'string' ? config?.blocks?.find((b)=>b.slug === blockOrReference) : blockOrReference;
365
+ if (!block) {
366
+ return {};
364
367
  }
365
- const blockFieldSchemas = fieldsToJSONSchema(collectionIDFieldTypes, block.flattenedFields, interfaceNameDefinitions, config, i18n, opts);
368
+ const blockFieldSchemas = fieldsToJSONSchema({
369
+ collectionIDFieldTypes,
370
+ config,
371
+ fields: block.flattenedFields,
372
+ forceInlineBlocks,
373
+ i18n,
374
+ interfaceNameDefinitions,
375
+ typeStringDefinitions
376
+ });
366
377
  const blockSchema = {
367
378
  type: 'object',
368
379
  additionalProperties: false,
@@ -377,13 +388,9 @@ export function fieldsToJSONSchema(/**
377
388
  ...blockFieldSchemas.required
378
389
  ]
379
390
  };
380
- if (!opts.forceInlineBlocks && block.interfaceName) {
381
- interfaceNameDefinitions.set(block.interfaceName, blockSchema);
382
- return {
383
- $ref: `#/definitions/${block.interfaceName}`
384
- };
385
- }
386
- return blockSchema;
391
+ return forceInlineBlocks ? blockSchema : {
392
+ $ref: `#/definitions/${registerBlockInterface(block, blockSchema, interfaceNameDefinitions)}`
393
+ };
387
394
  })
388
395
  } : {}
389
396
  };
@@ -415,7 +422,15 @@ export function fieldsToJSONSchema(/**
415
422
  ...baseFieldSchema,
416
423
  type: 'object',
417
424
  additionalProperties: false,
418
- ...fieldsToJSONSchema(collectionIDFieldTypes, field.flattenedFields, interfaceNameDefinitions, config, i18n, opts)
425
+ ...fieldsToJSONSchema({
426
+ collectionIDFieldTypes,
427
+ config,
428
+ fields: field.flattenedFields,
429
+ forceInlineBlocks,
430
+ i18n,
431
+ interfaceNameDefinitions,
432
+ typeStringDefinitions
433
+ })
419
434
  };
420
435
  if (field.interfaceName) {
421
436
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
@@ -657,16 +672,17 @@ export function fieldsToJSONSchema(/**
657
672
  if (typeof field.editor === 'function') {
658
673
  throw new Error('Attempted to access unsanitized rich text editor.');
659
674
  }
660
- if (field.editor.outputSchema) {
675
+ if (field.editor.jsonSchema) {
661
676
  fieldSchema = {
662
677
  ...baseFieldSchema,
663
- ...field.editor.outputSchema({
678
+ ...field.editor.jsonSchema({
664
679
  collectionIDFieldTypes,
665
680
  config,
666
681
  field,
667
682
  i18n,
668
683
  interfaceNameDefinitions,
669
- isRequired
684
+ isRequired,
685
+ typeStringDefinitions
670
686
  })
671
687
  };
672
688
  } else {
@@ -734,7 +750,15 @@ export function fieldsToJSONSchema(/**
734
750
  ...baseFieldSchema,
735
751
  type: 'object',
736
752
  additionalProperties: false,
737
- ...fieldsToJSONSchema(collectionIDFieldTypes, field.flattenedFields, interfaceNameDefinitions, config, i18n, opts)
753
+ ...fieldsToJSONSchema({
754
+ collectionIDFieldTypes,
755
+ config,
756
+ fields: field.flattenedFields,
757
+ forceInlineBlocks,
758
+ i18n,
759
+ interfaceNameDefinitions,
760
+ typeStringDefinitions
761
+ })
738
762
  };
739
763
  if (field.interfaceName) {
740
764
  interfaceNameDefinitions.set(field.interfaceName, fieldSchema);
@@ -765,8 +789,8 @@ export function fieldsToJSONSchema(/**
765
789
  break;
766
790
  }
767
791
  }
768
- if ('typescriptSchema' in field && field?.typescriptSchema?.length) {
769
- for (const schema of field.typescriptSchema){
792
+ if ('jsonSchema' in field && field?.jsonSchema?.length) {
793
+ for (const schema of field.jsonSchema){
770
794
  fieldSchema = schema({
771
795
  jsonSchema: fieldSchema
772
796
  });
@@ -784,7 +808,7 @@ export function fieldsToJSONSchema(/**
784
808
  };
785
809
  }
786
810
  // This function is part of the public API and is exported through payload/utilities
787
- export function entityToJSONSchema(config, entity, interfaceNameDefinitions, defaultIDType, collectionIDFieldTypes, i18n, opts = {}) {
811
+ export function entityToJSONSchema(config, entity, interfaceNameDefinitions, defaultIDType, typeStringDefinitions, collectionIDFieldTypes, i18n, forceInlineBlocks) {
788
812
  if (!collectionIDFieldTypes) {
789
813
  collectionIDFieldTypes = getCollectionIDFieldTypes({
790
814
  config,
@@ -833,7 +857,15 @@ export function entityToJSONSchema(config, entity, interfaceNameDefinitions, def
833
857
  });
834
858
  }
835
859
  const isAuthCollection = 'auth' in entity && entity.auth;
836
- const fieldsSchema = fieldsToJSONSchema(collectionIDFieldTypes, mutableFields, interfaceNameDefinitions, config, i18n, opts);
860
+ const fieldsSchema = fieldsToJSONSchema({
861
+ collectionIDFieldTypes,
862
+ config,
863
+ fields: mutableFields,
864
+ forceInlineBlocks,
865
+ i18n,
866
+ interfaceNameDefinitions,
867
+ typeStringDefinitions
868
+ });
837
869
  // Add collection property to auth collections
838
870
  if (isAuthCollection) {
839
871
  fieldsSchema.properties = {
@@ -1133,11 +1165,44 @@ function generateAuthOperationSchemas(collections) {
1133
1165
  required: Object.keys(properties)
1134
1166
  };
1135
1167
  }
1168
+ const hashBlockSchema = (schema)=>createHash('sha256').update(JSON.stringify(schema)).digest('hex').slice(0, 8).toUpperCase();
1169
+ /**
1170
+ * Registers a block's schema as a top-level definition and returns its name.
1171
+ *
1172
+ * The name is the block's `interfaceName`, or a PascalCase form of its slug. If a different
1173
+ * block already uses that name, this one gets a content-hash suffix (`Hero_3F2A1B0C`) so the
1174
+ * two don't overwrite each other. Registering the same block shape again reuses its name.
1175
+ */ function registerBlockInterface(block, blockSchema, interfaceNameDefinitions) {
1176
+ const baseName = block.interfaceName ?? toWords(block.slug, true);
1177
+ const existing = interfaceNameDefinitions.get(baseName);
1178
+ // Use the clean name if it is free, or if the block sets an explicit interfaceName.
1179
+ if (!existing || block.interfaceName) {
1180
+ interfaceNameDefinitions.set(baseName, blockSchema);
1181
+ return baseName;
1182
+ }
1183
+ const hash = hashBlockSchema(blockSchema);
1184
+ // The same block shape is already registered under this name, so reuse it.
1185
+ if (hashBlockSchema(existing) === hash) {
1186
+ return baseName;
1187
+ }
1188
+ // A different block already owns the clean name. Disambiguate this one with its hash.
1189
+ 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`;
1190
+ const uniqueName = `${baseName}_${hash}`;
1191
+ interfaceNameDefinitions.set(uniqueName, blockSchema);
1192
+ return uniqueName;
1193
+ }
1136
1194
  /**
1137
1195
  * This is used for generating the TypeScript types (payload-types.ts) with the payload generate:types command.
1138
- */ 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
1196
+ */ export function configToJSONSchema(config, defaultIDType, i18n, { forceInlineBlocks } = {}) {
1197
+ // a mutable Map of top-level definitions in the generated JSON Schema.
1198
+ // - `array`/`group`/named-`tab` fields are registered here when they set
1199
+ // `interfaceName` (otherwise they stay inline).
1200
+ // - `block` configs always register here via `registerBlockInterface`, keyed by
1201
+ // `block.interfaceName` if set, else a PascalCase form of the slug (with a
1202
+ // content-hash suffix when two different blocks resolve to the same name).
1140
1203
  const interfaceNameDefinitions = new Map();
1204
+ // a mutable Set for raw TS source to be appended to `payload-types.ts`.
1205
+ const typeStringDefinitions = new Set();
1141
1206
  // Used for relationship fields, to determine whether to use a string or number type for the ID.
1142
1207
  const collectionIDFieldTypes = getCollectionIDFieldTypes({
1143
1208
  config,
@@ -1156,7 +1221,7 @@ function generateAuthOperationSchemas(collections) {
1156
1221
  }))
1157
1222
  ];
1158
1223
  const entityDefinitions = entities.reduce((acc, { type, entity })=>{
1159
- acc[entity.slug] = entityToJSONSchema(config, entity, interfaceNameDefinitions, defaultIDType, collectionIDFieldTypes, i18n, opts);
1224
+ acc[entity.slug] = entityToJSONSchema(config, entity, interfaceNameDefinitions, defaultIDType, typeStringDefinitions, collectionIDFieldTypes, i18n, forceInlineBlocks);
1160
1225
  const select = fieldsToSelectJSONSchema({
1161
1226
  config,
1162
1227
  fields: entity.flattenedFields,
@@ -1178,9 +1243,10 @@ function generateAuthOperationSchemas(collections) {
1178
1243
  const widgetSchemas = generateWidgetSchemas({
1179
1244
  collectionIDFieldTypes,
1180
1245
  config,
1246
+ forceInlineBlocks,
1181
1247
  i18n,
1182
1248
  interfaceNameDefinitions,
1183
- opts
1249
+ typeStringDefinitions
1184
1250
  });
1185
1251
  const authOperationDefinitions = [
1186
1252
  ...config.collections
@@ -1190,7 +1256,7 @@ function generateAuthOperationSchemas(collections) {
1190
1256
  }, {
1191
1257
  auth: {}
1192
1258
  });
1193
- const jobsSchemas = config.jobs ? generateJobsJSONSchemas(config, config.jobs, interfaceNameDefinitions, collectionIDFieldTypes, i18n) : {};
1259
+ const jobsSchemas = config.jobs ? generateJobsJSONSchemas(config, config.jobs, interfaceNameDefinitions, collectionIDFieldTypes, typeStringDefinitions, i18n) : {};
1194
1260
  const blocksDefinition = {
1195
1261
  type: 'object',
1196
1262
  additionalProperties: false,
@@ -1199,7 +1265,15 @@ function generateAuthOperationSchemas(collections) {
1199
1265
  };
1200
1266
  if (config?.blocks?.length) {
1201
1267
  for (const block of config.blocks){
1202
- const blockFieldSchemas = fieldsToJSONSchema(collectionIDFieldTypes, block.flattenedFields, interfaceNameDefinitions, config, i18n, opts);
1268
+ const blockFieldSchemas = fieldsToJSONSchema({
1269
+ collectionIDFieldTypes,
1270
+ config,
1271
+ fields: block.flattenedFields,
1272
+ forceInlineBlocks,
1273
+ i18n,
1274
+ interfaceNameDefinitions,
1275
+ typeStringDefinitions
1276
+ });
1203
1277
  const blockSchema = {
1204
1278
  type: 'object',
1205
1279
  additionalProperties: false,
@@ -1214,10 +1288,8 @@ function generateAuthOperationSchemas(collections) {
1214
1288
  ...blockFieldSchemas.required
1215
1289
  ]
1216
1290
  };
1217
- const interfaceName = block.interfaceName ?? block.slug;
1218
- interfaceNameDefinitions.set(interfaceName, blockSchema);
1219
1291
  blocksDefinition.properties[block.slug] = {
1220
- $ref: `#/definitions/${interfaceName}`
1292
+ $ref: `#/definitions/${registerBlockInterface(block, blockSchema, interfaceNameDefinitions)}`
1221
1293
  };
1222
1294
  blocksDefinition.required.push(block.slug);
1223
1295
  }
@@ -1299,7 +1371,10 @@ function generateAuthOperationSchemas(collections) {
1299
1371
  });
1300
1372
  }
1301
1373
  }
1302
- return jsonSchema;
1374
+ return {
1375
+ jsonSchema,
1376
+ typeStringDefinitions
1377
+ };
1303
1378
  }
1304
1379
 
1305
1380
  //# sourceMappingURL=configToJSONSchema.js.map