diff options
author | 2021-08-21 00:24:01 +0200 | |
---|---|---|
committer | 2021-08-21 00:24:01 +0200 | |
commit | a9d3686ccc496044cfdee013ccfbece955793052 (patch) | |
tree | 52b7772720ff89b1b6f20070a771776f0b3e9367 /apps/Notes/helpers | |
parent | 9f3c030a33edcf57eb832c500253044d107f6e25 (diff) | |
download | my_apps-a9d3686ccc496044cfdee013ccfbece955793052.tar.gz my_apps-a9d3686ccc496044cfdee013ccfbece955793052.tar.bz2 my_apps-a9d3686ccc496044cfdee013ccfbece955793052.zip |
icon focus, notes update timestamp, loading note
Diffstat (limited to 'apps/Notes/helpers')
-rw-r--r-- | apps/Notes/helpers/export.js | 32 | ||||
-rw-r--r-- | apps/Notes/helpers/noteActions.js | 1 |
2 files changed, 33 insertions, 0 deletions
diff --git a/apps/Notes/helpers/export.js b/apps/Notes/helpers/export.js new file mode 100644 index 0000000..011dc18 --- /dev/null +++ b/apps/Notes/helpers/export.js @@ -0,0 +1,32 @@ +import fetchJson from 'lib/fetchJson' +import JSZip from 'jszip' +import saveFile from 'helpers/saveFile' +import filename from '../helpers/fileName' + +export const handleSelect = (id, ids, setIds) => { + ids.includes(id) + ? setIds(ids.filter(i => i !== id)) + : setIds([...ids, id]) +} + +export const handleSelectAll = (e, notes, setIds) => { + if (e.target.checked) { + setIds(notes.map(n => n.noteId)) + } else { + setIds([]) + } +} + +export const handleExport = (e, ids, notes) => { + e.preventDefault() + const zip = new JSZip() + + Promise.all(ids.map(async id => { + const title = notes.find(n => n.noteId === id).title + const {content} = await fetchJson(`/api/note/${id}`) + zip.folder('notes').file(filename(title), content, {binary: true}) + })).then(() => { + zip.generateAsync({type:"blob"}) + .then(c => saveFile(c, 'notes.zip', 'application/zip')) + }) +} diff --git a/apps/Notes/helpers/noteActions.js b/apps/Notes/helpers/noteActions.js index 9588150..7b51e20 100644 --- a/apps/Notes/helpers/noteActions.js +++ b/apps/Notes/helpers/noteActions.js @@ -1,5 +1,6 @@ import fetchJson from 'lib/fetchJson' import filename from '../helpers/fileName' +import saveFile from 'helpers/saveFile' export const getNote = async (note, setFetchedNote, setPopup, callback) => { try { |