strapi-plugin-comments
Version:
1,240 lines • 1.43 MB
TypeScript
declare const _default: {
register: (context: import("./@types").StrapiContext) => void;
bootstrap: ({ strapi }: import("./@types").StrapiContext) => Promise<void>;
config: {
readonly default: {
enabledCollections?: string[];
approvalFlow?: string[];
entryLabel?: Record<string, string[]>;
moderatorRoles?: string[];
badWords?: boolean;
blockedAuthorProps?: string[];
isValidationEnabled?: boolean;
reportReasons?: {
BAD_LANGUAGE?: import("./const").REPORT_REASON.BAD_LANGUAGE;
DISCRIMINATION?: import("./const").REPORT_REASON.DISCRIMINATION;
OTHER?: import("./const").REPORT_REASON.OTHER;
};
isGQLPluginEnabled?: boolean;
gql?: {
auth?: boolean;
};
client?: {
url?: string;
contactEmail?: string;
};
};
readonly validate: (config: unknown) => import("zod").SafeParseReturnType<{
enabledCollections?: string[];
approvalFlow?: string[];
entryLabel?: Record<string, string[]>;
moderatorRoles?: string[];
badWords?: boolean;
blockedAuthorProps?: string[];
isValidationEnabled?: boolean;
reportReasons?: {
BAD_LANGUAGE?: import("./const").REPORT_REASON.BAD_LANGUAGE;
DISCRIMINATION?: import("./const").REPORT_REASON.DISCRIMINATION;
OTHER?: import("./const").REPORT_REASON.OTHER;
};
isGQLPluginEnabled?: boolean;
gql?: {
auth?: boolean;
};
client?: {
url?: string;
contactEmail?: string;
};
}, {
enabledCollections?: string[];
approvalFlow?: string[];
entryLabel?: Record<string, string[]>;
moderatorRoles?: string[];
badWords?: boolean;
blockedAuthorProps?: string[];
isValidationEnabled?: boolean;
reportReasons?: {
BAD_LANGUAGE?: import("./const").REPORT_REASON.BAD_LANGUAGE;
DISCRIMINATION?: import("./const").REPORT_REASON.DISCRIMINATION;
OTHER?: import("./const").REPORT_REASON.OTHER;
};
isGQLPluginEnabled?: boolean;
gql?: {
auth?: boolean;
};
client?: {
url?: string;
contactEmail?: string;
};
}>;
};
controllers: {
admin: ({ strapi }: import("./@types").StrapiContext) => {
getService<T extends "gql" | "client" | "admin" | "common" | "settings">(name: T): import("./services").PluginServices[T];
findAll(ctx: import("./@types").RequestContext): Promise<{
pagination: {
page?: number;
pageSize?: number;
pageCount?: number;
total?: number;
};
result: {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: {
id?: number;
documentId?: string;
locale?: string;
uid?: string;
requireCommentsApproval?: boolean;
};
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
};
}[];
}>;
findReports(ctx: import("./@types").RequestContext): Promise<{
result: {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
};
}[];
pagination: {
page?: number;
pageSize?: number;
pageCount?: number;
total?: number;
};
}>;
findOne(ctx: Omit<import("koa").Context, "body" | "query" | "request"> & {
body: object;
query: object;
params: {
id: string;
};
request: Omit<import("koa").Request, "body"> & {
body: object;
};
state: {
user?: import("./@types").AdminUser;
};
}): Promise<{
entity: {
uid: import("@strapi/types/dist/uid").ContentType;
documentId: string;
id: number;
};
selected: {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
};
};
level: any[];
}>;
blockComment(ctx: Omit<import("koa").Context, "body" | "query" | "request"> & {
body: object;
query: object;
params: {
id: string;
};
request: Omit<import("koa").Request, "body"> & {
body: object;
};
state: {
user?: import("./@types").AdminUser;
};
}): Promise<{
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
};
}>;
unblockComment(ctx: Omit<import("koa").Context, "body" | "query" | "request"> & {
body: object;
query: object;
params: {
id: string;
};
request: Omit<import("koa").Request, "body"> & {
body: object;
};
state: {
user?: import("./@types").AdminUser;
};
}): Promise<{
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
};
}>;
deleteComment(ctx: Omit<import("koa").Context, "body" | "query" | "request"> & {
body: object;
query: object;
params: {
id: string;
};
request: Omit<import("koa").Request, "body"> & {
body: object;
};
state: {
user?: import("./@types").AdminUser;
};
}): Promise<{
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
};
}>;
blockCommentThread(ctx: Omit<import("koa").Context, "body" | "query" | "request"> & {
body: object;
query: object;
params: {
id: string;
};
request: Omit<import("koa").Request, "body"> & {
body: object;
};
state: {
user?: import("./@types").AdminUser;
};
}): Promise<{
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
};
}>;
unblockCommentThread(ctx: Omit<import("koa").Context, "body" | "query" | "request"> & {
body: object;
query: object;
params: {
id: string;
};
request: Omit<import("koa").Request, "body"> & {
body: object;
};
state: {
user?: import("./@types").AdminUser;
};
}): Promise<{
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
locale?: string;
reason?: string;
resolved?: boolean;
}[];
author?: any;
threadOf?: number | {
id?: number;
documentId?: string;
content?: string;
blocked?: boolean;
blockedThread?: boolean;
blockReason?: string;
isAdminComment?: boolean;
removed?: boolean;
approvalStatus?: string;
related?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: string;
authorId?: string;
authorName?: string;
authorEmail?: string;
authorAvatar?: string;
authorUser?: string | {
id?: number;
username?: string;
email?: string;
avatar?: {
url?: string;
name?: string;
hash?: string;
id?: number;
formats?: {
small?: {
url?: string;
name?: string;
hash?: string;
};
thumbnail?: {
url?: string;
name?: string;
hash?: string;
};
medium?: {
url?: string;
name?: string;
hash?: string;
};
large?: {
url?: string;
name?: string;
hash?: string;
};
};
};
};
locale?: string;
gotThread?: boolean;
threadFirstItemId?: number;
reports?: {
id?: number;
documentId?: string;
content?: string;
createdAt?: string;
updatedAt?: string;
publishedAt?: s