mirror of
https://github.com/wassname/talk.git
synced 2026-08-08 11:28:12 +08:00
[CORL-810] Custom Moderation Phases (#2901)
* feat: initial implementation
* feat: renamed fields from mutations
* fix: more renaming to streamline {Key,Secret}->SigningSecret
* feat: introduced WrappedInternalError
* feat: enhanced extern payload, more fetch options
- Added tenant.{id,domain} to extern payload
- Added site.id to the extern payload
- Added response size limit to fetch
- Added new SCRAPE_MAX_RESPONSE_SIZE env var for managing the size of
responses for scraping
* fix: fixed bug with scrape invocation
* feat: added more queries + mutations
- Added Query.externalModerationPhase
- Added Mutation.createExternalModerationPhase
- Added Mutation.updateExternalModerationPhase
- Added Mutation.enableExternalModerationPhase
- Added Mutation.disableExternalModerationPhase
- Added Mutation.deleteExternalModerationPhase
- Added Mutation.rotateExternalModerationPhaseSigningSecret
* feat: added secret management
* fix: linting
* fix: merge conflict fix
* feat: added UI
* fix: linting
* fix: linting
* fix: updated snapshots
* fix: improved docs
* fix: improved docs
* fix: added locales
* review: improve naming
* review: some review changes
- Switched /moderation/phase to /moderation/phases
- Fixed scrolling
- Fixed redirection
* fix: added scroll timeout for webhooks
This commit is contained in:
@@ -52,6 +52,15 @@ exports[`renders configure advanced 1`] = `
|
||||
Moderation
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
href="/admin/configure/moderation/phases"
|
||||
onClick={[Function]}
|
||||
>
|
||||
Moderation Phases
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
|
||||
@@ -52,6 +52,15 @@ exports[`renders configure auth 1`] = `
|
||||
Moderation
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
href="/admin/configure/moderation/phases"
|
||||
onClick={[Function]}
|
||||
>
|
||||
Moderation Phases
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
@@ -1284,10 +1293,10 @@ more about creating a JWT Token with
|
||||
className="Box-root Flex-root Flex-flex Flex-justifySpaceBetween Flex-alignCenter"
|
||||
>
|
||||
<div
|
||||
className="SSOKeyCard-keySection"
|
||||
className="SSOSigningSecretCard-keySection"
|
||||
>
|
||||
<div
|
||||
className="SSOKeyCard-label"
|
||||
className="SSOSigningSecretCard-label"
|
||||
>
|
||||
<label
|
||||
className="Label-root"
|
||||
@@ -1309,10 +1318,10 @@ more about creating a JWT Token with
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
className="SSOKeyCard-secretSection"
|
||||
className="SSOSigningSecretCard-secretSection"
|
||||
>
|
||||
<div
|
||||
className="SSOKeyCard-label"
|
||||
className="SSOSigningSecretCard-label"
|
||||
>
|
||||
<label
|
||||
className="Label-root"
|
||||
@@ -1390,10 +1399,10 @@ more about creating a JWT Token with
|
||||
className="Box-root Flex-root Flex-flex Flex-justifyFlexStart Flex-alignCenter"
|
||||
>
|
||||
<div
|
||||
className="SSOKeyCard-statusSection"
|
||||
className="SSOSigningSecretCard-statusSection"
|
||||
>
|
||||
<div
|
||||
className="SSOKeyCard-label"
|
||||
className="SSOSigningSecretCard-label"
|
||||
>
|
||||
<label
|
||||
className="Label-root"
|
||||
|
||||
@@ -52,6 +52,15 @@ exports[`renders configure general 1`] = `
|
||||
Moderation
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
href="/admin/configure/moderation/phases"
|
||||
onClick={[Function]}
|
||||
>
|
||||
Moderation Phases
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
|
||||
@@ -52,6 +52,15 @@ exports[`renders configure moderation 1`] = `
|
||||
Moderation
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
href="/admin/configure/moderation/phases"
|
||||
onClick={[Function]}
|
||||
>
|
||||
Moderation Phases
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
|
||||
@@ -52,6 +52,15 @@ exports[`renders configure organization 1`] = `
|
||||
Moderation
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
href="/admin/configure/moderation/phases"
|
||||
onClick={[Function]}
|
||||
>
|
||||
Moderation Phases
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
|
||||
@@ -52,6 +52,15 @@ exports[`renders configure wordList 1`] = `
|
||||
Moderation
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link"
|
||||
href="/admin/configure/moderation/phases"
|
||||
onClick={[Function]}
|
||||
>
|
||||
Moderation Phases
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
className="Link-link Link-linkActive"
|
||||
|
||||
@@ -62,7 +62,7 @@ it("rotate sso key", async () => {
|
||||
const { testRenderer } = await createTestRenderer({
|
||||
resolvers: createResolversStub<GQLResolver>({
|
||||
Mutation: {
|
||||
rotateSSOKey: () => {
|
||||
rotateSSOSigningSecret: () => {
|
||||
return {
|
||||
settings: pureMerge<typeof settingsWithEmptyAuth>(
|
||||
settingsWithEmptyAuth,
|
||||
@@ -71,7 +71,7 @@ it("rotate sso key", async () => {
|
||||
integrations: {
|
||||
sso: {
|
||||
enabled: true,
|
||||
keys: [
|
||||
signingSecrets: [
|
||||
{
|
||||
kid: "kid-01",
|
||||
secret: "secret",
|
||||
|
||||
@@ -114,7 +114,7 @@ export const settings = createFixture<GQLSettings>({
|
||||
admin: true,
|
||||
stream: true,
|
||||
},
|
||||
keys: [
|
||||
signingSecrets: [
|
||||
{
|
||||
kid: "kid-01",
|
||||
secret: "secret",
|
||||
@@ -212,7 +212,7 @@ export const settingsWithEmptyAuth = createFixture<GQLSettings>(
|
||||
stream: true,
|
||||
},
|
||||
key: "",
|
||||
keys: [
|
||||
signingSecrets: [
|
||||
{
|
||||
kid: "kid-01",
|
||||
secret: "secret",
|
||||
|
||||
Reference in New Issue
Block a user