diff --git a/packages/api/methods.ts b/packages/api/methods.ts index 124d5d66628d7928d9c18eb02f1143bd7ac1f928..9770e9b75b344f46b1b46e57c40d2d7d1f04f551 100644 --- a/packages/api/methods.ts +++ b/packages/api/methods.ts @@ -181,6 +181,10 @@ export function deletePayee(id) { return send('api/payee-delete', { id }); } +export function mergePayees(targetId, mergeIds) { + return send('api/payees-merge', { targetId, mergeIds }); +} + export function getRules() { return send('api/rules-get'); } diff --git a/packages/loot-core/src/server/api.ts b/packages/loot-core/src/server/api.ts index f2bbe5f42293b2879ee16a97c133b48ffcf86948..e99624982a956531c52a93ad2650978a73aff52a 100644 --- a/packages/loot-core/src/server/api.ts +++ b/packages/loot-core/src/server/api.ts @@ -653,6 +653,14 @@ handlers['api/payee-delete'] = withMutation(async function ({ id }) { return handlers['payees-batch-change']({ deleted: [{ id }] }); }); +handlers['api/payees-merge'] = withMutation(async function ({ + targetId, + mergeIds, +}) { + checkFileOpen(); + return handlers['payees-merge']({ targetId, mergeIds }); +}); + handlers['api/rules-get'] = async function () { checkFileOpen(); return handlers['rules-get'](); diff --git a/packages/loot-core/src/types/api-handlers.d.ts b/packages/loot-core/src/types/api-handlers.d.ts index d8f23ae5be2db2efbc2071ba1d535844c370c552..db221089c76acee588d6c54f978fe646c9c9027b 100644 --- a/packages/loot-core/src/types/api-handlers.d.ts +++ b/packages/loot-core/src/types/api-handlers.d.ts @@ -154,6 +154,11 @@ export interface ApiHandlers { 'api/payee-delete': (arg: { id }) => Promise<unknown>; + 'api/payees-merge': (arg: { + targetId: string; + mergeIds: string[]; + }) => Promise<void>; + 'api/rules-get': () => Promise<RuleEntity[]>; 'api/payee-rules-get': (arg: { id: string }) => Promise<RuleEntity[]>; diff --git a/upcoming-release-notes/3028.md b/upcoming-release-notes/3028.md new file mode 100644 index 0000000000000000000000000000000000000000..91073bd5e98741d5003ed1230656a0b37f8613ac --- /dev/null +++ b/upcoming-release-notes/3028.md @@ -0,0 +1,6 @@ +--- +category: Enhancements +authors: [matt-fidd] +--- + +Add `mergePayees` method to the API