payload 3.0.0-beta.117 → 3.0.0-beta.119

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 (52) hide show
  1. package/dist/admin/fields/Radio.d.ts +4 -0
  2. package/dist/admin/fields/Radio.d.ts.map +1 -1
  3. package/dist/admin/fields/Radio.js.map +1 -1
  4. package/dist/admin/forms/Label.d.ts +2 -0
  5. package/dist/admin/forms/Label.d.ts.map +1 -1
  6. package/dist/admin/forms/Label.js.map +1 -1
  7. package/dist/bin/generateImportMap/index.d.ts.map +1 -1
  8. package/dist/bin/generateImportMap/index.js +2 -1
  9. package/dist/bin/generateImportMap/index.js.map +1 -1
  10. package/dist/collections/config/sanitize.d.ts.map +1 -1
  11. package/dist/collections/config/sanitize.js +1 -0
  12. package/dist/collections/config/sanitize.js.map +1 -1
  13. package/dist/collections/config/types.d.ts +2 -2
  14. package/dist/collections/config/types.d.ts.map +1 -1
  15. package/dist/collections/config/types.js.map +1 -1
  16. package/dist/collections/operations/find.d.ts +2 -2
  17. package/dist/collections/operations/find.d.ts.map +1 -1
  18. package/dist/collections/operations/find.js +1 -0
  19. package/dist/collections/operations/find.js.map +1 -1
  20. package/dist/collections/operations/findVersions.d.ts +2 -2
  21. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  22. package/dist/collections/operations/findVersions.js.map +1 -1
  23. package/dist/collections/operations/local/find.d.ts +2 -2
  24. package/dist/collections/operations/local/find.d.ts.map +1 -1
  25. package/dist/collections/operations/local/find.js.map +1 -1
  26. package/dist/collections/operations/local/findVersions.d.ts +2 -2
  27. package/dist/collections/operations/local/findVersions.d.ts.map +1 -1
  28. package/dist/collections/operations/local/findVersions.js.map +1 -1
  29. package/dist/database/types.d.ts +5 -4
  30. package/dist/database/types.d.ts.map +1 -1
  31. package/dist/database/types.js.map +1 -1
  32. package/dist/fields/config/sanitize.d.ts.map +1 -1
  33. package/dist/fields/config/sanitize.js.map +1 -1
  34. package/dist/globals/operations/findVersions.d.ts +2 -2
  35. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  36. package/dist/globals/operations/findVersions.js.map +1 -1
  37. package/dist/globals/operations/local/findVersions.d.ts +2 -2
  38. package/dist/globals/operations/local/findVersions.d.ts.map +1 -1
  39. package/dist/globals/operations/local/findVersions.js.map +1 -1
  40. package/dist/types/index.d.ts +1 -0
  41. package/dist/types/index.d.ts.map +1 -1
  42. package/dist/types/index.js.map +1 -1
  43. package/dist/versions/buildGlobalFields.d.ts.map +1 -1
  44. package/dist/versions/buildGlobalFields.js +4 -2
  45. package/dist/versions/buildGlobalFields.js.map +1 -1
  46. package/dist/versions/drafts/getQueryDraftsSort.d.ts +3 -2
  47. package/dist/versions/drafts/getQueryDraftsSort.d.ts.map +1 -1
  48. package/dist/versions/drafts/getQueryDraftsSort.js +18 -9
  49. package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -1
  50. package/dist/versions/payloadPackageList.js +1 -1
  51. package/dist/versions/payloadPackageList.js.map +1 -1
  52. package/package.json +2 -2
@@ -6,6 +6,10 @@ import type { ClientFieldBase, FieldClientComponent, FieldServerComponent, Serve
6
6
  import type { FieldDescriptionClientComponent, FieldDescriptionServerComponent, FieldLabelClientComponent, FieldLabelServerComponent } from '../types.js';
7
7
  type RadioFieldClientWithoutType = MarkOptional<RadioFieldClient, 'type'>;
8
8
  type RadioFieldBaseClientProps = {
9
+ /**
10
+ * Threaded through to the setValue function from the form context when the value changes
11
+ */
12
+ readonly disableModifyingForm?: boolean;
9
13
  readonly onChange?: OnChange;
10
14
  readonly validate?: RadioFieldValidation;
11
15
  readonly value?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../../src/admin/fields/Radio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAChF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAC7F,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EAChB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EACV,+BAA+B,EAC/B,+BAA+B,EAC/B,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,aAAa,CAAA;AAEpB,KAAK,2BAA2B,GAAG,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;AAEzE,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC,2BAA2B,CAAC,GAC9E,yBAAyB,CAAA;AAE3B,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAA;AAE5F,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,CAC1D,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,CAC1D,2BAA2B,EAC3B,yBAAyB,CAC1B,CAAA;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;AAErD,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CACpE,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CAAC,2BAA2B,CAAC,CAAA;AAEnG,MAAM,MAAM,oCAAoC,GAAG,+BAA+B,CAChF,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,oCAAoC,GAC9C,+BAA+B,CAAC,2BAA2B,CAAC,CAAA;AAE9D,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CACpE,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CAAC,2BAA2B,CAAC,CAAA"}
1
+ {"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../../src/admin/fields/Radio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAChF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,KAAK,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAC7F,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EAChB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EACV,+BAA+B,EAC/B,+BAA+B,EAC/B,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,aAAa,CAAA;AAEpB,KAAK,2BAA2B,GAAG,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;AAEzE,KAAK,yBAAyB,GAAG;IAC/B;;OAEG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC,2BAA2B,CAAC,GAC9E,yBAAyB,CAAA;AAE3B,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC,UAAU,EAAE,2BAA2B,CAAC,CAAA;AAE5F,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,CAC1D,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,CAC1D,2BAA2B,EAC3B,yBAAyB,CAC1B,CAAA;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;AAErD,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CACpE,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CAAC,2BAA2B,CAAC,CAAA;AAEnG,MAAM,MAAM,oCAAoC,GAAG,+BAA+B,CAChF,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,oCAAoC,GAC9C,+BAA+B,CAAC,2BAA2B,CAAC,CAAA;AAE9D,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CACpE,UAAU,EACV,2BAA2B,CAC5B,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG,yBAAyB,CAAC,2BAA2B,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/fields/Radio.ts"],"sourcesContent":["import type { MarkOptional } from 'ts-essentials'\n\nimport type { RadioField, RadioFieldClient } from '../../fields/config/types.js'\nimport type { RadioFieldValidation } from '../../fields/validations.js'\nimport type { FieldErrorClientComponent, FieldErrorServerComponent } from '../forms/Error.js'\nimport type {\n ClientFieldBase,\n FieldClientComponent,\n FieldServerComponent,\n ServerFieldBase,\n} from '../forms/Field.js'\nimport type {\n FieldDescriptionClientComponent,\n FieldDescriptionServerComponent,\n FieldLabelClientComponent,\n FieldLabelServerComponent,\n} from '../types.js'\n\ntype RadioFieldClientWithoutType = MarkOptional<RadioFieldClient, 'type'>\n\ntype RadioFieldBaseClientProps = {\n readonly onChange?: OnChange\n readonly validate?: RadioFieldValidation\n readonly value?: string\n}\n\nexport type RadioFieldClientProps = ClientFieldBase<RadioFieldClientWithoutType> &\n RadioFieldBaseClientProps\n\nexport type RadioFieldServerProps = ServerFieldBase<RadioField, RadioFieldClientWithoutType>\n\nexport type RadioFieldServerComponent = FieldServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldClientComponent = FieldClientComponent<\n RadioFieldClientWithoutType,\n RadioFieldBaseClientProps\n>\n\nexport type OnChange<T = string> = (value: T) => void\n\nexport type RadioFieldLabelServerComponent = FieldLabelServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldLabelClientComponent = FieldLabelClientComponent<RadioFieldClientWithoutType>\n\nexport type RadioFieldDescriptionServerComponent = FieldDescriptionServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldDescriptionClientComponent =\n FieldDescriptionClientComponent<RadioFieldClientWithoutType>\n\nexport type RadioFieldErrorServerComponent = FieldErrorServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldErrorClientComponent = FieldErrorClientComponent<RadioFieldClientWithoutType>\n"],"names":[],"mappings":"AA+DA,WAAmG"}
1
+ {"version":3,"sources":["../../../src/admin/fields/Radio.ts"],"sourcesContent":["import type { MarkOptional } from 'ts-essentials'\n\nimport type { RadioField, RadioFieldClient } from '../../fields/config/types.js'\nimport type { RadioFieldValidation } from '../../fields/validations.js'\nimport type { FieldErrorClientComponent, FieldErrorServerComponent } from '../forms/Error.js'\nimport type {\n ClientFieldBase,\n FieldClientComponent,\n FieldServerComponent,\n ServerFieldBase,\n} from '../forms/Field.js'\nimport type {\n FieldDescriptionClientComponent,\n FieldDescriptionServerComponent,\n FieldLabelClientComponent,\n FieldLabelServerComponent,\n} from '../types.js'\n\ntype RadioFieldClientWithoutType = MarkOptional<RadioFieldClient, 'type'>\n\ntype RadioFieldBaseClientProps = {\n /**\n * Threaded through to the setValue function from the form context when the value changes\n */\n readonly disableModifyingForm?: boolean\n readonly onChange?: OnChange\n readonly validate?: RadioFieldValidation\n readonly value?: string\n}\n\nexport type RadioFieldClientProps = ClientFieldBase<RadioFieldClientWithoutType> &\n RadioFieldBaseClientProps\n\nexport type RadioFieldServerProps = ServerFieldBase<RadioField, RadioFieldClientWithoutType>\n\nexport type RadioFieldServerComponent = FieldServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldClientComponent = FieldClientComponent<\n RadioFieldClientWithoutType,\n RadioFieldBaseClientProps\n>\n\nexport type OnChange<T = string> = (value: T) => void\n\nexport type RadioFieldLabelServerComponent = FieldLabelServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldLabelClientComponent = FieldLabelClientComponent<RadioFieldClientWithoutType>\n\nexport type RadioFieldDescriptionServerComponent = FieldDescriptionServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldDescriptionClientComponent =\n FieldDescriptionClientComponent<RadioFieldClientWithoutType>\n\nexport type RadioFieldErrorServerComponent = FieldErrorServerComponent<\n RadioField,\n RadioFieldClientWithoutType\n>\n\nexport type RadioFieldErrorClientComponent = FieldErrorClientComponent<RadioFieldClientWithoutType>\n"],"names":[],"mappings":"AAmEA,WAAmG"}
@@ -4,9 +4,11 @@ import type { MappedComponent } from '../types.js';
4
4
  import type { ClientFieldWithOptionalType } from './Field.js';
5
5
  export type GenericLabelProps = {
6
6
  readonly as?: 'label' | 'span';
7
+ readonly hideLocale?: boolean;
7
8
  readonly htmlFor?: string;
8
9
  readonly Label?: MappedComponent;
9
10
  readonly label?: StaticLabel;
11
+ readonly localized?: boolean;
10
12
  readonly required?: boolean;
11
13
  readonly unstyled?: boolean;
12
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Label.d.ts","sourceRoot":"","sources":["../../../src/admin/forms/Label.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAA;AAE7D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,qBAAqB,CAC/B,YAAY,SAAS,OAAO,CAAC,2BAA2B,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC,IAC9F;IACF,KAAK,CAAC,EAAE,YAAY,CAAA;CACrB,GAAG,iBAAiB,CAAA;AAErB,MAAM,MAAM,qBAAqB,CAC/B,YAAY,SAAS,KAAK,EAC1B,YAAY,SAAS,2BAA2B,GAAG,2BAA2B,IAC5E;IACF,WAAW,EAAE,YAAY,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;CAC7B,GAAG,iBAAiB,GACnB,OAAO,CAAC,WAAW,CAAC,CAAA;AAEtB,MAAM,MAAM,mBAAmB,CAAC,YAAY,SAAS,2BAA2B,IAAI,IAAI,CACtF,qBAAqB,CAAC,YAAY,CAAC,EACnC,OAAO,GAAG,UAAU,CACrB,CAAA;AAED,MAAM,MAAM,yBAAyB,CACnC,YAAY,SAAS,2BAA2B,GAAG,2BAA2B,IAC5E,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAA;AAE5D,MAAM,MAAM,yBAAyB,CACnC,YAAY,SAAS,KAAK,GAAG,KAAK,EAClC,YAAY,SAAS,2BAA2B,GAAG,2BAA2B,IAC5E,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"Label.d.ts","sourceRoot":"","sources":["../../../src/admin/forms/Label.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAA;AAE7D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,qBAAqB,CAC/B,YAAY,SAAS,OAAO,CAAC,2BAA2B,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC,IAC9F;IACF,KAAK,CAAC,EAAE,YAAY,CAAA;CACrB,GAAG,iBAAiB,CAAA;AAErB,MAAM,MAAM,qBAAqB,CAC/B,YAAY,SAAS,KAAK,EAC1B,YAAY,SAAS,2BAA2B,GAAG,2BAA2B,IAC5E;IACF,WAAW,EAAE,YAAY,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;CAC7B,GAAG,iBAAiB,GACnB,OAAO,CAAC,WAAW,CAAC,CAAA;AAEtB,MAAM,MAAM,mBAAmB,CAAC,YAAY,SAAS,2BAA2B,IAAI,IAAI,CACtF,qBAAqB,CAAC,YAAY,CAAC,EACnC,OAAO,GAAG,UAAU,CACrB,CAAA;AAED,MAAM,MAAM,yBAAyB,CACnC,YAAY,SAAS,2BAA2B,GAAG,2BAA2B,IAC5E,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC,CAAA;AAE5D,MAAM,MAAM,yBAAyB,CACnC,YAAY,SAAS,KAAK,GAAG,KAAK,EAClC,YAAY,SAAS,2BAA2B,GAAG,2BAA2B,IAC5E,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/forms/Label.ts"],"sourcesContent":["import type { ServerProps, StaticLabel } from '../../config/types.js'\nimport type { Field } from '../../fields/config/types.js'\nimport type { MappedComponent } from '../types.js'\nimport type { ClientFieldWithOptionalType } from './Field.js'\n\nexport type GenericLabelProps = {\n readonly as?: 'label' | 'span'\n readonly htmlFor?: string\n readonly Label?: MappedComponent\n readonly label?: StaticLabel\n readonly required?: boolean\n readonly unstyled?: boolean\n}\n\nexport type FieldLabelClientProps<\n TFieldClient extends Partial<ClientFieldWithOptionalType> = Partial<ClientFieldWithOptionalType>,\n> = {\n field?: TFieldClient\n} & GenericLabelProps\n\nexport type FieldLabelServerProps<\n TFieldServer extends Field,\n TFieldClient extends ClientFieldWithOptionalType = ClientFieldWithOptionalType,\n> = {\n clientField: TFieldClient\n readonly field: TFieldServer\n} & GenericLabelProps &\n Partial<ServerProps>\n\nexport type SanitizedLabelProps<TFieldClient extends ClientFieldWithOptionalType> = Omit<\n FieldLabelClientProps<TFieldClient>,\n 'label' | 'required'\n>\n\nexport type FieldLabelClientComponent<\n TFieldClient extends ClientFieldWithOptionalType = ClientFieldWithOptionalType,\n> = React.ComponentType<FieldLabelClientProps<TFieldClient>>\n\nexport type FieldLabelServerComponent<\n TFieldServer extends Field = Field,\n TFieldClient extends ClientFieldWithOptionalType = ClientFieldWithOptionalType,\n> = React.ComponentType<FieldLabelServerProps<TFieldServer, TFieldClient>>\n"],"names":[],"mappings":"AAsCA,WAG0E"}
1
+ {"version":3,"sources":["../../../src/admin/forms/Label.ts"],"sourcesContent":["import type { ServerProps, StaticLabel } from '../../config/types.js'\nimport type { Field } from '../../fields/config/types.js'\nimport type { MappedComponent } from '../types.js'\nimport type { ClientFieldWithOptionalType } from './Field.js'\n\nexport type GenericLabelProps = {\n readonly as?: 'label' | 'span'\n readonly hideLocale?: boolean\n readonly htmlFor?: string\n readonly Label?: MappedComponent\n readonly label?: StaticLabel\n readonly localized?: boolean\n readonly required?: boolean\n readonly unstyled?: boolean\n}\n\nexport type FieldLabelClientProps<\n TFieldClient extends Partial<ClientFieldWithOptionalType> = Partial<ClientFieldWithOptionalType>,\n> = {\n field?: TFieldClient\n} & GenericLabelProps\n\nexport type FieldLabelServerProps<\n TFieldServer extends Field,\n TFieldClient extends ClientFieldWithOptionalType = ClientFieldWithOptionalType,\n> = {\n clientField: TFieldClient\n readonly field: TFieldServer\n} & GenericLabelProps &\n Partial<ServerProps>\n\nexport type SanitizedLabelProps<TFieldClient extends ClientFieldWithOptionalType> = Omit<\n FieldLabelClientProps<TFieldClient>,\n 'label' | 'required'\n>\n\nexport type FieldLabelClientComponent<\n TFieldClient extends ClientFieldWithOptionalType = ClientFieldWithOptionalType,\n> = React.ComponentType<FieldLabelClientProps<TFieldClient>>\n\nexport type FieldLabelServerComponent<\n TFieldServer extends Field = Field,\n TFieldClient extends ClientFieldWithOptionalType = ClientFieldWithOptionalType,\n> = React.ComponentType<FieldLabelServerProps<TFieldServer, TFieldClient>>\n"],"names":[],"mappings":"AAwCA,WAG0E"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAK9E,KAAK,gBAAgB,GAAG,MAAM,CAAA;AAC9B,KAAK,eAAe,GAAG,MAAM,CAAA;AAC7B,KAAK,UAAU,GAAG,MAAM,CAAA;AACxB,KAAK,cAAc,GAAG,MAAM,CAAA;AAE5B;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAA;CACzC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,UAAU,EAAE,gBAAgB,GAAG;QAC9B,IAAI,EAAE,UAAU,CAAA;QAChB,SAAS,EAAE,eAAe,CAAA;KAC3B,CAAA;CACF,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAA;CAC5B,CAAA;AAED,wBAAgB,8BAA8B,CAAC,EAC7C,OAAO,EACP,SAAS,EACT,OAAO,EACP,gBAAgB,GACjB,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,gBAAgB,EAAE,gBAAgB,CAAA;CACnC,QAwBA;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,KAAK,IAAI,CAAA;AAE9F,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,OAAO,CAAA;CAAE,GAC1C,OAAO,CAAC,IAAI,CAAC,CA6Ef;AAED,wBAAsB,cAAc,CAAC,EACnC,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,SAAS,EACT,GAAG,EACH,OAAO,GACR,EAAE;IACD,YAAY,EAAE,iBAAiB,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;CAChB,iBAgDA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bin/generateImportMap/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAK9E,KAAK,gBAAgB,GAAG,MAAM,CAAA;AAC9B,KAAK,eAAe,GAAG,MAAM,CAAA;AAC7B,KAAK,UAAU,GAAG,MAAM,CAAA;AACxB,KAAK,cAAc,GAAG,MAAM,CAAA;AAE5B;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAA;CACzC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,UAAU,EAAE,gBAAgB,GAAG;QAC9B,IAAI,EAAE,UAAU,CAAA;QAChB,SAAS,EAAE,eAAe,CAAA;KAC3B,CAAA;CACF,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,CAAC,IAAI,EAAE,cAAc,GAAG,GAAG,CAAA;CAC5B,CAAA;AAED,wBAAgB,8BAA8B,CAAC,EAC7C,OAAO,EACP,SAAS,EACT,OAAO,EACP,gBAAgB,GACjB,EAAE;IACD,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,gBAAgB,EAAE,gBAAgB,CAAA;CACnC,QAyBA;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,gBAAgB,EAAE,KAAK,IAAI,CAAA;AAE9F,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,OAAO,CAAA;CAAE,GAC1C,OAAO,CAAC,IAAI,CAAC,CA6Ef;AAED,wBAAsB,cAAc,CAAC,EACnC,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,SAAS,EACT,GAAG,EACH,OAAO,GACR,EAAE;IACD,YAAY,EAAE,iBAAiB,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,OAAO,CAAA;IAClB,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;CAChB,iBAgDA"}
@@ -1,3 +1,4 @@
1
+ import crypto from 'crypto';
1
2
  import fs from 'fs';
2
3
  import process from 'node:process';
3
4
  import path from 'path';
@@ -11,7 +12,7 @@ export function addPayloadComponentToImportMap({ baseDir, importMap, imports, pa
11
12
  if (importMap[componentPath + '#' + exportName]) {
12
13
  return;
13
14
  }
14
- const importIdentifier = exportName + '_' + Object.keys(imports).length;
15
+ const importIdentifier = exportName + '_' + crypto.createHash('md5').update(componentPath).digest('hex');
15
16
  // e.g. if baseDir is /test/fields and componentPath is /components/Field.tsx
16
17
  // then path needs to be /test/fields/components/Field.tsx NOT /users/username/project/test/fields/components/Field.tsx
17
18
  // so we need to append baseDir to componentPath
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/bin/generateImportMap/index.ts"],"sourcesContent":["import fs from 'fs'\nimport process from 'node:process'\nimport path from 'path'\n\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\n\nimport { iterateConfig } from './iterateConfig.js'\nimport { parsePayloadComponent } from './parsePayloadComponent.js'\n\ntype ImportIdentifier = string\ntype ImportSpecifier = string\ntype ImportPath = string\ntype UserImportPath = string\n\n/**\n * Import Map before being written to the file. Only contains all paths\n */\nexport type InternalImportMap = {\n [path: UserImportPath]: ImportIdentifier\n}\n\n/**\n * Imports of the import map.\n */\nexport type Imports = {\n [identifier: ImportIdentifier]: {\n path: ImportPath\n specifier: ImportSpecifier\n }\n}\n\n/**\n * Import Map after being imported from the actual import map. Contains all the actual imported components\n */\nexport type ImportMap = {\n [path: UserImportPath]: any\n}\n\nexport function addPayloadComponentToImportMap({\n baseDir,\n importMap,\n imports,\n payloadComponent,\n}: {\n baseDir: string\n importMap: InternalImportMap\n imports: Imports\n payloadComponent: PayloadComponent\n}) {\n if (!payloadComponent) {\n return\n }\n const { exportName, path: componentPath } = parsePayloadComponent(payloadComponent)\n\n if (importMap[componentPath + '#' + exportName]) {\n return\n }\n\n const importIdentifier = exportName + '_' + Object.keys(imports).length\n\n // e.g. if baseDir is /test/fields and componentPath is /components/Field.tsx\n // then path needs to be /test/fields/components/Field.tsx NOT /users/username/project/test/fields/components/Field.tsx\n // so we need to append baseDir to componentPath\n\n imports[importIdentifier] = {\n path:\n componentPath.startsWith('.') || componentPath.startsWith('/')\n ? path.posix.join(baseDir.replace(/\\\\/g, '/'), componentPath.slice(1))\n : componentPath,\n specifier: exportName,\n }\n importMap[componentPath + '#' + exportName] = importIdentifier\n}\n\nexport type AddToImportMap = (payloadComponent: PayloadComponent | PayloadComponent[]) => void\n\nexport async function generateImportMap(\n config: SanitizedConfig,\n options?: { force?: boolean; log: boolean },\n): Promise<void> {\n const shouldLog = options?.log ?? true\n\n if (shouldLog) {\n console.log('Generating import map')\n }\n\n const importMap: InternalImportMap = {}\n const imports: Imports = {}\n\n const rootDir = process.env.ROOT_DIR ?? process.cwd()\n\n // get componentsBaseDir.\n // E.g.:\n // config.admin.importMap.baseDir = /test/fields/\n // rootDir: /\n // componentsBaseDir = /test/fields/\n\n // or\n\n // E.g.:\n // config.admin.importMap.baseDir = /test/fields/\n // rootDir: /test\n // componentsBaseDir = /fields/\n\n // or\n // config.admin.importMap.baseDir = /\n // rootDir: /\n // componentsBaseDir = /\n\n const componentsBaseDir = path.relative(rootDir, config.admin.importMap.baseDir)\n\n const addToImportMap: AddToImportMap = (payloadComponent) => {\n if (!payloadComponent) {\n return\n }\n\n if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {\n console.error(payloadComponent)\n throw new Error('addToImportMap > Payload component must be an object or a string')\n }\n\n if (Array.isArray(payloadComponent)) {\n for (const component of payloadComponent) {\n addPayloadComponentToImportMap({\n baseDir: componentsBaseDir,\n importMap,\n imports,\n payloadComponent: component,\n })\n }\n } else {\n addPayloadComponentToImportMap({\n baseDir: componentsBaseDir,\n importMap,\n imports,\n payloadComponent,\n })\n }\n }\n\n iterateConfig({\n addToImportMap,\n baseDir: config.admin.importMap.baseDir,\n config,\n importMap,\n imports,\n })\n\n await writeImportMap({\n componentMap: importMap,\n fileName: 'importMap.js',\n force: options?.force,\n importMap: imports,\n log: shouldLog,\n rootDir,\n })\n}\n\nexport async function writeImportMap({\n componentMap,\n fileName,\n force,\n importMap,\n log,\n rootDir,\n}: {\n componentMap: InternalImportMap\n fileName: string\n force?: boolean\n importMap: Imports\n log?: boolean\n rootDir: string\n}) {\n let importMapFolderPath = ''\n if (fs.existsSync(path.resolve(rootDir, 'app/(payload)/admin/'))) {\n importMapFolderPath = path.resolve(rootDir, 'app/(payload)/admin/')\n } else if (fs.existsSync(path.resolve(rootDir, 'src/app/(payload)/admin/'))) {\n importMapFolderPath = path.resolve(rootDir, 'src/app/(payload)/admin/')\n } else {\n throw new Error(\n `Could not find the payload admin directory. Looked in ${path.resolve(rootDir, 'app/(payload)/admin/')} and ${path.resolve(rootDir, 'src/app/(payload)/admin/')}`,\n )\n }\n\n const imports: string[] = []\n for (const [identifier, { path, specifier }] of Object.entries(importMap)) {\n imports.push(`import { ${specifier} as ${identifier} } from '${path}'`)\n }\n\n const mapKeys: string[] = []\n for (const [userPath, identifier] of Object.entries(componentMap)) {\n mapKeys.push(` \"${userPath}\": ${identifier}`)\n }\n\n const importMapOutputFile = `${imports.join('\\n')}\n\nexport const importMap = {\n${mapKeys.join(',\\n')}\n}\n`\n\n const importMapFilePath = path.resolve(importMapFolderPath, fileName)\n\n if (!force) {\n // Read current import map and check in the IMPORTS if there are any new imports. If not, don't write the file.\n const currentImportMap = await fs.promises.readFile(importMapFilePath, 'utf-8')\n\n if (currentImportMap?.trim() === importMapOutputFile?.trim()) {\n if (log) {\n console.log('No new imports found, skipping writing import map')\n }\n return\n }\n }\n\n if (log) {\n console.log('Writing import map to', importMapFilePath)\n }\n\n await fs.promises.writeFile(importMapFilePath, importMapOutputFile)\n}\n"],"names":["fs","process","path","iterateConfig","parsePayloadComponent","addPayloadComponentToImportMap","baseDir","importMap","imports","payloadComponent","exportName","componentPath","importIdentifier","Object","keys","length","startsWith","posix","join","replace","slice","specifier","generateImportMap","config","options","shouldLog","log","console","rootDir","env","ROOT_DIR","cwd","componentsBaseDir","relative","admin","addToImportMap","error","Error","Array","isArray","component","writeImportMap","componentMap","fileName","force","importMapFolderPath","existsSync","resolve","identifier","entries","push","mapKeys","userPath","importMapOutputFile","importMapFilePath","currentImportMap","promises","readFile","trim","writeFile"],"mappings":"AAAA,OAAOA,QAAQ,KAAI;AACnB,OAAOC,aAAa,eAAc;AAClC,OAAOC,UAAU,OAAM;AAIvB,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,qBAAqB,QAAQ,6BAA4B;AA+BlE,OAAO,SAASC,+BAA+B,EAC7CC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,gBAAgB,EAMjB;IACC,IAAI,CAACA,kBAAkB;QACrB;IACF;IACA,MAAM,EAAEC,UAAU,EAAER,MAAMS,aAAa,EAAE,GAAGP,sBAAsBK;IAElE,IAAIF,SAAS,CAACI,gBAAgB,MAAMD,WAAW,EAAE;QAC/C;IACF;IAEA,MAAME,mBAAmBF,aAAa,MAAMG,OAAOC,IAAI,CAACN,SAASO,MAAM;IAEvE,6EAA6E;IAC7E,uHAAuH;IACvH,gDAAgD;IAEhDP,OAAO,CAACI,iBAAiB,GAAG;QAC1BV,MACES,cAAcK,UAAU,CAAC,QAAQL,cAAcK,UAAU,CAAC,OACtDd,KAAKe,KAAK,CAACC,IAAI,CAACZ,QAAQa,OAAO,CAAC,OAAO,MAAMR,cAAcS,KAAK,CAAC,MACjET;QACNU,WAAWX;IACb;IACAH,SAAS,CAACI,gBAAgB,MAAMD,WAAW,GAAGE;AAChD;AAIA,OAAO,eAAeU,kBACpBC,MAAuB,EACvBC,OAA2C;IAE3C,MAAMC,YAAYD,SAASE,OAAO;IAElC,IAAID,WAAW;QACbE,QAAQD,GAAG,CAAC;IACd;IAEA,MAAMnB,YAA+B,CAAC;IACtC,MAAMC,UAAmB,CAAC;IAE1B,MAAMoB,UAAU3B,QAAQ4B,GAAG,CAACC,QAAQ,IAAI7B,QAAQ8B,GAAG;IAEnD,yBAAyB;IACzB,QAAQ;IACR,iDAAiD;IACjD,aAAa;IACb,oCAAoC;IAEpC,KAAK;IAEL,QAAQ;IACR,iDAAiD;IACjD,iBAAiB;IACjB,+BAA+B;IAE/B,KAAK;IACL,qCAAqC;IACrC,aAAa;IACb,wBAAwB;IAExB,MAAMC,oBAAoB9B,KAAK+B,QAAQ,CAACL,SAASL,OAAOW,KAAK,CAAC3B,SAAS,CAACD,OAAO;IAE/E,MAAM6B,iBAAiC,CAAC1B;QACtC,IAAI,CAACA,kBAAkB;YACrB;QACF;QAEA,IAAI,OAAOA,qBAAqB,YAAY,OAAOA,qBAAqB,UAAU;YAChFkB,QAAQS,KAAK,CAAC3B;YACd,MAAM,IAAI4B,MAAM;QAClB;QAEA,IAAIC,MAAMC,OAAO,CAAC9B,mBAAmB;YACnC,KAAK,MAAM+B,aAAa/B,iBAAkB;gBACxCJ,+BAA+B;oBAC7BC,SAAS0B;oBACTzB;oBACAC;oBACAC,kBAAkB+B;gBACpB;YACF;QACF,OAAO;YACLnC,+BAA+B;gBAC7BC,SAAS0B;gBACTzB;gBACAC;gBACAC;YACF;QACF;IACF;IAEAN,cAAc;QACZgC;QACA7B,SAASiB,OAAOW,KAAK,CAAC3B,SAAS,CAACD,OAAO;QACvCiB;QACAhB;QACAC;IACF;IAEA,MAAMiC,eAAe;QACnBC,cAAcnC;QACdoC,UAAU;QACVC,OAAOpB,SAASoB;QAChBrC,WAAWC;QACXkB,KAAKD;QACLG;IACF;AACF;AAEA,OAAO,eAAea,eAAe,EACnCC,YAAY,EACZC,QAAQ,EACRC,KAAK,EACLrC,SAAS,EACTmB,GAAG,EACHE,OAAO,EAQR;IACC,IAAIiB,sBAAsB;IAC1B,IAAI7C,GAAG8C,UAAU,CAAC5C,KAAK6C,OAAO,CAACnB,SAAS,0BAA0B;QAChEiB,sBAAsB3C,KAAK6C,OAAO,CAACnB,SAAS;IAC9C,OAAO,IAAI5B,GAAG8C,UAAU,CAAC5C,KAAK6C,OAAO,CAACnB,SAAS,8BAA8B;QAC3EiB,sBAAsB3C,KAAK6C,OAAO,CAACnB,SAAS;IAC9C,OAAO;QACL,MAAM,IAAIS,MACR,CAAC,sDAAsD,EAAEnC,KAAK6C,OAAO,CAACnB,SAAS,wBAAwB,KAAK,EAAE1B,KAAK6C,OAAO,CAACnB,SAAS,4BAA4B,CAAC;IAErK;IAEA,MAAMpB,UAAoB,EAAE;IAC5B,KAAK,MAAM,CAACwC,YAAY,EAAE9C,IAAI,EAAEmB,SAAS,EAAE,CAAC,IAAIR,OAAOoC,OAAO,CAAC1C,WAAY;QACzEC,QAAQ0C,IAAI,CAAC,CAAC,SAAS,EAAE7B,UAAU,IAAI,EAAE2B,WAAW,SAAS,EAAE9C,KAAK,CAAC,CAAC;IACxE;IAEA,MAAMiD,UAAoB,EAAE;IAC5B,KAAK,MAAM,CAACC,UAAUJ,WAAW,IAAInC,OAAOoC,OAAO,CAACP,cAAe;QACjES,QAAQD,IAAI,CAAC,CAAC,GAAG,EAAEE,SAAS,GAAG,EAAEJ,WAAW,CAAC;IAC/C;IAEA,MAAMK,sBAAsB,CAAC,EAAE7C,QAAQU,IAAI,CAAC,MAAM;;;AAGpD,EAAEiC,QAAQjC,IAAI,CAAC,OAAO;;AAEtB,CAAC;IAEC,MAAMoC,oBAAoBpD,KAAK6C,OAAO,CAACF,qBAAqBF;IAE5D,IAAI,CAACC,OAAO;QACV,+GAA+G;QAC/G,MAAMW,mBAAmB,MAAMvD,GAAGwD,QAAQ,CAACC,QAAQ,CAACH,mBAAmB;QAEvE,IAAIC,kBAAkBG,WAAWL,qBAAqBK,QAAQ;YAC5D,IAAIhC,KAAK;gBACPC,QAAQD,GAAG,CAAC;YACd;YACA;QACF;IACF;IAEA,IAAIA,KAAK;QACPC,QAAQD,GAAG,CAAC,yBAAyB4B;IACvC;IAEA,MAAMtD,GAAGwD,QAAQ,CAACG,SAAS,CAACL,mBAAmBD;AACjD"}
1
+ {"version":3,"sources":["../../../src/bin/generateImportMap/index.ts"],"sourcesContent":["import crypto from 'crypto'\nimport fs from 'fs'\nimport process from 'node:process'\nimport path from 'path'\n\nimport type { PayloadComponent, SanitizedConfig } from '../../config/types.js'\n\nimport { iterateConfig } from './iterateConfig.js'\nimport { parsePayloadComponent } from './parsePayloadComponent.js'\n\ntype ImportIdentifier = string\ntype ImportSpecifier = string\ntype ImportPath = string\ntype UserImportPath = string\n\n/**\n * Import Map before being written to the file. Only contains all paths\n */\nexport type InternalImportMap = {\n [path: UserImportPath]: ImportIdentifier\n}\n\n/**\n * Imports of the import map.\n */\nexport type Imports = {\n [identifier: ImportIdentifier]: {\n path: ImportPath\n specifier: ImportSpecifier\n }\n}\n\n/**\n * Import Map after being imported from the actual import map. Contains all the actual imported components\n */\nexport type ImportMap = {\n [path: UserImportPath]: any\n}\n\nexport function addPayloadComponentToImportMap({\n baseDir,\n importMap,\n imports,\n payloadComponent,\n}: {\n baseDir: string\n importMap: InternalImportMap\n imports: Imports\n payloadComponent: PayloadComponent\n}) {\n if (!payloadComponent) {\n return\n }\n const { exportName, path: componentPath } = parsePayloadComponent(payloadComponent)\n\n if (importMap[componentPath + '#' + exportName]) {\n return\n }\n\n const importIdentifier =\n exportName + '_' + crypto.createHash('md5').update(componentPath).digest('hex')\n\n // e.g. if baseDir is /test/fields and componentPath is /components/Field.tsx\n // then path needs to be /test/fields/components/Field.tsx NOT /users/username/project/test/fields/components/Field.tsx\n // so we need to append baseDir to componentPath\n\n imports[importIdentifier] = {\n path:\n componentPath.startsWith('.') || componentPath.startsWith('/')\n ? path.posix.join(baseDir.replace(/\\\\/g, '/'), componentPath.slice(1))\n : componentPath,\n specifier: exportName,\n }\n importMap[componentPath + '#' + exportName] = importIdentifier\n}\n\nexport type AddToImportMap = (payloadComponent: PayloadComponent | PayloadComponent[]) => void\n\nexport async function generateImportMap(\n config: SanitizedConfig,\n options?: { force?: boolean; log: boolean },\n): Promise<void> {\n const shouldLog = options?.log ?? true\n\n if (shouldLog) {\n console.log('Generating import map')\n }\n\n const importMap: InternalImportMap = {}\n const imports: Imports = {}\n\n const rootDir = process.env.ROOT_DIR ?? process.cwd()\n\n // get componentsBaseDir.\n // E.g.:\n // config.admin.importMap.baseDir = /test/fields/\n // rootDir: /\n // componentsBaseDir = /test/fields/\n\n // or\n\n // E.g.:\n // config.admin.importMap.baseDir = /test/fields/\n // rootDir: /test\n // componentsBaseDir = /fields/\n\n // or\n // config.admin.importMap.baseDir = /\n // rootDir: /\n // componentsBaseDir = /\n\n const componentsBaseDir = path.relative(rootDir, config.admin.importMap.baseDir)\n\n const addToImportMap: AddToImportMap = (payloadComponent) => {\n if (!payloadComponent) {\n return\n }\n\n if (typeof payloadComponent !== 'object' && typeof payloadComponent !== 'string') {\n console.error(payloadComponent)\n throw new Error('addToImportMap > Payload component must be an object or a string')\n }\n\n if (Array.isArray(payloadComponent)) {\n for (const component of payloadComponent) {\n addPayloadComponentToImportMap({\n baseDir: componentsBaseDir,\n importMap,\n imports,\n payloadComponent: component,\n })\n }\n } else {\n addPayloadComponentToImportMap({\n baseDir: componentsBaseDir,\n importMap,\n imports,\n payloadComponent,\n })\n }\n }\n\n iterateConfig({\n addToImportMap,\n baseDir: config.admin.importMap.baseDir,\n config,\n importMap,\n imports,\n })\n\n await writeImportMap({\n componentMap: importMap,\n fileName: 'importMap.js',\n force: options?.force,\n importMap: imports,\n log: shouldLog,\n rootDir,\n })\n}\n\nexport async function writeImportMap({\n componentMap,\n fileName,\n force,\n importMap,\n log,\n rootDir,\n}: {\n componentMap: InternalImportMap\n fileName: string\n force?: boolean\n importMap: Imports\n log?: boolean\n rootDir: string\n}) {\n let importMapFolderPath = ''\n if (fs.existsSync(path.resolve(rootDir, 'app/(payload)/admin/'))) {\n importMapFolderPath = path.resolve(rootDir, 'app/(payload)/admin/')\n } else if (fs.existsSync(path.resolve(rootDir, 'src/app/(payload)/admin/'))) {\n importMapFolderPath = path.resolve(rootDir, 'src/app/(payload)/admin/')\n } else {\n throw new Error(\n `Could not find the payload admin directory. Looked in ${path.resolve(rootDir, 'app/(payload)/admin/')} and ${path.resolve(rootDir, 'src/app/(payload)/admin/')}`,\n )\n }\n\n const imports: string[] = []\n for (const [identifier, { path, specifier }] of Object.entries(importMap)) {\n imports.push(`import { ${specifier} as ${identifier} } from '${path}'`)\n }\n\n const mapKeys: string[] = []\n for (const [userPath, identifier] of Object.entries(componentMap)) {\n mapKeys.push(` \"${userPath}\": ${identifier}`)\n }\n\n const importMapOutputFile = `${imports.join('\\n')}\n\nexport const importMap = {\n${mapKeys.join(',\\n')}\n}\n`\n\n const importMapFilePath = path.resolve(importMapFolderPath, fileName)\n\n if (!force) {\n // Read current import map and check in the IMPORTS if there are any new imports. If not, don't write the file.\n const currentImportMap = await fs.promises.readFile(importMapFilePath, 'utf-8')\n\n if (currentImportMap?.trim() === importMapOutputFile?.trim()) {\n if (log) {\n console.log('No new imports found, skipping writing import map')\n }\n return\n }\n }\n\n if (log) {\n console.log('Writing import map to', importMapFilePath)\n }\n\n await fs.promises.writeFile(importMapFilePath, importMapOutputFile)\n}\n"],"names":["crypto","fs","process","path","iterateConfig","parsePayloadComponent","addPayloadComponentToImportMap","baseDir","importMap","imports","payloadComponent","exportName","componentPath","importIdentifier","createHash","update","digest","startsWith","posix","join","replace","slice","specifier","generateImportMap","config","options","shouldLog","log","console","rootDir","env","ROOT_DIR","cwd","componentsBaseDir","relative","admin","addToImportMap","error","Error","Array","isArray","component","writeImportMap","componentMap","fileName","force","importMapFolderPath","existsSync","resolve","identifier","Object","entries","push","mapKeys","userPath","importMapOutputFile","importMapFilePath","currentImportMap","promises","readFile","trim","writeFile"],"mappings":"AAAA,OAAOA,YAAY,SAAQ;AAC3B,OAAOC,QAAQ,KAAI;AACnB,OAAOC,aAAa,eAAc;AAClC,OAAOC,UAAU,OAAM;AAIvB,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,qBAAqB,QAAQ,6BAA4B;AA+BlE,OAAO,SAASC,+BAA+B,EAC7CC,OAAO,EACPC,SAAS,EACTC,OAAO,EACPC,gBAAgB,EAMjB;IACC,IAAI,CAACA,kBAAkB;QACrB;IACF;IACA,MAAM,EAAEC,UAAU,EAAER,MAAMS,aAAa,EAAE,GAAGP,sBAAsBK;IAElE,IAAIF,SAAS,CAACI,gBAAgB,MAAMD,WAAW,EAAE;QAC/C;IACF;IAEA,MAAME,mBACJF,aAAa,MAAMX,OAAOc,UAAU,CAAC,OAAOC,MAAM,CAACH,eAAeI,MAAM,CAAC;IAE3E,6EAA6E;IAC7E,uHAAuH;IACvH,gDAAgD;IAEhDP,OAAO,CAACI,iBAAiB,GAAG;QAC1BV,MACES,cAAcK,UAAU,CAAC,QAAQL,cAAcK,UAAU,CAAC,OACtDd,KAAKe,KAAK,CAACC,IAAI,CAACZ,QAAQa,OAAO,CAAC,OAAO,MAAMR,cAAcS,KAAK,CAAC,MACjET;QACNU,WAAWX;IACb;IACAH,SAAS,CAACI,gBAAgB,MAAMD,WAAW,GAAGE;AAChD;AAIA,OAAO,eAAeU,kBACpBC,MAAuB,EACvBC,OAA2C;IAE3C,MAAMC,YAAYD,SAASE,OAAO;IAElC,IAAID,WAAW;QACbE,QAAQD,GAAG,CAAC;IACd;IAEA,MAAMnB,YAA+B,CAAC;IACtC,MAAMC,UAAmB,CAAC;IAE1B,MAAMoB,UAAU3B,QAAQ4B,GAAG,CAACC,QAAQ,IAAI7B,QAAQ8B,GAAG;IAEnD,yBAAyB;IACzB,QAAQ;IACR,iDAAiD;IACjD,aAAa;IACb,oCAAoC;IAEpC,KAAK;IAEL,QAAQ;IACR,iDAAiD;IACjD,iBAAiB;IACjB,+BAA+B;IAE/B,KAAK;IACL,qCAAqC;IACrC,aAAa;IACb,wBAAwB;IAExB,MAAMC,oBAAoB9B,KAAK+B,QAAQ,CAACL,SAASL,OAAOW,KAAK,CAAC3B,SAAS,CAACD,OAAO;IAE/E,MAAM6B,iBAAiC,CAAC1B;QACtC,IAAI,CAACA,kBAAkB;YACrB;QACF;QAEA,IAAI,OAAOA,qBAAqB,YAAY,OAAOA,qBAAqB,UAAU;YAChFkB,QAAQS,KAAK,CAAC3B;YACd,MAAM,IAAI4B,MAAM;QAClB;QAEA,IAAIC,MAAMC,OAAO,CAAC9B,mBAAmB;YACnC,KAAK,MAAM+B,aAAa/B,iBAAkB;gBACxCJ,+BAA+B;oBAC7BC,SAAS0B;oBACTzB;oBACAC;oBACAC,kBAAkB+B;gBACpB;YACF;QACF,OAAO;YACLnC,+BAA+B;gBAC7BC,SAAS0B;gBACTzB;gBACAC;gBACAC;YACF;QACF;IACF;IAEAN,cAAc;QACZgC;QACA7B,SAASiB,OAAOW,KAAK,CAAC3B,SAAS,CAACD,OAAO;QACvCiB;QACAhB;QACAC;IACF;IAEA,MAAMiC,eAAe;QACnBC,cAAcnC;QACdoC,UAAU;QACVC,OAAOpB,SAASoB;QAChBrC,WAAWC;QACXkB,KAAKD;QACLG;IACF;AACF;AAEA,OAAO,eAAea,eAAe,EACnCC,YAAY,EACZC,QAAQ,EACRC,KAAK,EACLrC,SAAS,EACTmB,GAAG,EACHE,OAAO,EAQR;IACC,IAAIiB,sBAAsB;IAC1B,IAAI7C,GAAG8C,UAAU,CAAC5C,KAAK6C,OAAO,CAACnB,SAAS,0BAA0B;QAChEiB,sBAAsB3C,KAAK6C,OAAO,CAACnB,SAAS;IAC9C,OAAO,IAAI5B,GAAG8C,UAAU,CAAC5C,KAAK6C,OAAO,CAACnB,SAAS,8BAA8B;QAC3EiB,sBAAsB3C,KAAK6C,OAAO,CAACnB,SAAS;IAC9C,OAAO;QACL,MAAM,IAAIS,MACR,CAAC,sDAAsD,EAAEnC,KAAK6C,OAAO,CAACnB,SAAS,wBAAwB,KAAK,EAAE1B,KAAK6C,OAAO,CAACnB,SAAS,4BAA4B,CAAC;IAErK;IAEA,MAAMpB,UAAoB,EAAE;IAC5B,KAAK,MAAM,CAACwC,YAAY,EAAE9C,IAAI,EAAEmB,SAAS,EAAE,CAAC,IAAI4B,OAAOC,OAAO,CAAC3C,WAAY;QACzEC,QAAQ2C,IAAI,CAAC,CAAC,SAAS,EAAE9B,UAAU,IAAI,EAAE2B,WAAW,SAAS,EAAE9C,KAAK,CAAC,CAAC;IACxE;IAEA,MAAMkD,UAAoB,EAAE;IAC5B,KAAK,MAAM,CAACC,UAAUL,WAAW,IAAIC,OAAOC,OAAO,CAACR,cAAe;QACjEU,QAAQD,IAAI,CAAC,CAAC,GAAG,EAAEE,SAAS,GAAG,EAAEL,WAAW,CAAC;IAC/C;IAEA,MAAMM,sBAAsB,CAAC,EAAE9C,QAAQU,IAAI,CAAC,MAAM;;;AAGpD,EAAEkC,QAAQlC,IAAI,CAAC,OAAO;;AAEtB,CAAC;IAEC,MAAMqC,oBAAoBrD,KAAK6C,OAAO,CAACF,qBAAqBF;IAE5D,IAAI,CAACC,OAAO;QACV,+GAA+G;QAC/G,MAAMY,mBAAmB,MAAMxD,GAAGyD,QAAQ,CAACC,QAAQ,CAACH,mBAAmB;QAEvE,IAAIC,kBAAkBG,WAAWL,qBAAqBK,QAAQ;YAC5D,IAAIjC,KAAK;gBACPC,QAAQD,GAAG,CAAC;YACd;YACA;QACF;IACF;IAEA,IAAIA,KAAK;QACPC,QAAQD,GAAG,CAAC,yBAAyB6B;IACvC;IAEA,MAAMvD,GAAGyD,QAAQ,CAACG,SAAS,CAACL,mBAAmBD;AACjD"}
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../../src/collections/config/sanitize.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,yBAAyB,EAAkB,MAAM,YAAY,CAAA;AAgB7F,eAAO,MAAM,kBAAkB,WACrB,MAAM,cACF,gBAAgB,iCAKG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,KAC/E,OAAO,CAAC,yBAAyB,CA8KnC,CAAA"}
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../../src/collections/config/sanitize.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,yBAAyB,EAAkB,MAAM,YAAY,CAAA;AAgB7F,eAAO,MAAM,kBAAkB,WACrB,MAAM,cACF,gBAAgB,iCAKG,KAAK,CAAC,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,KAC/E,OAAO,CAAC,yBAAyB,CA+KnC,CAAA"}
@@ -57,6 +57,7 @@ export const sanitizeCollection = async (config, collection, /**
57
57
  disableBulkEdit: true,
58
58
  hidden: true
59
59
  },
60
+ index: true,
60
61
  label: ({ t })=>t('general:updatedAt')
61
62
  });
62
63
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/config/sanitize.ts"],"sourcesContent":["import type { LoginWithUsernameOptions } from '../../auth/types.js'\nimport type { Config, SanitizedConfig } from '../../config/types.js'\nimport type { CollectionConfig, SanitizedCollectionConfig, SanitizedJoins } from './types.js'\n\nimport { getBaseAuthFields } from '../../auth/getAuthFields.js'\nimport { TimestampsRequired } from '../../errors/TimestampsRequired.js'\nimport { sanitizeFields } from '../../fields/config/sanitize.js'\nimport { fieldAffectsData } from '../../fields/config/types.js'\nimport mergeBaseFields from '../../fields/mergeBaseFields.js'\nimport { getBaseUploadFields } from '../../uploads/getBaseFields.js'\nimport { deepMergeWithReactComponents } from '../../utilities/deepMerge.js'\nimport { formatLabels } from '../../utilities/formatLabels.js'\nimport baseVersionFields from '../../versions/baseFields.js'\nimport { versionDefaults } from '../../versions/defaults.js'\nimport { authDefaults, defaults, loginWithUsernameDefaults } from './defaults.js'\nimport { sanitizeAuthFields, sanitizeUploadFields } from './reservedFieldNames.js'\nimport { validateUseAsTitle } from './useAsTitle.js'\n\nexport const sanitizeCollection = async (\n config: Config,\n collection: CollectionConfig,\n /**\n * If this property is set, RichText fields won't be sanitized immediately. Instead, they will be added to this array as promises\n * so that you can sanitize them together, after the config has been sanitized.\n */\n richTextSanitizationPromises?: Array<(config: SanitizedConfig) => Promise<void>>,\n): Promise<SanitizedCollectionConfig> => {\n // /////////////////////////////////\n // Make copy of collection config\n // /////////////////////////////////\n\n const sanitized: CollectionConfig = deepMergeWithReactComponents(defaults, collection)\n\n // /////////////////////////////////\n // Sanitize fields\n // /////////////////////////////////\n\n const validRelationships = config.collections.map((c) => c.slug) || []\n const joins: SanitizedJoins = {}\n sanitized.fields = await sanitizeFields({\n collectionConfig: sanitized,\n config,\n fields: sanitized.fields,\n joins,\n parentIsLocalized: false,\n richTextSanitizationPromises,\n schemaPath: '',\n validRelationships,\n })\n\n if (sanitized.timestamps !== false) {\n // add default timestamps fields only as needed\n let hasUpdatedAt = null\n let hasCreatedAt = null\n sanitized.fields.some((field) => {\n if (fieldAffectsData(field)) {\n if (field.name === 'updatedAt') {\n hasUpdatedAt = true\n }\n if (field.name === 'createdAt') {\n hasCreatedAt = true\n }\n }\n return hasCreatedAt && hasUpdatedAt\n })\n if (!hasUpdatedAt) {\n sanitized.fields.push({\n name: 'updatedAt',\n type: 'date',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n label: ({ t }) => t('general:updatedAt'),\n })\n }\n if (!hasCreatedAt) {\n sanitized.fields.push({\n name: 'createdAt',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n // The default sort for list view is createdAt. Thus, enabling indexing by default, is a major performance improvement, especially for large or a large amount of collections.\n type: 'date',\n index: true,\n label: ({ t }) => t('general:createdAt'),\n })\n }\n }\n\n sanitized.labels = sanitized.labels || formatLabels(sanitized.slug)\n\n if (sanitized.versions) {\n if (sanitized.versions === true) {\n sanitized.versions = { drafts: false }\n }\n\n if (sanitized.timestamps === false) {\n throw new TimestampsRequired(collection)\n }\n\n if (sanitized.versions.drafts) {\n if (sanitized.versions.drafts === true) {\n sanitized.versions.drafts = {\n autosave: false,\n validate: false,\n }\n }\n\n if (sanitized.versions.drafts.autosave === true) {\n sanitized.versions.drafts.autosave = {\n interval: versionDefaults.autosaveInterval,\n }\n }\n\n if (sanitized.versions.drafts.validate === undefined) {\n sanitized.versions.drafts.validate = false\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, baseVersionFields)\n }\n }\n\n if (sanitized.upload) {\n if (sanitized.upload === true) {\n sanitized.upload = {}\n }\n\n // sanitize fields for reserved names\n sanitizeUploadFields(sanitized.fields, sanitized)\n\n sanitized.upload.bulkUpload = sanitized.upload?.bulkUpload ?? true\n sanitized.upload.staticDir = sanitized.upload.staticDir || sanitized.slug\n sanitized.admin.useAsTitle =\n sanitized.admin.useAsTitle && sanitized.admin.useAsTitle !== 'id'\n ? sanitized.admin.useAsTitle\n : 'filename'\n\n const uploadFields = getBaseUploadFields({\n collection: sanitized,\n config,\n })\n\n sanitized.fields = mergeBaseFields(sanitized.fields, uploadFields)\n }\n\n if (sanitized.auth) {\n // sanitize fields for reserved names\n sanitizeAuthFields(sanitized.fields, sanitized)\n\n sanitized.auth = deepMergeWithReactComponents(\n authDefaults,\n typeof sanitized.auth === 'object' ? sanitized.auth : {},\n )\n\n if (!sanitized.auth.disableLocalStrategy && sanitized.auth.verify === true) {\n sanitized.auth.verify = {}\n }\n\n // disable duplicate for auth enabled collections by default\n sanitized.disableDuplicate = sanitized.disableDuplicate ?? true\n\n if (!sanitized.auth.strategies) {\n sanitized.auth.strategies = []\n }\n\n if (sanitized.auth.loginWithUsername) {\n if (sanitized.auth.loginWithUsername === true) {\n sanitized.auth.loginWithUsername = loginWithUsernameDefaults\n } else {\n const loginWithUsernameWithDefaults = {\n ...loginWithUsernameDefaults,\n ...sanitized.auth.loginWithUsername,\n } as LoginWithUsernameOptions\n\n // if allowEmailLogin is false, requireUsername must be true\n if (loginWithUsernameWithDefaults.allowEmailLogin === false) {\n loginWithUsernameWithDefaults.requireUsername = true\n }\n sanitized.auth.loginWithUsername = loginWithUsernameWithDefaults\n }\n } else {\n sanitized.auth.loginWithUsername = false\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, getBaseAuthFields(sanitized.auth))\n }\n\n if (collection?.admin?.pagination?.limits?.length) {\n sanitized.admin.pagination.limits = collection.admin.pagination.limits\n }\n\n validateUseAsTitle(sanitized)\n\n const sanitizedConfig = sanitized as SanitizedCollectionConfig\n\n sanitizedConfig.joins = joins\n\n return sanitizedConfig\n}\n"],"names":["getBaseAuthFields","TimestampsRequired","sanitizeFields","fieldAffectsData","mergeBaseFields","getBaseUploadFields","deepMergeWithReactComponents","formatLabels","baseVersionFields","versionDefaults","authDefaults","defaults","loginWithUsernameDefaults","sanitizeAuthFields","sanitizeUploadFields","validateUseAsTitle","sanitizeCollection","config","collection","richTextSanitizationPromises","sanitized","validRelationships","collections","map","c","slug","joins","fields","collectionConfig","parentIsLocalized","schemaPath","timestamps","hasUpdatedAt","hasCreatedAt","some","field","name","push","type","admin","disableBulkEdit","hidden","label","t","index","labels","versions","drafts","autosave","validate","interval","autosaveInterval","undefined","upload","bulkUpload","staticDir","useAsTitle","uploadFields","auth","disableLocalStrategy","verify","disableDuplicate","strategies","loginWithUsername","loginWithUsernameWithDefaults","allowEmailLogin","requireUsername","pagination","limits","length","sanitizedConfig"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/config/sanitize.ts"],"sourcesContent":["import type { LoginWithUsernameOptions } from '../../auth/types.js'\nimport type { Config, SanitizedConfig } from '../../config/types.js'\nimport type { CollectionConfig, SanitizedCollectionConfig, SanitizedJoins } from './types.js'\n\nimport { getBaseAuthFields } from '../../auth/getAuthFields.js'\nimport { TimestampsRequired } from '../../errors/TimestampsRequired.js'\nimport { sanitizeFields } from '../../fields/config/sanitize.js'\nimport { fieldAffectsData } from '../../fields/config/types.js'\nimport mergeBaseFields from '../../fields/mergeBaseFields.js'\nimport { getBaseUploadFields } from '../../uploads/getBaseFields.js'\nimport { deepMergeWithReactComponents } from '../../utilities/deepMerge.js'\nimport { formatLabels } from '../../utilities/formatLabels.js'\nimport baseVersionFields from '../../versions/baseFields.js'\nimport { versionDefaults } from '../../versions/defaults.js'\nimport { authDefaults, defaults, loginWithUsernameDefaults } from './defaults.js'\nimport { sanitizeAuthFields, sanitizeUploadFields } from './reservedFieldNames.js'\nimport { validateUseAsTitle } from './useAsTitle.js'\n\nexport const sanitizeCollection = async (\n config: Config,\n collection: CollectionConfig,\n /**\n * If this property is set, RichText fields won't be sanitized immediately. Instead, they will be added to this array as promises\n * so that you can sanitize them together, after the config has been sanitized.\n */\n richTextSanitizationPromises?: Array<(config: SanitizedConfig) => Promise<void>>,\n): Promise<SanitizedCollectionConfig> => {\n // /////////////////////////////////\n // Make copy of collection config\n // /////////////////////////////////\n\n const sanitized: CollectionConfig = deepMergeWithReactComponents(defaults, collection)\n\n // /////////////////////////////////\n // Sanitize fields\n // /////////////////////////////////\n\n const validRelationships = config.collections.map((c) => c.slug) || []\n const joins: SanitizedJoins = {}\n sanitized.fields = await sanitizeFields({\n collectionConfig: sanitized,\n config,\n fields: sanitized.fields,\n joins,\n parentIsLocalized: false,\n richTextSanitizationPromises,\n schemaPath: '',\n validRelationships,\n })\n\n if (sanitized.timestamps !== false) {\n // add default timestamps fields only as needed\n let hasUpdatedAt = null\n let hasCreatedAt = null\n sanitized.fields.some((field) => {\n if (fieldAffectsData(field)) {\n if (field.name === 'updatedAt') {\n hasUpdatedAt = true\n }\n if (field.name === 'createdAt') {\n hasCreatedAt = true\n }\n }\n return hasCreatedAt && hasUpdatedAt\n })\n if (!hasUpdatedAt) {\n sanitized.fields.push({\n name: 'updatedAt',\n type: 'date',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n index: true,\n label: ({ t }) => t('general:updatedAt'),\n })\n }\n if (!hasCreatedAt) {\n sanitized.fields.push({\n name: 'createdAt',\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n // The default sort for list view is createdAt. Thus, enabling indexing by default, is a major performance improvement, especially for large or a large amount of collections.\n type: 'date',\n index: true,\n label: ({ t }) => t('general:createdAt'),\n })\n }\n }\n\n sanitized.labels = sanitized.labels || formatLabels(sanitized.slug)\n\n if (sanitized.versions) {\n if (sanitized.versions === true) {\n sanitized.versions = { drafts: false }\n }\n\n if (sanitized.timestamps === false) {\n throw new TimestampsRequired(collection)\n }\n\n if (sanitized.versions.drafts) {\n if (sanitized.versions.drafts === true) {\n sanitized.versions.drafts = {\n autosave: false,\n validate: false,\n }\n }\n\n if (sanitized.versions.drafts.autosave === true) {\n sanitized.versions.drafts.autosave = {\n interval: versionDefaults.autosaveInterval,\n }\n }\n\n if (sanitized.versions.drafts.validate === undefined) {\n sanitized.versions.drafts.validate = false\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, baseVersionFields)\n }\n }\n\n if (sanitized.upload) {\n if (sanitized.upload === true) {\n sanitized.upload = {}\n }\n\n // sanitize fields for reserved names\n sanitizeUploadFields(sanitized.fields, sanitized)\n\n sanitized.upload.bulkUpload = sanitized.upload?.bulkUpload ?? true\n sanitized.upload.staticDir = sanitized.upload.staticDir || sanitized.slug\n sanitized.admin.useAsTitle =\n sanitized.admin.useAsTitle && sanitized.admin.useAsTitle !== 'id'\n ? sanitized.admin.useAsTitle\n : 'filename'\n\n const uploadFields = getBaseUploadFields({\n collection: sanitized,\n config,\n })\n\n sanitized.fields = mergeBaseFields(sanitized.fields, uploadFields)\n }\n\n if (sanitized.auth) {\n // sanitize fields for reserved names\n sanitizeAuthFields(sanitized.fields, sanitized)\n\n sanitized.auth = deepMergeWithReactComponents(\n authDefaults,\n typeof sanitized.auth === 'object' ? sanitized.auth : {},\n )\n\n if (!sanitized.auth.disableLocalStrategy && sanitized.auth.verify === true) {\n sanitized.auth.verify = {}\n }\n\n // disable duplicate for auth enabled collections by default\n sanitized.disableDuplicate = sanitized.disableDuplicate ?? true\n\n if (!sanitized.auth.strategies) {\n sanitized.auth.strategies = []\n }\n\n if (sanitized.auth.loginWithUsername) {\n if (sanitized.auth.loginWithUsername === true) {\n sanitized.auth.loginWithUsername = loginWithUsernameDefaults\n } else {\n const loginWithUsernameWithDefaults = {\n ...loginWithUsernameDefaults,\n ...sanitized.auth.loginWithUsername,\n } as LoginWithUsernameOptions\n\n // if allowEmailLogin is false, requireUsername must be true\n if (loginWithUsernameWithDefaults.allowEmailLogin === false) {\n loginWithUsernameWithDefaults.requireUsername = true\n }\n sanitized.auth.loginWithUsername = loginWithUsernameWithDefaults\n }\n } else {\n sanitized.auth.loginWithUsername = false\n }\n\n sanitized.fields = mergeBaseFields(sanitized.fields, getBaseAuthFields(sanitized.auth))\n }\n\n if (collection?.admin?.pagination?.limits?.length) {\n sanitized.admin.pagination.limits = collection.admin.pagination.limits\n }\n\n validateUseAsTitle(sanitized)\n\n const sanitizedConfig = sanitized as SanitizedCollectionConfig\n\n sanitizedConfig.joins = joins\n\n return sanitizedConfig\n}\n"],"names":["getBaseAuthFields","TimestampsRequired","sanitizeFields","fieldAffectsData","mergeBaseFields","getBaseUploadFields","deepMergeWithReactComponents","formatLabels","baseVersionFields","versionDefaults","authDefaults","defaults","loginWithUsernameDefaults","sanitizeAuthFields","sanitizeUploadFields","validateUseAsTitle","sanitizeCollection","config","collection","richTextSanitizationPromises","sanitized","validRelationships","collections","map","c","slug","joins","fields","collectionConfig","parentIsLocalized","schemaPath","timestamps","hasUpdatedAt","hasCreatedAt","some","field","name","push","type","admin","disableBulkEdit","hidden","index","label","t","labels","versions","drafts","autosave","validate","interval","autosaveInterval","undefined","upload","bulkUpload","staticDir","useAsTitle","uploadFields","auth","disableLocalStrategy","verify","disableDuplicate","strategies","loginWithUsername","loginWithUsernameWithDefaults","allowEmailLogin","requireUsername","pagination","limits","length","sanitizedConfig"],"mappings":"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"}
@@ -8,7 +8,7 @@ import type { Access, AfterErrorHookArgs, AfterErrorResult, CustomComponent, Edi
8
8
  import type { DBIdentifierName } from '../../database/types.js';
9
9
  import type { Field, JoinField, RelationshipField, UploadField } from '../../fields/config/types.js';
10
10
  import type { CollectionSlug, JsonObject, TypedAuthOperations, TypedCollection } from '../../index.js';
11
- import type { PayloadRequest, RequestContext } from '../../types/index.js';
11
+ import type { PayloadRequest, RequestContext, Sort } from '../../types/index.js';
12
12
  import type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js';
13
13
  import type { IncomingCollectionVersions, SanitizedCollectionVersions } from '../../versions/types.js';
14
14
  import type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js';
@@ -307,7 +307,7 @@ export type CollectionConfig<TSlug extends CollectionSlug = any> = {
307
307
  /**
308
308
  * Default field to sort by in collection list view
309
309
  */
310
- defaultSort?: string;
310
+ defaultSort?: Sort;
311
311
  /**
312
312
  * When true, do not show the "Duplicate" button while editing documents within this collection and prevent `duplicate` from all APIs
313
313
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/config/types.ts"],"sourcesContent":["import type { GraphQLInputObjectType, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport type { DeepRequired, MarkOptional } from 'ts-essentials'\n\nimport type {\n CustomPreviewButton,\n CustomPublishButton,\n CustomSaveButton,\n CustomSaveDraftButton,\n CustomUpload,\n} from '../../admin/types.js'\nimport type { Arguments as MeArguments } from '../../auth/operations/me.js'\nimport type {\n Arguments as RefreshArguments,\n Result as RefreshResult,\n} from '../../auth/operations/refresh.js'\nimport type { Auth, ClientUser, IncomingAuthType } from '../../auth/types.js'\nimport type {\n Access,\n AfterErrorHookArgs,\n AfterErrorResult,\n CustomComponent,\n EditConfig,\n Endpoint,\n EntityDescription,\n EntityDescriptionComponent,\n GeneratePreviewURL,\n LabelFunction,\n LivePreviewConfig,\n MetaConfig,\n PayloadComponent,\n StaticLabel,\n} from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { Field, JoinField, RelationshipField, UploadField } from '../../fields/config/types.js'\nimport type {\n CollectionSlug,\n JsonObject,\n TypedAuthOperations,\n TypedCollection,\n} from '../../index.js'\nimport type { PayloadRequest, RequestContext } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js'\nimport type {\n IncomingCollectionVersions,\n SanitizedCollectionVersions,\n} from '../../versions/types.js'\nimport type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js'\n\nexport type DataFromCollectionSlug<TSlug extends CollectionSlug> = TypedCollection[TSlug]\nexport type AuthOperationsFromCollectionSlug<TSlug extends CollectionSlug> =\n TypedAuthOperations[TSlug]\n\nexport type RequiredDataFromCollection<TData extends JsonObject> = MarkOptional<\n TData,\n 'createdAt' | 'id' | 'sizes' | 'updatedAt'\n>\n\nexport type RequiredDataFromCollectionSlug<TSlug extends CollectionSlug> =\n RequiredDataFromCollection<DataFromCollectionSlug<TSlug>>\n\nexport type HookOperationType =\n | 'autosave'\n | 'count'\n | 'create'\n | 'delete'\n | 'forgotPassword'\n | 'login'\n | 'read'\n | 'refresh'\n | 'update'\n\ntype CreateOrUpdateOperation = Extract<HookOperationType, 'create' | 'update'>\n\nexport type BeforeOperationHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n /**\n * Hook operation being performed\n */\n operation: HookOperationType\n req: PayloadRequest\n}) => any\n\nexport type BeforeValidateHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data?: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequest\n}) => any\n\nexport type BeforeChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequest\n}) => any\n\nexport type AfterChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n previousDoc: T\n req: PayloadRequest\n}) => any\n\nexport type BeforeReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n query: { [key: string]: any }\n req: PayloadRequest\n}) => any\n\nexport type AfterReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n findMany?: boolean\n query?: { [key: string]: any }\n req: PayloadRequest\n}) => any\n\nexport type BeforeDeleteHook = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n id: number | string\n req: PayloadRequest\n}) => any\n\nexport type AfterDeleteHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n id: number | string\n req: PayloadRequest\n}) => any\n\nexport type AfterOperationHook<TOperationGeneric extends CollectionSlug = string> = (\n arg: AfterOperationArg<TOperationGeneric>,\n) =>\n | Awaited<\n ReturnType<AfterOperationMap<TOperationGeneric>[keyof AfterOperationMap<TOperationGeneric>]>\n >\n | Promise<\n Awaited<\n ReturnType<AfterOperationMap<TOperationGeneric>[keyof AfterOperationMap<TOperationGeneric>]>\n >\n >\n\nexport type BeforeLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n user: T\n}) => any\n\nexport type AfterLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n token: string\n user: T\n}) => any\n\nexport type AfterLogoutHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n}) => any\n\nexport type AfterMeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n response: unknown\n}) => any\n\nexport type RefreshHook<T extends TypeWithID = any> = (args: {\n args: RefreshArguments\n user: T\n}) => Promise<RefreshResult | void> | (RefreshResult | void)\n\nexport type MeHook<T extends TypeWithID = any> = (args: {\n args: MeArguments\n user: T\n}) => ({ exp: number; user: T } | void) | Promise<{ exp: number; user: T } | void>\n\nexport type AfterRefreshHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n exp: number\n req: PayloadRequest\n token: string\n}) => any\n\nexport type AfterErrorHook = (\n args: { collection: SanitizedCollectionConfig } & AfterErrorHookArgs,\n) => AfterErrorResult | Promise<AfterErrorResult>\n\nexport type AfterForgotPasswordHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n}) => any\n\nexport type CollectionAdminOptions = {\n /**\n * Custom admin components\n */\n components?: {\n afterList?: CustomComponent[]\n afterListTable?: CustomComponent[]\n beforeList?: CustomComponent[]\n beforeListTable?: CustomComponent[]\n Description?: EntityDescriptionComponent\n /**\n * Components within the edit view\n */\n edit?: {\n /**\n * Replaces the \"Preview\" button\n */\n PreviewButton?: CustomPreviewButton\n /**\n * Replaces the \"Publish\" button\n * + drafts must be enabled\n */\n PublishButton?: CustomPublishButton\n /**\n * Replaces the \"Save\" button\n * + drafts must be disabled\n */\n SaveButton?: CustomSaveButton\n /**\n * Replaces the \"Save Draft\" button\n * + drafts must be enabled\n * + autosave must be disabled\n */\n SaveDraftButton?: CustomSaveDraftButton\n /**\n * Replaces the \"Upload\" section\n * + upload must be enabled\n */\n Upload?: CustomUpload\n }\n views?: {\n /**\n * Set to a React component to replace the entire Edit View, including all nested routes.\n * Set to an object to replace or modify individual nested routes, or to add new ones.\n */\n edit?: EditConfig\n list?: {\n actions?: CustomComponent[]\n Component?: PayloadComponent\n }\n }\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n /**\n * Default columns to show in list view\n */\n defaultColumns?: string[]\n /**\n * Custom description for collection\n */\n description?: EntityDescription\n enableRichTextLink?: boolean\n enableRichTextRelationship?: boolean\n /**\n * Place collections into a navigational group\n * */\n group?: Record<string, string> | string\n /**\n * Exclude the collection from the admin nav and routes\n */\n hidden?: ((args: { user: ClientUser }) => boolean) | boolean\n /**\n * Hide the API URL within the Edit view\n */\n hideAPIURL?: boolean\n /**\n * Additional fields to be searched via the full text search\n */\n listSearchableFields?: string[]\n /**\n * Live preview options\n */\n livePreview?: LivePreviewConfig\n meta?: MetaConfig\n pagination?: {\n defaultLimit?: number\n limits?: number[]\n }\n /**\n * Function to generate custom preview URL\n */\n preview?: GeneratePreviewURL\n /**\n * Field to use as title in Edit View and first column in List view\n */\n useAsTitle?: string\n}\n\n/** Manage all aspects of a data collection */\nexport type CollectionConfig<TSlug extends CollectionSlug = any> = {\n /**\n * Access control\n */\n access?: {\n admin?: ({ req }: { req: PayloadRequest }) => boolean | Promise<boolean>\n create?: Access\n delete?: Access\n read?: Access\n readVersions?: Access\n unlock?: Access\n update?: Access\n }\n /**\n * Collection admin options\n */\n admin?: CollectionAdminOptions\n /**\n * Collection login options\n *\n * Use `true` to enable with default options\n */\n auth?: boolean | IncomingAuthType\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Used to override the default naming of the database table or collection with your using a function or string\n * @WARNING: If you change this property with existing data, you will need to handle the renaming of the table in your database or by using migrations\n */\n dbName?: DBIdentifierName\n /**\n * Default field to sort by in collection list view\n */\n defaultSort?: string\n /**\n * When true, do not show the \"Duplicate\" button while editing documents within this collection and prevent `duplicate` from all APIs\n */\n disableDuplicate?: boolean\n /**\n * Custom rest api endpoints, set false to disable all rest endpoints for this collection.\n */\n endpoints?: false | Omit<Endpoint, 'root'>[]\n fields: Field[]\n /**\n * GraphQL configuration\n */\n graphQL?:\n | {\n pluralName?: string\n singularName?: string\n }\n | false\n /**\n * Hooks to modify Payload functionality\n */\n hooks?: {\n afterChange?: AfterChangeHook[]\n afterDelete?: AfterDeleteHook[]\n afterError?: AfterErrorHook[]\n afterForgotPassword?: AfterForgotPasswordHook[]\n afterLogin?: AfterLoginHook[]\n afterLogout?: AfterLogoutHook[]\n afterMe?: AfterMeHook[]\n afterOperation?: AfterOperationHook<TSlug>[]\n afterRead?: AfterReadHook[]\n afterRefresh?: AfterRefreshHook[]\n beforeChange?: BeforeChangeHook[]\n beforeDelete?: BeforeDeleteHook[]\n beforeLogin?: BeforeLoginHook[]\n beforeOperation?: BeforeOperationHook[]\n beforeRead?: BeforeReadHook[]\n beforeValidate?: BeforeValidateHook[]\n /**\n /**\n * Use the `me` hook to control the `me` operation.\n * Here, you can optionally instruct the me operation to return early,\n * and skip its default logic.\n */\n me?: MeHook[]\n /**\n * Use the `refresh` hook to control the refresh operation.\n * Here, you can optionally instruct the refresh operation to return early,\n * and skip its default logic.\n */\n refresh?: RefreshHook[]\n }\n /**\n * Label configuration\n */\n labels?: {\n plural?: LabelFunction | StaticLabel\n singular?: LabelFunction | StaticLabel\n }\n /**\n * Enables / Disables the ability to lock documents while editing\n * @default true\n */\n lockDocuments?:\n | {\n duration: number\n }\n | false\n slug: string\n /**\n * Add `createdAt` and `updatedAt` fields\n *\n * @default true\n */\n timestamps?: boolean\n /**\n * Options used in typescript generation\n */\n typescript?: {\n /**\n * Typescript generation name given to the interface type\n */\n interface?: string\n }\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable uploads\n */\n upload?: boolean | UploadConfig\n /**\n * Enable versioning. Set it to true to enable default versions settings,\n * or customize versions options by setting the property equal to an object\n * containing the version options.\n *\n * @default false // disable versioning\n */\n versions?: boolean | IncomingCollectionVersions\n}\n\nexport type SanitizedJoin = {\n /**\n * The field configuration defining the join\n */\n field: JoinField\n /**\n * The schemaPath of the join field in dot notation\n */\n schemaPath: string\n targetField: RelationshipField | UploadField\n}\n\nexport type SanitizedJoins = {\n [collectionSlug: string]: SanitizedJoin[]\n}\n\nexport interface SanitizedCollectionConfig\n extends Omit<\n DeepRequired<CollectionConfig>,\n 'auth' | 'endpoints' | 'fields' | 'upload' | 'versions'\n > {\n auth: Auth\n endpoints: Endpoint[] | false\n fields: Field[]\n /**\n * Object of collections to join 'Join Fields object keyed by collection\n */\n joins: SanitizedJoins\n upload: SanitizedUploadConfig\n versions: SanitizedCollectionVersions\n}\n\nexport type Collection = {\n config: SanitizedCollectionConfig\n customIDType?: 'number' | 'text'\n graphQL?: {\n countType: GraphQLObjectType\n JWT: GraphQLObjectType\n mutationInputType: GraphQLNonNull<any>\n paginatedType: GraphQLObjectType\n type: GraphQLObjectType\n updateMutationInputType: GraphQLNonNull<any>\n versionType: GraphQLObjectType\n whereInputType: GraphQLInputObjectType\n }\n}\n\nexport type BulkOperationResult<TSlug extends CollectionSlug> = {\n docs: DataFromCollectionSlug<TSlug>[]\n errors: {\n id: DataFromCollectionSlug<TSlug>['id']\n message: string\n }[]\n}\n\nexport type AuthCollection = {\n config: SanitizedCollectionConfig\n}\n\nexport type TypeWithID = {\n docId?: any\n id: number | string\n}\n\nexport type TypeWithTimestamps = {\n [key: string]: unknown\n createdAt: string\n id: number | string\n updatedAt: string\n}\n"],"names":[],"mappings":"AA8hBA,WAKC"}
1
+ {"version":3,"sources":["../../../src/collections/config/types.ts"],"sourcesContent":["import type { GraphQLInputObjectType, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport type { DeepRequired, MarkOptional } from 'ts-essentials'\n\nimport type {\n CustomPreviewButton,\n CustomPublishButton,\n CustomSaveButton,\n CustomSaveDraftButton,\n CustomUpload,\n} from '../../admin/types.js'\nimport type { Arguments as MeArguments } from '../../auth/operations/me.js'\nimport type {\n Arguments as RefreshArguments,\n Result as RefreshResult,\n} from '../../auth/operations/refresh.js'\nimport type { Auth, ClientUser, IncomingAuthType } from '../../auth/types.js'\nimport type {\n Access,\n AfterErrorHookArgs,\n AfterErrorResult,\n CustomComponent,\n EditConfig,\n Endpoint,\n EntityDescription,\n EntityDescriptionComponent,\n GeneratePreviewURL,\n LabelFunction,\n LivePreviewConfig,\n MetaConfig,\n PayloadComponent,\n StaticLabel,\n} from '../../config/types.js'\nimport type { DBIdentifierName } from '../../database/types.js'\nimport type { Field, JoinField, RelationshipField, UploadField } from '../../fields/config/types.js'\nimport type {\n CollectionSlug,\n JsonObject,\n TypedAuthOperations,\n TypedCollection,\n} from '../../index.js'\nimport type { PayloadRequest, RequestContext, Sort } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadConfig } from '../../uploads/types.js'\nimport type {\n IncomingCollectionVersions,\n SanitizedCollectionVersions,\n} from '../../versions/types.js'\nimport type { AfterOperationArg, AfterOperationMap } from '../operations/utils.js'\n\nexport type DataFromCollectionSlug<TSlug extends CollectionSlug> = TypedCollection[TSlug]\nexport type AuthOperationsFromCollectionSlug<TSlug extends CollectionSlug> =\n TypedAuthOperations[TSlug]\n\nexport type RequiredDataFromCollection<TData extends JsonObject> = MarkOptional<\n TData,\n 'createdAt' | 'id' | 'sizes' | 'updatedAt'\n>\n\nexport type RequiredDataFromCollectionSlug<TSlug extends CollectionSlug> =\n RequiredDataFromCollection<DataFromCollectionSlug<TSlug>>\n\nexport type HookOperationType =\n | 'autosave'\n | 'count'\n | 'create'\n | 'delete'\n | 'forgotPassword'\n | 'login'\n | 'read'\n | 'refresh'\n | 'update'\n\ntype CreateOrUpdateOperation = Extract<HookOperationType, 'create' | 'update'>\n\nexport type BeforeOperationHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n /**\n * Hook operation being performed\n */\n operation: HookOperationType\n req: PayloadRequest\n}) => any\n\nexport type BeforeValidateHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data?: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequest\n}) => any\n\nexport type BeforeChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n data: Partial<T>\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n /**\n * Original document before change\n *\n * `undefined` on 'create' operation\n */\n originalDoc?: T\n req: PayloadRequest\n}) => any\n\nexport type AfterChangeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n /**\n * Hook operation being performed\n */\n operation: CreateOrUpdateOperation\n previousDoc: T\n req: PayloadRequest\n}) => any\n\nexport type BeforeReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n query: { [key: string]: any }\n req: PayloadRequest\n}) => any\n\nexport type AfterReadHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n findMany?: boolean\n query?: { [key: string]: any }\n req: PayloadRequest\n}) => any\n\nexport type BeforeDeleteHook = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n id: number | string\n req: PayloadRequest\n}) => any\n\nexport type AfterDeleteHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n doc: T\n id: number | string\n req: PayloadRequest\n}) => any\n\nexport type AfterOperationHook<TOperationGeneric extends CollectionSlug = string> = (\n arg: AfterOperationArg<TOperationGeneric>,\n) =>\n | Awaited<\n ReturnType<AfterOperationMap<TOperationGeneric>[keyof AfterOperationMap<TOperationGeneric>]>\n >\n | Promise<\n Awaited<\n ReturnType<AfterOperationMap<TOperationGeneric>[keyof AfterOperationMap<TOperationGeneric>]>\n >\n >\n\nexport type BeforeLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n user: T\n}) => any\n\nexport type AfterLoginHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n token: string\n user: T\n}) => any\n\nexport type AfterLogoutHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n}) => any\n\nexport type AfterMeHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n req: PayloadRequest\n response: unknown\n}) => any\n\nexport type RefreshHook<T extends TypeWithID = any> = (args: {\n args: RefreshArguments\n user: T\n}) => Promise<RefreshResult | void> | (RefreshResult | void)\n\nexport type MeHook<T extends TypeWithID = any> = (args: {\n args: MeArguments\n user: T\n}) => ({ exp: number; user: T } | void) | Promise<{ exp: number; user: T } | void>\n\nexport type AfterRefreshHook<T extends TypeWithID = any> = (args: {\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n exp: number\n req: PayloadRequest\n token: string\n}) => any\n\nexport type AfterErrorHook = (\n args: { collection: SanitizedCollectionConfig } & AfterErrorHookArgs,\n) => AfterErrorResult | Promise<AfterErrorResult>\n\nexport type AfterForgotPasswordHook = (args: {\n args?: any\n /** The collection which this hook is being run on */\n collection: SanitizedCollectionConfig\n context: RequestContext\n}) => any\n\nexport type CollectionAdminOptions = {\n /**\n * Custom admin components\n */\n components?: {\n afterList?: CustomComponent[]\n afterListTable?: CustomComponent[]\n beforeList?: CustomComponent[]\n beforeListTable?: CustomComponent[]\n Description?: EntityDescriptionComponent\n /**\n * Components within the edit view\n */\n edit?: {\n /**\n * Replaces the \"Preview\" button\n */\n PreviewButton?: CustomPreviewButton\n /**\n * Replaces the \"Publish\" button\n * + drafts must be enabled\n */\n PublishButton?: CustomPublishButton\n /**\n * Replaces the \"Save\" button\n * + drafts must be disabled\n */\n SaveButton?: CustomSaveButton\n /**\n * Replaces the \"Save Draft\" button\n * + drafts must be enabled\n * + autosave must be disabled\n */\n SaveDraftButton?: CustomSaveDraftButton\n /**\n * Replaces the \"Upload\" section\n * + upload must be enabled\n */\n Upload?: CustomUpload\n }\n views?: {\n /**\n * Set to a React component to replace the entire Edit View, including all nested routes.\n * Set to an object to replace or modify individual nested routes, or to add new ones.\n */\n edit?: EditConfig\n list?: {\n actions?: CustomComponent[]\n Component?: PayloadComponent\n }\n }\n }\n /** Extension point to add your custom data. Available in server and client. */\n custom?: Record<string, any>\n /**\n * Default columns to show in list view\n */\n defaultColumns?: string[]\n /**\n * Custom description for collection\n */\n description?: EntityDescription\n enableRichTextLink?: boolean\n enableRichTextRelationship?: boolean\n /**\n * Place collections into a navigational group\n * */\n group?: Record<string, string> | string\n /**\n * Exclude the collection from the admin nav and routes\n */\n hidden?: ((args: { user: ClientUser }) => boolean) | boolean\n /**\n * Hide the API URL within the Edit view\n */\n hideAPIURL?: boolean\n /**\n * Additional fields to be searched via the full text search\n */\n listSearchableFields?: string[]\n /**\n * Live preview options\n */\n livePreview?: LivePreviewConfig\n meta?: MetaConfig\n pagination?: {\n defaultLimit?: number\n limits?: number[]\n }\n /**\n * Function to generate custom preview URL\n */\n preview?: GeneratePreviewURL\n /**\n * Field to use as title in Edit View and first column in List view\n */\n useAsTitle?: string\n}\n\n/** Manage all aspects of a data collection */\nexport type CollectionConfig<TSlug extends CollectionSlug = any> = {\n /**\n * Access control\n */\n access?: {\n admin?: ({ req }: { req: PayloadRequest }) => boolean | Promise<boolean>\n create?: Access\n delete?: Access\n read?: Access\n readVersions?: Access\n unlock?: Access\n update?: Access\n }\n /**\n * Collection admin options\n */\n admin?: CollectionAdminOptions\n /**\n * Collection login options\n *\n * Use `true` to enable with default options\n */\n auth?: boolean | IncomingAuthType\n /** Extension point to add your custom data. Server only. */\n custom?: Record<string, any>\n /**\n * Used to override the default naming of the database table or collection with your using a function or string\n * @WARNING: If you change this property with existing data, you will need to handle the renaming of the table in your database or by using migrations\n */\n dbName?: DBIdentifierName\n /**\n * Default field to sort by in collection list view\n */\n defaultSort?: Sort\n /**\n * When true, do not show the \"Duplicate\" button while editing documents within this collection and prevent `duplicate` from all APIs\n */\n disableDuplicate?: boolean\n /**\n * Custom rest api endpoints, set false to disable all rest endpoints for this collection.\n */\n endpoints?: false | Omit<Endpoint, 'root'>[]\n fields: Field[]\n /**\n * GraphQL configuration\n */\n graphQL?:\n | {\n pluralName?: string\n singularName?: string\n }\n | false\n /**\n * Hooks to modify Payload functionality\n */\n hooks?: {\n afterChange?: AfterChangeHook[]\n afterDelete?: AfterDeleteHook[]\n afterError?: AfterErrorHook[]\n afterForgotPassword?: AfterForgotPasswordHook[]\n afterLogin?: AfterLoginHook[]\n afterLogout?: AfterLogoutHook[]\n afterMe?: AfterMeHook[]\n afterOperation?: AfterOperationHook<TSlug>[]\n afterRead?: AfterReadHook[]\n afterRefresh?: AfterRefreshHook[]\n beforeChange?: BeforeChangeHook[]\n beforeDelete?: BeforeDeleteHook[]\n beforeLogin?: BeforeLoginHook[]\n beforeOperation?: BeforeOperationHook[]\n beforeRead?: BeforeReadHook[]\n beforeValidate?: BeforeValidateHook[]\n /**\n /**\n * Use the `me` hook to control the `me` operation.\n * Here, you can optionally instruct the me operation to return early,\n * and skip its default logic.\n */\n me?: MeHook[]\n /**\n * Use the `refresh` hook to control the refresh operation.\n * Here, you can optionally instruct the refresh operation to return early,\n * and skip its default logic.\n */\n refresh?: RefreshHook[]\n }\n /**\n * Label configuration\n */\n labels?: {\n plural?: LabelFunction | StaticLabel\n singular?: LabelFunction | StaticLabel\n }\n /**\n * Enables / Disables the ability to lock documents while editing\n * @default true\n */\n lockDocuments?:\n | {\n duration: number\n }\n | false\n slug: string\n /**\n * Add `createdAt` and `updatedAt` fields\n *\n * @default true\n */\n timestamps?: boolean\n /**\n * Options used in typescript generation\n */\n typescript?: {\n /**\n * Typescript generation name given to the interface type\n */\n interface?: string\n }\n /**\n * Customize the handling of incoming file uploads\n *\n * @default false // disable uploads\n */\n upload?: boolean | UploadConfig\n /**\n * Enable versioning. Set it to true to enable default versions settings,\n * or customize versions options by setting the property equal to an object\n * containing the version options.\n *\n * @default false // disable versioning\n */\n versions?: boolean | IncomingCollectionVersions\n}\n\nexport type SanitizedJoin = {\n /**\n * The field configuration defining the join\n */\n field: JoinField\n /**\n * The schemaPath of the join field in dot notation\n */\n schemaPath: string\n targetField: RelationshipField | UploadField\n}\n\nexport type SanitizedJoins = {\n [collectionSlug: string]: SanitizedJoin[]\n}\n\nexport interface SanitizedCollectionConfig\n extends Omit<\n DeepRequired<CollectionConfig>,\n 'auth' | 'endpoints' | 'fields' | 'upload' | 'versions'\n > {\n auth: Auth\n endpoints: Endpoint[] | false\n fields: Field[]\n /**\n * Object of collections to join 'Join Fields object keyed by collection\n */\n joins: SanitizedJoins\n upload: SanitizedUploadConfig\n versions: SanitizedCollectionVersions\n}\n\nexport type Collection = {\n config: SanitizedCollectionConfig\n customIDType?: 'number' | 'text'\n graphQL?: {\n countType: GraphQLObjectType\n JWT: GraphQLObjectType\n mutationInputType: GraphQLNonNull<any>\n paginatedType: GraphQLObjectType\n type: GraphQLObjectType\n updateMutationInputType: GraphQLNonNull<any>\n versionType: GraphQLObjectType\n whereInputType: GraphQLInputObjectType\n }\n}\n\nexport type BulkOperationResult<TSlug extends CollectionSlug> = {\n docs: DataFromCollectionSlug<TSlug>[]\n errors: {\n id: DataFromCollectionSlug<TSlug>['id']\n message: string\n }[]\n}\n\nexport type AuthCollection = {\n config: SanitizedCollectionConfig\n}\n\nexport type TypeWithID = {\n docId?: any\n id: number | string\n}\n\nexport type TypeWithTimestamps = {\n [key: string]: unknown\n createdAt: string\n id: number | string\n updatedAt: string\n}\n"],"names":[],"mappings":"AA8hBA,WAKC"}
@@ -1,6 +1,6 @@
1
1
  import type { PaginatedDocs } from '../../database/types.js';
2
2
  import type { CollectionSlug, JoinQuery } from '../../index.js';
3
- import type { PayloadRequest, Where } from '../../types/index.js';
3
+ import type { PayloadRequest, Sort, Where } from '../../types/index.js';
4
4
  import type { Collection, DataFromCollectionSlug } from '../config/types.js';
5
5
  export type Arguments = {
6
6
  collection: Collection;
@@ -16,7 +16,7 @@ export type Arguments = {
16
16
  pagination?: boolean;
17
17
  req?: PayloadRequest;
18
18
  showHiddenFields?: boolean;
19
- sort?: string;
19
+ sort?: Sort;
20
20
  where?: Where;
21
21
  };
22
22
  export declare const findOperation: <TSlug extends CollectionSlug>(incomingArgs: Arguments) => Promise<PaginatedDocs<DataFromCollectionSlug<TSlug>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAY5E,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,KAAK,SAAS,cAAc,gBAChD,SAAS,KACtB,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CA4QtD,CAAA"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/find.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAY5E,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,KAAK,SAAS,cAAc,gBAChD,SAAS,KACtB,OAAO,CAAC,aAAa,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CA6QtD,CAAA"}
@@ -68,6 +68,7 @@ export const findOperation = async (incomingArgs)=>{
68
68
  });
69
69
  result = await payload.db.queryDrafts({
70
70
  collection: collectionConfig.slug,
71
+ joins: req.payloadAPI === 'GraphQL' ? false : joins,
71
72
  limit: sanitizedLimit,
72
73
  locale,
73
74
  page: sanitizedPage,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/find.ts"],"sourcesContent":["import type { AccessResult } from '../../config/types.js'\nimport type { PaginatedDocs } from '../../database/types.js'\nimport type { CollectionSlug, JoinQuery } from '../../index.js'\nimport type { PayloadRequest, Where } from '../../types/index.js'\nimport type { Collection, DataFromCollectionSlug } 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 { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { buildVersionCollectionFields } from '../../versions/buildCollectionFields.js'\nimport { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQueryKey.js'\nimport { getQueryDraftsSort } from '../../versions/drafts/getQueryDraftsSort.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n includeLockStatus?: boolean\n joins?: JoinQuery\n limit?: number\n overrideAccess?: boolean\n page?: number\n pagination?: boolean\n req?: PayloadRequest\n showHiddenFields?: boolean\n sort?: string\n where?: Where\n}\n\nexport const findOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments,\n): Promise<PaginatedDocs<DataFromCollectionSlug<TSlug>>> => {\n let args = incomingArgs\n\n try {\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n collection: { config: collectionConfig },\n collection,\n currentDepth,\n depth,\n disableErrors,\n draft: draftsEnabled,\n includeLockStatus,\n joins,\n limit,\n overrideAccess,\n page,\n pagination = true,\n req: { fallbackLocale, locale, payload },\n req,\n showHiddenFields,\n sort,\n where,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ disableErrors, req }, collectionConfig.access.read)\n\n // If errors are disabled, and access returns false, return empty results\n if (accessResult === false) {\n return {\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit,\n nextPage: null,\n page: 1,\n pagingCounter: 1,\n prevPage: null,\n totalDocs: 0,\n totalPages: 1,\n }\n }\n }\n\n // /////////////////////////////////////\n // Find\n // /////////////////////////////////////\n\n const usePagination = pagination && limit !== 0\n const sanitizedLimit = limit ?? (usePagination ? 10 : 0)\n const sanitizedPage = page || 1\n\n let result: PaginatedDocs<DataFromCollectionSlug<TSlug>>\n\n let fullWhere = combineQueries(where, accessResult)\n\n if (collectionConfig.versions?.drafts && draftsEnabled) {\n fullWhere = appendVersionToQueryKey(fullWhere)\n\n await validateQueryPaths({\n collectionConfig: collection.config,\n overrideAccess,\n req,\n versionFields: buildVersionCollectionFields(payload.config, collection.config),\n where: fullWhere,\n })\n\n result = await payload.db.queryDrafts<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination: usePagination,\n req,\n sort: getQueryDraftsSort({ collectionConfig, sort }),\n where: fullWhere,\n })\n } else {\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n result = await payload.db.find<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n joins: req.payloadAPI === 'GraphQL' ? false : joins,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination,\n req,\n sort,\n where: fullWhere,\n })\n }\n\n if (includeLockStatus) {\n try {\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n limit: sanitizedLimit,\n pagination: false,\n req,\n where: {\n and: [\n {\n 'document.relationTo': {\n equals: collectionConfig.slug,\n },\n },\n {\n 'document.value': {\n in: result.docs.map((doc) => doc.id),\n },\n },\n ],\n },\n })\n\n const lockedDocs = Array.isArray(lockedDocuments?.docs) ? lockedDocuments.docs : []\n\n result.docs = result.docs.map((doc) => {\n const lockedDoc = lockedDocs.find((lock) => lock?.document?.value === doc.id)\n return {\n ...doc,\n _isLocked: !!lockedDoc,\n _userEditing: lockedDoc ? lockedDoc?.user?.value : null,\n }\n })\n } catch (error) {\n result.docs = result.docs.map((doc) => ({\n ...doc,\n _isLocked: false,\n _userEditing: null,\n }))\n }\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n query: fullWhere,\n req,\n })) || docRef\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) =>\n afterRead<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc,\n draft: draftsEnabled,\n fallbackLocale,\n findMany: true,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n }),\n ),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n findMany: true,\n query: fullWhere,\n req,\n })) || doc\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'find',\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","validateQueryPaths","afterRead","killTransaction","buildVersionCollectionFields","appendVersionToQueryKey","getQueryDraftsSort","buildAfterOperation","findOperation","incomingArgs","args","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","req","operation","Promise","resolve","collectionConfig","currentDepth","depth","disableErrors","draft","draftsEnabled","includeLockStatus","joins","limit","overrideAccess","page","pagination","fallbackLocale","locale","payload","showHiddenFields","sort","where","accessResult","access","read","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","usePagination","sanitizedLimit","sanitizedPage","result","fullWhere","versions","drafts","versionFields","db","queryDrafts","slug","find","payloadAPI","lockedDocuments","and","equals","in","map","doc","id","lockedDocs","Array","isArray","lockedDoc","lock","document","value","_isLocked","_userEditing","user","error","all","docRef","beforeRead","query","findMany","global"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/find.ts"],"sourcesContent":["import type { AccessResult } from '../../config/types.js'\nimport type { PaginatedDocs } from '../../database/types.js'\nimport type { CollectionSlug, JoinQuery } from '../../index.js'\nimport type { PayloadRequest, Sort, Where } from '../../types/index.js'\nimport type { Collection, DataFromCollectionSlug } 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 { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { buildVersionCollectionFields } from '../../versions/buildCollectionFields.js'\nimport { appendVersionToQueryKey } from '../../versions/drafts/appendVersionToQueryKey.js'\nimport { getQueryDraftsSort } from '../../versions/drafts/getQueryDraftsSort.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments = {\n collection: Collection\n currentDepth?: number\n depth?: number\n disableErrors?: boolean\n draft?: boolean\n includeLockStatus?: boolean\n joins?: JoinQuery\n limit?: number\n overrideAccess?: boolean\n page?: number\n pagination?: boolean\n req?: PayloadRequest\n showHiddenFields?: boolean\n sort?: Sort\n where?: Where\n}\n\nexport const findOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments,\n): Promise<PaginatedDocs<DataFromCollectionSlug<TSlug>>> => {\n let args = incomingArgs\n\n try {\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'read',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n collection: { config: collectionConfig },\n collection,\n currentDepth,\n depth,\n disableErrors,\n draft: draftsEnabled,\n includeLockStatus,\n joins,\n limit,\n overrideAccess,\n page,\n pagination = true,\n req: { fallbackLocale, locale, payload },\n req,\n showHiddenFields,\n sort,\n where,\n } = args\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n let accessResult: AccessResult\n\n if (!overrideAccess) {\n accessResult = await executeAccess({ disableErrors, req }, collectionConfig.access.read)\n\n // If errors are disabled, and access returns false, return empty results\n if (accessResult === false) {\n return {\n docs: [],\n hasNextPage: false,\n hasPrevPage: false,\n limit,\n nextPage: null,\n page: 1,\n pagingCounter: 1,\n prevPage: null,\n totalDocs: 0,\n totalPages: 1,\n }\n }\n }\n\n // /////////////////////////////////////\n // Find\n // /////////////////////////////////////\n\n const usePagination = pagination && limit !== 0\n const sanitizedLimit = limit ?? (usePagination ? 10 : 0)\n const sanitizedPage = page || 1\n\n let result: PaginatedDocs<DataFromCollectionSlug<TSlug>>\n\n let fullWhere = combineQueries(where, accessResult)\n\n if (collectionConfig.versions?.drafts && draftsEnabled) {\n fullWhere = appendVersionToQueryKey(fullWhere)\n\n await validateQueryPaths({\n collectionConfig: collection.config,\n overrideAccess,\n req,\n versionFields: buildVersionCollectionFields(payload.config, collection.config),\n where: fullWhere,\n })\n\n result = await payload.db.queryDrafts<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n joins: req.payloadAPI === 'GraphQL' ? false : joins,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination: usePagination,\n req,\n sort: getQueryDraftsSort({ collectionConfig, sort }),\n where: fullWhere,\n })\n } else {\n await validateQueryPaths({\n collectionConfig,\n overrideAccess,\n req,\n where,\n })\n\n result = await payload.db.find<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig.slug,\n joins: req.payloadAPI === 'GraphQL' ? false : joins,\n limit: sanitizedLimit,\n locale,\n page: sanitizedPage,\n pagination,\n req,\n sort,\n where: fullWhere,\n })\n }\n\n if (includeLockStatus) {\n try {\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n limit: sanitizedLimit,\n pagination: false,\n req,\n where: {\n and: [\n {\n 'document.relationTo': {\n equals: collectionConfig.slug,\n },\n },\n {\n 'document.value': {\n in: result.docs.map((doc) => doc.id),\n },\n },\n ],\n },\n })\n\n const lockedDocs = Array.isArray(lockedDocuments?.docs) ? lockedDocuments.docs : []\n\n result.docs = result.docs.map((doc) => {\n const lockedDoc = lockedDocs.find((lock) => lock?.document?.value === doc.id)\n return {\n ...doc,\n _isLocked: !!lockedDoc,\n _userEditing: lockedDoc ? lockedDoc?.user?.value : null,\n }\n })\n } catch (error) {\n result.docs = result.docs.map((doc) => ({\n ...doc,\n _isLocked: false,\n _userEditing: null,\n }))\n }\n }\n\n // /////////////////////////////////////\n // beforeRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.beforeRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n query: fullWhere,\n req,\n })) || docRef\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) =>\n afterRead<DataFromCollectionSlug<TSlug>>({\n collection: collectionConfig,\n context: req.context,\n currentDepth,\n depth,\n doc,\n draft: draftsEnabled,\n fallbackLocale,\n findMany: true,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n }),\n ),\n ),\n }\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n result = {\n ...result,\n docs: await Promise.all(\n result.docs.map(async (doc) => {\n let docRef = doc\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n docRef =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: docRef,\n findMany: true,\n query: fullWhere,\n req,\n })) || doc\n }, Promise.resolve())\n\n return docRef\n }),\n ),\n }\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'find',\n result,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["executeAccess","combineQueries","validateQueryPaths","afterRead","killTransaction","buildVersionCollectionFields","appendVersionToQueryKey","getQueryDraftsSort","buildAfterOperation","findOperation","incomingArgs","args","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","req","operation","Promise","resolve","collectionConfig","currentDepth","depth","disableErrors","draft","draftsEnabled","includeLockStatus","joins","limit","overrideAccess","page","pagination","fallbackLocale","locale","payload","showHiddenFields","sort","where","accessResult","access","read","docs","hasNextPage","hasPrevPage","nextPage","pagingCounter","prevPage","totalDocs","totalPages","usePagination","sanitizedLimit","sanitizedPage","result","fullWhere","versions","drafts","versionFields","db","queryDrafts","slug","payloadAPI","find","lockedDocuments","and","equals","in","map","doc","id","lockedDocs","Array","isArray","lockedDoc","lock","document","value","_isLocked","_userEditing","user","error","all","docRef","beforeRead","query","findMany","global"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { PaginatedDocs } from '../../database/types.js';
2
- import type { PayloadRequest, Where } from '../../types/index.js';
2
+ import type { PayloadRequest, Sort, Where } from '../../types/index.js';
3
3
  import type { TypeWithVersion } from '../../versions/types.js';
4
4
  import type { Collection } from '../config/types.js';
5
5
  export type Arguments = {
@@ -11,7 +11,7 @@ export type Arguments = {
11
11
  pagination?: boolean;
12
12
  req?: PayloadRequest;
13
13
  showHiddenFields?: boolean;
14
- sort?: string;
14
+ sort?: Sort;
15
15
  where?: Where;
16
16
  };
17
17
  export declare const findVersionsOperation: <TData extends TypeWithVersion<TData>>(args: Arguments) => Promise<PaginatedDocs<TData>>;
@@ -1 +1 @@
1
- {"version":3,"file":"findVersions.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAUpD,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAU,KAAK,SAAS,eAAe,CAAC,KAAK,CAAC,QACxE,SAAS,KACd,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAsJ9B,CAAA"}
1
+ {"version":3,"file":"findVersions.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/findVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAUpD,MAAM,MAAM,SAAS,GAAG;IACtB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAU,KAAK,SAAS,eAAe,CAAC,KAAK,CAAC,QACxE,SAAS,KACd,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAsJ9B,CAAA"}