Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
var raf = require('random-access-file')
var secretStorage = require('dat-secret-storage')
var multi = require('multi-random-access')
var messages = require('append-tree/messages')
var stat = require('hyperdrive/lib/messages').Stat
var path = require('path')
module.exports = function (dir, opts) {
if (!opts) opts = {}
var prefix = opts.prefix || '.dat/'
return {
metadata: function (name, metaOpts) {
if (typeof dir === 'function') return dir(prefix + 'metadata.' + name)
if (name === 'secret_key') return secretStorage(opts.secretDir)(path.join(dir, prefix + 'metadata.ogd'), {key: metaOpts.key, discoveryKey: metaOpts.discoveryKey})
return raf(path.join(dir, prefix + 'metadata.' + name))
},
content: function (name, contentOpts, archive) {
if (!archive) archive = contentOpts
if (name === 'data') return createStorage(archive, dir)
if (typeof dir === 'function') return dir(prefix + 'content.' + name)
return raf(path.join(dir, prefix + 'content.' + name))