@seneca/evervault-provider
v0.3.1
Published
Seneca entity provider for the Evervault API.
Downloads
3
Readme
Seneca Evervault-Provider is a plugin for Seneca
Provides access to the Evervault API using the Seneca provider convention. Evervault API entities are represented as Seneca entities so that they can be accessed using the Seneca entity API and messages.
See seneca-entity and the Seneca Data Entities Tutorial for more details on the Seneca entity API.
NOTE: underlying third party SDK needs to be replaced as out of date and has a security issue.
| | This open source module is sponsored and supported by Voxgig. | |---|---|
Quick Example
// Setup - get the key value (<SECRET>) separately from a vault or
// environment variable.
Seneca()
// Get API keys using the seneca-env plugin
.use('env', {
var: {
$EVERVAULT_APIKEY: String,
$EVERVAULT_USERTOKEN: String,
}
})
.use('provider', {
provider: {
evervault: {
keys: {
apikey: { value: '$EVERVAULT_APIKEY' },
usertoken: { value: '$EVERVAULT_USERTOKEN' },
}
}
}
})
.use('evervault-provider')
let board = await seneca.entity('provider/evervault/board')
.load$('<evervault-board-id>')
Console.log('BOARD', board)
board.desc = 'New description'
board = await board.save$()
Console.log('UPDATED BOARD', board)
Install
$ npm install @seneca/evervault-provider @seneca/env
Options
debug
: boolean false
Set plugin options when loading with:
seneca.use('EvervaultProvider', { name: value, ... })
Note: foo.bar in the list above means { foo: { bar: ... } }
Action Patterns
- role:entity,base:evervault,cmd:load,name:repo,zone:provider
- role:entity,base:evervault,cmd:save,name:repo,zone:provider
- sys:provider,get:info,provider:evervault
Action Descriptions
« role:entity,base:evervault,cmd:load,name:repo,zone:provider
»
Load Evervault repository data into an entity.
« role:entity,base:evervault,cmd:save,name:repo,zone:provider
»
Update Evervault repository data from an entity.
« sys:provider,get:info,provider:evervault
»
Get information about the provider.