mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 08:36:12 +01:00
refactor: put message api calls behind /messages prefix, #10097
This commit is contained in:
@@ -144,8 +144,8 @@ paths:
|
||||
$ref: 'write/chats/roomId/users.yaml'
|
||||
/chats/{roomId}/users/{uid}:
|
||||
$ref: 'write/chats/roomId/users/uid.yaml'
|
||||
/chats/{roomId}/{mid}:
|
||||
$ref: 'write/chats/roomId/mid.yaml'
|
||||
/chats/{roomId}/messages/{mid}:
|
||||
$ref: 'write/chats/roomId/messages/mid.yaml'
|
||||
/flags/:
|
||||
$ref: 'write/flags.yaml'
|
||||
/flags/{flagId}:
|
||||
|
||||
@@ -27,9 +27,9 @@ get:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
$ref: ../../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
$ref: ../../../components/schemas/Chats.yaml#/MessageObject
|
||||
$ref: ../../../../components/schemas/Chats.yaml#/MessageObject
|
||||
put:
|
||||
tags:
|
||||
- chats
|
||||
@@ -70,9 +70,9 @@ put:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
$ref: ../../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
$ref: ../../../components/schemas/Chats.yaml#/MessageObject
|
||||
$ref: ../../../../components/schemas/Chats.yaml#/MessageObject
|
||||
delete:
|
||||
tags:
|
||||
- chats
|
||||
@@ -102,7 +102,7 @@ delete:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
$ref: ../../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
properties: {}
|
||||
@@ -135,7 +135,7 @@ post:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
$ref: ../../../components/schemas/Status.yaml#/Status
|
||||
$ref: ../../../../components/schemas/Status.yaml#/Status
|
||||
response:
|
||||
type: object
|
||||
properties: {}
|
||||
@@ -37,7 +37,7 @@ define('forum/chats/messages', [
|
||||
});
|
||||
});
|
||||
} else {
|
||||
api.put(`/chats/${roomId}/${mid}`, { message }).catch((err) => {
|
||||
api.put(`/chats/${roomId}/messages/${mid}`, { message }).catch((err) => {
|
||||
inputEl.val(message);
|
||||
inputEl.attr('data-mid', mid);
|
||||
messages.updateRemainingLength(inputEl.parent());
|
||||
@@ -190,7 +190,7 @@ define('forum/chats/messages', [
|
||||
return;
|
||||
}
|
||||
|
||||
api.delete(`/chats/${roomId}/${messageId}`, {}).then(() => {
|
||||
api.delete(`/chats/${roomId}/messages/${messageId}`, {}).then(() => {
|
||||
components.get('chat/message', messageId).toggleClass('deleted', true);
|
||||
}).catch(alerts.error);
|
||||
});
|
||||
@@ -198,7 +198,7 @@ define('forum/chats/messages', [
|
||||
};
|
||||
|
||||
messages.restore = function (messageId, roomId) {
|
||||
api.post(`/chats/${roomId}/${messageId}`, {}).then(() => {
|
||||
api.post(`/chats/${roomId}/messages/${messageId}`, {}).then(() => {
|
||||
components.get('chat/message', messageId).toggleClass('deleted', false);
|
||||
}).catch(alerts.error);
|
||||
};
|
||||
|
||||
@@ -24,10 +24,10 @@ module.exports = function () {
|
||||
setupApiRoute(router, 'delete', '/:roomId/users', [...middlewares, middleware.assert.room, middleware.checkRequired.bind(null, ['uids'])], controllers.write.chats.kick);
|
||||
setupApiRoute(router, 'delete', '/:roomId/users/:uid', [...middlewares, middleware.assert.room, middleware.assert.user], controllers.write.chats.kickUser);
|
||||
|
||||
setupApiRoute(router, 'get', '/:roomId/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.get);
|
||||
setupApiRoute(router, 'put', '/:roomId/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.edit);
|
||||
setupApiRoute(router, 'post', '/:roomId/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.restore);
|
||||
setupApiRoute(router, 'delete', '/:roomId/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.delete);
|
||||
setupApiRoute(router, 'get', '/:roomId/messages/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.get);
|
||||
setupApiRoute(router, 'put', '/:roomId/messages/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.edit);
|
||||
setupApiRoute(router, 'post', '/:roomId/messages/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.restore);
|
||||
setupApiRoute(router, 'delete', '/:roomId/messages/:mid', [...middlewares, middleware.assert.room, middleware.assert.message], controllers.write.chats.messages.delete);
|
||||
|
||||
return router;
|
||||
};
|
||||
|
||||
@@ -158,7 +158,7 @@ describe('Messaging Library', () => {
|
||||
assert.strictEqual(messages[0].system, true);
|
||||
assert.strictEqual(messages[0].content, 'user-join');
|
||||
|
||||
const { statusCode, body: body2 } = await callv3API('put', `/chats/${roomId}/${messages[0].messageId}`, {
|
||||
const { statusCode, body: body2 } = await callv3API('put', `/chats/${roomId}/messages/${messages[0].messageId}`, {
|
||||
message: 'test',
|
||||
}, 'foo');
|
||||
assert.strictEqual(statusCode, 400);
|
||||
@@ -607,33 +607,33 @@ describe('Messaging Library', () => {
|
||||
});
|
||||
|
||||
it('should fail to edit message with invalid data', async () => {
|
||||
let { statusCode, body } = await callv3API('put', `/chats/1/10000`, { message: 'foo' }, 'foo');
|
||||
let { statusCode, body } = await callv3API('put', `/chats/1/messages/10000`, { message: 'foo' }, 'foo');
|
||||
assert.strictEqual(statusCode, 400);
|
||||
assert.strictEqual(body.status.message, await translator.translate('[[error:invalid-mid]]'));
|
||||
|
||||
({ statusCode, body } = await callv3API('put', `/chats/${roomId}/${mid}`, {}, 'foo'));
|
||||
({ statusCode, body } = await callv3API('put', `/chats/${roomId}/messages/${mid}`, {}, 'foo'));
|
||||
assert.strictEqual(statusCode, 400);
|
||||
assert.strictEqual(body.status.message, await translator.translate('[[error:invalid-chat-message]]'));
|
||||
});
|
||||
|
||||
it('should fail to edit message if new content is empty string', async () => {
|
||||
const { statusCode, body } = await callv3API('put', `/chats/${roomId}/${mid}`, { message: ' ' }, 'foo');
|
||||
const { statusCode, body } = await callv3API('put', `/chats/${roomId}/messages/${mid}`, { message: ' ' }, 'foo');
|
||||
assert.strictEqual(statusCode, 400);
|
||||
assert.strictEqual(body.status.message, await translator.translate('[[error:invalid-chat-message]]'));
|
||||
});
|
||||
|
||||
it('should fail to edit message if not own message', async () => {
|
||||
const { statusCode, body } = await callv3API('put', `/chats/${roomId}/${mid}`, { message: 'message edited' }, 'herp');
|
||||
const { statusCode, body } = await callv3API('put', `/chats/${roomId}/messages/${mid}`, { message: 'message edited' }, 'herp');
|
||||
assert.strictEqual(statusCode, 400);
|
||||
assert.strictEqual(body.status.message, await translator.translate('[[error:cant-edit-chat-message]]'));
|
||||
});
|
||||
|
||||
it('should edit message', async () => {
|
||||
let { statusCode, body } = await callv3API('put', `/chats/${roomId}/${mid}`, { message: 'message edited' }, 'foo');
|
||||
let { statusCode, body } = await callv3API('put', `/chats/${roomId}/messages/${mid}`, { message: 'message edited' }, 'foo');
|
||||
assert.strictEqual(statusCode, 200);
|
||||
assert.strictEqual(body.response.content, 'message edited');
|
||||
|
||||
({ statusCode, body } = await callv3API('get', `/chats/${roomId}/${mid}`, {}, 'foo'));
|
||||
({ statusCode, body } = await callv3API('get', `/chats/${roomId}/messages/${mid}`, {}, 'foo'));
|
||||
assert.strictEqual(statusCode, 200);
|
||||
assert.strictEqual(body.response.content, 'message edited');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user