pear-api v1.6.14
pear-api
Pear API Base & Integration Module
Status: WIP
pear-api
Supplies the API base for the Pear API (https://docs.pears.com/pear-runtime/api).
Typically for extending from for user-interface-runtime purposes:
const Worker = require('pear-api/worker')
class API extends require('pear-api') {
constructor (ipc, state, { worker, teardown } = {}) {
super(ipc, state, { worker, teardown })
this[this.constructor.UI] = new UIAPI()
}
}
const worker = new Worker()
global.Pear = new API(ipc, state, { worker })This creates the usual global.Pear API with the interface-runtime-specific UIAPI stored on a symbolic reference so it can later be exported from interface module entrypoint. The global.Pear.worker API can also be customized by extending pear-api/worker and passing an instance of the extended worker to API.
Integration Libraries
The pear-api module also exposes libraries that provide platform core functionality.
pear-api/constants
Platform constants.
pear-api/errors
Platform error types. Includes known method for checking if error is recognized.
pear-api/crasher
Sets up crash handlers and outputs crash logs to a known location on-disk.
pear-api/logger
Logger class with only error, info, trace log methods, supports log labels and default options honour pear --log* and/or pear run --log* flags.
Options
level<String>- Level to log at. 0,1,2,3 (OFF,ERR,INF,TRC). Overridespear --log-level. Default: 2 ifpear --logelse 0.labels<String>- Labels to log out. Mixes with user definedpear --log-labels.fields<String>- Fields to show/hide.<field>shows,h:<field>hides. Overrides individualpear --log-fieldswith defaulth:time,h:data,level,label,delta.stacks<Boolean>- Print stack traces with all logs. Defaultpear --log-stackselsefalse.pretty<Boolean>- Enables label field if more than 2 labels, disables level field default. Defaultfalse.
Properties
OFF- true if logging is offERR- true if logging is at error levelINF- true if logging is at info levelTRC- true if logging is at trace levelLEVEL- level: 0, 1,2,3
Methods
error(label, ...args)- Logargsat error level withlabelinfo(label, ...args)- Logargsat info level withlabeltrace(label, ...args)- Logargsat trace level withlabel
Statics
switches<Object>- User specified according to--log*flagslevel:pear --log-levellabels:pear --log-labelsfields:pear --log-fieldsstacks:pear --log-stackslog:pear --log
pear-api/state
Base State class for cross-process state management.
pear-api/gunk
Platform gunk - glue-state for native and protocol integration.
pear-api/tryboot
Attempt to boot the sidecar. Useful when establishing a pear-ipc connection from an interface-runtime to Pear Sidecar, pass it as the connect option.
pear-api/worker
Internal class, pass this (or a subclass of it) to the pear-api API constructor for Pear.run to use.
pear-api/parse-link
Parse pear:// links per pear-link.
pear-api/teardown
The Pear.teardown function.
pear-api/transform
A minimal transformer for __LOCALVAR__-style templates.
pear-api/terminal
Terminal interface.
pear-api/cmd
Parse out platform flags while ignoring the rest of the command. Useful for parsing platform flags regardless of whether the flags after <cmd> are valid.
pear-api/cmd/pear
Paparam definition array for the pear command. Useful for parsing platform flags passed to an interface-runtime.
pear-api/cmd/run
Paparam definition array for the pear run command. Useful for parsing run flags passed to an interface-runtime.
LICENSE
Apache 2.0
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago