payload 3.0.0-beta.6 → 3.0.0-beta.60

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 (967) hide show
  1. package/bin.js +6 -3
  2. package/dist/admin/LanguageOptions.d.ts +6 -0
  3. package/dist/admin/LanguageOptions.d.ts.map +1 -0
  4. package/dist/admin/LanguageOptions.js +3 -0
  5. package/dist/admin/LanguageOptions.js.map +1 -0
  6. package/dist/admin/RichText.d.ts +139 -24
  7. package/dist/admin/RichText.d.ts.map +1 -1
  8. package/dist/admin/RichText.js.map +1 -1
  9. package/dist/admin/elements/Cell.d.ts +1 -7
  10. package/dist/admin/elements/Cell.d.ts.map +1 -1
  11. package/dist/admin/elements/Cell.js.map +1 -1
  12. package/dist/admin/elements/DatePicker.js.map +1 -1
  13. package/dist/admin/elements/PreviewButton.js.map +1 -1
  14. package/dist/admin/elements/PublishButton.js.map +1 -1
  15. package/dist/admin/elements/SaveButton.js.map +1 -1
  16. package/dist/admin/elements/SaveDraftButton.js.map +1 -1
  17. package/dist/admin/elements/Tab.d.ts +3 -0
  18. package/dist/admin/elements/Tab.d.ts.map +1 -1
  19. package/dist/admin/elements/Tab.js.map +1 -1
  20. package/dist/admin/elements/Upload.d.ts +3 -0
  21. package/dist/admin/elements/Upload.d.ts.map +1 -0
  22. package/dist/admin/elements/Upload.js +3 -0
  23. package/dist/admin/elements/Upload.js.map +1 -0
  24. package/dist/admin/elements/WithServerSideProps.d.ts +6 -2
  25. package/dist/admin/elements/WithServerSideProps.d.ts.map +1 -1
  26. package/dist/admin/elements/WithServerSideProps.js.map +1 -1
  27. package/dist/admin/forms/Error.js.map +1 -1
  28. package/dist/admin/forms/FieldDescription.d.ts +1 -1
  29. package/dist/admin/forms/FieldDescription.d.ts.map +1 -1
  30. package/dist/admin/forms/FieldDescription.js.map +1 -1
  31. package/dist/admin/forms/FieldTypes.js.map +1 -1
  32. package/dist/admin/forms/Form.js.map +1 -1
  33. package/dist/admin/forms/Label.d.ts +3 -2
  34. package/dist/admin/forms/Label.d.ts.map +1 -1
  35. package/dist/admin/forms/Label.js.map +1 -1
  36. package/dist/admin/forms/RowLabel.d.ts +1 -1
  37. package/dist/admin/forms/RowLabel.d.ts.map +1 -1
  38. package/dist/admin/forms/RowLabel.js.map +1 -1
  39. package/dist/admin/types.d.ts +5 -3
  40. package/dist/admin/types.d.ts.map +1 -1
  41. package/dist/admin/types.js.map +1 -1
  42. package/dist/admin/views/types.d.ts +5 -3
  43. package/dist/admin/views/types.d.ts.map +1 -1
  44. package/dist/admin/views/types.js.map +1 -1
  45. package/dist/assets/assets.d.js.map +1 -1
  46. package/dist/auth/baseFields/accountLock.d.ts.map +1 -1
  47. package/dist/auth/baseFields/accountLock.js.map +1 -1
  48. package/dist/auth/baseFields/apiKey.d.ts.map +1 -1
  49. package/dist/auth/baseFields/apiKey.js +6 -4
  50. package/dist/auth/baseFields/apiKey.js.map +1 -1
  51. package/dist/auth/baseFields/auth.d.ts.map +1 -1
  52. package/dist/auth/baseFields/auth.js +0 -14
  53. package/dist/auth/baseFields/auth.js.map +1 -1
  54. package/dist/auth/baseFields/loginField.d.ts +4 -0
  55. package/dist/auth/baseFields/loginField.d.ts.map +1 -0
  56. package/dist/auth/baseFields/loginField.js +35 -0
  57. package/dist/auth/baseFields/loginField.js.map +1 -0
  58. package/dist/auth/baseFields/verification.d.ts.map +1 -1
  59. package/dist/auth/baseFields/verification.js.map +1 -1
  60. package/dist/auth/cookies.d.ts +17 -5
  61. package/dist/auth/cookies.d.ts.map +1 -1
  62. package/dist/auth/cookies.js +45 -14
  63. package/dist/auth/cookies.js.map +1 -1
  64. package/dist/auth/crypto.js.map +1 -1
  65. package/dist/auth/defaultAccess.js.map +1 -1
  66. package/dist/auth/defaultUser.js.map +1 -1
  67. package/dist/auth/executeAccess.d.ts.map +1 -1
  68. package/dist/auth/executeAccess.js.map +1 -1
  69. package/dist/auth/executeAuthStrategies.d.ts +2 -3
  70. package/dist/auth/executeAuthStrategies.d.ts.map +1 -1
  71. package/dist/auth/executeAuthStrategies.js +6 -4
  72. package/dist/auth/executeAuthStrategies.js.map +1 -1
  73. package/dist/auth/extractJWT.d.ts +1 -1
  74. package/dist/auth/extractJWT.d.ts.map +1 -1
  75. package/dist/auth/extractJWT.js.map +1 -1
  76. package/dist/auth/getAccessResults.js +1 -1
  77. package/dist/auth/getAccessResults.js.map +1 -1
  78. package/dist/auth/getFieldsToSign.d.ts +1 -1
  79. package/dist/auth/getFieldsToSign.d.ts.map +1 -1
  80. package/dist/auth/getFieldsToSign.js.map +1 -1
  81. package/dist/auth/index.js.map +1 -1
  82. package/dist/auth/isLocked.js.map +1 -1
  83. package/dist/auth/operations/access.d.ts.map +1 -1
  84. package/dist/auth/operations/access.js.map +1 -1
  85. package/dist/auth/operations/auth.d.ts +3 -3
  86. package/dist/auth/operations/auth.d.ts.map +1 -1
  87. package/dist/auth/operations/auth.js +3 -5
  88. package/dist/auth/operations/auth.js.map +1 -1
  89. package/dist/auth/operations/forgotPassword.d.ts +5 -5
  90. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  91. package/dist/auth/operations/forgotPassword.js +18 -15
  92. package/dist/auth/operations/forgotPassword.js.map +1 -1
  93. package/dist/auth/operations/init.d.ts.map +1 -1
  94. package/dist/auth/operations/init.js.map +1 -1
  95. package/dist/auth/operations/local/auth.d.ts.map +1 -1
  96. package/dist/auth/operations/local/auth.js.map +1 -1
  97. package/dist/auth/operations/local/forgotPassword.d.ts +3 -3
  98. package/dist/auth/operations/local/forgotPassword.d.ts.map +1 -1
  99. package/dist/auth/operations/local/forgotPassword.js.map +1 -1
  100. package/dist/auth/operations/local/index.js.map +1 -1
  101. package/dist/auth/operations/local/login.d.ts +5 -9
  102. package/dist/auth/operations/local/login.d.ts.map +1 -1
  103. package/dist/auth/operations/local/login.js.map +1 -1
  104. package/dist/auth/operations/local/resetPassword.d.ts +3 -4
  105. package/dist/auth/operations/local/resetPassword.d.ts.map +1 -1
  106. package/dist/auth/operations/local/resetPassword.js.map +1 -1
  107. package/dist/auth/operations/local/unlock.d.ts +3 -4
  108. package/dist/auth/operations/local/unlock.d.ts.map +1 -1
  109. package/dist/auth/operations/local/unlock.js.map +1 -1
  110. package/dist/auth/operations/local/verifyEmail.d.ts +3 -4
  111. package/dist/auth/operations/local/verifyEmail.d.ts.map +1 -1
  112. package/dist/auth/operations/local/verifyEmail.js.map +1 -1
  113. package/dist/auth/operations/login.d.ts +6 -9
  114. package/dist/auth/operations/login.d.ts.map +1 -1
  115. package/dist/auth/operations/login.js +49 -5
  116. package/dist/auth/operations/login.js.map +1 -1
  117. package/dist/auth/operations/logout.d.ts.map +1 -1
  118. package/dist/auth/operations/logout.js.map +1 -1
  119. package/dist/auth/operations/me.d.ts +2 -1
  120. package/dist/auth/operations/me.d.ts.map +1 -1
  121. package/dist/auth/operations/me.js +25 -9
  122. package/dist/auth/operations/me.js.map +1 -1
  123. package/dist/auth/operations/refresh.d.ts +3 -3
  124. package/dist/auth/operations/refresh.d.ts.map +1 -1
  125. package/dist/auth/operations/refresh.js +35 -17
  126. package/dist/auth/operations/refresh.js.map +1 -1
  127. package/dist/auth/operations/registerFirstUser.d.ts +7 -13
  128. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  129. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  130. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  131. package/dist/auth/operations/resetPassword.js +1 -0
  132. package/dist/auth/operations/resetPassword.js.map +1 -1
  133. package/dist/auth/operations/unlock.d.ts.map +1 -1
  134. package/dist/auth/operations/unlock.js.map +1 -1
  135. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  136. package/dist/auth/operations/verifyEmail.js.map +1 -1
  137. package/dist/auth/sendVerificationEmail.d.ts +5 -6
  138. package/dist/auth/sendVerificationEmail.d.ts.map +1 -1
  139. package/dist/auth/sendVerificationEmail.js +7 -8
  140. package/dist/auth/sendVerificationEmail.js.map +1 -1
  141. package/dist/auth/strategies/apiKey.d.ts.map +1 -1
  142. package/dist/auth/strategies/apiKey.js +9 -3
  143. package/dist/auth/strategies/apiKey.js.map +1 -1
  144. package/dist/auth/strategies/jwt.d.ts.map +1 -1
  145. package/dist/auth/strategies/jwt.js +9 -3
  146. package/dist/auth/strategies/jwt.js.map +1 -1
  147. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  148. package/dist/auth/strategies/local/authenticate.js.map +1 -1
  149. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts +3 -1
  150. package/dist/auth/strategies/local/generatePasswordSaltHash.d.ts.map +1 -1
  151. package/dist/auth/strategies/local/generatePasswordSaltHash.js +10 -7
  152. package/dist/auth/strategies/local/generatePasswordSaltHash.js.map +1 -1
  153. package/dist/auth/strategies/local/incrementLoginAttempts.d.ts.map +1 -1
  154. package/dist/auth/strategies/local/incrementLoginAttempts.js.map +1 -1
  155. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  156. package/dist/auth/strategies/local/register.js +19 -7
  157. package/dist/auth/strategies/local/register.js.map +1 -1
  158. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  159. package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -1
  160. package/dist/auth/types.d.ts +17 -12
  161. package/dist/auth/types.d.ts.map +1 -1
  162. package/dist/auth/types.js.map +1 -1
  163. package/dist/bin/generateTypes.d.ts +3 -1
  164. package/dist/bin/generateTypes.d.ts.map +1 -1
  165. package/dist/bin/generateTypes.js +23 -9
  166. package/dist/bin/generateTypes.js.map +1 -1
  167. package/dist/bin/index.js.map +1 -1
  168. package/dist/bin/loadEnv.d.ts +2 -2
  169. package/dist/bin/loadEnv.d.ts.map +1 -1
  170. package/dist/bin/loadEnv.js +18 -17
  171. package/dist/bin/loadEnv.js.map +1 -1
  172. package/dist/bin/loader/clientExtensions.js.map +1 -1
  173. package/dist/bin/loader/compile.js.map +1 -1
  174. package/dist/bin/loader/ignores.d.ts +2 -0
  175. package/dist/bin/loader/ignores.d.ts.map +1 -0
  176. package/dist/bin/loader/ignores.js +5 -0
  177. package/dist/bin/loader/ignores.js.map +1 -0
  178. package/dist/bin/loader/index.d.ts.map +1 -1
  179. package/dist/bin/loader/index.js +14 -15
  180. package/dist/bin/loader/index.js.map +1 -1
  181. package/dist/bin/loader/read-default-tsconfig.d.ts +25 -0
  182. package/dist/bin/loader/read-default-tsconfig.d.ts.map +1 -1
  183. package/dist/bin/loader/read-default-tsconfig.js +25 -1
  184. package/dist/bin/loader/read-default-tsconfig.js.map +1 -1
  185. package/dist/bin/loader/resolveOriginalPath.d.ts +10 -0
  186. package/dist/bin/loader/resolveOriginalPath.d.ts.map +1 -0
  187. package/dist/bin/loader/resolveOriginalPath.js +36 -0
  188. package/dist/bin/loader/resolveOriginalPath.js.map +1 -0
  189. package/dist/bin/migrate.d.ts.map +1 -1
  190. package/dist/bin/migrate.js.map +1 -1
  191. package/dist/collections/config/build.js.map +1 -1
  192. package/dist/collections/config/client.d.ts +137 -138
  193. package/dist/collections/config/client.d.ts.map +1 -1
  194. package/dist/collections/config/client.js +3 -1
  195. package/dist/collections/config/client.js.map +1 -1
  196. package/dist/collections/config/defaults.d.ts +9 -5
  197. package/dist/collections/config/defaults.d.ts.map +1 -1
  198. package/dist/collections/config/defaults.js +5 -1
  199. package/dist/collections/config/defaults.js.map +1 -1
  200. package/dist/collections/config/sanitize.d.ts +2 -3
  201. package/dist/collections/config/sanitize.d.ts.map +1 -1
  202. package/dist/collections/config/sanitize.js +17 -6
  203. package/dist/collections/config/sanitize.js.map +1 -1
  204. package/dist/collections/config/schema.d.ts.map +1 -1
  205. package/dist/collections/config/schema.js +25 -13
  206. package/dist/collections/config/schema.js.map +1 -1
  207. package/dist/collections/config/types.d.ts +71 -17
  208. package/dist/collections/config/types.d.ts.map +1 -1
  209. package/dist/collections/config/types.js.map +1 -1
  210. package/dist/collections/dataloader.d.ts +14 -0
  211. package/dist/collections/dataloader.d.ts.map +1 -1
  212. package/dist/collections/dataloader.js +27 -12
  213. package/dist/collections/dataloader.js.map +1 -1
  214. package/dist/collections/operations/count.d.ts +14 -0
  215. package/dist/collections/operations/count.d.ts.map +1 -0
  216. package/dist/collections/operations/count.js +75 -0
  217. package/dist/collections/operations/count.js.map +1 -0
  218. package/dist/collections/operations/create.d.ts +5 -9
  219. package/dist/collections/operations/create.d.ts.map +1 -1
  220. package/dist/collections/operations/create.js +7 -13
  221. package/dist/collections/operations/create.js.map +1 -1
  222. package/dist/collections/operations/delete.d.ts +5 -5
  223. package/dist/collections/operations/delete.d.ts.map +1 -1
  224. package/dist/collections/operations/delete.js +1 -0
  225. package/dist/collections/operations/delete.js.map +1 -1
  226. package/dist/collections/operations/deleteByID.d.ts +4 -3
  227. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  228. package/dist/collections/operations/deleteByID.js +1 -0
  229. package/dist/collections/operations/deleteByID.js.map +1 -1
  230. package/dist/collections/operations/docAccess.js.map +1 -1
  231. package/dist/collections/operations/duplicate.d.ts +3 -3
  232. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  233. package/dist/collections/operations/duplicate.js +3 -1
  234. package/dist/collections/operations/duplicate.js.map +1 -1
  235. package/dist/collections/operations/find.d.ts +3 -2
  236. package/dist/collections/operations/find.d.ts.map +1 -1
  237. package/dist/collections/operations/find.js +1 -0
  238. package/dist/collections/operations/find.js.map +1 -1
  239. package/dist/collections/operations/findByID.d.ts +3 -2
  240. package/dist/collections/operations/findByID.d.ts.map +1 -1
  241. package/dist/collections/operations/findByID.js +3 -3
  242. package/dist/collections/operations/findByID.js.map +1 -1
  243. package/dist/collections/operations/findVersionByID.d.ts +1 -1
  244. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  245. package/dist/collections/operations/findVersionByID.js +1 -0
  246. package/dist/collections/operations/findVersionByID.js.map +1 -1
  247. package/dist/collections/operations/findVersions.d.ts +1 -1
  248. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  249. package/dist/collections/operations/findVersions.js +1 -0
  250. package/dist/collections/operations/findVersions.js.map +1 -1
  251. package/dist/collections/operations/local/count.d.ts +20 -0
  252. package/dist/collections/operations/local/count.d.ts.map +1 -0
  253. package/dist/collections/operations/local/count.js +19 -0
  254. package/dist/collections/operations/local/count.js.map +1 -0
  255. package/dist/collections/operations/local/create.d.ts +7 -8
  256. package/dist/collections/operations/local/create.d.ts.map +1 -1
  257. package/dist/collections/operations/local/create.js.map +1 -1
  258. package/dist/collections/operations/local/delete.d.ts +13 -15
  259. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  260. package/dist/collections/operations/local/delete.js.map +1 -1
  261. package/dist/collections/operations/local/duplicate.d.ts +6 -5
  262. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  263. package/dist/collections/operations/local/duplicate.js.map +1 -1
  264. package/dist/collections/operations/local/find.d.ts +7 -6
  265. package/dist/collections/operations/local/find.d.ts.map +1 -1
  266. package/dist/collections/operations/local/find.js +1 -1
  267. package/dist/collections/operations/local/find.js.map +1 -1
  268. package/dist/collections/operations/local/findByID.d.ts +7 -6
  269. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  270. package/dist/collections/operations/local/findByID.js.map +1 -1
  271. package/dist/collections/operations/local/findVersionByID.d.ts +7 -6
  272. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  273. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  274. package/dist/collections/operations/local/findVersions.d.ts +7 -6
  275. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  276. package/dist/collections/operations/local/findVersions.js.map +1 -1
  277. package/dist/collections/operations/local/index.d.ts +4 -2
  278. package/dist/collections/operations/local/index.d.ts.map +1 -1
  279. package/dist/collections/operations/local/index.js +4 -2
  280. package/dist/collections/operations/local/index.js.map +1 -1
  281. package/dist/collections/operations/local/restoreVersion.d.ts +7 -6
  282. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  283. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  284. package/dist/collections/operations/local/update.d.ts +12 -12
  285. package/dist/collections/operations/local/update.d.ts.map +1 -1
  286. package/dist/collections/operations/local/update.js.map +1 -1
  287. package/dist/collections/operations/restoreVersion.d.ts +1 -1
  288. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  289. package/dist/collections/operations/restoreVersion.js +2 -0
  290. package/dist/collections/operations/restoreVersion.js.map +1 -1
  291. package/dist/collections/operations/update.d.ts +5 -6
  292. package/dist/collections/operations/update.d.ts.map +1 -1
  293. package/dist/collections/operations/update.js +6 -3
  294. package/dist/collections/operations/update.js.map +1 -1
  295. package/dist/collections/operations/updateByID.d.ts +5 -7
  296. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  297. package/dist/collections/operations/updateByID.js +6 -2
  298. package/dist/collections/operations/updateByID.js.map +1 -1
  299. package/dist/collections/operations/utils.d.ts +42 -33
  300. package/dist/collections/operations/utils.d.ts.map +1 -1
  301. package/dist/collections/operations/utils.js +0 -1
  302. package/dist/collections/operations/utils.js.map +1 -1
  303. package/dist/config/build.d.ts.map +1 -1
  304. package/dist/config/build.js +3 -4
  305. package/dist/config/build.js.map +1 -1
  306. package/dist/config/client.d.ts +2 -1
  307. package/dist/config/client.d.ts.map +1 -1
  308. package/dist/config/client.js +3 -1
  309. package/dist/config/client.js.map +1 -1
  310. package/dist/config/defaults.d.ts.map +1 -1
  311. package/dist/config/defaults.js +17 -4
  312. package/dist/config/defaults.js.map +1 -1
  313. package/dist/config/find.d.ts.map +1 -1
  314. package/dist/config/find.js +20 -22
  315. package/dist/config/find.js.map +1 -1
  316. package/dist/config/sanitize.d.ts +1 -1
  317. package/dist/config/sanitize.d.ts.map +1 -1
  318. package/dist/config/sanitize.js +49 -10
  319. package/dist/config/sanitize.js.map +1 -1
  320. package/dist/config/schema.d.ts.map +1 -1
  321. package/dist/config/schema.js +36 -10
  322. package/dist/config/schema.js.map +1 -1
  323. package/dist/config/shared/adminViewSchema.js.map +1 -1
  324. package/dist/config/shared/componentSchema.js.map +1 -1
  325. package/dist/config/shared/openGraphSchema.d.ts +3 -0
  326. package/dist/config/shared/openGraphSchema.d.ts.map +1 -0
  327. package/dist/config/shared/openGraphSchema.js +16 -0
  328. package/dist/config/shared/openGraphSchema.js.map +1 -0
  329. package/dist/config/types.d.ts +162 -78
  330. package/dist/config/types.d.ts.map +1 -1
  331. package/dist/config/types.js +7 -13
  332. package/dist/config/types.js.map +1 -1
  333. package/dist/config/validate.js.map +1 -1
  334. package/dist/database/combineQueries.js.map +1 -1
  335. package/dist/database/createDatabaseAdapter.js.map +1 -1
  336. package/dist/database/flattenWhereToOperators.js.map +1 -1
  337. package/dist/database/getLocalizedPaths.js.map +1 -1
  338. package/dist/database/migrations/createMigration.js.map +1 -1
  339. package/dist/database/migrations/getMigrations.js.map +1 -1
  340. package/dist/database/migrations/getPredefinedMigration.d.ts +12 -0
  341. package/dist/database/migrations/getPredefinedMigration.d.ts.map +1 -0
  342. package/dist/database/migrations/getPredefinedMigration.js +38 -0
  343. package/dist/database/migrations/getPredefinedMigration.js.map +1 -0
  344. package/dist/database/migrations/migrate.js.map +1 -1
  345. package/dist/database/migrations/migrateDown.js.map +1 -1
  346. package/dist/database/migrations/migrateRefresh.js.map +1 -1
  347. package/dist/database/migrations/migrateReset.js.map +1 -1
  348. package/dist/database/migrations/migrateStatus.js.map +1 -1
  349. package/dist/database/migrations/migrationTemplate.js.map +1 -1
  350. package/dist/database/migrations/migrationsCollection.js.map +1 -1
  351. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  352. package/dist/database/migrations/readMigrationFiles.js.map +1 -1
  353. package/dist/database/queryValidation/types.js.map +1 -1
  354. package/dist/database/queryValidation/validateQueryPaths.js +4 -4
  355. package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
  356. package/dist/database/queryValidation/validateSearchParams.js.map +1 -1
  357. package/dist/database/types.d.ts +22 -8
  358. package/dist/database/types.d.ts.map +1 -1
  359. package/dist/database/types.js.map +1 -1
  360. package/dist/email/consoleEmailAdapter.d.ts +3 -0
  361. package/dist/email/consoleEmailAdapter.d.ts.map +1 -0
  362. package/dist/email/consoleEmailAdapter.js +17 -0
  363. package/dist/email/consoleEmailAdapter.js.map +1 -0
  364. package/dist/email/defaults.d.ts +2 -2
  365. package/dist/email/defaults.d.ts.map +1 -1
  366. package/dist/email/defaults.js +3 -3
  367. package/dist/email/defaults.js.map +1 -1
  368. package/dist/email/getStringifiedToAddress.d.ts +3 -0
  369. package/dist/email/getStringifiedToAddress.d.ts.map +1 -0
  370. package/dist/email/getStringifiedToAddress.js +20 -0
  371. package/dist/email/getStringifiedToAddress.js.map +1 -0
  372. package/dist/email/sendEmail.d.ts +3 -2
  373. package/dist/email/sendEmail.d.ts.map +1 -1
  374. package/dist/email/sendEmail.js +8 -4
  375. package/dist/email/sendEmail.js.map +1 -1
  376. package/dist/email/types.d.ts +26 -18
  377. package/dist/email/types.d.ts.map +1 -1
  378. package/dist/email/types.js +5 -1
  379. package/dist/email/types.js.map +1 -1
  380. package/dist/errors/APIError.d.ts +2 -2
  381. package/dist/errors/APIError.d.ts.map +1 -1
  382. package/dist/errors/APIError.js +5 -3
  383. package/dist/errors/APIError.js.map +1 -1
  384. package/dist/errors/AuthenticationError.d.ts +3 -4
  385. package/dist/errors/AuthenticationError.d.ts.map +1 -1
  386. package/dist/errors/AuthenticationError.js +4 -5
  387. package/dist/errors/AuthenticationError.js.map +1 -1
  388. package/dist/errors/DuplicateCollection.d.ts +2 -3
  389. package/dist/errors/DuplicateCollection.d.ts.map +1 -1
  390. package/dist/errors/DuplicateCollection.js +2 -3
  391. package/dist/errors/DuplicateCollection.js.map +1 -1
  392. package/dist/errors/DuplicateFieldName.d.ts +2 -3
  393. package/dist/errors/DuplicateFieldName.d.ts.map +1 -1
  394. package/dist/errors/DuplicateFieldName.js +2 -3
  395. package/dist/errors/DuplicateFieldName.js.map +1 -1
  396. package/dist/errors/DuplicateGlobal.d.ts +2 -3
  397. package/dist/errors/DuplicateGlobal.d.ts.map +1 -1
  398. package/dist/errors/DuplicateGlobal.js +2 -3
  399. package/dist/errors/DuplicateGlobal.js.map +1 -1
  400. package/dist/errors/ErrorDeletingFile.d.ts +2 -3
  401. package/dist/errors/ErrorDeletingFile.d.ts.map +1 -1
  402. package/dist/errors/ErrorDeletingFile.js +2 -3
  403. package/dist/errors/ErrorDeletingFile.js.map +1 -1
  404. package/dist/errors/FileRetrievalError.d.ts +6 -0
  405. package/dist/errors/FileRetrievalError.d.ts.map +1 -0
  406. package/dist/errors/FileRetrievalError.js +13 -0
  407. package/dist/errors/FileRetrievalError.js.map +1 -0
  408. package/dist/errors/FileUploadError.d.ts +2 -3
  409. package/dist/errors/FileUploadError.d.ts.map +1 -1
  410. package/dist/errors/FileUploadError.js +2 -3
  411. package/dist/errors/FileUploadError.js.map +1 -1
  412. package/dist/errors/Forbidden.d.ts +2 -3
  413. package/dist/errors/Forbidden.d.ts.map +1 -1
  414. package/dist/errors/Forbidden.js +2 -3
  415. package/dist/errors/Forbidden.js.map +1 -1
  416. package/dist/errors/InvalidConfiguration.d.ts +2 -3
  417. package/dist/errors/InvalidConfiguration.d.ts.map +1 -1
  418. package/dist/errors/InvalidConfiguration.js +2 -3
  419. package/dist/errors/InvalidConfiguration.js.map +1 -1
  420. package/dist/errors/InvalidFieldName.d.ts +2 -3
  421. package/dist/errors/InvalidFieldName.d.ts.map +1 -1
  422. package/dist/errors/InvalidFieldName.js +2 -3
  423. package/dist/errors/InvalidFieldName.js.map +1 -1
  424. package/dist/errors/InvalidFieldRelationship.d.ts +2 -3
  425. package/dist/errors/InvalidFieldRelationship.d.ts.map +1 -1
  426. package/dist/errors/InvalidFieldRelationship.js +2 -3
  427. package/dist/errors/InvalidFieldRelationship.js.map +1 -1
  428. package/dist/errors/InvalidSchema.d.ts +2 -3
  429. package/dist/errors/InvalidSchema.d.ts.map +1 -1
  430. package/dist/errors/InvalidSchema.js +2 -3
  431. package/dist/errors/InvalidSchema.js.map +1 -1
  432. package/dist/errors/LockedAuth.d.ts +2 -3
  433. package/dist/errors/LockedAuth.d.ts.map +1 -1
  434. package/dist/errors/LockedAuth.js +2 -3
  435. package/dist/errors/LockedAuth.js.map +1 -1
  436. package/dist/errors/MissingCollectionLabel.d.ts +2 -3
  437. package/dist/errors/MissingCollectionLabel.d.ts.map +1 -1
  438. package/dist/errors/MissingCollectionLabel.js +2 -3
  439. package/dist/errors/MissingCollectionLabel.js.map +1 -1
  440. package/dist/errors/MissingEditorProp.d.ts +2 -3
  441. package/dist/errors/MissingEditorProp.d.ts.map +1 -1
  442. package/dist/errors/MissingEditorProp.js +3 -4
  443. package/dist/errors/MissingEditorProp.js.map +1 -1
  444. package/dist/errors/MissingFieldInputOptions.d.ts +2 -3
  445. package/dist/errors/MissingFieldInputOptions.d.ts.map +1 -1
  446. package/dist/errors/MissingFieldInputOptions.js +2 -3
  447. package/dist/errors/MissingFieldInputOptions.js.map +1 -1
  448. package/dist/errors/MissingFieldType.d.ts +2 -3
  449. package/dist/errors/MissingFieldType.d.ts.map +1 -1
  450. package/dist/errors/MissingFieldType.js +2 -3
  451. package/dist/errors/MissingFieldType.js.map +1 -1
  452. package/dist/errors/MissingFile.d.ts +2 -3
  453. package/dist/errors/MissingFile.d.ts.map +1 -1
  454. package/dist/errors/MissingFile.js +2 -3
  455. package/dist/errors/MissingFile.js.map +1 -1
  456. package/dist/errors/NotFound.d.ts +2 -3
  457. package/dist/errors/NotFound.d.ts.map +1 -1
  458. package/dist/errors/NotFound.js +2 -3
  459. package/dist/errors/NotFound.js.map +1 -1
  460. package/dist/errors/QueryError.d.ts +2 -3
  461. package/dist/errors/QueryError.d.ts.map +1 -1
  462. package/dist/errors/QueryError.js +2 -3
  463. package/dist/errors/QueryError.js.map +1 -1
  464. package/dist/errors/TimestampsRequired.d.ts +2 -3
  465. package/dist/errors/TimestampsRequired.d.ts.map +1 -1
  466. package/dist/errors/TimestampsRequired.js +2 -3
  467. package/dist/errors/TimestampsRequired.js.map +1 -1
  468. package/dist/errors/UnathorizedError.d.ts +2 -3
  469. package/dist/errors/UnathorizedError.d.ts.map +1 -1
  470. package/dist/errors/UnathorizedError.js +2 -3
  471. package/dist/errors/UnathorizedError.js.map +1 -1
  472. package/dist/errors/ValidationError.d.ts +15 -8
  473. package/dist/errors/ValidationError.d.ts.map +1 -1
  474. package/dist/errors/ValidationError.js +5 -6
  475. package/dist/errors/ValidationError.js.map +1 -1
  476. package/dist/errors/index.d.ts +21 -19
  477. package/dist/errors/index.d.ts.map +1 -1
  478. package/dist/errors/index.js +21 -19
  479. package/dist/errors/index.js.map +1 -1
  480. package/dist/errors/types.js.map +1 -1
  481. package/dist/exports/i18n/ar.js.map +1 -1
  482. package/dist/exports/i18n/az.js.map +1 -1
  483. package/dist/exports/i18n/bg.js.map +1 -1
  484. package/dist/exports/i18n/cs.js.map +1 -1
  485. package/dist/exports/i18n/de.js.map +1 -1
  486. package/dist/exports/i18n/en.js.map +1 -1
  487. package/dist/exports/i18n/es.js.map +1 -1
  488. package/dist/exports/i18n/fa.js.map +1 -1
  489. package/dist/exports/i18n/fr.js.map +1 -1
  490. package/dist/exports/i18n/he.d.ts +2 -0
  491. package/dist/exports/i18n/he.d.ts.map +1 -0
  492. package/dist/exports/i18n/he.js +3 -0
  493. package/dist/exports/i18n/he.js.map +1 -0
  494. package/dist/exports/i18n/hr.js.map +1 -1
  495. package/dist/exports/i18n/hu.js.map +1 -1
  496. package/dist/exports/i18n/it.js.map +1 -1
  497. package/dist/exports/i18n/ja.js.map +1 -1
  498. package/dist/exports/i18n/ko.js.map +1 -1
  499. package/dist/exports/i18n/my.js.map +1 -1
  500. package/dist/exports/i18n/nb.js.map +1 -1
  501. package/dist/exports/i18n/nl.js.map +1 -1
  502. package/dist/exports/i18n/pl.js.map +1 -1
  503. package/dist/exports/i18n/pt.js.map +1 -1
  504. package/dist/exports/i18n/ro.js.map +1 -1
  505. package/dist/exports/i18n/rs.js.map +1 -1
  506. package/dist/exports/i18n/rsLatin.js.map +1 -1
  507. package/dist/exports/i18n/ru.js.map +1 -1
  508. package/dist/exports/i18n/sv.js.map +1 -1
  509. package/dist/exports/i18n/th.js.map +1 -1
  510. package/dist/exports/i18n/tr.js.map +1 -1
  511. package/dist/exports/i18n/uk.js.map +1 -1
  512. package/dist/exports/i18n/vi.js.map +1 -1
  513. package/dist/exports/i18n/zh.js.map +1 -1
  514. package/dist/exports/i18n/zhTw.js.map +1 -1
  515. package/dist/exports/node.d.ts +5 -0
  516. package/dist/exports/node.d.ts.map +1 -1
  517. package/dist/exports/node.js +5 -1
  518. package/dist/exports/node.js.map +1 -1
  519. package/dist/exports/shared.d.ts +22 -0
  520. package/dist/exports/shared.d.ts.map +1 -0
  521. package/dist/exports/shared.js +23 -0
  522. package/dist/exports/shared.js.map +1 -0
  523. package/dist/fields/baseFields/baseBlockFields.js.map +1 -1
  524. package/dist/fields/baseFields/baseIDField.js.map +1 -1
  525. package/dist/fields/config/client.d.ts +692 -455
  526. package/dist/fields/config/client.d.ts.map +1 -1
  527. package/dist/fields/config/client.js +3 -1
  528. package/dist/fields/config/client.js.map +1 -1
  529. package/dist/fields/config/sanitize.d.ts +7 -2
  530. package/dist/fields/config/sanitize.d.ts.map +1 -1
  531. package/dist/fields/config/sanitize.js +53 -34
  532. package/dist/fields/config/sanitize.js.map +1 -1
  533. package/dist/fields/config/sanitize.spec.js +76 -85
  534. package/dist/fields/config/sanitize.spec.js.map +1 -1
  535. package/dist/fields/config/schema.d.ts.map +1 -1
  536. package/dist/fields/config/schema.js +39 -11
  537. package/dist/fields/config/schema.js.map +1 -1
  538. package/dist/fields/config/types.d.ts +135 -46
  539. package/dist/fields/config/types.d.ts.map +1 -1
  540. package/dist/fields/config/types.js.map +1 -1
  541. package/dist/fields/getDefaultValue.d.ts.map +1 -1
  542. package/dist/fields/getDefaultValue.js.map +1 -1
  543. package/dist/fields/getFieldPaths.d.ts +10 -0
  544. package/dist/fields/getFieldPaths.d.ts.map +1 -0
  545. package/dist/fields/getFieldPaths.js +45 -0
  546. package/dist/fields/getFieldPaths.js.map +1 -0
  547. package/dist/fields/hooks/afterChange/index.d.ts +6 -0
  548. package/dist/fields/hooks/afterChange/index.d.ts.map +1 -1
  549. package/dist/fields/hooks/afterChange/index.js +2 -0
  550. package/dist/fields/hooks/afterChange/index.js.map +1 -1
  551. package/dist/fields/hooks/afterChange/promise.d.ts +9 -1
  552. package/dist/fields/hooks/afterChange/promise.d.ts.map +1 -1
  553. package/dist/fields/hooks/afterChange/promise.js +67 -3
  554. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  555. package/dist/fields/hooks/afterChange/traverseFields.d.ts +3 -1
  556. package/dist/fields/hooks/afterChange/traverseFields.d.ts.map +1 -1
  557. package/dist/fields/hooks/afterChange/traverseFields.js +3 -1
  558. package/dist/fields/hooks/afterChange/traverseFields.js.map +1 -1
  559. package/dist/fields/hooks/afterRead/index.d.ts +2 -1
  560. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  561. package/dist/fields/hooks/afterRead/index.js +5 -2
  562. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  563. package/dist/fields/hooks/afterRead/promise.d.ts +13 -1
  564. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  565. package/dist/fields/hooks/afterRead/promise.js +146 -35
  566. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  567. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +2 -1
  568. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  569. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +16 -10
  570. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  571. package/dist/fields/hooks/afterRead/traverseFields.d.ts +7 -1
  572. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  573. package/dist/fields/hooks/afterRead/traverseFields.js +4 -1
  574. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  575. package/dist/fields/hooks/beforeChange/beforeDuplicate.js.map +1 -1
  576. package/dist/fields/hooks/beforeChange/cloneDataFromOriginalDoc.js.map +1 -1
  577. package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts.map +1 -1
  578. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js.map +1 -1
  579. package/dist/fields/hooks/beforeChange/index.d.ts +1 -1
  580. package/dist/fields/hooks/beforeChange/index.d.ts.map +1 -1
  581. package/dist/fields/hooks/beforeChange/index.js +8 -3
  582. package/dist/fields/hooks/beforeChange/index.js.map +1 -1
  583. package/dist/fields/hooks/beforeChange/promise.d.ts +9 -2
  584. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  585. package/dist/fields/hooks/beforeChange/promise.js +80 -11
  586. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  587. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +16 -3
  588. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  589. package/dist/fields/hooks/beforeChange/traverseFields.js +4 -3
  590. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  591. package/dist/fields/hooks/beforeValidate/index.d.ts.map +1 -1
  592. package/dist/fields/hooks/beforeValidate/index.js +2 -0
  593. package/dist/fields/hooks/beforeValidate/index.js.map +1 -1
  594. package/dist/fields/hooks/beforeValidate/promise.d.ts +9 -1
  595. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  596. package/dist/fields/hooks/beforeValidate/promise.js +71 -4
  597. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  598. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts +9 -1
  599. package/dist/fields/hooks/beforeValidate/traverseFields.d.ts.map +1 -1
  600. package/dist/fields/hooks/beforeValidate/traverseFields.js +3 -1
  601. package/dist/fields/hooks/beforeValidate/traverseFields.js.map +1 -1
  602. package/dist/fields/mergeBaseFields.js.map +1 -1
  603. package/dist/fields/setDefaultBeforeDuplicate.js.map +1 -1
  604. package/dist/fields/sortableFieldTypes.js.map +1 -1
  605. package/dist/fields/validations.d.ts +16 -7
  606. package/dist/fields/validations.d.ts.map +1 -1
  607. package/dist/fields/validations.js +66 -8
  608. package/dist/fields/validations.js.map +1 -1
  609. package/dist/fields/validations.spec.js +1 -0
  610. package/dist/fields/validations.spec.js.map +1 -1
  611. package/dist/globals/config/client.d.ts +3 -3
  612. package/dist/globals/config/client.d.ts.map +1 -1
  613. package/dist/globals/config/client.js +2 -1
  614. package/dist/globals/config/client.js.map +1 -1
  615. package/dist/globals/config/sanitize.d.ts +2 -3
  616. package/dist/globals/config/sanitize.d.ts.map +1 -1
  617. package/dist/globals/config/sanitize.js +43 -37
  618. package/dist/globals/config/sanitize.js.map +1 -1
  619. package/dist/globals/config/schema.d.ts.map +1 -1
  620. package/dist/globals/config/schema.js +12 -2
  621. package/dist/globals/config/schema.js.map +1 -1
  622. package/dist/globals/config/types.d.ts +12 -7
  623. package/dist/globals/config/types.d.ts.map +1 -1
  624. package/dist/globals/config/types.js.map +1 -1
  625. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  626. package/dist/globals/operations/docAccess.js.map +1 -1
  627. package/dist/globals/operations/findOne.d.ts +0 -1
  628. package/dist/globals/operations/findOne.d.ts.map +1 -1
  629. package/dist/globals/operations/findOne.js +1 -0
  630. package/dist/globals/operations/findOne.js.map +1 -1
  631. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  632. package/dist/globals/operations/findVersionByID.js +1 -0
  633. package/dist/globals/operations/findVersionByID.js.map +1 -1
  634. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  635. package/dist/globals/operations/findVersions.js +1 -0
  636. package/dist/globals/operations/findVersions.js.map +1 -1
  637. package/dist/globals/operations/local/findOne.d.ts +7 -6
  638. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  639. package/dist/globals/operations/local/findOne.js.map +1 -1
  640. package/dist/globals/operations/local/findVersionByID.d.ts +7 -6
  641. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  642. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  643. package/dist/globals/operations/local/findVersions.d.ts +7 -6
  644. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  645. package/dist/globals/operations/local/findVersions.js.map +1 -1
  646. package/dist/globals/operations/local/index.js.map +1 -1
  647. package/dist/globals/operations/local/restoreVersion.d.ts +7 -6
  648. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  649. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  650. package/dist/globals/operations/local/update.d.ts +7 -6
  651. package/dist/globals/operations/local/update.d.ts.map +1 -1
  652. package/dist/globals/operations/local/update.js.map +1 -1
  653. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  654. package/dist/globals/operations/restoreVersion.js +1 -0
  655. package/dist/globals/operations/restoreVersion.js.map +1 -1
  656. package/dist/globals/operations/update.d.ts +5 -7
  657. package/dist/globals/operations/update.d.ts.map +1 -1
  658. package/dist/globals/operations/update.js +3 -1
  659. package/dist/globals/operations/update.js.map +1 -1
  660. package/dist/index.d.ts +214 -49
  661. package/dist/index.d.ts.map +1 -1
  662. package/dist/index.js +215 -15
  663. package/dist/index.js.map +1 -1
  664. package/dist/preferences/deleteUserPreferences.js.map +1 -1
  665. package/dist/preferences/operations/delete.js +2 -2
  666. package/dist/preferences/operations/delete.js.map +1 -1
  667. package/dist/preferences/operations/findOne.d.ts +2 -2
  668. package/dist/preferences/operations/findOne.d.ts.map +1 -1
  669. package/dist/preferences/operations/findOne.js.map +1 -1
  670. package/dist/preferences/operations/update.js +1 -1
  671. package/dist/preferences/operations/update.js.map +1 -1
  672. package/dist/preferences/preferencesCollection.js.map +1 -1
  673. package/dist/preferences/requestHandlers/delete.d.ts.map +1 -1
  674. package/dist/preferences/requestHandlers/delete.js +18 -5
  675. package/dist/preferences/requestHandlers/delete.js.map +1 -1
  676. package/dist/preferences/requestHandlers/findOne.d.ts.map +1 -1
  677. package/dist/preferences/requestHandlers/findOne.js +18 -5
  678. package/dist/preferences/requestHandlers/findOne.js.map +1 -1
  679. package/dist/preferences/requestHandlers/update.d.ts.map +1 -1
  680. package/dist/preferences/requestHandlers/update.js +19 -7
  681. package/dist/preferences/requestHandlers/update.js.map +1 -1
  682. package/dist/preferences/types.js.map +1 -1
  683. package/dist/translations/getLocalI18n.d.ts +1 -1
  684. package/dist/translations/getLocalI18n.d.ts.map +1 -1
  685. package/dist/translations/getLocalI18n.js +1 -1
  686. package/dist/translations/getLocalI18n.js.map +1 -1
  687. package/dist/types/constants.js.map +1 -1
  688. package/dist/types/index.d.ts +35 -32
  689. package/dist/types/index.d.ts.map +1 -1
  690. package/dist/types/index.js.map +1 -1
  691. package/dist/uploads/canResizeImage.d.ts +1 -1
  692. package/dist/uploads/canResizeImage.d.ts.map +1 -1
  693. package/dist/uploads/canResizeImage.js +1 -1
  694. package/dist/uploads/canResizeImage.js.map +1 -1
  695. package/dist/uploads/cropImage.d.ts +1 -1
  696. package/dist/uploads/cropImage.d.ts.map +1 -1
  697. package/dist/uploads/cropImage.js +12 -5
  698. package/dist/uploads/cropImage.js.map +1 -1
  699. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  700. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  701. package/dist/uploads/docWithFilenameExists.js.map +1 -1
  702. package/dist/uploads/fileExists.d.ts.map +1 -1
  703. package/dist/uploads/fileExists.js.map +1 -1
  704. package/dist/uploads/formatFilesize.js.map +1 -1
  705. package/dist/uploads/generateFileData.d.ts +3 -1
  706. package/dist/uploads/generateFileData.d.ts.map +1 -1
  707. package/dist/uploads/generateFileData.js +83 -33
  708. package/dist/uploads/generateFileData.js.map +1 -1
  709. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  710. package/dist/uploads/getBaseFields.js +23 -4
  711. package/dist/uploads/getBaseFields.js.map +1 -1
  712. package/dist/uploads/getExternalFile.d.ts +4 -3
  713. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  714. package/dist/uploads/getExternalFile.js +10 -6
  715. package/dist/uploads/getExternalFile.js.map +1 -1
  716. package/dist/uploads/getFileByPath.d.ts +2 -2
  717. package/dist/uploads/getFileByPath.d.ts.map +1 -1
  718. package/dist/uploads/getFileByPath.js +2 -3
  719. package/dist/uploads/getFileByPath.js.map +1 -1
  720. package/dist/uploads/getImageSize.d.ts +1 -1
  721. package/dist/uploads/getImageSize.d.ts.map +1 -1
  722. package/dist/uploads/getImageSize.js +19 -5
  723. package/dist/uploads/getImageSize.js.map +1 -1
  724. package/dist/uploads/getSafeFilename.d.ts +2 -2
  725. package/dist/uploads/getSafeFilename.d.ts.map +1 -1
  726. package/dist/uploads/getSafeFilename.js +1 -2
  727. package/dist/uploads/getSafeFilename.js.map +1 -1
  728. package/dist/uploads/imageResizer.d.ts +9 -11
  729. package/dist/uploads/imageResizer.d.ts.map +1 -1
  730. package/dist/uploads/imageResizer.js +73 -37
  731. package/dist/uploads/imageResizer.js.map +1 -1
  732. package/dist/uploads/isImage.d.ts +1 -1
  733. package/dist/uploads/isImage.d.ts.map +1 -1
  734. package/dist/uploads/isImage.js +1 -1
  735. package/dist/uploads/isImage.js.map +1 -1
  736. package/dist/uploads/mimeTypeValidator.js.map +1 -1
  737. package/dist/uploads/mimeTypeValidator.spec.js.map +1 -1
  738. package/dist/uploads/saveBufferToFile.d.ts +0 -1
  739. package/dist/uploads/saveBufferToFile.d.ts.map +1 -1
  740. package/dist/uploads/saveBufferToFile.js.map +1 -1
  741. package/dist/uploads/tempFile.d.ts +7 -0
  742. package/dist/uploads/tempFile.d.ts.map +1 -0
  743. package/dist/uploads/tempFile.js +39 -0
  744. package/dist/uploads/tempFile.js.map +1 -0
  745. package/dist/uploads/types.d.ts +98 -8
  746. package/dist/uploads/types.d.ts.map +1 -1
  747. package/dist/uploads/types.js.map +1 -1
  748. package/dist/uploads/unlinkTempFiles.js.map +1 -1
  749. package/dist/uploads/uploadFiles.d.ts.map +1 -1
  750. package/dist/uploads/uploadFiles.js.map +1 -1
  751. package/dist/utilities/checkDuplicateCollections.js +1 -1
  752. package/dist/utilities/checkDuplicateCollections.js.map +1 -1
  753. package/dist/utilities/combineMerge.js.map +1 -1
  754. package/dist/utilities/commitTransaction.js.map +1 -1
  755. package/dist/utilities/configToJSONSchema.d.ts +1 -0
  756. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  757. package/dist/utilities/configToJSONSchema.js +136 -5
  758. package/dist/utilities/configToJSONSchema.js.map +1 -1
  759. package/dist/utilities/configToJSONSchema.spec.js +156 -2
  760. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  761. package/dist/utilities/convertData.js.map +1 -1
  762. package/dist/utilities/createArrayFromCommaDelineated.js.map +1 -1
  763. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  764. package/dist/utilities/createLocalReq.js +8 -5
  765. package/dist/utilities/createLocalReq.js.map +1 -1
  766. package/dist/utilities/deepCopyObject.js.map +1 -1
  767. package/dist/utilities/deepMerge.js.map +1 -1
  768. package/dist/utilities/dependencies/getDependencies.d.ts +9 -0
  769. package/dist/utilities/dependencies/getDependencies.d.ts.map +1 -0
  770. package/dist/utilities/dependencies/getDependencies.js +71 -0
  771. package/dist/utilities/dependencies/getDependencies.js.map +1 -0
  772. package/dist/utilities/dependencies/isError.d.ts +5 -0
  773. package/dist/utilities/dependencies/isError.d.ts.map +1 -0
  774. package/dist/utilities/dependencies/isError.js +19 -0
  775. package/dist/utilities/dependencies/isError.js.map +1 -0
  776. package/dist/utilities/dependencies/realPath.d.ts +3 -0
  777. package/dist/utilities/dependencies/realPath.d.ts.map +1 -0
  778. package/dist/utilities/dependencies/realPath.js +23 -0
  779. package/dist/utilities/dependencies/realPath.js.map +1 -0
  780. package/dist/utilities/dependencies/resolveFrom.d.ts +2 -0
  781. package/dist/utilities/dependencies/resolveFrom.d.ts.map +1 -0
  782. package/dist/utilities/dependencies/resolveFrom.js +58 -0
  783. package/dist/utilities/dependencies/resolveFrom.js.map +1 -0
  784. package/dist/utilities/fieldSchemaToJSON.d.ts.map +1 -1
  785. package/dist/utilities/fieldSchemaToJSON.js.map +1 -1
  786. package/dist/utilities/flattenTopLevelFields.js.map +1 -1
  787. package/dist/utilities/formatLabels.js.map +1 -1
  788. package/dist/utilities/formatLabels.spec.js.map +1 -1
  789. package/dist/utilities/getCSSVariable.js.map +1 -1
  790. package/dist/utilities/getCollectionIDFieldTypes.js.map +1 -1
  791. package/dist/utilities/getDataByPath.d.ts +3 -0
  792. package/dist/utilities/getDataByPath.d.ts.map +1 -0
  793. package/dist/utilities/getDataByPath.js +18 -0
  794. package/dist/utilities/getDataByPath.js.map +1 -0
  795. package/dist/utilities/getEntityPolicies.js.map +1 -1
  796. package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
  797. package/dist/utilities/getObjectDotNotation.js.map +1 -1
  798. package/dist/utilities/getSiblingData.d.ts +3 -0
  799. package/dist/utilities/getSiblingData.d.ts.map +1 -0
  800. package/dist/utilities/getSiblingData.js +33 -0
  801. package/dist/utilities/getSiblingData.js.map +1 -0
  802. package/dist/utilities/getUniqueListBy.d.ts +1 -1
  803. package/dist/utilities/getUniqueListBy.d.ts.map +1 -1
  804. package/dist/utilities/getUniqueListBy.js +1 -1
  805. package/dist/utilities/getUniqueListBy.js.map +1 -1
  806. package/dist/utilities/importWithoutClientFiles.d.ts.map +1 -1
  807. package/dist/utilities/importWithoutClientFiles.js +10 -4
  808. package/dist/utilities/importWithoutClientFiles.js.map +1 -1
  809. package/dist/utilities/initTransaction.d.ts.map +1 -1
  810. package/dist/utilities/initTransaction.js +9 -9
  811. package/dist/utilities/initTransaction.js.map +1 -1
  812. package/dist/utilities/isEntityHidden.d.ts +3 -3
  813. package/dist/utilities/isEntityHidden.d.ts.map +1 -1
  814. package/dist/utilities/isEntityHidden.js.map +1 -1
  815. package/dist/utilities/isNumber.js.map +1 -1
  816. package/dist/utilities/isPlainObject.js.map +1 -1
  817. package/dist/utilities/isReactComponent.d.ts +2 -3
  818. package/dist/utilities/isReactComponent.d.ts.map +1 -1
  819. package/dist/utilities/isReactComponent.js +17 -11
  820. package/dist/utilities/isReactComponent.js.map +1 -1
  821. package/dist/utilities/isValidID.d.ts +1 -1
  822. package/dist/utilities/isValidID.js.map +1 -1
  823. package/dist/utilities/isolateObjectProperty.d.ts +1 -1
  824. package/dist/utilities/isolateObjectProperty.d.ts.map +1 -1
  825. package/dist/utilities/isolateObjectProperty.js +14 -5
  826. package/dist/utilities/isolateObjectProperty.js.map +1 -1
  827. package/dist/utilities/killTransaction.js +1 -1
  828. package/dist/utilities/killTransaction.js.map +1 -1
  829. package/dist/utilities/logger.d.ts.map +1 -1
  830. package/dist/utilities/logger.js.map +1 -1
  831. package/dist/utilities/mapAsync.js.map +1 -1
  832. package/dist/utilities/mergeListSearchAndWhere.js.map +1 -1
  833. package/dist/utilities/overwriteMerge.js.map +1 -1
  834. package/dist/utilities/parseCookies.d.ts +1 -1
  835. package/dist/utilities/parseCookies.d.ts.map +1 -1
  836. package/dist/utilities/parseCookies.js +1 -1
  837. package/dist/utilities/parseCookies.js.map +1 -1
  838. package/dist/utilities/reduceFieldsToValues.d.ts +10 -0
  839. package/dist/utilities/reduceFieldsToValues.d.ts.map +1 -0
  840. package/dist/utilities/reduceFieldsToValues.js +22 -0
  841. package/dist/utilities/reduceFieldsToValues.js.map +1 -0
  842. package/dist/utilities/sanitizeInternalFields.d.ts.map +1 -1
  843. package/dist/utilities/sanitizeInternalFields.js.map +1 -1
  844. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  845. package/dist/utilities/setsAreEqual.js.map +1 -1
  846. package/dist/utilities/telemetry/events/adminInit.js.map +1 -1
  847. package/dist/utilities/telemetry/events/serverInit.d.ts.map +1 -1
  848. package/dist/utilities/telemetry/events/serverInit.js.map +1 -1
  849. package/dist/utilities/telemetry/index.d.ts +9 -0
  850. package/dist/utilities/telemetry/index.d.ts.map +1 -1
  851. package/dist/utilities/telemetry/index.js +64 -17
  852. package/dist/utilities/telemetry/index.js.map +1 -1
  853. package/dist/utilities/telemetry/oneWayHash.d.ts +0 -1
  854. package/dist/utilities/telemetry/oneWayHash.d.ts.map +1 -1
  855. package/dist/utilities/telemetry/oneWayHash.js.map +1 -1
  856. package/dist/utilities/timestamp.js.map +1 -1
  857. package/dist/utilities/toKebabCase.js.map +1 -1
  858. package/dist/utilities/unflatten.d.ts +9 -0
  859. package/dist/utilities/unflatten.d.ts.map +1 -0
  860. package/dist/utilities/unflatten.js +64 -0
  861. package/dist/utilities/unflatten.js.map +1 -0
  862. package/dist/utilities/wait.js.map +1 -1
  863. package/dist/utilities/wordBoundariesRegex.js.map +1 -1
  864. package/dist/versions/baseFields.js.map +1 -1
  865. package/dist/versions/buildCollectionFields.js.map +1 -1
  866. package/dist/versions/buildGlobalFields.js.map +1 -1
  867. package/dist/versions/defaults.d.ts +4 -0
  868. package/dist/versions/defaults.d.ts.map +1 -0
  869. package/dist/versions/defaults.js +5 -0
  870. package/dist/versions/defaults.js.map +1 -0
  871. package/dist/versions/deleteCollectionVersions.d.ts.map +1 -1
  872. package/dist/versions/deleteCollectionVersions.js.map +1 -1
  873. package/dist/versions/drafts/appendVersionToQueryKey.js.map +1 -1
  874. package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -1
  875. package/dist/versions/drafts/replaceWithDraftIfAvailable.d.ts.map +1 -1
  876. package/dist/versions/drafts/replaceWithDraftIfAvailable.js.map +1 -1
  877. package/dist/versions/enforceMaxVersions.d.ts.map +1 -1
  878. package/dist/versions/enforceMaxVersions.js +1 -1
  879. package/dist/versions/enforceMaxVersions.js.map +1 -1
  880. package/dist/versions/getLatestCollectionVersion.d.ts.map +1 -1
  881. package/dist/versions/getLatestCollectionVersion.js.map +1 -1
  882. package/dist/versions/getLatestGlobalVersion.d.ts.map +1 -1
  883. package/dist/versions/getLatestGlobalVersion.js.map +1 -1
  884. package/dist/versions/saveVersion.d.ts.map +1 -1
  885. package/dist/versions/saveVersion.js +2 -1
  886. package/dist/versions/saveVersion.js.map +1 -1
  887. package/dist/versions/types.d.ts +2 -0
  888. package/dist/versions/types.d.ts.map +1 -1
  889. package/dist/versions/types.js.map +1 -1
  890. package/package.json +94 -117
  891. package/auth.d.ts +0 -6
  892. package/auth.js +0 -6
  893. package/config.d.ts +0 -14
  894. package/config.js +0 -14
  895. package/database.d.ts +0 -23
  896. package/database.js +0 -22
  897. package/dist/email/build.d.ts +0 -5
  898. package/dist/email/build.d.ts.map +0 -1
  899. package/dist/email/build.js +0 -63
  900. package/dist/email/build.js.map +0 -1
  901. package/dist/email/mockHandler.d.ts +0 -5
  902. package/dist/email/mockHandler.d.ts.map +0 -1
  903. package/dist/email/mockHandler.js +0 -24
  904. package/dist/email/mockHandler.js.map +0 -1
  905. package/dist/exports/auth.d.ts +0 -6
  906. package/dist/exports/auth.d.ts.map +0 -1
  907. package/dist/exports/auth.js +0 -6
  908. package/dist/exports/auth.js.map +0 -1
  909. package/dist/exports/components/utilities.d.ts +0 -2
  910. package/dist/exports/components/utilities.d.ts.map +0 -1
  911. package/dist/exports/components/utilities.js +0 -2
  912. package/dist/exports/components/utilities.js.map +0 -1
  913. package/dist/exports/config.d.ts +0 -14
  914. package/dist/exports/config.d.ts.map +0 -1
  915. package/dist/exports/config.js +0 -14
  916. package/dist/exports/config.js.map +0 -1
  917. package/dist/exports/database.d.ts +0 -23
  918. package/dist/exports/database.d.ts.map +0 -1
  919. package/dist/exports/database.js +0 -22
  920. package/dist/exports/database.js.map +0 -1
  921. package/dist/exports/errors.d.ts +0 -2
  922. package/dist/exports/errors.d.ts.map +0 -1
  923. package/dist/exports/errors.js +0 -3
  924. package/dist/exports/errors.js.map +0 -1
  925. package/dist/exports/fields/index.d.ts +0 -3
  926. package/dist/exports/fields/index.d.ts.map +0 -1
  927. package/dist/exports/fields/index.js +0 -4
  928. package/dist/exports/fields/index.js.map +0 -1
  929. package/dist/exports/fields/validations.d.ts +0 -2
  930. package/dist/exports/fields/validations.d.ts.map +0 -1
  931. package/dist/exports/fields/validations.js +0 -3
  932. package/dist/exports/fields/validations.js.map +0 -1
  933. package/dist/exports/operations.d.ts +0 -30
  934. package/dist/exports/operations.d.ts.map +0 -1
  935. package/dist/exports/operations.js +0 -31
  936. package/dist/exports/operations.js.map +0 -1
  937. package/dist/exports/types.d.ts +0 -17
  938. package/dist/exports/types.d.ts.map +0 -1
  939. package/dist/exports/types.js +0 -5
  940. package/dist/exports/types.js.map +0 -1
  941. package/dist/exports/uploads.d.ts +0 -2
  942. package/dist/exports/uploads.d.ts.map +0 -1
  943. package/dist/exports/uploads.js +0 -3
  944. package/dist/exports/uploads.js.map +0 -1
  945. package/dist/exports/utilities.d.ts +0 -31
  946. package/dist/exports/utilities.d.ts.map +0 -1
  947. package/dist/exports/utilities.js +0 -32
  948. package/dist/exports/utilities.js.map +0 -1
  949. package/dist/exports/versions.d.ts +0 -9
  950. package/dist/exports/versions.d.ts.map +0 -1
  951. package/dist/exports/versions.js +0 -9
  952. package/dist/exports/versions.js.map +0 -1
  953. package/errors.d.ts +0 -2
  954. package/errors.js +0 -3
  955. package/node.d.ts +0 -3
  956. package/node.js +0 -4
  957. package/operations.d.ts +0 -30
  958. package/operations.js +0 -31
  959. package/src/index.ts +0 -498
  960. package/types.d.ts +0 -17
  961. package/types.js +0 -5
  962. package/uploads.d.ts +0 -2
  963. package/uploads.js +0 -3
  964. package/utilities.d.ts +0 -31
  965. package/utilities.js +0 -32
  966. package/versions.d.ts +0 -9
  967. package/versions.js +0 -9
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/config/schema.ts"],"sourcesContent":["import joi from 'joi'\n\nimport { componentSchema } from '../../config/shared/componentSchema.js'\n\nexport const baseAdminComponentFields = joi\n .object()\n .keys({\n Cell: componentSchema,\n Field: componentSchema,\n Filter: componentSchema,\n })\n .default({})\n\nexport const baseAdminFields = joi.object().keys({\n className: joi.string(),\n components: baseAdminComponentFields,\n condition: joi.func(),\n description: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()]), componentSchema),\n disableBulkEdit: joi.boolean().default(false),\n disabled: joi.boolean().default(false),\n hidden: joi.boolean().default(false),\n initCollapsed: joi.boolean().default(false),\n position: joi.string().valid('sidebar'),\n readOnly: joi.boolean().default(false),\n style: joi.object().unknown(),\n width: joi.string(),\n})\n\nexport const baseField = joi\n .object()\n .keys({\n access: joi.object().keys({\n create: joi.func(),\n read: joi.func(),\n update: joi.func(),\n }),\n admin: baseAdminFields.default(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n hidden: joi.boolean().default(false),\n hooks: joi\n .object()\n .keys({\n afterChange: joi.array().items(joi.func()).default([]),\n afterRead: joi.array().items(joi.func()).default([]),\n beforeChange: joi.array().items(joi.func()).default([]),\n beforeDuplicate: joi.array().items(joi.func()).default([]),\n beforeValidate: joi.array().items(joi.func()).default([]),\n })\n .default(),\n index: joi.boolean().default(false),\n label: joi\n .alternatives()\n .try(\n joi.func(),\n joi.object().pattern(joi.string(), [joi.string()]),\n joi.string(),\n joi.valid(false),\n ),\n localized: joi.boolean().default(false),\n required: joi.boolean().default(false),\n saveToJWT: joi.alternatives().try(joi.boolean(), joi.string()).default(false),\n unique: joi.boolean().default(false),\n validate: joi.func(),\n })\n .default()\n\nexport const idField = baseField.keys({\n name: joi.string().valid('id'),\n type: joi.string().valid('text', 'number'),\n localized: joi.invalid(true),\n required: joi.not(false, 0).default(true),\n})\n\nexport const text = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('text').required(),\n admin: baseAdminFields.keys({\n autoComplete: joi.string(),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n placeholder: joi\n .alternatives()\n .try(joi.object().pattern(joi.string(), [joi.string()]), joi.string()),\n rtl: joi.boolean(),\n }),\n defaultValue: joi.alternatives().try(joi.string(), joi.func()),\n hasMany: joi.boolean().default(false),\n maxLength: joi.number(),\n maxRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n minLength: joi.number(),\n minRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n})\n\nexport const number = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('number').required(),\n admin: baseAdminFields.keys({\n autoComplete: joi.string(),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi\n .array()\n .items(componentSchema)\n .when('hasMany', { not: true, otherwise: joi.forbidden() }),\n beforeInput: joi\n .array()\n .items(componentSchema)\n .when('hasMany', { not: true, otherwise: joi.forbidden() }),\n }),\n placeholder: joi.string(),\n step: joi.number(),\n }),\n defaultValue: joi\n .alternatives()\n .try(\n joi.number(),\n joi.func(),\n joi.array().when('hasMany', { not: true, then: joi.forbidden() }),\n ),\n hasMany: joi.boolean().default(false),\n max: joi.number(),\n maxRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n min: joi.number(),\n minRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n})\n\nexport const textarea = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('textarea').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n placeholder: joi.string(),\n rows: joi.number(),\n rtl: joi.boolean(),\n }),\n defaultValue: joi.alternatives().try(joi.string(), joi.func()),\n maxLength: joi.number(),\n minLength: joi.number(),\n})\n\nexport const email = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('email').required(),\n admin: baseAdminFields.keys({\n autoComplete: joi.string(),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n placeholder: joi.string(),\n }),\n defaultValue: joi.alternatives().try(joi.string(), joi.func()),\n maxLength: joi.number(),\n minLength: joi.number(),\n})\n\nexport const code = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('code').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n editorOptions: joi.object().unknown(), // Editor['options'] @monaco-editor/react\n language: joi.string(),\n }),\n defaultValue: joi.alternatives().try(joi.string(), joi.func()),\n})\n\nexport const json = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('json').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n editorOptions: joi.object().unknown(), // Editor['options'] @monaco-editor/react\n }),\n defaultValue: joi.alternatives().try(joi.array(), joi.object()),\n})\n\nexport const select = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('select').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n isClearable: joi.boolean().default(false),\n isSortable: joi.boolean().default(false),\n }),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n defaultValue: joi\n .alternatives()\n .try(joi.string().allow(''), joi.array().items(joi.string().allow('')), joi.func()),\n enumName: joi.alternatives().try(joi.string(), joi.func()),\n hasMany: joi.boolean().default(false),\n options: joi\n .array()\n .min(1)\n .items(\n joi.alternatives().try(\n joi.string(),\n joi.object({\n label: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n value: joi.string().required().allow(''),\n }),\n ),\n )\n .required(),\n})\n\nexport const radio = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('radio').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n layout: joi.string().valid('vertical', 'horizontal'),\n }),\n defaultValue: joi.alternatives().try(joi.string().allow(''), joi.func()),\n enumName: joi.alternatives().try(joi.string(), joi.func()),\n options: joi\n .array()\n .min(1)\n .items(\n joi.alternatives().try(\n joi.string(),\n joi.object({\n label: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()]))\n .required(),\n value: joi.string().required().allow(''),\n }),\n ),\n )\n .required(),\n})\n\nexport const row = baseField.keys({\n type: joi.string().valid('row').required(),\n admin: baseAdminFields.default(),\n fields: joi.array().items(joi.link('#field')),\n})\n\nexport const collapsible = baseField.keys({\n type: joi.string().valid('collapsible').required(),\n admin: baseAdminFields.default(),\n fields: joi.array().items(joi.link('#field')),\n label: joi.alternatives().try(joi.string(), componentSchema),\n})\n\nconst tab = baseField.keys({\n name: joi.string().when('localized', { is: joi.exist(), then: joi.required() }),\n description: joi.alternatives().try(joi.string(), componentSchema),\n fields: joi.array().items(joi.link('#field')).required(),\n interfaceName: joi.string().when('name', { not: joi.exist(), then: joi.forbidden() }),\n label: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()]))\n .when('name', { is: joi.not(), then: joi.required() }),\n localized: joi.boolean(),\n saveToJWT: joi.alternatives().try(joi.boolean(), joi.string()),\n})\n\nexport const tabs = baseField.keys({\n type: joi.string().valid('tabs').required(),\n admin: baseAdminFields.keys({\n description: joi.forbidden(),\n }),\n fields: joi.forbidden(),\n localized: joi.forbidden(),\n tabs: joi.array().items(tab).required(),\n})\n\nexport const group = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('group').required(),\n admin: baseAdminFields.keys({\n hideGutter: joi.boolean().default(true),\n }),\n defaultValue: joi.alternatives().try(joi.object(), joi.func()),\n fields: joi.array().items(joi.link('#field')),\n interfaceName: joi.string(),\n})\n\nexport const array = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('array').required(),\n admin: baseAdminFields\n .keys({\n components: baseAdminComponentFields\n .keys({\n RowLabel: componentSchema,\n })\n .default({}),\n })\n .default({}),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n defaultValue: joi.alternatives().try(joi.array().items(joi.object()), joi.func()),\n fields: joi.array().items(joi.link('#field')).required(),\n interfaceName: joi.string(),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n maxRows: joi.number(),\n minRows: joi.number(),\n})\n\nexport const upload = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('upload').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n }),\n defaultValue: joi.alternatives().try(joi.object(), joi.func()),\n filterOptions: joi.alternatives().try(joi.object(), joi.func()),\n maxDepth: joi.number(),\n relationTo: joi.string().required(),\n})\n\nexport const checkbox = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('checkbox').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n }),\n defaultValue: joi.alternatives().try(joi.boolean(), joi.func()),\n})\n\nexport const point = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('point').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n }),\n defaultValue: joi.alternatives().try(joi.array().items(joi.number()).max(2).min(2), joi.func()),\n})\n\nexport const relationship = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('relationship').required(),\n admin: baseAdminFields.keys({\n allowCreate: joi.boolean().default(true),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n isSortable: joi.boolean().default(false),\n sortOptions: joi.alternatives().conditional(joi.ref('...relationTo'), {\n is: joi.string(),\n otherwise: joi.object().pattern(joi.string(), joi.string()),\n then: joi.string(),\n }),\n }),\n defaultValue: joi.alternatives().try(joi.func()),\n filterOptions: joi.alternatives().try(joi.object(), joi.func()),\n hasMany: joi.boolean().default(false),\n max: joi\n .number()\n .when('hasMany', { is: joi.not(true), then: joi.forbidden() })\n .warning('deprecated', { message: 'Use maxRows instead.' }),\n maxDepth: joi.number(),\n maxRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n min: joi\n .number()\n .when('hasMany', { is: joi.not(true), then: joi.forbidden() })\n .warning('deprecated', { message: 'Use minRows instead.' }),\n minRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n relationTo: joi.alternatives().try(joi.string().required(), joi.array().items(joi.string())),\n})\n\nexport const blocks = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('blocks').required(),\n blocks: joi\n .array()\n .items(\n joi.object({\n slug: joi.string().required(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n fields: joi.array().items(joi.link('#field')),\n graphQL: joi.object().keys({\n singularName: joi.string(),\n }),\n imageAltText: joi.string(),\n imageURL: joi.string(),\n interfaceName: joi.string(),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n }),\n )\n .required(),\n defaultValue: joi.alternatives().try(joi.array().items(joi.object()), joi.func()),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n maxRows: joi.number(),\n minRows: joi.number(),\n})\n\nexport const richText = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('richText').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n }),\n defaultValue: joi.alternatives().try(joi.array().items(joi.object()), joi.func(), joi.object()),\n editor: joi\n .object()\n .keys({\n CellComponent: componentSchema.optional(),\n FieldComponent: componentSchema.optional(),\n afterReadPromise: joi.func().optional(),\n outputSchema: joi.func().optional(),\n populationPromise: joi.func().optional(),\n validate: joi.func().required(),\n })\n .unknown(),\n})\n\nexport const date = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('date').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n date: joi.object({\n displayFormat: joi.string(),\n maxDate: joi.date(),\n maxTime: joi.date(),\n minDate: joi.date(),\n minTime: joi.date(),\n monthsToShow: joi.number(),\n overrides: joi.object().unknown(),\n pickerAppearance: joi.string(),\n timeFormat: joi.string(),\n timeIntervals: joi.number(),\n }),\n placeholder: joi.string(),\n }),\n defaultValue: joi.alternatives().try(joi.string(), joi.func()),\n})\n\nexport const ui = joi.object().keys({\n name: joi.string().required(),\n type: joi.string().valid('ui').required(),\n admin: joi\n .object()\n .keys({\n components: joi\n .object()\n .keys({\n Cell: componentSchema,\n Field: componentSchema,\n })\n .default({}),\n condition: joi.func(),\n position: joi.string().valid('sidebar'),\n width: joi.string(),\n })\n .default(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n label: joi.alternatives().try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n})\n\nconst fieldSchema = joi\n .alternatives()\n .try(\n text,\n number,\n textarea,\n email,\n code,\n json,\n select,\n group,\n array,\n row,\n collapsible,\n tabs,\n radio,\n relationship,\n checkbox,\n upload,\n richText,\n blocks,\n date,\n point,\n ui,\n )\n .id('field')\n\nexport default fieldSchema\n"],"names":["joi","componentSchema","baseAdminComponentFields","object","keys","Cell","Field","Filter","default","baseAdminFields","className","string","components","condition","func","description","alternatives","try","pattern","disableBulkEdit","boolean","disabled","hidden","initCollapsed","position","valid","readOnly","style","unknown","width","baseField","access","create","read","update","admin","custom","any","hooks","afterChange","array","items","afterRead","beforeChange","beforeDuplicate","beforeValidate","index","label","localized","required","saveToJWT","unique","validate","idField","name","type","invalid","not","text","autoComplete","Error","Label","afterInput","beforeInput","placeholder","rtl","defaultValue","hasMany","maxLength","number","maxRows","when","is","then","forbidden","minLength","minRows","otherwise","step","max","min","textarea","rows","email","code","editorOptions","language","json","select","isClearable","isSortable","dbName","allow","enumName","options","value","radio","layout","row","fields","link","collapsible","tab","exist","interfaceName","tabs","group","hideGutter","RowLabel","labels","plural","singular","upload","filterOptions","maxDepth","relationTo","checkbox","point","relationship","allowCreate","sortOptions","conditional","ref","warning","message","blocks","slug","graphQL","singularName","imageAltText","imageURL","richText","editor","CellComponent","optional","FieldComponent","afterReadPromise","outputSchema","populationPromise","date","displayFormat","maxDate","maxTime","minDate","minTime","monthsToShow","overrides","pickerAppearance","timeFormat","timeIntervals","ui","fieldSchema","id"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/config/schema.ts"],"sourcesContent":["import joi from 'joi'\n\nimport { componentSchema } from '../../config/shared/componentSchema.js'\n\nexport const baseAdminComponentFields = joi\n .object()\n .keys({\n Cell: componentSchema,\n Description: componentSchema,\n Field: componentSchema,\n Filter: componentSchema,\n })\n .default({})\n\nexport const baseAdminFields = joi.object().keys({\n className: joi.string(),\n components: baseAdminComponentFields,\n condition: joi.func(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n description: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()]), joi.function()),\n disableBulkEdit: joi.boolean().default(false),\n disableListColumn: joi.boolean().default(false),\n disableListFilter: joi.boolean().default(false),\n disabled: joi.boolean().default(false),\n hidden: joi.boolean().default(false),\n initCollapsed: joi.boolean().default(false),\n position: joi.string().valid('sidebar'),\n readOnly: joi.boolean().default(false),\n style: joi.object().unknown(),\n width: joi.string(),\n})\n\nexport const baseField = joi\n .object()\n .keys({\n access: joi.object().keys({\n create: joi.func(),\n read: joi.func(),\n update: joi.func(),\n }),\n admin: baseAdminFields.default(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n hidden: joi.boolean().default(false),\n hooks: joi\n .object()\n .keys({\n afterChange: joi.array().items(joi.func()).default([]),\n afterRead: joi.array().items(joi.func()).default([]),\n beforeChange: joi.array().items(joi.func()).default([]),\n beforeDuplicate: joi.array().items(joi.func()).default([]),\n beforeValidate: joi.array().items(joi.func()).default([]),\n })\n .default(),\n index: joi.boolean().default(false),\n label: joi\n .alternatives()\n .try(\n joi.func(),\n joi.object().pattern(joi.string(), [joi.string()]),\n joi.string(),\n joi.valid(false),\n ),\n localized: joi.boolean().default(false),\n required: joi.boolean().default(false),\n saveToJWT: joi.alternatives().try(joi.boolean(), joi.string()).default(false),\n typescriptSchema: joi.array().items(joi.func()),\n unique: joi.boolean().default(false),\n validate: joi.func(),\n })\n .default()\n\nexport const idField = baseField.keys({\n name: joi.string().valid('id'),\n type: joi.string().valid('text', 'number'),\n localized: joi.invalid(true),\n required: joi.not(false, 0).default(true),\n})\n\nexport const text = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('text').required(),\n admin: baseAdminFields.keys({\n autoComplete: joi.string(),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n placeholder: joi\n .alternatives()\n .try(joi.object().pattern(joi.string(), [joi.string()]), joi.string()),\n rtl: joi.boolean(),\n }),\n defaultValue: joi.alternatives().try(joi.string().allow(''), joi.func()),\n hasMany: joi.boolean().default(false),\n maxLength: joi.number(),\n maxRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n minLength: joi.number(),\n minRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n})\n\nexport const number = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('number').required(),\n admin: baseAdminFields.keys({\n autoComplete: joi.string(),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi\n .array()\n .items(componentSchema)\n .when('hasMany', { not: true, otherwise: joi.forbidden() }),\n beforeInput: joi\n .array()\n .items(componentSchema)\n .when('hasMany', { not: true, otherwise: joi.forbidden() }),\n }),\n placeholder: joi.string(),\n step: joi.number(),\n }),\n defaultValue: joi\n .alternatives()\n .try(\n joi.number(),\n joi.func(),\n joi.array().when('hasMany', { not: true, then: joi.forbidden() }),\n ),\n hasMany: joi.boolean().default(false),\n max: joi.number(),\n maxRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n min: joi.number(),\n minRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n})\n\nexport const textarea = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('textarea').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n placeholder: joi.string(),\n rows: joi.number(),\n rtl: joi.boolean(),\n }),\n defaultValue: joi.alternatives().try(joi.string().allow(''), joi.func()),\n maxLength: joi.number(),\n minLength: joi.number(),\n})\n\nexport const email = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('email').required(),\n admin: baseAdminFields.keys({\n autoComplete: joi.string(),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n placeholder: joi.string(),\n }),\n defaultValue: joi.alternatives().try(joi.string().allow(''), joi.func()),\n maxLength: joi.number(),\n minLength: joi.number(),\n})\n\nexport const code = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('code').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n editorOptions: joi.object().unknown(), // Editor['options'] @monaco-editor/react\n language: joi.string(),\n }),\n defaultValue: joi.alternatives().try(joi.string().allow(''), joi.func()),\n})\n\nexport const json = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('json').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n editorOptions: joi.object().unknown(), // Editor['options'] @monaco-editor/react\n }),\n defaultValue: joi.alternatives().try(joi.array(), joi.func(), joi.object()),\n jsonSchema: joi.object().unknown(),\n})\n\nexport const select = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('select').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n isClearable: joi.boolean().default(false),\n isSortable: joi.boolean().default(false),\n }),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n defaultValue: joi\n .alternatives()\n .try(joi.string().allow(''), joi.array().items(joi.string().allow('')), joi.func()),\n enumName: joi.alternatives().try(joi.string(), joi.func()),\n hasMany: joi.boolean().default(false),\n options: joi\n .array()\n .min(1)\n .items(\n joi.alternatives().try(\n joi.string(),\n joi.object({\n label: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n value: joi.string().required().allow(''),\n }),\n ),\n )\n .required(),\n})\n\nexport const radio = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('radio').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n layout: joi.string().valid('vertical', 'horizontal'),\n }),\n defaultValue: joi.alternatives().try(joi.string().allow(''), joi.func()),\n enumName: joi.alternatives().try(joi.string(), joi.func()),\n options: joi\n .array()\n .min(1)\n .items(\n joi.alternatives().try(\n joi.string(),\n joi.object({\n label: joi\n .alternatives()\n .try(joi.func(), joi.string(), joi.object().pattern(joi.string(), [joi.string()]))\n .required(),\n value: joi.string().required().allow(''),\n }),\n ),\n )\n .required(),\n})\n\nexport const row = baseField.keys({\n type: joi.string().valid('row').required(),\n admin: baseAdminFields.default(),\n fields: joi.array().items(joi.link('#field')),\n})\n\nexport const collapsible = baseField.keys({\n type: joi.string().valid('collapsible').required(),\n admin: baseAdminFields\n .keys({\n components: baseAdminComponentFields\n .keys({\n RowLabel: componentSchema.optional(),\n })\n .default({}),\n })\n .default({}),\n fields: joi.array().items(joi.link('#field')),\n label: joi.alternatives().conditional('admin.components.RowLabel', {\n is: joi.exist(),\n otherwise: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()]), joi.function())\n .required(),\n then: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()]), joi.function())\n .optional(),\n }),\n})\n\nconst tab = baseField.keys({\n name: joi.string().when('localized', { is: joi.exist(), then: joi.required() }),\n description: joi.alternatives().try(joi.string(), componentSchema),\n fields: joi.array().items(joi.link('#field')).required(),\n interfaceName: joi.string().when('name', { not: joi.exist(), then: joi.forbidden() }),\n label: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()]))\n .when('name', { is: joi.not(), then: joi.required() }),\n localized: joi.boolean(),\n saveToJWT: joi.alternatives().try(joi.boolean(), joi.string()),\n})\n\nexport const tabs = baseField.keys({\n type: joi.string().valid('tabs').required(),\n admin: baseAdminFields.keys({\n description: joi.forbidden(),\n }),\n fields: joi.forbidden(),\n localized: joi.forbidden(),\n tabs: joi.array().items(tab).required(),\n})\n\nexport const group = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('group').required(),\n admin: baseAdminFields.keys({\n hideGutter: joi.boolean().default(true),\n }),\n defaultValue: joi.alternatives().try(joi.object(), joi.func()),\n fields: joi.array().items(joi.link('#field')),\n interfaceName: joi.string(),\n})\n\nexport const array = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('array').required(),\n admin: baseAdminFields\n .keys({\n components: baseAdminComponentFields\n .keys({\n RowLabel: componentSchema,\n })\n .default({}),\n isSortable: joi.boolean(),\n })\n .default({}),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n defaultValue: joi.alternatives().try(joi.array().items(joi.object()), joi.func()),\n fields: joi.array().items(joi.link('#field')).required(),\n interfaceName: joi.string(),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n maxRows: joi.number(),\n minRows: joi.number(),\n})\n\nexport const upload = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('upload').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n }),\n defaultValue: joi.alternatives().try(joi.object(), joi.func()),\n filterOptions: joi.alternatives().try(joi.object(), joi.func()),\n maxDepth: joi.number(),\n relationTo: joi.string().required(),\n})\n\nexport const checkbox = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('checkbox').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n }),\n defaultValue: joi.alternatives().try(joi.boolean(), joi.func()),\n})\n\nexport const point = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('point').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n }),\n defaultValue: joi.alternatives().try(joi.array().items(joi.number()).max(2).min(2), joi.func()),\n})\n\nexport const relationship = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('relationship').required(),\n admin: baseAdminFields.keys({\n allowCreate: joi.boolean().default(true),\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n isSortable: joi.boolean().default(false),\n sortOptions: joi.alternatives().conditional(joi.ref('...relationTo'), {\n is: joi.string(),\n otherwise: joi.object().pattern(joi.string(), joi.string()),\n then: joi.string(),\n }),\n }),\n defaultValue: joi.alternatives().try(joi.func()),\n filterOptions: joi.alternatives().try(joi.object(), joi.func()),\n hasMany: joi.boolean().default(false),\n max: joi\n .number()\n .when('hasMany', { is: joi.not(true), then: joi.forbidden() })\n .warning('deprecated', { message: 'Use maxRows instead.' }),\n maxDepth: joi.number(),\n maxRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n min: joi\n .number()\n .when('hasMany', { is: joi.not(true), then: joi.forbidden() })\n .warning('deprecated', { message: 'Use minRows instead.' }),\n minRows: joi.number().when('hasMany', { is: joi.not(true), then: joi.forbidden() }),\n relationTo: joi.alternatives().try(joi.string().required(), joi.array().items(joi.string())),\n})\n\nexport const blocks = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('blocks').required(),\n admin: baseAdminFields\n .keys({\n isSortable: joi.boolean(),\n })\n .default({}),\n blocks: joi\n .array()\n .items(\n joi.object({\n slug: joi.string().required(),\n admin: joi.object().keys({\n custom: joi.object().pattern(joi.string(), joi.any()),\n }),\n custom: joi.object().pattern(joi.string(), joi.any()),\n dbName: joi.alternatives().try(joi.string(), joi.func()),\n fields: joi.array().items(joi.link('#field')),\n graphQL: joi.object().keys({\n singularName: joi.string(),\n }),\n imageAltText: joi.string(),\n imageURL: joi.string(),\n interfaceName: joi.string(),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n }),\n )\n .required(),\n defaultValue: joi.alternatives().try(joi.array().items(joi.object()), joi.func()),\n labels: joi.object({\n plural: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n singular: joi\n .alternatives()\n .try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n }),\n maxRows: joi.number(),\n minRows: joi.number(),\n})\n\nexport const richText = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('richText').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n }),\n }),\n defaultValue: joi.alternatives().try(joi.array().items(joi.object()), joi.func(), joi.object()),\n editor: joi\n .object()\n .keys({\n CellComponent: componentSchema.optional(),\n FieldComponent: componentSchema.optional(),\n afterReadPromise: joi.func().optional(),\n graphQLPopulationPromises: joi.func().optional(),\n outputSchema: joi.func().optional(),\n validate: joi.func().required(),\n })\n .unknown(),\n maxDepth: joi.number(),\n})\n\nexport const date = baseField.keys({\n name: joi.string().required(),\n type: joi.string().valid('date').required(),\n admin: baseAdminFields.keys({\n components: baseAdminComponentFields.keys({\n Error: componentSchema,\n Label: componentSchema,\n afterInput: joi.array().items(componentSchema),\n beforeInput: joi.array().items(componentSchema),\n }),\n date: joi.object({\n displayFormat: joi.string(),\n maxDate: joi.date(),\n maxTime: joi.date(),\n minDate: joi.date(),\n minTime: joi.date(),\n monthsToShow: joi.number(),\n overrides: joi.object().unknown(),\n pickerAppearance: joi.string(),\n timeFormat: joi.string(),\n timeIntervals: joi.number(),\n }),\n placeholder: joi.string(),\n }),\n defaultValue: joi.alternatives().try(joi.string(), joi.func()),\n})\n\nexport const ui = joi.object().keys({\n name: joi.string().required(),\n type: joi.string().valid('ui').required(),\n admin: joi\n .object()\n .keys({\n components: joi\n .object()\n .keys({\n Cell: componentSchema,\n Field: componentSchema,\n })\n .default({}),\n condition: joi.func(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n disableListColumn: joi.boolean().default(false),\n position: joi.string().valid('sidebar'),\n width: joi.string(),\n })\n .default(),\n custom: joi.object().pattern(joi.string(), joi.any()),\n label: joi.alternatives().try(joi.string(), joi.object().pattern(joi.string(), [joi.string()])),\n})\n\nconst fieldSchema = joi\n .alternatives()\n .try(\n text,\n number,\n textarea,\n email,\n code,\n json,\n select,\n group,\n array,\n row,\n collapsible,\n tabs,\n radio,\n relationship,\n checkbox,\n upload,\n richText,\n blocks,\n date,\n point,\n ui,\n )\n .id('field')\n\nexport default fieldSchema\n"],"names":["joi","componentSchema","baseAdminComponentFields","object","keys","Cell","Description","Field","Filter","default","baseAdminFields","className","string","components","condition","func","custom","pattern","any","description","alternatives","try","function","disableBulkEdit","boolean","disableListColumn","disableListFilter","disabled","hidden","initCollapsed","position","valid","readOnly","style","unknown","width","baseField","access","create","read","update","admin","hooks","afterChange","array","items","afterRead","beforeChange","beforeDuplicate","beforeValidate","index","label","localized","required","saveToJWT","typescriptSchema","unique","validate","idField","name","type","invalid","not","text","autoComplete","Error","Label","afterInput","beforeInput","placeholder","rtl","defaultValue","allow","hasMany","maxLength","number","maxRows","when","is","then","forbidden","minLength","minRows","otherwise","step","max","min","textarea","rows","email","code","editorOptions","language","json","jsonSchema","select","isClearable","isSortable","dbName","enumName","options","value","radio","layout","row","fields","link","collapsible","RowLabel","optional","conditional","exist","tab","interfaceName","tabs","group","hideGutter","labels","plural","singular","upload","filterOptions","maxDepth","relationTo","checkbox","point","relationship","allowCreate","sortOptions","ref","warning","message","blocks","slug","graphQL","singularName","imageAltText","imageURL","richText","editor","CellComponent","FieldComponent","afterReadPromise","graphQLPopulationPromises","outputSchema","date","displayFormat","maxDate","maxTime","minDate","minTime","monthsToShow","overrides","pickerAppearance","timeFormat","timeIntervals","ui","fieldSchema","id"],"mappings":"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"}
@@ -1,19 +1,23 @@
1
1
  import type { EditorProps } from '@monaco-editor/react';
2
2
  import type { CSSProperties } from 'react';
3
+ import type { JSONSchema4 } from 'json-schema';
3
4
  import type React from 'react';
4
- import type { ConditionalDateProps, Description, ErrorProps, LabelProps, RichTextAdapter, RowLabel } from '../../admin/types.js';
5
+ import type { RichTextAdapter, RichTextAdapterProvider } from '../../admin/RichText.js';
6
+ import type { ConditionalDateProps, Description, DescriptionComponent, ErrorProps, LabelProps, RowLabelComponent } from '../../admin/types.js';
5
7
  import type { SanitizedCollectionConfig, TypeWithID } from '../../collections/config/types.js';
6
8
  import type { CustomComponent, LabelFunction } from '../../config/types.js';
7
9
  import type { DBIdentifierName } from '../../database/types.js';
8
10
  import type { SanitizedGlobalConfig } from '../../globals/config/types.js';
11
+ import type { CollectionSlug } from '../../index.js';
12
+ import type { DocumentPreferences } from '../../preferences/types.js';
9
13
  import type { Operation, PayloadRequest, RequestContext, Where } from '../../types/index.js';
10
14
  import type { ClientFieldConfig } from './client.js';
11
- export type FieldHookArgs<T extends TypeWithID = any, P = any, S = any> = {
15
+ export type FieldHookArgs<TData extends TypeWithID = any, TValue = any, TSiblingData = any> = {
12
16
  /** The collection which the field belongs to. If the field belongs to a global, this will be null. */
13
17
  collection: SanitizedCollectionConfig | null;
14
18
  context: RequestContext;
15
19
  /** The data passed to update the document within create and update operations, and the full document itself in the afterRead hook. */
16
- data?: Partial<T>;
20
+ data?: Partial<TData>;
17
21
  /** The field which the hook is running against. */
18
22
  field: FieldAffectingData;
19
23
  /** Boolean to denote if this hook is running against finding one, or finding many within the afterRead hook. */
@@ -23,49 +27,62 @@ export type FieldHookArgs<T extends TypeWithID = any, P = any, S = any> = {
23
27
  /** A string relating to which operation the field type is currently executing within. Useful within beforeValidate, beforeChange, and afterChange hooks to differentiate between create and update operations. */
24
28
  operation?: 'create' | 'delete' | 'read' | 'update';
25
29
  /** The full original document in `update` operations. In the `afterChange` hook, this is the resulting document of the operation. */
26
- originalDoc?: T;
30
+ originalDoc?: TData;
31
+ overrideAccess?: boolean;
32
+ /**
33
+ * The path of the field, e.g. ["group", "myArray", 1, "textField"]. The path is the schemaPath but with indexes and would be used in the context of field data, not field schemas.
34
+ */
35
+ path: (number | string)[];
27
36
  /** The document before changes were applied, only in `afterChange` hooks. */
28
- previousDoc?: T;
29
- /** The sibling data of the document before changes being applied, only in `beforeChange` and `afterChange` hook. */
30
- previousSiblingDoc?: T;
31
- /** The previous value of the field, before changes, only in `beforeChange` and `afterChange` hooks. */
32
- previousValue?: P;
37
+ previousDoc?: TData;
38
+ /** The sibling data of the document before changes being applied, only in `beforeChange`, `beforeValidate`, `beforeDuplicate` and `afterChange` field hooks. */
39
+ previousSiblingDoc?: TData;
40
+ /** The previous value of the field, before changes, only in `beforeChange`, `afterChange`, `beforeDuplicate` and `beforeValidate` field hooks. */
41
+ previousValue?: TValue;
33
42
  /** The Express request object. It is mocked for Local API operations. */
34
43
  req: PayloadRequest;
44
+ /**
45
+ * The schemaPath of the field, e.g. ["group", "myArray", "textField"]. The schemaPath is the path but without indexes and would be used in the context of field schemas, not field data.
46
+ */
47
+ schemaPath: string[];
35
48
  /** The sibling data passed to a field that the hook is running against. */
36
- siblingData: Partial<S>;
49
+ siblingData: Partial<TSiblingData>;
50
+ /**
51
+ * The original siblingData with locales (not modified by any hooks). Only available in `beforeChange` and `beforeDuplicate` field hooks.
52
+ */
53
+ siblingDocWithLocales?: Record<string, unknown>;
37
54
  /** The value of the field. */
38
- value?: P;
55
+ value?: TValue;
39
56
  };
40
- export type FieldHook<T extends TypeWithID = any, P = any, S = any> = (args: FieldHookArgs<T, P, S>) => P | Promise<P>;
41
- export type FieldAccess<T extends TypeWithID = any, P = any, U = any> = (args: {
57
+ export type FieldHook<TData extends TypeWithID = any, TValue = any, TSiblingData = any> = (args: FieldHookArgs<TData, TValue, TSiblingData>) => Promise<TValue> | TValue;
58
+ export type FieldAccess<TData extends TypeWithID = any, TSiblingData = any> = (args: {
42
59
  /**
43
60
  * The incoming data used to `create` or `update` the document with. `data` is undefined during the `read` operation.
44
61
  */
45
- data?: Partial<T>;
62
+ data?: Partial<TData>;
46
63
  /**
47
64
  * The original data of the document before the `update` is applied. `doc` is undefined during the `create` operation.
48
65
  */
49
- doc?: T;
66
+ doc?: TData;
50
67
  /**
51
68
  * The `id` of the current document being read or updated. `id` is undefined during the `create` operation.
52
69
  */
53
70
  id?: number | string;
54
71
  /** The `payload` object to interface with the payload API */
55
- req: PayloadRequest<U>;
72
+ req: PayloadRequest;
56
73
  /**
57
74
  * Immediately adjacent data to this field. For example, if this is a `group` field, then `siblingData` will be the other fields within the group.
58
75
  */
59
- siblingData?: Partial<P>;
76
+ siblingData?: Partial<TSiblingData>;
60
77
  }) => Promise<boolean> | boolean;
61
- export type Condition<T extends TypeWithID = any, P = any> = (data: Partial<T>, siblingData: Partial<P>, { user }: {
78
+ export type Condition<TData extends TypeWithID = any, TSiblingData = any> = (data: Partial<TData>, siblingData: Partial<TSiblingData>, { user }: {
62
79
  user: PayloadRequest['user'];
63
80
  }) => boolean;
64
- export type FilterOptionsProps<T = any> = {
81
+ export type FilterOptionsProps<TData = any> = {
65
82
  /**
66
83
  * An object containing the full collection or global document currently being edited.
67
84
  */
68
- data: T;
85
+ data: TData;
69
86
  /**
70
87
  * The `id` of the current document being edited. `id` is undefined during the `create` operation.
71
88
  */
@@ -73,7 +90,7 @@ export type FilterOptionsProps<T = any> = {
73
90
  /**
74
91
  * The collection `slug` to filter against, limited to this field's `relationTo` property.
75
92
  */
76
- relationTo: string;
93
+ relationTo: CollectionSlug;
77
94
  /**
78
95
  * An object containing document data that is scoped to only fields within the same parent of this field.
79
96
  */
@@ -83,12 +100,16 @@ export type FilterOptionsProps<T = any> = {
83
100
  */
84
101
  user: Partial<PayloadRequest['user']>;
85
102
  };
86
- export type FilterOptions<T = any> = ((options: FilterOptionsProps<T>) => Promise<Where | boolean> | Where | boolean) | Where | null;
103
+ export type FilterOptions<TData = any> = ((options: FilterOptionsProps<TData>) => Promise<Where | boolean> | Where | boolean) | Where | null;
87
104
  type Admin = {
88
105
  className?: string;
89
106
  components?: {
90
107
  Cell?: CustomComponent;
108
+ Description?: DescriptionComponent;
91
109
  Field?: CustomComponent;
110
+ /**
111
+ * The Filter component has to be a client component
112
+ */
92
113
  Filter?: React.ComponentType<any>;
93
114
  };
94
115
  /**
@@ -96,8 +117,20 @@ type Admin = {
96
117
  * This is also run on the server, to determine if the field should be validated.
97
118
  */
98
119
  condition?: Condition;
120
+ /** Extension point to add your custom data. Available in server and client. */
121
+ custom?: Record<string, any>;
99
122
  description?: Description;
100
123
  disableBulkEdit?: boolean;
124
+ /**
125
+ * Shows / hides fields from appearing in the list view column selector.
126
+ * @type boolean
127
+ */
128
+ disableListColumn?: boolean;
129
+ /**
130
+ * Shows / hides fields from appearing in the list view filter options.
131
+ * @type boolean
132
+ */
133
+ disableListFilter?: boolean;
101
134
  disabled?: boolean;
102
135
  hidden?: boolean;
103
136
  position?: 'sidebar';
@@ -113,6 +146,7 @@ export type BaseValidateOptions<TData, TSiblingData> = {
113
146
  data: Partial<TData>;
114
147
  id?: number | string;
115
148
  operation?: Operation;
149
+ preferences: DocumentPreferences;
116
150
  req: PayloadRequest;
117
151
  siblingData: Partial<TSiblingData>;
118
152
  };
@@ -131,7 +165,7 @@ export interface FieldBase {
131
165
  update?: FieldAccess;
132
166
  };
133
167
  admin?: Admin;
134
- /** Extension point to add your custom data. */
168
+ /** Extension point to add your custom data. Server only. */
135
169
  custom?: Record<string, any>;
136
170
  defaultValue?: any;
137
171
  hidden?: boolean;
@@ -151,6 +185,13 @@ export interface FieldBase {
151
185
  name: string;
152
186
  required?: boolean;
153
187
  saveToJWT?: boolean | string;
188
+ /**
189
+ * Allows you to modify the base JSON schema that is generated during generate:types for this field.
190
+ * This JSON schema will be used to generate the TypeScript interface of this field.
191
+ */
192
+ typescriptSchema?: Array<(args: {
193
+ jsonSchema: JSONSchema4;
194
+ }) => JSONSchema4>;
154
195
  unique?: boolean;
155
196
  validate?: Validate;
156
197
  }
@@ -278,10 +319,10 @@ export type GroupField = Omit<FieldBase, 'required' | 'validation'> & {
278
319
  };
279
320
  fields: Field[];
280
321
  /** Customize generated GraphQL and Typescript schema names.
281
- * By default it is bound to the collection.
322
+ * By default, it is bound to the collection.
282
323
  *
283
324
  * This is useful if you would like to generate a top level type to share amongst collections/fields.
284
- * **Note**: Top level types can collide, ensure they are unique among collections, arrays, groups, blocks, tabs.
325
+ * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.
285
326
  */
286
327
  interfaceName?: string;
287
328
  type: 'group';
@@ -293,13 +334,22 @@ export type RowField = Omit<FieldBase, 'admin' | 'label' | 'name'> & {
293
334
  type: 'row';
294
335
  };
295
336
  export type CollapsibleField = Omit<FieldBase, 'label' | 'name'> & {
337
+ fields: Field[];
338
+ type: 'collapsible';
339
+ } & ({
340
+ admin: Admin & {
341
+ components: {
342
+ RowLabel: RowLabelComponent;
343
+ } & Admin['components'];
344
+ initCollapsed?: boolean;
345
+ };
346
+ label?: Required<FieldBase['label']>;
347
+ } | {
296
348
  admin?: Admin & {
297
349
  initCollapsed?: boolean;
298
350
  };
299
- fields: Field[];
300
- label: RowLabel;
301
- type: 'collapsible';
302
- };
351
+ label: Required<FieldBase['label']>;
352
+ });
303
353
  export type TabsAdmin = Omit<Admin, 'description'>;
304
354
  type TabBase = Omit<FieldBase, 'required' | 'validation'> & {
305
355
  description?: Description;
@@ -312,7 +362,7 @@ export type NamedTab = TabBase & {
312
362
  * The slug is used by default.
313
363
  *
314
364
  * This is useful if you would like to generate a top level type to share amongst collections/fields.
315
- * **Note**: Top level types can collide, ensure they are unique among collections, arrays, groups, blocks, tabs.
365
+ * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.
316
366
  */
317
367
  interfaceName?: string;
318
368
  };
@@ -343,14 +393,24 @@ export type UIField = {
343
393
  components?: {
344
394
  Cell?: CustomComponent;
345
395
  Field: CustomComponent;
396
+ /**
397
+ * The Filter component has to be a client component
398
+ */
346
399
  Filter?: React.ComponentType<any>;
347
400
  };
348
401
  condition?: Condition;
402
+ /** Extension point to add your custom data. Available in server and client. */
403
+ custom?: Record<string, any>;
349
404
  disableBulkEdit?: boolean;
405
+ /**
406
+ * Shows / hides fields from appearing in the list view column selector.
407
+ * @type boolean
408
+ */
409
+ disableListColumn?: boolean;
350
410
  position?: string;
351
411
  width?: string;
352
412
  };
353
- /** Extension point to add your custom data. */
413
+ /** Extension point to add your custom data. Server only. */
354
414
  custom?: Record<string, any>;
355
415
  label?: Record<string, string> | string;
356
416
  name: string;
@@ -364,8 +424,13 @@ export type UploadField = FieldBase & {
364
424
  };
365
425
  };
366
426
  filterOptions?: FilterOptions;
427
+ /**
428
+ * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.
429
+ *
430
+ * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}
431
+ */
367
432
  maxDepth?: number;
368
- relationTo: string;
433
+ relationTo: CollectionSlug;
369
434
  type: 'upload';
370
435
  };
371
436
  type CodeAdmin = Admin & {
@@ -391,6 +456,11 @@ type JSONAdmin = Admin & {
391
456
  };
392
457
  export type JSONField = Omit<FieldBase, 'admin'> & {
393
458
  admin?: JSONAdmin;
459
+ jsonSchema?: {
460
+ fileMatch: string[];
461
+ schema: JSONSchema4;
462
+ uri: string;
463
+ };
394
464
  type: 'json';
395
465
  };
396
466
  export type SelectField = FieldBase & {
@@ -417,6 +487,11 @@ export type SelectField = FieldBase & {
417
487
  type SharedRelationshipProperties = FieldBase & {
418
488
  filterOptions?: FilterOptions;
419
489
  hasMany?: boolean;
490
+ /**
491
+ * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.
492
+ *
493
+ * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}
494
+ */
420
495
  maxDepth?: number;
421
496
  type: 'relationship';
422
497
  } & ({
@@ -455,20 +530,20 @@ type RelationshipAdmin = Admin & {
455
530
  export type PolymorphicRelationshipField = SharedRelationshipProperties & {
456
531
  admin?: RelationshipAdmin & {
457
532
  sortOptions?: {
458
- [collectionSlug: string]: string;
533
+ [collectionSlug: CollectionSlug]: string;
459
534
  };
460
535
  };
461
- relationTo: string[];
536
+ relationTo: CollectionSlug[];
462
537
  };
463
538
  export type SingleRelationshipField = SharedRelationshipProperties & {
464
539
  admin?: RelationshipAdmin & {
465
540
  sortOptions?: string;
466
541
  };
467
- relationTo: string;
542
+ relationTo: CollectionSlug;
468
543
  };
469
544
  export type RelationshipField = PolymorphicRelationshipField | SingleRelationshipField;
470
545
  export type ValueWithRelation = {
471
- relationTo: string;
546
+ relationTo: CollectionSlug;
472
547
  value: number | string;
473
548
  };
474
549
  export declare function valueIsValueWithRelation(value: unknown): value is ValueWithRelation;
@@ -480,18 +555,25 @@ export type RichTextField<Value extends object = any, AdapterProps = any, ExtraP
480
555
  Label?: CustomComponent<LabelProps>;
481
556
  };
482
557
  };
483
- editor?: RichTextAdapter<Value, AdapterProps, AdapterProps>;
558
+ editor?: RichTextAdapter<Value, AdapterProps, AdapterProps> | RichTextAdapterProvider<Value, AdapterProps, AdapterProps>;
559
+ /**
560
+ * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.
561
+ *
562
+ * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}
563
+ */
564
+ maxDepth?: number;
484
565
  type: 'richText';
485
566
  } & ExtraProperties;
486
- export type RichTextFieldRequiredEditor<Value extends object = any, AdapterProps = any, ExtraProperties = object> = Omit<RichTextField<Value, AdapterProps, ExtraProperties>, 'editor'> & {
487
- editor: RichTextAdapter<Value, AdapterProps, ExtraProperties>;
488
- };
489
567
  export type ArrayField = FieldBase & {
490
568
  admin?: Admin & {
491
569
  components?: {
492
- RowLabel?: RowLabel;
570
+ RowLabel?: RowLabelComponent;
493
571
  } & Admin['components'];
494
572
  initCollapsed?: boolean;
573
+ /**
574
+ * Disable drag and drop sorting
575
+ */
576
+ isSortable?: boolean;
495
577
  };
496
578
  /**
497
579
  * Customize the SQL table name
@@ -499,10 +581,10 @@ export type ArrayField = FieldBase & {
499
581
  dbName?: DBIdentifierName;
500
582
  fields: Field[];
501
583
  /** Customize generated GraphQL and Typescript schema names.
502
- * By default it is bound to the collection.
584
+ * By default, it is bound to the collection.
503
585
  *
504
586
  * This is useful if you would like to generate a top level type to share amongst collections/fields.
505
- * **Note**: Top level types can collide, ensure they are unique among collections, arrays, groups, blocks, tabs.
587
+ * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.
506
588
  */
507
589
  interfaceName?: string;
508
590
  labels?: Labels;
@@ -530,7 +612,11 @@ export type RadioField = FieldBase & {
530
612
  type: 'radio';
531
613
  };
532
614
  export type Block = {
533
- /** Extension point to add your custom data. */
615
+ admin?: {
616
+ /** Extension point to add your custom data. Available in server and client. */
617
+ custom?: Record<string, any>;
618
+ };
619
+ /** Extension point to add your custom data. Server only. */
534
620
  custom?: Record<string, any>;
535
621
  /**
536
622
  * Customize the SQL table name
@@ -547,7 +633,7 @@ export type Block = {
547
633
  * The slug is used by default.
548
634
  *
549
635
  * This is useful if you would like to generate a top level type to share amongst collections/fields.
550
- * **Note**: Top level types can collide, ensure they are unique among collections, arrays, groups, blocks, tabs.
636
+ * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.
551
637
  */
552
638
  interfaceName?: string;
553
639
  labels?: Labels;
@@ -556,6 +642,10 @@ export type Block = {
556
642
  export type BlockField = FieldBase & {
557
643
  admin?: Admin & {
558
644
  initCollapsed?: boolean;
645
+ /**
646
+ * Disable drag and drop sorting
647
+ */
648
+ isSortable?: boolean;
559
649
  };
560
650
  blocks: Block[];
561
651
  defaultValue?: unknown;
@@ -568,7 +658,6 @@ export type PointField = FieldBase & {
568
658
  type: 'point';
569
659
  };
570
660
  export type Field = ArrayField | BlockField | CheckboxField | CodeField | CollapsibleField | DateField | EmailField | GroupField | JSONField | NumberField | PointField | RadioField | RelationshipField | RichTextField | RowField | SelectField | TabsField | TextField | TextareaField | UIField | UploadField;
571
- export type FieldWithRichTextRequiredEditor = Exclude<Field, RichTextField> | RichTextFieldRequiredEditor;
572
661
  export type FieldAffectingData = ArrayField | BlockField | CheckboxField | CodeField | DateField | EmailField | GroupField | JSONField | NumberField | PointField | RadioField | RelationshipField | RichTextField | SelectField | TabAsField | TextField | TextareaField | UploadField;
573
662
  export type NonPresentationalField = ArrayField | BlockField | CheckboxField | CodeField | CollapsibleField | DateField | EmailField | GroupField | JSONField | NumberField | PointField | RadioField | RelationshipField | RichTextField | RowField | SelectField | TabsField | TextField | TextareaField | UploadField;
574
663
  export type FieldWithPath = Field & {