payload 3.0.0-alpha.60 → 3.0.0-alpha.61

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 (393) hide show
  1. package/dist/admin/RichText.d.ts +3 -0
  2. package/dist/admin/RichText.d.ts.map +1 -1
  3. package/dist/admin/RichText.js.map +1 -1
  4. package/dist/admin/elements/Cell.js.map +1 -1
  5. package/dist/admin/elements/DatePicker.js.map +1 -1
  6. package/dist/admin/elements/PreviewButton.js.map +1 -1
  7. package/dist/admin/elements/PublishButton.js.map +1 -1
  8. package/dist/admin/elements/SaveButton.js.map +1 -1
  9. package/dist/admin/elements/SaveDraftButton.js.map +1 -1
  10. package/dist/admin/elements/Tab.js.map +1 -1
  11. package/dist/admin/forms/Error.js.map +1 -1
  12. package/dist/admin/forms/FieldDescription.d.ts +2 -1
  13. package/dist/admin/forms/FieldDescription.d.ts.map +1 -1
  14. package/dist/admin/forms/FieldDescription.js.map +1 -1
  15. package/dist/admin/forms/FieldTypes.js.map +1 -1
  16. package/dist/admin/forms/Form.js.map +1 -1
  17. package/dist/admin/forms/Label.d.ts +2 -1
  18. package/dist/admin/forms/Label.d.ts.map +1 -1
  19. package/dist/admin/forms/Label.js.map +1 -1
  20. package/dist/admin/forms/RowLabel.js.map +1 -1
  21. package/dist/admin/types.js.map +1 -1
  22. package/dist/admin/views/types.d.ts +2 -2
  23. package/dist/admin/views/types.d.ts.map +1 -1
  24. package/dist/admin/views/types.js.map +1 -1
  25. package/dist/assets/assets.d.js.map +1 -1
  26. package/dist/auth/baseFields/accountLock.js.map +1 -1
  27. package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
  28. package/dist/auth/baseFields/apiKey.js +3 -7
  29. package/dist/auth/baseFields/apiKey.js.map +1 -1
  30. package/dist/auth/baseFields/auth.d.ts.map +1 -1
  31. package/dist/auth/baseFields/auth.js +1 -5
  32. package/dist/auth/baseFields/auth.js.map +1 -1
  33. package/dist/auth/baseFields/verification.d.ts.map +1 -1
  34. package/dist/auth/baseFields/verification.js +1 -5
  35. package/dist/auth/baseFields/verification.js.map +1 -1
  36. package/dist/auth/cookies.js.map +1 -1
  37. package/dist/auth/crypto.js.map +1 -1
  38. package/dist/auth/defaultAccess.js.map +1 -1
  39. package/dist/auth/defaultUser.d.ts.map +1 -1
  40. package/dist/auth/defaultUser.js +2 -7
  41. package/dist/auth/defaultUser.js.map +1 -1
  42. package/dist/auth/executeAccess.js.map +1 -1
  43. package/dist/auth/executeAuthStrategies.js.map +1 -1
  44. package/dist/auth/extractJWT.js.map +1 -1
  45. package/dist/auth/getAccessResults.js.map +1 -1
  46. package/dist/auth/getFieldsToSign.js.map +1 -1
  47. package/dist/auth/index.js.map +1 -1
  48. package/dist/auth/isLocked.js.map +1 -1
  49. package/dist/auth/operations/access.js.map +1 -1
  50. package/dist/auth/operations/auth.js.map +1 -1
  51. package/dist/auth/operations/forgotPassword.js.map +1 -1
  52. package/dist/auth/operations/init.js.map +1 -1
  53. package/dist/auth/operations/local/auth.js +1 -1
  54. package/dist/auth/operations/local/auth.js.map +1 -1
  55. package/dist/auth/operations/local/forgotPassword.js.map +1 -1
  56. package/dist/auth/operations/local/index.js.map +1 -1
  57. package/dist/auth/operations/local/login.js.map +1 -1
  58. package/dist/auth/operations/local/resetPassword.js.map +1 -1
  59. package/dist/auth/operations/local/unlock.js.map +1 -1
  60. package/dist/auth/operations/local/verifyEmail.js.map +1 -1
  61. package/dist/auth/operations/login.js.map +1 -1
  62. package/dist/auth/operations/logout.js.map +1 -1
  63. package/dist/auth/operations/me.js.map +1 -1
  64. package/dist/auth/operations/refresh.js.map +1 -1
  65. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  66. package/dist/auth/operations/resetPassword.js.map +1 -1
  67. package/dist/auth/operations/unlock.js.map +1 -1
  68. package/dist/auth/operations/verifyEmail.js.map +1 -1
  69. package/dist/auth/sendVerificationEmail.js.map +1 -1
  70. package/dist/auth/strategies/apiKey.js.map +1 -1
  71. package/dist/auth/strategies/jwt.js.map +1 -1
  72. package/dist/auth/strategies/local/authenticate.js.map +1 -1
  73. package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -1
  74. package/dist/auth/strategies/local/incrementLoginAttempts.js.map +1 -1
  75. package/dist/auth/strategies/local/register.js.map +1 -1
  76. package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -1
  77. package/dist/auth/types.js.map +1 -1
  78. package/dist/bin/generateTypes.js.map +1 -1
  79. package/dist/bin/index.js.map +1 -1
  80. package/dist/bin/loadEnv.js.map +1 -1
  81. package/dist/bin/loader/clientExtensions.js.map +1 -1
  82. package/dist/bin/loader/compile.js.map +1 -1
  83. package/dist/bin/loader/index.d.ts.map +1 -1
  84. package/dist/bin/loader/index.js +0 -1
  85. package/dist/bin/loader/index.js.map +1 -1
  86. package/dist/bin/loader/read-default-tsconfig.js.map +1 -1
  87. package/dist/bin/migrate.js.map +1 -1
  88. package/dist/collections/config/build.js.map +1 -1
  89. package/dist/collections/config/client.d.ts +11 -4
  90. package/dist/collections/config/client.d.ts.map +1 -1
  91. package/dist/collections/config/client.js +18 -3
  92. package/dist/collections/config/client.js.map +1 -1
  93. package/dist/collections/config/defaults.js.map +1 -1
  94. package/dist/collections/config/sanitize.d.ts.map +1 -1
  95. package/dist/collections/config/sanitize.js +2 -7
  96. package/dist/collections/config/sanitize.js.map +1 -1
  97. package/dist/collections/config/schema.js +2 -2
  98. package/dist/collections/config/schema.js.map +1 -1
  99. package/dist/collections/config/types.d.ts +3 -3
  100. package/dist/collections/config/types.d.ts.map +1 -1
  101. package/dist/collections/config/types.js.map +1 -1
  102. package/dist/collections/dataloader.js.map +1 -1
  103. package/dist/collections/operations/create.js.map +1 -1
  104. package/dist/collections/operations/delete.js.map +1 -1
  105. package/dist/collections/operations/deleteByID.js.map +1 -1
  106. package/dist/collections/operations/docAccess.js.map +1 -1
  107. package/dist/collections/operations/duplicate.js.map +1 -1
  108. package/dist/collections/operations/find.js.map +1 -1
  109. package/dist/collections/operations/findByID.js.map +1 -1
  110. package/dist/collections/operations/findVersionByID.js.map +1 -1
  111. package/dist/collections/operations/findVersions.js.map +1 -1
  112. package/dist/collections/operations/local/create.d.ts.map +1 -1
  113. package/dist/collections/operations/local/create.js +2 -1
  114. package/dist/collections/operations/local/create.js.map +1 -1
  115. package/dist/collections/operations/local/delete.js.map +1 -1
  116. package/dist/collections/operations/local/duplicate.js +1 -1
  117. package/dist/collections/operations/local/duplicate.js.map +1 -1
  118. package/dist/collections/operations/local/find.js.map +1 -1
  119. package/dist/collections/operations/local/findByID.js.map +1 -1
  120. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  121. package/dist/collections/operations/local/findVersions.js.map +1 -1
  122. package/dist/collections/operations/local/index.js.map +1 -1
  123. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  124. package/dist/collections/operations/local/update.js.map +1 -1
  125. package/dist/collections/operations/restoreVersion.js.map +1 -1
  126. package/dist/collections/operations/update.js.map +1 -1
  127. package/dist/collections/operations/updateByID.js.map +1 -1
  128. package/dist/collections/operations/utils.js.map +1 -1
  129. package/dist/config/build.js.map +1 -1
  130. package/dist/config/client.d.ts +5 -1
  131. package/dist/config/client.d.ts.map +1 -1
  132. package/dist/config/client.js +9 -4
  133. package/dist/config/client.js.map +1 -1
  134. package/dist/config/defaults.js.map +1 -1
  135. package/dist/config/find.js.map +1 -1
  136. package/dist/config/sanitize.d.ts.map +1 -1
  137. package/dist/config/sanitize.js +5 -3
  138. package/dist/config/sanitize.js.map +1 -1
  139. package/dist/config/schema.js.map +1 -1
  140. package/dist/config/shared/adminViewSchema.js.map +1 -1
  141. package/dist/config/shared/componentSchema.js.map +1 -1
  142. package/dist/config/types.d.ts +6 -2
  143. package/dist/config/types.d.ts.map +1 -1
  144. package/dist/config/types.js.map +1 -1
  145. package/dist/config/validate.js.map +1 -1
  146. package/dist/database/combineQueries.js.map +1 -1
  147. package/dist/database/createDatabaseAdapter.js.map +1 -1
  148. package/dist/database/flattenWhereToOperators.js.map +1 -1
  149. package/dist/database/getLocalizedPaths.js.map +1 -1
  150. package/dist/database/migrations/createMigration.js.map +1 -1
  151. package/dist/database/migrations/getMigrations.js.map +1 -1
  152. package/dist/database/migrations/migrate.js.map +1 -1
  153. package/dist/database/migrations/migrateDown.js.map +1 -1
  154. package/dist/database/migrations/migrateRefresh.js.map +1 -1
  155. package/dist/database/migrations/migrateReset.js.map +1 -1
  156. package/dist/database/migrations/migrateStatus.js.map +1 -1
  157. package/dist/database/migrations/migrationTemplate.js.map +1 -1
  158. package/dist/database/migrations/migrationsCollection.js.map +1 -1
  159. package/dist/database/migrations/readMigrationFiles.js.map +1 -1
  160. package/dist/database/queryValidation/types.js.map +1 -1
  161. package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
  162. package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
  163. package/dist/database/types.js.map +1 -1
  164. package/dist/email/build.js.map +1 -1
  165. package/dist/email/defaults.js.map +1 -1
  166. package/dist/email/mockHandler.js.map +1 -1
  167. package/dist/email/sendEmail.js.map +1 -1
  168. package/dist/email/types.js.map +1 -1
  169. package/dist/errors/APIError.js.map +1 -1
  170. package/dist/errors/AuthenticationError.js +2 -2
  171. package/dist/errors/AuthenticationError.js.map +1 -1
  172. package/dist/errors/DuplicateCollection.js.map +1 -1
  173. package/dist/errors/DuplicateFieldName.js.map +1 -1
  174. package/dist/errors/DuplicateGlobal.js.map +1 -1
  175. package/dist/errors/ErrorDeletingFile.js +2 -2
  176. package/dist/errors/ErrorDeletingFile.js.map +1 -1
  177. package/dist/errors/FileUploadError.js +2 -2
  178. package/dist/errors/FileUploadError.js.map +1 -1
  179. package/dist/errors/Forbidden.js +2 -2
  180. package/dist/errors/Forbidden.js.map +1 -1
  181. package/dist/errors/InvalidConfiguration.js.map +1 -1
  182. package/dist/errors/InvalidFieldName.js.map +1 -1
  183. package/dist/errors/InvalidFieldRelationship.js.map +1 -1
  184. package/dist/errors/InvalidSchema.js.map +1 -1
  185. package/dist/errors/LockedAuth.js +2 -2
  186. package/dist/errors/LockedAuth.js.map +1 -1
  187. package/dist/errors/MissingCollectionLabel.js.map +1 -1
  188. package/dist/errors/MissingEditorProp.js.map +1 -1
  189. package/dist/errors/MissingFieldInputOptions.js.map +1 -1
  190. package/dist/errors/MissingFieldType.js.map +1 -1
  191. package/dist/errors/MissingFile.js +2 -2
  192. package/dist/errors/MissingFile.js.map +1 -1
  193. package/dist/errors/NotFound.js +2 -2
  194. package/dist/errors/NotFound.js.map +1 -1
  195. package/dist/errors/QueryError.js.map +1 -1
  196. package/dist/errors/TimestampsRequired.js.map +1 -1
  197. package/dist/errors/UnathorizedError.js +2 -2
  198. package/dist/errors/UnathorizedError.js.map +1 -1
  199. package/dist/errors/ValidationError.js +2 -2
  200. package/dist/errors/ValidationError.js.map +1 -1
  201. package/dist/errors/index.js.map +1 -1
  202. package/dist/errors/types.js.map +1 -1
  203. package/dist/exports/auth.js.map +1 -1
  204. package/dist/exports/components/utilities.js.map +1 -1
  205. package/dist/exports/config.js.map +1 -1
  206. package/dist/exports/database.js.map +1 -1
  207. package/dist/exports/errors.js.map +1 -1
  208. package/dist/exports/fields/index.js.map +1 -1
  209. package/dist/exports/fields/validations.js.map +1 -1
  210. package/dist/exports/node.d.ts +1 -0
  211. package/dist/exports/node.d.ts.map +1 -1
  212. package/dist/exports/node.js +1 -0
  213. package/dist/exports/node.js.map +1 -1
  214. package/dist/exports/operations.js.map +1 -1
  215. package/dist/exports/types.js.map +1 -1
  216. package/dist/exports/uploads.js.map +1 -1
  217. package/dist/exports/utilities.d.ts +0 -1
  218. package/dist/exports/utilities.d.ts.map +1 -1
  219. package/dist/exports/utilities.js +0 -1
  220. package/dist/exports/utilities.js.map +1 -1
  221. package/dist/exports/versions.js.map +1 -1
  222. package/dist/fields/baseFields/baseBlockFields.js.map +1 -1
  223. package/dist/fields/baseFields/baseIDField.js.map +1 -1
  224. package/dist/fields/config/client.d.ts +32 -25
  225. package/dist/fields/config/client.d.ts.map +1 -1
  226. package/dist/fields/config/client.js +31 -6
  227. package/dist/fields/config/client.js.map +1 -1
  228. package/dist/fields/config/sanitize.js.map +1 -1
  229. package/dist/fields/config/sanitize.spec.js.map +1 -1
  230. package/dist/fields/config/schema.d.ts.map +1 -1
  231. package/dist/fields/config/schema.js +3 -3
  232. package/dist/fields/config/schema.js.map +1 -1
  233. package/dist/fields/config/types.d.ts +6 -5
  234. package/dist/fields/config/types.d.ts.map +1 -1
  235. package/dist/fields/config/types.js.map +1 -1
  236. package/dist/fields/getDefaultValue.js.map +1 -1
  237. package/dist/fields/hooks/afterChange/index.js.map +1 -1
  238. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  239. package/dist/fields/hooks/afterChange/traverseFields.js.map +1 -1
  240. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  241. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  242. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  243. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  244. package/dist/fields/hooks/beforeChange/beforeDuplicate.js.map +1 -1
  245. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js.map +1 -1
  246. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js.map +1 -1
  247. package/dist/fields/hooks/beforeChange/index.js.map +1 -1
  248. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  249. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  250. package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
  251. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  252. package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
  253. package/dist/fields/mergeBaseFields.js.map +1 -1
  254. package/dist/fields/setDefaultBeforeDuplicate.d.ts.map +1 -1
  255. package/dist/fields/setDefaultBeforeDuplicate.js +2 -6
  256. package/dist/fields/setDefaultBeforeDuplicate.js.map +1 -1
  257. package/dist/fields/sortableFieldTypes.js.map +1 -1
  258. package/dist/fields/validations.js.map +1 -1
  259. package/dist/fields/validations.spec.js.map +1 -1
  260. package/dist/globals/config/client.d.ts +9 -2
  261. package/dist/globals/config/client.d.ts.map +1 -1
  262. package/dist/globals/config/client.js +9 -3
  263. package/dist/globals/config/client.js.map +1 -1
  264. package/dist/globals/config/sanitize.d.ts.map +1 -1
  265. package/dist/globals/config/sanitize.js +2 -7
  266. package/dist/globals/config/sanitize.js.map +1 -1
  267. package/dist/globals/config/schema.d.ts.map +1 -1
  268. package/dist/globals/config/schema.js +1 -1
  269. package/dist/globals/config/schema.js.map +1 -1
  270. package/dist/globals/config/types.js.map +1 -1
  271. package/dist/globals/operations/docAccess.js.map +1 -1
  272. package/dist/globals/operations/findOne.js.map +1 -1
  273. package/dist/globals/operations/findVersionByID.js.map +1 -1
  274. package/dist/globals/operations/findVersions.js.map +1 -1
  275. package/dist/globals/operations/local/findOne.js.map +1 -1
  276. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  277. package/dist/globals/operations/local/findVersionByID.js +1 -0
  278. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  279. package/dist/globals/operations/local/findVersions.js.map +1 -1
  280. package/dist/globals/operations/local/index.js.map +1 -1
  281. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  282. package/dist/globals/operations/local/update.js.map +1 -1
  283. package/dist/globals/operations/restoreVersion.js.map +1 -1
  284. package/dist/globals/operations/update.js.map +1 -1
  285. package/dist/index.js.map +1 -1
  286. package/dist/preferences/deleteUserPreferences.js.map +1 -1
  287. package/dist/preferences/operations/delete.js.map +1 -1
  288. package/dist/preferences/operations/findOne.js.map +1 -1
  289. package/dist/preferences/operations/update.js.map +1 -1
  290. package/dist/preferences/preferencesCollection.js.map +1 -1
  291. package/dist/preferences/requestHandlers/delete.js.map +1 -1
  292. package/dist/preferences/requestHandlers/findOne.js.map +1 -1
  293. package/dist/preferences/requestHandlers/update.js.map +1 -1
  294. package/dist/preferences/types.js.map +1 -1
  295. package/dist/translations/getLocalI18n.d.ts +3 -2
  296. package/dist/translations/getLocalI18n.d.ts.map +1 -1
  297. package/dist/translations/getLocalI18n.js +2 -4
  298. package/dist/translations/getLocalI18n.js.map +1 -1
  299. package/dist/types/constants.js.map +1 -1
  300. package/dist/types/index.js.map +1 -1
  301. package/dist/uploads/canResizeImage.js.map +1 -1
  302. package/dist/uploads/cropImage.js.map +1 -1
  303. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  304. package/dist/uploads/docWithFilenameExists.js.map +1 -1
  305. package/dist/uploads/fileExists.js.map +1 -1
  306. package/dist/uploads/formatFilesize.js.map +1 -1
  307. package/dist/uploads/generateFileData.js.map +1 -1
  308. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  309. package/dist/uploads/getBaseFields.js +5 -13
  310. package/dist/uploads/getBaseFields.js.map +1 -1
  311. package/dist/uploads/getExternalFile.js.map +1 -1
  312. package/dist/uploads/getFileByPath.js.map +1 -1
  313. package/dist/uploads/getImageSize.js.map +1 -1
  314. package/dist/uploads/getSafeFilename.js.map +1 -1
  315. package/dist/uploads/imageResizer.js.map +1 -1
  316. package/dist/uploads/isImage.js.map +1 -1
  317. package/dist/uploads/mimeTypeValidator.js.map +1 -1
  318. package/dist/uploads/mimeTypeValidator.spec.js.map +1 -1
  319. package/dist/uploads/saveBufferToFile.js.map +1 -1
  320. package/dist/uploads/types.js.map +1 -1
  321. package/dist/uploads/unlinkTempFiles.js.map +1 -1
  322. package/dist/uploads/uploadFiles.js.map +1 -1
  323. package/dist/utilities/checkDuplicateCollections.js.map +1 -1
  324. package/dist/utilities/combineMerge.js.map +1 -1
  325. package/dist/utilities/commitTransaction.js.map +1 -1
  326. package/dist/utilities/configToJSONSchema.js.map +1 -1
  327. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  328. package/dist/utilities/convertData.js.map +1 -1
  329. package/dist/utilities/createArrayFromCommaDelineated.js.map +1 -1
  330. package/dist/utilities/createLocalReq.d.ts +1 -1
  331. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  332. package/dist/utilities/createLocalReq.js +2 -2
  333. package/dist/utilities/createLocalReq.js.map +1 -1
  334. package/dist/utilities/deepCopyObject.js.map +1 -1
  335. package/dist/utilities/deepMerge.js.map +1 -1
  336. package/dist/utilities/fieldSchemaToJSON.js.map +1 -1
  337. package/dist/utilities/flattenTopLevelFields.js.map +1 -1
  338. package/dist/utilities/formatLabels.js.map +1 -1
  339. package/dist/utilities/formatLabels.spec.js.map +1 -1
  340. package/dist/utilities/getCSSVariable.js.map +1 -1
  341. package/dist/utilities/getCollectionIDFieldTypes.js.map +1 -1
  342. package/dist/utilities/getEntityPolicies.js.map +1 -1
  343. package/dist/utilities/getIDType.js.map +1 -1
  344. package/dist/utilities/getObjectDotNotation.js.map +1 -1
  345. package/dist/utilities/getUniqueListBy.js.map +1 -1
  346. package/dist/utilities/importWithoutClientFiles.js.map +1 -1
  347. package/dist/utilities/initTransaction.js.map +1 -1
  348. package/dist/utilities/isEntityHidden.js.map +1 -1
  349. package/dist/utilities/isNumber.js.map +1 -1
  350. package/dist/utilities/isPlainObject.js.map +1 -1
  351. package/dist/utilities/isReactComponent.js.map +1 -1
  352. package/dist/utilities/isValidID.js.map +1 -1
  353. package/dist/utilities/isolateObjectProperty.js.map +1 -1
  354. package/dist/utilities/killTransaction.js.map +1 -1
  355. package/dist/utilities/logger.js.map +1 -1
  356. package/dist/utilities/mapAsync.js.map +1 -1
  357. package/dist/utilities/mergeListSearchAndWhere.js.map +1 -1
  358. package/dist/utilities/overwriteMerge.js.map +1 -1
  359. package/dist/utilities/parseCookies.js.map +1 -1
  360. package/dist/utilities/sanitizeInternalFields.js.map +1 -1
  361. package/dist/utilities/setsAreEqual.js.map +1 -1
  362. package/dist/utilities/telemetry/events/adminInit.js.map +1 -1
  363. package/dist/utilities/telemetry/events/serverInit.js.map +1 -1
  364. package/dist/utilities/telemetry/index.js.map +1 -1
  365. package/dist/utilities/telemetry/oneWayHash.js.map +1 -1
  366. package/dist/utilities/timestamp.js.map +1 -1
  367. package/dist/utilities/toKebabCase.js.map +1 -1
  368. package/dist/utilities/wait.js.map +1 -1
  369. package/dist/utilities/wordBoundariesRegex.js.map +1 -1
  370. package/dist/versions/baseFields.d.ts +3 -1
  371. package/dist/versions/baseFields.d.ts.map +1 -1
  372. package/dist/versions/baseFields.js +3 -9
  373. package/dist/versions/baseFields.js.map +1 -1
  374. package/dist/versions/buildCollectionFields.js.map +1 -1
  375. package/dist/versions/buildGlobalFields.js.map +1 -1
  376. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  377. package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
  378. package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -1
  379. package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
  380. package/dist/versions/enforceMaxVersions.js.map +1 -1
  381. package/dist/versions/getLatestCollectionVersion.js.map +1 -1
  382. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  383. package/dist/versions/saveVersion.js.map +1 -1
  384. package/dist/versions/types.js.map +1 -1
  385. package/node.d.ts +1 -0
  386. package/node.js +1 -0
  387. package/package.json +2 -2
  388. package/utilities.d.ts +0 -1
  389. package/utilities.js +0 -1
  390. package/dist/translations/extractTranslations.d.ts +0 -2
  391. package/dist/translations/extractTranslations.d.ts.map +0 -1
  392. package/dist/translations/extractTranslations.js +0 -20
  393. package/dist/translations/extractTranslations.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import type { I18n } from '@payloadcms/translations';
1
2
  import type { JSONSchema4 } from 'json-schema';
2
3
  import type { SanitizedConfig } from '../config/types.js';
3
4
  import type { Field, RichTextField, Validate } from '../fields/config/types.js';
@@ -13,10 +14,12 @@ type RichTextAdapterBase<Value extends object = object, AdapterProps = any, Extr
13
14
  }) => Promise<void> | null;
14
15
  generateComponentMap: (args: {
15
16
  config: SanitizedConfig;
17
+ i18n: I18n;
16
18
  schemaPath: string;
17
19
  }) => Map<string, React.ReactNode>;
18
20
  generateSchemaMap?: (args: {
19
21
  config: SanitizedConfig;
22
+ i18n: I18n;
20
23
  schemaMap: Map<string, Field[]>;
21
24
  schemaPath: string;
22
25
  }) => Map<string, Field[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../../src/admin/RichText.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../../src/admin/RichText.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/admin/RichText.ts"],"sourcesContent":["import type { JSONSchema4 } from 'json-schema'\n\nimport type { SanitizedConfig } from '../config/types.js'\nimport type { Field, RichTextField, Validate } from '../fields/config/types.js'\nimport type { PayloadRequest, RequestContext } from '../types/index.js'\n\nexport type RichTextFieldProps<\n Value extends object,\n AdapterProps,\n ExtraFieldProperties = {},\n> = Omit<RichTextField<Value, AdapterProps, ExtraFieldProperties>, 'type'> & {\n path?: string\n}\n\ntype RichTextAdapterBase<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = {\n afterReadPromise?: ({\n field,\n incomingEditorState,\n siblingDoc,\n }: {\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n incomingEditorState: Value\n siblingDoc: Record<string, unknown>\n }) => Promise<void> | null\n generateComponentMap: (args: {\n config: SanitizedConfig\n schemaPath: string\n }) => Map<string, React.ReactNode>\n generateSchemaMap?: (args: {\n config: SanitizedConfig\n schemaMap: Map<string, Field[]>\n schemaPath: string\n }) => Map<string, Field[]>\n outputSchema?: ({\n collectionIDFieldTypes,\n config,\n field,\n interfaceNameDefinitions,\n isRequired,\n }: {\n collectionIDFieldTypes: { [key: string]: 'number' | 'string' }\n config?: SanitizedConfig\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n /**\n * Allows you to define new top-level interfaces that can be re-used in the output schema.\n */\n interfaceNameDefinitions: Map<string, JSONSchema4>\n isRequired: boolean\n }) => JSONSchema4\n populationPromise?: (data: {\n context: RequestContext\n currentDepth?: number\n depth: number\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n findMany: boolean\n flattenLocales: boolean\n overrideAccess?: boolean\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n siblingDoc: Record<string, unknown>\n }) => Promise<void> | null\n validate: Validate<\n Value,\n Value,\n unknown,\n RichTextField<Value, AdapterProps, ExtraFieldProperties>\n >\n}\n\nexport type RichTextAdapter<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = RichTextAdapterBase<Value, AdapterProps, ExtraFieldProperties> & {\n CellComponent: React.FC<any>\n FieldComponent: React.FC<RichTextFieldProps<Value, AdapterProps, ExtraFieldProperties>>\n}\n"],"names":[],"mappings":"AA0EA,WAOC"}
1
+ {"version":3,"sources":["../../src/admin/RichText.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { JSONSchema4 } from 'json-schema'\n\nimport type { SanitizedConfig } from '../config/types.js'\nimport type { Field, RichTextField, Validate } from '../fields/config/types.js'\nimport type { PayloadRequest, RequestContext } from '../types/index.js'\n\nexport type RichTextFieldProps<\n Value extends object,\n AdapterProps,\n ExtraFieldProperties = {},\n> = Omit<RichTextField<Value, AdapterProps, ExtraFieldProperties>, 'type'> & {\n path?: string\n}\n\ntype RichTextAdapterBase<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = {\n afterReadPromise?: ({\n field,\n incomingEditorState,\n siblingDoc,\n }: {\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n incomingEditorState: Value\n siblingDoc: Record<string, unknown>\n }) => Promise<void> | null\n generateComponentMap: (args: {\n config: SanitizedConfig\n i18n: I18n\n schemaPath: string\n }) => Map<string, React.ReactNode>\n generateSchemaMap?: (args: {\n config: SanitizedConfig\n i18n: I18n\n schemaMap: Map<string, Field[]>\n schemaPath: string\n }) => Map<string, Field[]>\n outputSchema?: ({\n collectionIDFieldTypes,\n config,\n field,\n interfaceNameDefinitions,\n isRequired,\n }: {\n collectionIDFieldTypes: { [key: string]: 'number' | 'string' }\n config?: SanitizedConfig\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n /**\n * Allows you to define new top-level interfaces that can be re-used in the output schema.\n */\n interfaceNameDefinitions: Map<string, JSONSchema4>\n isRequired: boolean\n }) => JSONSchema4\n populationPromise?: (data: {\n context: RequestContext\n currentDepth?: number\n depth: number\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n findMany: boolean\n flattenLocales: boolean\n overrideAccess?: boolean\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n siblingDoc: Record<string, unknown>\n }) => Promise<void> | null\n validate: Validate<\n Value,\n Value,\n unknown,\n RichTextField<Value, AdapterProps, ExtraFieldProperties>\n >\n}\n\nexport type RichTextAdapter<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = RichTextAdapterBase<Value, AdapterProps, ExtraFieldProperties> & {\n CellComponent: React.FC<any>\n FieldComponent: React.FC<RichTextFieldProps<Value, AdapterProps, ExtraFieldProperties>>\n}\n"],"names":[],"rangeMappings":"","mappings":"AA6EA,WAOC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/elements/Cell.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type {\n BlockField,\n DateField,\n Field,\n FieldBase,\n Labels,\n RelationshipField,\n SelectField,\n} from '../../fields/config/types.js'\n\nexport type RowData = Record<string, any>\n\nexport type CellComponentProps = {\n /**\n * A custom component to override the default cell component. If this is not set, the React component will be\n * taken from cellComponents based on the field type.\n *\n * This is used to provide the RichText cell component for the RichText field.\n */\n CellComponentOverride?: React.ReactNode\n blocks?: {\n labels: BlockField['labels']\n slug: string\n }[]\n className?: string\n dateDisplayFormat?: DateField['admin']['date']['displayFormat']\n fieldType?: Field['type']\n isFieldAffectingData?: boolean\n label?: Record<string, string> | string\n labels?: Labels\n link?: boolean\n name: FieldBase['name']\n onClick?: (args: {\n cellData: unknown\n collectionSlug: SanitizedCollectionConfig['slug']\n rowData: RowData\n }) => void\n options?: SelectField['options']\n relationTo?: RelationshipField['relationTo']\n richTextComponentMap?: Map<string, React.ReactNode> // any should be MappedField\n}\n\nexport type DefaultCellComponentProps<T = any> = CellComponentProps & {\n cellData: T\n customCellContext?: {\n collectionSlug?: SanitizedCollectionConfig['slug']\n uploadConfig?: SanitizedCollectionConfig['upload']\n }\n rowData: RowData\n}\n"],"names":[],"mappings":"AA2CA,WAOC"}
1
+ {"version":3,"sources":["../../../src/admin/elements/Cell.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type {\n BlockField,\n DateField,\n Field,\n FieldBase,\n Labels,\n RelationshipField,\n SelectField,\n} from '../../fields/config/types.js'\n\nexport type RowData = Record<string, any>\n\nexport type CellComponentProps = {\n /**\n * A custom component to override the default cell component. If this is not set, the React component will be\n * taken from cellComponents based on the field type.\n *\n * This is used to provide the RichText cell component for the RichText field.\n */\n CellComponentOverride?: React.ReactNode\n blocks?: {\n labels: BlockField['labels']\n slug: string\n }[]\n className?: string\n dateDisplayFormat?: DateField['admin']['date']['displayFormat']\n fieldType?: Field['type']\n isFieldAffectingData?: boolean\n label?: Record<string, string> | string\n labels?: Labels\n link?: boolean\n name: FieldBase['name']\n onClick?: (args: {\n cellData: unknown\n collectionSlug: SanitizedCollectionConfig['slug']\n rowData: RowData\n }) => void\n options?: SelectField['options']\n relationTo?: RelationshipField['relationTo']\n richTextComponentMap?: Map<string, React.ReactNode> // any should be MappedField\n}\n\nexport type DefaultCellComponentProps<T = any> = CellComponentProps & {\n cellData: T\n customCellContext?: {\n collectionSlug?: SanitizedCollectionConfig['slug']\n uploadConfig?: SanitizedCollectionConfig['upload']\n }\n rowData: RowData\n}\n"],"names":[],"rangeMappings":"","mappings":"AA2CA,WAOC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/elements/DatePicker.ts"],"sourcesContent":["import type { ReactDatePickerProps } from 'react-datepicker'\n\nexport type SharedProps = {\n displayFormat?: string\n overrides?: ReactDatePickerProps\n pickerAppearance?: 'dayAndTime' | 'dayOnly' | 'default' | 'monthOnly' | 'timeOnly'\n}\n\nexport type TimePickerProps = {\n maxTime?: Date\n minTime?: Date\n timeFormat?: string\n timeIntervals?: number\n}\n\nexport type DayPickerProps = {\n maxDate?: Date\n minDate?: Date\n monthsToShow?: 1 | 2\n}\n\nexport type MonthPickerProps = {\n maxDate?: Date\n minDate?: Date\n}\n\nexport type ConditionalDateProps =\n | (SharedProps &\n DayPickerProps &\n TimePickerProps & {\n pickerAppearance?: 'dayAndTime'\n })\n | (SharedProps &\n DayPickerProps & {\n pickerAppearance: 'dayOnly'\n })\n | (SharedProps &\n MonthPickerProps & {\n pickerAppearance: 'monthOnly'\n })\n | (SharedProps &\n TimePickerProps & {\n pickerAppearance: 'timeOnly'\n })\n | (SharedProps & {\n pickerAppearance?: 'default'\n })\n"],"names":[],"mappings":"AA0BA,WAoBM"}
1
+ {"version":3,"sources":["../../../src/admin/elements/DatePicker.ts"],"sourcesContent":["import type { ReactDatePickerProps } from 'react-datepicker'\n\nexport type SharedProps = {\n displayFormat?: string\n overrides?: ReactDatePickerProps\n pickerAppearance?: 'dayAndTime' | 'dayOnly' | 'default' | 'monthOnly' | 'timeOnly'\n}\n\nexport type TimePickerProps = {\n maxTime?: Date\n minTime?: Date\n timeFormat?: string\n timeIntervals?: number\n}\n\nexport type DayPickerProps = {\n maxDate?: Date\n minDate?: Date\n monthsToShow?: 1 | 2\n}\n\nexport type MonthPickerProps = {\n maxDate?: Date\n minDate?: Date\n}\n\nexport type ConditionalDateProps =\n | (SharedProps &\n DayPickerProps &\n TimePickerProps & {\n pickerAppearance?: 'dayAndTime'\n })\n | (SharedProps &\n DayPickerProps & {\n pickerAppearance: 'dayOnly'\n })\n | (SharedProps &\n MonthPickerProps & {\n pickerAppearance: 'monthOnly'\n })\n | (SharedProps &\n TimePickerProps & {\n pickerAppearance: 'timeOnly'\n })\n | (SharedProps & {\n pickerAppearance?: 'default'\n })\n"],"names":[],"rangeMappings":"","mappings":"AA0BA,WAoBM"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/elements/PreviewButton.ts"],"sourcesContent":["export type CustomPreviewButton = React.ComponentType\n"],"names":[],"mappings":"AAAA,WAAqD"}
1
+ {"version":3,"sources":["../../../src/admin/elements/PreviewButton.ts"],"sourcesContent":["export type CustomPreviewButton = React.ComponentType\n"],"names":[],"rangeMappings":"","mappings":"AAAA,WAAqD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/elements/PublishButton.ts"],"sourcesContent":["export type CustomPublishButton = React.ComponentType\n"],"names":[],"mappings":"AAAA,WAAqD"}
1
+ {"version":3,"sources":["../../../src/admin/elements/PublishButton.ts"],"sourcesContent":["export type CustomPublishButton = React.ComponentType\n"],"names":[],"rangeMappings":"","mappings":"AAAA,WAAqD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/elements/SaveButton.ts"],"sourcesContent":["export type CustomSaveButton = React.ComponentType\n"],"names":[],"mappings":"AAAA,WAAkD"}
1
+ {"version":3,"sources":["../../../src/admin/elements/SaveButton.ts"],"sourcesContent":["export type CustomSaveButton = React.ComponentType\n"],"names":[],"rangeMappings":"","mappings":"AAAA,WAAkD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/elements/SaveDraftButton.ts"],"sourcesContent":["export type CustomSaveDraftButton = React.ComponentType\n"],"names":[],"mappings":"AAAA,WAAuD"}
1
+ {"version":3,"sources":["../../../src/admin/elements/SaveDraftButton.ts"],"sourcesContent":["export type CustomSaveDraftButton = React.ComponentType\n"],"names":[],"rangeMappings":"","mappings":"AAAA,WAAuD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/elements/Tab.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\n\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\n\nexport type DocumentTabProps = {\n apiURL?: string\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig?: SanitizedGlobalConfig\n i18n: I18n\n}\n\nexport type DocumentTabCondition = (args: {\n collectionConfig: SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig: SanitizedGlobalConfig\n}) => boolean\n\n// Everything is optional because we merge in the defaults\n// i.e. the config may override the `Default` view with a `label` but not an `href`\nexport type DocumentTabConfig = {\n Pill?: React.ComponentType\n condition?: DocumentTabCondition\n href?:\n | ((args: {\n apiURL: string\n collection: SanitizedCollectionConfig\n global: SanitizedGlobalConfig\n id?: string\n routes: SanitizedConfig['routes']\n }) => string)\n | string\n isActive?: ((args: { href: string }) => boolean) | boolean\n label?: ((args: { t: (key: string) => string }) => string) | string\n newTab?: boolean\n}\n\nexport type DocumentTabComponent = React.ComponentType<{\n path: string\n}>\n\nexport type DocumentTab = DocumentTabComponent | DocumentTabConfig\n"],"names":[],"mappings":"AA2CA,WAAkE"}
1
+ {"version":3,"sources":["../../../src/admin/elements/Tab.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\n\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\n\nexport type DocumentTabProps = {\n apiURL?: string\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig?: SanitizedGlobalConfig\n i18n: I18n\n}\n\nexport type DocumentTabCondition = (args: {\n collectionConfig: SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig: SanitizedGlobalConfig\n}) => boolean\n\n// Everything is optional because we merge in the defaults\n// i.e. the config may override the `Default` view with a `label` but not an `href`\nexport type DocumentTabConfig = {\n Pill?: React.ComponentType\n condition?: DocumentTabCondition\n href?:\n | ((args: {\n apiURL: string\n collection: SanitizedCollectionConfig\n global: SanitizedGlobalConfig\n id?: string\n routes: SanitizedConfig['routes']\n }) => string)\n | string\n isActive?: ((args: { href: string }) => boolean) | boolean\n label?: ((args: { t: (key: string) => string }) => string) | string\n newTab?: boolean\n}\n\nexport type DocumentTabComponent = React.ComponentType<{\n path: string\n}>\n\nexport type DocumentTab = DocumentTabComponent | DocumentTabConfig\n"],"names":[],"rangeMappings":"","mappings":"AA2CA,WAAkE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/forms/Error.ts"],"sourcesContent":["export type ErrorProps = {\n CustomError?: React.ReactNode\n alignCaret?: 'center' | 'left' | 'right'\n message?: string\n path?: string\n showError?: boolean\n}\n"],"names":[],"mappings":"AAAA,WAMC"}
1
+ {"version":3,"sources":["../../../src/admin/forms/Error.ts"],"sourcesContent":["export type ErrorProps = {\n CustomError?: React.ReactNode\n alignCaret?: 'center' | 'left' | 'right'\n message?: string\n path?: string\n showError?: boolean\n}\n"],"names":[],"rangeMappings":"","mappings":"AAAA,WAMC"}
@@ -1,5 +1,6 @@
1
1
  import type React from 'react';
2
- export type DescriptionFunction = () => string;
2
+ import type { LabelFunction } from '../../config/types.js';
3
+ export type DescriptionFunction = LabelFunction;
3
4
  export type DescriptionComponent = React.ComponentType<FieldDescriptionProps>;
4
5
  export type Description = DescriptionComponent | DescriptionFunction | Record<string, string> | string;
5
6
  export type FieldDescriptionProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"FieldDescription.d.ts","sourceRoot":"","sources":["../../../src/admin/forms/FieldDescription.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,MAAM,MAAM,mBAAmB,GAAG,MAAM,MAAM,CAAA;AAE9C,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAA;AAE7E,MAAM,MAAM,WAAW,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtB,MAAM,CAAA;AAEV,MAAM,MAAM,qBAAqB,GAAG;IAClC,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;IAC7C,eAAe,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAA;CACnC,CAAA"}
1
+ {"version":3,"file":"FieldDescription.d.ts","sourceRoot":"","sources":["../../../src/admin/forms/FieldDescription.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAA;AAE/C,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAA;AAE7E,MAAM,MAAM,WAAW,GACnB,oBAAoB,GACpB,mBAAmB,GACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtB,MAAM,CAAA;AAEV,MAAM,MAAM,qBAAqB,GAAG;IAClC,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAA;IAC7C,eAAe,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAA;CACnC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/forms/FieldDescription.ts"],"sourcesContent":["import type React from 'react'\n\nexport type DescriptionFunction = () => string\n\nexport type DescriptionComponent = React.ComponentType<FieldDescriptionProps>\n\nexport type Description =\n | DescriptionComponent\n | DescriptionFunction\n | Record<string, string>\n | string\n\nexport type FieldDescriptionProps = {\n CustomDescription?: React.ReactNode\n className?: string\n description?: Record<string, string> | string\n marginPlacement?: 'bottom' | 'top'\n}\n"],"names":[],"mappings":"AAYA,WAKC"}
1
+ {"version":3,"sources":["../../../src/admin/forms/FieldDescription.ts"],"sourcesContent":["import type React from 'react'\n\nimport type { LabelFunction } from '../../config/types.js'\n\nexport type DescriptionFunction = LabelFunction\n\nexport type DescriptionComponent = React.ComponentType<FieldDescriptionProps>\n\nexport type Description =\n | DescriptionComponent\n | DescriptionFunction\n | Record<string, string>\n | string\n\nexport type FieldDescriptionProps = {\n CustomDescription?: React.ReactNode\n className?: string\n description?: Record<string, string> | string\n marginPlacement?: 'bottom' | 'top'\n}\n"],"names":[],"rangeMappings":"","mappings":"AAcA,WAKC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/forms/FieldTypes.ts"],"sourcesContent":["export type FieldTypes = {\n array: React.ComponentType<any>\n blocks: React.ComponentType<any>\n checkbox: React.ComponentType<any>\n code: React.ComponentType<any>\n collapsible: React.ComponentType<any>\n confirmPassword: React.ComponentType<any>\n date: React.ComponentType<any>\n email: React.ComponentType<any>\n group: React.ComponentType<any>\n hidden: React.ComponentType<any>\n json: React.ComponentType<any>\n number: React.ComponentType<any>\n password: React.ComponentType<any>\n point: React.ComponentType<any>\n radio: React.ComponentType<any>\n relationship: React.ComponentType<any>\n richText: React.ComponentType<any>\n row: React.ComponentType<any>\n select: React.ComponentType<any>\n tabs: React.ComponentType<any>\n text: React.ComponentType<any>\n textarea: React.ComponentType<any>\n ui: React.ComponentType<any>\n upload: React.ComponentType<any>\n}\n"],"names":[],"mappings":"AAAA,WAyBC"}
1
+ {"version":3,"sources":["../../../src/admin/forms/FieldTypes.ts"],"sourcesContent":["export type FieldTypes = {\n array: React.ComponentType<any>\n blocks: React.ComponentType<any>\n checkbox: React.ComponentType<any>\n code: React.ComponentType<any>\n collapsible: React.ComponentType<any>\n confirmPassword: React.ComponentType<any>\n date: React.ComponentType<any>\n email: React.ComponentType<any>\n group: React.ComponentType<any>\n hidden: React.ComponentType<any>\n json: React.ComponentType<any>\n number: React.ComponentType<any>\n password: React.ComponentType<any>\n point: React.ComponentType<any>\n radio: React.ComponentType<any>\n relationship: React.ComponentType<any>\n richText: React.ComponentType<any>\n row: React.ComponentType<any>\n select: React.ComponentType<any>\n tabs: React.ComponentType<any>\n text: React.ComponentType<any>\n textarea: React.ComponentType<any>\n ui: React.ComponentType<any>\n upload: React.ComponentType<any>\n}\n"],"names":[],"rangeMappings":"","mappings":"AAAA,WAyBC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/forms/Form.ts"],"sourcesContent":["import type { ClientValidate, Field } from '../../fields/config/types.js'\nimport type { Where } from '../../types/index.js'\n\nexport type Data = {\n [key: string]: any\n}\n\nexport type Row = {\n blockType?: string\n collapsed?: boolean\n id: string\n}\n\nexport type FilterOptionsResult = {\n [relation: string]: Where | boolean\n}\n\nexport type FormField = {\n disableFormData?: boolean\n errorMessage?: string\n errorPaths?: string[]\n fieldSchema?: Field\n filterOptions?: FilterOptionsResult\n initialValue: unknown\n passesCondition?: boolean\n rows?: Row[]\n valid: boolean\n validate?: ClientValidate\n value: unknown\n}\n\nexport type FormState = {\n [path: string]: FormField\n}\n"],"names":[],"mappings":"AA+BA,WAEC"}
1
+ {"version":3,"sources":["../../../src/admin/forms/Form.ts"],"sourcesContent":["import type { ClientValidate, Field } from '../../fields/config/types.js'\nimport type { Where } from '../../types/index.js'\n\nexport type Data = {\n [key: string]: any\n}\n\nexport type Row = {\n blockType?: string\n collapsed?: boolean\n id: string\n}\n\nexport type FilterOptionsResult = {\n [relation: string]: Where | boolean\n}\n\nexport type FormField = {\n disableFormData?: boolean\n errorMessage?: string\n errorPaths?: string[]\n fieldSchema?: Field\n filterOptions?: FilterOptionsResult\n initialValue: unknown\n passesCondition?: boolean\n rows?: Row[]\n valid: boolean\n validate?: ClientValidate\n value: unknown\n}\n\nexport type FormState = {\n [path: string]: FormField\n}\n"],"names":[],"rangeMappings":"","mappings":"AA+BA,WAEC"}
@@ -1,8 +1,9 @@
1
+ import type { LabelFunction } from '../../config/types.js';
1
2
  export type LabelProps = {
2
3
  CustomLabel?: React.ReactNode;
3
4
  as?: 'label' | 'span';
4
5
  htmlFor?: string;
5
- label?: Record<string, string> | false | string;
6
+ label?: LabelFunction | Record<string, string> | false | string;
6
7
  required?: boolean;
7
8
  unstyled?: boolean;
8
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Label.d.ts","sourceRoot":"","sources":["../../../src/admin/forms/Label.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,GAAG,MAAM,CAAA;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA"}
1
+ {"version":3,"file":"Label.d.ts","sourceRoot":"","sources":["../../../src/admin/forms/Label.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAE1D,MAAM,MAAM,UAAU,GAAG;IACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,GAAG,MAAM,CAAA;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/forms/Label.ts"],"sourcesContent":["export type LabelProps = {\n CustomLabel?: React.ReactNode\n as?: 'label' | 'span'\n htmlFor?: string\n label?: Record<string, string> | false | string\n required?: boolean\n unstyled?: boolean\n}\n"],"names":[],"mappings":"AAAA,WAOC"}
1
+ {"version":3,"sources":["../../../src/admin/forms/Label.ts"],"sourcesContent":["import type { LabelFunction } from '../../config/types.js'\n\nexport type LabelProps = {\n CustomLabel?: React.ReactNode\n as?: 'label' | 'span'\n htmlFor?: string\n label?: LabelFunction | Record<string, string> | false | string\n required?: boolean\n unstyled?: boolean\n}\n"],"names":[],"rangeMappings":"","mappings":"AAEA,WAOC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/forms/RowLabel.ts"],"sourcesContent":["export type RowLabelComponent = React.ComponentType\n\nexport type RowLabel = Record<string, string> | RowLabelComponent | string\n"],"names":[],"mappings":"AAEA,WAA0E"}
1
+ {"version":3,"sources":["../../../src/admin/forms/RowLabel.ts"],"sourcesContent":["export type RowLabelComponent = React.ComponentType\n\nexport type RowLabel = Record<string, string> | RowLabelComponent | string\n"],"names":[],"rangeMappings":"","mappings":"AAEA,WAA0E"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/admin/types.ts"],"sourcesContent":["export type { RichTextAdapter, RichTextFieldProps } from './RichText.js'\nexport type { CellComponentProps, DefaultCellComponentProps } from './elements/Cell.js'\nexport type { ConditionalDateProps } from './elements/DatePicker.js'\nexport type { DayPickerProps, SharedProps, TimePickerProps } from './elements/DatePicker.js'\nexport type { CustomPreviewButton } from './elements/PreviewButton.js'\nexport type { CustomPublishButton } from './elements/PublishButton.js'\nexport type { CustomSaveButton } from './elements/SaveButton.js'\nexport type { CustomSaveDraftButton } from './elements/SaveDraftButton.js'\nexport type {\n DocumentTab,\n DocumentTabComponent,\n DocumentTabCondition,\n DocumentTabConfig,\n DocumentTabProps,\n} from './elements/Tab.js'\nexport type { ErrorProps } from './forms/Error.js'\nexport type {\n Description,\n DescriptionComponent,\n DescriptionFunction,\n FieldDescriptionProps,\n} from './forms/FieldDescription.js'\nexport type { Data, FilterOptionsResult, FormField, FormState, Row } from './forms/Form.js'\nexport type { LabelProps } from './forms/Label.js'\nexport type { RowLabel, RowLabelComponent } from './forms/RowLabel.js'\n\nexport type {\n AdminViewComponent,\n AdminViewProps,\n EditViewProps,\n InitPageResult,\n ServerSideEditViewProps,\n VisibleEntities,\n} from './views/types.js'\n"],"names":[],"mappings":"AA0BA,WAOyB"}
1
+ {"version":3,"sources":["../../src/admin/types.ts"],"sourcesContent":["export type { RichTextAdapter, RichTextFieldProps } from './RichText.js'\nexport type { CellComponentProps, DefaultCellComponentProps } from './elements/Cell.js'\nexport type { ConditionalDateProps } from './elements/DatePicker.js'\nexport type { DayPickerProps, SharedProps, TimePickerProps } from './elements/DatePicker.js'\nexport type { CustomPreviewButton } from './elements/PreviewButton.js'\nexport type { CustomPublishButton } from './elements/PublishButton.js'\nexport type { CustomSaveButton } from './elements/SaveButton.js'\nexport type { CustomSaveDraftButton } from './elements/SaveDraftButton.js'\nexport type {\n DocumentTab,\n DocumentTabComponent,\n DocumentTabCondition,\n DocumentTabConfig,\n DocumentTabProps,\n} from './elements/Tab.js'\nexport type { ErrorProps } from './forms/Error.js'\nexport type {\n Description,\n DescriptionComponent,\n DescriptionFunction,\n FieldDescriptionProps,\n} from './forms/FieldDescription.js'\nexport type { Data, FilterOptionsResult, FormField, FormState, Row } from './forms/Form.js'\nexport type { LabelProps } from './forms/Label.js'\nexport type { RowLabel, RowLabelComponent } from './forms/RowLabel.js'\n\nexport type {\n AdminViewComponent,\n AdminViewProps,\n EditViewProps,\n InitPageResult,\n ServerSideEditViewProps,\n VisibleEntities,\n} from './views/types.js'\n"],"names":[],"rangeMappings":"","mappings":"AA0BA,WAOyB"}
@@ -1,4 +1,4 @@
1
- import type { Translations } from '@payloadcms/translations';
1
+ import type { SupportedLanguages } from '@payloadcms/translations';
2
2
  import type { Permissions } from '../../auth/index.js';
3
3
  import type { SanitizedCollectionConfig } from '../../collections/config/types.js';
4
4
  import type { Locale } from '../../config/types.js';
@@ -39,7 +39,7 @@ export type InitPageResult = {
39
39
  locale: Locale;
40
40
  permissions: Permissions;
41
41
  req: PayloadRequest;
42
- translations: Translations;
42
+ translations: SupportedLanguages;
43
43
  visibleEntities: VisibleEntities;
44
44
  };
45
45
  export type ServerSideEditViewProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/admin/views/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,kBAAkB,CAAA;IAC7B,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,cAAc,EAAE,cAAc,CAAA;IAC9B,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;IACzD,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;AAEpE,MAAM,MAAM,SAAS,GAAG,kBAAkB,GAAG,eAAe,CAAA;AAE5D,MAAM,MAAM,aAAa,GAAG;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAA;IAChD,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,WAAW,CAAA;IACxB,GAAG,EAAE,cAAc,CAAA;IACnB,YAAY,EAAE,YAAY,CAAA;IAC1B,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,cAAc,EAAE,cAAc,CAAA;IAC9B,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;IACxD,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/admin/views/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAElE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,kBAAkB,CAAA;IAC7B,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,cAAc,EAAE,cAAc,CAAA;IAC9B,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;IACzD,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;AAEpE,MAAM,MAAM,SAAS,GAAG,kBAAkB,GAAG,eAAe,CAAA;AAE5D,MAAM,MAAM,aAAa,GAAG;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAA;IAChD,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,WAAW,CAAA;IACxB,GAAG,EAAE,cAAc,CAAA;IACnB,YAAY,EAAE,kBAAkB,CAAA;IAChC,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,cAAc,EAAE,cAAc,CAAA;IAC9B,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;IACxD,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/views/types.ts"],"sourcesContent":["import type { Translations } from '@payloadcms/translations'\n\nimport type { Permissions } from '../../auth/index.js'\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { Locale } from '../../config/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\nimport type { PayloadRequest } from '../../types/index.js'\n\nexport type AdminViewConfig = {\n Component: AdminViewComponent\n /** Whether the path should be matched exactly or as a prefix */\n exact?: boolean\n path: string\n sensitive?: boolean\n strict?: boolean\n}\n\nexport type AdminViewProps = {\n initPageResult: InitPageResult\n params?: { [key: string]: string | string[] | undefined }\n searchParams: { [key: string]: string | string[] | undefined }\n}\n\nexport type AdminViewComponent = React.ComponentType<AdminViewProps>\n\nexport type AdminView = AdminViewComponent | AdminViewConfig\n\nexport type EditViewProps = {\n collectionSlug?: string\n globalSlug?: string\n}\n\nexport type VisibleEntities = {\n collections: SanitizedCollectionConfig['slug'][]\n globals: SanitizedGlobalConfig['slug'][]\n}\n\nexport type InitPageResult = {\n collectionConfig?: SanitizedCollectionConfig\n cookies: Map<string, string>\n docID?: string\n globalConfig?: SanitizedGlobalConfig\n locale: Locale\n permissions: Permissions\n req: PayloadRequest\n translations: Translations\n visibleEntities: VisibleEntities\n}\n\nexport type ServerSideEditViewProps = {\n initPageResult: InitPageResult\n params: { [key: string]: string | string[] | undefined }\n routeSegments: string[]\n searchParams: { [key: string]: string | string[] | undefined }\n}\n"],"names":[],"mappings":"AAiDA,WAKC"}
1
+ {"version":3,"sources":["../../../src/admin/views/types.ts"],"sourcesContent":["import type { SupportedLanguages } from '@payloadcms/translations'\n\nimport type { Permissions } from '../../auth/index.js'\nimport type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { Locale } from '../../config/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\nimport type { PayloadRequest } from '../../types/index.js'\n\nexport type AdminViewConfig = {\n Component: AdminViewComponent\n /** Whether the path should be matched exactly or as a prefix */\n exact?: boolean\n path: string\n sensitive?: boolean\n strict?: boolean\n}\n\nexport type AdminViewProps = {\n initPageResult: InitPageResult\n params?: { [key: string]: string | string[] | undefined }\n searchParams: { [key: string]: string | string[] | undefined }\n}\n\nexport type AdminViewComponent = React.ComponentType<AdminViewProps>\n\nexport type AdminView = AdminViewComponent | AdminViewConfig\n\nexport type EditViewProps = {\n collectionSlug?: string\n globalSlug?: string\n}\n\nexport type VisibleEntities = {\n collections: SanitizedCollectionConfig['slug'][]\n globals: SanitizedGlobalConfig['slug'][]\n}\n\nexport type InitPageResult = {\n collectionConfig?: SanitizedCollectionConfig\n cookies: Map<string, string>\n docID?: string\n globalConfig?: SanitizedGlobalConfig\n locale: Locale\n permissions: Permissions\n req: PayloadRequest\n translations: SupportedLanguages\n visibleEntities: VisibleEntities\n}\n\nexport type ServerSideEditViewProps = {\n initPageResult: InitPageResult\n params: { [key: string]: string | string[] | undefined }\n routeSegments: string[]\n searchParams: { [key: string]: string | string[] | undefined }\n}\n"],"names":[],"rangeMappings":"","mappings":"AAiDA,WAKC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/assets/assets.d.ts"],"names":[],"mappings":""}
1
+ {"version":3,"sources":["../../src/assets/assets.d.ts"],"names":[],"rangeMappings":"","mappings":""}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/auth/baseFields/accountLock.ts"],"sourcesContent":["import type { Field } from '../../fields/config/types.js'\n\nexport default [\n {\n name: 'loginAttempts',\n type: 'number',\n defaultValue: 0,\n hidden: true,\n },\n {\n name: 'lockUntil',\n type: 'date',\n hidden: true,\n },\n] as Field[]\n"],"names":["name","type","defaultValue","hidden"],"mappings":"AAEA,eAAe;IACb;QACEA,MAAM;QACNC,MAAM;QACNC,cAAc;QACdC,QAAQ;IACV;IACA;QACEH,MAAM;QACNC,MAAM;QACNE,QAAQ;IACV;CACD,CAAW"}
1
+ {"version":3,"sources":["../../../src/auth/baseFields/accountLock.ts"],"sourcesContent":["import type { Field } from '../../fields/config/types.js'\n\nexport default [\n {\n name: 'loginAttempts',\n type: 'number',\n defaultValue: 0,\n hidden: true,\n },\n {\n name: 'lockUntil',\n type: 'date',\n hidden: true,\n },\n] as Field[]\n"],"names":["name","type","defaultValue","hidden"],"rangeMappings":";;;;;;;;;;;;","mappings":"AAEA,eAAe;IACb;QACEA,MAAM;QACNC,MAAM;QACNC,cAAc;QACdC,QAAQ;IACV;IACA;QACEH,MAAM;QACNC,MAAM;QACNE,QAAQ;IACV;CACD,CAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"apiKey.d.ts","sourceRoot":"","sources":["../../../src/auth/baseFields/apiKey.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,8BAA8B,CAAA;;AAWpE,wBAkDY"}
1
+ {"version":3,"file":"apiKey.d.ts","sourceRoot":"","sources":["../../../src/auth/baseFields/apiKey.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,8BAA8B,CAAA;;AAQpE,wBAkDY"}
@@ -1,11 +1,7 @@
1
1
  import crypto from 'crypto';
2
- import { extractTranslations } from '../../translations/extractTranslations.js';
3
- const labels = extractTranslations([
4
- 'authentication:enableAPIKey',
5
- 'authentication:apiKey'
6
- ]);
7
2
  const encryptKey = ({ req, value })=>value ? req.payload.encrypt(value) : null;
8
3
  const decryptKey = ({ req, value })=>value ? req.payload.decrypt(value) : undefined;
4
+ // eslint-disable-next-line no-restricted-exports
9
5
  export default [
10
6
  {
11
7
  name: 'enableAPIKey',
@@ -16,7 +12,7 @@ export default [
16
12
  }
17
13
  },
18
14
  defaultValue: false,
19
- label: labels['authentication:enableAPIKey']
15
+ label: ({ t })=>t('authentication:enableAPIKey')
20
16
  },
21
17
  {
22
18
  name: 'apiKey',
@@ -34,7 +30,7 @@ export default [
34
30
  encryptKey
35
31
  ]
36
32
  },
37
- label: labels['authentication:apiKey']
33
+ label: ({ t })=>t('authentication:apiKey')
38
34
  },
39
35
  {
40
36
  name: 'apiKeyIndex',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/auth/baseFields/apiKey.ts"],"sourcesContent":["import crypto from 'crypto'\n\nimport type { Field, FieldHook } from '../../fields/config/types.js'\n\nimport { extractTranslations } from '../../translations/extractTranslations.js'\n\nconst labels = extractTranslations(['authentication:enableAPIKey', 'authentication:apiKey'])\n\nconst encryptKey: FieldHook = ({ req, value }) =>\n value ? req.payload.encrypt(value as string) : null\nconst decryptKey: FieldHook = ({ req, value }) =>\n value ? req.payload.decrypt(value as string) : undefined\n\nexport default [\n {\n name: 'enableAPIKey',\n type: 'checkbox',\n admin: {\n components: {\n Field: () => null,\n },\n },\n defaultValue: false,\n label: labels['authentication:enableAPIKey'],\n },\n {\n name: 'apiKey',\n type: 'text',\n admin: {\n components: {\n Field: () => null,\n },\n },\n hooks: {\n afterRead: [decryptKey],\n beforeChange: [encryptKey],\n },\n label: labels['authentication:apiKey'],\n },\n {\n name: 'apiKeyIndex',\n type: 'text',\n admin: {\n disabled: true,\n },\n hidden: true,\n hooks: {\n beforeValidate: [\n ({ data, req, value }) => {\n if (data.apiKey) {\n return crypto\n .createHmac('sha1', req.payload.secret)\n .update(data.apiKey as string)\n .digest('hex')\n }\n if (data.enableAPIKey === false) {\n return null\n }\n return value\n },\n ],\n },\n },\n] as Field[]\n"],"names":["crypto","extractTranslations","labels","encryptKey","req","value","payload","encrypt","decryptKey","decrypt","undefined","name","type","admin","components","Field","defaultValue","label","hooks","afterRead","beforeChange","disabled","hidden","beforeValidate","data","apiKey","createHmac","secret","update","digest","enableAPIKey"],"mappings":"AAAA,OAAOA,YAAY,SAAQ;AAI3B,SAASC,mBAAmB,QAAQ,4CAA2C;AAE/E,MAAMC,SAASD,oBAAoB;IAAC;IAA+B;CAAwB;AAE3F,MAAME,aAAwB,CAAC,EAAEC,GAAG,EAAEC,KAAK,EAAE,GAC3CA,QAAQD,IAAIE,OAAO,CAACC,OAAO,CAACF,SAAmB;AACjD,MAAMG,aAAwB,CAAC,EAAEJ,GAAG,EAAEC,KAAK,EAAE,GAC3CA,QAAQD,IAAIE,OAAO,CAACG,OAAO,CAACJ,SAAmBK;AAEjD,eAAe;IACb;QACEC,MAAM;QACNC,MAAM;QACNC,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAC,cAAc;QACdC,OAAOf,MAAM,CAAC,8BAA8B;IAC9C;IACA;QACES,MAAM;QACNC,MAAM;QACNC,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAG,OAAO;YACLC,WAAW;gBAACX;aAAW;YACvBY,cAAc;gBAACjB;aAAW;QAC5B;QACAc,OAAOf,MAAM,CAAC,wBAAwB;IACxC;IACA;QACES,MAAM;QACNC,MAAM;QACNC,OAAO;YACLQ,UAAU;QACZ;QACAC,QAAQ;QACRJ,OAAO;YACLK,gBAAgB;gBACd,CAAC,EAAEC,IAAI,EAAEpB,GAAG,EAAEC,KAAK,EAAE;oBACnB,IAAImB,KAAKC,MAAM,EAAE;wBACf,OAAOzB,OACJ0B,UAAU,CAAC,QAAQtB,IAAIE,OAAO,CAACqB,MAAM,EACrCC,MAAM,CAACJ,KAAKC,MAAM,EAClBI,MAAM,CAAC;oBACZ;oBACA,IAAIL,KAAKM,YAAY,KAAK,OAAO;wBAC/B,OAAO;oBACT;oBACA,OAAOzB;gBACT;aACD;QACH;IACF;CACD,CAAW"}
1
+ {"version":3,"sources":["../../../src/auth/baseFields/apiKey.ts"],"sourcesContent":["import crypto from 'crypto'\n\nimport type { Field, FieldHook } from '../../fields/config/types.js'\n\nconst encryptKey: FieldHook = ({ req, value }) =>\n value ? req.payload.encrypt(value as string) : null\nconst decryptKey: FieldHook = ({ req, value }) =>\n value ? req.payload.decrypt(value as string) : undefined\n\n// eslint-disable-next-line no-restricted-exports\nexport default [\n {\n name: 'enableAPIKey',\n type: 'checkbox',\n admin: {\n components: {\n Field: () => null,\n },\n },\n defaultValue: false,\n label: ({ t }) => t('authentication:enableAPIKey'),\n },\n {\n name: 'apiKey',\n type: 'text',\n admin: {\n components: {\n Field: () => null,\n },\n },\n hooks: {\n afterRead: [decryptKey],\n beforeChange: [encryptKey],\n },\n label: ({ t }) => t('authentication:apiKey'),\n },\n {\n name: 'apiKeyIndex',\n type: 'text',\n admin: {\n disabled: true,\n },\n hidden: true,\n hooks: {\n beforeValidate: [\n ({ data, req, value }) => {\n if (data.apiKey) {\n return crypto\n .createHmac('sha1', req.payload.secret)\n .update(data.apiKey as string)\n .digest('hex')\n }\n if (data.enableAPIKey === false) {\n return null\n }\n return value\n },\n ],\n },\n },\n] as Field[]\n"],"names":["crypto","encryptKey","req","value","payload","encrypt","decryptKey","decrypt","undefined","name","type","admin","components","Field","defaultValue","label","t","hooks","afterRead","beforeChange","disabled","hidden","beforeValidate","data","apiKey","createHmac","secret","update","digest","enableAPIKey"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,YAAY,SAAQ;AAI3B,MAAMC,aAAwB,CAAC,EAAEC,GAAG,EAAEC,KAAK,EAAE,GAC3CA,QAAQD,IAAIE,OAAO,CAACC,OAAO,CAACF,SAAmB;AACjD,MAAMG,aAAwB,CAAC,EAAEJ,GAAG,EAAEC,KAAK,EAAE,GAC3CA,QAAQD,IAAIE,OAAO,CAACG,OAAO,CAACJ,SAAmBK;AAEjD,iDAAiD;AACjD,eAAe;IACb;QACEC,MAAM;QACNC,MAAM;QACNC,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAC,cAAc;QACdC,OAAO,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;IACtB;IACA;QACEP,MAAM;QACNC,MAAM;QACNC,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAI,OAAO;YACLC,WAAW;gBAACZ;aAAW;YACvBa,cAAc;gBAAClB;aAAW;QAC5B;QACAc,OAAO,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;IACtB;IACA;QACEP,MAAM;QACNC,MAAM;QACNC,OAAO;YACLS,UAAU;QACZ;QACAC,QAAQ;QACRJ,OAAO;YACLK,gBAAgB;gBACd,CAAC,EAAEC,IAAI,EAAErB,GAAG,EAAEC,KAAK,EAAE;oBACnB,IAAIoB,KAAKC,MAAM,EAAE;wBACf,OAAOxB,OACJyB,UAAU,CAAC,QAAQvB,IAAIE,OAAO,CAACsB,MAAM,EACrCC,MAAM,CAACJ,KAAKC,MAAM,EAClBI,MAAM,CAAC;oBACZ;oBACA,IAAIL,KAAKM,YAAY,KAAK,OAAO;wBAC/B,OAAO;oBACT;oBACA,OAAO1B;gBACT;aACD;QACH;IACF;CACD,CAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/auth/baseFields/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAOzD,QAAA,MAAM,cAAc,EAAE,KAAK,EAkC1B,CAAA;AAED,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/auth/baseFields/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAIzD,QAAA,MAAM,cAAc,EAAE,KAAK,EAkC1B,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,8 +1,4 @@
1
1
  import { email } from '../../fields/validations.js';
2
- import { extractTranslations } from '../../translations/extractTranslations.js';
3
- const labels = extractTranslations([
4
- 'general:email'
5
- ]);
6
2
  const baseAuthFields = [
7
3
  {
8
4
  name: 'email',
@@ -12,7 +8,7 @@ const baseAuthFields = [
12
8
  Field: ()=>null
13
9
  }
14
10
  },
15
- label: labels['general:email'],
11
+ label: ({ t })=>t('general:email'),
16
12
  required: true,
17
13
  unique: true,
18
14
  validate: email
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/auth/baseFields/auth.ts"],"sourcesContent":["import type { Field } from '../../fields/config/types.js'\n\nimport { email } from '../../fields/validations.js'\nimport { extractTranslations } from '../../translations/extractTranslations.js'\n\nconst labels = extractTranslations(['general:email'])\n\nconst baseAuthFields: Field[] = [\n {\n name: 'email',\n type: 'email',\n admin: {\n components: {\n Field: () => null,\n },\n },\n label: labels['general:email'],\n required: true,\n unique: true,\n validate: email,\n },\n {\n name: 'resetPasswordToken',\n type: 'text',\n hidden: true,\n },\n {\n name: 'resetPasswordExpiration',\n type: 'date',\n hidden: true,\n },\n {\n name: 'salt',\n type: 'text',\n hidden: true,\n },\n {\n name: 'hash',\n type: 'text',\n hidden: true,\n },\n]\n\nexport default baseAuthFields\n"],"names":["email","extractTranslations","labels","baseAuthFields","name","type","admin","components","Field","label","required","unique","validate","hidden"],"mappings":"AAEA,SAASA,KAAK,QAAQ,8BAA6B;AACnD,SAASC,mBAAmB,QAAQ,4CAA2C;AAE/E,MAAMC,SAASD,oBAAoB;IAAC;CAAgB;AAEpD,MAAME,iBAA0B;IAC9B;QACEC,MAAM;QACNC,MAAM;QACNC,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAC,OAAOP,MAAM,CAAC,gBAAgB;QAC9BQ,UAAU;QACVC,QAAQ;QACRC,UAAUZ;IACZ;IACA;QACEI,MAAM;QACNC,MAAM;QACNQ,QAAQ;IACV;IACA;QACET,MAAM;QACNC,MAAM;QACNQ,QAAQ;IACV;IACA;QACET,MAAM;QACNC,MAAM;QACNQ,QAAQ;IACV;IACA;QACET,MAAM;QACNC,MAAM;QACNQ,QAAQ;IACV;CACD;AAED,eAAeV,eAAc"}
1
+ {"version":3,"sources":["../../../src/auth/baseFields/auth.ts"],"sourcesContent":["import type { Field } from '../../fields/config/types.js'\n\nimport { email } from '../../fields/validations.js'\n\nconst baseAuthFields: Field[] = [\n {\n name: 'email',\n type: 'email',\n admin: {\n components: {\n Field: () => null,\n },\n },\n label: ({ t }) => t('general:email'),\n required: true,\n unique: true,\n validate: email,\n },\n {\n name: 'resetPasswordToken',\n type: 'text',\n hidden: true,\n },\n {\n name: 'resetPasswordExpiration',\n type: 'date',\n hidden: true,\n },\n {\n name: 'salt',\n type: 'text',\n hidden: true,\n },\n {\n name: 'hash',\n type: 'text',\n hidden: true,\n },\n]\n\nexport default baseAuthFields\n"],"names":["email","baseAuthFields","name","type","admin","components","Field","label","t","required","unique","validate","hidden"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,KAAK,QAAQ,8BAA6B;AAEnD,MAAMC,iBAA0B;IAC9B;QACEC,MAAM;QACNC,MAAM;QACNC,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAC,OAAO,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;QACpBC,UAAU;QACVC,QAAQ;QACRC,UAAUX;IACZ;IACA;QACEE,MAAM;QACNC,MAAM;QACNS,QAAQ;IACV;IACA;QACEV,MAAM;QACNC,MAAM;QACNS,QAAQ;IACV;IACA;QACEV,MAAM;QACNC,MAAM;QACNS,QAAQ;IACV;IACA;QACEV,MAAM;QACNC,MAAM;QACNS,QAAQ;IACV;CACD;AAED,eAAeX,eAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/auth/baseFields/verification.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,8BAA8B,CAAA;;AAqBpE,wBAwBY"}
1
+ {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../src/auth/baseFields/verification.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,8BAA8B,CAAA;;AAiBpE,wBAwBY"}
@@ -1,7 +1,3 @@
1
- import { extractTranslations } from '../../translations/extractTranslations.js';
2
- const labels = extractTranslations([
3
- 'authentication:verified'
4
- ]);
5
1
  const autoRemoveVerificationToken = ({ data, operation, originalDoc, value })=>{
6
2
  // If a user manually sets `_verified` to true,
7
3
  // and it was `false`, set _verificationToken to `null`.
@@ -28,7 +24,7 @@ export default [
28
24
  Field: ()=>null
29
25
  }
30
26
  },
31
- label: labels['authentication:verified']
27
+ label: ({ t })=>t('authentication:verified')
32
28
  },
33
29
  {
34
30
  name: '_verificationToken',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/auth/baseFields/verification.ts"],"sourcesContent":["import type { Field, FieldHook } from '../../fields/config/types.js'\n\nimport { extractTranslations } from '../../translations/extractTranslations.js'\n\nconst labels = extractTranslations(['authentication:verified'])\n\nconst autoRemoveVerificationToken: FieldHook = ({ data, operation, originalDoc, value }) => {\n // If a user manually sets `_verified` to true,\n // and it was `false`, set _verificationToken to `null`.\n // This is useful because the admin panel\n // allows users to set `_verified` to true manually\n\n if (operation === 'update') {\n if (data?._verified === true && originalDoc?._verified === false) {\n return null\n }\n }\n\n return value\n}\n\nexport default [\n {\n name: '_verified',\n type: 'checkbox',\n access: {\n create: ({ req: { user } }) => Boolean(user),\n read: ({ req: { user } }) => Boolean(user),\n update: ({ req: { user } }) => Boolean(user),\n },\n admin: {\n components: {\n Field: () => null,\n },\n },\n label: labels['authentication:verified'],\n },\n {\n name: '_verificationToken',\n type: 'text',\n hidden: true,\n hooks: {\n beforeChange: [autoRemoveVerificationToken],\n },\n },\n] as Field[]\n"],"names":["extractTranslations","labels","autoRemoveVerificationToken","data","operation","originalDoc","value","_verified","name","type","access","create","req","user","Boolean","read","update","admin","components","Field","label","hidden","hooks","beforeChange"],"mappings":"AAEA,SAASA,mBAAmB,QAAQ,4CAA2C;AAE/E,MAAMC,SAASD,oBAAoB;IAAC;CAA0B;AAE9D,MAAME,8BAAyC,CAAC,EAAEC,IAAI,EAAEC,SAAS,EAAEC,WAAW,EAAEC,KAAK,EAAE;IACrF,+CAA+C;IAC/C,wDAAwD;IACxD,yCAAyC;IACzC,mDAAmD;IAEnD,IAAIF,cAAc,UAAU;QAC1B,IAAID,MAAMI,cAAc,QAAQF,aAAaE,cAAc,OAAO;YAChE,OAAO;QACT;IACF;IAEA,OAAOD;AACT;AAEA,eAAe;IACb;QACEE,MAAM;QACNC,MAAM;QACNC,QAAQ;YACNC,QAAQ,CAAC,EAAEC,KAAK,EAAEC,IAAI,EAAE,EAAE,GAAKC,QAAQD;YACvCE,MAAM,CAAC,EAAEH,KAAK,EAAEC,IAAI,EAAE,EAAE,GAAKC,QAAQD;YACrCG,QAAQ,CAAC,EAAEJ,KAAK,EAAEC,IAAI,EAAE,EAAE,GAAKC,QAAQD;QACzC;QACAI,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAC,OAAOnB,MAAM,CAAC,0BAA0B;IAC1C;IACA;QACEO,MAAM;QACNC,MAAM;QACNY,QAAQ;QACRC,OAAO;YACLC,cAAc;gBAACrB;aAA4B;QAC7C;IACF;CACD,CAAW"}
1
+ {"version":3,"sources":["../../../src/auth/baseFields/verification.ts"],"sourcesContent":["import type { Field, FieldHook } from '../../fields/config/types.js'\n\nconst autoRemoveVerificationToken: FieldHook = ({ data, operation, originalDoc, value }) => {\n // If a user manually sets `_verified` to true,\n // and it was `false`, set _verificationToken to `null`.\n // This is useful because the admin panel\n // allows users to set `_verified` to true manually\n\n if (operation === 'update') {\n if (data?._verified === true && originalDoc?._verified === false) {\n return null\n }\n }\n\n return value\n}\n\nexport default [\n {\n name: '_verified',\n type: 'checkbox',\n access: {\n create: ({ req: { user } }) => Boolean(user),\n read: ({ req: { user } }) => Boolean(user),\n update: ({ req: { user } }) => Boolean(user),\n },\n admin: {\n components: {\n Field: () => null,\n },\n },\n label: ({ t }) => t('authentication:verified'),\n },\n {\n name: '_verificationToken',\n type: 'text',\n hidden: true,\n hooks: {\n beforeChange: [autoRemoveVerificationToken],\n },\n },\n] as Field[]\n"],"names":["autoRemoveVerificationToken","data","operation","originalDoc","value","_verified","name","type","access","create","req","user","Boolean","read","update","admin","components","Field","label","t","hidden","hooks","beforeChange"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,MAAMA,8BAAyC,CAAC,EAAEC,IAAI,EAAEC,SAAS,EAAEC,WAAW,EAAEC,KAAK,EAAE;IACrF,+CAA+C;IAC/C,wDAAwD;IACxD,yCAAyC;IACzC,mDAAmD;IAEnD,IAAIF,cAAc,UAAU;QAC1B,IAAID,MAAMI,cAAc,QAAQF,aAAaE,cAAc,OAAO;YAChE,OAAO;QACT;IACF;IAEA,OAAOD;AACT;AAEA,eAAe;IACb;QACEE,MAAM;QACNC,MAAM;QACNC,QAAQ;YACNC,QAAQ,CAAC,EAAEC,KAAK,EAAEC,IAAI,EAAE,EAAE,GAAKC,QAAQD;YACvCE,MAAM,CAAC,EAAEH,KAAK,EAAEC,IAAI,EAAE,EAAE,GAAKC,QAAQD;YACrCG,QAAQ,CAAC,EAAEJ,KAAK,EAAEC,IAAI,EAAE,EAAE,GAAKC,QAAQD;QACzC;QACAI,OAAO;YACLC,YAAY;gBACVC,OAAO,IAAM;YACf;QACF;QACAC,OAAO,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;IACtB;IACA;QACEb,MAAM;QACNC,MAAM;QACNa,QAAQ;QACRC,OAAO;YACLC,cAAc;gBAACtB;aAA4B;QAC7C;IACF;CACD,CAAW"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/cookies.ts"],"sourcesContent":["import type { Payload } from '../index.js'\nimport type { SanitizedCollectionConfig } from './../collections/config/types.js'\ntype CookieOptions = {\n domain?: string\n expires?: Date\n httpOnly?: boolean\n maxAge?: number\n name: string\n path?: string\n sameSite?: 'Lax' | 'None' | 'Strict'\n secure?: boolean\n value?: string\n}\n\nexport const generateCookies = (cookies: CookieOptions[]): string => {\n return cookies.map((options) => generateCookie(options)).join('; ')\n}\n\nexport const generateCookie = (args: CookieOptions): string => {\n const { name, domain, expires, httpOnly, maxAge, path, sameSite, secure: secureArg, value } = args\n\n let cookieString = `${name}=${value || ''}`\n\n const secure = secureArg || sameSite === 'None'\n\n if (expires) {\n cookieString += `; Expires=${expires.toUTCString()}`\n }\n\n if (maxAge) {\n cookieString += `; Max-Age=${maxAge}`\n }\n\n if (domain) {\n cookieString += `; Domain=${domain}`\n }\n\n if (path) {\n cookieString += `; Path=${path}`\n }\n\n if (secure) {\n cookieString += '; Secure'\n }\n\n if (httpOnly) {\n cookieString += '; HttpOnly'\n }\n\n if (sameSite) {\n cookieString += `; SameSite=${sameSite}`\n }\n\n return cookieString\n}\n\ntype GetCookieExpirationArgs = {\n /*\n The number of seconds until the cookie expires\n @default 7200 seconds (2 hours)\n */\n seconds: number\n}\nexport const getCookieExpiration = ({ seconds = 7200 }: GetCookieExpirationArgs) => {\n const currentTime = new Date()\n currentTime.setSeconds(currentTime.getSeconds() + seconds)\n return currentTime\n}\n\ntype GeneratePayloadCookieArgs = {\n /* The auth collection config */\n collectionConfig: SanitizedCollectionConfig\n /* An instance of payload */\n payload: Payload\n /* The token to be stored in the cookie */\n token: string\n}\nexport const generatePayloadCookie = ({\n collectionConfig,\n payload,\n token,\n}: GeneratePayloadCookieArgs): string => {\n const sameSite =\n typeof collectionConfig.auth.cookies.sameSite === 'string'\n ? collectionConfig.auth.cookies.sameSite\n : collectionConfig.auth.cookies.sameSite\n ? 'Strict'\n : undefined\n\n return generateCookie({\n name: `${payload.config.cookiePrefix}-token`,\n domain: collectionConfig.auth.cookies.domain ?? undefined,\n expires: getCookieExpiration({ seconds: collectionConfig.auth.tokenExpiration }),\n httpOnly: true,\n path: '/',\n sameSite,\n secure: collectionConfig.auth.cookies.secure,\n value: token,\n })\n}\n\nexport const generateExpiredPayloadCookie = ({\n collectionConfig,\n payload,\n}: Omit<GeneratePayloadCookieArgs, 'token'>): string => {\n const sameSite =\n typeof collectionConfig.auth.cookies.sameSite === 'string'\n ? collectionConfig.auth.cookies.sameSite\n : collectionConfig.auth.cookies.sameSite\n ? 'Strict'\n : undefined\n\n const expires = new Date(Date.now() - 1000)\n\n return generateCookie({\n name: `${payload.config.cookiePrefix}-token`,\n domain: collectionConfig.auth.cookies.domain ?? undefined,\n expires,\n httpOnly: true,\n path: '/',\n sameSite,\n secure: collectionConfig.auth.cookies.secure,\n })\n}\n\nexport const parseCookies = (headers: Request['headers']): Map<string, string> => {\n const cookieMap = new Map<string, string>()\n const cookie = headers.get('Cookie')\n\n if (cookie) {\n cookie.split(';').forEach((cookie) => {\n const parts = cookie.split('=')\n const key = parts.shift().trim()\n const encodedValue = parts.join('=')\n\n try {\n const decodedValue = decodeURI(encodedValue)\n cookieMap.set(key, decodedValue)\n } catch (e) {\n return null\n }\n })\n }\n\n return cookieMap\n}\n"],"names":["generateCookies","cookies","map","options","generateCookie","join","args","name","domain","expires","httpOnly","maxAge","path","sameSite","secure","secureArg","value","cookieString","toUTCString","getCookieExpiration","seconds","currentTime","Date","setSeconds","getSeconds","generatePayloadCookie","collectionConfig","payload","token","auth","undefined","config","cookiePrefix","tokenExpiration","generateExpiredPayloadCookie","now","parseCookies","headers","cookieMap","Map","cookie","get","split","forEach","parts","key","shift","trim","encodedValue","decodedValue","decodeURI","set","e"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/auth/cookies.ts"],"sourcesContent":["import type { Payload } from '../index.js'\nimport type { SanitizedCollectionConfig } from './../collections/config/types.js'\ntype CookieOptions = {\n domain?: string\n expires?: Date\n httpOnly?: boolean\n maxAge?: number\n name: string\n path?: string\n sameSite?: 'Lax' | 'None' | 'Strict'\n secure?: boolean\n value?: string\n}\n\nexport const generateCookies = (cookies: CookieOptions[]): string => {\n return cookies.map((options) => generateCookie(options)).join('; ')\n}\n\nexport const generateCookie = (args: CookieOptions): string => {\n const { name, domain, expires, httpOnly, maxAge, path, sameSite, secure: secureArg, value } = args\n\n let cookieString = `${name}=${value || ''}`\n\n const secure = secureArg || sameSite === 'None'\n\n if (expires) {\n cookieString += `; Expires=${expires.toUTCString()}`\n }\n\n if (maxAge) {\n cookieString += `; Max-Age=${maxAge}`\n }\n\n if (domain) {\n cookieString += `; Domain=${domain}`\n }\n\n if (path) {\n cookieString += `; Path=${path}`\n }\n\n if (secure) {\n cookieString += '; Secure'\n }\n\n if (httpOnly) {\n cookieString += '; HttpOnly'\n }\n\n if (sameSite) {\n cookieString += `; SameSite=${sameSite}`\n }\n\n return cookieString\n}\n\ntype GetCookieExpirationArgs = {\n /*\n The number of seconds until the cookie expires\n @default 7200 seconds (2 hours)\n */\n seconds: number\n}\nexport const getCookieExpiration = ({ seconds = 7200 }: GetCookieExpirationArgs) => {\n const currentTime = new Date()\n currentTime.setSeconds(currentTime.getSeconds() + seconds)\n return currentTime\n}\n\ntype GeneratePayloadCookieArgs = {\n /* The auth collection config */\n collectionConfig: SanitizedCollectionConfig\n /* An instance of payload */\n payload: Payload\n /* The token to be stored in the cookie */\n token: string\n}\nexport const generatePayloadCookie = ({\n collectionConfig,\n payload,\n token,\n}: GeneratePayloadCookieArgs): string => {\n const sameSite =\n typeof collectionConfig.auth.cookies.sameSite === 'string'\n ? collectionConfig.auth.cookies.sameSite\n : collectionConfig.auth.cookies.sameSite\n ? 'Strict'\n : undefined\n\n return generateCookie({\n name: `${payload.config.cookiePrefix}-token`,\n domain: collectionConfig.auth.cookies.domain ?? undefined,\n expires: getCookieExpiration({ seconds: collectionConfig.auth.tokenExpiration }),\n httpOnly: true,\n path: '/',\n sameSite,\n secure: collectionConfig.auth.cookies.secure,\n value: token,\n })\n}\n\nexport const generateExpiredPayloadCookie = ({\n collectionConfig,\n payload,\n}: Omit<GeneratePayloadCookieArgs, 'token'>): string => {\n const sameSite =\n typeof collectionConfig.auth.cookies.sameSite === 'string'\n ? collectionConfig.auth.cookies.sameSite\n : collectionConfig.auth.cookies.sameSite\n ? 'Strict'\n : undefined\n\n const expires = new Date(Date.now() - 1000)\n\n return generateCookie({\n name: `${payload.config.cookiePrefix}-token`,\n domain: collectionConfig.auth.cookies.domain ?? undefined,\n expires,\n httpOnly: true,\n path: '/',\n sameSite,\n secure: collectionConfig.auth.cookies.secure,\n })\n}\n\nexport const parseCookies = (headers: Request['headers']): Map<string, string> => {\n const cookieMap = new Map<string, string>()\n const cookie = headers.get('Cookie')\n\n if (cookie) {\n cookie.split(';').forEach((cookie) => {\n const parts = cookie.split('=')\n const key = parts.shift().trim()\n const encodedValue = parts.join('=')\n\n try {\n const decodedValue = decodeURI(encodedValue)\n cookieMap.set(key, decodedValue)\n } catch (e) {\n return null\n }\n })\n }\n\n return cookieMap\n}\n"],"names":["generateCookies","cookies","map","options","generateCookie","join","args","name","domain","expires","httpOnly","maxAge","path","sameSite","secure","secureArg","value","cookieString","toUTCString","getCookieExpiration","seconds","currentTime","Date","setSeconds","getSeconds","generatePayloadCookie","collectionConfig","payload","token","auth","undefined","config","cookiePrefix","tokenExpiration","generateExpiredPayloadCookie","now","parseCookies","headers","cookieMap","Map","cookie","get","split","forEach","parts","key","shift","trim","encodedValue","decodedValue","decodeURI","set","e"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/crypto.ts"],"sourcesContent":["import crypto from 'crypto'\n\nconst algorithm = 'aes-256-ctr'\n\nexport function encrypt(text: string): string {\n const iv = crypto.randomBytes(16)\n const cipher = crypto.createCipheriv(algorithm, this.secret, iv)\n\n const encrypted = Buffer.concat([cipher.update(text), cipher.final()])\n\n const ivString = iv.toString('hex')\n const encryptedString = encrypted.toString('hex')\n\n return `${ivString}${encryptedString}`\n}\n\nexport function decrypt(hash: string): string {\n const iv = hash.slice(0, 32)\n const content = hash.slice(32)\n\n const decipher = crypto.createDecipheriv(algorithm, this.secret, Buffer.from(iv, 'hex'))\n\n const decrypted = Buffer.concat([decipher.update(Buffer.from(content, 'hex')), decipher.final()])\n\n return decrypted.toString()\n}\n"],"names":["crypto","algorithm","encrypt","text","iv","randomBytes","cipher","createCipheriv","secret","encrypted","Buffer","concat","update","final","ivString","toString","encryptedString","decrypt","hash","slice","content","decipher","createDecipheriv","from","decrypted"],"mappings":"AAAA,OAAOA,YAAY,SAAQ;AAE3B,MAAMC,YAAY;AAElB,OAAO,SAASC,QAAQC,IAAY;IAClC,MAAMC,KAAKJ,OAAOK,WAAW,CAAC;IAC9B,MAAMC,SAASN,OAAOO,cAAc,CAACN,WAAW,IAAI,CAACO,MAAM,EAAEJ;IAE7D,MAAMK,YAAYC,OAAOC,MAAM,CAAC;QAACL,OAAOM,MAAM,CAACT;QAAOG,OAAOO,KAAK;KAAG;IAErE,MAAMC,WAAWV,GAAGW,QAAQ,CAAC;IAC7B,MAAMC,kBAAkBP,UAAUM,QAAQ,CAAC;IAE3C,OAAO,CAAC,EAAED,SAAS,EAAEE,gBAAgB,CAAC;AACxC;AAEA,OAAO,SAASC,QAAQC,IAAY;IAClC,MAAMd,KAAKc,KAAKC,KAAK,CAAC,GAAG;IACzB,MAAMC,UAAUF,KAAKC,KAAK,CAAC;IAE3B,MAAME,WAAWrB,OAAOsB,gBAAgB,CAACrB,WAAW,IAAI,CAACO,MAAM,EAAEE,OAAOa,IAAI,CAACnB,IAAI;IAEjF,MAAMoB,YAAYd,OAAOC,MAAM,CAAC;QAACU,SAAST,MAAM,CAACF,OAAOa,IAAI,CAACH,SAAS;QAASC,SAASR,KAAK;KAAG;IAEhG,OAAOW,UAAUT,QAAQ;AAC3B"}
1
+ {"version":3,"sources":["../../src/auth/crypto.ts"],"sourcesContent":["import crypto from 'crypto'\n\nconst algorithm = 'aes-256-ctr'\n\nexport function encrypt(text: string): string {\n const iv = crypto.randomBytes(16)\n const cipher = crypto.createCipheriv(algorithm, this.secret, iv)\n\n const encrypted = Buffer.concat([cipher.update(text), cipher.final()])\n\n const ivString = iv.toString('hex')\n const encryptedString = encrypted.toString('hex')\n\n return `${ivString}${encryptedString}`\n}\n\nexport function decrypt(hash: string): string {\n const iv = hash.slice(0, 32)\n const content = hash.slice(32)\n\n const decipher = crypto.createDecipheriv(algorithm, this.secret, Buffer.from(iv, 'hex'))\n\n const decrypted = Buffer.concat([decipher.update(Buffer.from(content, 'hex')), decipher.final()])\n\n return decrypted.toString()\n}\n"],"names":["crypto","algorithm","encrypt","text","iv","randomBytes","cipher","createCipheriv","secret","encrypted","Buffer","concat","update","final","ivString","toString","encryptedString","decrypt","hash","slice","content","decipher","createDecipheriv","from","decrypted"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,YAAY,SAAQ;AAE3B,MAAMC,YAAY;AAElB,OAAO,SAASC,QAAQC,IAAY;IAClC,MAAMC,KAAKJ,OAAOK,WAAW,CAAC;IAC9B,MAAMC,SAASN,OAAOO,cAAc,CAACN,WAAW,IAAI,CAACO,MAAM,EAAEJ;IAE7D,MAAMK,YAAYC,OAAOC,MAAM,CAAC;QAACL,OAAOM,MAAM,CAACT;QAAOG,OAAOO,KAAK;KAAG;IAErE,MAAMC,WAAWV,GAAGW,QAAQ,CAAC;IAC7B,MAAMC,kBAAkBP,UAAUM,QAAQ,CAAC;IAE3C,OAAO,CAAC,EAAED,SAAS,EAAEE,gBAAgB,CAAC;AACxC;AAEA,OAAO,SAASC,QAAQC,IAAY;IAClC,MAAMd,KAAKc,KAAKC,KAAK,CAAC,GAAG;IACzB,MAAMC,UAAUF,KAAKC,KAAK,CAAC;IAE3B,MAAME,WAAWrB,OAAOsB,gBAAgB,CAACrB,WAAW,IAAI,CAACO,MAAM,EAAEE,OAAOa,IAAI,CAACnB,IAAI;IAEjF,MAAMoB,YAAYd,OAAOC,MAAM,CAAC;QAACU,SAAST,MAAM,CAACF,OAAOa,IAAI,CAACH,SAAS;QAASC,SAASR,KAAK;KAAG;IAEhG,OAAOW,UAAUT,QAAQ;AAC3B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/defaultAccess.ts"],"sourcesContent":["import type { PayloadRequest } from '../types/index.js'\n\nexport default ({ req: { user } }: { req: PayloadRequest }): boolean => Boolean(user)\n"],"names":["req","user","Boolean"],"mappings":"AAEA,eAAe,CAAA,CAAC,EAAEA,KAAK,EAAEC,IAAI,EAAE,EAA2B,GAAcC,QAAQD,KAAI,EAAC"}
1
+ {"version":3,"sources":["../../src/auth/defaultAccess.ts"],"sourcesContent":["import type { PayloadRequest } from '../types/index.js'\n\nexport default ({ req: { user } }: { req: PayloadRequest }): boolean => Boolean(user)\n"],"names":["req","user","Boolean"],"rangeMappings":"","mappings":"AAEA,eAAe,CAAA,CAAC,EAAEA,KAAK,EAAEC,IAAI,EAAE,EAA2B,GAAcC,QAAQD,KAAI,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"defaultUser.d.ts","sourceRoot":"","sources":["../../src/auth/defaultUser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAMtE,eAAO,MAAM,qBAAqB,EAAE,gBAanC,CAAA"}
1
+ {"version":3,"file":"defaultUser.d.ts","sourceRoot":"","sources":["../../src/auth/defaultUser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,eAAO,MAAM,qBAAqB,EAAE,gBAanC,CAAA"}
@@ -1,8 +1,3 @@
1
- import { extractTranslations } from '../translations/extractTranslations.js';
2
- const labels = extractTranslations([
3
- 'general:user',
4
- 'general:users'
5
- ]);
6
1
  export const defaultUserCollection = {
7
2
  slug: 'users',
8
3
  admin: {
@@ -13,8 +8,8 @@ export const defaultUserCollection = {
13
8
  },
14
9
  fields: [],
15
10
  labels: {
16
- plural: labels['general:users'],
17
- singular: labels['general:user']
11
+ plural: ({ t })=>t('general:users'),
12
+ singular: ({ t })=>t('general:user')
18
13
  }
19
14
  };
20
15
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/defaultUser.ts"],"sourcesContent":["import type { CollectionConfig } from '../collections/config/types.js'\n\nimport { extractTranslations } from '../translations/extractTranslations.js'\n\nconst labels = extractTranslations(['general:user', 'general:users'])\n\nexport const defaultUserCollection: CollectionConfig = {\n slug: 'users',\n admin: {\n useAsTitle: 'email',\n },\n auth: {\n tokenExpiration: 7200,\n },\n fields: [],\n labels: {\n plural: labels['general:users'],\n singular: labels['general:user'],\n },\n}\n"],"names":["extractTranslations","labels","defaultUserCollection","slug","admin","useAsTitle","auth","tokenExpiration","fields","plural","singular"],"mappings":"AAEA,SAASA,mBAAmB,QAAQ,yCAAwC;AAE5E,MAAMC,SAASD,oBAAoB;IAAC;IAAgB;CAAgB;AAEpE,OAAO,MAAME,wBAA0C;IACrDC,MAAM;IACNC,OAAO;QACLC,YAAY;IACd;IACAC,MAAM;QACJC,iBAAiB;IACnB;IACAC,QAAQ,EAAE;IACVP,QAAQ;QACNQ,QAAQR,MAAM,CAAC,gBAAgB;QAC/BS,UAAUT,MAAM,CAAC,eAAe;IAClC;AACF,EAAC"}
1
+ {"version":3,"sources":["../../src/auth/defaultUser.ts"],"sourcesContent":["import type { CollectionConfig } from '../collections/config/types.js'\n\nexport const defaultUserCollection: CollectionConfig = {\n slug: 'users',\n admin: {\n useAsTitle: 'email',\n },\n auth: {\n tokenExpiration: 7200,\n },\n fields: [],\n labels: {\n plural: ({ t }) => t('general:users'),\n singular: ({ t }) => t('general:user'),\n },\n}\n"],"names":["defaultUserCollection","slug","admin","useAsTitle","auth","tokenExpiration","fields","labels","plural","t","singular"],"rangeMappings":";;;;;;;;;;;;;","mappings":"AAEA,OAAO,MAAMA,wBAA0C;IACrDC,MAAM;IACNC,OAAO;QACLC,YAAY;IACd;IACAC,MAAM;QACJC,iBAAiB;IACnB;IACAC,QAAQ,EAAE;IACVC,QAAQ;QACNC,QAAQ,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;QACrBC,UAAU,CAAC,EAAED,CAAC,EAAE,GAAKA,EAAE;IACzB;AACF,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/executeAccess.ts"],"sourcesContent":["import type { Access, AccessResult } from '../config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\n\nimport { Forbidden } from '../errors/index.js'\n\ntype OperationArgs = {\n data?: any\n disableErrors?: boolean\n id?: number | string\n isReadingStaticFile?: boolean\n req: PayloadRequest\n}\nconst executeAccess = async (\n { id, data, disableErrors, isReadingStaticFile = false, req }: OperationArgs,\n access: Access,\n): Promise<AccessResult> => {\n if (access) {\n const result = await access({\n id,\n data,\n isReadingStaticFile,\n req,\n })\n\n if (!result) {\n if (!disableErrors) throw new Forbidden(req.t)\n }\n\n return result\n }\n\n if (req.user) {\n return true\n }\n\n if (!disableErrors) throw new Forbidden(req.t)\n return false\n}\n\nexport default executeAccess\n"],"names":["Forbidden","executeAccess","id","data","disableErrors","isReadingStaticFile","req","access","result","t","user"],"mappings":"AAGA,SAASA,SAAS,QAAQ,qBAAoB;AAS9C,MAAMC,gBAAgB,OACpB,EAAEC,EAAE,EAAEC,IAAI,EAAEC,aAAa,EAAEC,sBAAsB,KAAK,EAAEC,GAAG,EAAiB,EAC5EC;IAEA,IAAIA,QAAQ;QACV,MAAMC,SAAS,MAAMD,OAAO;YAC1BL;YACAC;YACAE;YACAC;QACF;QAEA,IAAI,CAACE,QAAQ;YACX,IAAI,CAACJ,eAAe,MAAM,IAAIJ,UAAUM,IAAIG,CAAC;QAC/C;QAEA,OAAOD;IACT;IAEA,IAAIF,IAAII,IAAI,EAAE;QACZ,OAAO;IACT;IAEA,IAAI,CAACN,eAAe,MAAM,IAAIJ,UAAUM,IAAIG,CAAC;IAC7C,OAAO;AACT;AAEA,eAAeR,cAAa"}
1
+ {"version":3,"sources":["../../src/auth/executeAccess.ts"],"sourcesContent":["import type { Access, AccessResult } from '../config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\n\nimport { Forbidden } from '../errors/index.js'\n\ntype OperationArgs = {\n data?: any\n disableErrors?: boolean\n id?: number | string\n isReadingStaticFile?: boolean\n req: PayloadRequest\n}\nconst executeAccess = async (\n { id, data, disableErrors, isReadingStaticFile = false, req }: OperationArgs,\n access: Access,\n): Promise<AccessResult> => {\n if (access) {\n const result = await access({\n id,\n data,\n isReadingStaticFile,\n req,\n })\n\n if (!result) {\n if (!disableErrors) throw new Forbidden(req.t)\n }\n\n return result\n }\n\n if (req.user) {\n return true\n }\n\n if (!disableErrors) throw new Forbidden(req.t)\n return false\n}\n\nexport default executeAccess\n"],"names":["Forbidden","executeAccess","id","data","disableErrors","isReadingStaticFile","req","access","result","t","user"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,SAAS,QAAQ,qBAAoB;AAS9C,MAAMC,gBAAgB,OACpB,EAAEC,EAAE,EAAEC,IAAI,EAAEC,aAAa,EAAEC,sBAAsB,KAAK,EAAEC,GAAG,EAAiB,EAC5EC;IAEA,IAAIA,QAAQ;QACV,MAAMC,SAAS,MAAMD,OAAO;YAC1BL;YACAC;YACAE;YACAC;QACF;QAEA,IAAI,CAACE,QAAQ;YACX,IAAI,CAACJ,eAAe,MAAM,IAAIJ,UAAUM,IAAIG,CAAC;QAC/C;QAEA,OAAOD;IACT;IAEA,IAAIF,IAAII,IAAI,EAAE;QACZ,OAAO;IACT;IAEA,IAAI,CAACN,eAAe,MAAM,IAAIJ,UAAUM,IAAIG,CAAC;IAC7C,OAAO;AACT;AAEA,eAAeR,cAAa"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/executeAuthStrategies.ts"],"sourcesContent":["import type { AuthStrategyFunctionArgs, User } from './index.js'\n\nexport const executeAuthStrategies = async (\n args: AuthStrategyFunctionArgs,\n): Promise<User | null> => {\n return args.payload.authStrategies.reduce(async (accumulatorPromise, strategy) => {\n const authUser = await accumulatorPromise\n if (!authUser) {\n return strategy.authenticate(args)\n }\n return authUser\n }, Promise.resolve(null))\n}\n"],"names":["executeAuthStrategies","args","payload","authStrategies","reduce","accumulatorPromise","strategy","authUser","authenticate","Promise","resolve"],"mappings":"AAEA,OAAO,MAAMA,wBAAwB,OACnCC;IAEA,OAAOA,KAAKC,OAAO,CAACC,cAAc,CAACC,MAAM,CAAC,OAAOC,oBAAoBC;QACnE,MAAMC,WAAW,MAAMF;QACvB,IAAI,CAACE,UAAU;YACb,OAAOD,SAASE,YAAY,CAACP;QAC/B;QACA,OAAOM;IACT,GAAGE,QAAQC,OAAO,CAAC;AACrB,EAAC"}
1
+ {"version":3,"sources":["../../src/auth/executeAuthStrategies.ts"],"sourcesContent":["import type { AuthStrategyFunctionArgs, User } from './index.js'\n\nexport const executeAuthStrategies = async (\n args: AuthStrategyFunctionArgs,\n): Promise<User | null> => {\n return args.payload.authStrategies.reduce(async (accumulatorPromise, strategy) => {\n const authUser = await accumulatorPromise\n if (!authUser) {\n return strategy.authenticate(args)\n }\n return authUser\n }, Promise.resolve(null))\n}\n"],"names":["executeAuthStrategies","args","payload","authStrategies","reduce","accumulatorPromise","strategy","authUser","authenticate","Promise","resolve"],"rangeMappings":";;;;;;;;","mappings":"AAEA,OAAO,MAAMA,wBAAwB,OACnCC;IAEA,OAAOA,KAAKC,OAAO,CAACC,cAAc,CAACC,MAAM,CAAC,OAAOC,oBAAoBC;QACnE,MAAMC,WAAW,MAAMF;QACvB,IAAI,CAACE,UAAU;YACb,OAAOD,SAASE,YAAY,CAACP;QAC/B;QACA,OAAOM;IACT,GAAGE,QAAQC,OAAO,CAAC;AACrB,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/extractJWT.ts"],"sourcesContent":["import type { AuthStrategyFunctionArgs } from './index.js'\n\nimport { parseCookies } from '../utilities/parseCookies.js'\n\nexport const extractJWT = (\n args: Pick<AuthStrategyFunctionArgs, 'cookies' | 'headers' | 'payload'>,\n): null | string => {\n const { headers, payload } = args\n\n const jwtFromHeader = headers.get('Authorization')\n const origin = headers.get('Origin')\n\n if (jwtFromHeader?.startsWith('JWT ')) {\n return jwtFromHeader.replace('JWT ', '')\n }\n // allow RFC6750 OAuth 2.0 compliant Bearer tokens\n // in addition to the payload default JWT format\n if (jwtFromHeader?.startsWith('Bearer ')) {\n return jwtFromHeader.replace('Bearer ', '')\n }\n\n const cookies = parseCookies(headers)\n const tokenCookieName = `${payload.config.cookiePrefix}-token`\n const cookieToken = cookies.get(tokenCookieName)\n\n if (!cookieToken) {\n return null\n }\n\n if (!origin || payload.config.csrf.length === 0 || payload.config.csrf.indexOf(origin) > -1) {\n return cookieToken\n }\n\n return null\n}\n"],"names":["parseCookies","extractJWT","args","headers","payload","jwtFromHeader","get","origin","startsWith","replace","cookies","tokenCookieName","config","cookiePrefix","cookieToken","csrf","length","indexOf"],"mappings":"AAEA,SAASA,YAAY,QAAQ,+BAA8B;AAE3D,OAAO,MAAMC,aAAa,CACxBC;IAEA,MAAM,EAAEC,OAAO,EAAEC,OAAO,EAAE,GAAGF;IAE7B,MAAMG,gBAAgBF,QAAQG,GAAG,CAAC;IAClC,MAAMC,SAASJ,QAAQG,GAAG,CAAC;IAE3B,IAAID,eAAeG,WAAW,SAAS;QACrC,OAAOH,cAAcI,OAAO,CAAC,QAAQ;IACvC;IACA,kDAAkD;IAClD,gDAAgD;IAChD,IAAIJ,eAAeG,WAAW,YAAY;QACxC,OAAOH,cAAcI,OAAO,CAAC,WAAW;IAC1C;IAEA,MAAMC,UAAUV,aAAaG;IAC7B,MAAMQ,kBAAkB,CAAC,EAAEP,QAAQQ,MAAM,CAACC,YAAY,CAAC,MAAM,CAAC;IAC9D,MAAMC,cAAcJ,QAAQJ,GAAG,CAACK;IAEhC,IAAI,CAACG,aAAa;QAChB,OAAO;IACT;IAEA,IAAI,CAACP,UAAUH,QAAQQ,MAAM,CAACG,IAAI,CAACC,MAAM,KAAK,KAAKZ,QAAQQ,MAAM,CAACG,IAAI,CAACE,OAAO,CAACV,UAAU,CAAC,GAAG;QAC3F,OAAOO;IACT;IAEA,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../src/auth/extractJWT.ts"],"sourcesContent":["import type { AuthStrategyFunctionArgs } from './index.js'\n\nimport { parseCookies } from '../utilities/parseCookies.js'\n\nexport const extractJWT = (\n args: Pick<AuthStrategyFunctionArgs, 'cookies' | 'headers' | 'payload'>,\n): null | string => {\n const { headers, payload } = args\n\n const jwtFromHeader = headers.get('Authorization')\n const origin = headers.get('Origin')\n\n if (jwtFromHeader?.startsWith('JWT ')) {\n return jwtFromHeader.replace('JWT ', '')\n }\n // allow RFC6750 OAuth 2.0 compliant Bearer tokens\n // in addition to the payload default JWT format\n if (jwtFromHeader?.startsWith('Bearer ')) {\n return jwtFromHeader.replace('Bearer ', '')\n }\n\n const cookies = parseCookies(headers)\n const tokenCookieName = `${payload.config.cookiePrefix}-token`\n const cookieToken = cookies.get(tokenCookieName)\n\n if (!cookieToken) {\n return null\n }\n\n if (!origin || payload.config.csrf.length === 0 || payload.config.csrf.indexOf(origin) > -1) {\n return cookieToken\n }\n\n return null\n}\n"],"names":["parseCookies","extractJWT","args","headers","payload","jwtFromHeader","get","origin","startsWith","replace","cookies","tokenCookieName","config","cookiePrefix","cookieToken","csrf","length","indexOf"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,YAAY,QAAQ,+BAA8B;AAE3D,OAAO,MAAMC,aAAa,CACxBC;IAEA,MAAM,EAAEC,OAAO,EAAEC,OAAO,EAAE,GAAGF;IAE7B,MAAMG,gBAAgBF,QAAQG,GAAG,CAAC;IAClC,MAAMC,SAASJ,QAAQG,GAAG,CAAC;IAE3B,IAAID,eAAeG,WAAW,SAAS;QACrC,OAAOH,cAAcI,OAAO,CAAC,QAAQ;IACvC;IACA,kDAAkD;IAClD,gDAAgD;IAChD,IAAIJ,eAAeG,WAAW,YAAY;QACxC,OAAOH,cAAcI,OAAO,CAAC,WAAW;IAC1C;IAEA,MAAMC,UAAUV,aAAaG;IAC7B,MAAMQ,kBAAkB,CAAC,EAAEP,QAAQQ,MAAM,CAACC,YAAY,CAAC,MAAM,CAAC;IAC9D,MAAMC,cAAcJ,QAAQJ,GAAG,CAACK;IAEhC,IAAI,CAACG,aAAa;QAChB,OAAO;IACT;IAEA,IAAI,CAACP,UAAUH,QAAQQ,MAAM,CAACG,IAAI,CAACC,MAAM,KAAK,KAAKZ,QAAQQ,MAAM,CAACG,IAAI,CAACE,OAAO,CAACV,UAAU,CAAC,GAAG;QAC3F,OAAOO;IACT;IAEA,OAAO;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/getAccessResults.ts"],"sourcesContent":["import type { AllOperations, PayloadRequest } from '../types/index.js'\nimport type { Permissions } from './types.js'\n\nimport { getEntityPolicies } from '../utilities/getEntityPolicies.js'\nimport isolateObjectProperty from '../utilities/isolateObjectProperty.js'\n\ntype GetAccessResultsArgs = {\n req: PayloadRequest\n}\nexport async function getAccessResults({ req }: GetAccessResultsArgs): Promise<Permissions> {\n const results = {} as Permissions\n const { payload, user } = req\n\n const isLoggedIn = !!user\n const userCollectionConfig =\n user && user.collection\n ? payload.config.collections.find((collection) => collection.slug === user.collection)\n : null\n\n if (userCollectionConfig) {\n results.canAccessAdmin = userCollectionConfig.access.admin\n ? await userCollectionConfig.access.admin({ req })\n : isLoggedIn\n } else {\n results.canAccessAdmin = false\n }\n\n await Promise.all(\n payload.config.collections.map(async (collection) => {\n const collectionOperations: AllOperations[] = ['create', 'read', 'update', 'delete']\n\n if (\n collection.auth &&\n typeof collection.auth.maxLoginAttempts !== 'undefined' &&\n collection.auth.maxLoginAttempts !== 0\n ) {\n collectionOperations.push('unlock')\n }\n\n if (collection.versions) {\n collectionOperations.push('readVersions')\n }\n\n const collectionPolicy = await getEntityPolicies({\n type: 'collection',\n entity: collection,\n operations: collectionOperations,\n // Do not re-use our existing req object, as we need a new req.transactionID. Cannot re-use our existing one, as this is run in parallel (Promise.all above) which is\n // not supported on the same transaction ID. Not passing a transaction ID here creates a new transaction ID.\n req: isolateObjectProperty(req, 'transactionID'),\n })\n results.collections = {\n ...results.collections,\n [collection.slug]: collectionPolicy,\n }\n }),\n )\n\n await Promise.all(\n payload.config.globals.map(async (global) => {\n const globalOperations: AllOperations[] = ['read', 'update']\n\n if (global.versions) {\n globalOperations.push('readVersions')\n }\n\n const globalPolicy = await getEntityPolicies({\n type: 'global',\n entity: global,\n operations: globalOperations,\n // Do not re-use our existing req object, as we need a new req.transactionID. Cannot re-use our existing one, as this is run in parallel (Promise.all above) which is\n // not supported on the same transaction ID. Not passing a transaction ID here creates a new transaction ID.\n req: isolateObjectProperty(req, 'transactionID'),\n })\n results.globals = {\n ...results.globals,\n [global.slug]: globalPolicy,\n }\n }),\n )\n\n return results\n}\n"],"names":["getEntityPolicies","isolateObjectProperty","getAccessResults","req","results","payload","user","isLoggedIn","userCollectionConfig","collection","config","collections","find","slug","canAccessAdmin","access","admin","Promise","all","map","collectionOperations","auth","maxLoginAttempts","push","versions","collectionPolicy","type","entity","operations","globals","global","globalOperations","globalPolicy"],"mappings":"AAGA,SAASA,iBAAiB,QAAQ,oCAAmC;AACrE,OAAOC,2BAA2B,wCAAuC;AAKzE,OAAO,eAAeC,iBAAiB,EAAEC,GAAG,EAAwB;IAClE,MAAMC,UAAU,CAAC;IACjB,MAAM,EAAEC,OAAO,EAAEC,IAAI,EAAE,GAAGH;IAE1B,MAAMI,aAAa,CAAC,CAACD;IACrB,MAAME,uBACJF,QAAQA,KAAKG,UAAU,GACnBJ,QAAQK,MAAM,CAACC,WAAW,CAACC,IAAI,CAAC,CAACH,aAAeA,WAAWI,IAAI,KAAKP,KAAKG,UAAU,IACnF;IAEN,IAAID,sBAAsB;QACxBJ,QAAQU,cAAc,GAAGN,qBAAqBO,MAAM,CAACC,KAAK,GACtD,MAAMR,qBAAqBO,MAAM,CAACC,KAAK,CAAC;YAAEb;QAAI,KAC9CI;IACN,OAAO;QACLH,QAAQU,cAAc,GAAG;IAC3B;IAEA,MAAMG,QAAQC,GAAG,CACfb,QAAQK,MAAM,CAACC,WAAW,CAACQ,GAAG,CAAC,OAAOV;QACpC,MAAMW,uBAAwC;YAAC;YAAU;YAAQ;YAAU;SAAS;QAEpF,IACEX,WAAWY,IAAI,IACf,OAAOZ,WAAWY,IAAI,CAACC,gBAAgB,KAAK,eAC5Cb,WAAWY,IAAI,CAACC,gBAAgB,KAAK,GACrC;YACAF,qBAAqBG,IAAI,CAAC;QAC5B;QAEA,IAAId,WAAWe,QAAQ,EAAE;YACvBJ,qBAAqBG,IAAI,CAAC;QAC5B;QAEA,MAAME,mBAAmB,MAAMzB,kBAAkB;YAC/C0B,MAAM;YACNC,QAAQlB;YACRmB,YAAYR;YACZ,qKAAqK;YACrK,4GAA4G;YAC5GjB,KAAKF,sBAAsBE,KAAK;QAClC;QACAC,QAAQO,WAAW,GAAG;YACpB,GAAGP,QAAQO,WAAW;YACtB,CAACF,WAAWI,IAAI,CAAC,EAAEY;QACrB;IACF;IAGF,MAAMR,QAAQC,GAAG,CACfb,QAAQK,MAAM,CAACmB,OAAO,CAACV,GAAG,CAAC,OAAOW;QAChC,MAAMC,mBAAoC;YAAC;YAAQ;SAAS;QAE5D,IAAID,OAAON,QAAQ,EAAE;YACnBO,iBAAiBR,IAAI,CAAC;QACxB;QAEA,MAAMS,eAAe,MAAMhC,kBAAkB;YAC3C0B,MAAM;YACNC,QAAQG;YACRF,YAAYG;YACZ,qKAAqK;YACrK,4GAA4G;YAC5G5B,KAAKF,sBAAsBE,KAAK;QAClC;QACAC,QAAQyB,OAAO,GAAG;YAChB,GAAGzB,QAAQyB,OAAO;YAClB,CAACC,OAAOjB,IAAI,CAAC,EAAEmB;QACjB;IACF;IAGF,OAAO5B;AACT"}
1
+ {"version":3,"sources":["../../src/auth/getAccessResults.ts"],"sourcesContent":["import type { AllOperations, PayloadRequest } from '../types/index.js'\nimport type { Permissions } from './types.js'\n\nimport { getEntityPolicies } from '../utilities/getEntityPolicies.js'\nimport isolateObjectProperty from '../utilities/isolateObjectProperty.js'\n\ntype GetAccessResultsArgs = {\n req: PayloadRequest\n}\nexport async function getAccessResults({ req }: GetAccessResultsArgs): Promise<Permissions> {\n const results = {} as Permissions\n const { payload, user } = req\n\n const isLoggedIn = !!user\n const userCollectionConfig =\n user && user.collection\n ? payload.config.collections.find((collection) => collection.slug === user.collection)\n : null\n\n if (userCollectionConfig) {\n results.canAccessAdmin = userCollectionConfig.access.admin\n ? await userCollectionConfig.access.admin({ req })\n : isLoggedIn\n } else {\n results.canAccessAdmin = false\n }\n\n await Promise.all(\n payload.config.collections.map(async (collection) => {\n const collectionOperations: AllOperations[] = ['create', 'read', 'update', 'delete']\n\n if (\n collection.auth &&\n typeof collection.auth.maxLoginAttempts !== 'undefined' &&\n collection.auth.maxLoginAttempts !== 0\n ) {\n collectionOperations.push('unlock')\n }\n\n if (collection.versions) {\n collectionOperations.push('readVersions')\n }\n\n const collectionPolicy = await getEntityPolicies({\n type: 'collection',\n entity: collection,\n operations: collectionOperations,\n // Do not re-use our existing req object, as we need a new req.transactionID. Cannot re-use our existing one, as this is run in parallel (Promise.all above) which is\n // not supported on the same transaction ID. Not passing a transaction ID here creates a new transaction ID.\n req: isolateObjectProperty(req, 'transactionID'),\n })\n results.collections = {\n ...results.collections,\n [collection.slug]: collectionPolicy,\n }\n }),\n )\n\n await Promise.all(\n payload.config.globals.map(async (global) => {\n const globalOperations: AllOperations[] = ['read', 'update']\n\n if (global.versions) {\n globalOperations.push('readVersions')\n }\n\n const globalPolicy = await getEntityPolicies({\n type: 'global',\n entity: global,\n operations: globalOperations,\n // Do not re-use our existing req object, as we need a new req.transactionID. Cannot re-use our existing one, as this is run in parallel (Promise.all above) which is\n // not supported on the same transaction ID. Not passing a transaction ID here creates a new transaction ID.\n req: isolateObjectProperty(req, 'transactionID'),\n })\n results.globals = {\n ...results.globals,\n [global.slug]: globalPolicy,\n }\n }),\n )\n\n return results\n}\n"],"names":["getEntityPolicies","isolateObjectProperty","getAccessResults","req","results","payload","user","isLoggedIn","userCollectionConfig","collection","config","collections","find","slug","canAccessAdmin","access","admin","Promise","all","map","collectionOperations","auth","maxLoginAttempts","push","versions","collectionPolicy","type","entity","operations","globals","global","globalOperations","globalPolicy"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,iBAAiB,QAAQ,oCAAmC;AACrE,OAAOC,2BAA2B,wCAAuC;AAKzE,OAAO,eAAeC,iBAAiB,EAAEC,GAAG,EAAwB;IAClE,MAAMC,UAAU,CAAC;IACjB,MAAM,EAAEC,OAAO,EAAEC,IAAI,EAAE,GAAGH;IAE1B,MAAMI,aAAa,CAAC,CAACD;IACrB,MAAME,uBACJF,QAAQA,KAAKG,UAAU,GACnBJ,QAAQK,MAAM,CAACC,WAAW,CAACC,IAAI,CAAC,CAACH,aAAeA,WAAWI,IAAI,KAAKP,KAAKG,UAAU,IACnF;IAEN,IAAID,sBAAsB;QACxBJ,QAAQU,cAAc,GAAGN,qBAAqBO,MAAM,CAACC,KAAK,GACtD,MAAMR,qBAAqBO,MAAM,CAACC,KAAK,CAAC;YAAEb;QAAI,KAC9CI;IACN,OAAO;QACLH,QAAQU,cAAc,GAAG;IAC3B;IAEA,MAAMG,QAAQC,GAAG,CACfb,QAAQK,MAAM,CAACC,WAAW,CAACQ,GAAG,CAAC,OAAOV;QACpC,MAAMW,uBAAwC;YAAC;YAAU;YAAQ;YAAU;SAAS;QAEpF,IACEX,WAAWY,IAAI,IACf,OAAOZ,WAAWY,IAAI,CAACC,gBAAgB,KAAK,eAC5Cb,WAAWY,IAAI,CAACC,gBAAgB,KAAK,GACrC;YACAF,qBAAqBG,IAAI,CAAC;QAC5B;QAEA,IAAId,WAAWe,QAAQ,EAAE;YACvBJ,qBAAqBG,IAAI,CAAC;QAC5B;QAEA,MAAME,mBAAmB,MAAMzB,kBAAkB;YAC/C0B,MAAM;YACNC,QAAQlB;YACRmB,YAAYR;YACZ,qKAAqK;YACrK,4GAA4G;YAC5GjB,KAAKF,sBAAsBE,KAAK;QAClC;QACAC,QAAQO,WAAW,GAAG;YACpB,GAAGP,QAAQO,WAAW;YACtB,CAACF,WAAWI,IAAI,CAAC,EAAEY;QACrB;IACF;IAGF,MAAMR,QAAQC,GAAG,CACfb,QAAQK,MAAM,CAACmB,OAAO,CAACV,GAAG,CAAC,OAAOW;QAChC,MAAMC,mBAAoC;YAAC;YAAQ;SAAS;QAE5D,IAAID,OAAON,QAAQ,EAAE;YACnBO,iBAAiBR,IAAI,CAAC;QACxB;QAEA,MAAMS,eAAe,MAAMhC,kBAAkB;YAC3C0B,MAAM;YACNC,QAAQG;YACRF,YAAYG;YACZ,qKAAqK;YACrK,4GAA4G;YAC5G5B,KAAKF,sBAAsBE,KAAK;QAClC;QACAC,QAAQyB,OAAO,GAAG;YAChB,GAAGzB,QAAQyB,OAAO;YAClB,CAACC,OAAOjB,IAAI,CAAC,EAAEmB;QACjB;IACF;IAGF,OAAO5B;AACT"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/getFieldsToSign.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport type { CollectionConfig } from '../collections/config/types.js'\nimport type { Field, TabAsField } from '../fields/config/types.js'\nimport type { User } from './index.js'\n\nimport { fieldAffectsData, tabHasName } from '../fields/config/types.js'\n\ntype TraverseFieldsArgs = {\n data: Record<string, unknown>\n fields: (Field | TabAsField)[]\n result: Record<string, unknown>\n}\nconst traverseFields = ({\n data,\n // parent,\n fields,\n result,\n}: TraverseFieldsArgs) => {\n fields.forEach((field) => {\n switch (field.type) {\n case 'row':\n case 'collapsible': {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n break\n }\n case 'group': {\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = data[field.name]\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = data[field.name]\n }\n const groupData: Record<string, unknown> = data[field.name] as Record<string, unknown>\n const groupResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: groupData,\n fields: field.fields,\n result: groupResult,\n })\n break\n }\n case 'tabs': {\n traverseFields({\n data,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n result,\n })\n break\n }\n case 'tab': {\n if (tabHasName(field)) {\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = data[field.name]\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = data[field.name]\n }\n const tabData: Record<string, unknown> = data[field.name] as Record<string, unknown>\n const tabResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: tabData,\n fields: field.fields,\n result: tabResult,\n })\n } else {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n }\n break\n }\n default:\n if (fieldAffectsData(field)) {\n if (field.saveToJWT) {\n if (typeof field.saveToJWT === 'string') {\n result[field.saveToJWT] = data[field.name]\n delete result[field.name]\n } else {\n result[field.name] = data[field.name] as Record<string, unknown>\n }\n } else if (field.saveToJWT === false) {\n delete result[field.name]\n }\n }\n }\n })\n return result\n}\nexport const getFieldsToSign = (args: {\n collectionConfig: CollectionConfig\n email: string\n user: User\n}): Record<string, unknown> => {\n const { collectionConfig, email, user } = args\n\n const result: Record<string, unknown> = {\n id: user.id,\n collection: collectionConfig.slug,\n email,\n }\n\n traverseFields({\n data: user,\n fields: collectionConfig.fields,\n result,\n })\n\n return result\n}\n"],"names":["fieldAffectsData","tabHasName","traverseFields","data","fields","result","forEach","field","type","targetResult","saveToJWT","name","groupData","groupResult","tabs","map","tab","tabData","tabResult","getFieldsToSign","args","collectionConfig","email","user","id","collection","slug"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/auth/getFieldsToSign.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport type { CollectionConfig } from '../collections/config/types.js'\nimport type { Field, TabAsField } from '../fields/config/types.js'\nimport type { User } from './index.js'\n\nimport { fieldAffectsData, tabHasName } from '../fields/config/types.js'\n\ntype TraverseFieldsArgs = {\n data: Record<string, unknown>\n fields: (Field | TabAsField)[]\n result: Record<string, unknown>\n}\nconst traverseFields = ({\n data,\n // parent,\n fields,\n result,\n}: TraverseFieldsArgs) => {\n fields.forEach((field) => {\n switch (field.type) {\n case 'row':\n case 'collapsible': {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n break\n }\n case 'group': {\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = data[field.name]\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = data[field.name]\n }\n const groupData: Record<string, unknown> = data[field.name] as Record<string, unknown>\n const groupResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: groupData,\n fields: field.fields,\n result: groupResult,\n })\n break\n }\n case 'tabs': {\n traverseFields({\n data,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n result,\n })\n break\n }\n case 'tab': {\n if (tabHasName(field)) {\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = data[field.name]\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = data[field.name]\n }\n const tabData: Record<string, unknown> = data[field.name] as Record<string, unknown>\n const tabResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: tabData,\n fields: field.fields,\n result: tabResult,\n })\n } else {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n }\n break\n }\n default:\n if (fieldAffectsData(field)) {\n if (field.saveToJWT) {\n if (typeof field.saveToJWT === 'string') {\n result[field.saveToJWT] = data[field.name]\n delete result[field.name]\n } else {\n result[field.name] = data[field.name] as Record<string, unknown>\n }\n } else if (field.saveToJWT === false) {\n delete result[field.name]\n }\n }\n }\n })\n return result\n}\nexport const getFieldsToSign = (args: {\n collectionConfig: CollectionConfig\n email: string\n user: User\n}): Record<string, unknown> => {\n const { collectionConfig, email, user } = args\n\n const result: Record<string, unknown> = {\n id: user.id,\n collection: collectionConfig.slug,\n email,\n }\n\n traverseFields({\n data: user,\n fields: collectionConfig.fields,\n result,\n })\n\n return result\n}\n"],"names":["fieldAffectsData","tabHasName","traverseFields","data","fields","result","forEach","field","type","targetResult","saveToJWT","name","groupData","groupResult","tabs","map","tab","tabData","tabResult","getFieldsToSign","args","collectionConfig","email","user","id","collection","slug"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}