payload 3.0.0-beta.73 → 3.0.0-beta.74

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 (116) hide show
  1. package/dist/admin/RichText.d.ts +2 -1
  2. package/dist/admin/RichText.d.ts.map +1 -1
  3. package/dist/admin/RichText.js.map +1 -1
  4. package/dist/admin/fields/Array.d.ts +3 -1
  5. package/dist/admin/fields/Array.d.ts.map +1 -1
  6. package/dist/admin/fields/Array.js.map +1 -1
  7. package/dist/admin/fields/Blocks.d.ts +3 -1
  8. package/dist/admin/fields/Blocks.d.ts.map +1 -1
  9. package/dist/admin/fields/Blocks.js.map +1 -1
  10. package/dist/admin/fields/Checkbox.d.ts +3 -1
  11. package/dist/admin/fields/Checkbox.d.ts.map +1 -1
  12. package/dist/admin/fields/Checkbox.js.map +1 -1
  13. package/dist/admin/fields/Code.d.ts +3 -1
  14. package/dist/admin/fields/Code.d.ts.map +1 -1
  15. package/dist/admin/fields/Code.js.map +1 -1
  16. package/dist/admin/fields/Date.d.ts +3 -1
  17. package/dist/admin/fields/Date.d.ts.map +1 -1
  18. package/dist/admin/fields/Date.js.map +1 -1
  19. package/dist/admin/fields/Email.d.ts +3 -1
  20. package/dist/admin/fields/Email.d.ts.map +1 -1
  21. package/dist/admin/fields/Email.js.map +1 -1
  22. package/dist/admin/fields/JSON.d.ts +3 -1
  23. package/dist/admin/fields/JSON.d.ts.map +1 -1
  24. package/dist/admin/fields/JSON.js.map +1 -1
  25. package/dist/admin/fields/Number.d.ts +3 -1
  26. package/dist/admin/fields/Number.d.ts.map +1 -1
  27. package/dist/admin/fields/Number.js.map +1 -1
  28. package/dist/admin/fields/Point.d.ts +3 -1
  29. package/dist/admin/fields/Point.d.ts.map +1 -1
  30. package/dist/admin/fields/Point.js.map +1 -1
  31. package/dist/admin/fields/Radio.d.ts +3 -1
  32. package/dist/admin/fields/Radio.d.ts.map +1 -1
  33. package/dist/admin/fields/Radio.js.map +1 -1
  34. package/dist/admin/fields/Relationship.d.ts +3 -1
  35. package/dist/admin/fields/Relationship.d.ts.map +1 -1
  36. package/dist/admin/fields/Relationship.js.map +1 -1
  37. package/dist/admin/fields/RichText.d.ts +3 -1
  38. package/dist/admin/fields/RichText.d.ts.map +1 -1
  39. package/dist/admin/fields/RichText.js.map +1 -1
  40. package/dist/admin/fields/Select.d.ts +3 -1
  41. package/dist/admin/fields/Select.d.ts.map +1 -1
  42. package/dist/admin/fields/Select.js.map +1 -1
  43. package/dist/admin/fields/Text.d.ts +3 -1
  44. package/dist/admin/fields/Text.d.ts.map +1 -1
  45. package/dist/admin/fields/Text.js.map +1 -1
  46. package/dist/admin/fields/Textarea.d.ts +3 -1
  47. package/dist/admin/fields/Textarea.d.ts.map +1 -1
  48. package/dist/admin/fields/Textarea.js.map +1 -1
  49. package/dist/admin/fields/Upload.d.ts +3 -2
  50. package/dist/admin/fields/Upload.d.ts.map +1 -1
  51. package/dist/admin/fields/Upload.js.map +1 -1
  52. package/dist/admin/forms/Form.d.ts +2 -2
  53. package/dist/admin/forms/Form.d.ts.map +1 -1
  54. package/dist/admin/forms/Form.js.map +1 -1
  55. package/dist/auth/baseFields/email.d.ts +2 -4
  56. package/dist/auth/baseFields/email.d.ts.map +1 -1
  57. package/dist/auth/baseFields/email.js +21 -21
  58. package/dist/auth/baseFields/email.js.map +1 -1
  59. package/dist/auth/baseFields/username.d.ts +2 -2
  60. package/dist/auth/baseFields/username.d.ts.map +1 -1
  61. package/dist/auth/baseFields/username.js +1 -1
  62. package/dist/auth/baseFields/username.js.map +1 -1
  63. package/dist/auth/ensureUsernameOrEmail.d.ts +17 -0
  64. package/dist/auth/ensureUsernameOrEmail.d.ts.map +1 -0
  65. package/dist/auth/ensureUsernameOrEmail.js +43 -0
  66. package/dist/auth/ensureUsernameOrEmail.js.map +1 -0
  67. package/dist/auth/getAuthFields.d.ts.map +1 -1
  68. package/dist/auth/getAuthFields.js +18 -10
  69. package/dist/auth/getAuthFields.js.map +1 -1
  70. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  71. package/dist/auth/operations/registerFirstUser.js +8 -0
  72. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  73. package/dist/auth/types.d.ts +6 -1
  74. package/dist/auth/types.d.ts.map +1 -1
  75. package/dist/auth/types.js.map +1 -1
  76. package/dist/collections/config/defaults.d.ts.map +1 -1
  77. package/dist/collections/config/defaults.js +2 -1
  78. package/dist/collections/config/defaults.js.map +1 -1
  79. package/dist/collections/config/sanitize.d.ts.map +1 -1
  80. package/dist/collections/config/sanitize.js +17 -4
  81. package/dist/collections/config/sanitize.js.map +1 -1
  82. package/dist/collections/operations/create.d.ts.map +1 -1
  83. package/dist/collections/operations/create.js +8 -0
  84. package/dist/collections/operations/create.js.map +1 -1
  85. package/dist/collections/operations/update.d.ts.map +1 -1
  86. package/dist/collections/operations/update.js +11 -0
  87. package/dist/collections/operations/update.js.map +1 -1
  88. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  89. package/dist/collections/operations/updateByID.js +11 -0
  90. package/dist/collections/operations/updateByID.js.map +1 -1
  91. package/dist/errors/ValidationError.d.ts +6 -8
  92. package/dist/errors/ValidationError.d.ts.map +1 -1
  93. package/dist/errors/ValidationError.js.map +1 -1
  94. package/dist/errors/index.d.ts +1 -0
  95. package/dist/errors/index.d.ts.map +1 -1
  96. package/dist/errors/index.js.map +1 -1
  97. package/dist/fields/config/client.d.ts +15 -15
  98. package/dist/fields/config/client.d.ts.map +1 -1
  99. package/dist/fields/config/types.d.ts +2 -1
  100. package/dist/fields/config/types.d.ts.map +1 -1
  101. package/dist/fields/config/types.js.map +1 -1
  102. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  103. package/dist/fields/hooks/beforeChange/promise.js +1 -0
  104. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  105. package/dist/fields/validations.d.ts +65 -74
  106. package/dist/fields/validations.d.ts.map +1 -1
  107. package/dist/fields/validations.js +20 -4
  108. package/dist/fields/validations.js.map +1 -1
  109. package/dist/index.d.ts +3 -2
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +1 -1
  112. package/dist/index.js.map +1 -1
  113. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  114. package/dist/utilities/configToJSONSchema.js +88 -57
  115. package/dist/utilities/configToJSONSchema.js.map +1 -1
  116. package/package.json +2 -2
@@ -20,4 +20,5 @@ export { NotFound } from './NotFound.js';
20
20
  export { QueryError } from './QueryError.js';
21
21
  export { ReservedFieldName } from './ReservedFieldName.js';
22
22
  export { ValidationError, ValidationErrorName } from './ValidationError.js';
23
+ export type { ValidationFieldError } from './ValidationError.js';
23
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC3E,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/errors/index.ts"],"sourcesContent":["export { APIError, APIErrorName } from './APIError.js'\nexport { AuthenticationError } from './AuthenticationError.js'\nexport { DuplicateCollection } from './DuplicateCollection.js'\nexport { DuplicateFieldName } from './DuplicateFieldName.js'\nexport { DuplicateGlobal } from './DuplicateGlobal.js'\nexport { ErrorDeletingFile } from './ErrorDeletingFile.js'\nexport { FileRetrievalError } from './FileRetrievalError.js'\nexport { FileUploadError } from './FileUploadError.js'\nexport { Forbidden } from './Forbidden.js'\nexport { InvalidConfiguration } from './InvalidConfiguration.js'\nexport { InvalidFieldName } from './InvalidFieldName.js'\nexport { InvalidFieldRelationship } from './InvalidFieldRelationship.js'\nexport { LockedAuth } from './LockedAuth.js'\nexport { MissingCollectionLabel } from './MissingCollectionLabel.js'\nexport { MissingEditorProp } from './MissingEditorProp.js'\nexport { MissingFieldInputOptions } from './MissingFieldInputOptions.js'\nexport { MissingFieldType } from './MissingFieldType.js'\nexport { MissingFile } from './MissingFile.js'\nexport { NotFound } from './NotFound.js'\nexport { QueryError } from './QueryError.js'\nexport { ReservedFieldName } from './ReservedFieldName.js'\nexport { ValidationError, ValidationErrorName } from './ValidationError.js'\n"],"names":["APIError","APIErrorName","AuthenticationError","DuplicateCollection","DuplicateFieldName","DuplicateGlobal","ErrorDeletingFile","FileRetrievalError","FileUploadError","Forbidden","InvalidConfiguration","InvalidFieldName","InvalidFieldRelationship","LockedAuth","MissingCollectionLabel","MissingEditorProp","MissingFieldInputOptions","MissingFieldType","MissingFile","NotFound","QueryError","ReservedFieldName","ValidationError","ValidationErrorName"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,YAAY,QAAQ,gBAAe;AACtD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,SAAS,QAAQ,iBAAgB;AAC1C,SAASC,oBAAoB,QAAQ,4BAA2B;AAChE,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,wBAAwB,QAAQ,gCAA+B;AACxE,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,sBAAsB,QAAQ,8BAA6B;AACpE,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,wBAAwB,QAAQ,gCAA+B;AACxE,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,QAAQ,QAAQ,gBAAe;AACxC,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,eAAe,EAAEC,mBAAmB,QAAQ,uBAAsB"}
1
+ {"version":3,"sources":["../../src/errors/index.ts"],"sourcesContent":["export { APIError, APIErrorName } from './APIError.js'\nexport { AuthenticationError } from './AuthenticationError.js'\nexport { DuplicateCollection } from './DuplicateCollection.js'\nexport { DuplicateFieldName } from './DuplicateFieldName.js'\nexport { DuplicateGlobal } from './DuplicateGlobal.js'\nexport { ErrorDeletingFile } from './ErrorDeletingFile.js'\nexport { FileRetrievalError } from './FileRetrievalError.js'\nexport { FileUploadError } from './FileUploadError.js'\nexport { Forbidden } from './Forbidden.js'\nexport { InvalidConfiguration } from './InvalidConfiguration.js'\nexport { InvalidFieldName } from './InvalidFieldName.js'\nexport { InvalidFieldRelationship } from './InvalidFieldRelationship.js'\nexport { LockedAuth } from './LockedAuth.js'\nexport { MissingCollectionLabel } from './MissingCollectionLabel.js'\nexport { MissingEditorProp } from './MissingEditorProp.js'\nexport { MissingFieldInputOptions } from './MissingFieldInputOptions.js'\nexport { MissingFieldType } from './MissingFieldType.js'\nexport { MissingFile } from './MissingFile.js'\nexport { NotFound } from './NotFound.js'\nexport { QueryError } from './QueryError.js'\nexport { ReservedFieldName } from './ReservedFieldName.js'\nexport { ValidationError, ValidationErrorName } from './ValidationError.js'\nexport type { ValidationFieldError } from './ValidationError.js'\n"],"names":["APIError","APIErrorName","AuthenticationError","DuplicateCollection","DuplicateFieldName","DuplicateGlobal","ErrorDeletingFile","FileRetrievalError","FileUploadError","Forbidden","InvalidConfiguration","InvalidFieldName","InvalidFieldRelationship","LockedAuth","MissingCollectionLabel","MissingEditorProp","MissingFieldInputOptions","MissingFieldType","MissingFile","NotFound","QueryError","ReservedFieldName","ValidationError","ValidationErrorName"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,YAAY,QAAQ,gBAAe;AACtD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,kBAAkB,QAAQ,0BAAyB;AAC5D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,SAAS,QAAQ,iBAAgB;AAC1C,SAASC,oBAAoB,QAAQ,4BAA2B;AAChE,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,wBAAwB,QAAQ,gCAA+B;AACxE,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,sBAAsB,QAAQ,8BAA6B;AACpE,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,wBAAwB,QAAQ,gCAA+B;AACxE,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,SAASC,QAAQ,QAAQ,gBAAe;AACxC,SAASC,UAAU,QAAQ,kBAAiB;AAC5C,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,eAAe,EAAEC,mBAAmB,QAAQ,uBAAsB"}
@@ -232,11 +232,11 @@ export declare const createClientFieldConfig: ({ field: incomingField, t, }: {
232
232
  beforeValidate?: import("../../fields/config/types.js").FieldHook[];
233
233
  };
234
234
  hidden?: boolean;
235
- defaultValue?: any;
236
- index?: boolean;
237
235
  label?: import("../../index.js").LabelFunction | import("../../index.js").LabelStatic | false;
238
236
  localized?: boolean;
239
237
  required?: boolean;
238
+ defaultValue?: any;
239
+ index?: boolean;
240
240
  saveToJWT?: boolean | string;
241
241
  typescriptSchema?: Array<(args: {
242
242
  jsonSchema: import("json-schema").JSONSchema4;
@@ -291,10 +291,10 @@ export declare const createClientFieldConfig: ({ field: incomingField, t, }: {
291
291
  beforeValidate?: import("../../fields/config/types.js").FieldHook[];
292
292
  };
293
293
  hidden?: boolean;
294
- defaultValue?: any;
295
- index?: boolean;
296
294
  localized?: boolean;
297
295
  required?: boolean;
296
+ defaultValue?: any;
297
+ index?: boolean;
298
298
  saveToJWT?: boolean | string;
299
299
  typescriptSchema?: Array<(args: {
300
300
  jsonSchema: import("json-schema").JSONSchema4;
@@ -341,10 +341,10 @@ export declare const createClientFieldConfig: ({ field: incomingField, t, }: {
341
341
  beforeValidate?: import("../../fields/config/types.js").FieldHook[];
342
342
  };
343
343
  hidden?: boolean;
344
- defaultValue?: any;
345
- index?: boolean;
346
344
  localized?: boolean;
347
345
  required?: boolean;
346
+ defaultValue?: any;
347
+ index?: boolean;
348
348
  saveToJWT?: boolean | string;
349
349
  typescriptSchema?: Array<(args: {
350
350
  jsonSchema: import("json-schema").JSONSchema4;
@@ -509,10 +509,10 @@ export declare const createClientFieldConfig: ({ field: incomingField, t, }: {
509
509
  beforeValidate?: import("../../fields/config/types.js").FieldHook[];
510
510
  };
511
511
  hidden?: boolean;
512
- defaultValue?: any;
513
- index?: boolean;
514
512
  label?: import("../../index.js").LabelFunction | import("../../index.js").LabelStatic | false;
515
513
  localized?: boolean;
514
+ defaultValue?: any;
515
+ index?: boolean;
516
516
  saveToJWT?: boolean | string;
517
517
  typescriptSchema?: Array<(args: {
518
518
  jsonSchema: import("json-schema").JSONSchema4;
@@ -568,11 +568,11 @@ export declare const createClientFieldConfig: ({ field: incomingField, t, }: {
568
568
  beforeValidate?: import("../../fields/config/types.js").FieldHook[];
569
569
  };
570
570
  hidden?: boolean;
571
- defaultValue?: any;
572
- index?: boolean;
573
571
  label?: import("../../index.js").LabelFunction | import("../../index.js").LabelStatic | false;
574
572
  localized?: boolean;
575
573
  required?: boolean;
574
+ defaultValue?: any;
575
+ index?: boolean;
576
576
  saveToJWT?: boolean | string;
577
577
  typescriptSchema?: Array<(args: {
578
578
  jsonSchema: import("json-schema").JSONSchema4;
@@ -1275,10 +1275,10 @@ export declare const createClientFieldConfig: ({ field: incomingField, t, }: {
1275
1275
  beforeValidate?: import("../../fields/config/types.js").FieldHook[];
1276
1276
  };
1277
1277
  hidden?: boolean;
1278
- defaultValue?: any;
1279
- index?: boolean;
1280
1278
  localized?: boolean;
1281
1279
  required?: boolean;
1280
+ defaultValue?: any;
1281
+ index?: boolean;
1282
1282
  saveToJWT?: boolean | string;
1283
1283
  typescriptSchema?: Array<(args: {
1284
1284
  jsonSchema: import("json-schema").JSONSchema4;
@@ -1362,15 +1362,15 @@ export declare const createClientFieldConfig: ({ field: incomingField, t, }: {
1362
1362
  beforeValidate?: import("../../fields/config/types.js").FieldHook[];
1363
1363
  };
1364
1364
  hidden?: boolean;
1365
- defaultValue?: any;
1366
- index?: boolean;
1365
+ validate?: import("../../fields/config/types.js").Validate;
1367
1366
  label?: import("../../index.js").LabelFunction | import("../../index.js").LabelStatic | false;
1368
1367
  required?: boolean;
1368
+ defaultValue?: any;
1369
+ index?: boolean;
1369
1370
  typescriptSchema?: Array<(args: {
1370
1371
  jsonSchema: import("json-schema").JSONSchema4;
1371
1372
  }) => import("json-schema").JSONSchema4>;
1372
1373
  unique?: boolean;
1373
- validate?: import("../../fields/config/types.js").Validate;
1374
1374
  } | {
1375
1375
  admin?: {
1376
1376
  autoComplete?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/fields/config/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/fields/config/client.ts"],"names":[],"mappings":"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"}
@@ -145,17 +145,18 @@ export type Labels = {
145
145
  singular: LabelFunction | LabelStatic;
146
146
  };
147
147
  export type BaseValidateOptions<TData, TSiblingData, TValue> = {
148
+ collectionSlug?: string;
148
149
  data: Partial<TData>;
149
150
  id?: number | string;
150
151
  operation?: Operation;
151
152
  preferences: DocumentPreferences;
152
153
  previousValue?: TValue;
153
154
  req: PayloadRequest;
155
+ required?: boolean;
154
156
  siblingData: Partial<TSiblingData>;
155
157
  };
156
158
  export type ValidateOptions<TData, TSiblingData, TFieldConfig extends object, TValue> = BaseValidateOptions<TData, TSiblingData, TValue> & TFieldConfig;
157
159
  export type Validate<TValue = any, TData = any, TSiblingData = any, TFieldConfig extends object = object> = (value: TValue, options: ValidateOptions<TData, TSiblingData, TFieldConfig, TValue>) => Promise<string | true> | string | true;
158
- export type ClientValidate = Omit<Validate, 'req'>;
159
160
  export type OptionObject = {
160
161
  label: LabelFunction | LabelStatic;
161
162
  value: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/fields/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/fields/config/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/config/types.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport type { EditorProps } from '@monaco-editor/react'\nimport type { CSSProperties } from 'react'\n\n//eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport monacoeditor from 'monaco-editor' // IMPORTANT - DO NOT REMOVE: This is required for pnpm's default isolated mode to work - even though the import is not used. This is due to a typescript bug: https://github.com/microsoft/TypeScript/issues/47663#issuecomment-1519138189. (tsbugisolatedmode)\nimport type { JSONSchema4 } from 'json-schema'\nimport type React from 'react'\n\nimport type { RichTextAdapter, RichTextAdapterProvider } from '../../admin/RichText.js'\nimport type { ErrorComponent } from '../../admin/forms/Error.js'\nimport type {\n ConditionalDateProps,\n Description,\n DescriptionComponent,\n LabelComponent,\n RowLabelComponent,\n} from '../../admin/types.js'\nimport type { SanitizedCollectionConfig, TypeWithID } from '../../collections/config/types.js'\nimport type { CustomComponent, LabelFunction, LabelStatic } from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { DocumentPreferences } from '../../preferences/types.js'\nimport type { Operation, PayloadRequest, RequestContext, Where } from '../../types/index.js'\nimport type { ClientFieldConfig } from './client.js'\n\nexport type FieldHookArgs<TData extends TypeWithID = any, TValue = any, TSiblingData = any> = {\n /** The collection which the field belongs to. If the field belongs to a global, this will be null. */\n collection: SanitizedCollectionConfig | null\n context: RequestContext\n /** The data passed to update the document within create and update operations, and the full document itself in the afterRead hook. */\n data?: Partial<TData>\n /** The field which the hook is running against. */\n field: FieldAffectingData\n /** Boolean to denote if this hook is running against finding one, or finding many within the afterRead hook. */\n findMany?: boolean\n /** The global which the field belongs to. If the field belongs to a collection, this will be null. */\n global: SanitizedGlobalConfig | null\n /** 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. */\n operation?: 'create' | 'delete' | 'read' | 'update'\n /** The full original document in `update` operations. In the `afterChange` hook, this is the resulting document of the operation. */\n originalDoc?: TData\n overrideAccess?: boolean\n /**\n * 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.\n */\n path: (number | string)[]\n /** The document before changes were applied, only in `afterChange` hooks. */\n previousDoc?: TData\n /** The sibling data of the document before changes being applied, only in `beforeChange`, `beforeValidate`, `beforeDuplicate` and `afterChange` field hooks. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes, only in `beforeChange`, `afterChange`, `beforeDuplicate` and `beforeValidate` field hooks. */\n previousValue?: TValue\n /** The Express request object. It is mocked for Local API operations. */\n req: PayloadRequest\n /**\n * 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.\n */\n schemaPath: string[]\n /** The sibling data passed to a field that the hook is running against. */\n siblingData: Partial<TSiblingData>\n /**\n * The original siblingData with locales (not modified by any hooks). Only available in `beforeChange` and `beforeDuplicate` field hooks.\n */\n siblingDocWithLocales?: Record<string, unknown>\n /** The value of the field. */\n value?: TValue\n}\n\nexport type FieldHook<TData extends TypeWithID = any, TValue = any, TSiblingData = any> = (\n args: FieldHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type FieldAccess<TData extends TypeWithID = any, TSiblingData = any> = (args: {\n /**\n * The incoming data used to `create` or `update` the document with. `data` is undefined during the `read` operation.\n */\n data?: Partial<TData>\n /**\n * The original data of the document before the `update` is applied. `doc` is undefined during the `create` operation.\n */\n doc?: TData\n /**\n * The `id` of the current document being read or updated. `id` is undefined during the `create` operation.\n */\n id?: number | string\n /** The `payload` object to interface with the payload API */\n req: PayloadRequest\n /**\n * Immediately adjacent data to this field. For example, if this is a `group` field, then `siblingData` will be the other fields within the group.\n */\n siblingData?: Partial<TSiblingData>\n}) => Promise<boolean> | boolean\n\nexport type Condition<TData extends TypeWithID = any, TSiblingData = any> = (\n data: Partial<TData>,\n siblingData: Partial<TSiblingData>,\n { user }: { user: PayloadRequest['user'] },\n) => boolean\n\nexport type FilterOptionsProps<TData = any> = {\n /**\n * An object containing the full collection or global document currently being edited.\n */\n data: TData\n /**\n * The `id` of the current document being edited. `id` is undefined during the `create` operation.\n */\n id: number | string\n /**\n * The collection `slug` to filter against, limited to this field's `relationTo` property.\n */\n relationTo: CollectionSlug\n /**\n * An object containing document data that is scoped to only fields within the same parent of this field.\n */\n siblingData: unknown\n /**\n * An object containing the currently authenticated user.\n */\n user: Partial<PayloadRequest['user']>\n}\n\nexport type FilterOptionsFunc<TData = any> = (\n options: FilterOptionsProps<TData>,\n) => Promise<Where | boolean> | Where | boolean\n\nexport type FilterOptions<TData = any> =\n | ((options: FilterOptionsProps<TData>) => Promise<Where | boolean> | Where | boolean)\n | Where\n | null\n\ntype Admin = {\n className?: string\n components?: {\n Cell?: CustomComponent\n Description?: DescriptionComponent\n Field?: CustomComponent\n /**\n * The Filter component has to be a client component\n */\n Filter?: React.ComponentType<any>\n }\n /**\n * You can programmatically show / hide fields based on what other fields are doing.\n * This is also run on the server, to determine if the field should be validated.\n */\n condition?: Condition\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n description?: Description\n disableBulkEdit?: boolean\n /**\n * Shows / hides fields from appearing in the list view column selector.\n * @type boolean\n */\n disableListColumn?: boolean\n /**\n * Shows / hides fields from appearing in the list view filter options.\n * @type boolean\n */\n disableListFilter?: boolean\n disabled?: boolean\n hidden?: boolean\n position?: 'sidebar'\n readOnly?: boolean\n style?: CSSProperties\n width?: string\n}\n\nexport type Labels = {\n plural: LabelFunction | LabelStatic\n singular: LabelFunction | LabelStatic\n}\n\nexport type BaseValidateOptions<TData, TSiblingData, TValue> = {\n data: Partial<TData>\n id?: number | string\n operation?: Operation\n preferences: DocumentPreferences\n previousValue?: TValue\n req: PayloadRequest\n siblingData: Partial<TSiblingData>\n}\n\nexport type ValidateOptions<\n TData,\n TSiblingData,\n TFieldConfig extends object,\n TValue,\n> = BaseValidateOptions<TData, TSiblingData, TValue> & TFieldConfig\n\nexport type Validate<\n TValue = any,\n TData = any,\n TSiblingData = any,\n TFieldConfig extends object = object,\n> = (\n value: TValue,\n options: ValidateOptions<TData, TSiblingData, TFieldConfig, TValue>,\n) => Promise<string | true> | string | true\n\nexport type ClientValidate = Omit<Validate, 'req'>\n\nexport type OptionObject = {\n label: LabelFunction | LabelStatic\n value: string\n}\n\nexport type Option = OptionObject | string\n\nexport interface FieldBase {\n access?: {\n create?: FieldAccess\n read?: FieldAccess\n update?: FieldAccess\n }\n admin?: Admin\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n defaultValue?: any\n hidden?: boolean\n hooks?: {\n afterChange?: FieldHook[]\n afterRead?: FieldHook[]\n beforeChange?: FieldHook[]\n /**\n * Runs before a document is duplicated to prevent errors in unique fields or return null to use defaultValue.\n */\n beforeDuplicate?: FieldHook[]\n beforeValidate?: FieldHook[]\n }\n index?: boolean\n label?: LabelFunction | LabelStatic | false\n localized?: boolean\n /**\n * The name of the field. Must be alphanumeric and cannot contain ' . '\n *\n * Must not be one of reserved field names: ['__v', 'salt', 'hash', 'file']\n * @link https://payloadcms.com/docs/fields/overview#field-names\n */\n name: string\n required?: boolean\n saveToJWT?: boolean | string\n /**\n * Allows you to modify the base JSON schema that is generated during generate:types for this field.\n * This JSON schema will be used to generate the TypeScript interface of this field.\n */\n typescriptSchema?: Array<(args: { jsonSchema: JSONSchema4 }) => JSONSchema4>\n unique?: boolean\n validate?: Validate\n}\n\nexport type NumberField = {\n admin?: {\n /** Set this property to a string that will be used for browser autocomplete. */\n autoComplete?: string\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n /** Set this property to define a placeholder string for the field. */\n placeholder?: Record<string, string> | string\n /** Set a value for the number field to increment / decrement using browser controls. */\n step?: number\n } & Admin\n /** Maximum value accepted. Used in the default `validate` function. */\n max?: number\n /** Minimum value accepted. Used in the default `validate` function. */\n min?: number\n type: 'number'\n validate?: Validate<number | number[], unknown, unknown, NumberField>\n} & (\n | {\n /** Makes this field an ordered array of numbers instead of just a single number. */\n hasMany: true\n /** Maximum number of numbers in the numbers array, if `hasMany` is set to true. */\n maxRows?: number\n /** Minimum number of numbers in the numbers array, if `hasMany` is set to true. */\n minRows?: number\n }\n | {\n /** Makes this field an ordered array of numbers instead of just a single number. */\n hasMany?: false | undefined\n /** Maximum number of numbers in the numbers array, if `hasMany` is set to true. */\n maxRows?: undefined\n /** Minimum number of numbers in the numbers array, if `hasMany` is set to true. */\n minRows?: undefined\n }\n) &\n FieldBase\n\nexport type TextField = {\n admin?: {\n autoComplete?: string\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n placeholder?: Record<string, string> | string\n rtl?: boolean\n } & Admin\n maxLength?: number\n minLength?: number\n type: 'text'\n validate?: Validate<string | string[], unknown, unknown, TextField>\n} & (\n | {\n /** Makes this field an ordered array of strings instead of just a single string. */\n hasMany: true\n /** Maximum number of strings in the strings array, if `hasMany` is set to true. */\n maxRows?: number\n /** Minimum number of strings in the strings array, if `hasMany` is set to true. */\n minRows?: number\n }\n | {\n /** Makes this field an ordered array of strings instead of just a single string. */\n hasMany?: false | undefined\n /** Maximum number of strings in the strings array, if `hasMany` is set to true. */\n maxRows?: undefined\n /** Minimum number of strings in the strings array, if `hasMany` is set to true. */\n minRows?: undefined\n }\n) &\n FieldBase\n\nexport type EmailField = {\n admin?: {\n autoComplete?: string\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n placeholder?: Record<string, string> | string\n } & Admin\n type: 'email'\n validate?: Validate<string, unknown, unknown, EmailField>\n} & FieldBase\n\nexport type TextareaField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n placeholder?: Record<string, string> | string\n rows?: number\n rtl?: boolean\n } & Admin\n maxLength?: number\n minLength?: number\n type: 'textarea'\n validate?: Validate<string, unknown, unknown, TextareaField>\n} & FieldBase\n\nexport type CheckboxField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n } & Admin\n type: 'checkbox'\n validate?: Validate<unknown, unknown, unknown, CheckboxField>\n} & FieldBase\n\nexport type DateField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n date?: ConditionalDateProps\n placeholder?: Record<string, string> | string\n } & Admin\n type: 'date'\n validate?: Validate<unknown, unknown, unknown, DateField>\n} & FieldBase\n\nexport type GroupField = {\n admin?: {\n hideGutter?: boolean\n } & Admin\n fields: Field[]\n /** Customize generated GraphQL and Typescript schema names.\n * By default, it is bound to the collection.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n type: 'group'\n validate?: Validate<unknown, unknown, unknown, GroupField>\n} & Omit<FieldBase, 'required'>\n\nexport type RowAdmin = Omit<Admin, 'description'>\n\nexport type RowField = {\n admin?: RowAdmin\n fields: Field[]\n type: 'row'\n} & Omit<FieldBase, 'admin' | 'label' | 'name' | 'validate'>\n\nexport type CollapsibleField = {\n fields: Field[]\n type: 'collapsible'\n} & (\n | {\n admin: {\n components: {\n RowLabel: RowLabelComponent\n } & Admin['components']\n initCollapsed?: boolean\n } & Admin\n label?: Required<FieldBase['label']>\n }\n | {\n admin?: {\n initCollapsed?: boolean\n } & Admin\n label: Required<FieldBase['label']>\n }\n) &\n Omit<FieldBase, 'label' | 'name' | 'validate'>\n\nexport type TabsAdmin = Omit<Admin, 'description'>\n\ntype TabBase = {\n description?: Description\n fields: Field[]\n interfaceName?: string\n saveToJWT?: boolean | string\n} & Omit<FieldBase, 'required' | 'validate'>\n\nexport type NamedTab = {\n /** Customize generated GraphQL and Typescript schema names.\n * The slug is used by default.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n} & TabBase\n\nexport type UnnamedTab = {\n interfaceName?: never\n /**\n * Can be either:\n * - A string, which will be used as the tab's label.\n * - An object, where the key is the language code and the value is the label.\n */\n label:\n | {\n [selectedLanguage: string]: string\n }\n | LabelFunction\n | string\n localized?: never\n} & Omit<TabBase, 'name'>\n\nexport type Tab = NamedTab | UnnamedTab\n\nexport type TabsField = {\n admin?: TabsAdmin\n tabs: Tab[]\n type: 'tabs'\n} & Omit<FieldBase, 'admin' | 'localized' | 'name' | 'saveToJWT'>\n\nexport type TabAsField = {\n name?: string\n type: 'tab'\n} & Tab\n\nexport type UIField = {\n admin: {\n components?: {\n Cell?: CustomComponent\n Field: CustomComponent\n /**\n * The Filter component has to be a client component\n */\n Filter?: React.ComponentType<any>\n }\n condition?: Condition\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n disableBulkEdit?: boolean\n /**\n * Shows / hides fields from appearing in the list view column selector.\n * @type boolean\n */\n disableListColumn?: boolean\n position?: string\n width?: string\n }\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n label?: Record<string, string> | string\n name: string\n type: 'ui'\n}\n\nexport type UploadField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n }\n displayPreview?: boolean\n filterOptions?: FilterOptions\n /**\n * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n relationTo: CollectionSlug\n type: 'upload'\n validate?: Validate<unknown, unknown, unknown, UploadField>\n} & FieldBase\n\ntype CodeAdmin = {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n editorOptions?: EditorProps['options']\n language?: string\n} & Admin\n\nexport type CodeField = {\n admin?: CodeAdmin\n maxLength?: number\n minLength?: number\n type: 'code'\n validate?: Validate<string, unknown, unknown, CodeField>\n} & Omit<FieldBase, 'admin'>\n\ntype JSONAdmin = {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n editorOptions?: EditorProps['options']\n} & Admin\n\nexport type JSONField = {\n admin?: JSONAdmin\n jsonSchema?: {\n fileMatch: string[]\n schema: JSONSchema4\n uri: string\n }\n type: 'json'\n validate?: Validate<Record<string, unknown>, unknown, unknown, JSONField>\n} & Omit<FieldBase, 'admin'>\n\nexport type SelectField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n isClearable?: boolean\n isSortable?: boolean\n } & Admin\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n /**\n * Customize the DB enum name\n */\n enumName?: DBIdentifierName\n hasMany?: boolean\n options: Option[]\n type: 'select'\n validate?: Validate<string, unknown, unknown, SelectField>\n} & FieldBase\n\ntype SharedRelationshipProperties = {\n filterOptions?: FilterOptions\n hasMany?: boolean\n /**\n * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n type: 'relationship'\n validate?: Validate<unknown, unknown, unknown, SharedRelationshipProperties>\n} & (\n | {\n hasMany: true\n /**\n * @deprecated Use 'maxRows' instead\n */\n max?: number\n maxRows?: number\n /**\n * @deprecated Use 'minRows' instead\n */\n min?: number\n minRows?: number\n }\n | {\n hasMany?: false | undefined\n /**\n * @deprecated Use 'maxRows' instead\n */\n max?: undefined\n maxRows?: undefined\n /**\n * @deprecated Use 'minRows' instead\n */\n min?: undefined\n minRows?: undefined\n }\n) &\n FieldBase\n\ntype RelationshipAdmin = {\n allowCreate?: boolean\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n isSortable?: boolean\n} & Admin\n\nexport type PolymorphicRelationshipField = {\n admin?: {\n sortOptions?: { [collectionSlug: CollectionSlug]: string }\n } & RelationshipAdmin\n relationTo: CollectionSlug[]\n} & SharedRelationshipProperties\n\nexport type SingleRelationshipField = {\n admin?: {\n sortOptions?: string\n } & RelationshipAdmin\n relationTo: CollectionSlug\n} & SharedRelationshipProperties\nexport type RelationshipField = PolymorphicRelationshipField | SingleRelationshipField\n\nexport type ValueWithRelation = {\n relationTo: CollectionSlug\n value: number | string\n}\n\nexport function valueIsValueWithRelation(value: unknown): value is ValueWithRelation {\n return value !== null && typeof value === 'object' && 'relationTo' in value && 'value' in value\n}\n\nexport type RelationshipValue =\n | (number | string)[]\n | ValueWithRelation\n | ValueWithRelation[]\n | (number | string)\n\nexport type RichTextField<\n Value extends object = any,\n AdapterProps = any,\n ExtraProperties = object,\n> = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n } & Admin\n editor?:\n | RichTextAdapter<Value, AdapterProps, AdapterProps>\n | RichTextAdapterProvider<Value, AdapterProps, AdapterProps>\n /**\n * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n type: 'richText'\n} & ExtraProperties &\n FieldBase\n\nexport type ArrayField = {\n admin?: {\n components?: {\n RowLabel?: RowLabelComponent\n } & Admin['components']\n initCollapsed?: boolean\n /**\n * Disable drag and drop sorting\n */\n isSortable?: boolean\n } & Admin\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n fields: Field[]\n /** Customize generated GraphQL and Typescript schema names.\n * By default, it is bound to the collection.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n labels?: Labels\n maxRows?: number\n minRows?: number\n type: 'array'\n validate?: Validate<unknown[], unknown, unknown, ArrayField>\n} & FieldBase\n\nexport type RadioField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n layout?: 'horizontal' | 'vertical'\n } & Admin\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n /**\n * Customize the DB enum name\n */\n enumName?: DBIdentifierName\n options: Option[]\n type: 'radio'\n validate?: Validate<string, unknown, unknown, RadioField>\n} & FieldBase\n\nexport type Block = {\n admin?: {\n components?: {\n Label?: React.FC<{\n blockKind: 'block' | 'lexicalBlock' | 'lexicalInlineBlock' | string\n /**\n * May contain the formData\n */\n formData: Record<string, any>\n }>\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n }\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n fields: Field[]\n /** @deprecated - please migrate to the interfaceName property instead. */\n graphQL?: {\n singularName?: string\n }\n imageAltText?: string\n imageURL?: string\n /** Customize generated GraphQL and Typescript schema names.\n * The slug is used by default.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n labels?: Labels\n slug: string\n}\n\nexport type BlockField = {\n admin?: {\n initCollapsed?: boolean\n /**\n * Disable drag and drop sorting\n */\n isSortable?: boolean\n } & Admin\n blocks: Block[]\n defaultValue?: unknown\n labels?: Labels\n maxRows?: number\n minRows?: number\n type: 'blocks'\n validate?: Validate<string, unknown, unknown, BlockField>\n} & FieldBase\n\nexport type PointField = {\n type: 'point'\n validate?: Validate<unknown, unknown, unknown, PointField>\n} & FieldBase\n\nexport type Field =\n | ArrayField\n | BlockField\n | CheckboxField\n | CodeField\n | CollapsibleField\n | DateField\n | EmailField\n | GroupField\n | JSONField\n | NumberField\n | PointField\n | RadioField\n | RelationshipField\n | RichTextField\n | RowField\n | SelectField\n | TabsField\n | TextField\n | TextareaField\n | UIField\n | UploadField\n\nexport type FieldAffectingData =\n | ArrayField\n | BlockField\n | CheckboxField\n | CodeField\n | DateField\n | EmailField\n | GroupField\n | JSONField\n | NumberField\n | PointField\n | RadioField\n | RelationshipField\n | RichTextField\n | SelectField\n | TabAsField\n | TextField\n | TextareaField\n | UploadField\n\nexport type NonPresentationalField =\n | ArrayField\n | BlockField\n | CheckboxField\n | CodeField\n | CollapsibleField\n | DateField\n | EmailField\n | GroupField\n | JSONField\n | NumberField\n | PointField\n | RadioField\n | RelationshipField\n | RichTextField\n | RowField\n | SelectField\n | TabsField\n | TextField\n | TextareaField\n | UploadField\n\nexport type FieldWithPath = {\n path?: string\n} & Field\n\nexport type FieldWithSubFields = ArrayField | CollapsibleField | GroupField | RowField\n\nexport type FieldPresentationalOnly = UIField\n\nexport type FieldWithMany = RelationshipField | SelectField\n\nexport type FieldWithMaxDepth = RelationshipField | UploadField\n\nexport function fieldHasSubFields(field: ClientFieldConfig | Field): field is FieldWithSubFields {\n return (\n field.type === 'group' ||\n field.type === 'array' ||\n field.type === 'row' ||\n field.type === 'collapsible'\n )\n}\n\nexport function fieldIsArrayType(field: Field): field is ArrayField {\n return field.type === 'array'\n}\n\nexport function fieldIsBlockType(field: Field): field is BlockField {\n return field.type === 'blocks'\n}\n\nexport function fieldIsGroupType(field: Field): field is GroupField {\n return field.type === 'group'\n}\n\nexport function optionIsObject(option: Option): option is OptionObject {\n return typeof option === 'object'\n}\n\nexport function optionsAreObjects(options: Option[]): options is OptionObject[] {\n return Array.isArray(options) && typeof options?.[0] === 'object'\n}\n\nexport function optionIsValue(option: Option): option is string {\n return typeof option === 'string'\n}\n\nexport function fieldSupportsMany(field: Field): field is FieldWithMany {\n return field.type === 'select' || field.type === 'relationship'\n}\n\nexport function fieldHasMaxDepth(field: Field): field is FieldWithMaxDepth {\n return (\n (field.type === 'upload' || field.type === 'relationship') && typeof field.maxDepth === 'number'\n )\n}\n\nexport function fieldIsPresentationalOnly(\n field: ClientFieldConfig | Field | TabAsField,\n): field is UIField {\n return field.type === 'ui'\n}\n\nexport function fieldAffectsData(\n field: ClientFieldConfig | Field | TabAsField,\n): field is FieldAffectingData {\n return 'name' in field && !fieldIsPresentationalOnly(field)\n}\n\nexport function tabHasName(tab: Tab): tab is NamedTab {\n return 'name' in tab\n}\n\nexport function fieldIsLocalized(field: Field | Tab): boolean {\n return 'localized' in field && field.localized\n}\n\nexport type HookName =\n | 'afterChange'\n | 'afterRead'\n | 'beforeChange'\n | 'beforeRead'\n | 'beforeValidate'\n"],"names":["valueIsValueWithRelation","value","fieldHasSubFields","field","type","fieldIsArrayType","fieldIsBlockType","fieldIsGroupType","optionIsObject","option","optionsAreObjects","options","Array","isArray","optionIsValue","fieldSupportsMany","fieldHasMaxDepth","maxDepth","fieldIsPresentationalOnly","fieldAffectsData","tabHasName","tab","fieldIsLocalized","localized"],"mappings":"AAAA,qDAAqD,GAypBrD,OAAO,SAASA,yBAAyBC,KAAc;IACrD,OAAOA,UAAU,QAAQ,OAAOA,UAAU,YAAY,gBAAgBA,SAAS,WAAWA;AAC5F;AA4NA,OAAO,SAASC,kBAAkBC,KAAgC;IAChE,OACEA,MAAMC,IAAI,KAAK,WACfD,MAAMC,IAAI,KAAK,WACfD,MAAMC,IAAI,KAAK,SACfD,MAAMC,IAAI,KAAK;AAEnB;AAEA,OAAO,SAASC,iBAAiBF,KAAY;IAC3C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASE,iBAAiBH,KAAY;IAC3C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASG,iBAAiBJ,KAAY;IAC3C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASI,eAAeC,MAAc;IAC3C,OAAO,OAAOA,WAAW;AAC3B;AAEA,OAAO,SAASC,kBAAkBC,OAAiB;IACjD,OAAOC,MAAMC,OAAO,CAACF,YAAY,OAAOA,SAAS,CAAC,EAAE,KAAK;AAC3D;AAEA,OAAO,SAASG,cAAcL,MAAc;IAC1C,OAAO,OAAOA,WAAW;AAC3B;AAEA,OAAO,SAASM,kBAAkBZ,KAAY;IAC5C,OAAOA,MAAMC,IAAI,KAAK,YAAYD,MAAMC,IAAI,KAAK;AACnD;AAEA,OAAO,SAASY,iBAAiBb,KAAY;IAC3C,OACE,AAACA,CAAAA,MAAMC,IAAI,KAAK,YAAYD,MAAMC,IAAI,KAAK,cAAa,KAAM,OAAOD,MAAMc,QAAQ,KAAK;AAE5F;AAEA,OAAO,SAASC,0BACdf,KAA6C;IAE7C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASe,iBACdhB,KAA6C;IAE7C,OAAO,UAAUA,SAAS,CAACe,0BAA0Bf;AACvD;AAEA,OAAO,SAASiB,WAAWC,GAAQ;IACjC,OAAO,UAAUA;AACnB;AAEA,OAAO,SAASC,iBAAiBnB,KAAkB;IACjD,OAAO,eAAeA,SAASA,MAAMoB,SAAS;AAChD"}
1
+ {"version":3,"sources":["../../../src/fields/config/types.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport type { EditorProps } from '@monaco-editor/react'\nimport type { CSSProperties } from 'react'\n\n//eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport monacoeditor from 'monaco-editor' // IMPORTANT - DO NOT REMOVE: This is required for pnpm's default isolated mode to work - even though the import is not used. This is due to a typescript bug: https://github.com/microsoft/TypeScript/issues/47663#issuecomment-1519138189. (tsbugisolatedmode)\nimport type { JSONSchema4 } from 'json-schema'\nimport type React from 'react'\nimport type { DeepPartial } from 'ts-essentials'\n\nimport type { RichTextAdapter, RichTextAdapterProvider } from '../../admin/RichText.js'\nimport type { ErrorComponent } from '../../admin/forms/Error.js'\nimport type {\n ConditionalDateProps,\n Description,\n DescriptionComponent,\n LabelComponent,\n RowLabelComponent,\n} from '../../admin/types.js'\nimport type { SanitizedCollectionConfig, TypeWithID } from '../../collections/config/types.js'\nimport type { CustomComponent, LabelFunction, LabelStatic } from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { SanitizedGlobalConfig } from '../../globals/config/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { DocumentPreferences } from '../../preferences/types.js'\nimport type { Operation, PayloadRequest, RequestContext, Where } from '../../types/index.js'\nimport type { ClientFieldConfig } from './client.js'\n\nexport type FieldHookArgs<TData extends TypeWithID = any, TValue = any, TSiblingData = any> = {\n /** The collection which the field belongs to. If the field belongs to a global, this will be null. */\n collection: SanitizedCollectionConfig | null\n context: RequestContext\n /** The data passed to update the document within create and update operations, and the full document itself in the afterRead hook. */\n data?: Partial<TData>\n /** The field which the hook is running against. */\n field: FieldAffectingData\n /** Boolean to denote if this hook is running against finding one, or finding many within the afterRead hook. */\n findMany?: boolean\n /** The global which the field belongs to. If the field belongs to a collection, this will be null. */\n global: SanitizedGlobalConfig | null\n /** 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. */\n operation?: 'create' | 'delete' | 'read' | 'update'\n /** The full original document in `update` operations. In the `afterChange` hook, this is the resulting document of the operation. */\n originalDoc?: TData\n overrideAccess?: boolean\n /**\n * 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.\n */\n path: (number | string)[]\n /** The document before changes were applied, only in `afterChange` hooks. */\n previousDoc?: TData\n /** The sibling data of the document before changes being applied, only in `beforeChange`, `beforeValidate`, `beforeDuplicate` and `afterChange` field hooks. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes, only in `beforeChange`, `afterChange`, `beforeDuplicate` and `beforeValidate` field hooks. */\n previousValue?: TValue\n /** The Express request object. It is mocked for Local API operations. */\n req: PayloadRequest\n /**\n * 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.\n */\n schemaPath: string[]\n /** The sibling data passed to a field that the hook is running against. */\n siblingData: Partial<TSiblingData>\n /**\n * The original siblingData with locales (not modified by any hooks). Only available in `beforeChange` and `beforeDuplicate` field hooks.\n */\n siblingDocWithLocales?: Record<string, unknown>\n /** The value of the field. */\n value?: TValue\n}\n\nexport type FieldHook<TData extends TypeWithID = any, TValue = any, TSiblingData = any> = (\n args: FieldHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type FieldAccess<TData extends TypeWithID = any, TSiblingData = any> = (args: {\n /**\n * The incoming data used to `create` or `update` the document with. `data` is undefined during the `read` operation.\n */\n data?: Partial<TData>\n /**\n * The original data of the document before the `update` is applied. `doc` is undefined during the `create` operation.\n */\n doc?: TData\n /**\n * The `id` of the current document being read or updated. `id` is undefined during the `create` operation.\n */\n id?: number | string\n /** The `payload` object to interface with the payload API */\n req: PayloadRequest\n /**\n * Immediately adjacent data to this field. For example, if this is a `group` field, then `siblingData` will be the other fields within the group.\n */\n siblingData?: Partial<TSiblingData>\n}) => Promise<boolean> | boolean\n\nexport type Condition<TData extends TypeWithID = any, TSiblingData = any> = (\n data: Partial<TData>,\n siblingData: Partial<TSiblingData>,\n { user }: { user: PayloadRequest['user'] },\n) => boolean\n\nexport type FilterOptionsProps<TData = any> = {\n /**\n * An object containing the full collection or global document currently being edited.\n */\n data: TData\n /**\n * The `id` of the current document being edited. `id` is undefined during the `create` operation.\n */\n id: number | string\n /**\n * The collection `slug` to filter against, limited to this field's `relationTo` property.\n */\n relationTo: CollectionSlug\n /**\n * An object containing document data that is scoped to only fields within the same parent of this field.\n */\n siblingData: unknown\n /**\n * An object containing the currently authenticated user.\n */\n user: Partial<PayloadRequest['user']>\n}\n\nexport type FilterOptionsFunc<TData = any> = (\n options: FilterOptionsProps<TData>,\n) => Promise<Where | boolean> | Where | boolean\n\nexport type FilterOptions<TData = any> =\n | ((options: FilterOptionsProps<TData>) => Promise<Where | boolean> | Where | boolean)\n | Where\n | null\n\ntype Admin = {\n className?: string\n components?: {\n Cell?: CustomComponent\n Description?: DescriptionComponent\n Field?: CustomComponent\n /**\n * The Filter component has to be a client component\n */\n Filter?: React.ComponentType<any>\n }\n /**\n * You can programmatically show / hide fields based on what other fields are doing.\n * This is also run on the server, to determine if the field should be validated.\n */\n condition?: Condition\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n description?: Description\n disableBulkEdit?: boolean\n /**\n * Shows / hides fields from appearing in the list view column selector.\n * @type boolean\n */\n disableListColumn?: boolean\n /**\n * Shows / hides fields from appearing in the list view filter options.\n * @type boolean\n */\n disableListFilter?: boolean\n disabled?: boolean\n hidden?: boolean\n position?: 'sidebar'\n readOnly?: boolean\n style?: CSSProperties\n width?: string\n}\n\nexport type Labels = {\n plural: LabelFunction | LabelStatic\n singular: LabelFunction | LabelStatic\n}\n\nexport type BaseValidateOptions<TData, TSiblingData, TValue> = {\n collectionSlug?: string\n data: Partial<TData>\n id?: number | string\n operation?: Operation\n preferences: DocumentPreferences\n previousValue?: TValue\n req: PayloadRequest\n required?: boolean\n siblingData: Partial<TSiblingData>\n}\n\nexport type ValidateOptions<\n TData,\n TSiblingData,\n TFieldConfig extends object,\n TValue,\n> = BaseValidateOptions<TData, TSiblingData, TValue> & TFieldConfig\n\nexport type Validate<\n TValue = any,\n TData = any,\n TSiblingData = any,\n TFieldConfig extends object = object,\n> = (\n value: TValue,\n options: ValidateOptions<TData, TSiblingData, TFieldConfig, TValue>,\n) => Promise<string | true> | string | true\n\nexport type OptionObject = {\n label: LabelFunction | LabelStatic\n value: string\n}\n\nexport type Option = OptionObject | string\n\nexport interface FieldBase {\n access?: {\n create?: FieldAccess\n read?: FieldAccess\n update?: FieldAccess\n }\n admin?: Admin\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n defaultValue?: any\n hidden?: boolean\n hooks?: {\n afterChange?: FieldHook[]\n afterRead?: FieldHook[]\n beforeChange?: FieldHook[]\n /**\n * Runs before a document is duplicated to prevent errors in unique fields or return null to use defaultValue.\n */\n beforeDuplicate?: FieldHook[]\n beforeValidate?: FieldHook[]\n }\n index?: boolean\n label?: LabelFunction | LabelStatic | false\n localized?: boolean\n /**\n * The name of the field. Must be alphanumeric and cannot contain ' . '\n *\n * Must not be one of reserved field names: ['__v', 'salt', 'hash', 'file']\n * @link https://payloadcms.com/docs/fields/overview#field-names\n */\n name: string\n required?: boolean\n saveToJWT?: boolean | string\n /**\n * Allows you to modify the base JSON schema that is generated during generate:types for this field.\n * This JSON schema will be used to generate the TypeScript interface of this field.\n */\n typescriptSchema?: Array<(args: { jsonSchema: JSONSchema4 }) => JSONSchema4>\n unique?: boolean\n validate?: Validate\n}\n\nexport type NumberField = {\n admin?: {\n /** Set this property to a string that will be used for browser autocomplete. */\n autoComplete?: string\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n /** Set this property to define a placeholder string for the field. */\n placeholder?: Record<string, string> | string\n /** Set a value for the number field to increment / decrement using browser controls. */\n step?: number\n } & Admin\n /** Maximum value accepted. Used in the default `validate` function. */\n max?: number\n /** Minimum value accepted. Used in the default `validate` function. */\n min?: number\n type: 'number'\n validate?: Validate<number | number[], unknown, unknown, NumberField>\n} & (\n | {\n /** Makes this field an ordered array of numbers instead of just a single number. */\n hasMany: true\n /** Maximum number of numbers in the numbers array, if `hasMany` is set to true. */\n maxRows?: number\n /** Minimum number of numbers in the numbers array, if `hasMany` is set to true. */\n minRows?: number\n }\n | {\n /** Makes this field an ordered array of numbers instead of just a single number. */\n hasMany?: false | undefined\n /** Maximum number of numbers in the numbers array, if `hasMany` is set to true. */\n maxRows?: undefined\n /** Minimum number of numbers in the numbers array, if `hasMany` is set to true. */\n minRows?: undefined\n }\n) &\n FieldBase\n\nexport type TextField = {\n admin?: {\n autoComplete?: string\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n placeholder?: Record<string, string> | string\n rtl?: boolean\n } & Admin\n maxLength?: number\n minLength?: number\n type: 'text'\n validate?: Validate<string | string[], unknown, unknown, TextField>\n} & (\n | {\n /** Makes this field an ordered array of strings instead of just a single string. */\n hasMany: true\n /** Maximum number of strings in the strings array, if `hasMany` is set to true. */\n maxRows?: number\n /** Minimum number of strings in the strings array, if `hasMany` is set to true. */\n minRows?: number\n }\n | {\n /** Makes this field an ordered array of strings instead of just a single string. */\n hasMany?: false | undefined\n /** Maximum number of strings in the strings array, if `hasMany` is set to true. */\n maxRows?: undefined\n /** Minimum number of strings in the strings array, if `hasMany` is set to true. */\n minRows?: undefined\n }\n) &\n FieldBase\n\nexport type EmailField = {\n admin?: {\n autoComplete?: string\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n placeholder?: Record<string, string> | string\n } & Admin\n type: 'email'\n validate?: Validate<string, unknown, unknown, EmailField>\n} & FieldBase\n\nexport type TextareaField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n placeholder?: Record<string, string> | string\n rows?: number\n rtl?: boolean\n } & Admin\n maxLength?: number\n minLength?: number\n type: 'textarea'\n validate?: Validate<string, unknown, unknown, TextareaField>\n} & FieldBase\n\nexport type CheckboxField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n } & Admin\n type: 'checkbox'\n validate?: Validate<unknown, unknown, unknown, CheckboxField>\n} & FieldBase\n\nexport type DateField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n afterInput?: CustomComponent[]\n beforeInput?: CustomComponent[]\n }\n date?: ConditionalDateProps\n placeholder?: Record<string, string> | string\n } & Admin\n type: 'date'\n validate?: Validate<unknown, unknown, unknown, DateField>\n} & FieldBase\n\nexport type GroupField = {\n admin?: {\n hideGutter?: boolean\n } & Admin\n fields: Field[]\n /** Customize generated GraphQL and Typescript schema names.\n * By default, it is bound to the collection.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n type: 'group'\n validate?: Validate<unknown, unknown, unknown, GroupField>\n} & Omit<FieldBase, 'required'>\n\nexport type RowAdmin = Omit<Admin, 'description'>\n\nexport type RowField = {\n admin?: RowAdmin\n fields: Field[]\n type: 'row'\n} & Omit<FieldBase, 'admin' | 'label' | 'name' | 'validate'>\n\nexport type CollapsibleField = {\n fields: Field[]\n type: 'collapsible'\n} & (\n | {\n admin: {\n components: {\n RowLabel: RowLabelComponent\n } & Admin['components']\n initCollapsed?: boolean\n } & Admin\n label?: Required<FieldBase['label']>\n }\n | {\n admin?: {\n initCollapsed?: boolean\n } & Admin\n label: Required<FieldBase['label']>\n }\n) &\n Omit<FieldBase, 'label' | 'name' | 'validate'>\n\nexport type TabsAdmin = Omit<Admin, 'description'>\n\ntype TabBase = {\n description?: Description\n fields: Field[]\n interfaceName?: string\n saveToJWT?: boolean | string\n} & Omit<FieldBase, 'required' | 'validate'>\n\nexport type NamedTab = {\n /** Customize generated GraphQL and Typescript schema names.\n * The slug is used by default.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n} & TabBase\n\nexport type UnnamedTab = {\n interfaceName?: never\n /**\n * Can be either:\n * - A string, which will be used as the tab's label.\n * - An object, where the key is the language code and the value is the label.\n */\n label:\n | {\n [selectedLanguage: string]: string\n }\n | LabelFunction\n | string\n localized?: never\n} & Omit<TabBase, 'name'>\n\nexport type Tab = NamedTab | UnnamedTab\n\nexport type TabsField = {\n admin?: TabsAdmin\n tabs: Tab[]\n type: 'tabs'\n} & Omit<FieldBase, 'admin' | 'localized' | 'name' | 'saveToJWT'>\n\nexport type TabAsField = {\n name?: string\n type: 'tab'\n} & Tab\n\nexport type UIField = {\n admin: {\n components?: {\n Cell?: CustomComponent\n Field: CustomComponent\n /**\n * The Filter component has to be a client component\n */\n Filter?: React.ComponentType<any>\n }\n condition?: Condition\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n disableBulkEdit?: boolean\n /**\n * Shows / hides fields from appearing in the list view column selector.\n * @type boolean\n */\n disableListColumn?: boolean\n position?: string\n width?: string\n }\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n label?: Record<string, string> | string\n name: string\n type: 'ui'\n}\n\nexport type UploadField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n }\n displayPreview?: boolean\n filterOptions?: FilterOptions\n /**\n * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n relationTo: CollectionSlug\n type: 'upload'\n validate?: Validate<unknown, unknown, unknown, UploadField>\n} & FieldBase\n\ntype CodeAdmin = {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n editorOptions?: EditorProps['options']\n language?: string\n} & Admin\n\nexport type CodeField = {\n admin?: CodeAdmin\n maxLength?: number\n minLength?: number\n type: 'code'\n validate?: Validate<string, unknown, unknown, CodeField>\n} & Omit<FieldBase, 'admin'>\n\ntype JSONAdmin = {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n editorOptions?: EditorProps['options']\n} & Admin\n\nexport type JSONField = {\n admin?: JSONAdmin\n jsonSchema?: {\n fileMatch: string[]\n schema: JSONSchema4\n uri: string\n }\n type: 'json'\n validate?: Validate<Record<string, unknown>, unknown, unknown, JSONField>\n} & Omit<FieldBase, 'admin'>\n\nexport type SelectField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n isClearable?: boolean\n isSortable?: boolean\n } & Admin\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n /**\n * Customize the DB enum name\n */\n enumName?: DBIdentifierName\n hasMany?: boolean\n options: Option[]\n type: 'select'\n validate?: Validate<string, unknown, unknown, SelectField>\n} & FieldBase\n\ntype SharedRelationshipProperties = {\n filterOptions?: FilterOptions\n hasMany?: boolean\n /**\n * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n type: 'relationship'\n validate?: Validate<unknown, unknown, unknown, SharedRelationshipProperties>\n} & (\n | {\n hasMany: true\n /**\n * @deprecated Use 'maxRows' instead\n */\n max?: number\n maxRows?: number\n /**\n * @deprecated Use 'minRows' instead\n */\n min?: number\n minRows?: number\n }\n | {\n hasMany?: false | undefined\n /**\n * @deprecated Use 'maxRows' instead\n */\n max?: undefined\n maxRows?: undefined\n /**\n * @deprecated Use 'minRows' instead\n */\n min?: undefined\n minRows?: undefined\n }\n) &\n FieldBase\n\ntype RelationshipAdmin = {\n allowCreate?: boolean\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n isSortable?: boolean\n} & Admin\n\nexport type PolymorphicRelationshipField = {\n admin?: {\n sortOptions?: { [collectionSlug: CollectionSlug]: string }\n } & RelationshipAdmin\n relationTo: CollectionSlug[]\n} & SharedRelationshipProperties\n\nexport type SingleRelationshipField = {\n admin?: {\n sortOptions?: string\n } & RelationshipAdmin\n relationTo: CollectionSlug\n} & SharedRelationshipProperties\nexport type RelationshipField = PolymorphicRelationshipField | SingleRelationshipField\n\nexport type ValueWithRelation = {\n relationTo: CollectionSlug\n value: number | string\n}\n\nexport function valueIsValueWithRelation(value: unknown): value is ValueWithRelation {\n return value !== null && typeof value === 'object' && 'relationTo' in value && 'value' in value\n}\n\nexport type RelationshipValue =\n | (number | string)[]\n | ValueWithRelation\n | ValueWithRelation[]\n | (number | string)\n\nexport type RichTextField<\n Value extends object = any,\n AdapterProps = any,\n ExtraProperties = object,\n> = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n } & Admin\n editor?:\n | RichTextAdapter<Value, AdapterProps, AdapterProps>\n | RichTextAdapterProvider<Value, AdapterProps, AdapterProps>\n /**\n * Sets a maximum population depth for this field, regardless of the remaining depth when this field is reached.\n *\n * {@link https://payloadcms.com/docs/getting-started/concepts#field-level-max-depth}\n */\n maxDepth?: number\n type: 'richText'\n} & ExtraProperties &\n FieldBase\n\nexport type ArrayField = {\n admin?: {\n components?: {\n RowLabel?: RowLabelComponent\n } & Admin['components']\n initCollapsed?: boolean\n /**\n * Disable drag and drop sorting\n */\n isSortable?: boolean\n } & Admin\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n fields: Field[]\n /** Customize generated GraphQL and Typescript schema names.\n * By default, it is bound to the collection.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n labels?: Labels\n maxRows?: number\n minRows?: number\n type: 'array'\n validate?: Validate<unknown[], unknown, unknown, ArrayField>\n} & FieldBase\n\nexport type RadioField = {\n admin?: {\n components?: {\n Error?: ErrorComponent\n Label?: LabelComponent\n }\n layout?: 'horizontal' | 'vertical'\n } & Admin\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n /**\n * Customize the DB enum name\n */\n enumName?: DBIdentifierName\n options: Option[]\n type: 'radio'\n validate?: Validate<string, unknown, unknown, RadioField>\n} & FieldBase\n\nexport type Block = {\n admin?: {\n components?: {\n Label?: React.FC<{\n blockKind: 'block' | 'lexicalBlock' | 'lexicalInlineBlock' | string\n /**\n * May contain the formData\n */\n formData: Record<string, any>\n }>\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n }\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Customize the SQL table name\n */\n dbName?: DBIdentifierName\n fields: Field[]\n /** @deprecated - please migrate to the interfaceName property instead. */\n graphQL?: {\n singularName?: string\n }\n imageAltText?: string\n imageURL?: string\n /** Customize generated GraphQL and Typescript schema names.\n * The slug is used by default.\n *\n * This is useful if you would like to generate a top level type to share amongst collections/fields.\n * **Note**: Top level types can collide, ensure they are unique amongst collections, arrays, groups, blocks, tabs.\n */\n interfaceName?: string\n labels?: Labels\n slug: string\n}\n\nexport type BlockField = {\n admin?: {\n initCollapsed?: boolean\n /**\n * Disable drag and drop sorting\n */\n isSortable?: boolean\n } & Admin\n blocks: Block[]\n defaultValue?: unknown\n labels?: Labels\n maxRows?: number\n minRows?: number\n type: 'blocks'\n validate?: Validate<string, unknown, unknown, BlockField>\n} & FieldBase\n\nexport type PointField = {\n type: 'point'\n validate?: Validate<unknown, unknown, unknown, PointField>\n} & FieldBase\n\nexport type Field =\n | ArrayField\n | BlockField\n | CheckboxField\n | CodeField\n | CollapsibleField\n | DateField\n | EmailField\n | GroupField\n | JSONField\n | NumberField\n | PointField\n | RadioField\n | RelationshipField\n | RichTextField\n | RowField\n | SelectField\n | TabsField\n | TextField\n | TextareaField\n | UIField\n | UploadField\n\nexport type FieldAffectingData =\n | ArrayField\n | BlockField\n | CheckboxField\n | CodeField\n | DateField\n | EmailField\n | GroupField\n | JSONField\n | NumberField\n | PointField\n | RadioField\n | RelationshipField\n | RichTextField\n | SelectField\n | TabAsField\n | TextField\n | TextareaField\n | UploadField\n\nexport type NonPresentationalField =\n | ArrayField\n | BlockField\n | CheckboxField\n | CodeField\n | CollapsibleField\n | DateField\n | EmailField\n | GroupField\n | JSONField\n | NumberField\n | PointField\n | RadioField\n | RelationshipField\n | RichTextField\n | RowField\n | SelectField\n | TabsField\n | TextField\n | TextareaField\n | UploadField\n\nexport type FieldWithPath = {\n path?: string\n} & Field\n\nexport type FieldWithSubFields = ArrayField | CollapsibleField | GroupField | RowField\n\nexport type FieldPresentationalOnly = UIField\n\nexport type FieldWithMany = RelationshipField | SelectField\n\nexport type FieldWithMaxDepth = RelationshipField | UploadField\n\nexport function fieldHasSubFields(field: ClientFieldConfig | Field): field is FieldWithSubFields {\n return (\n field.type === 'group' ||\n field.type === 'array' ||\n field.type === 'row' ||\n field.type === 'collapsible'\n )\n}\n\nexport function fieldIsArrayType(field: Field): field is ArrayField {\n return field.type === 'array'\n}\n\nexport function fieldIsBlockType(field: Field): field is BlockField {\n return field.type === 'blocks'\n}\n\nexport function fieldIsGroupType(field: Field): field is GroupField {\n return field.type === 'group'\n}\n\nexport function optionIsObject(option: Option): option is OptionObject {\n return typeof option === 'object'\n}\n\nexport function optionsAreObjects(options: Option[]): options is OptionObject[] {\n return Array.isArray(options) && typeof options?.[0] === 'object'\n}\n\nexport function optionIsValue(option: Option): option is string {\n return typeof option === 'string'\n}\n\nexport function fieldSupportsMany(field: Field): field is FieldWithMany {\n return field.type === 'select' || field.type === 'relationship'\n}\n\nexport function fieldHasMaxDepth(field: Field): field is FieldWithMaxDepth {\n return (\n (field.type === 'upload' || field.type === 'relationship') && typeof field.maxDepth === 'number'\n )\n}\n\nexport function fieldIsPresentationalOnly(\n field: ClientFieldConfig | Field | TabAsField,\n): field is UIField {\n return field.type === 'ui'\n}\n\nexport function fieldAffectsData(\n field: ClientFieldConfig | Field | TabAsField,\n): field is FieldAffectingData {\n return 'name' in field && !fieldIsPresentationalOnly(field)\n}\n\nexport function tabHasName(tab: Tab): tab is NamedTab {\n return 'name' in tab\n}\n\nexport function fieldIsLocalized(field: Field | Tab): boolean {\n return 'localized' in field && field.localized\n}\n\nexport type HookName =\n | 'afterChange'\n | 'afterRead'\n | 'beforeChange'\n | 'beforeRead'\n | 'beforeValidate'\n"],"names":["valueIsValueWithRelation","value","fieldHasSubFields","field","type","fieldIsArrayType","fieldIsBlockType","fieldIsGroupType","optionIsObject","option","optionsAreObjects","options","Array","isArray","optionIsValue","fieldSupportsMany","fieldHasMaxDepth","maxDepth","fieldIsPresentationalOnly","fieldAffectsData","tabHasName","tab","fieldIsLocalized","localized"],"mappings":"AAAA,qDAAqD,GA0pBrD,OAAO,SAASA,yBAAyBC,KAAc;IACrD,OAAOA,UAAU,QAAQ,OAAOA,UAAU,YAAY,gBAAgBA,SAAS,WAAWA;AAC5F;AA4NA,OAAO,SAASC,kBAAkBC,KAAgC;IAChE,OACEA,MAAMC,IAAI,KAAK,WACfD,MAAMC,IAAI,KAAK,WACfD,MAAMC,IAAI,KAAK,SACfD,MAAMC,IAAI,KAAK;AAEnB;AAEA,OAAO,SAASC,iBAAiBF,KAAY;IAC3C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASE,iBAAiBH,KAAY;IAC3C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASG,iBAAiBJ,KAAY;IAC3C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASI,eAAeC,MAAc;IAC3C,OAAO,OAAOA,WAAW;AAC3B;AAEA,OAAO,SAASC,kBAAkBC,OAAiB;IACjD,OAAOC,MAAMC,OAAO,CAACF,YAAY,OAAOA,SAAS,CAAC,EAAE,KAAK;AAC3D;AAEA,OAAO,SAASG,cAAcL,MAAc;IAC1C,OAAO,OAAOA,WAAW;AAC3B;AAEA,OAAO,SAASM,kBAAkBZ,KAAY;IAC5C,OAAOA,MAAMC,IAAI,KAAK,YAAYD,MAAMC,IAAI,KAAK;AACnD;AAEA,OAAO,SAASY,iBAAiBb,KAAY;IAC3C,OACE,AAACA,CAAAA,MAAMC,IAAI,KAAK,YAAYD,MAAMC,IAAI,KAAK,cAAa,KAAM,OAAOD,MAAMc,QAAQ,KAAK;AAE5F;AAEA,OAAO,SAASC,0BACdf,KAA6C;IAE7C,OAAOA,MAAMC,IAAI,KAAK;AACxB;AAEA,OAAO,SAASe,iBACdhB,KAA6C;IAE7C,OAAO,UAAUA,SAAS,CAACe,0BAA0Bf;AACvD;AAEA,OAAO,SAASiB,WAAWC,GAAQ;IACjC,OAAO,UAAUA;AACnB;AAEA,OAAO,SAASC,iBAAiBnB,KAAkB;IACjD,OAAO,eAAeA,SAASA,MAAMoB,SAAS;AAChD"}
@@ -1 +1 @@
1
- {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACpG,OAAO,KAAK,EAAE,KAAK,EAAiB,UAAU,EAAmB,MAAM,uBAAuB,CAAA;AAU9F,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,GAAG,EAAE,UAAU,CAAA;IACf,cAAc,EAAE,UAAU,CAAA;IAC1B,SAAS,EAAE,OAAO,CAAA;IAClB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5C,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,kBAAkB,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;IAC3C,SAAS,EAAE,SAAS,CAAA;IACpB;;OAEG;IACH,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IAC/B;;OAEG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,EAAE,UAAU,CAAA;IACvB,UAAU,EAAE,UAAU,CAAA;IACtB,qBAAqB,CAAC,EAAE,UAAU,CAAA;IAClC,cAAc,EAAE,OAAO,CAAA;CACxB,CAAA;AAUD,eAAO,MAAM,OAAO,gOAoBjB,IAAI,KAAG,OAAO,CAAC,IAAI,CA0arB,CAAA"}
1
+ {"version":3,"file":"promise.d.ts","sourceRoot":"","sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AACrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACpG,OAAO,KAAK,EAAE,KAAK,EAAiB,UAAU,EAAmB,MAAM,uBAAuB,CAAA;AAU9F,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAA;IAC5C,OAAO,EAAE,cAAc,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,GAAG,EAAE,UAAU,CAAA;IACf,cAAc,EAAE,UAAU,CAAA;IAC1B,SAAS,EAAE,OAAO,CAAA;IAClB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC5C,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,kBAAkB,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;IAC3C,SAAS,EAAE,SAAS,CAAA;IACpB;;OAEG;IACH,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IAC/B;;OAEG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,EAAE,UAAU,CAAA;IACvB,UAAU,EAAE,UAAU,CAAA;IACtB,qBAAqB,CAAC,EAAE,UAAU,CAAA;IAClC,cAAc,EAAE,OAAO,CAAA;CACxB,CAAA;AAUD,eAAO,MAAM,OAAO,gOAoBjB,IAAI,KAAG,OAAO,CAAC,IAAI,CA2arB,CAAA"}
@@ -75,6 +75,7 @@ export const promise = async ({ id, collection, context, data, doc, docWithLocal
75
75
  const validationResult = await field.validate(valueToValidate, {
76
76
  ...field,
77
77
  id,
78
+ collectionSlug: collection?.slug,
78
79
  data: deepMergeWithSourceArrays(doc, data),
79
80
  jsonError,
80
81
  operation,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"sourcesContent":["import type { RichTextAdapter } from '../../../admin/RichText.js'\nimport type { SanitizedCollectionConfig } from '../../../collections/config/types.js'\nimport type { SanitizedGlobalConfig } from '../../../globals/config/types.js'\nimport type { JsonObject, Operation, PayloadRequest, RequestContext } from '../../../types/index.js'\nimport type { Field, FieldHookArgs, TabAsField, ValidateOptions } from '../../config/types.js'\n\nimport { MissingEditorProp } from '../../../errors/index.js'\nimport { deepMergeWithSourceArrays } from '../../../utilities/deepMerge.js'\nimport { fieldAffectsData, tabHasName } from '../../config/types.js'\nimport { getFieldPaths } from '../../getFieldPaths.js'\nimport { beforeDuplicate } from './beforeDuplicate.js'\nimport { getExistingRowDoc } from './getExistingRowDoc.js'\nimport { traverseFields } from './traverseFields.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig | null\n context: RequestContext\n data: JsonObject\n doc: JsonObject\n docWithLocales: JsonObject\n duplicate: boolean\n errors: { field: string; message: string }[]\n field: Field | TabAsField\n global: SanitizedGlobalConfig | null\n id?: number | string\n mergeLocaleActions: (() => Promise<void>)[]\n operation: Operation\n /**\n * The parent's path.\n */\n parentPath: (number | string)[]\n /**\n * The parent's schemaPath (path without indexes).\n */\n parentSchemaPath: string[]\n req: PayloadRequest\n siblingData: JsonObject\n siblingDoc: JsonObject\n siblingDocWithLocales?: JsonObject\n skipValidation: boolean\n}\n\n// This function is responsible for the following actions, in order:\n// - Run condition\n// - Execute field hooks\n// - Validate data\n// - Transform data for storage\n// - beforeDuplicate hooks (if duplicate)\n// - Unflatten locales\n\nexport const promise = async ({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n field,\n global,\n mergeLocaleActions,\n operation,\n parentPath,\n parentSchemaPath,\n req,\n siblingData,\n siblingDoc,\n siblingDocWithLocales,\n skipValidation,\n}: Args): Promise<void> => {\n const passesCondition = field.admin?.condition\n ? Boolean(field.admin.condition(data, siblingData, { user: req.user }))\n : true\n let skipValidationFromHere = skipValidation || !passesCondition\n const { localization } = req.payload.config\n const defaultLocale = localization ? localization?.defaultLocale : 'en'\n const operationLocale = req.locale || defaultLocale\n\n const { path: fieldPath, schemaPath: fieldSchemaPath } = getFieldPaths({\n field,\n parentPath,\n parentSchemaPath,\n })\n\n if (fieldAffectsData(field)) {\n // skip validation if the field is localized and the incoming data is null\n if (field.localized && operationLocale !== defaultLocale) {\n if (['array', 'blocks'].includes(field.type) && siblingData[field.name] === null) {\n skipValidationFromHere = true\n }\n }\n\n // Execute hooks\n if (field.hooks?.beforeChange) {\n await field.hooks.beforeChange.reduce(async (priorHook, currentHook) => {\n await priorHook\n\n const hookedValue = await currentHook({\n collection,\n context,\n data,\n field,\n global,\n operation,\n originalDoc: doc,\n path: fieldPath,\n previousSiblingDoc: siblingDoc,\n previousValue: siblingDoc[field.name],\n req,\n schemaPath: parentSchemaPath,\n siblingData,\n siblingDocWithLocales,\n value: siblingData[field.name],\n })\n\n if (hookedValue !== undefined) {\n siblingData[field.name] = hookedValue\n }\n }, Promise.resolve())\n }\n\n // Validate\n if (!skipValidationFromHere && 'validate' in field && field.validate) {\n const valueToValidate = siblingData[field.name]\n let jsonError: object\n\n if (field.type === 'json' && typeof siblingData[field.name] === 'string') {\n try {\n JSON.parse(siblingData[field.name] as string)\n } catch (e) {\n jsonError = e\n }\n }\n\n const validationResult = await field.validate(valueToValidate, {\n ...field,\n id,\n data: deepMergeWithSourceArrays(doc, data),\n jsonError,\n operation,\n preferences: { fields: {} },\n previousValue: siblingDoc[field.name],\n req,\n siblingData: deepMergeWithSourceArrays(siblingDoc, siblingData),\n } as ValidateOptions<any, any, { jsonError: object }, any>)\n\n if (typeof validationResult === 'string') {\n errors.push({\n field: fieldPath.join('.'),\n message: validationResult,\n })\n }\n }\n\n const beforeDuplicateArgs: FieldHookArgs = {\n collection,\n context,\n data,\n field,\n global: undefined,\n path: fieldPath,\n previousSiblingDoc: siblingDoc,\n previousValue: siblingDoc[field.name],\n req,\n schemaPath: parentSchemaPath,\n siblingData,\n siblingDocWithLocales,\n value: siblingData[field.name],\n }\n\n // Push merge locale action if applicable\n if (localization && field.localized) {\n mergeLocaleActions.push(async () => {\n const localeData = await localization.localeCodes.reduce(\n async (localizedValuesPromise: Promise<JsonObject>, locale) => {\n const localizedValues = await localizedValuesPromise\n let fieldValue =\n locale === req.locale\n ? siblingData[field.name]\n : siblingDocWithLocales?.[field.name]?.[locale]\n\n if (duplicate && field.hooks?.beforeDuplicate?.length) {\n beforeDuplicateArgs.value = fieldValue\n fieldValue = await beforeDuplicate(beforeDuplicateArgs)\n }\n\n // const result = await localizedValues\n // update locale value if it's not undefined\n if (typeof fieldValue !== 'undefined') {\n return {\n ...localizedValues,\n [locale]: fieldValue,\n }\n }\n\n return localizedValuesPromise\n },\n Promise.resolve({}),\n )\n\n // If there are locales with data, set the data\n if (Object.keys(localeData).length > 0) {\n siblingData[field.name] = localeData\n }\n })\n } else if (duplicate && field.hooks?.beforeDuplicate?.length) {\n mergeLocaleActions.push(async () => {\n siblingData[field.name] = await beforeDuplicate(beforeDuplicateArgs)\n })\n }\n }\n\n switch (field.type) {\n case 'point': {\n // Transform point data for storage\n if (\n Array.isArray(siblingData[field.name]) &&\n siblingData[field.name][0] !== null &&\n siblingData[field.name][1] !== null\n ) {\n siblingData[field.name] = {\n type: 'Point',\n coordinates: [\n parseFloat(siblingData[field.name][0]),\n parseFloat(siblingData[field.name][1]),\n ],\n }\n }\n\n break\n }\n\n case 'group': {\n if (typeof siblingData[field.name] !== 'object') siblingData[field.name] = {}\n if (typeof siblingDoc[field.name] !== 'object') siblingDoc[field.name] = {}\n if (typeof siblingDocWithLocales[field.name] !== 'object')\n siblingDocWithLocales[field.name] = {}\n\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData: siblingData[field.name] as JsonObject,\n siblingDoc: siblingDoc[field.name] as JsonObject,\n siblingDocWithLocales: siblingDocWithLocales[field.name] as JsonObject,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'array': {\n const rows = siblingData[field.name]\n\n if (Array.isArray(rows)) {\n const promises = []\n rows.forEach((row, i) => {\n promises.push(\n traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: [...fieldPath, i],\n req,\n schemaPath: fieldSchemaPath,\n siblingData: row as JsonObject,\n siblingDoc: getExistingRowDoc(row as JsonObject, siblingDoc[field.name]),\n siblingDocWithLocales: getExistingRowDoc(\n row as JsonObject,\n siblingDocWithLocales[field.name],\n ),\n skipValidation: skipValidationFromHere,\n }),\n )\n })\n\n await Promise.all(promises)\n }\n\n break\n }\n\n case 'blocks': {\n const rows = siblingData[field.name]\n\n if (Array.isArray(rows)) {\n const promises = []\n rows.forEach((row, i) => {\n const rowSiblingDoc = getExistingRowDoc(row as JsonObject, siblingDoc[field.name])\n const rowSiblingDocWithLocales = getExistingRowDoc(\n row as JsonObject,\n siblingDocWithLocales[field.name],\n )\n\n const blockTypeToMatch = (row as JsonObject).blockType || rowSiblingDoc.blockType\n const block = field.blocks.find((blockType) => blockType.slug === blockTypeToMatch)\n\n if (block) {\n promises.push(\n traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: block.fields,\n global,\n mergeLocaleActions,\n operation,\n path: [...fieldPath, i],\n req,\n schemaPath: fieldSchemaPath,\n siblingData: row as JsonObject,\n siblingDoc: rowSiblingDoc,\n siblingDocWithLocales: rowSiblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n }),\n )\n }\n })\n\n await Promise.all(promises)\n }\n\n break\n }\n\n case 'row':\n case 'collapsible': {\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData,\n siblingDoc,\n siblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'tab': {\n let tabSiblingData = siblingData\n let tabSiblingDoc = siblingDoc\n let tabSiblingDocWithLocales = siblingDocWithLocales\n\n if (tabHasName(field)) {\n if (typeof siblingData[field.name] !== 'object') siblingData[field.name] = {}\n if (typeof siblingDoc[field.name] !== 'object') siblingDoc[field.name] = {}\n if (typeof siblingDocWithLocales[field.name] !== 'object')\n siblingDocWithLocales[field.name] = {}\n\n tabSiblingData = siblingData[field.name] as JsonObject\n tabSiblingDoc = siblingDoc[field.name] as JsonObject\n tabSiblingDocWithLocales = siblingDocWithLocales[field.name] as JsonObject\n }\n\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData: tabSiblingData,\n siblingDoc: tabSiblingDoc,\n siblingDocWithLocales: tabSiblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'tabs': {\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData,\n siblingDoc,\n siblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'richText': {\n if (!field?.editor) {\n throw new MissingEditorProp(field) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n if (typeof field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n const editor: RichTextAdapter = field?.editor\n\n if (editor?.hooks?.beforeChange?.length) {\n await editor.hooks.beforeChange.reduce(async (priorHook, currentHook) => {\n await priorHook\n\n const hookedValue = await currentHook({\n collection,\n context,\n data,\n docWithLocales,\n duplicate,\n errors,\n field,\n global,\n mergeLocaleActions,\n operation,\n originalDoc: doc,\n path: fieldPath,\n previousSiblingDoc: siblingDoc,\n previousValue: siblingDoc[field.name],\n req,\n schemaPath: parentSchemaPath,\n siblingData,\n siblingDocWithLocales,\n skipValidation,\n value: siblingData[field.name],\n })\n\n if (hookedValue !== undefined) {\n siblingData[field.name] = hookedValue\n }\n }, Promise.resolve())\n }\n\n break\n }\n\n default: {\n break\n }\n }\n}\n"],"names":["MissingEditorProp","deepMergeWithSourceArrays","fieldAffectsData","tabHasName","getFieldPaths","beforeDuplicate","getExistingRowDoc","traverseFields","promise","id","collection","context","data","doc","docWithLocales","duplicate","errors","field","global","mergeLocaleActions","operation","parentPath","parentSchemaPath","req","siblingData","siblingDoc","siblingDocWithLocales","skipValidation","passesCondition","admin","condition","Boolean","user","skipValidationFromHere","localization","payload","config","defaultLocale","operationLocale","locale","path","fieldPath","schemaPath","fieldSchemaPath","localized","includes","type","name","hooks","beforeChange","reduce","priorHook","currentHook","hookedValue","originalDoc","previousSiblingDoc","previousValue","value","undefined","Promise","resolve","validate","valueToValidate","jsonError","JSON","parse","e","validationResult","preferences","fields","push","join","message","beforeDuplicateArgs","localeData","localeCodes","localizedValuesPromise","localizedValues","fieldValue","length","Object","keys","Array","isArray","coordinates","parseFloat","rows","promises","forEach","row","i","all","rowSiblingDoc","rowSiblingDocWithLocales","blockTypeToMatch","blockType","block","blocks","find","slug","tabSiblingData","tabSiblingDoc","tabSiblingDocWithLocales","tabs","map","tab","editor","Error"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/fields/hooks/beforeChange/promise.ts"],"sourcesContent":["import type { RichTextAdapter } from '../../../admin/RichText.js'\nimport type { SanitizedCollectionConfig } from '../../../collections/config/types.js'\nimport type { SanitizedGlobalConfig } from '../../../globals/config/types.js'\nimport type { JsonObject, Operation, PayloadRequest, RequestContext } from '../../../types/index.js'\nimport type { Field, FieldHookArgs, TabAsField, ValidateOptions } from '../../config/types.js'\n\nimport { MissingEditorProp } from '../../../errors/index.js'\nimport { deepMergeWithSourceArrays } from '../../../utilities/deepMerge.js'\nimport { fieldAffectsData, tabHasName } from '../../config/types.js'\nimport { getFieldPaths } from '../../getFieldPaths.js'\nimport { beforeDuplicate } from './beforeDuplicate.js'\nimport { getExistingRowDoc } from './getExistingRowDoc.js'\nimport { traverseFields } from './traverseFields.js'\n\ntype Args = {\n collection: SanitizedCollectionConfig | null\n context: RequestContext\n data: JsonObject\n doc: JsonObject\n docWithLocales: JsonObject\n duplicate: boolean\n errors: { field: string; message: string }[]\n field: Field | TabAsField\n global: SanitizedGlobalConfig | null\n id?: number | string\n mergeLocaleActions: (() => Promise<void>)[]\n operation: Operation\n /**\n * The parent's path.\n */\n parentPath: (number | string)[]\n /**\n * The parent's schemaPath (path without indexes).\n */\n parentSchemaPath: string[]\n req: PayloadRequest\n siblingData: JsonObject\n siblingDoc: JsonObject\n siblingDocWithLocales?: JsonObject\n skipValidation: boolean\n}\n\n// This function is responsible for the following actions, in order:\n// - Run condition\n// - Execute field hooks\n// - Validate data\n// - Transform data for storage\n// - beforeDuplicate hooks (if duplicate)\n// - Unflatten locales\n\nexport const promise = async ({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n field,\n global,\n mergeLocaleActions,\n operation,\n parentPath,\n parentSchemaPath,\n req,\n siblingData,\n siblingDoc,\n siblingDocWithLocales,\n skipValidation,\n}: Args): Promise<void> => {\n const passesCondition = field.admin?.condition\n ? Boolean(field.admin.condition(data, siblingData, { user: req.user }))\n : true\n let skipValidationFromHere = skipValidation || !passesCondition\n const { localization } = req.payload.config\n const defaultLocale = localization ? localization?.defaultLocale : 'en'\n const operationLocale = req.locale || defaultLocale\n\n const { path: fieldPath, schemaPath: fieldSchemaPath } = getFieldPaths({\n field,\n parentPath,\n parentSchemaPath,\n })\n\n if (fieldAffectsData(field)) {\n // skip validation if the field is localized and the incoming data is null\n if (field.localized && operationLocale !== defaultLocale) {\n if (['array', 'blocks'].includes(field.type) && siblingData[field.name] === null) {\n skipValidationFromHere = true\n }\n }\n\n // Execute hooks\n if (field.hooks?.beforeChange) {\n await field.hooks.beforeChange.reduce(async (priorHook, currentHook) => {\n await priorHook\n\n const hookedValue = await currentHook({\n collection,\n context,\n data,\n field,\n global,\n operation,\n originalDoc: doc,\n path: fieldPath,\n previousSiblingDoc: siblingDoc,\n previousValue: siblingDoc[field.name],\n req,\n schemaPath: parentSchemaPath,\n siblingData,\n siblingDocWithLocales,\n value: siblingData[field.name],\n })\n\n if (hookedValue !== undefined) {\n siblingData[field.name] = hookedValue\n }\n }, Promise.resolve())\n }\n\n // Validate\n if (!skipValidationFromHere && 'validate' in field && field.validate) {\n const valueToValidate = siblingData[field.name]\n let jsonError: object\n\n if (field.type === 'json' && typeof siblingData[field.name] === 'string') {\n try {\n JSON.parse(siblingData[field.name] as string)\n } catch (e) {\n jsonError = e\n }\n }\n\n const validationResult = await field.validate(valueToValidate, {\n ...field,\n id,\n collectionSlug: collection?.slug,\n data: deepMergeWithSourceArrays(doc, data),\n jsonError,\n operation,\n preferences: { fields: {} },\n previousValue: siblingDoc[field.name],\n req,\n siblingData: deepMergeWithSourceArrays(siblingDoc, siblingData),\n } as ValidateOptions<any, any, { jsonError: object }, any>)\n\n if (typeof validationResult === 'string') {\n errors.push({\n field: fieldPath.join('.'),\n message: validationResult,\n })\n }\n }\n\n const beforeDuplicateArgs: FieldHookArgs = {\n collection,\n context,\n data,\n field,\n global: undefined,\n path: fieldPath,\n previousSiblingDoc: siblingDoc,\n previousValue: siblingDoc[field.name],\n req,\n schemaPath: parentSchemaPath,\n siblingData,\n siblingDocWithLocales,\n value: siblingData[field.name],\n }\n\n // Push merge locale action if applicable\n if (localization && field.localized) {\n mergeLocaleActions.push(async () => {\n const localeData = await localization.localeCodes.reduce(\n async (localizedValuesPromise: Promise<JsonObject>, locale) => {\n const localizedValues = await localizedValuesPromise\n let fieldValue =\n locale === req.locale\n ? siblingData[field.name]\n : siblingDocWithLocales?.[field.name]?.[locale]\n\n if (duplicate && field.hooks?.beforeDuplicate?.length) {\n beforeDuplicateArgs.value = fieldValue\n fieldValue = await beforeDuplicate(beforeDuplicateArgs)\n }\n\n // const result = await localizedValues\n // update locale value if it's not undefined\n if (typeof fieldValue !== 'undefined') {\n return {\n ...localizedValues,\n [locale]: fieldValue,\n }\n }\n\n return localizedValuesPromise\n },\n Promise.resolve({}),\n )\n\n // If there are locales with data, set the data\n if (Object.keys(localeData).length > 0) {\n siblingData[field.name] = localeData\n }\n })\n } else if (duplicate && field.hooks?.beforeDuplicate?.length) {\n mergeLocaleActions.push(async () => {\n siblingData[field.name] = await beforeDuplicate(beforeDuplicateArgs)\n })\n }\n }\n\n switch (field.type) {\n case 'point': {\n // Transform point data for storage\n if (\n Array.isArray(siblingData[field.name]) &&\n siblingData[field.name][0] !== null &&\n siblingData[field.name][1] !== null\n ) {\n siblingData[field.name] = {\n type: 'Point',\n coordinates: [\n parseFloat(siblingData[field.name][0]),\n parseFloat(siblingData[field.name][1]),\n ],\n }\n }\n\n break\n }\n\n case 'group': {\n if (typeof siblingData[field.name] !== 'object') siblingData[field.name] = {}\n if (typeof siblingDoc[field.name] !== 'object') siblingDoc[field.name] = {}\n if (typeof siblingDocWithLocales[field.name] !== 'object')\n siblingDocWithLocales[field.name] = {}\n\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData: siblingData[field.name] as JsonObject,\n siblingDoc: siblingDoc[field.name] as JsonObject,\n siblingDocWithLocales: siblingDocWithLocales[field.name] as JsonObject,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'array': {\n const rows = siblingData[field.name]\n\n if (Array.isArray(rows)) {\n const promises = []\n rows.forEach((row, i) => {\n promises.push(\n traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: [...fieldPath, i],\n req,\n schemaPath: fieldSchemaPath,\n siblingData: row as JsonObject,\n siblingDoc: getExistingRowDoc(row as JsonObject, siblingDoc[field.name]),\n siblingDocWithLocales: getExistingRowDoc(\n row as JsonObject,\n siblingDocWithLocales[field.name],\n ),\n skipValidation: skipValidationFromHere,\n }),\n )\n })\n\n await Promise.all(promises)\n }\n\n break\n }\n\n case 'blocks': {\n const rows = siblingData[field.name]\n\n if (Array.isArray(rows)) {\n const promises = []\n rows.forEach((row, i) => {\n const rowSiblingDoc = getExistingRowDoc(row as JsonObject, siblingDoc[field.name])\n const rowSiblingDocWithLocales = getExistingRowDoc(\n row as JsonObject,\n siblingDocWithLocales[field.name],\n )\n\n const blockTypeToMatch = (row as JsonObject).blockType || rowSiblingDoc.blockType\n const block = field.blocks.find((blockType) => blockType.slug === blockTypeToMatch)\n\n if (block) {\n promises.push(\n traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: block.fields,\n global,\n mergeLocaleActions,\n operation,\n path: [...fieldPath, i],\n req,\n schemaPath: fieldSchemaPath,\n siblingData: row as JsonObject,\n siblingDoc: rowSiblingDoc,\n siblingDocWithLocales: rowSiblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n }),\n )\n }\n })\n\n await Promise.all(promises)\n }\n\n break\n }\n\n case 'row':\n case 'collapsible': {\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData,\n siblingDoc,\n siblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'tab': {\n let tabSiblingData = siblingData\n let tabSiblingDoc = siblingDoc\n let tabSiblingDocWithLocales = siblingDocWithLocales\n\n if (tabHasName(field)) {\n if (typeof siblingData[field.name] !== 'object') siblingData[field.name] = {}\n if (typeof siblingDoc[field.name] !== 'object') siblingDoc[field.name] = {}\n if (typeof siblingDocWithLocales[field.name] !== 'object')\n siblingDocWithLocales[field.name] = {}\n\n tabSiblingData = siblingData[field.name] as JsonObject\n tabSiblingDoc = siblingDoc[field.name] as JsonObject\n tabSiblingDocWithLocales = siblingDocWithLocales[field.name] as JsonObject\n }\n\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.fields,\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData: tabSiblingData,\n siblingDoc: tabSiblingDoc,\n siblingDocWithLocales: tabSiblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'tabs': {\n await traverseFields({\n id,\n collection,\n context,\n data,\n doc,\n docWithLocales,\n duplicate,\n errors,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n global,\n mergeLocaleActions,\n operation,\n path: fieldPath,\n req,\n schemaPath: fieldSchemaPath,\n siblingData,\n siblingDoc,\n siblingDocWithLocales,\n skipValidation: skipValidationFromHere,\n })\n\n break\n }\n\n case 'richText': {\n if (!field?.editor) {\n throw new MissingEditorProp(field) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n if (typeof field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n const editor: RichTextAdapter = field?.editor\n\n if (editor?.hooks?.beforeChange?.length) {\n await editor.hooks.beforeChange.reduce(async (priorHook, currentHook) => {\n await priorHook\n\n const hookedValue = await currentHook({\n collection,\n context,\n data,\n docWithLocales,\n duplicate,\n errors,\n field,\n global,\n mergeLocaleActions,\n operation,\n originalDoc: doc,\n path: fieldPath,\n previousSiblingDoc: siblingDoc,\n previousValue: siblingDoc[field.name],\n req,\n schemaPath: parentSchemaPath,\n siblingData,\n siblingDocWithLocales,\n skipValidation,\n value: siblingData[field.name],\n })\n\n if (hookedValue !== undefined) {\n siblingData[field.name] = hookedValue\n }\n }, Promise.resolve())\n }\n\n break\n }\n\n default: {\n break\n }\n }\n}\n"],"names":["MissingEditorProp","deepMergeWithSourceArrays","fieldAffectsData","tabHasName","getFieldPaths","beforeDuplicate","getExistingRowDoc","traverseFields","promise","id","collection","context","data","doc","docWithLocales","duplicate","errors","field","global","mergeLocaleActions","operation","parentPath","parentSchemaPath","req","siblingData","siblingDoc","siblingDocWithLocales","skipValidation","passesCondition","admin","condition","Boolean","user","skipValidationFromHere","localization","payload","config","defaultLocale","operationLocale","locale","path","fieldPath","schemaPath","fieldSchemaPath","localized","includes","type","name","hooks","beforeChange","reduce","priorHook","currentHook","hookedValue","originalDoc","previousSiblingDoc","previousValue","value","undefined","Promise","resolve","validate","valueToValidate","jsonError","JSON","parse","e","validationResult","collectionSlug","slug","preferences","fields","push","join","message","beforeDuplicateArgs","localeData","localeCodes","localizedValuesPromise","localizedValues","fieldValue","length","Object","keys","Array","isArray","coordinates","parseFloat","rows","promises","forEach","row","i","all","rowSiblingDoc","rowSiblingDocWithLocales","blockTypeToMatch","blockType","block","blocks","find","tabSiblingData","tabSiblingDoc","tabSiblingDocWithLocales","tabs","map","tab","editor","Error"],"mappings":"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"}