mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
109 lines
3.0 KiB
TypeScript
109 lines
3.0 KiB
TypeScript
|
|
|
|
import LargeLocalStorage = require('lls');
|
|
|
|
var storage = new LargeLocalStorage({size: 75*1024*1024});
|
|
storage.initialized.then(function(grantedCapacity) {
|
|
// storage ready to be used.
|
|
});
|
|
|
|
var desiredCapacity = 50 * 1024 * 1024; // 50MB
|
|
var storage = new LargeLocalStorage({
|
|
// desired capacity, in bytes.
|
|
size: desiredCapacity,
|
|
|
|
// optional name for your LLS database. Defaults to lls.
|
|
// This is the name given to the underlying
|
|
// IndexedDB or WebSQL DB or FSAPI Folder.
|
|
// LLS's with different names are independent.
|
|
name: 'myStorage'
|
|
|
|
// the following is an optional param
|
|
// that is useful for debugging.
|
|
// force LLS to use a specific storage implementation
|
|
// forceProvider: 'IndexedDB' or 'WebSQL' or 'FilesystemAPI'
|
|
});
|
|
storage.initialized.then(function(capacity) {
|
|
if (capacity != -1 && capacity != desiredCapacity) {
|
|
// the user didn't authorize your storage request
|
|
// so instead you have some limitation on your storage
|
|
}
|
|
});
|
|
|
|
storage.getAllAttachments('exampleDoc').then(function(attachEntries) {
|
|
attachEntries.map(function(entry) {
|
|
var a = entry.data;
|
|
// do something with it...
|
|
if (a.type.indexOf('image') == 0) {
|
|
// show image...
|
|
} else if (a.type.indexOf('audio') == 0) {
|
|
// play audio...
|
|
} else {
|
|
|
|
}
|
|
})
|
|
});
|
|
|
|
storage.getAllAttachmentURLs('exampleDoc').then(function(urlEntries) {
|
|
urlEntries.map(function(entry) {
|
|
var url = entry.url;
|
|
})
|
|
});
|
|
|
|
storage.getAttachment('exampleDoc', 'examplePic').then(function(attachment) {
|
|
var url = URL.createObjectURL(attachment);
|
|
});
|
|
|
|
storage.getAttachmentURL('myDoc', 'myPic').then(function(url) {
|
|
var image = new Image();
|
|
image.src = url;
|
|
document.body.appendChild(image);
|
|
storage.revokeAttachmentURL(url);
|
|
});
|
|
|
|
// the initialized property will call you back with the capacity
|
|
storage.initialized.then(function(capacity) {
|
|
console.log('Authorized to store: ' + capacity + ' bytes');
|
|
});
|
|
// or if you know your storage is already available
|
|
// you can call getCapacity directly
|
|
storage.getCapacity();
|
|
|
|
storage.getContents('exampleDoc').then(function(contents) {
|
|
alert(contents);
|
|
});
|
|
|
|
storage.ls().then(function(docKeys) {
|
|
console.log(docKeys);
|
|
});
|
|
|
|
// may or may not be true
|
|
storage.ready();
|
|
|
|
storage.initialized.then(function() {
|
|
// always true
|
|
storage.ready();
|
|
});
|
|
|
|
storage.getAttachmentURL('doc', 'attach').then(function(url) {
|
|
// do something with the URL
|
|
storage.revokeAttachmentURL(url);
|
|
});
|
|
|
|
storage.rm('exampleDoc').then(function() {
|
|
alert('doc and all attachments were removed');
|
|
});
|
|
|
|
storage.rmAttachment('exampleDoc', 'someAttachment').then(function() {
|
|
alert('exampleDoc/someAttachment removed');
|
|
}).catch(function(e) {
|
|
alert('Attachment removal failed: ' + e);
|
|
});
|
|
|
|
storage.setAttachment('myDoc', 'myPic', [1, 2, 3]).then(function() {
|
|
alert('Attachment written');
|
|
});
|
|
|
|
storage.setContents('exampleDoc', 'some data...').then(function() {
|
|
alert('doc written');
|
|
}); |