mirror of
https://github.com/wassname/talk.git
synced 2026-07-17 11:33:39 +08:00
* refactor: removed unused subscription code
* refactor: removed management api's
* refactor: cleanup of connections
* refactor: refactored comments edge
* refactor: simplified connection resolving
* feat: added story connection edge
* fix: added story index
* feat: added user pagination and user edge
* fix: added filter to comment query
* fix: removed unused resolvers
* fix: creating a comment reply should require auth
* refactor: cleanup of graph files
* feat: removed display name, made username non-unique
* fix: fixed tests
* fix: fixed tests
* fix: added more api docs
* fix: fixed bug with installer
* refactor: fixes and updates
* fix: added linting for graphql, fixed schema
* feat: added docker build tests
* fix: upped output timeout
* fix: fixed stacktraces in production builds
* fix: removed `git add`
- `git add` was causing issues with
partial staged changs on files
* feat: improved error messaging for auth
* refactor: cleaned up queue names
* fix: merge error
120 lines
2.8 KiB
TypeScript
120 lines
2.8 KiB
TypeScript
import { Omit } from "talk-common/types";
|
|
import {
|
|
GQLCharCount,
|
|
GQLDisableCommenting,
|
|
GQLEmail,
|
|
GQLExternalIntegrations,
|
|
GQLFacebookAuthIntegration,
|
|
GQLGoogleAuthIntegration,
|
|
GQLKarma,
|
|
GQLLocalAuthIntegration,
|
|
GQLMODERATION_MODE,
|
|
GQLOIDCAuthIntegration,
|
|
GQLReactionConfiguration,
|
|
GQLSSOAuthIntegration,
|
|
GQLWordList,
|
|
} from "talk-server/graph/tenant/schema/__generated__/types";
|
|
|
|
export interface ModerationSettings {
|
|
moderation: GQLMODERATION_MODE;
|
|
requireEmailConfirmation: boolean;
|
|
communityGuidelines: {
|
|
enabled: boolean;
|
|
content?: string;
|
|
};
|
|
questionBoxEnable: boolean;
|
|
questionBoxIcon?: string;
|
|
questionBoxContent?: string;
|
|
premodLinksEnable: boolean;
|
|
autoCloseStream: boolean;
|
|
|
|
/**
|
|
* closedTimeout is the amount of seconds from the createdAt timestamp that a
|
|
* given story will be considered closed.
|
|
*/
|
|
closedTimeout: number;
|
|
closedMessage?: string;
|
|
disableCommenting: GQLDisableCommenting;
|
|
charCount: GQLCharCount;
|
|
}
|
|
|
|
export type LocalAuthIntegration = GQLLocalAuthIntegration;
|
|
export type SSOAuthIntegration = GQLSSOAuthIntegration;
|
|
|
|
export type OIDCAuthIntegration = Omit<
|
|
GQLOIDCAuthIntegration,
|
|
"callbackURL" | "redirectURL"
|
|
>;
|
|
|
|
export type GoogleAuthIntegration = Omit<
|
|
GQLGoogleAuthIntegration,
|
|
"callbackURL" | "redirectURL"
|
|
>;
|
|
|
|
export type FacebookAuthIntegration = Omit<
|
|
GQLFacebookAuthIntegration,
|
|
"callbackURL" | "redirectURL"
|
|
>;
|
|
|
|
export interface AuthIntegrations {
|
|
local: LocalAuthIntegration;
|
|
sso: SSOAuthIntegration;
|
|
oidc: OIDCAuthIntegration;
|
|
google: GoogleAuthIntegration;
|
|
facebook: FacebookAuthIntegration;
|
|
}
|
|
|
|
export interface Auth {
|
|
/**
|
|
* integrations are the set of configurations for the variations of
|
|
* authentication solutions.
|
|
*/
|
|
integrations: AuthIntegrations;
|
|
}
|
|
|
|
export interface Settings extends ModerationSettings {
|
|
/**
|
|
* customCSSURL is the URL that can be specified by the Tenant to describe a
|
|
* URL that contains custom styles to be applied to the Stream.
|
|
*/
|
|
customCSSURL?: string;
|
|
|
|
/**
|
|
* editCommentWindowLength is the length of time (in seconds) after a comment
|
|
* is posted that it can still be edited by the author.
|
|
*/
|
|
editCommentWindowLength: number;
|
|
|
|
/**
|
|
* email is the set of credentials and settings associated with the
|
|
* Tenant.
|
|
*/
|
|
email: GQLEmail;
|
|
|
|
/**
|
|
* karma is the set of settings related to how user Trust and Karma are
|
|
* handled.
|
|
*/
|
|
karma: GQLKarma;
|
|
|
|
/**
|
|
* wordList stores all the banned/suspect words.
|
|
*/
|
|
wordList: GQLWordList;
|
|
|
|
/**
|
|
* Set of configured authentication integrations.
|
|
*/
|
|
auth: Auth;
|
|
|
|
/**
|
|
* Various integrations with external services.
|
|
*/
|
|
integrations: GQLExternalIntegrations;
|
|
|
|
/**
|
|
* reaction specifies the configuration for reactions.
|
|
*/
|
|
reaction: GQLReactionConfiguration;
|
|
}
|