5
0
Fork 0
mirror of https://0xacab.org/sutty/sutty synced 2024-11-17 06:36:22 +00:00
panel/app/javascript/editor/storage.ts
void b0e2cec22f feat(editor): preguntar al restaurar borrador
no lo pude testear por el problema que tuve
2021-02-26 18:26:49 +00:00

36 lines
1 KiB
TypeScript

import { Editor } from 'editor/editor'
/*
* Guarda una copia local de los cambios para poder recuperarlos
* después.
*
* Usamos la URL completa sin anchors.
*/
function getStorageKey (editor: Editor): string {
const keyEl = editor.editorEl.querySelector<HTMLInputElement>('[data-target="storage-key"]')
if (!keyEl) throw new Error('No encuentro la llave para guardar los artículos')
return keyEl.value
}
export function forgetContent (storedKey: string): void {
window.localStorage.removeItem(storedKey)
}
export function storeContent (editor: Editor): void {
if (editor.contentEl.innerText.trim().length === 0) return
window.localStorage.setItem(getStorageKey(editor), editor.contentEl.innerHTML)
}
export function hasContent (editor: Editor): boolean {
return !!window.localStorage.getItem(getStorageKey(editor))
}
export function restoreContent (editor: Editor): void {
const content = window.localStorage.getItem(getStorageKey(editor))
if (!content) return
if (content.trim().length === 0) return
editor.contentEl.innerHTML = content
}