Release note for Id83eda95
[mediawiki.git] / resources / src / mediawiki / mediawiki.storage.js
blobcb62fbf26c63e6c2a9b0a37cd435f024d2b05459
1 ( function ( mw ) {
2 'use strict';
4 /**
5 * Library for storing device specific information. It should be used for storing simple
6 * strings and is not suitable for storing large chunks of data.
8 * @class mw.storage
9 * @singleton
11 mw.storage = {
13 localStorage: window.localStorage,
15 /**
16 * Retrieve value from device storage.
18 * @param {string} key Key of item to retrieve
19 * @return {string|boolean} False when localStorage not available, otherwise string
21 get: function ( key ) {
22 try {
23 return mw.storage.localStorage.getItem( key );
24 } catch ( e ) {}
25 return false;
28 /**
29 * Set a value in device storage.
31 * @param {string} key Key name to store under
32 * @param {string} value Value to be stored
33 * @return {boolean} Whether the save succeeded or not
35 set: function ( key, value ) {
36 try {
37 mw.storage.localStorage.setItem( key, value );
38 return true;
39 } catch ( e ) {}
40 return false;
43 /**
44 * Remove a value from device storage.
46 * @param {string} key Key of item to remove
47 * @return {boolean} Whether the save succeeded or not
49 remove: function ( key ) {
50 try {
51 mw.storage.localStorage.removeItem( key );
52 return true;
53 } catch ( e ) {}
54 return false;
58 }( mediaWiki ) );