🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

random-access-idb-mutable-file

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

random-access-idb-mutable-file

random-access-storage provider via non-standard IDBMutableFile API

0.3.0
latest
Source
npm
Version published
Weekly downloads
22K
-50.61%
Maintainers
1
Weekly downloads
 
Created
Source

random-access-idb-mutable-file

travis package downloads styled with prettier

random-access storage layer over IDBMutableFile, which is non-standard IndexedDB extension in Gecko to provide virtual file system API with-in the IndexedDB.

This library will only work in Firefox (unless other browsers implement IDBMutableFile API) and it's mostly targeted at WebExtensions. It mostly amis to be a drop-in replacement for random-access-file. It is also an alternative to random-access-idb that is able to avoid loading all of the file content for random read / writes at the expanse of limited runtime suport.

Usage

import RandomAccess from "random-access-idb-mutable-file"

const main = async (filename, options) => {
  const randomAccessFile = await RandomAccess.mount()

  const file = randomAccessFile(filename, options)
  file.write(10, Buffer.from("hello"), error => {
    // write a buffer to offset 10
    file.read(10, 5, (error, buffer) => {
      console.log(buffer) // read 5 bytes from offset 10
      file.close(() => {
        console.log("file is closed")
      })
    })
  })
}

Install

npm install random-access-idb-mutable-file

Keywords

random-access-idb-mutable-file

FAQs

Package last updated on 07 Jun 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts