payload 3.0.0-beta.125 → 3.0.0-beta.126

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 (158) hide show
  1. package/dist/admin/RichText.d.ts +3 -1
  2. package/dist/admin/RichText.d.ts.map +1 -1
  3. package/dist/admin/RichText.js.map +1 -1
  4. package/dist/collections/operations/create.d.ts +2 -1
  5. package/dist/collections/operations/create.d.ts.map +1 -1
  6. package/dist/collections/operations/create.js +2 -1
  7. package/dist/collections/operations/create.js.map +1 -1
  8. package/dist/collections/operations/delete.d.ts +2 -1
  9. package/dist/collections/operations/delete.d.ts.map +1 -1
  10. package/dist/collections/operations/delete.js +2 -1
  11. package/dist/collections/operations/delete.js.map +1 -1
  12. package/dist/collections/operations/deleteByID.d.ts +2 -1
  13. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  14. package/dist/collections/operations/deleteByID.js +2 -1
  15. package/dist/collections/operations/deleteByID.js.map +1 -1
  16. package/dist/collections/operations/duplicate.d.ts +2 -1
  17. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  18. package/dist/collections/operations/duplicate.js +2 -1
  19. package/dist/collections/operations/duplicate.js.map +1 -1
  20. package/dist/collections/operations/find.d.ts +2 -1
  21. package/dist/collections/operations/find.d.ts.map +1 -1
  22. package/dist/collections/operations/find.js +2 -1
  23. package/dist/collections/operations/find.js.map +1 -1
  24. package/dist/collections/operations/findByID.d.ts +2 -1
  25. package/dist/collections/operations/findByID.d.ts.map +1 -1
  26. package/dist/collections/operations/findByID.js +2 -1
  27. package/dist/collections/operations/findByID.js.map +1 -1
  28. package/dist/collections/operations/findVersionByID.d.ts +2 -1
  29. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  30. package/dist/collections/operations/findVersionByID.js +2 -1
  31. package/dist/collections/operations/findVersionByID.js.map +1 -1
  32. package/dist/collections/operations/findVersions.d.ts +2 -1
  33. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  34. package/dist/collections/operations/findVersions.js +2 -1
  35. package/dist/collections/operations/findVersions.js.map +1 -1
  36. package/dist/collections/operations/local/create.d.ts +2 -1
  37. package/dist/collections/operations/local/create.d.ts.map +1 -1
  38. package/dist/collections/operations/local/create.js +2 -1
  39. package/dist/collections/operations/local/create.js.map +1 -1
  40. package/dist/collections/operations/local/delete.d.ts +2 -1
  41. package/dist/collections/operations/local/delete.d.ts.map +1 -1
  42. package/dist/collections/operations/local/delete.js +2 -1
  43. package/dist/collections/operations/local/delete.js.map +1 -1
  44. package/dist/collections/operations/local/duplicate.d.ts +2 -1
  45. package/dist/collections/operations/local/duplicate.d.ts.map +1 -1
  46. package/dist/collections/operations/local/duplicate.js +2 -1
  47. package/dist/collections/operations/local/duplicate.js.map +1 -1
  48. package/dist/collections/operations/local/find.d.ts +3 -2
  49. package/dist/collections/operations/local/find.d.ts.map +1 -1
  50. package/dist/collections/operations/local/find.js.map +1 -1
  51. package/dist/collections/operations/local/findByID.d.ts +3 -2
  52. package/dist/collections/operations/local/findByID.d.ts.map +1 -1
  53. package/dist/collections/operations/local/findByID.js +2 -1
  54. package/dist/collections/operations/local/findByID.js.map +1 -1
  55. package/dist/collections/operations/local/findVersionByID.d.ts +2 -1
  56. package/dist/collections/operations/local/findVersionByID.d.ts.map +1 -1
  57. package/dist/collections/operations/local/findVersionByID.js +2 -1
  58. package/dist/collections/operations/local/findVersionByID.js.map +1 -1
  59. package/dist/collections/operations/local/findVersions.d.ts +2 -1
  60. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  61. package/dist/collections/operations/local/findVersions.js +2 -1
  62. package/dist/collections/operations/local/findVersions.js.map +1 -1
  63. package/dist/collections/operations/local/restoreVersion.d.ts +2 -1
  64. package/dist/collections/operations/local/restoreVersion.d.ts.map +1 -1
  65. package/dist/collections/operations/local/restoreVersion.js +2 -1
  66. package/dist/collections/operations/local/restoreVersion.js.map +1 -1
  67. package/dist/collections/operations/local/update.d.ts +2 -1
  68. package/dist/collections/operations/local/update.d.ts.map +1 -1
  69. package/dist/collections/operations/local/update.js +2 -1
  70. package/dist/collections/operations/local/update.js.map +1 -1
  71. package/dist/collections/operations/restoreVersion.d.ts +2 -1
  72. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  73. package/dist/collections/operations/restoreVersion.js +2 -1
  74. package/dist/collections/operations/restoreVersion.js.map +1 -1
  75. package/dist/collections/operations/update.d.ts +2 -1
  76. package/dist/collections/operations/update.d.ts.map +1 -1
  77. package/dist/collections/operations/update.js +2 -1
  78. package/dist/collections/operations/update.js.map +1 -1
  79. package/dist/collections/operations/updateByID.d.ts +2 -1
  80. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  81. package/dist/collections/operations/updateByID.js +8 -6
  82. package/dist/collections/operations/updateByID.js.map +1 -1
  83. package/dist/database/sanitizeJoinQuery.d.ts +3 -3
  84. package/dist/database/sanitizeJoinQuery.d.ts.map +1 -1
  85. package/dist/fields/hooks/afterRead/index.d.ts +2 -1
  86. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  87. package/dist/fields/hooks/afterRead/index.js +2 -1
  88. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  89. package/dist/fields/hooks/afterRead/promise.d.ts +3 -2
  90. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  91. package/dist/fields/hooks/afterRead/promise.js +12 -1
  92. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  93. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts +3 -2
  94. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.d.ts.map +1 -1
  95. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js +7 -3
  96. package/dist/fields/hooks/afterRead/relationshipPopulationPromise.js.map +1 -1
  97. package/dist/fields/hooks/afterRead/traverseFields.d.ts +3 -2
  98. package/dist/fields/hooks/afterRead/traverseFields.d.ts.map +1 -1
  99. package/dist/fields/hooks/afterRead/traverseFields.js +2 -1
  100. package/dist/fields/hooks/afterRead/traverseFields.js.map +1 -1
  101. package/dist/globals/operations/findOne.d.ts +2 -1
  102. package/dist/globals/operations/findOne.d.ts.map +1 -1
  103. package/dist/globals/operations/findOne.js +2 -1
  104. package/dist/globals/operations/findOne.js.map +1 -1
  105. package/dist/globals/operations/findVersionByID.d.ts +2 -1
  106. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  107. package/dist/globals/operations/findVersionByID.js +2 -1
  108. package/dist/globals/operations/findVersionByID.js.map +1 -1
  109. package/dist/globals/operations/findVersions.d.ts +2 -1
  110. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  111. package/dist/globals/operations/findVersions.js +2 -1
  112. package/dist/globals/operations/findVersions.js.map +1 -1
  113. package/dist/globals/operations/local/findOne.d.ts +2 -1
  114. package/dist/globals/operations/local/findOne.d.ts.map +1 -1
  115. package/dist/globals/operations/local/findOne.js +2 -1
  116. package/dist/globals/operations/local/findOne.js.map +1 -1
  117. package/dist/globals/operations/local/findVersionByID.d.ts +2 -1
  118. package/dist/globals/operations/local/findVersionByID.d.ts.map +1 -1
  119. package/dist/globals/operations/local/findVersionByID.js +2 -1
  120. package/dist/globals/operations/local/findVersionByID.js.map +1 -1
  121. package/dist/globals/operations/local/findVersions.d.ts +2 -1
  122. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  123. package/dist/globals/operations/local/findVersions.js +2 -1
  124. package/dist/globals/operations/local/findVersions.js.map +1 -1
  125. package/dist/globals/operations/local/restoreVersion.d.ts +2 -1
  126. package/dist/globals/operations/local/restoreVersion.d.ts.map +1 -1
  127. package/dist/globals/operations/local/restoreVersion.js +2 -1
  128. package/dist/globals/operations/local/restoreVersion.js.map +1 -1
  129. package/dist/globals/operations/local/update.d.ts +2 -1
  130. package/dist/globals/operations/local/update.d.ts.map +1 -1
  131. package/dist/globals/operations/local/update.js +2 -1
  132. package/dist/globals/operations/local/update.js.map +1 -1
  133. package/dist/globals/operations/restoreVersion.d.ts +2 -1
  134. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  135. package/dist/globals/operations/restoreVersion.js +2 -1
  136. package/dist/globals/operations/restoreVersion.js.map +1 -1
  137. package/dist/globals/operations/update.d.ts +2 -1
  138. package/dist/globals/operations/update.d.ts.map +1 -1
  139. package/dist/globals/operations/update.js +2 -1
  140. package/dist/globals/operations/update.js.map +1 -1
  141. package/dist/index.d.ts +7 -0
  142. package/dist/index.d.ts.map +1 -1
  143. package/dist/index.js.map +1 -1
  144. package/dist/queues/config/jobsCollection.d.ts.map +1 -1
  145. package/dist/queues/config/jobsCollection.js +15 -13
  146. package/dist/queues/config/jobsCollection.js.map +1 -1
  147. package/dist/queues/config/types/index.d.ts +1 -1
  148. package/dist/queues/config/types/index.d.ts.map +1 -1
  149. package/dist/queues/config/types/index.js.map +1 -1
  150. package/dist/queues/operations/runJobs/index.js +1 -1
  151. package/dist/queues/operations/runJobs/index.js.map +1 -1
  152. package/dist/types/index.d.ts +5 -4
  153. package/dist/types/index.d.ts.map +1 -1
  154. package/dist/types/index.js.map +1 -1
  155. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  156. package/dist/utilities/configToJSONSchema.js +35 -0
  157. package/dist/utilities/configToJSONSchema.js.map +1 -1
  158. package/package.json +2 -2
@@ -6,7 +6,7 @@ import type { Config, PayloadComponent, SanitizedConfig } from '../config/types.
6
6
  import type { Field, FieldAffectingData, RichTextField, RichTextFieldClient, Validate } from '../fields/config/types.js';
7
7
  import type { SanitizedGlobalConfig } from '../globals/config/types.js';
8
8
  import type { RequestContext } from '../index.js';
9
- import type { JsonObject, Payload, PayloadRequest } from '../types/index.js';
9
+ import type { JsonObject, Payload, PayloadRequest, PopulateType } from '../types/index.js';
10
10
  import type { RichTextFieldClientProps } from './fields/RichText.js';
11
11
  import type { CreateMappedComponent } from './types.js';
12
12
  export type AfterReadRichTextHookArgs<TData extends TypeWithID = any, TValue = any, TSiblingData = any> = {
@@ -22,6 +22,7 @@ export type AfterReadRichTextHookArgs<TData extends TypeWithID = any, TValue = a
22
22
  /** A string relating to which operation the field type is currently executing within. */
23
23
  operation?: 'create' | 'delete' | 'read' | 'update';
24
24
  overrideAccess?: boolean;
25
+ populate?: PopulateType;
25
26
  populationPromises?: Promise<void>[];
26
27
  showHiddenFields?: boolean;
27
28
  triggerAccessControl?: boolean;
@@ -142,6 +143,7 @@ type RichTextAdapterBase<Value extends object = object, AdapterProps = any, Extr
142
143
  findMany: boolean;
143
144
  flattenLocales: boolean;
144
145
  overrideAccess?: boolean;
146
+ populateArg?: PopulateType;
145
147
  populationPromises: Promise<void>[];
146
148
  req: PayloadRequest;
147
149
  showHiddenFields: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../../src/admin/RichText.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RichText.d.ts","sourceRoot":"","sources":["../../src/admin/RichText.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/admin/RichText.ts"],"sourcesContent":["import type { GenericLanguages, I18n, I18nClient } from '@payloadcms/translations'\nimport type { JSONSchema4 } from 'json-schema'\n\nimport type { ImportMap } from '../bin/generateImportMap/index.js'\nimport type { SanitizedCollectionConfig, TypeWithID } from '../collections/config/types.js'\nimport type { Config, PayloadComponent, SanitizedConfig } from '../config/types.js'\nimport type {\n Field,\n FieldAffectingData,\n RichTextField,\n RichTextFieldClient,\n Validate,\n} from '../fields/config/types.js'\nimport type { SanitizedGlobalConfig } from '../globals/config/types.js'\nimport type { RequestContext } from '../index.js'\nimport type { JsonObject, Payload, PayloadRequest } from '../types/index.js'\nimport type { RichTextFieldClientProps } from './fields/RichText.js'\nimport type { CreateMappedComponent } from './types.js'\n\nexport type AfterReadRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n currentDepth?: number\n\n depth?: number\n\n draft?: boolean\n\n fallbackLocale?: string\n\n fieldPromises?: Promise<void>[]\n\n /** Boolean to denote if this hook is running against finding one, or finding many within the afterRead hook. */\n findMany?: boolean\n\n flattenLocales?: boolean\n\n locale?: string\n\n /** A string relating to which operation the field type is currently executing within. */\n operation?: 'create' | 'delete' | 'read' | 'update'\n\n overrideAccess?: boolean\n\n populationPromises?: Promise<void>[]\n showHiddenFields?: boolean\n triggerAccessControl?: boolean\n triggerHooks?: boolean\n}\n\nexport type AfterChangeRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /** A string relating to which operation the field type is currently executing within. */\n operation: 'create' | 'update'\n /** The document before changes were applied. */\n previousDoc?: TData\n /** The sibling data of the document before changes being applied. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes */\n previousValue?: TValue\n}\nexport type BeforeValidateRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /** A string relating to which operation the field type is currently executing within. */\n operation: 'create' | 'update'\n overrideAccess?: boolean\n /** The sibling data of the document before changes being applied. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes */\n previousValue?: TValue\n}\n\nexport type BeforeChangeRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /**\n * The original data with locales (not modified by any hooks). Only available in `beforeChange` and `beforeDuplicate` field hooks.\n */\n docWithLocales?: JsonObject\n\n duplicate?: boolean\n\n errors?: { field: string; message: string }[]\n /** Only available in `beforeChange` field hooks */\n mergeLocaleActions?: (() => Promise<void>)[]\n /** A string relating to which operation the field type is currently executing within. */\n operation?: 'create' | 'delete' | 'read' | 'update'\n /** The sibling data of the document before changes being applied. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes */\n previousValue?: TValue\n /**\n * The original siblingData with locales (not modified by any hooks).\n */\n siblingDocWithLocales?: JsonObject\n\n skipValidation?: boolean\n}\n\nexport type BaseRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /** The collection which the field belongs to. If the field belongs to a global, this will be null. */\n collection: null | SanitizedCollectionConfig\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 /** The global which the field belongs to. If the field belongs to a collection, this will be null. */\n global: null | SanitizedGlobalConfig\n\n /** The full original document in `update` operations. In the `afterChange` hook, this is the resulting document of the operation. */\n originalDoc?: TData\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\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 /** The value of the field. */\n value?: TValue\n}\n\nexport type AfterReadRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: AfterReadRichTextHookArgs<TData, TValue, TSiblingData> &\n BaseRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type AfterChangeRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: AfterChangeRichTextHookArgs<TData, TValue, TSiblingData> &\n BaseRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type BeforeChangeRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: BaseRichTextHookArgs<TData, TValue, TSiblingData> &\n BeforeChangeRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type BeforeValidateRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: BaseRichTextHookArgs<TData, TValue, TSiblingData> &\n BeforeValidateRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type RichTextHooks = {\n afterChange?: AfterChangeRichTextHook[]\n afterRead?: AfterReadRichTextHook[]\n beforeChange?: BeforeChangeRichTextHook[]\n beforeValidate?: BeforeValidateRichTextHook[]\n}\n\nexport type RichTextGenerateComponentMap = (args: {\n clientField: RichTextFieldClient\n createMappedComponent: CreateMappedComponent\n field: RichTextField\n i18n: I18nClient\n\n importMap: ImportMap\n payload: Payload\n schemaPath: string\n}) => Map<string, unknown>\n\ntype RichTextAdapterBase<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = {\n generateComponentMap: PayloadComponent<any, never>\n generateImportMap?: Config['admin']['importMap']['generators'][0]\n generateSchemaMap?: (args: {\n config: SanitizedConfig\n field: RichTextField\n i18n: I18n<any, any>\n schemaMap: Map<string, Field[]>\n schemaPath: string\n }) => Map<string, Field[]>\n /**\n * Like an afterRead hook, but runs only for the GraphQL resolver. For populating data, this should be used, as afterRead hooks do not have a depth in graphQL.\n *\n * To populate stuff / resolve field hooks, mutate the incoming populationPromises or fieldPromises array. They will then be awaited in the correct order within payload itself.\n * @param data\n */\n graphQLPopulationPromises?: (data: {\n context: RequestContext\n currentDepth?: number\n depth: number\n draft: boolean\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n fieldPromises: Promise<void>[]\n findMany: boolean\n flattenLocales: boolean\n overrideAccess?: boolean\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n siblingDoc: JsonObject\n }) => void\n hooks?: RichTextHooks\n i18n?: Partial<GenericLanguages>\n outputSchema?: ({\n collectionIDFieldTypes,\n config,\n field,\n interfaceNameDefinitions,\n isRequired,\n }: {\n collectionIDFieldTypes: { [key: string]: 'number' | 'string' }\n config?: SanitizedConfig\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n /**\n * Allows you to define new top-level interfaces that can be re-used in the output schema.\n */\n interfaceNameDefinitions: Map<string, JSONSchema4>\n isRequired: boolean\n }) => JSONSchema4\n validate: Validate<\n Value,\n Value,\n unknown,\n RichTextField<Value, AdapterProps, ExtraFieldProperties>\n >\n}\n\nexport type RichTextAdapter<\n Value extends object = any,\n AdapterProps = any,\n ExtraFieldProperties = any,\n> = {\n CellComponent: PayloadComponent<never>\n FieldComponent: PayloadComponent<never, RichTextFieldClientProps>\n} & RichTextAdapterBase<Value, AdapterProps, ExtraFieldProperties>\n\nexport type RichTextAdapterProvider<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = ({\n config,\n isRoot,\n parentIsLocalized,\n}: {\n config: SanitizedConfig\n /**\n * Whether or not this is the root richText editor, defined in the payload.config.ts.\n *\n * @default false\n */\n isRoot?: boolean\n parentIsLocalized: boolean\n}) =>\n | Promise<RichTextAdapter<Value, AdapterProps, ExtraFieldProperties>>\n | RichTextAdapter<Value, AdapterProps, ExtraFieldProperties>\n"],"names":[],"mappings":"AA2QA,WAmB8D"}
1
+ {"version":3,"sources":["../../src/admin/RichText.ts"],"sourcesContent":["import type { GenericLanguages, I18n, I18nClient } from '@payloadcms/translations'\nimport type { JSONSchema4 } from 'json-schema'\n\nimport type { ImportMap } from '../bin/generateImportMap/index.js'\nimport type { SanitizedCollectionConfig, TypeWithID } from '../collections/config/types.js'\nimport type { Config, PayloadComponent, SanitizedConfig } from '../config/types.js'\nimport type {\n Field,\n FieldAffectingData,\n RichTextField,\n RichTextFieldClient,\n Validate,\n} from '../fields/config/types.js'\nimport type { SanitizedGlobalConfig } from '../globals/config/types.js'\nimport type { RequestContext } from '../index.js'\nimport type { JsonObject, Payload, PayloadRequest, PopulateType } from '../types/index.js'\nimport type { RichTextFieldClientProps } from './fields/RichText.js'\nimport type { CreateMappedComponent } from './types.js'\n\nexport type AfterReadRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n currentDepth?: number\n\n depth?: number\n\n draft?: boolean\n\n fallbackLocale?: string\n fieldPromises?: Promise<void>[]\n\n /** Boolean to denote if this hook is running against finding one, or finding many within the afterRead hook. */\n findMany?: boolean\n\n flattenLocales?: boolean\n\n locale?: string\n\n /** A string relating to which operation the field type is currently executing within. */\n operation?: 'create' | 'delete' | 'read' | 'update'\n\n overrideAccess?: boolean\n\n populate?: PopulateType\n\n populationPromises?: Promise<void>[]\n showHiddenFields?: boolean\n triggerAccessControl?: boolean\n triggerHooks?: boolean\n}\n\nexport type AfterChangeRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /** A string relating to which operation the field type is currently executing within. */\n operation: 'create' | 'update'\n /** The document before changes were applied. */\n previousDoc?: TData\n /** The sibling data of the document before changes being applied. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes */\n previousValue?: TValue\n}\nexport type BeforeValidateRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /** A string relating to which operation the field type is currently executing within. */\n operation: 'create' | 'update'\n overrideAccess?: boolean\n /** The sibling data of the document before changes being applied. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes */\n previousValue?: TValue\n}\n\nexport type BeforeChangeRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /**\n * The original data with locales (not modified by any hooks). Only available in `beforeChange` and `beforeDuplicate` field hooks.\n */\n docWithLocales?: JsonObject\n\n duplicate?: boolean\n\n errors?: { field: string; message: string }[]\n /** Only available in `beforeChange` field hooks */\n mergeLocaleActions?: (() => Promise<void>)[]\n /** A string relating to which operation the field type is currently executing within. */\n operation?: 'create' | 'delete' | 'read' | 'update'\n /** The sibling data of the document before changes being applied. */\n previousSiblingDoc?: TData\n /** The previous value of the field, before changes */\n previousValue?: TValue\n /**\n * The original siblingData with locales (not modified by any hooks).\n */\n siblingDocWithLocales?: JsonObject\n\n skipValidation?: boolean\n}\n\nexport type BaseRichTextHookArgs<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = {\n /** The collection which the field belongs to. If the field belongs to a global, this will be null. */\n collection: null | SanitizedCollectionConfig\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 /** The global which the field belongs to. If the field belongs to a collection, this will be null. */\n global: null | SanitizedGlobalConfig\n\n /** The full original document in `update` operations. In the `afterChange` hook, this is the resulting document of the operation. */\n originalDoc?: TData\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\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 /** The value of the field. */\n value?: TValue\n}\n\nexport type AfterReadRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: AfterReadRichTextHookArgs<TData, TValue, TSiblingData> &\n BaseRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type AfterChangeRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: AfterChangeRichTextHookArgs<TData, TValue, TSiblingData> &\n BaseRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type BeforeChangeRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: BaseRichTextHookArgs<TData, TValue, TSiblingData> &\n BeforeChangeRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type BeforeValidateRichTextHook<\n TData extends TypeWithID = any,\n TValue = any,\n TSiblingData = any,\n> = (\n args: BaseRichTextHookArgs<TData, TValue, TSiblingData> &\n BeforeValidateRichTextHookArgs<TData, TValue, TSiblingData>,\n) => Promise<TValue> | TValue\n\nexport type RichTextHooks = {\n afterChange?: AfterChangeRichTextHook[]\n afterRead?: AfterReadRichTextHook[]\n beforeChange?: BeforeChangeRichTextHook[]\n beforeValidate?: BeforeValidateRichTextHook[]\n}\n\nexport type RichTextGenerateComponentMap = (args: {\n clientField: RichTextFieldClient\n createMappedComponent: CreateMappedComponent\n field: RichTextField\n i18n: I18nClient\n\n importMap: ImportMap\n payload: Payload\n schemaPath: string\n}) => Map<string, unknown>\n\ntype RichTextAdapterBase<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = {\n generateComponentMap: PayloadComponent<any, never>\n generateImportMap?: Config['admin']['importMap']['generators'][0]\n generateSchemaMap?: (args: {\n config: SanitizedConfig\n field: RichTextField\n i18n: I18n<any, any>\n schemaMap: Map<string, Field[]>\n schemaPath: string\n }) => Map<string, Field[]>\n /**\n * Like an afterRead hook, but runs only for the GraphQL resolver. For populating data, this should be used, as afterRead hooks do not have a depth in graphQL.\n *\n * To populate stuff / resolve field hooks, mutate the incoming populationPromises or fieldPromises array. They will then be awaited in the correct order within payload itself.\n * @param data\n */\n graphQLPopulationPromises?: (data: {\n context: RequestContext\n currentDepth?: number\n depth: number\n draft: boolean\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n fieldPromises: Promise<void>[]\n findMany: boolean\n flattenLocales: boolean\n overrideAccess?: boolean\n populateArg?: PopulateType\n populationPromises: Promise<void>[]\n req: PayloadRequest\n showHiddenFields: boolean\n siblingDoc: JsonObject\n }) => void\n hooks?: RichTextHooks\n i18n?: Partial<GenericLanguages>\n outputSchema?: ({\n collectionIDFieldTypes,\n config,\n field,\n interfaceNameDefinitions,\n isRequired,\n }: {\n collectionIDFieldTypes: { [key: string]: 'number' | 'string' }\n config?: SanitizedConfig\n field: RichTextField<Value, AdapterProps, ExtraFieldProperties>\n /**\n * Allows you to define new top-level interfaces that can be re-used in the output schema.\n */\n interfaceNameDefinitions: Map<string, JSONSchema4>\n isRequired: boolean\n }) => JSONSchema4\n validate: Validate<\n Value,\n Value,\n unknown,\n RichTextField<Value, AdapterProps, ExtraFieldProperties>\n >\n}\n\nexport type RichTextAdapter<\n Value extends object = any,\n AdapterProps = any,\n ExtraFieldProperties = any,\n> = {\n CellComponent: PayloadComponent<never>\n FieldComponent: PayloadComponent<never, RichTextFieldClientProps>\n} & RichTextAdapterBase<Value, AdapterProps, ExtraFieldProperties>\n\nexport type RichTextAdapterProvider<\n Value extends object = object,\n AdapterProps = any,\n ExtraFieldProperties = {},\n> = ({\n config,\n isRoot,\n parentIsLocalized,\n}: {\n config: SanitizedConfig\n /**\n * Whether or not this is the root richText editor, defined in the payload.config.ts.\n *\n * @default false\n */\n isRoot?: boolean\n parentIsLocalized: boolean\n}) =>\n | Promise<RichTextAdapter<Value, AdapterProps, ExtraFieldProperties>>\n | RichTextAdapter<Value, AdapterProps, ExtraFieldProperties>\n"],"names":[],"mappings":"AA6QA,WAmB8D"}
@@ -1,5 +1,5 @@
1
1
  import type { CollectionSlug } from '../../index.js';
2
- import type { PayloadRequest, SelectType, TransformCollectionWithSelect } from '../../types/index.js';
2
+ import type { PayloadRequest, PopulateType, SelectType, TransformCollectionWithSelect } from '../../types/index.js';
3
3
  import type { Collection, RequiredDataFromCollectionSlug, SelectFromCollectionSlug } from '../config/types.js';
4
4
  export type Arguments<TSlug extends CollectionSlug> = {
5
5
  autosave?: boolean;
@@ -11,6 +11,7 @@ export type Arguments<TSlug extends CollectionSlug> = {
11
11
  draft?: boolean;
12
12
  overrideAccess?: boolean;
13
13
  overwriteExistingFiles?: boolean;
14
+ populate?: PopulateType;
14
15
  req: PayloadRequest;
15
16
  select?: SelectType;
16
17
  showHiddenFields?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/create.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,gBAAgB,CAAA;AAChE,OAAO,KAAK,EAEV,cAAc,EACd,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAIV,UAAU,EACV,8BAA8B,EAC9B,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAoB3B,MAAM,MAAM,SAAS,CAAC,KAAK,SAAS,cAAc,IAAI;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,8BAA8B,CAAC,KAAK,CAAC,CAAA;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,CAAC,KAAK,CAAC,KAC7B,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CA6UvD,CAAA"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/create.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,gBAAgB,CAAA;AAChE,OAAO,KAAK,EAEV,cAAc,EACd,YAAY,EACZ,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAIV,UAAU,EACV,8BAA8B,EAC9B,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAoB3B,MAAM,MAAM,SAAS,CAAC,KAAK,SAAS,cAAc,IAAI;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,8BAA8B,CAAC,KAAK,CAAC,CAAA;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,CAAC,KAAK,CAAC,KAC7B,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CA+UvD,CAAA"}
@@ -40,7 +40,7 @@ export const createOperation = async (incomingArgs)=>{
40
40
  req: args.req
41
41
  }) || args;
42
42
  }, Promise.resolve());
43
- const { autosave = false, collection: { config: collectionConfig }, collection, depth, disableVerificationEmail, draft = false, overrideAccess, overwriteExistingFiles = false, req: { fallbackLocale, locale, payload, payload: { config, email } }, req, select, showHiddenFields } = args;
43
+ const { autosave = false, collection: { config: collectionConfig }, collection, depth, disableVerificationEmail, draft = false, overrideAccess, overwriteExistingFiles = false, populate, req: { fallbackLocale, locale, payload, payload: { config } }, req, select, showHiddenFields } = args;
44
44
  let { data } = args;
45
45
  const shouldSaveDraft = Boolean(draft && collectionConfig.versions.drafts);
46
46
  // /////////////////////////////////////
@@ -202,6 +202,7 @@ export const createOperation = async (incomingArgs)=>{
202
202
  global: null,
203
203
  locale,
204
204
  overrideAccess,
205
+ populate,
205
206
  req,
206
207
  select,
207
208
  showHiddenFields
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/create.ts"],"sourcesContent":["import crypto from 'crypto'\n\nimport type { CollectionSlug, JsonObject } from '../../index.js'\nimport type {\n Document,\n PayloadRequest,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type {\n AfterChangeHook,\n BeforeOperationHook,\n BeforeValidateHook,\n Collection,\n RequiredDataFromCollectionSlug,\n SelectFromCollectionSlug,\n} from '../config/types.js'\n\nimport { ensureUsernameOrEmail } from '../../auth/ensureUsernameOrEmail.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport { sendVerificationEmail } from '../../auth/sendVerificationEmail.js'\nimport { registerLocalStrategy } from '../../auth/strategies/local/register.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport { uploadFiles } from '../../uploads/uploadFiles.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport sanitizeInternalFields from '../../utilities/sanitizeInternalFields.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n collection: Collection\n data: RequiredDataFromCollectionSlug<TSlug>\n depth?: number\n disableTransaction?: boolean\n disableVerificationEmail?: boolean\n draft?: boolean\n overrideAccess?: boolean\n overwriteExistingFiles?: boolean\n req: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n}\n\nexport const createOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug>,\n>(\n incomingArgs: Arguments<TSlug>,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n ensureUsernameOrEmail<TSlug>({\n authOptions: args.collection.config.auth,\n collectionSlug: args.collection.config.slug,\n data: args.data,\n operation: 'create',\n req: args.req,\n })\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'create',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n autosave = false,\n collection: { config: collectionConfig },\n collection,\n depth,\n disableVerificationEmail,\n draft = false,\n overrideAccess,\n overwriteExistingFiles = false,\n req: {\n fallbackLocale,\n locale,\n payload,\n payload: { config, email },\n },\n req,\n select,\n showHiddenFields,\n } = args\n\n let { data } = args\n\n const shouldSaveDraft = Boolean(draft && collectionConfig.versions.drafts)\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ data, req }, collectionConfig.access.create)\n }\n\n // /////////////////////////////////////\n // Custom id\n // /////////////////////////////////////\n\n if (payload.collections[collectionConfig.slug].customIDType) {\n data = {\n _id: data.id,\n ...data,\n }\n }\n\n // /////////////////////////////////////\n // Generate data for all files and sizes\n // /////////////////////////////////////\n\n const { data: newFileData, files: filesToUpload } = await generateFileData({\n collection,\n config,\n data,\n operation: 'create',\n overwriteExistingFiles,\n req,\n throwOnMissingFile:\n !shouldSaveDraft && collection.config.upload.filesRequiredOnCreate !== false,\n })\n\n data = newFileData\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n data = await beforeValidate({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: {},\n global: null,\n operation: 'create',\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collections\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(\n async (priorHook: BeforeValidateHook | Promise<void>, hook: BeforeValidateHook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'create',\n req,\n })) || data\n },\n Promise.resolve(),\n )\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'create',\n req,\n })) || data\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n const resultWithLocales = await beforeChange<JsonObject>({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: {},\n docWithLocales: {},\n global: null,\n operation: 'create',\n req,\n skipValidation:\n shouldSaveDraft &&\n collectionConfig.versions.drafts &&\n !collectionConfig.versions.drafts.validate,\n })\n\n // /////////////////////////////////////\n // Write files to local storage\n // /////////////////////////////////////\n\n if (!collectionConfig.upload.disableLocalStorage) {\n await uploadFiles(payload, filesToUpload, req)\n }\n\n // /////////////////////////////////////\n // Create\n // /////////////////////////////////////\n\n let doc\n\n if (collectionConfig.auth && !collectionConfig.auth.disableLocalStrategy) {\n if (collectionConfig.auth.verify) {\n resultWithLocales._verified = Boolean(resultWithLocales._verified) || false\n resultWithLocales._verificationToken = crypto.randomBytes(20).toString('hex')\n }\n\n doc = await registerLocalStrategy({\n collection: collectionConfig,\n doc: resultWithLocales,\n password: data.password as string,\n payload: req.payload,\n req,\n select,\n })\n } else {\n doc = await payload.db.create({\n collection: collectionConfig.slug,\n data: resultWithLocales,\n req,\n select,\n })\n }\n\n const verificationToken = doc._verificationToken\n let result: Document = sanitizeInternalFields(doc)\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await saveVersion({\n id: result.id,\n autosave,\n collection: collectionConfig,\n docWithLocales: result,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Send verification email if applicable\n // /////////////////////////////////////\n\n if (collectionConfig.auth && collectionConfig.auth.verify && result.email) {\n await sendVerificationEmail({\n collection: { config: collectionConfig },\n config: payload.config,\n disableEmail: disableVerificationEmail,\n email: payload.email,\n req,\n token: verificationToken,\n user: result,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n select,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: result,\n global: null,\n operation: 'create',\n previousDoc: {},\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(\n async (priorHook: AfterChangeHook | Promise<void>, hook: AfterChangeHook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation: 'create',\n previousDoc: {},\n req: args.req,\n })) || result\n },\n Promise.resolve(),\n )\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<TSlug>({\n args,\n collection: collectionConfig,\n operation: 'create',\n result,\n })\n\n await unlinkTempFiles({ collectionConfig, config, req })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["crypto","ensureUsernameOrEmail","executeAccess","sendVerificationEmail","registerLocalStrategy","afterChange","afterRead","beforeChange","beforeValidate","generateFileData","unlinkTempFiles","uploadFiles","commitTransaction","initTransaction","killTransaction","sanitizeInternalFields","saveVersion","buildAfterOperation","createOperation","incomingArgs","args","shouldCommit","disableTransaction","req","authOptions","collection","config","auth","collectionSlug","slug","data","operation","hooks","beforeOperation","reduce","priorHook","hook","context","Promise","resolve","autosave","collectionConfig","depth","disableVerificationEmail","draft","overrideAccess","overwriteExistingFiles","fallbackLocale","locale","payload","email","select","showHiddenFields","shouldSaveDraft","Boolean","versions","drafts","access","create","collections","customIDType","_id","id","newFileData","files","filesToUpload","throwOnMissingFile","upload","filesRequiredOnCreate","doc","global","resultWithLocales","docWithLocales","skipValidation","validate","disableLocalStorage","disableLocalStrategy","verify","_verified","_verificationToken","randomBytes","toString","password","db","verificationToken","result","disableEmail","token","user","previousDoc","error"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/create.ts"],"sourcesContent":["import crypto from 'crypto'\n\nimport type { CollectionSlug, JsonObject } from '../../index.js'\nimport type {\n Document,\n PayloadRequest,\n PopulateType,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type {\n AfterChangeHook,\n BeforeOperationHook,\n BeforeValidateHook,\n Collection,\n RequiredDataFromCollectionSlug,\n SelectFromCollectionSlug,\n} from '../config/types.js'\n\nimport { ensureUsernameOrEmail } from '../../auth/ensureUsernameOrEmail.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport { sendVerificationEmail } from '../../auth/sendVerificationEmail.js'\nimport { registerLocalStrategy } from '../../auth/strategies/local/register.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport { uploadFiles } from '../../uploads/uploadFiles.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport sanitizeInternalFields from '../../utilities/sanitizeInternalFields.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n collection: Collection\n data: RequiredDataFromCollectionSlug<TSlug>\n depth?: number\n disableTransaction?: boolean\n disableVerificationEmail?: boolean\n draft?: boolean\n overrideAccess?: boolean\n overwriteExistingFiles?: boolean\n populate?: PopulateType\n req: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n}\n\nexport const createOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug>,\n>(\n incomingArgs: Arguments<TSlug>,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n ensureUsernameOrEmail<TSlug>({\n authOptions: args.collection.config.auth,\n collectionSlug: args.collection.config.slug,\n data: args.data,\n operation: 'create',\n req: args.req,\n })\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'create',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n autosave = false,\n collection: { config: collectionConfig },\n collection,\n depth,\n disableVerificationEmail,\n draft = false,\n overrideAccess,\n overwriteExistingFiles = false,\n populate,\n req: {\n fallbackLocale,\n locale,\n payload,\n payload: { config },\n },\n req,\n select,\n showHiddenFields,\n } = args\n\n let { data } = args\n\n const shouldSaveDraft = Boolean(draft && collectionConfig.versions.drafts)\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ data, req }, collectionConfig.access.create)\n }\n\n // /////////////////////////////////////\n // Custom id\n // /////////////////////////////////////\n\n if (payload.collections[collectionConfig.slug].customIDType) {\n data = {\n _id: data.id,\n ...data,\n }\n }\n\n // /////////////////////////////////////\n // Generate data for all files and sizes\n // /////////////////////////////////////\n\n const { data: newFileData, files: filesToUpload } = await generateFileData({\n collection,\n config,\n data,\n operation: 'create',\n overwriteExistingFiles,\n req,\n throwOnMissingFile:\n !shouldSaveDraft && collection.config.upload.filesRequiredOnCreate !== false,\n })\n\n data = newFileData\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n data = await beforeValidate({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: {},\n global: null,\n operation: 'create',\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collections\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(\n async (priorHook: BeforeValidateHook | Promise<void>, hook: BeforeValidateHook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'create',\n req,\n })) || data\n },\n Promise.resolve(),\n )\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'create',\n req,\n })) || data\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n const resultWithLocales = await beforeChange<JsonObject>({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: {},\n docWithLocales: {},\n global: null,\n operation: 'create',\n req,\n skipValidation:\n shouldSaveDraft &&\n collectionConfig.versions.drafts &&\n !collectionConfig.versions.drafts.validate,\n })\n\n // /////////////////////////////////////\n // Write files to local storage\n // /////////////////////////////////////\n\n if (!collectionConfig.upload.disableLocalStorage) {\n await uploadFiles(payload, filesToUpload, req)\n }\n\n // /////////////////////////////////////\n // Create\n // /////////////////////////////////////\n\n let doc\n\n if (collectionConfig.auth && !collectionConfig.auth.disableLocalStrategy) {\n if (collectionConfig.auth.verify) {\n resultWithLocales._verified = Boolean(resultWithLocales._verified) || false\n resultWithLocales._verificationToken = crypto.randomBytes(20).toString('hex')\n }\n\n doc = await registerLocalStrategy({\n collection: collectionConfig,\n doc: resultWithLocales,\n password: data.password as string,\n payload: req.payload,\n req,\n select,\n })\n } else {\n doc = await payload.db.create({\n collection: collectionConfig.slug,\n data: resultWithLocales,\n req,\n select,\n })\n }\n\n const verificationToken = doc._verificationToken\n let result: Document = sanitizeInternalFields(doc)\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await saveVersion({\n id: result.id,\n autosave,\n collection: collectionConfig,\n docWithLocales: result,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Send verification email if applicable\n // /////////////////////////////////////\n\n if (collectionConfig.auth && collectionConfig.auth.verify && result.email) {\n await sendVerificationEmail({\n collection: { config: collectionConfig },\n config: payload.config,\n disableEmail: disableVerificationEmail,\n email: payload.email,\n req,\n token: verificationToken,\n user: result,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n populate,\n req,\n select,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: result,\n global: null,\n operation: 'create',\n previousDoc: {},\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(\n async (priorHook: AfterChangeHook | Promise<void>, hook: AfterChangeHook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation: 'create',\n previousDoc: {},\n req: args.req,\n })) || result\n },\n Promise.resolve(),\n )\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation<TSlug>({\n args,\n collection: collectionConfig,\n operation: 'create',\n result,\n })\n\n await unlinkTempFiles({ collectionConfig, config, req })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["crypto","ensureUsernameOrEmail","executeAccess","sendVerificationEmail","registerLocalStrategy","afterChange","afterRead","beforeChange","beforeValidate","generateFileData","unlinkTempFiles","uploadFiles","commitTransaction","initTransaction","killTransaction","sanitizeInternalFields","saveVersion","buildAfterOperation","createOperation","incomingArgs","args","shouldCommit","disableTransaction","req","authOptions","collection","config","auth","collectionSlug","slug","data","operation","hooks","beforeOperation","reduce","priorHook","hook","context","Promise","resolve","autosave","collectionConfig","depth","disableVerificationEmail","draft","overrideAccess","overwriteExistingFiles","populate","fallbackLocale","locale","payload","select","showHiddenFields","shouldSaveDraft","Boolean","versions","drafts","access","create","collections","customIDType","_id","id","newFileData","files","filesToUpload","throwOnMissingFile","upload","filesRequiredOnCreate","doc","global","resultWithLocales","docWithLocales","skipValidation","validate","disableLocalStorage","disableLocalStrategy","verify","_verified","_verificationToken","randomBytes","toString","password","db","verificationToken","result","email","disableEmail","token","user","previousDoc","error"],"mappings":"AAAA,OAAOA,YAAY,SAAQ;AAmB3B,SAASC,qBAAqB,QAAQ,sCAAqC;AAC3E,OAAOC,mBAAmB,8BAA6B;AACvD,SAASC,qBAAqB,QAAQ,sCAAqC;AAC3E,SAASC,qBAAqB,QAAQ,0CAAyC;AAC/E,SAASC,WAAW,QAAQ,0CAAyC;AACrE,SAASC,SAAS,QAAQ,wCAAuC;AACjE,SAASC,YAAY,QAAQ,2CAA0C;AACvE,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,gBAAgB,QAAQ,oCAAmC;AACpE,SAASC,eAAe,QAAQ,mCAAkC;AAClE,SAASC,WAAW,QAAQ,+BAA8B;AAC1D,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,OAAOC,4BAA4B,4CAA2C;AAC9E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,SAASC,mBAAmB,QAAQ,aAAY;AAkBhD,OAAO,MAAMC,kBAAkB,OAI7BC;IAEA,IAAIC,OAAOD;IAEX,IAAI;QACF,MAAME,eAAe,CAACD,KAAKE,kBAAkB,IAAK,MAAMT,gBAAgBO,KAAKG,GAAG;QAEhFtB,sBAA6B;YAC3BuB,aAAaJ,KAAKK,UAAU,CAACC,MAAM,CAACC,IAAI;YACxCC,gBAAgBR,KAAKK,UAAU,CAACC,MAAM,CAACG,IAAI;YAC3CC,MAAMV,KAAKU,IAAI;YACfC,WAAW;YACXR,KAAKH,KAAKG,GAAG;QACf;QAEA,wCAAwC;QACxC,+BAA+B;QAC/B,wCAAwC;QAExC,MAAMH,KAAKK,UAAU,CAACC,MAAM,CAACM,KAAK,CAACC,eAAe,CAACC,MAAM,CACvD,OAAOC,WAAgDC;YACrD,MAAMD;YAENf,OACE,AAAC,MAAMgB,KAAK;gBACVhB;gBACAK,YAAYL,KAAKK,UAAU,CAACC,MAAM;gBAClCW,SAASjB,KAAKG,GAAG,CAACc,OAAO;gBACzBN,WAAW;gBACXR,KAAKH,KAAKG,GAAG;YACf,MAAOH;QACX,GACAkB,QAAQC,OAAO;QAGjB,MAAM,EACJC,WAAW,KAAK,EAChBf,YAAY,EAAEC,QAAQe,gBAAgB,EAAE,EACxChB,UAAU,EACViB,KAAK,EACLC,wBAAwB,EACxBC,QAAQ,KAAK,EACbC,cAAc,EACdC,yBAAyB,KAAK,EAC9BC,QAAQ,EACRxB,KAAK,EACHyB,cAAc,EACdC,MAAM,EACNC,OAAO,EACPA,SAAS,EAAExB,MAAM,EAAE,EACpB,EACDH,GAAG,EACH4B,MAAM,EACNC,gBAAgB,EACjB,GAAGhC;QAEJ,IAAI,EAAEU,IAAI,EAAE,GAAGV;QAEf,MAAMiC,kBAAkBC,QAAQV,SAASH,iBAAiBc,QAAQ,CAACC,MAAM;QAEzE,wCAAwC;QACxC,SAAS;QACT,wCAAwC;QAExC,IAAI,CAACX,gBAAgB;YACnB,MAAM3C,cAAc;gBAAE4B;gBAAMP;YAAI,GAAGkB,iBAAiBgB,MAAM,CAACC,MAAM;QACnE;QAEA,wCAAwC;QACxC,YAAY;QACZ,wCAAwC;QAExC,IAAIR,QAAQS,WAAW,CAAClB,iBAAiBZ,IAAI,CAAC,CAAC+B,YAAY,EAAE;YAC3D9B,OAAO;gBACL+B,KAAK/B,KAAKgC,EAAE;gBACZ,GAAGhC,IAAI;YACT;QACF;QAEA,wCAAwC;QACxC,wCAAwC;QACxC,wCAAwC;QAExC,MAAM,EAAEA,MAAMiC,WAAW,EAAEC,OAAOC,aAAa,EAAE,GAAG,MAAMxD,iBAAiB;YACzEgB;YACAC;YACAI;YACAC,WAAW;YACXe;YACAvB;YACA2C,oBACE,CAACb,mBAAmB5B,WAAWC,MAAM,CAACyC,MAAM,CAACC,qBAAqB,KAAK;QAC3E;QAEAtC,OAAOiC;QAEP,wCAAwC;QACxC,0BAA0B;QAC1B,wCAAwC;QAExCjC,OAAO,MAAMtB,eAAe;YAC1BiB,YAAYgB;YACZJ,SAASd,IAAIc,OAAO;YACpBP;YACAuC,KAAK,CAAC;YACNC,QAAQ;YACRvC,WAAW;YACXc;YACAtB;QACF;QAEA,wCAAwC;QACxC,+BAA+B;QAC/B,wCAAwC;QAExC,MAAMkB,iBAAiBT,KAAK,CAACxB,cAAc,CAAC0B,MAAM,CAChD,OAAOC,WAA+CC;YACpD,MAAMD;YAENL,OACE,AAAC,MAAMM,KAAK;gBACVX,YAAYgB;gBACZJ,SAASd,IAAIc,OAAO;gBACpBP;gBACAC,WAAW;gBACXR;YACF,MAAOO;QACX,GACAQ,QAAQC,OAAO;QAGjB,wCAAwC;QACxC,4BAA4B;QAC5B,wCAAwC;QAExC,MAAME,iBAAiBT,KAAK,CAACzB,YAAY,CAAC2B,MAAM,CAAC,OAAOC,WAAWC;YACjE,MAAMD;YAENL,OACE,AAAC,MAAMM,KAAK;gBACVX,YAAYgB;gBACZJ,SAASd,IAAIc,OAAO;gBACpBP;gBACAC,WAAW;gBACXR;YACF,MAAOO;QACX,GAAGQ,QAAQC,OAAO;QAElB,wCAAwC;QACxC,wBAAwB;QACxB,wCAAwC;QAExC,MAAMgC,oBAAoB,MAAMhE,aAAyB;YACvDkB,YAAYgB;YACZJ,SAASd,IAAIc,OAAO;YACpBP;YACAuC,KAAK,CAAC;YACNG,gBAAgB,CAAC;YACjBF,QAAQ;YACRvC,WAAW;YACXR;YACAkD,gBACEpB,mBACAZ,iBAAiBc,QAAQ,CAACC,MAAM,IAChC,CAACf,iBAAiBc,QAAQ,CAACC,MAAM,CAACkB,QAAQ;QAC9C;QAEA,wCAAwC;QACxC,+BAA+B;QAC/B,wCAAwC;QAExC,IAAI,CAACjC,iBAAiB0B,MAAM,CAACQ,mBAAmB,EAAE;YAChD,MAAMhE,YAAYuC,SAASe,eAAe1C;QAC5C;QAEA,wCAAwC;QACxC,SAAS;QACT,wCAAwC;QAExC,IAAI8C;QAEJ,IAAI5B,iBAAiBd,IAAI,IAAI,CAACc,iBAAiBd,IAAI,CAACiD,oBAAoB,EAAE;YACxE,IAAInC,iBAAiBd,IAAI,CAACkD,MAAM,EAAE;gBAChCN,kBAAkBO,SAAS,GAAGxB,QAAQiB,kBAAkBO,SAAS,KAAK;gBACtEP,kBAAkBQ,kBAAkB,GAAG/E,OAAOgF,WAAW,CAAC,IAAIC,QAAQ,CAAC;YACzE;YAEAZ,MAAM,MAAMjE,sBAAsB;gBAChCqB,YAAYgB;gBACZ4B,KAAKE;gBACLW,UAAUpD,KAAKoD,QAAQ;gBACvBhC,SAAS3B,IAAI2B,OAAO;gBACpB3B;gBACA4B;YACF;QACF,OAAO;YACLkB,MAAM,MAAMnB,QAAQiC,EAAE,CAACzB,MAAM,CAAC;gBAC5BjC,YAAYgB,iBAAiBZ,IAAI;gBACjCC,MAAMyC;gBACNhD;gBACA4B;YACF;QACF;QAEA,MAAMiC,oBAAoBf,IAAIU,kBAAkB;QAChD,IAAIM,SAAmBtE,uBAAuBsD;QAE9C,wCAAwC;QACxC,iBAAiB;QACjB,wCAAwC;QAExC,IAAI5B,iBAAiBc,QAAQ,EAAE;YAC7B,MAAMvC,YAAY;gBAChB8C,IAAIuB,OAAOvB,EAAE;gBACbtB;gBACAf,YAAYgB;gBACZ+B,gBAAgBa;gBAChBnC;gBACA3B;YACF;QACF;QAEA,wCAAwC;QACxC,wCAAwC;QACxC,wCAAwC;QAExC,IAAIkB,iBAAiBd,IAAI,IAAIc,iBAAiBd,IAAI,CAACkD,MAAM,IAAIQ,OAAOC,KAAK,EAAE;YACzE,MAAMnF,sBAAsB;gBAC1BsB,YAAY;oBAAEC,QAAQe;gBAAiB;gBACvCf,QAAQwB,QAAQxB,MAAM;gBACtB6D,cAAc5C;gBACd2C,OAAOpC,QAAQoC,KAAK;gBACpB/D;gBACAiE,OAAOJ;gBACPK,MAAMJ;YACR;QACF;QAEA,wCAAwC;QACxC,qBAAqB;QACrB,wCAAwC;QAExCA,SAAS,MAAM/E,UAAU;YACvBmB,YAAYgB;YACZJ,SAASd,IAAIc,OAAO;YACpBK;YACA2B,KAAKgB;YACLzC;YACAI;YACAsB,QAAQ;YACRrB;YACAJ;YACAE;YACAxB;YACA4B;YACAC;QACF;QAEA,wCAAwC;QACxC,yBAAyB;QACzB,wCAAwC;QAExC,MAAMX,iBAAiBT,KAAK,CAAC1B,SAAS,CAAC4B,MAAM,CAAC,OAAOC,WAAWC;YAC9D,MAAMD;YAENkD,SACE,AAAC,MAAMjD,KAAK;gBACVX,YAAYgB;gBACZJ,SAASd,IAAIc,OAAO;gBACpBgC,KAAKgB;gBACL9D;YACF,MAAO8D;QACX,GAAG/C,QAAQC,OAAO;QAElB,wCAAwC;QACxC,uBAAuB;QACvB,wCAAwC;QAExC8C,SAAS,MAAMhF,YAAY;YACzBoB,YAAYgB;YACZJ,SAASd,IAAIc,OAAO;YACpBP;YACAuC,KAAKgB;YACLf,QAAQ;YACRvC,WAAW;YACX2D,aAAa,CAAC;YACdnE;QACF;QAEA,wCAAwC;QACxC,2BAA2B;QAC3B,wCAAwC;QAExC,MAAMkB,iBAAiBT,KAAK,CAAC3B,WAAW,CAAC6B,MAAM,CAC7C,OAAOC,WAA4CC;YACjD,MAAMD;YAENkD,SACE,AAAC,MAAMjD,KAAK;gBACVX,YAAYgB;gBACZJ,SAASd,IAAIc,OAAO;gBACpBgC,KAAKgB;gBACLtD,WAAW;gBACX2D,aAAa,CAAC;gBACdnE,KAAKH,KAAKG,GAAG;YACf,MAAO8D;QACX,GACA/C,QAAQC,OAAO;QAGjB,wCAAwC;QACxC,8BAA8B;QAC9B,wCAAwC;QAExC8C,SAAS,MAAMpE,oBAA2B;YACxCG;YACAK,YAAYgB;YACZV,WAAW;YACXsD;QACF;QAEA,MAAM3E,gBAAgB;YAAE+B;YAAkBf;YAAQH;QAAI;QAEtD,wCAAwC;QACxC,iBAAiB;QACjB,wCAAwC;QAExC,IAAIF,cAAc;YAChB,MAAMT,kBAAkBW;QAC1B;QAEA,OAAO8D;IACT,EAAE,OAAOM,OAAgB;QACvB,MAAM7E,gBAAgBM,KAAKG,GAAG;QAC9B,MAAMoE;IACR;AACF,EAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { CollectionSlug } from '../../index.js';
2
- import type { PayloadRequest, SelectType, Where } from '../../types/index.js';
2
+ import type { PayloadRequest, PopulateType, SelectType, Where } from '../../types/index.js';
3
3
  import type { BulkOperationResult, Collection, SelectFromCollectionSlug } from '../config/types.js';
4
4
  export type Arguments = {
5
5
  collection: Collection;
@@ -7,6 +7,7 @@ export type Arguments = {
7
7
  disableTransaction?: boolean;
8
8
  overrideAccess?: boolean;
9
9
  overrideLock?: boolean;
10
+ populate?: PopulateType;
10
11
  req: PayloadRequest;
11
12
  select?: SelectType;
12
13
  showHiddenFields?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/delete.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC7E,OAAO,KAAK,EAEV,mBAAmB,EACnB,UAAU,EAEV,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAgB3B,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,KACtB,OAAO,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CA2P7C,CAAA"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/delete.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC3F,OAAO,KAAK,EAEV,mBAAmB,EACnB,UAAU,EAEV,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAgB3B,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,KACtB,OAAO,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CA6P7C,CAAA"}
@@ -29,7 +29,7 @@ export const deleteOperation = async (incomingArgs)=>{
29
29
  req: args.req
30
30
  }) || args;
31
31
  }, Promise.resolve());
32
- const { collection: { config: collectionConfig }, depth, overrideAccess, overrideLock, req: { fallbackLocale, locale, payload: { config }, payload }, req, select, showHiddenFields, where } = args;
32
+ const { collection: { config: collectionConfig }, depth, overrideAccess, overrideLock, populate, req: { fallbackLocale, locale, payload: { config }, payload }, req, select, showHiddenFields, where } = args;
33
33
  if (!where) {
34
34
  throw new APIError("Missing 'where' query of documents to delete.", httpStatus.BAD_REQUEST);
35
35
  }
@@ -129,6 +129,7 @@ export const deleteOperation = async (incomingArgs)=>{
129
129
  global: null,
130
130
  locale,
131
131
  overrideAccess,
132
+ populate,
132
133
  req,
133
134
  select,
134
135
  showHiddenFields
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/delete.ts"],"sourcesContent":["import httpStatus from 'http-status'\n\nimport type { AccessResult } from '../../config/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequest, SelectType, Where } from '../../types/index.js'\nimport type {\n BeforeOperationHook,\n BulkOperationResult,\n Collection,\n DataFromCollectionSlug,\n SelectFromCollectionSlug,\n} from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { validateQueryPaths } from '../../database/queryValidation/validateQueryPaths.js'\nimport { APIError } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { deleteUserPreferences } from '../../preferences/deleteUserPreferences.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { checkDocumentLockStatus } from '../../utilities/checkDocumentLockStatus.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { deleteCollectionVersions } from '../../versions/deleteCollectionVersions.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n disableTransaction?: boolean\n overrideAccess?: boolean\n overrideLock?: boolean\n req: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n where: Where\n}\n\nexport const deleteOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug>,\n>(\n incomingArgs: Arguments,\n): Promise<BulkOperationResult<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'delete',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n collection: { config: collectionConfig },\n depth,\n overrideAccess,\n overrideLock,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select,\n showHiddenFields,\n where,\n } = args\n\n if (!where) {\n throw new APIError(\"Missing 'where' query of documents to delete.\", httpStatus.BAD_REQUEST)\n }\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ req }, collectionConfig.access.delete)\n }\n\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n const fullWhere = combineQueries(where, accessResult)\n\n // /////////////////////////////////////\n // Retrieve documents\n // /////////////////////////////////////\n\n const { docs } = await payload.db.find<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n locale,\n req,\n select,\n where: fullWhere,\n })\n\n const errors = []\n\n const promises = docs.map(async (doc) => {\n let result\n\n const { id } = doc\n\n try {\n // /////////////////////////////////////\n // Handle potentially locked documents\n // /////////////////////////////////////\n\n await checkDocumentLockStatus({\n id,\n collectionSlug: collectionConfig.slug,\n lockErrorMessage: `Document with ID ${id} is currently locked and cannot be deleted.`,\n overrideLock,\n req,\n })\n\n // /////////////////////////////////////\n // beforeDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n return hook({\n id,\n collection: collectionConfig,\n context: req.context,\n req,\n })\n }, Promise.resolve())\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc,\n overrideDelete: true,\n req,\n })\n\n // /////////////////////////////////////\n // Delete versions\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await deleteCollectionVersions({\n id,\n slug: collectionConfig.slug,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Delete document\n // /////////////////////////////////////\n\n await payload.db.deleteOne({\n collection: collectionConfig.slug,\n req,\n where: {\n id: {\n equals: id,\n },\n },\n })\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result || doc,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n select,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result || doc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n id,\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // 8. Return results\n // /////////////////////////////////////\n\n return result\n } catch (error) {\n errors.push({\n id: doc.id,\n message: error.message,\n })\n }\n return null\n })\n\n const awaitedDocs = await Promise.all(promises)\n\n // /////////////////////////////////////\n // Delete Preferences\n // /////////////////////////////////////\n\n await deleteUserPreferences({\n collectionConfig,\n ids: docs.map(({ id }) => id),\n payload,\n req,\n })\n\n let result = {\n docs: awaitedDocs.filter(Boolean),\n errors,\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'delete',\n result,\n })\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","combineQueries","validateQueryPaths","APIError","afterRead","deleteUserPreferences","deleteAssociatedFiles","checkDocumentLockStatus","commitTransaction","initTransaction","killTransaction","deleteCollectionVersions","buildAfterOperation","deleteOperation","incomingArgs","args","shouldCommit","disableTransaction","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","collectionConfig","depth","overrideAccess","overrideLock","fallbackLocale","locale","payload","select","showHiddenFields","where","BAD_REQUEST","accessResult","access","delete","fullWhere","docs","db","find","slug","errors","promises","map","doc","result","id","collectionSlug","lockErrorMessage","beforeDelete","overrideDelete","versions","deleteOne","equals","draft","undefined","global","afterDelete","error","push","message","awaitedDocs","all","ids","filter","Boolean"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/delete.ts"],"sourcesContent":["import httpStatus from 'http-status'\n\nimport type { AccessResult } from '../../config/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequest, PopulateType, SelectType, Where } from '../../types/index.js'\nimport type {\n BeforeOperationHook,\n BulkOperationResult,\n Collection,\n DataFromCollectionSlug,\n SelectFromCollectionSlug,\n} from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { validateQueryPaths } from '../../database/queryValidation/validateQueryPaths.js'\nimport { APIError } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { deleteUserPreferences } from '../../preferences/deleteUserPreferences.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { checkDocumentLockStatus } from '../../utilities/checkDocumentLockStatus.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { deleteCollectionVersions } from '../../versions/deleteCollectionVersions.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n disableTransaction?: boolean\n overrideAccess?: boolean\n overrideLock?: boolean\n populate?: PopulateType\n req: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n where: Where\n}\n\nexport const deleteOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug>,\n>(\n incomingArgs: Arguments,\n): Promise<BulkOperationResult<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'delete',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n collection: { config: collectionConfig },\n depth,\n overrideAccess,\n overrideLock,\n populate,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select,\n showHiddenFields,\n where,\n } = args\n\n if (!where) {\n throw new APIError(\"Missing 'where' query of documents to delete.\", httpStatus.BAD_REQUEST)\n }\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ req }, collectionConfig.access.delete)\n }\n\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n const fullWhere = combineQueries(where, accessResult)\n\n // /////////////////////////////////////\n // Retrieve documents\n // /////////////////////////////////////\n\n const { docs } = await payload.db.find<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n locale,\n req,\n select,\n where: fullWhere,\n })\n\n const errors = []\n\n const promises = docs.map(async (doc) => {\n let result\n\n const { id } = doc\n\n try {\n // /////////////////////////////////////\n // Handle potentially locked documents\n // /////////////////////////////////////\n\n await checkDocumentLockStatus({\n id,\n collectionSlug: collectionConfig.slug,\n lockErrorMessage: `Document with ID ${id} is currently locked and cannot be deleted.`,\n overrideLock,\n req,\n })\n\n // /////////////////////////////////////\n // beforeDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n return hook({\n id,\n collection: collectionConfig,\n context: req.context,\n req,\n })\n }, Promise.resolve())\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc,\n overrideDelete: true,\n req,\n })\n\n // /////////////////////////////////////\n // Delete versions\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await deleteCollectionVersions({\n id,\n slug: collectionConfig.slug,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Delete document\n // /////////////////////////////////////\n\n await payload.db.deleteOne({\n collection: collectionConfig.slug,\n req,\n where: {\n id: {\n equals: id,\n },\n },\n })\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result || doc,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n populate,\n req,\n select,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result || doc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n id,\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // 8. Return results\n // /////////////////////////////////////\n\n return result\n } catch (error) {\n errors.push({\n id: doc.id,\n message: error.message,\n })\n }\n return null\n })\n\n const awaitedDocs = await Promise.all(promises)\n\n // /////////////////////////////////////\n // Delete Preferences\n // /////////////////////////////////////\n\n await deleteUserPreferences({\n collectionConfig,\n ids: docs.map(({ id }) => id),\n payload,\n req,\n })\n\n let result = {\n docs: awaitedDocs.filter(Boolean),\n errors,\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'delete',\n result,\n })\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","executeAccess","combineQueries","validateQueryPaths","APIError","afterRead","deleteUserPreferences","deleteAssociatedFiles","checkDocumentLockStatus","commitTransaction","initTransaction","killTransaction","deleteCollectionVersions","buildAfterOperation","deleteOperation","incomingArgs","args","shouldCommit","disableTransaction","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","collectionConfig","depth","overrideAccess","overrideLock","populate","fallbackLocale","locale","payload","select","showHiddenFields","where","BAD_REQUEST","accessResult","access","delete","fullWhere","docs","db","find","slug","errors","promises","map","doc","result","id","collectionSlug","lockErrorMessage","beforeDelete","overrideDelete","versions","deleteOne","equals","draft","undefined","global","afterDelete","error","push","message","awaitedDocs","all","ids","filter","Boolean"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { CollectionSlug } from '../../index.js';
2
- import type { PayloadRequest, SelectType, TransformCollectionWithSelect } from '../../types/index.js';
2
+ import type { PayloadRequest, PopulateType, SelectType, TransformCollectionWithSelect } from '../../types/index.js';
3
3
  import type { Collection } from '../config/types.js';
4
4
  export type Arguments = {
5
5
  collection: Collection;
@@ -8,6 +8,7 @@ export type Arguments = {
8
8
  id: number | string;
9
9
  overrideAccess?: boolean;
10
10
  overrideLock?: boolean;
11
+ populate?: PopulateType;
11
12
  req: PayloadRequest;
12
13
  select?: SelectType;
13
14
  showHiddenFields?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"deleteByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/deleteByID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAuB,UAAU,EAA0B,MAAM,oBAAoB,CAAA;AAgBjG,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAU,KAAK,SAAS,cAAc,EAAE,OAAO,SAAS,UAAU,gBAClF,SAAS,KACtB,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CAwNvD,CAAA"}
1
+ {"version":3,"file":"deleteByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/deleteByID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAuB,UAAU,EAA0B,MAAM,oBAAoB,CAAA;AAgBjG,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAU,KAAK,SAAS,cAAc,EAAE,OAAO,SAAS,UAAU,gBAClF,SAAS,KACtB,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CA0NvD,CAAA"}
@@ -28,7 +28,7 @@ export const deleteByIDOperation = async (incomingArgs)=>{
28
28
  req: args.req
29
29
  }) || args;
30
30
  }, Promise.resolve());
31
- const { id, collection: { config: collectionConfig }, depth, overrideAccess, overrideLock, req: { fallbackLocale, locale, payload: { config }, payload }, req, select, showHiddenFields } = args;
31
+ const { id, collection: { config: collectionConfig }, depth, overrideAccess, overrideLock, populate, req: { fallbackLocale, locale, payload: { config }, payload }, req, select, showHiddenFields } = args;
32
32
  // /////////////////////////////////////
33
33
  // Access
34
34
  // /////////////////////////////////////
@@ -133,6 +133,7 @@ export const deleteByIDOperation = async (incomingArgs)=>{
133
133
  global: null,
134
134
  locale,
135
135
  overrideAccess,
136
+ populate,
136
137
  req,
137
138
  select,
138
139
  showHiddenFields
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/deleteByID.ts"],"sourcesContent":["import type { CollectionSlug } from '../../index.js'\nimport type {\n PayloadRequest,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type { BeforeOperationHook, Collection, DataFromCollectionSlug } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { Forbidden, NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { deleteUserPreferences } from '../../preferences/deleteUserPreferences.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { checkDocumentLockStatus } from '../../utilities/checkDocumentLockStatus.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { deleteCollectionVersions } from '../../versions/deleteCollectionVersions.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n disableTransaction?: boolean\n id: number | string\n overrideAccess?: boolean\n overrideLock?: boolean\n req: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n}\n\nexport const deleteByIDOperation = async <TSlug extends CollectionSlug, TSelect extends SelectType>(\n incomingArgs: Arguments,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'delete',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n overrideAccess,\n overrideLock,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select,\n showHiddenFields,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.delete)\n : true\n const hasWhereAccess = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // beforeDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n return hook({\n id,\n collection: collectionConfig,\n context: req.context,\n req,\n })\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n\n const docToDelete = await req.payload.db.findOne({\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n })\n\n if (!docToDelete && !hasWhereAccess) {\n throw new NotFound(req.t)\n }\n if (!docToDelete && hasWhereAccess) {\n throw new Forbidden(req.t)\n }\n\n // /////////////////////////////////////\n // Handle potentially locked documents\n // /////////////////////////////////////\n\n await checkDocumentLockStatus({\n id,\n collectionSlug: collectionConfig.slug,\n lockErrorMessage: `Document with ID ${id} is currently locked and cannot be deleted.`,\n overrideLock,\n req,\n })\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc: docToDelete,\n overrideDelete: true,\n req,\n })\n\n // /////////////////////////////////////\n // Delete versions\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await deleteCollectionVersions({\n id,\n slug: collectionConfig.slug,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Delete document\n // /////////////////////////////////////\n\n let result: DataFromCollectionSlug<TSlug> = await req.payload.db.deleteOne({\n collection: collectionConfig.slug,\n req,\n select,\n where: { id: { equals: id } },\n })\n\n // /////////////////////////////////////\n // Delete Preferences\n // /////////////////////////////////////\n\n await deleteUserPreferences({\n collectionConfig,\n ids: [id],\n payload,\n req,\n })\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n select,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n id,\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'deleteByID',\n result,\n })\n\n // /////////////////////////////////////\n // 8. Return results\n // /////////////////////////////////////\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result as TransformCollectionWithSelect<TSlug, TSelect>\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","hasWhereAccessResult","combineQueries","Forbidden","NotFound","afterRead","deleteUserPreferences","deleteAssociatedFiles","checkDocumentLockStatus","commitTransaction","initTransaction","killTransaction","deleteCollectionVersions","buildAfterOperation","deleteByIDOperation","incomingArgs","args","shouldCommit","disableTransaction","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","collectionConfig","depth","overrideAccess","overrideLock","fallbackLocale","locale","payload","select","showHiddenFields","accessResults","access","delete","hasWhereAccess","beforeDelete","docToDelete","db","findOne","slug","where","equals","t","collectionSlug","lockErrorMessage","doc","overrideDelete","versions","result","deleteOne","ids","draft","undefined","global","afterDelete","error"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/deleteByID.ts"],"sourcesContent":["import type { CollectionSlug } from '../../index.js'\nimport type {\n PayloadRequest,\n PopulateType,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type { BeforeOperationHook, Collection, DataFromCollectionSlug } from '../config/types.js'\n\nimport executeAccess from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { Forbidden, NotFound } from '../../errors/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { deleteUserPreferences } from '../../preferences/deleteUserPreferences.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { checkDocumentLockStatus } from '../../utilities/checkDocumentLockStatus.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { deleteCollectionVersions } from '../../versions/deleteCollectionVersions.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n depth?: number\n disableTransaction?: boolean\n id: number | string\n overrideAccess?: boolean\n overrideLock?: boolean\n populate?: PopulateType\n req: PayloadRequest\n select?: SelectType\n showHiddenFields?: boolean\n}\n\nexport const deleteByIDOperation = async <TSlug extends CollectionSlug, TSelect extends SelectType>(\n incomingArgs: Arguments,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(\n async (priorHook: BeforeOperationHook | Promise<void>, hook: BeforeOperationHook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'delete',\n req: args.req,\n })) || args\n },\n Promise.resolve(),\n )\n\n const {\n id,\n collection: { config: collectionConfig },\n depth,\n overrideAccess,\n overrideLock,\n populate,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select,\n showHiddenFields,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, req }, collectionConfig.access.delete)\n : true\n const hasWhereAccess = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // beforeDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n return hook({\n id,\n collection: collectionConfig,\n context: req.context,\n req,\n })\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n\n const docToDelete = await req.payload.db.findOne({\n collection: collectionConfig.slug,\n locale: req.locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n })\n\n if (!docToDelete && !hasWhereAccess) {\n throw new NotFound(req.t)\n }\n if (!docToDelete && hasWhereAccess) {\n throw new Forbidden(req.t)\n }\n\n // /////////////////////////////////////\n // Handle potentially locked documents\n // /////////////////////////////////////\n\n await checkDocumentLockStatus({\n id,\n collectionSlug: collectionConfig.slug,\n lockErrorMessage: `Document with ID ${id} is currently locked and cannot be deleted.`,\n overrideLock,\n req,\n })\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc: docToDelete,\n overrideDelete: true,\n req,\n })\n\n // /////////////////////////////////////\n // Delete versions\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n await deleteCollectionVersions({\n id,\n slug: collectionConfig.slug,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Delete document\n // /////////////////////////////////////\n\n let result: DataFromCollectionSlug<TSlug> = await req.payload.db.deleteOne({\n collection: collectionConfig.slug,\n req,\n select,\n where: { id: { equals: id } },\n })\n\n // /////////////////////////////////////\n // Delete Preferences\n // /////////////////////////////////////\n\n await deleteUserPreferences({\n collectionConfig,\n ids: [id],\n payload,\n req,\n })\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft: undefined,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n populate,\n req,\n select,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterDelete - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterDelete.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n id,\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'deleteByID',\n result,\n })\n\n // /////////////////////////////////////\n // 8. Return results\n // /////////////////////////////////////\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result as TransformCollectionWithSelect<TSlug, TSelect>\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","hasWhereAccessResult","combineQueries","Forbidden","NotFound","afterRead","deleteUserPreferences","deleteAssociatedFiles","checkDocumentLockStatus","commitTransaction","initTransaction","killTransaction","deleteCollectionVersions","buildAfterOperation","deleteByIDOperation","incomingArgs","args","shouldCommit","disableTransaction","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","collectionConfig","depth","overrideAccess","overrideLock","populate","fallbackLocale","locale","payload","select","showHiddenFields","accessResults","access","delete","hasWhereAccess","beforeDelete","docToDelete","db","findOne","slug","where","equals","t","collectionSlug","lockErrorMessage","doc","overrideDelete","versions","result","deleteOne","ids","draft","undefined","global","afterDelete","error"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { CollectionSlug } from '../../index.js';
2
- import type { PayloadRequest, SelectType, TransformCollectionWithSelect } from '../../types/index.js';
2
+ import type { PayloadRequest, PopulateType, SelectType, TransformCollectionWithSelect } from '../../types/index.js';
3
3
  import type { Collection, SelectFromCollectionSlug } from '../config/types.js';
4
4
  export type Arguments = {
5
5
  collection: Collection;
@@ -8,6 +8,7 @@ export type Arguments = {
8
8
  draft?: boolean;
9
9
  id: number | string;
10
10
  overrideAccess?: boolean;
11
+ populate?: PopulateType;
11
12
  req: PayloadRequest;
12
13
  select?: SelectType;
13
14
  showHiddenFields?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/duplicate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,UAAU,EAEV,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAqB3B,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,KACtB,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CA6UvD,CAAA"}
1
+ {"version":3,"file":"duplicate.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/duplicate.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,UAAU,EAEV,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAqB3B,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,gBAEjC,SAAS,KACtB,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CA+UvD,CAAA"}
@@ -35,7 +35,7 @@ export const duplicateOperation = async (incomingArgs)=>{
35
35
  req: args.req
36
36
  }) || args;
37
37
  }, Promise.resolve());
38
- const { id, collection: { config: collectionConfig }, depth, draft: draftArg = true, overrideAccess, req: { fallbackLocale, locale: localeArg, payload }, req, select, showHiddenFields } = args;
38
+ const { id, collection: { config: collectionConfig }, depth, draft: draftArg = true, overrideAccess, populate, req: { fallbackLocale, locale: localeArg, payload }, req, select, showHiddenFields } = args;
39
39
  if (!id) {
40
40
  throw new APIError('Missing ID of document to duplicate.', httpStatus.BAD_REQUEST);
41
41
  }
@@ -224,6 +224,7 @@ export const duplicateOperation = async (incomingArgs)=>{
224
224
  global: null,
225
225
  locale: localeArg,
226
226
  overrideAccess,
227
+ populate,
227
228
  req,
228
229
  select,
229
230
  showHiddenFields