/** * Handlers for sync: getSyncStatus, createSyncInvite, pairWithInvite. * Context: syncManager */ function register(deps) { const { syncManager } = deps; return [ { type: 'getSyncStatus', handle: async (payload, reply) => { try { const status = await syncManager.getSyncStatus(); reply({ ok: true, ...status }); } catch (e) { reply({ ok: false, error: e.message }); } } }, { type: 'createSyncInvite', handle: async (payload, reply) => { try { const result = await syncManager.createSyncInvite(); reply(result); } catch (e) { reply({ ok: false, error: e.message }); } } }, { type: 'pairWithInvite', handle: async (payload, reply) => { const invite = payload && payload.invite; try { const result = await syncManager.pairWithInvite(invite); reply(result); } catch (e) { reply({ ok: false, error: e.message }); } } } ]; } module.exports = { register };