Fixes https://github.com/payloadcms/payload/issues/8630 - Fixes `hasMany: true` and `localized: true` on the foreign field - Adds `limit` to the subquery instead of hardcoded `11`. - Adds the schema path `field.on` to the subquery, without this having 2 or more relationship fields to the same collection breaks joins - Properly checks if the field is `hasMany`
250 lines
5.6 KiB
TypeScript
250 lines
5.6 KiB
TypeScript
/* tslint:disable */
|
|
/* eslint-disable */
|
|
/**
|
|
* This file was automatically generated by Payload.
|
|
* DO NOT MODIFY IT BY HAND. Instead, modify your source Payload config,
|
|
* and re-run `payload generate:types` to regenerate this file.
|
|
*/
|
|
|
|
export interface Config {
|
|
auth: {
|
|
users: UserAuthOperations;
|
|
};
|
|
collections: {
|
|
posts: Post;
|
|
categories: Category;
|
|
uploads: Upload;
|
|
'localized-posts': LocalizedPost;
|
|
'localized-categories': LocalizedCategory;
|
|
users: User;
|
|
'payload-locked-documents': PayloadLockedDocument;
|
|
'payload-preferences': PayloadPreference;
|
|
'payload-migrations': PayloadMigration;
|
|
};
|
|
db: {
|
|
defaultIDType: string;
|
|
};
|
|
globals: {};
|
|
locale: 'en' | 'es';
|
|
user: User & {
|
|
collection: 'users';
|
|
};
|
|
}
|
|
export interface UserAuthOperations {
|
|
forgotPassword: {
|
|
email: string;
|
|
password: string;
|
|
};
|
|
login: {
|
|
email: string;
|
|
password: string;
|
|
};
|
|
registerFirstUser: {
|
|
email: string;
|
|
password: string;
|
|
};
|
|
unlock: {
|
|
email: string;
|
|
password: string;
|
|
};
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "posts".
|
|
*/
|
|
export interface Post {
|
|
id: string;
|
|
title?: string | null;
|
|
upload?: (string | null) | Upload;
|
|
category?: (string | null) | Category;
|
|
categories?: (string | Category)[] | null;
|
|
categoriesLocalized?: (string | Category)[] | null;
|
|
group?: {
|
|
category?: (string | null) | Category;
|
|
camelCaseCategory?: (string | null) | Category;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "uploads".
|
|
*/
|
|
export interface Upload {
|
|
id: string;
|
|
relatedPosts?: {
|
|
docs?: (string | Post)[] | null;
|
|
hasNextPage?: boolean | null;
|
|
} | null;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
url?: string | null;
|
|
thumbnailURL?: string | null;
|
|
filename?: string | null;
|
|
mimeType?: string | null;
|
|
filesize?: number | null;
|
|
width?: number | null;
|
|
height?: number | null;
|
|
focalX?: number | null;
|
|
focalY?: number | null;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "categories".
|
|
*/
|
|
export interface Category {
|
|
id: string;
|
|
name?: string | null;
|
|
relatedPosts?: {
|
|
docs?: (string | Post)[] | null;
|
|
hasNextPage?: boolean | null;
|
|
} | null;
|
|
hasManyPosts?: {
|
|
docs?: (string | Post)[] | null;
|
|
hasNextPage?: boolean | null;
|
|
} | null;
|
|
hasManyPostsLocalized?: {
|
|
docs?: (string | Post)[] | null;
|
|
hasNextPage?: boolean | null;
|
|
} | null;
|
|
group?: {
|
|
relatedPosts?: {
|
|
docs?: (string | Post)[] | null;
|
|
hasNextPage?: boolean | null;
|
|
} | null;
|
|
camelCasePosts?: {
|
|
docs?: (string | Post)[] | null;
|
|
hasNextPage?: boolean | null;
|
|
} | null;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "localized-posts".
|
|
*/
|
|
export interface LocalizedPost {
|
|
id: string;
|
|
title?: string | null;
|
|
category?: (string | null) | LocalizedCategory;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "localized-categories".
|
|
*/
|
|
export interface LocalizedCategory {
|
|
id: string;
|
|
name?: string | null;
|
|
relatedPosts?: {
|
|
docs?: (string | LocalizedPost)[] | null;
|
|
hasNextPage?: boolean | null;
|
|
} | null;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "users".
|
|
*/
|
|
export interface User {
|
|
id: string;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
email: string;
|
|
resetPasswordToken?: string | null;
|
|
resetPasswordExpiration?: string | null;
|
|
salt?: string | null;
|
|
hash?: string | null;
|
|
loginAttempts?: number | null;
|
|
lockUntil?: string | null;
|
|
password?: string | null;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "payload-locked-documents".
|
|
*/
|
|
export interface PayloadLockedDocument {
|
|
id: string;
|
|
document?:
|
|
| ({
|
|
relationTo: 'posts';
|
|
value: string | Post;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'categories';
|
|
value: string | Category;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'uploads';
|
|
value: string | Upload;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'localized-posts';
|
|
value: string | LocalizedPost;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'localized-categories';
|
|
value: string | LocalizedCategory;
|
|
} | null)
|
|
| ({
|
|
relationTo: 'users';
|
|
value: string | User;
|
|
} | null);
|
|
globalSlug?: string | null;
|
|
user: {
|
|
relationTo: 'users';
|
|
value: string | User;
|
|
};
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "payload-preferences".
|
|
*/
|
|
export interface PayloadPreference {
|
|
id: string;
|
|
user: {
|
|
relationTo: 'users';
|
|
value: string | User;
|
|
};
|
|
key?: string | null;
|
|
value?:
|
|
| {
|
|
[k: string]: unknown;
|
|
}
|
|
| unknown[]
|
|
| string
|
|
| number
|
|
| boolean
|
|
| null;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "payload-migrations".
|
|
*/
|
|
export interface PayloadMigration {
|
|
id: string;
|
|
name?: string | null;
|
|
batch?: number | null;
|
|
updatedAt: string;
|
|
createdAt: string;
|
|
}
|
|
/**
|
|
* This interface was referenced by `Config`'s JSON-Schema
|
|
* via the `definition` "auth".
|
|
*/
|
|
export interface Auth {
|
|
[k: string]: unknown;
|
|
}
|
|
|
|
|
|
declare module 'payload' {
|
|
// @ts-ignore
|
|
export interface GeneratedTypes extends Config {}
|
|
} |