Tidying up a little bit and implementing file (.fsm) import
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
function prepareForExport(doc, _settings = settings) {
|
||||
function prepareForExport(doc, settings = settings) {
|
||||
let states = JSON.parse(JSON.stringify(doc.states));
|
||||
|
||||
states.forEach(state => {
|
||||
@@ -37,9 +37,13 @@ function prepareForExport(doc, _settings = settings) {
|
||||
delete _doc.lastSavedHash;
|
||||
delete _doc.element;
|
||||
|
||||
const _settings = JSON.parse(JSON.stringify(settings));
|
||||
|
||||
delete _settings.colors.getColor;
|
||||
|
||||
return {
|
||||
document: _doc,
|
||||
_settings,
|
||||
settings: _settings,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -91,8 +95,8 @@ function parseFromJson(json) {
|
||||
function importFromJson(json) {
|
||||
const doc = parseFromJson(json);
|
||||
|
||||
addDocument(doc);
|
||||
switchDocument(doc);
|
||||
addDocument(doc.document);
|
||||
switchDocument(doc.document);
|
||||
}
|
||||
|
||||
function exportToFile() {
|
||||
@@ -109,9 +113,7 @@ function exportToFile() {
|
||||
function downloadFile(name, content, type) {
|
||||
const element = document.createElement('a');
|
||||
|
||||
console.log(content);
|
||||
|
||||
element.setAttribute('href', `data:${type},charset=utf-8,${content}`);
|
||||
element.setAttribute('href', `data:${type};base64,${btoa(content)}`);
|
||||
element.setAttribute('download', name);
|
||||
|
||||
element.style.display = 'none';
|
||||
@@ -157,4 +159,4 @@ function openFromLocalStorage(id) {
|
||||
const entry = getLocalStorageEntries().find(entry => entry.document.id === id);
|
||||
addDocument(entry.document);
|
||||
switchDocument(entry.document);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user