mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-19 02:56:23 +08:00
feat(server): refactor mail queue (#15204)
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
query adminMailDeliveries($input: AdminMailDeliveriesInput) {
|
||||
adminMailDeliveries(input: $input) {
|
||||
window {
|
||||
from
|
||||
to
|
||||
timezone
|
||||
bucket
|
||||
requestedSize
|
||||
effectiveSize
|
||||
}
|
||||
summary {
|
||||
total
|
||||
sent
|
||||
failed
|
||||
skipped
|
||||
canceled
|
||||
queued
|
||||
sending
|
||||
retryWait
|
||||
successRate
|
||||
}
|
||||
byStatus {
|
||||
key
|
||||
label
|
||||
total
|
||||
points {
|
||||
bucket
|
||||
count
|
||||
}
|
||||
}
|
||||
byType {
|
||||
key
|
||||
label
|
||||
total
|
||||
points {
|
||||
bucket
|
||||
count
|
||||
}
|
||||
}
|
||||
byOutcome {
|
||||
key
|
||||
label
|
||||
total
|
||||
points {
|
||||
bucket
|
||||
count
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -191,6 +191,61 @@ export const adminDashboardQuery = {
|
||||
}`,
|
||||
};
|
||||
|
||||
export const adminMailDeliveriesQuery = {
|
||||
id: 'adminMailDeliveriesQuery' as const,
|
||||
op: 'adminMailDeliveries',
|
||||
query: `query adminMailDeliveries($input: AdminMailDeliveriesInput) {
|
||||
adminMailDeliveries(input: $input) {
|
||||
window {
|
||||
from
|
||||
to
|
||||
timezone
|
||||
bucket
|
||||
requestedSize
|
||||
effectiveSize
|
||||
}
|
||||
summary {
|
||||
total
|
||||
sent
|
||||
failed
|
||||
skipped
|
||||
canceled
|
||||
queued
|
||||
sending
|
||||
retryWait
|
||||
successRate
|
||||
}
|
||||
byStatus {
|
||||
key
|
||||
label
|
||||
total
|
||||
points {
|
||||
bucket
|
||||
count
|
||||
}
|
||||
}
|
||||
byType {
|
||||
key
|
||||
label
|
||||
total
|
||||
points {
|
||||
bucket
|
||||
count
|
||||
}
|
||||
}
|
||||
byOutcome {
|
||||
key
|
||||
label
|
||||
total
|
||||
points {
|
||||
bucket
|
||||
count
|
||||
}
|
||||
}
|
||||
}
|
||||
}`,
|
||||
};
|
||||
|
||||
export const adminServerConfigQuery = {
|
||||
id: 'adminServerConfigQuery' as const,
|
||||
op: 'adminServerConfig',
|
||||
|
||||
@@ -147,6 +147,46 @@ export interface AdminLicensePreview {
|
||||
workspaceId: Scalars['String']['output'];
|
||||
}
|
||||
|
||||
export interface AdminMailDeliveriesInput {
|
||||
hours?: Scalars['Int']['input'];
|
||||
}
|
||||
|
||||
export interface AdminMailDeliveryAnalytics {
|
||||
__typename?: 'AdminMailDeliveryAnalytics';
|
||||
byOutcome: Array<AdminMailDeliverySeries>;
|
||||
byStatus: Array<AdminMailDeliverySeries>;
|
||||
byType: Array<AdminMailDeliverySeries>;
|
||||
summary: AdminMailDeliverySummary;
|
||||
window: TimeWindow;
|
||||
}
|
||||
|
||||
export interface AdminMailDeliveryPoint {
|
||||
__typename?: 'AdminMailDeliveryPoint';
|
||||
bucket: Scalars['DateTime']['output'];
|
||||
count: Scalars['Int']['output'];
|
||||
}
|
||||
|
||||
export interface AdminMailDeliverySeries {
|
||||
__typename?: 'AdminMailDeliverySeries';
|
||||
key: Scalars['String']['output'];
|
||||
label: Scalars['String']['output'];
|
||||
points: Array<AdminMailDeliveryPoint>;
|
||||
total: Scalars['Int']['output'];
|
||||
}
|
||||
|
||||
export interface AdminMailDeliverySummary {
|
||||
__typename?: 'AdminMailDeliverySummary';
|
||||
canceled: Scalars['Int']['output'];
|
||||
failed: Scalars['Int']['output'];
|
||||
queued: Scalars['Int']['output'];
|
||||
retryWait: Scalars['Int']['output'];
|
||||
sending: Scalars['Int']['output'];
|
||||
sent: Scalars['Int']['output'];
|
||||
skipped: Scalars['Int']['output'];
|
||||
successRate: Scalars['Float']['output'];
|
||||
total: Scalars['Int']['output'];
|
||||
}
|
||||
|
||||
export interface AdminSharedLinkTopItem {
|
||||
__typename?: 'AdminSharedLinkTopItem';
|
||||
docId: Scalars['String']['output'];
|
||||
@@ -2620,6 +2660,8 @@ export interface Query {
|
||||
adminAllSharedLinks: PaginatedAdminAllSharedLink;
|
||||
/** Get aggregated dashboard metrics for admin panel */
|
||||
adminDashboard: AdminDashboard;
|
||||
/** Aggregate mail delivery timeline facts for admin panel */
|
||||
adminMailDeliveries: AdminMailDeliveryAnalytics;
|
||||
/** Get workspace detail for admin */
|
||||
adminWorkspace: Maybe<AdminWorkspace>;
|
||||
/** List workspaces for admin */
|
||||
@@ -2677,6 +2719,10 @@ export interface QueryAdminDashboardArgs {
|
||||
input?: InputMaybe<AdminDashboardInput>;
|
||||
}
|
||||
|
||||
export interface QueryAdminMailDeliveriesArgs {
|
||||
input?: InputMaybe<AdminMailDeliveriesInput>;
|
||||
}
|
||||
|
||||
export interface QueryAdminWorkspaceArgs {
|
||||
id: Scalars['String']['input'];
|
||||
}
|
||||
@@ -3143,6 +3189,7 @@ export interface TestWorkspaceByokConfigResultType {
|
||||
|
||||
export enum TimeBucket {
|
||||
Day = 'Day',
|
||||
Hour = 'Hour',
|
||||
Minute = 'Minute',
|
||||
}
|
||||
|
||||
@@ -3907,6 +3954,71 @@ export type AdminDashboardQuery = {
|
||||
};
|
||||
};
|
||||
|
||||
export type AdminMailDeliveriesQueryVariables = Exact<{
|
||||
input?: InputMaybe<AdminMailDeliveriesInput>;
|
||||
}>;
|
||||
|
||||
export type AdminMailDeliveriesQuery = {
|
||||
__typename?: 'Query';
|
||||
adminMailDeliveries: {
|
||||
__typename?: 'AdminMailDeliveryAnalytics';
|
||||
window: {
|
||||
__typename?: 'TimeWindow';
|
||||
from: string;
|
||||
to: string;
|
||||
timezone: string;
|
||||
bucket: TimeBucket;
|
||||
requestedSize: number;
|
||||
effectiveSize: number;
|
||||
};
|
||||
summary: {
|
||||
__typename?: 'AdminMailDeliverySummary';
|
||||
total: number;
|
||||
sent: number;
|
||||
failed: number;
|
||||
skipped: number;
|
||||
canceled: number;
|
||||
queued: number;
|
||||
sending: number;
|
||||
retryWait: number;
|
||||
successRate: number;
|
||||
};
|
||||
byStatus: Array<{
|
||||
__typename?: 'AdminMailDeliverySeries';
|
||||
key: string;
|
||||
label: string;
|
||||
total: number;
|
||||
points: Array<{
|
||||
__typename?: 'AdminMailDeliveryPoint';
|
||||
bucket: string;
|
||||
count: number;
|
||||
}>;
|
||||
}>;
|
||||
byType: Array<{
|
||||
__typename?: 'AdminMailDeliverySeries';
|
||||
key: string;
|
||||
label: string;
|
||||
total: number;
|
||||
points: Array<{
|
||||
__typename?: 'AdminMailDeliveryPoint';
|
||||
bucket: string;
|
||||
count: number;
|
||||
}>;
|
||||
}>;
|
||||
byOutcome: Array<{
|
||||
__typename?: 'AdminMailDeliverySeries';
|
||||
key: string;
|
||||
label: string;
|
||||
total: number;
|
||||
points: Array<{
|
||||
__typename?: 'AdminMailDeliveryPoint';
|
||||
bucket: string;
|
||||
count: number;
|
||||
}>;
|
||||
}>;
|
||||
};
|
||||
};
|
||||
|
||||
export type AdminServerConfigQueryVariables = Exact<{ [key: string]: never }>;
|
||||
|
||||
export type AdminServerConfigQuery = {
|
||||
@@ -7718,6 +7830,11 @@ export type Queries =
|
||||
variables: AdminDashboardQueryVariables;
|
||||
response: AdminDashboardQuery;
|
||||
}
|
||||
| {
|
||||
name: 'adminMailDeliveriesQuery';
|
||||
variables: AdminMailDeliveriesQueryVariables;
|
||||
response: AdminMailDeliveriesQuery;
|
||||
}
|
||||
| {
|
||||
name: 'adminServerConfigQuery';
|
||||
variables: AdminServerConfigQueryVariables;
|
||||
|
||||
Reference in New Issue
Block a user