From 0796ea73d4182e3dea7427df8c847c6e254237e4 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Wed, 9 Mar 2022 16:18:35 +0100 Subject: [PATCH] Update storageManager configs --- src/canvas/model/Frame.js | 24 ++-------- src/storage_manager/config/config.js | 71 ++++++---------------------- 2 files changed, 20 insertions(+), 75 deletions(-) diff --git a/src/canvas/model/Frame.js b/src/canvas/model/Frame.js index 65895c19a..e0f27779c 100644 --- a/src/canvas/model/Frame.js +++ b/src/canvas/model/Frame.js @@ -26,7 +26,7 @@ export default class Frame extends Model { component: '', styles: '', _undo: true, - _undoexc: ['changesCount'] + _undoexc: ['changesCount'], }; } @@ -125,12 +125,7 @@ export default class Frame extends Model { getHeadByAttr(attr, value, tag) { const head = this.getHead(); - return head.filter( - item => - item.attributes && - item.attributes[attr] == value && - (!tag || tag === item.tag) - )[0]; + return head.filter(item => item.attributes && item.attributes[attr] == value && (!tag || tag === item.tag))[0]; } removeHeadByAttr(attr, value, tag) { @@ -151,8 +146,8 @@ export default class Frame extends Model { tag, attributes: { href, - rel: 'stylesheet' - } + rel: 'stylesheet', + }, }); } @@ -165,7 +160,7 @@ export default class Frame extends Model { !this.getHeadByAttr('src', src, tag) && this.addHeadItem({ tag, - attributes: { src } + attributes: { src }, }); } @@ -184,17 +179,8 @@ export default class Frame extends Model { toJSON(opts = {}) { const obj = Model.prototype.toJSON.call(this, opts); - const { em } = this; - const sm = em && em.get('StorageManager'); - const smc = sm && sm.getConfig(); const defaults = result(this, 'defaults'); - if (smc && !opts.fromUndo) { - const opts = { component: this.getComponent() }; - if (smc.storeHtml) obj.html = em.getHtml(opts); - if (smc.storeCss) obj.css = em.getCss(opts); - } - if (opts.fromUndo) delete obj.component; delete obj.styles; delete obj.changesCount; diff --git a/src/storage_manager/config/config.js b/src/storage_manager/config/config.js index 7eb8326a1..75ad7ea0b 100644 --- a/src/storage_manager/config/config.js +++ b/src/storage_manager/config/config.js @@ -1,36 +1,21 @@ export default { // Prefix identifier that will be used inside storing and loading + // @deprecated id: 'gjs-', + // Default storage type. Available: local | remote + type: 'local', + // Enable/Disable autosaving autosave: true, - // Indicates if load data inside editor after init + // Enable/Disable autoload of data on editor init autoload: true, - // Indicates which storage to use. Available: local | remote - type: 'local', - // If autosave enabled, indicates how many steps (general changes to structure) // need to be done before save. Useful with remoteStorage to reduce remote calls stepsBeforeSave: 1, - //Enable/Disable components model (JSON format) - storeComponents: true, - - //Enable/Disable styles model (JSON format) - storeStyles: true, - - //Enable/Disable saving HTML template - storeHtml: true, - - //Enable/Disable saving CSS template - storeCss: true, - - // ONLY FOR LOCAL STORAGE - // If enabled, checks if browser supports Local Storage - checkLocal: true, - // Default storage options options: { local: { @@ -42,20 +27,27 @@ export default { remote: { // Custom parameters to pass with the remote request, eg. csrf token params: {}, + // Custom headers headers: {}, - // Endpoint where to save all stuff + + // Endpoint URL where to store data project urlStore: '', - // Endpoint where to fetch data + + // Endpoint URL where to load data project urlLoad: '', + //Callback before request beforeSend(jqXHR, settings) {}, + //Callback after request onComplete(jqXHR, status) {}, + // set contentType paramater of $.ajax // true: application/json; charset=utf-8' // false: 'x-www-form-urlencoded' contentTypeJson: true, + // Pass custom options to fetch API (remote storage) // You can pass a simple object: { someOption: 'someValue' } // or a function which returns and object to add: @@ -63,6 +55,7 @@ export default { // return currentOpts.method === 'post' ? { method: 'patch' } : {}; // } fetchOptions: '', + credentials: 'include', /** @@ -74,38 +67,4 @@ export default { recovery: true, }, }, - - // ONLY FOR REMOTE STORAGE - // Custom parameters to pass with the remote storage request, eg. csrf token - params: {}, - - // Custom headers for the remote storage request - headers: {}, - - // Endpoint where to save all stuff - urlStore: '', - - // Endpoint where to fetch data - urlLoad: '', - - //Callback before request - beforeSend(jqXHR, settings) {}, - - //Callback after request - onComplete(jqXHR, status) {}, - - // set contentType paramater of $.ajax - // true: application/json; charset=utf-8' - // false: 'x-www-form-urlencoded' - contentTypeJson: true, - - credentials: 'include', - - // Pass custom options to fetch API (remote storage) - // You can pass a simple object: { someOption: 'someValue' } - // or a function which returns and object to add: - // currentOpts => { - // return currentOpts.method === 'post' ? { method: 'patch' } : {}; - // } - fetchOptions: '', };