diff --git a/packages/admin-api-schema/lib/schemas/comment_bans-add.json b/packages/admin-api-schema/lib/schemas/comment_bans-add.json deleted file mode 100644 index 770b8ecd4..000000000 --- a/packages/admin-api-schema/lib/schemas/comment_bans-add.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "comment_bans.add", - "title": "comment_bans.add", - "description": "Schema for comment_bans.add", - "type": "object", - "additionalProperties": false, - "properties": { - "comment_bans": { - "type": "array", - "minItems": 1, - "maxItems": 1, - "items": { - "allOf": [{ "$ref": "comment_bans#/definitions/comment_ban" }] - } - } - }, - "required": ["comment_bans"] -} diff --git a/packages/admin-api-schema/lib/schemas/index.js b/packages/admin-api-schema/lib/schemas/index.js index 35c917826..11ac30cd0 100644 --- a/packages/admin-api-schema/lib/schemas/index.js +++ b/packages/admin-api-schema/lib/schemas/index.js @@ -1,5 +1,5 @@ module.exports = [ - 'comment_bans-add', + 'member_commenting-disable', 'images-upload', 'media-upload', 'labels-add', diff --git a/packages/admin-api-schema/lib/schemas/member_commenting-disable.json b/packages/admin-api-schema/lib/schemas/member_commenting-disable.json new file mode 100644 index 000000000..e1fde6f62 --- /dev/null +++ b/packages/admin-api-schema/lib/schemas/member_commenting-disable.json @@ -0,0 +1,22 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "$id": "member_commenting.disable", + "title": "member_commenting.disable", + "type": "object", + "additionalProperties": false, + "properties": { + "reason": { + "type": "string", + "minLength": 1, + "maxLength": 2000 + }, + "expires_at": { + "type": ["string", "null"], + "format": "date-time" + }, + "hide_comments": { + "type": "boolean" + } + }, + "required": ["reason"] +} diff --git a/packages/admin-api-schema/lib/schemas/comment_bans.json b/packages/admin-api-schema/lib/schemas/member_commenting.json similarity index 74% rename from packages/admin-api-schema/lib/schemas/comment_bans.json rename to packages/admin-api-schema/lib/schemas/member_commenting.json index 3d4f15f3d..94341a5ca 100644 --- a/packages/admin-api-schema/lib/schemas/comment_bans.json +++ b/packages/admin-api-schema/lib/schemas/member_commenting.json @@ -1,10 +1,10 @@ { "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "comment_bans", - "title": "comment_bans", - "description": "Base comment_bans definitions", + "$id": "member_commenting", + "title": "member_commenting", + "description": "Base member_commenting definitions", "definitions": { - "comment_ban": { + "member_commenting": { "type": "object", "additionalProperties": false, "properties": { diff --git a/packages/admin-api-schema/lib/schemas/members-edit.json b/packages/admin-api-schema/lib/schemas/members-edit.json index 32c59012e..4d209777c 100644 --- a/packages/admin-api-schema/lib/schemas/members-edit.json +++ b/packages/admin-api-schema/lib/schemas/members-edit.json @@ -54,19 +54,8 @@ "can_comment": { "type": "boolean" }, - "comment_ban": { - "oneOf": [ - { - "type": "object", - "additionalProperties": false, - "properties": { - "reason": { "type": "string", "minLength": 1, "maxLength": 2000 }, - "expires_at": { "type": ["string", "null"], "format": "date-time" } - }, - "required": ["reason"] - }, - { "type": "null" } - ] + "commenting": { + "$ref": "members#/definitions/member-commenting" } } } diff --git a/packages/admin-api-schema/lib/schemas/members.json b/packages/admin-api-schema/lib/schemas/members.json index fc6a4f696..c19fcd1fe 100644 --- a/packages/admin-api-schema/lib/schemas/members.json +++ b/packages/admin-api-schema/lib/schemas/members.json @@ -51,19 +51,8 @@ "can_comment": { "type": "boolean" }, - "comment_ban": { - "oneOf": [ - { - "type": "object", - "additionalProperties": false, - "properties": { - "reason": { "type": "string", "minLength": 1, "maxLength": 2000 }, - "expires_at": { "type": ["string", "null"], "format": "date-time" } - }, - "required": ["reason"] - }, - { "type": "null" } - ] + "commenting": { + "$ref": "#/definitions/member-commenting" } } }, @@ -163,6 +152,22 @@ } ] } + }, + "member-commenting": { + "description": "Commenting status of the member", + "oneOf": [ + { + "type": "object", + "additionalProperties": false, + "properties": { + "disabled": { "type": "boolean" }, + "disabled_reason": { "type": "string", "minLength": 1, "maxLength": 2000 }, + "disabled_until": { "type": ["string", "null"], "format": "date-time" } + }, + "required": ["disabled"] + }, + { "type": "null" } + ] } } }