diff --git a/apps/meteor/CHANGELOG.md b/apps/meteor/CHANGELOG.md
index 9ad83048379f4..c5162f2c7e1ac 100644
--- a/apps/meteor/CHANGELOG.md
+++ b/apps/meteor/CHANGELOG.md
@@ -1,5 +1,48 @@
# @rocket.chat/meteor
+## 7.7.1
+
+### Patch Changes
+
+- ([#36204](https://github.com/RocketChat/Rocket.Chat/pull/36204) by [@dionisio-bot](https://github.com/dionisio-bot)) Fixes an issue that prevented the action of saving an agent when editing a department to work.
+
+- Bump @rocket.chat/meteor version.
+
+- Bump @rocket.chat/meteor version.
+
+- ([#36210](https://github.com/RocketChat/Rocket.Chat/pull/36210) by [@dionisio-bot](https://github.com/dionisio-bot)) Fixes the usage of `Livechat_enabled_when_agent_idle` setting across the codebase. Goal is to use it wherever is applicable making the feature more predictable.
+
+- ([#36200](https://github.com/RocketChat/Rocket.Chat/pull/36200) by [@dionisio-bot](https://github.com/dionisio-bot)) Fixed contacts being marked as `known` after editing a custom field, or resolving conflicts by adding a new model function that only updates the `customFields` or `conflictingFields` prop.
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/omnichannel-services@0.3.22
+ - @rocket.chat/presence@0.2.25
+ - @rocket.chat/api-client@0.2.25
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/ui-contexts@19.0.1
+ - @rocket.chat/apps@0.5.4
+ - @rocket.chat/cron@0.1.25
+ - @rocket.chat/instance-status@0.1.25
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/ui-theming@0.4.3
+ - @rocket.chat/fuselage-ui-kit@19.0.1
+ - @rocket.chat/gazzodown@19.0.1
+ - @rocket.chat/ui-avatar@15.0.1
+ - @rocket.chat/ui-client@19.0.1
+ - @rocket.chat/ui-video-conf@19.0.1
+ - @rocket.chat/ui-voip@9.0.1
+ - @rocket.chat/web-ui-registration@19.0.1
+ - @rocket.chat/core-typings@7.7.1
+ - @rocket.chat/license@1.0.16
+ - @rocket.chat/pdf-worker@0.3.4
+ - @rocket.chat/freeswitch@1.2.12
+ - @rocket.chat/server-cloud-communication@0.0.2
+
+
## 7.7.0
### Minor Changes
diff --git a/apps/meteor/app/livechat/server/lib/Helper.ts b/apps/meteor/app/livechat/server/lib/Helper.ts
index 330d37eae47b0..9fe6ba3c56d41 100644
--- a/apps/meteor/app/livechat/server/lib/Helper.ts
+++ b/apps/meteor/app/livechat/server/lib/Helper.ts
@@ -480,7 +480,7 @@ export const forwardRoomToAgent = async (room: IOmnichannelRoom, transferData: T
if (!agentId) {
throw new Error('error-invalid-agent');
}
- const user = await Users.findOneOnlineAgentById(agentId);
+ const user = await Users.findOneOnlineAgentById(agentId, settings.get('Livechat_enabled_when_agent_idle'));
if (!user) {
logger.debug(`Agent ${agentId} is offline. Cannot forward`);
throw new Error('error-user-is-offline');
@@ -603,7 +603,7 @@ export const forwardRoomToDepartment = async (room: IOmnichannelRoom, guest: ILi
const { userId: agentId, clientAction } = transferData;
if (agentId) {
logger.debug(`Forwarding room ${room._id} to department ${departmentId} (to user ${agentId})`);
- const user = await Users.findOneOnlineAgentById(agentId);
+ const user = await Users.findOneOnlineAgentById(agentId, settings.get('Livechat_enabled_when_agent_idle'));
if (!user) {
throw new Error('error-user-is-offline');
}
diff --git a/apps/meteor/app/livechat/server/lib/QueueManager.ts b/apps/meteor/app/livechat/server/lib/QueueManager.ts
index 4149fb4fd4b8f..4a2422b2143fb 100644
--- a/apps/meteor/app/livechat/server/lib/QueueManager.ts
+++ b/apps/meteor/app/livechat/server/lib/QueueManager.ts
@@ -422,10 +422,14 @@ export class QueueManager {
};
let defaultAgent: SelectedAgent | undefined;
- if (servedBy?.username && (await Users.findOneOnlineAgentByUserList(servedBy.username))) {
+ const isAgentAvailable = (username: string) =>
+ Users.findOneOnlineAgentByUserList(username, { projection: { _id: 1 } }, settings.get('Livechat_enabled_when_agent_idle'));
+
+ if (servedBy?.username && (await isAgentAvailable(servedBy.username))) {
defaultAgent = { agentId: servedBy._id, username: servedBy.username };
}
+ // TODO: unarchive to return updated room
await LivechatRooms.unarchiveOneById(rid);
const room = await LivechatRooms.findOneById(rid);
if (!room) {
diff --git a/apps/meteor/app/livechat/server/lib/RoutingManager.ts b/apps/meteor/app/livechat/server/lib/RoutingManager.ts
index 8ff8a76a1b67a..6d422819a88aa 100644
--- a/apps/meteor/app/livechat/server/lib/RoutingManager.ts
+++ b/apps/meteor/app/livechat/server/lib/RoutingManager.ts
@@ -97,7 +97,12 @@ export const RoutingManager: Routing = {
async delegateInquiry(inquiry, agent, options = {}, room) {
const { department, rid } = inquiry;
logger.debug(`Attempting to delegate inquiry ${inquiry._id}`);
- if (!agent || (agent.username && !(await Users.findOneOnlineAgentByUserList(agent.username)) && !(await allowAgentSkipQueue(agent)))) {
+ if (
+ !agent ||
+ (agent.username &&
+ !(await Users.findOneOnlineAgentByUserList(agent.username, {}, settings.get('Livechat_enabled_when_agent_idle'))) &&
+ !(await allowAgentSkipQueue(agent)))
+ ) {
logger.debug(`Agent offline or invalid. Using routing method to get next agent for inquiry ${inquiry._id}`);
agent = await this.getNextAgent(department);
logger.debug(`Routing method returned agent ${agent?.agentId} for inquiry ${inquiry._id}`);
diff --git a/apps/meteor/app/livechat/server/lib/custom-fields.ts b/apps/meteor/app/livechat/server/lib/custom-fields.ts
index ad82ea4dd7d74..07f96b5f4910f 100644
--- a/apps/meteor/app/livechat/server/lib/custom-fields.ts
+++ b/apps/meteor/app/livechat/server/lib/custom-fields.ts
@@ -30,7 +30,7 @@ export async function updateContactsCustomFields(contact: ILivechatContact, key:
contact.conflictingFields.push({ field: `customFields.${key}`, value });
}
- await LivechatContacts.updateContact(contact._id, {
+ await LivechatContacts.updateContactCustomFields(contact._id, {
...(shouldUpdateCustomFields && { customFields: contact.customFields }),
...(contact.conflictingFields && { conflictingFields: contact.conflictingFields }),
});
diff --git a/apps/meteor/app/livechat/server/lib/routing/External.ts b/apps/meteor/app/livechat/server/lib/routing/External.ts
index b9f9e99e84686..9bd3965f7326f 100644
--- a/apps/meteor/app/livechat/server/lib/routing/External.ts
+++ b/apps/meteor/app/livechat/server/lib/routing/External.ts
@@ -55,7 +55,11 @@ class ExternalQueue implements IRoutingMethod {
const result = (await request.json()) as { username?: string };
if (result?.username) {
- const agent = await Users.findOneOnlineAgentByUserList(result.username);
+ const agent = await Users.findOneOnlineAgentByUserList(
+ result.username,
+ {},
+ settings.get('Livechat_enabled_when_agent_idle'),
+ );
if (!agent?.username) {
return;
diff --git a/apps/meteor/app/utils/rocketchat.info b/apps/meteor/app/utils/rocketchat.info
index 8447bfb060e48..be3a5538e0285 100644
--- a/apps/meteor/app/utils/rocketchat.info
+++ b/apps/meteor/app/utils/rocketchat.info
@@ -1,3 +1,3 @@
{
- "version": "7.7.0"
+ "version": "7.7.1"
}
diff --git a/apps/meteor/ee/app/livechat-enterprise/server/hooks/handleNextAgentPreferredEvents.ts b/apps/meteor/ee/app/livechat-enterprise/server/hooks/handleNextAgentPreferredEvents.ts
index 75b6b3687a05f..89c3d8c452bcb 100644
--- a/apps/meteor/ee/app/livechat-enterprise/server/hooks/handleNextAgentPreferredEvents.ts
+++ b/apps/meteor/ee/app/livechat-enterprise/server/hooks/handleNextAgentPreferredEvents.ts
@@ -23,7 +23,9 @@ const getDefaultAgent = async ({ username, id }: { username?: string; id?: strin
}
if (id) {
- const agent = await Users.findOneOnlineAgentById(id, undefined, { projection: { _id: 1, username: 1 } });
+ const agent = await Users.findOneOnlineAgentById(id, settings.get('Livechat_enabled_when_agent_idle'), {
+ projection: { _id: 1, username: 1 },
+ });
if (agent) {
return normalizeDefaultAgent(agent);
}
@@ -36,7 +38,13 @@ const getDefaultAgent = async ({ username, id }: { username?: string; id?: strin
return undefined;
}
- return normalizeDefaultAgent(await Users.findOneOnlineAgentByUserList(username || [], { projection: { _id: 1, username: 1 } }));
+ return normalizeDefaultAgent(
+ await Users.findOneOnlineAgentByUserList(
+ username || [],
+ { projection: { _id: 1, username: 1 } },
+ settings.get('Livechat_enabled_when_agent_idle'),
+ ),
+ );
};
settings.watch('Livechat_last_chatted_agent_routing', (value) => {
@@ -119,7 +127,11 @@ checkDefaultAgentOnNewRoom.patch(async (_next, defaultAgent, { visitorId, source
return defaultAgent;
}
const lastRoomAgent = normalizeDefaultAgent(
- await Users.findOneOnlineAgentByUserList(usernameByRoom, { projection: { _id: 1, username: 1 } }),
+ await Users.findOneOnlineAgentByUserList(
+ usernameByRoom,
+ { projection: { _id: 1, username: 1 } },
+ settings.get('Livechat_enabled_when_agent_idle'),
+ ),
);
return lastRoomAgent;
});
diff --git a/apps/meteor/ee/server/services/CHANGELOG.md b/apps/meteor/ee/server/services/CHANGELOG.md
index 9b7d606ab06b4..cb18a91eb0456 100644
--- a/apps/meteor/ee/server/services/CHANGELOG.md
+++ b/apps/meteor/ee/server/services/CHANGELOG.md
@@ -1,5 +1,19 @@
# rocketchat-services
+## 2.0.16
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 2.0.15
### Patch Changes
diff --git a/apps/meteor/ee/server/services/package.json b/apps/meteor/ee/server/services/package.json
index 4c09bccdb165f..7f0f11b676dfd 100644
--- a/apps/meteor/ee/server/services/package.json
+++ b/apps/meteor/ee/server/services/package.json
@@ -1,7 +1,7 @@
{
"name": "rocketchat-services",
"private": true,
- "version": "2.0.15",
+ "version": "2.0.16",
"description": "Rocket.Chat Authorization service",
"main": "index.js",
"scripts": {
diff --git a/apps/meteor/package.json b/apps/meteor/package.json
index a6427ec8fa362..cd9a34ec3d12b 100644
--- a/apps/meteor/package.json
+++ b/apps/meteor/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/meteor",
"description": "The Ultimate Open Source WebChat Platform",
- "version": "7.7.0",
+ "version": "7.7.1",
"private": true,
"type": "commonjs",
"author": {
diff --git a/apps/meteor/tests/data/livechat/department.ts b/apps/meteor/tests/data/livechat/department.ts
index 5e3402df051d6..97d49db0f14f6 100644
--- a/apps/meteor/tests/data/livechat/department.ts
+++ b/apps/meteor/tests/data/livechat/department.ts
@@ -4,7 +4,7 @@ import type { ILivechatDepartment, IUser, LivechatDepartmentDTO } from '@rocket.
import { expect } from 'chai';
import { api, credentials, methodCall, request } from '../api-data';
-import { createAnOnlineAgent, createAnOfflineAgent } from './users';
+import { createAnOnlineAgent, createAnOfflineAgent, createAnAwayAgent } from './users';
import type { WithRequiredProperty } from './utils';
const NewDepartmentData = ((): Partial => ({
@@ -183,6 +183,40 @@ export const createDepartmentWithAnOfflineAgent = async ({
};
};
+export const createDepartmentWithAnAwayAgent = async ({
+ allowReceiveForwardOffline = false,
+ fallbackForwardDepartment,
+ departmentsAllowedToForward,
+}: {
+ allowReceiveForwardOffline?: boolean;
+ fallbackForwardDepartment?: string;
+ departmentsAllowedToForward?: string[];
+}): Promise<{
+ department: ILivechatDepartment;
+ agent: {
+ credentials: Credentials;
+ user: WithRequiredProperty;
+ };
+}> => {
+ const { user, credentials } = await createAnAwayAgent();
+
+ const department = (await createDepartmentWithMethod({
+ allowReceiveForwardOffline,
+ fallbackForwardDepartment,
+ departmentsAllowedToForward,
+ })) as ILivechatDepartment;
+
+ await addOrRemoveAgentFromDepartment(department._id, { agentId: user._id, username: user.username }, true);
+
+ return {
+ department,
+ agent: {
+ credentials,
+ user,
+ },
+ };
+};
+
export const archiveDepartment = async (departmentId: string): Promise => {
await request
.post(api(`livechat/department/${departmentId}/archive`))
diff --git a/apps/meteor/tests/data/livechat/users.ts b/apps/meteor/tests/data/livechat/users.ts
index b4298ff962c80..e6cce02f4c513 100644
--- a/apps/meteor/tests/data/livechat/users.ts
+++ b/apps/meteor/tests/data/livechat/users.ts
@@ -1,10 +1,10 @@
import { faker } from '@faker-js/faker';
import type { Credentials } from '@rocket.chat/api-client';
-import type { ILivechatAgent, IUser } from '@rocket.chat/core-typings';
+import { UserStatus, type ILivechatAgent, type IUser } from '@rocket.chat/core-typings';
import { api, credentials, request, methodCall } from '../api-data';
import { password } from '../user';
-import { createUser, login } from '../users.helper';
+import { createUser, login, setUserAway, setUserStatus } from '../users.helper';
import { createAgent, makeAgentAvailable, makeAgentUnavailable } from './rooms';
export const createBotAgent = async (): Promise<{
@@ -77,6 +77,26 @@ export const createAnOfflineAgent = async (): Promise<{
};
};
+export const createAnAwayAgent = async (): Promise<{
+ credentials: Credentials;
+ user: IUser & { username: string };
+}> => {
+ const username = `user.test.${Date.now()}.away`;
+ const email = `${username}.offline@rocket.chat`;
+ const { body } = await request.post(api('users.create')).set(credentials).send({ email, name: username, username, password });
+ const agent = body.user;
+ const createdUserCredentials = await login(agent.username, password);
+ await createAgent(agent.username);
+ await makeAgentAvailable(createdUserCredentials);
+ await setUserStatus(createdUserCredentials, UserStatus.AWAY);
+ await setUserAway(createdUserCredentials);
+
+ return {
+ credentials: createdUserCredentials,
+ user: agent,
+ };
+};
+
export const updateLivechatSettingsForUser = async (
agentId: string,
livechatSettings: Record,
diff --git a/apps/meteor/tests/end-to-end/api/livechat/00-rooms.ts b/apps/meteor/tests/end-to-end/api/livechat/00-rooms.ts
index c577bd4aa34f1..1a49ab5bf33be 100644
--- a/apps/meteor/tests/end-to-end/api/livechat/00-rooms.ts
+++ b/apps/meteor/tests/end-to-end/api/livechat/00-rooms.ts
@@ -22,7 +22,12 @@ import type { SuccessResult } from '../../../../app/api/server/definition';
import { getCredentials, api, request, credentials, methodCall } from '../../../data/api-data';
import { apps, APP_URL } from '../../../data/apps/apps-data';
import { createCustomField } from '../../../data/livechat/custom-fields';
-import { createDepartmentWithAnOfflineAgent, createDepartmentWithAnOnlineAgent, deleteDepartment } from '../../../data/livechat/department';
+import {
+ createDepartmentWithAnAwayAgent,
+ createDepartmentWithAnOfflineAgent,
+ createDepartmentWithAnOnlineAgent,
+ deleteDepartment,
+} from '../../../data/livechat/department';
import { createSLA, getRandomPriority } from '../../../data/livechat/priorities';
import {
createVisitor,
@@ -1198,6 +1203,88 @@ describe('LIVECHAT - rooms', () => {
await deleteDepartment(forwardToOfflineDepartment._id);
});
+ (IS_EE ? it : it.skip)(
+ 'when manager forward to offline (agent away, accept when agent idle off) department the inquiry should be set to the queue',
+ async () => {
+ await updateSetting('Livechat_Routing_Method', 'Manual_Selection');
+ await updateSetting('Livechat_enabled_when_agent_idle', false);
+ const { department: initialDepartment } = await createDepartmentWithAnOnlineAgent();
+ const { department: forwardToOfflineDepartment } = await createDepartmentWithAnAwayAgent({
+ allowReceiveForwardOffline: true,
+ });
+
+ const newVisitor = await createVisitor(initialDepartment._id);
+ const newRoom = await createLivechatRoom(newVisitor.token);
+
+ const manager = await createUser();
+ const managerCredentials = await login(manager.username, password);
+ await createManager(manager.username);
+
+ await request.post(api('livechat/room.forward')).set(managerCredentials).send({
+ roomId: newRoom._id,
+ departmentId: forwardToOfflineDepartment._id,
+ clientAction: true,
+ comment: 'test comment',
+ });
+
+ await request
+ .get(api(`livechat/queue`))
+ .set(credentials)
+ .query({
+ count: 1,
+ })
+ .expect('Content-Type', 'application/json')
+ .expect(200)
+ .expect((res: Response) => {
+ expect(res.body).to.have.property('success', true);
+ expect(res.body.queue).to.be.an('array');
+ expect(res.body.queue[0].chats).not.to.undefined;
+ expect(res.body).to.have.property('offset');
+ expect(res.body).to.have.property('total');
+ expect(res.body).to.have.property('count');
+ });
+
+ await Promise.all([deleteDepartment(initialDepartment._id), deleteDepartment(forwardToOfflineDepartment._id)]);
+ },
+ );
+
+ (IS_EE ? it : it.skip)(
+ 'when manager forward to online (agent away, accept when agent idle on) department the inquiry should not be set to the queue',
+ async () => {
+ await updateSetting('Livechat_Routing_Method', 'Auto_Selection');
+ await updateSetting('Livechat_enabled_when_agent_idle', true);
+ const { department: initialDepartment } = await createDepartmentWithAnOnlineAgent();
+ const { department: forwardToOfflineDepartment, agent } = await createDepartmentWithAnAwayAgent({
+ allowReceiveForwardOffline: true,
+ });
+
+ const newVisitor = await createVisitor(initialDepartment._id);
+ const newRoom = await createLivechatRoom(newVisitor.token);
+
+ const manager = await createUser();
+ const managerCredentials = await login(manager.username, password);
+ await createManager(manager.username);
+
+ await request.post(api('livechat/room.forward')).set(managerCredentials).send({
+ roomId: newRoom._id,
+ departmentId: forwardToOfflineDepartment._id,
+ clientAction: true,
+ comment: 'test comment',
+ });
+
+ const roomInfo = await getLivechatRoomInfo(newRoom._id);
+
+ expect(roomInfo.servedBy).to.have.property('_id', agent.user._id);
+ expect(roomInfo.departmentId).to.be.equal(forwardToOfflineDepartment._id);
+
+ await Promise.all([
+ deleteDepartment(initialDepartment._id),
+ deleteDepartment(forwardToOfflineDepartment._id),
+ updateSetting('Livechat_enabled_when_agent_idle', false),
+ ]);
+ },
+ );
+
(IS_EE ? it : it.skip)(
'should update inquiry last message when manager forward to offline department and the inquiry returns to queued',
async () => {
diff --git a/apps/meteor/tests/end-to-end/api/livechat/10-departments.ts b/apps/meteor/tests/end-to-end/api/livechat/10-departments.ts
index 3b4a191cd5120..99ca5591b25a4 100644
--- a/apps/meteor/tests/end-to-end/api/livechat/10-departments.ts
+++ b/apps/meteor/tests/end-to-end/api/livechat/10-departments.ts
@@ -907,7 +907,8 @@ import { IS_EE } from '../../../e2e/config/constants';
const res = await request
.post(api(`livechat/department/${dep._id}/agents`))
.set(credentials)
- .send({ upsert: [{ agentId: agent._id, username: agent.username }], remove: [] })
+ // UI sends agent name as well. API doens't use it, but keeping here for avoid Breaking Changes
+ .send({ upsert: [{ agentId: agent._id, username: agent.username, name: agent.name }], remove: [] })
.expect(200);
expect(res.body).to.have.property('success', true);
await deleteDepartment(dep._id);
diff --git a/apps/meteor/tests/unit/app/livechat/server/lib/custom-fields.spec.ts b/apps/meteor/tests/unit/app/livechat/server/lib/custom-fields.spec.ts
index 7b061f0e6068a..89bf138c1b723 100644
--- a/apps/meteor/tests/unit/app/livechat/server/lib/custom-fields.spec.ts
+++ b/apps/meteor/tests/unit/app/livechat/server/lib/custom-fields.spec.ts
@@ -5,7 +5,7 @@ import sinon from 'sinon';
const modelsMock = {
LivechatContacts: {
- updateContact: sinon.stub(),
+ updateContactCustomFields: sinon.stub(),
},
};
@@ -15,7 +15,7 @@ const { updateContactsCustomFields } = proxyquire.noCallThru().load('../../../..
describe('[Custom Fields] updateContactsCustomFields', () => {
beforeEach(() => {
- modelsMock.LivechatContacts.updateContact.reset();
+ modelsMock.LivechatContacts.updateContactCustomFields.reset();
});
it('should not add conflictingFields to the update data when its nullish', async () => {
@@ -26,13 +26,13 @@ describe('[Custom Fields] updateContactsCustomFields', () => {
},
};
- modelsMock.LivechatContacts.updateContact.resolves({ ...contact, customFields: { customField: 'newValue' } });
+ modelsMock.LivechatContacts.updateContactCustomFields.resolves({ ...contact, customFields: { customField: 'newValue' } });
await updateContactsCustomFields(contact, 'customField', 'newValue', true);
- expect(modelsMock.LivechatContacts.updateContact.calledOnce).to.be.true;
- expect(modelsMock.LivechatContacts.updateContact.getCall(0).args[0]).to.be.equal('contactId');
- expect(modelsMock.LivechatContacts.updateContact.getCall(0).args[1]).to.deep.equal({
+ expect(modelsMock.LivechatContacts.updateContactCustomFields.calledOnce).to.be.true;
+ expect(modelsMock.LivechatContacts.updateContactCustomFields.getCall(0).args[0]).to.be.equal('contactId');
+ expect(modelsMock.LivechatContacts.updateContactCustomFields.getCall(0).args[1]).to.deep.equal({
customFields: { customField: 'newValue' },
});
});
@@ -45,16 +45,16 @@ describe('[Custom Fields] updateContactsCustomFields', () => {
},
};
- modelsMock.LivechatContacts.updateContact.resolves({
+ modelsMock.LivechatContacts.updateContactCustomFields.resolves({
...contact,
conflictingFields: [{ field: 'customFields.customField', value: 'newValue' }],
});
await updateContactsCustomFields(contact, 'customField', 'newValue', false);
- expect(modelsMock.LivechatContacts.updateContact.calledOnce).to.be.true;
- expect(modelsMock.LivechatContacts.updateContact.getCall(0).args[0]).to.be.equal('contactId');
- expect(modelsMock.LivechatContacts.updateContact.getCall(0).args[1]).to.deep.equal({
+ expect(modelsMock.LivechatContacts.updateContactCustomFields.calledOnce).to.be.true;
+ expect(modelsMock.LivechatContacts.updateContactCustomFields.getCall(0).args[0]).to.be.equal('contactId');
+ expect(modelsMock.LivechatContacts.updateContactCustomFields.getCall(0).args[1]).to.deep.equal({
conflictingFields: [{ field: 'customFields.customField', value: 'newValue' }],
});
});
diff --git a/apps/uikit-playground/CHANGELOG.md b/apps/uikit-playground/CHANGELOG.md
index 685adfac227a1..b3728bd179e83 100644
--- a/apps/uikit-playground/CHANGELOG.md
+++ b/apps/uikit-playground/CHANGELOG.md
@@ -1,5 +1,17 @@
# @rocket.chat/uikit-playground
+## 0.6.16
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+ - @rocket.chat/fuselage-ui-kit@19.0.1
+ - @rocket.chat/ui-avatar@15.0.1
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.6.15
### Patch Changes
diff --git a/apps/uikit-playground/package.json b/apps/uikit-playground/package.json
index ed5aec543ac86..86e0ff73546e3 100644
--- a/apps/uikit-playground/package.json
+++ b/apps/uikit-playground/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/uikit-playground",
"private": true,
- "version": "0.6.15",
+ "version": "0.6.16",
"type": "module",
"scripts": {
"dev": "vite",
diff --git a/ee/apps/account-service/CHANGELOG.md b/ee/apps/account-service/CHANGELOG.md
index 0294fdd1ae9ec..1c8bc5457b237 100644
--- a/ee/apps/account-service/CHANGELOG.md
+++ b/ee/apps/account-service/CHANGELOG.md
@@ -1,5 +1,19 @@
# @rocket.chat/account-service
+## 0.4.25
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.4.24
### Patch Changes
diff --git a/ee/apps/account-service/package.json b/ee/apps/account-service/package.json
index 8a94d5c9b482d..210b8aa83d45a 100644
--- a/ee/apps/account-service/package.json
+++ b/ee/apps/account-service/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/account-service",
"private": true,
- "version": "0.4.24",
+ "version": "0.4.25",
"description": "Rocket.Chat Account service",
"scripts": {
"build": "tsc -p tsconfig.json",
diff --git a/ee/apps/authorization-service/CHANGELOG.md b/ee/apps/authorization-service/CHANGELOG.md
index 79eab554b006d..ee11e756aa56c 100644
--- a/ee/apps/authorization-service/CHANGELOG.md
+++ b/ee/apps/authorization-service/CHANGELOG.md
@@ -1,5 +1,19 @@
# @rocket.chat/authorization-service
+## 0.4.25
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.4.24
### Patch Changes
diff --git a/ee/apps/authorization-service/package.json b/ee/apps/authorization-service/package.json
index 16c10dcd6b019..9dabfffc565fc 100644
--- a/ee/apps/authorization-service/package.json
+++ b/ee/apps/authorization-service/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/authorization-service",
"private": true,
- "version": "0.4.24",
+ "version": "0.4.25",
"description": "Rocket.Chat Authorization service",
"scripts": {
"build": "tsc -p tsconfig.json",
diff --git a/ee/apps/ddp-streamer/CHANGELOG.md b/ee/apps/ddp-streamer/CHANGELOG.md
index fd5bfb03147bd..e3ec170cbf1f6 100644
--- a/ee/apps/ddp-streamer/CHANGELOG.md
+++ b/ee/apps/ddp-streamer/CHANGELOG.md
@@ -1,5 +1,20 @@
# @rocket.chat/ddp-streamer
+## 0.3.25
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/instance-status@0.1.25
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.3.24
### Patch Changes
diff --git a/ee/apps/ddp-streamer/package.json b/ee/apps/ddp-streamer/package.json
index 02d6738ff9fb0..e4967a2cb7c4c 100644
--- a/ee/apps/ddp-streamer/package.json
+++ b/ee/apps/ddp-streamer/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/ddp-streamer",
"private": true,
- "version": "0.3.24",
+ "version": "0.3.25",
"description": "Rocket.Chat DDP-Streamer service",
"scripts": {
"build": "tsc -p tsconfig.json",
diff --git a/ee/apps/omnichannel-transcript/CHANGELOG.md b/ee/apps/omnichannel-transcript/CHANGELOG.md
index fa9bae7e68a21..8b1d9cd90ea4c 100644
--- a/ee/apps/omnichannel-transcript/CHANGELOG.md
+++ b/ee/apps/omnichannel-transcript/CHANGELOG.md
@@ -1,5 +1,20 @@
# @rocket.chat/omnichannel-transcript
+## 0.4.25
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/omnichannel-services@0.3.22
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+ - @rocket.chat/pdf-worker@0.3.4
+
+
## 0.4.24
### Patch Changes
diff --git a/ee/apps/omnichannel-transcript/package.json b/ee/apps/omnichannel-transcript/package.json
index ffb0776c833d2..58b688236334c 100644
--- a/ee/apps/omnichannel-transcript/package.json
+++ b/ee/apps/omnichannel-transcript/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/omnichannel-transcript",
"private": true,
- "version": "0.4.24",
+ "version": "0.4.25",
"description": "Rocket.Chat service",
"scripts": {
"build": "tsc -p tsconfig.json",
diff --git a/ee/apps/presence-service/CHANGELOG.md b/ee/apps/presence-service/CHANGELOG.md
index 484b70e89b634..53fe11263e687 100644
--- a/ee/apps/presence-service/CHANGELOG.md
+++ b/ee/apps/presence-service/CHANGELOG.md
@@ -1,5 +1,19 @@
# @rocket.chat/presence-service
+## 0.4.25
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/presence@0.2.25
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.4.24
### Patch Changes
diff --git a/ee/apps/presence-service/package.json b/ee/apps/presence-service/package.json
index 938121d9cdc05..14eebb0982597 100644
--- a/ee/apps/presence-service/package.json
+++ b/ee/apps/presence-service/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/presence-service",
"private": true,
- "version": "0.4.24",
+ "version": "0.4.25",
"description": "Rocket.Chat Presence service",
"scripts": {
"build": "tsc -p tsconfig.json",
diff --git a/ee/apps/queue-worker/CHANGELOG.md b/ee/apps/queue-worker/CHANGELOG.md
index 1b988315bda6a..158d7980b8de2 100644
--- a/ee/apps/queue-worker/CHANGELOG.md
+++ b/ee/apps/queue-worker/CHANGELOG.md
@@ -1,5 +1,19 @@
# @rocket.chat/queue-worker
+## 0.4.25
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/omnichannel-services@0.3.22
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.4.24
### Patch Changes
diff --git a/ee/apps/queue-worker/package.json b/ee/apps/queue-worker/package.json
index 393d9f5e831e4..0cd1e7730b8e4 100644
--- a/ee/apps/queue-worker/package.json
+++ b/ee/apps/queue-worker/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/queue-worker",
"private": true,
- "version": "0.4.24",
+ "version": "0.4.25",
"description": "Rocket.Chat service",
"scripts": {
"build": "tsc -p tsconfig.json",
diff --git a/ee/apps/stream-hub-service/CHANGELOG.md b/ee/apps/stream-hub-service/CHANGELOG.md
index 57d8018393385..9db5ab551eebc 100644
--- a/ee/apps/stream-hub-service/CHANGELOG.md
+++ b/ee/apps/stream-hub-service/CHANGELOG.md
@@ -1,5 +1,18 @@
# @rocket.chat/stream-hub-service
+## 0.4.25
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/network-broker@0.2.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.4.24
### Patch Changes
diff --git a/ee/apps/stream-hub-service/package.json b/ee/apps/stream-hub-service/package.json
index 04642c3b5d532..ab87ff3f90c18 100644
--- a/ee/apps/stream-hub-service/package.json
+++ b/ee/apps/stream-hub-service/package.json
@@ -1,7 +1,7 @@
{
"name": "@rocket.chat/stream-hub-service",
"private": true,
- "version": "0.4.24",
+ "version": "0.4.25",
"description": "Rocket.Chat Stream Hub service",
"scripts": {
"build": "tsc -p tsconfig.json",
diff --git a/ee/packages/license/CHANGELOG.md b/ee/packages/license/CHANGELOG.md
index 2a1dc4441d078..ceb9c2d23d79c 100644
--- a/ee/packages/license/CHANGELOG.md
+++ b/ee/packages/license/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/license
+## 1.0.16
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/core-typings@7.7.1
+
+
## 1.0.15
### Patch Changes
diff --git a/ee/packages/license/package.json b/ee/packages/license/package.json
index f32c8a9b4b37f..d5c9e8d9129fe 100644
--- a/ee/packages/license/package.json
+++ b/ee/packages/license/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/license",
- "version": "1.0.15",
+ "version": "1.0.16",
"private": true,
"devDependencies": {
"@rocket.chat/jest-presets": "workspace:~",
diff --git a/ee/packages/network-broker/CHANGELOG.md b/ee/packages/network-broker/CHANGELOG.md
index 7a813f9c10e5c..6c8de5fcc453d 100644
--- a/ee/packages/network-broker/CHANGELOG.md
+++ b/ee/packages/network-broker/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/network-broker
+## 0.2.4
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/core-services@0.9.4
+
+
## 0.2.3
### Patch Changes
diff --git a/ee/packages/network-broker/package.json b/ee/packages/network-broker/package.json
index 90df73fc4cd3b..d92d657684cef 100644
--- a/ee/packages/network-broker/package.json
+++ b/ee/packages/network-broker/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/network-broker",
- "version": "0.2.3",
+ "version": "0.2.4",
"private": true,
"devDependencies": {
"@rocket.chat/eslint-config": "workspace:^",
diff --git a/ee/packages/omnichannel-services/CHANGELOG.md b/ee/packages/omnichannel-services/CHANGELOG.md
index 065046f62c9e5..c5decde182751 100644
--- a/ee/packages/omnichannel-services/CHANGELOG.md
+++ b/ee/packages/omnichannel-services/CHANGELOG.md
@@ -1,5 +1,19 @@
# @rocket.chat/omnichannel-services
+## 0.3.22
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/core-typings@7.7.1
+ - @rocket.chat/pdf-worker@0.3.4
+
+
## 0.3.21
### Patch Changes
diff --git a/ee/packages/omnichannel-services/package.json b/ee/packages/omnichannel-services/package.json
index 12b83036eaeaf..ea24a9872acf4 100644
--- a/ee/packages/omnichannel-services/package.json
+++ b/ee/packages/omnichannel-services/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/omnichannel-services",
- "version": "0.3.21",
+ "version": "0.3.22",
"private": true,
"devDependencies": {
"@rocket.chat/eslint-config": "workspace:^",
diff --git a/ee/packages/pdf-worker/CHANGELOG.md b/ee/packages/pdf-worker/CHANGELOG.md
index 6e5746012ed4a..6d832a29e7427 100644
--- a/ee/packages/pdf-worker/CHANGELOG.md
+++ b/ee/packages/pdf-worker/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/pdf-worker
+## 0.3.4
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.3.3
### Patch Changes
diff --git a/ee/packages/pdf-worker/package.json b/ee/packages/pdf-worker/package.json
index 19a4a8320744e..8dced6e6cc7c7 100644
--- a/ee/packages/pdf-worker/package.json
+++ b/ee/packages/pdf-worker/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/pdf-worker",
- "version": "0.3.3",
+ "version": "0.3.4",
"private": true,
"main": "./dist/index.js",
"typings": "./dist/index.d.ts",
diff --git a/ee/packages/presence/CHANGELOG.md b/ee/packages/presence/CHANGELOG.md
index e5fbdca4ee2e1..078988885d6b4 100644
--- a/ee/packages/presence/CHANGELOG.md
+++ b/ee/packages/presence/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/presence
+## 0.2.25
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-services@0.9.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.2.24
### Patch Changes
diff --git a/ee/packages/presence/package.json b/ee/packages/presence/package.json
index 6a5d57747b8a4..80380becacceb 100644
--- a/ee/packages/presence/package.json
+++ b/ee/packages/presence/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/presence",
- "version": "0.2.24",
+ "version": "0.2.25",
"private": true,
"devDependencies": {
"@babel/core": "~7.26.0",
diff --git a/package.json b/package.json
index 708769d5da872..98a22c0ca3408 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "rocket.chat",
- "version": "7.7.0",
+ "version": "7.7.1",
"description": "Rocket.Chat Monorepo",
"main": "index.js",
"private": true,
diff --git a/packages/api-client/CHANGELOG.md b/packages/api-client/CHANGELOG.md
index 4044d8bab292d..ac10730c51c96 100644
--- a/packages/api-client/CHANGELOG.md
+++ b/packages/api-client/CHANGELOG.md
@@ -1,5 +1,15 @@
# @rocket.chat/api-client
+## 0.2.25
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.2.24
### Patch Changes
diff --git a/packages/api-client/package.json b/packages/api-client/package.json
index 1fd9c77033c68..ff6af2afb17e4 100644
--- a/packages/api-client/package.json
+++ b/packages/api-client/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/api-client",
- "version": "0.2.24",
+ "version": "0.2.25",
"devDependencies": {
"@rocket.chat/jest-presets": "workspace:~",
"@types/jest": "~29.5.14",
diff --git a/packages/apps/CHANGELOG.md b/packages/apps/CHANGELOG.md
index c69360201c4f7..a88c6df247f23 100644
--- a/packages/apps/CHANGELOG.md
+++ b/packages/apps/CHANGELOG.md
@@ -1,5 +1,15 @@
# @rocket.chat/apps
+## 0.5.4
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/model-typings@1.6.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.5.3
### Patch Changes
diff --git a/packages/apps/package.json b/packages/apps/package.json
index 0c11346f7c3c6..ec6f0789ef70e 100644
--- a/packages/apps/package.json
+++ b/packages/apps/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/apps",
- "version": "0.5.3",
+ "version": "0.5.4",
"private": true,
"devDependencies": {
"eslint": "~8.45.0",
diff --git a/packages/core-services/CHANGELOG.md b/packages/core-services/CHANGELOG.md
index 214d57cb46f0b..7f85c417a99be 100644
--- a/packages/core-services/CHANGELOG.md
+++ b/packages/core-services/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/core-services
+## 0.9.4
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.9.3
### Patch Changes
diff --git a/packages/core-services/package.json b/packages/core-services/package.json
index 668dfa01a21a4..8351b522fca6a 100644
--- a/packages/core-services/package.json
+++ b/packages/core-services/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/core-services",
- "version": "0.9.3",
+ "version": "0.9.4",
"private": true,
"devDependencies": {
"@babel/core": "~7.26.0",
diff --git a/packages/core-typings/CHANGELOG.md b/packages/core-typings/CHANGELOG.md
index cacdb18e69942..6ace917ef2657 100644
--- a/packages/core-typings/CHANGELOG.md
+++ b/packages/core-typings/CHANGELOG.md
@@ -1,5 +1,7 @@
# @rocket.chat/core-typings
+## 7.7.1
+
## 7.7.0
## 7.7.0-rc.6
diff --git a/packages/core-typings/package.json b/packages/core-typings/package.json
index 1c38ce33fdb18..67c7985469b74 100644
--- a/packages/core-typings/package.json
+++ b/packages/core-typings/package.json
@@ -2,7 +2,7 @@
"$schema": "https://json.schemastore.org/package",
"name": "@rocket.chat/core-typings",
"private": true,
- "version": "7.7.0",
+ "version": "7.7.1",
"devDependencies": {
"@rocket.chat/apps-engine": "workspace:^",
"@rocket.chat/eslint-config": "workspace:^",
diff --git a/packages/cron/CHANGELOG.md b/packages/cron/CHANGELOG.md
index 532f762b9b12b..150d387f1979f 100644
--- a/packages/cron/CHANGELOG.md
+++ b/packages/cron/CHANGELOG.md
@@ -1,5 +1,15 @@
# @rocket.chat/cron
+## 0.1.25
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/models@1.5.4
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.1.24
### Patch Changes
diff --git a/packages/cron/package.json b/packages/cron/package.json
index 1a666d8028668..b18d5e51d93cb 100644
--- a/packages/cron/package.json
+++ b/packages/cron/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/cron",
- "version": "0.1.24",
+ "version": "0.1.25",
"private": true,
"devDependencies": {
"eslint": "~8.45.0",
diff --git a/packages/ddp-client/CHANGELOG.md b/packages/ddp-client/CHANGELOG.md
index 702a4ab93c15b..79be928ad6fb6 100644
--- a/packages/ddp-client/CHANGELOG.md
+++ b/packages/ddp-client/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/ddp-client
+## 0.3.25
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/api-client@0.2.25
+ - @rocket.chat/core-typings@7.7.1
+
+
## 0.3.24
### Patch Changes
diff --git a/packages/ddp-client/package.json b/packages/ddp-client/package.json
index 2535cf8425549..b828807ea93cc 100644
--- a/packages/ddp-client/package.json
+++ b/packages/ddp-client/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/ddp-client",
- "version": "0.3.24",
+ "version": "0.3.25",
"devDependencies": {
"@rocket.chat/jest-presets": "workspace:~",
"@types/jest": "~29.5.14",
diff --git a/packages/freeswitch/CHANGELOG.md b/packages/freeswitch/CHANGELOG.md
index 1fe8d7f4de1b8..9413d546e53dc 100644
--- a/packages/freeswitch/CHANGELOG.md
+++ b/packages/freeswitch/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/freeswitch
+## 1.2.12
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/core-typings@7.7.1
+
+
## 1.2.11
### Patch Changes
diff --git a/packages/freeswitch/package.json b/packages/freeswitch/package.json
index 4db0f5053d794..7e200b3e3c950 100644
--- a/packages/freeswitch/package.json
+++ b/packages/freeswitch/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/freeswitch",
- "version": "1.2.11",
+ "version": "1.2.12",
"private": true,
"devDependencies": {
"@rocket.chat/jest-presets": "workspace:~",
diff --git a/packages/fuselage-ui-kit/CHANGELOG.md b/packages/fuselage-ui-kit/CHANGELOG.md
index ac21e4b891c2a..ed5c1866ecac4 100644
--- a/packages/fuselage-ui-kit/CHANGELOG.md
+++ b/packages/fuselage-ui-kit/CHANGELOG.md
@@ -1,5 +1,18 @@
# Change Log
+## 19.0.1
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+ - @rocket.chat/gazzodown@19.0.1
+ - @rocket.chat/ui-avatar@15.0.1
+ - @rocket.chat/ui-video-conf@19.0.1
+ - @rocket.chat/core-typings@7.7.1
+
+
## 19.0.0
### Patch Changes
diff --git a/packages/fuselage-ui-kit/package.json b/packages/fuselage-ui-kit/package.json
index a77317f33885b..7078a4d6b8358 100644
--- a/packages/fuselage-ui-kit/package.json
+++ b/packages/fuselage-ui-kit/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/fuselage-ui-kit",
- "version": "19.0.0",
+ "version": "19.0.1",
"private": true,
"description": "UiKit elements for Rocket.Chat Apps built under Fuselage design system",
"homepage": "https://rocketchat.github.io/Rocket.Chat.Fuselage/",
diff --git a/packages/gazzodown/CHANGELOG.md b/packages/gazzodown/CHANGELOG.md
index 77b9a47115830..5c408b3bbaff0 100644
--- a/packages/gazzodown/CHANGELOG.md
+++ b/packages/gazzodown/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/gazzodown
+## 19.0.1
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+ - @rocket.chat/ui-client@19.0.1
+ - @rocket.chat/core-typings@7.7.1
+
+
## 19.0.0
### Patch Changes
diff --git a/packages/gazzodown/package.json b/packages/gazzodown/package.json
index 0620e204b89d8..fd433a7afa95c 100644
--- a/packages/gazzodown/package.json
+++ b/packages/gazzodown/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/gazzodown",
- "version": "19.0.0",
+ "version": "19.0.1",
"private": true,
"main": "./dist/index.js",
"typings": "./dist/index.d.ts",
diff --git a/packages/instance-status/CHANGELOG.md b/packages/instance-status/CHANGELOG.md
index fc14ae2279e70..d474103fa11b8 100644
--- a/packages/instance-status/CHANGELOG.md
+++ b/packages/instance-status/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/instance-status
+## 0.1.25
+
+### Patch Changes
+
+- Updated dependencies [710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/models@1.5.4
+
+
## 0.1.24
### Patch Changes
diff --git a/packages/instance-status/package.json b/packages/instance-status/package.json
index c07e466163fe9..a488f810d3557 100644
--- a/packages/instance-status/package.json
+++ b/packages/instance-status/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/instance-status",
- "version": "0.1.24",
+ "version": "0.1.25",
"private": true,
"devDependencies": {
"@rocket.chat/eslint-config": "workspace:^",
diff --git a/packages/livechat/CHANGELOG.md b/packages/livechat/CHANGELOG.md
index 90c6d308b6f16..01ba5047e01ee 100644
--- a/packages/livechat/CHANGELOG.md
+++ b/packages/livechat/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/livechat Change Log
+## 1.22.12
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/gazzodown@19.0.1
+
+
## 1.22.11
### Patch Changes
diff --git a/packages/livechat/package.json b/packages/livechat/package.json
index 0c1087c868ded..5adc818301fd9 100644
--- a/packages/livechat/package.json
+++ b/packages/livechat/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/livechat",
- "version": "1.22.11",
+ "version": "1.22.12",
"files": [
"/build"
],
diff --git a/packages/mock-providers/CHANGELOG.md b/packages/mock-providers/CHANGELOG.md
index 7c28a2ee33e05..41f47ab46e644 100644
--- a/packages/mock-providers/CHANGELOG.md
+++ b/packages/mock-providers/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/mock-providers
+## 0.2.4
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+
+
## 0.2.3
### Patch Changes
diff --git a/packages/mock-providers/package.json b/packages/mock-providers/package.json
index 5ac414db1ca77..1ba875403a23c 100644
--- a/packages/mock-providers/package.json
+++ b/packages/mock-providers/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/mock-providers",
- "version": "0.2.3",
+ "version": "0.2.4",
"private": true,
"dependencies": {
"@rocket.chat/emitter": "~0.31.25",
diff --git a/packages/model-typings/CHANGELOG.md b/packages/model-typings/CHANGELOG.md
index 56cdeae9539d9..a65ff53411a16 100644
--- a/packages/model-typings/CHANGELOG.md
+++ b/packages/model-typings/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/model-typings
+## 1.6.4
+
+### Patch Changes
+
+- ([#36200](https://github.com/RocketChat/Rocket.Chat/pull/36200) by [@dionisio-bot](https://github.com/dionisio-bot)) Fixed contacts being marked as `known` after editing a custom field, or resolving conflicts by adding a new model function that only updates the `customFields` or `conflictingFields` prop.
+
+- Updated dependencies []:
+
+ - @rocket.chat/core-typings@7.7.1
+
+
## 1.6.3
### Patch Changes
diff --git a/packages/model-typings/package.json b/packages/model-typings/package.json
index bd8e98b83b5c5..f8b8d5b65c71d 100644
--- a/packages/model-typings/package.json
+++ b/packages/model-typings/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/model-typings",
- "version": "1.6.3",
+ "version": "1.6.4",
"private": true,
"devDependencies": {
"@types/node-rsa": "^1.1.4",
diff --git a/packages/model-typings/src/models/ILivechatContactsModel.ts b/packages/model-typings/src/models/ILivechatContactsModel.ts
index b93ec3b304bef..6352ed9db94db 100644
--- a/packages/model-typings/src/models/ILivechatContactsModel.ts
+++ b/packages/model-typings/src/models/ILivechatContactsModel.ts
@@ -25,6 +25,7 @@ export interface ILivechatContactsModel extends IBaseModel {
): Promise;
updateContact(contactId: string, data: Partial, options?: FindOneAndUpdateOptions): Promise;
updateById(contactId: string, update: UpdateFilter, options?: UpdateOptions): Promise;
+ updateContactCustomFields(contactId: string, data: Partial, options?: UpdateOptions): Promise;
addChannel(contactId: string, channel: ILivechatContactChannel): Promise;
findPaginatedContacts(
search: { searchText?: string; unknown?: boolean },
diff --git a/packages/models/CHANGELOG.md b/packages/models/CHANGELOG.md
index 6a6e3ad3e9ebd..edf544e29acab 100644
--- a/packages/models/CHANGELOG.md
+++ b/packages/models/CHANGELOG.md
@@ -1,5 +1,17 @@
# @rocket.chat/models
+## 1.5.4
+
+### Patch Changes
+
+- ([#36200](https://github.com/RocketChat/Rocket.Chat/pull/36200) by [@dionisio-bot](https://github.com/dionisio-bot)) Fixed contacts being marked as `known` after editing a custom field, or resolving conflicts by adding a new model function that only updates the `customFields` or `conflictingFields` prop.
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a, 710f6b2bc211ba1d06d701f99d17bf2405d19b32]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/model-typings@1.6.4
+
+
## 1.5.3
### Patch Changes
diff --git a/packages/models/package.json b/packages/models/package.json
index af6237419baee..0b1b88a6cdc76 100644
--- a/packages/models/package.json
+++ b/packages/models/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/models",
- "version": "1.5.3",
+ "version": "1.5.4",
"private": true,
"devDependencies": {
"@rocket.chat/jest-presets": "workspace:~",
diff --git a/packages/models/src/models/LivechatContacts.ts b/packages/models/src/models/LivechatContacts.ts
index 927d7b82a6bef..20934dbe304c5 100644
--- a/packages/models/src/models/LivechatContacts.ts
+++ b/packages/models/src/models/LivechatContacts.ts
@@ -2,6 +2,7 @@ import type {
AtLeast,
ILivechatContact,
ILivechatContactChannel,
+ ILivechatContactConflictingField,
ILivechatContactVisitorAssociation,
ILivechatVisitor,
RocketChatRecordDeleted,
@@ -126,6 +127,24 @@ export class LivechatContactsRaw extends BaseRaw implements IL
return this.updateOne({ _id: contactId }, update, options);
}
+ async updateContactCustomFields(
+ contactId: string,
+ dataToUpdate: { customFields: Record; conflictingFields: ILivechatContactConflictingField[] },
+ options?: FindOneAndUpdateOptions,
+ ): Promise {
+ if (!dataToUpdate.customFields && !dataToUpdate.conflictingFields) {
+ throw new Error('At least one of customFields or conflictingFields must be provided');
+ }
+
+ return this.findOneAndUpdate(
+ { _id: contactId },
+ {
+ $set: { ...dataToUpdate },
+ },
+ { returnDocument: 'after', ...options },
+ );
+ }
+
findPaginatedContacts(
search: { searchText?: string; unknown?: boolean },
options?: FindOptions,
diff --git a/packages/rest-typings/CHANGELOG.md b/packages/rest-typings/CHANGELOG.md
index 4767076da8b45..b4e9bb7418092 100644
--- a/packages/rest-typings/CHANGELOG.md
+++ b/packages/rest-typings/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/rest-typings
+## 7.7.1
+
+### Patch Changes
+
+- ([#36204](https://github.com/RocketChat/Rocket.Chat/pull/36204) by [@dionisio-bot](https://github.com/dionisio-bot)) Fixes an issue that prevented the action of saving an agent when editing a department to work.
+
+- Updated dependencies []:
+
+ - @rocket.chat/core-typings@7.7.1
+
+
## 7.7.0
### Minor Changes
diff --git a/packages/rest-typings/package.json b/packages/rest-typings/package.json
index bc5a433f62949..7adb921adf93a 100644
--- a/packages/rest-typings/package.json
+++ b/packages/rest-typings/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/rest-typings",
- "version": "7.7.0",
+ "version": "7.7.1",
"devDependencies": {
"@rocket.chat/apps-engine": "workspace:^",
"@rocket.chat/eslint-config": "workspace:~",
diff --git a/packages/rest-typings/src/v1/omnichannel.ts b/packages/rest-typings/src/v1/omnichannel.ts
index 1992e860bc037..7ab919ca9c6ac 100644
--- a/packages/rest-typings/src/v1/omnichannel.ts
+++ b/packages/rest-typings/src/v1/omnichannel.ts
@@ -165,8 +165,8 @@ export const isLivechatDepartmentDepartmentIdAgentsGETProps = ajv.compileUpdated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+
+
## 15.0.0
### Patch Changes
diff --git a/packages/ui-avatar/package.json b/packages/ui-avatar/package.json
index 364bb3f6075f9..8eee056b0628a 100644
--- a/packages/ui-avatar/package.json
+++ b/packages/ui-avatar/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/ui-avatar",
- "version": "15.0.0",
+ "version": "15.0.1",
"private": true,
"devDependencies": {
"@babel/core": "~7.26.0",
diff --git a/packages/ui-client/CHANGELOG.md b/packages/ui-client/CHANGELOG.md
index abee6235d4958..6ef3c833424ae 100644
--- a/packages/ui-client/CHANGELOG.md
+++ b/packages/ui-client/CHANGELOG.md
@@ -1,5 +1,15 @@
# @rocket.chat/ui-client
+## 19.0.1
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+ - @rocket.chat/ui-avatar@15.0.1
+
+
## 19.0.0
### Minor Changes
diff --git a/packages/ui-client/package.json b/packages/ui-client/package.json
index cae76284ecaad..74886221197c6 100644
--- a/packages/ui-client/package.json
+++ b/packages/ui-client/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/ui-client",
- "version": "19.0.0",
+ "version": "19.0.1",
"private": true,
"main": "./dist/index.js",
"typings": "./dist/index.d.ts",
diff --git a/packages/ui-contexts/CHANGELOG.md b/packages/ui-contexts/CHANGELOG.md
index 78937c0a16255..de98161c12823 100644
--- a/packages/ui-contexts/CHANGELOG.md
+++ b/packages/ui-contexts/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/ui-contexts
+## 19.0.1
+
+### Patch Changes
+
+- Updated dependencies [016611917a86c738c22f7da4235e3ad38cf81e2a]:
+
+ - @rocket.chat/rest-typings@7.7.1
+ - @rocket.chat/ddp-client@0.3.25
+ - @rocket.chat/core-typings@7.7.1
+
+
## 19.0.0
### Patch Changes
diff --git a/packages/ui-contexts/package.json b/packages/ui-contexts/package.json
index 9511b4afcdbf2..5c65254787e70 100644
--- a/packages/ui-contexts/package.json
+++ b/packages/ui-contexts/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/ui-contexts",
- "version": "19.0.0",
+ "version": "19.0.1",
"private": true,
"devDependencies": {
"@rocket.chat/core-typings": "workspace:^",
diff --git a/packages/ui-video-conf/CHANGELOG.md b/packages/ui-video-conf/CHANGELOG.md
index 567ab8f7e0ffc..bb700a21181b5 100644
--- a/packages/ui-video-conf/CHANGELOG.md
+++ b/packages/ui-video-conf/CHANGELOG.md
@@ -1,5 +1,15 @@
# @rocket.chat/ui-video-conf
+## 19.0.1
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+ - @rocket.chat/ui-avatar@15.0.1
+
+
## 19.0.0
### Patch Changes
diff --git a/packages/ui-video-conf/package.json b/packages/ui-video-conf/package.json
index 39edbde787e55..08d513cd3c4fc 100644
--- a/packages/ui-video-conf/package.json
+++ b/packages/ui-video-conf/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/ui-video-conf",
- "version": "19.0.0",
+ "version": "19.0.1",
"private": true,
"main": "./dist/index.js",
"typings": "./dist/index.d.ts",
diff --git a/packages/ui-voip/CHANGELOG.md b/packages/ui-voip/CHANGELOG.md
index e49ff579ac7fd..5cd1d0b47f4c0 100644
--- a/packages/ui-voip/CHANGELOG.md
+++ b/packages/ui-voip/CHANGELOG.md
@@ -1,5 +1,16 @@
# @rocket.chat/ui-voip
+## 9.0.1
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+ - @rocket.chat/ui-avatar@15.0.1
+ - @rocket.chat/ui-client@19.0.1
+
+
## 9.0.0
### Minor Changes
diff --git a/packages/ui-voip/package.json b/packages/ui-voip/package.json
index 0d6519563a582..901f80efe86de 100644
--- a/packages/ui-voip/package.json
+++ b/packages/ui-voip/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/ui-voip",
- "version": "9.0.0",
+ "version": "9.0.1",
"private": true,
"main": "./dist/index.js",
"typings": "./dist/index.d.ts",
diff --git a/packages/web-ui-registration/CHANGELOG.md b/packages/web-ui-registration/CHANGELOG.md
index bb5af493e9c7f..2b06a7346e855 100644
--- a/packages/web-ui-registration/CHANGELOG.md
+++ b/packages/web-ui-registration/CHANGELOG.md
@@ -1,5 +1,14 @@
# @rocket.chat/web-ui-registration
+## 19.0.1
+
+### Patch Changes
+
+- Updated dependencies []:
+
+ - @rocket.chat/ui-contexts@19.0.1
+
+
## 19.0.0
### Patch Changes
diff --git a/packages/web-ui-registration/package.json b/packages/web-ui-registration/package.json
index b603ed72752ad..3c077b147e86c 100644
--- a/packages/web-ui-registration/package.json
+++ b/packages/web-ui-registration/package.json
@@ -1,6 +1,6 @@
{
"name": "@rocket.chat/web-ui-registration",
- "version": "19.0.0",
+ "version": "19.0.1",
"private": true,
"homepage": "https://rocket.chat",
"main": "./dist/index.js",
diff --git a/yarn.lock b/yarn.lock
index 4958acc8a4745..dc215d55ad27a 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -8407,7 +8407,7 @@ __metadata:
storybook-dark-mode: "npm:^4.0.2"
typescript: "npm:~5.7.2"
peerDependencies:
- "@rocket.chat/apps-engine": 1.52.0-rc.0
+ "@rocket.chat/apps-engine": 1.52.0
"@rocket.chat/eslint-config": 0.7.0
"@rocket.chat/fuselage": "*"
"@rocket.chat/fuselage-hooks": "*"