-
Notifications
You must be signed in to change notification settings - Fork 0
/
orbit-common-local-storage.amd.map
1 lines (1 loc) · 2.7 KB
/
orbit-common-local-storage.amd.map
1
{"version":3,"sources":["orbit-common/local-storage-source.js"],"sourcesContent":["define('orbit-common/local-storage-source', ['exports', 'orbit/lib/assert', 'orbit-common/memory-source'], function (exports, assert, MemorySource) {\n\n 'use strict';\n\n var supportsLocalStorage = function() {\n try {\n return 'localStorage' in window && window['localStorage'] !== null;\n } catch(e) {\n return false;\n }\n };\n\n /**\n Source for storing data in local storage\n\n @class LocalStorageSource\n @extends MemorySource\n @namespace OC\n @param {OC.Schema} schema\n @param {Object} [options]\n @constructor\n */\n var LocalStorageSource = MemorySource['default'].extend({\n init: function(schema, options) {\n assert.assert('Your browser does not support local storage!', supportsLocalStorage());\n\n this._super.apply(this, arguments);\n\n options = options || {};\n this.namespace = options['namespace'] || 'orbit'; // local storage key\n this._autosave = options['autosave'] !== undefined ? options['autosave'] : true;\n var autoload = options['autoload'] !== undefined ? options['autoload'] : true;\n\n this._isDirty = false;\n\n this.on('didTransform', function() {\n this._saveData();\n }, this);\n\n if (autoload) this.load();\n },\n\n load: function() {\n var storage = window.localStorage.getItem(this.namespace);\n if (storage) {\n this.reset(JSON.parse(storage));\n }\n },\n\n enableAutosave: function() {\n if (!this._autosave) {\n this._autosave = true;\n if (this._isDirty) this._saveData();\n }\n },\n\n disableAutosave: function() {\n if (this._autosave) {\n this._autosave = false;\n }\n },\n\n /////////////////////////////////////////////////////////////////////////////\n // Internals\n /////////////////////////////////////////////////////////////////////////////\n\n _saveData: function(forceSave) {\n if (!this._autosave && !forceSave) {\n this._isDirty = true;\n return;\n }\n window.localStorage.setItem(this.namespace, JSON.stringify(this.retrieve()));\n this._isDirty = false;\n }\n });\n\n exports['default'] = LocalStorageSource;\n\n});"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;","file":"orbit-common-local-storage.amd.js"}