Vassil_Iliev

pieta

Jun 21st, 2022
464
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import { FileHandler } from './services/file-handler.js';
  2.  
  3. const reader = new FileHandler();
  4.  
  5. reader
  6.     .read('./data/tasks.all.json')
  7.     .then(data => JSON.parse(data))
  8.     .then(data => {
  9.         const done = data.tasks.filter(x => x.status === 'done')
  10.         const pending = data.tasks.filter(x => x.status === 'pending')
  11.  
  12.         const promise1 = reader.write('./data/tasks.done.json', JSON.stringify(done, null, 2));
  13.         const promise2 = reader.write('./data/tasks.pending.json', JSON.stringify(pending, null, 2));
  14.  
  15.         Promise.allSettled([promise1, promise2]).then(errors => {
  16.             const errorsFound = errors
  17.                 .filter(x => x.status === 'rejected')
  18.                 .map(x => new Date().toLocaleTimeString() + ': ' + x.reason.message)
  19.  
  20.             if (errorsFound.length > 0) {
  21.                 reader
  22.                     .write('./logs/default.log', '\n' + errorsFound.join('\n') + '\n' + '----------')
  23.                     .then(() => console.log(errorsFound.join('\n')))
  24.                     .catch(err => console.log(err));
  25.             }
  26.         }).catch(err => console.log(err));
  27.  
  28.     }).catch(err => {
  29.         reader
  30.             .write('./logs/default.log', '\n' + err + '\n' + '----------')
  31.             .then(() => console.log(err))
  32.             .catch(err => console.log(err));
  33.     });
Advertisement
Add Comment
Please, Sign In to add comment