update secret-stack to 8.0

This commit is contained in:
Andre Staltz 2023-12-29 12:46:01 +02:00
parent e8e88a8bf3
commit b05e354aa8
No known key found for this signature in database
GPG Key ID: 9EDE23EA7E8A4890
2 changed files with 33 additions and 20 deletions

View File

@ -40,8 +40,8 @@
"prettier": "^2.6.2",
"pretty-quick": "^3.1.3",
"rimraf": "^4.4.0",
"secret-stack": "~7.1.0",
"secret-handshake-ext": "^0.0.8",
"secret-stack": "~8.0.0",
"secret-handshake-ext": "0.0.10",
"ssb-box": "^1.0.1",
"typescript": "^5.1.3"
},

View File

@ -1,19 +1,29 @@
const os = require('node:os')
const path = require('node:path')
const OS = require('node:os')
const Path = require('node:path')
const rimraf = require('rimraf')
const caps = require('ppppp-caps')
const Keypair = require('ppppp-keypair')
function createPeer(opts) {
if (opts.name) {
opts.db ??= { path: path.join(os.tmpdir(), 'tanglesync-' + opts.name) }
opts.keypair ??= Keypair.generate('ed25519', opts.name)
opts.name = undefined
function createPeer(config) {
if (config.name) {
const name = config.name
const tmp = OS.tmpdir()
config.global ??= {}
config.global.path ??= Path.join(tmp, `ppppp-goals-${name}-${Date.now()}`)
config.global.keypair ??= Keypair.generate('ed25519', name)
delete config.name
}
if (!config.global) {
throw new Error('need config.global in createPeer()')
}
if (!config.global.path) {
throw new Error('need config.global.path in createPeer()')
}
if (!config.global.keypair) {
throw new Error('need config.global.keypair in createPeer()')
}
if (!opts.db.path) throw new Error('need opts.db.path in createPeer()')
if (!opts.keypair) throw new Error('need opts.keypair in createPeer()')
rimraf.sync(opts.db.path)
rimraf.sync(config.global.path)
return require('secret-stack/bare')()
.use(require('secret-stack/plugins/net'))
.use(require('secret-handshake-ext/secret-stack'))
@ -22,16 +32,19 @@ function createPeer(opts) {
.use(require('ssb-box'))
.use(require('../lib'))
.call(null, {
caps,
connections: {
incoming: {
net: [{ scope: 'device', transform: 'shse', port: null }],
},
outgoing: {
net: [{ transform: 'shse' }],
shse: { caps },
...config,
global: {
connections: {
incoming: {
net: [{ scope: 'device', transform: 'shse', port: null }],
},
outgoing: {
net: [{ transform: 'shse' }],
},
},
...config.global,
},
...opts,
})
}