Install
npm install @cryptolize/persistence --save
Usage
ES6 (Javascript Modules)
import { S3Storage } from '@cryptolize/persistence'
S3Storage.saveFile(bucket, file, filename, progress).then((filename) => console.log(filename))
ES5 (CommonJS)
var CryptolizePersistence = require('@cryptolize/persistence')
var S3Storage = CryptolizePersistence.S3Storage
S3Storage.saveFile(bucket, file, filename, progress).then((filename) => console.log(filename))
UMD (Browser)
CryptolizePersistence.S3Storage.saveFile(bucket, file, filename, progress).then((filename) => console.log(filename))
API
S3Storage
saveText
Saves text to S3Parameters
bucket
AWS.S3text
Stringfilename
Stringparams
Object additonal params to attach to the requestprogress
StorageInterface~ProgressCallback?
Returns Promise<(AWS.Response | Error)> the response
getText
Gets text from S3Parameters
bucket
AWS.S3filename
Stringparams
progress
Returns Promise<(AWS.Response | Error)> the requested text in the Body property
saveObject
Saves object to S3Parameters
bucket
AWS.S3object
Objectfilename
params
progress
Returns Promise<(AWS.Response | Error)> the response
getObject
Gets object from S3Parameters
bucket
AWS.S3filename
Stringparams
progress
Returns Promise<(AWS.Response | Error)> the requested object in the Body property
saveFile
Saves file to S3Parameters
bucket
AWS.S3file
ArrayBufferfilename
params
progress
Returns Promise<(AWS.Response | Error)> the response
getFile
Gets file from S3Parameters
bucket
AWS.S3filename
Stringparams
progress
Returns Promise<(AWS.Response | Error)> the requested file in the Body property
LocalStorage
ParameterssaveAs
text
filename
type
(optional, default'application/octet-stream'
)
saveText
Saves textParameters
saveAs
saveAstext
Stringfilename
type
(optional, default 'application/octet-stream'
)Returns Promise<String> file's name
saveObject
Saves objectParameters
saveAs
saveAsobject
Objectfilename
type
Returns Promise<String> file's name
saveFile
Saves fileParameters
saveAs
saveAsfile
ArrayBufferfilename
type
Returns Promise<String> file's name
RecordSerialization
serialize
Serialize recordParameters
record
Record the record without data property in the files's objects
Returns String
deserialize
Deserialize recordParameters
record
String
Returns Record the record without data property in the files's objects
serializeURL
Serialize record to be url compatibleParameters
record
Record the record without data property in the files's objects
Returns String
deserializeURL
Deserialize record from url serializationParameters
record
String
Returns Record the record without data property in the files's objects
Record
save
Save recordParameters
recordId
String the id under which to save the recordrecord
serializeRecord
saveText
Returns Promise<(String \| Error)> record id
get
Get recordParameters
recordId
StringdeserializeRecord
getText
Returns Promise<(Record \| Error)> the record without data property in the files's objects
extract
Extract recordExtract only the record part in order to serialize it before persistence
Parameters
record
Record
Returns Record the record without files property in the blocks
Files
save
Save filesParameters
files
Array<EncryptedFile>saveFile
Returns Promise<(Array<AWS.Response> | Error)>
get
Get filesParameters
StorageInterface~getFile
Returns Promise<(Array<EncryptedFile> | Error)>
extract
Extract filesExtract only the files part in order to persist it
Parameters
record
Record
Returns Array<EncryptedFile>
RecordAndFiles
save
Save record and filesParameters
recordId
String the id under which to save the recordrecord
serializeRecord
saveText
saveFile
Returns Promise<(String \| Error)> record id
saveAndSerializeRecord
Save files and serialize recordParameters
(RecordSerialization~serialize | RecordSerialization~serializeURL)
saveFile
Returns Promise<(String \| Error)> serialized record
StorageInterface
ProgressCallback
Parametersfilename
Stringprogress
GetFile
Parametersfilename
Stringpath
service
Returns Promise<(ArrayBuffer \| Error)> the requested file
SaveFile
Parametersfile
ArrayBufferfilename
path
service
Returns Promise<(String \| Error)> file's name
GetObject
Parametersfilename
Stringpath
service
Returns Promise<(Object \| Error)> the requested object
SaveObject
Parametersobject
Objectfilename
path
service
Returns Promise<(String \| Error)> object's name
GetText
Parametersfilename
Stringpath
service
Returns Promise<(String \| Error)> the requested text
SaveText
Parameterstext
Stringfilename
path
service
Returns Promise<(String \| Error)> file's name
Development
- make sure node installed - install nvm if not
git clone git@bitbucket.org:witalize/cryptolize-persistence.git
cd cryptolize-persistence
npm install
- lint code -
npm run lint
- run tests -
npm test
- build from src -
npm run build
- update README -
npm run docs
- publish to npm (runs automatically tests, lint and build before) -
npm publish