Skip to content
Snippets Groups Projects
cozy.js 854 B
Newer Older
  • Learn to ignore specific revisions
  • const { log, updateOrCreate } = require('cozy-konnector-libs')
    const { isLocal } = require('../helpers/env')
    const cozyClient = require('cozy-konnector-libs/dist/libs/cozyclient')
    
    async function saveAccountData(accountId, accountData) {
      log('info', `saveAccountData: ${accountId}`)
    
      let account = await getAccount(accountId)
    
      account = await updateOrCreate(
        [{ ...account, data: accountData }],
        'io.cozy.accounts'
      )
      return account
    }
    
    
    /**
     * Return account
     * @param {string} accountId
     * @returns {Account}
     */
    
    async function getAccount(accountId) {
      log('info', `getAccount: ${accountId}`)
      const accounts = await cozyClient.data.findAll('io.cozy.accounts')
      return accounts.filter(account =>
        isLocal() ? account._id === accountId : account.account_type === accountId
      )[0]
    }
    
    module.exports = { getAccount, saveAccountData }