feat: Add Be and tbd skill, also added Roadmap file

This commit is contained in:
2026-05-10 16:32:12 -04:00
parent 3500ade13f
commit 0bb8885802
29587 changed files with 10611695 additions and 0 deletions

166
Skills/@be/node_modules/jibo-kb/lib/docs/Asset.js generated vendored Normal file
View File

@@ -0,0 +1,166 @@
/** Asset storage object. Assets are binary files attached to a node.
* Use `node.createAsset()` to create an asset object. Asset objects have
* minimal meta information about the asset file: just subtype and
* file extension. All other metadata should be stored in the node it
* is attached to.
*
* @class Asset
* @memberof jibo.kb
* @param {string} [filenameOrUrl] Filename to asset on disk, or url
* to asset via KB service.
* @param {string} [subtype] Subtype name of asset. Defaults to `asset`.
* @param {string} [ext] Optional filename extension.
*/
/** Create an Error with a good message from an AxiosError object
*
* @method jibo.kb.KnowledgeBase#_processError
* @param {AxiosError} err Axios error object.
* @returns {Error} Error object.
* @private
*/
/** The filename for this asset, without any directory
* information. Format of the filename is:
*
* `{$_id}.{$subtype}.{$ext}`.
*
* If the asset doesn't have an extension, `{$ext}` (and its dot
* seperator) will be absent.
*
* @method jibo.kb.Asset#filename
* @returns {string} The filename.
*/
/** Full path to the asset file on disk or a URL to fetch it
* via the KB service.
*
* @method jibo.kb.Asset#fullFilenameOrURL
* @returns {string} Full path filename or URL.
*/
/** Print useful console logs from asset objects.
*
* @method jibo.kb.Asset#toString
* @returns {string} Full path filename or URL.
*/
/** Write out the data for this asset file. Data can be provided
* as a readable stream, buffer, or blob.
*
* @method jibo.kb.Asset#save
* @param {stream.Readable|Buffer|Blob} data Data to be saved in asset file.
* @param {Function} [callback] Called when done. If callback is
* omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Set up an asset object by parsing an asset filename or
* URL. Sets the `_id`, `subtype`, and `ext`. Set rootDir if full
* path filename or URL.
*
* @method jibo.kb.Asset#setSelfFromFilenameOrURL
* @param {string} filenameOrUrl Filename, full path filename, or URL.
*/
/** Load the binary file pointed to by this asset object.
* Returns a buffer (via callback) with the contents (data) of the file.
*
* @method jibo.kb.Asset#load
* @param {Function} [callback] Called with (err, data) when
* done. If callback is omitted a promise that resolves to `data`
* is returned instead.
* @returns {Promise} A promise that resolves with the value of
* `data` if the callback is omitted.
*/
/** Create a stream of the binary file this asset object points to.
* Return a stream (via callback) of the contents (data)
* of the file.
*
* @method jibo.kb.Asset#loadStream
* @returns {Promise<stream.Readable>} Stream of binary asset data.
*/
/** Load the binary file pointed to by this asset object.
* Returns a blob (via callback) with the contents (data) of the file.
*
* @method jibo.kb.Asset#loadBlob
* @param {Function} [callback] Called with (err, data) when
* done. If callback is omitted a promise that resolves to `data`
* is returned instead.
* @returns {Promise} A promise that resolves with the value of
* `data` if the callback is omitted.
*/
/** Remove the asset file from disk.
*
* @method jibo.kb.Asset#remove
* @param {Function} [callback] Called when done. If callback is
* omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Assemble the URL for this asset.
*
* @method jibo.kb.Asset#_url
* @returns {string} URL
* @private
*/
/** Saves the asset data via the KB service web interface.
*
* @method jibo.kb.Asset#_saveViaWeb
* @private
*/
/** Set up an asset by parsing a filename
*
* @method jibo.kb.Asset#_setSelfFromFilename
* @param {string} filename Filename or full path filename
* @private
*/
/** Set up an asset from a URL
*
* @method jibo.kb.Asset#_setSelfFromURL
* @param {string} URL
* @private
*/
/** Remove the asset file from disk via KB service.
*
* @method jibo.kb.Asset#_removeViaWeb
* @param {Function} callback Called when done
* @private
*/
/** Save asset file from buffer.
*
* @method jibo.kb.Asset#_saveBuffer
* @param {Buffer} buffer Data to be saved in asset file
* @param {Function} callback Called when done
* @private
*/
/** Save asset file from stream.
*
* @method jibo.kb.Asset#_saveStream
* @param {stream.Readable} stream Data to be saved in asset file
* @param {Function} callback Called when done
* @private
*/
/** Loads the asset via the KB service.
*
* @method jibo.kb.Asset#_loadBufferViaWeb
* @param {Function} callback Called with (err, data) when done
* @private
*/
/** Loads a stream of the asset via the KB service.
*
* @method jibo.kb.Asset#_loadStreamViaWeb
* @returns {Promise<stream.Readable>} Promise to resolve a Stream of asset
* @private
*/

6
Skills/@be/node_modules/jibo-kb/lib/docs/Cache.js generated vendored Normal file
View File

@@ -0,0 +1,6 @@
/** Check if node is present in cache.
*
* @method jibo.kb.Cache#isPresent
* @param {string|jibo.kb.Node} idOrNode ID string or Node object to check cache for.
* @returns {boolean} `true` if node is in cache.
*/

View File

@@ -0,0 +1,161 @@
/**
* @description KnowledgeBase Class.
*
* @deprecated since version 3.0.0
* @class KnowledgeBase
* @memberof jibo.kb
*/
/** The Knowledge Base API.
*
* Can be accessed via `jibo.kb` (or `import {kb} from 'jibo'`).
*
* @namespace jibo.kb
*
* @example
* let model = jibo.kb.createModel('/skillname');
*
*/
/**
* Loop model information.
* @name jibo.kb#loop
* @type {jibo.kb.loop.LoopModel}
*/
/**
* Media list model information.
* @name jibo.kb#media
* @type {jibo.kb.media.MediaModel}
*/
/**
* Robot properties model information.
* @name jibo.kb#robot
* @type {jibo.kb.robot.RobotModel}
*/
/** Create an Error with a good message from an AxiosError object
*
* @method jibo.kb.KnowledgeBase#_processError
* @param {AxiosError} err Axios error object.
* @returns {Error} Error object.
* @private
*/
/** Create a KB slice. KB slices must be created before they are
* used the first time. This method creates the KB slice, or does
* nothing if it has already been created. The callback is
* supplied with a boolen indicating if the slice needed to be
* created. If callback is omitted a promise is returned instead.
*
* @method jibo.kb#createSlice
* @param {string} sliceName Name of KB slice to create.
* KB name must start with a `/`, followed by the skill name.
* @param {string} [httpUrl] Base URL of KB service. Defaults to
* URL generated from the service object given to `init()`.
* @param {Function} [callback] Called with `(err, created)`
* arguments. `created` is `false` if the KB slice already
* existed. If callback is omitted a promise that returns
* `created` is returned instead.
* @returns {Promise} A promise that resolves with the value of
* `created` if the callback is omitted.
*/
/** Check if a KB slice exists. The callback is supplied with a
* boolen indicating if the slice exists. If callback is omitted a
* promise is returned instead.
*
* @method jibo.kb#existsSlice
* @param {string} sliceName Name of KB slice to check.
* KB name must start with a `/`, followed by the skill name.
* @param {string} [httpUrl] Base URL of KB service. Defaults to
* URL generated from the service object given to `init()`.
* @param {Function} [callback] Called with `(err, exists)`
* arguments. `exists` is `true` if the KB slice exists. If
* callback is omitted a promise that returns `exists` is returned
* instead.
* @returns {Promise} A promise that resolves with the value of
* `exists` if the callback is omitted.
*/
/** Create a new Model object. Models are the primary interface
* to the knowledge base.
*
* @method jibo.kb#createModel
* @param {string|string[]} kbNames Array of knowledge base slice
* names to include in model, in order of precedence. A single
* KB name can be given as a string instead of an array of strings.
* KB names must start with a `/`, followed by the skill name.
* @param {string} [httpUrl] Base URL of KB.
* service. Defaults to URL generated from the service object
* given to `init()`.
* @param {string} [httpUrl] Base URL of KB service. Defaults to
* URL generated from the service object given to `init()`.
* @returns {jibo.kb.Model} New Model object.
*/
/** Register a Node subclass to be instantiated when a node of a
* given type is loaded or created.
*
* @method jibo.kb#registerNodeClass
* @param {string|string[]} nodeType Node type to use this
* subclass for.
* @param {Function} classConstruction The constructor function
* for the subclass.
* @param {string} [kbName] Name of KB to limit the use
* of this subclass to. Defaults to all KBs.
*/
/** Register a Model subclass to be instantiated for a given KB name
* list.
*
* @method jibo.kb#registerModelClass
* @param {string|string[]} kbNames KB name or name list use this
* subclass for.
* @param {Function} classConstructor The constructor function for
* the subclass.
*/
/** Use the node type to find a Node subclass in the Node Class
* registry. Default to the plain `Node` object if nothing
* matches.
*
* @method jibo.kb#findNodeClass
* @param {string} nodeType Type of node.
* @param {string} kbName Name of KB slice.
* @returns {Function} Node class constructor.
*/
/** Use the given KB slice names to find a Model subclass in the
* Model subclass registry. Defaults to the plain `Model` object
* if nothing matches.
*
* @method jibo.kb#findModelClass
* @param {string|string[]} kbNames Array of knowledge base slice
* names.
* @returns {Function} Model class constructor.
*/
/** Unload a given kb slice from the Skills Service Manager memory
* and remove it from disk. Also removes any sub-kbs inside this
* slice. For example, if you remove `/jibo`, that would also
* remove `/jibo/loop`, `/jibo/settings` and all other kb slices
* under `/jibo`. If callback is omitted a promise is returned
* instead.
*
* @method jibo.kb#removeSlice
* @param {string} sliceName Name of kb slice to be removed,
* including all of its sub-slices (if any).
* @param {Function} [callback] Called when done, with `err`
* parameter if there was an error. If callback is omitted a
* promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Convert a single item to an array for arguments that may be a
* single thing or an array of things.
*
* @method jibo.kb#_toArray
* @private
*/

View File

@@ -0,0 +1,14 @@
/** Running in the simulator. */
/** Running in remote mode. */
/** Running on the robot. */
/** Running in dev mode, no SSM */
/** Initalize this KnowledgeDatabase slice - Attach to or create
* the underlying file on disk (via the Database class).
*
* @method jibo.kb.KnowledgeDatabase#init
* @param {Function} callback Called with (err) when done.
*/

141
Skills/@be/node_modules/jibo-kb/lib/docs/LoopModel.js generated vendored Normal file
View File

@@ -0,0 +1,141 @@
/**
* Event emitted whenever the loop properties have been updated
* (including on mobile devices)
* @name jibo.kb.loop.LoopModelEvents#loopUpdated
* @type {Event}
*/
/**
* Jibo KB Loop API
* @namespace jibo.kb.loop
*/
/** LoopModel Class. The Loop Model subclass
*
* @class LoopModel
* @extends jibo.kb.Model
* @memberof jibo.kb.loop
* @example
* let model = jibo.kb.loop.createModel('/jibo/loop');
*/
/** Create an Error with a good message from an AxiosError object
*
* @method jibo.kb.LoopModel#_processError
* @param {AxiosError} err Axios error object.
* @returns {Error} Error object.
* @private
*/
/** Load all the current loop members (those that are not status
* 'declined' or 'removed'). If callback is omitted a promise is
* returned instead.
*
* @method jibo.kb.loop.LoopModel#loadLoop
* @param {Function} [callback] Called with (err, loop). If callback
* is omitted a promise that resolves to `loop` is returned
* instead.
* @returns {Promise} A promise that resolves with the value of
* `loop` if the callback is omitted.
*/
/** Load status `invited` loop members. These are loop the
* members who have not yet accepted their invitation to join the
* loop. If callback is omitted a promise is returned instead.
*
* @method jibo.kb.loop.LoopModel#loadLoopInvited
* @param {Function} [callback] Called with (err, loop). If callback
* is omitted a promise that resolves to `loop` is returned
* instead.
* @returns {Promise} A promise that resolves with the value of
* `loop` if the callback is omitted.
* @deprecated since version 5.5.0
*/
/** Load `isActive` loop members.
*
* @method jibo.kb.loop.LoopModel#loadLoopActive
* @param {Function} [callback] Called with (err, loop). If callback
* is omitted a promise that resolves to `loop` is returned
* instead.
* @returns {Promise} A promise that resolves with the value of
* `loop` if the callback is omitted.
* @deprecated since version 5.5.0
* @see jibo.kb.loop.LoopModel#loadLoop
*/
/** Load all loop members, including where `status` is `deleted`.
*
* @method jibo.kb.loop.LoopModel#loadLoopAll
* @param {Function} [callback] Called with (err, loop). If callback
* is omitted a promise that resolves to `loop` is returned
* instead.
* @returns {Promise} A promise that resolves with the value of
* `loop` if the callback is omitted.
*/
/** Retrieve loop member's written name.
*
* @method jibo.kb.loop.LoopModel#getWrittenNameById
* @param {String} id The loop member's ID.
* @param {Function} [callback] Called with (err, name). If
* callback is omitted a promise that resolves to `name` is
* returned instead.
* @returns {Promise} A promise that resolves with the value of
* `name` if the callback is omitted.
*/
/** Retrieve loop member's spoken name.
*
* @method jibo.kb.loop.LoopModel#getSpokenNameById
* @param {String} id The loop member's ID.
* @param {Function} [callback] Called with (err, name). If callback
* is omitted a promise that resolves to `name` is returned
* instead.
* @returns {Promise} A promise that resolves with the value of
* `name` if the callback is omitted.
*/
/** Fetch status `accepted` loop members from the
* cache. These are the current loop members.
*
* @method jibo.kb.loop.LoopModel#fetchLoop
* @returns {jibo.kb.loop.UserNode[]} Array of loop members.
*/
/** Fetch status `invited` loop members from the
* cache. These are the loop members who have not yet accepted
* their invitation to join the loop.
*
* @method jibo.kb.loop.LoopModel#fetchLoopInvited
* @returns {jibo.kb.loop.UserNode[]} Array of invited loop members.
* @deprecated since version 5.5.0
* @see jibo.kb.loop.LoopModel#fetchLoop
*/
/** Fetch `isActive` loop members from the cache.
*
* @method jibo.kb.loop.LoopModel#fetchLoopActive
* @returns {jibo.kb.loop.UserNode[]} Array of active loop members.
* @deprecated since version 5.5.0
* @see jibo.kb.loop.LoopModel#fetchLoop
*/
/** Fetch all loop members from the cache, including where status
* is `deleted`.
*
* @method jibo.kb.loop.LoopModel#fetchLoopAll
* @returns {jibo.kb.loop.UserNode[]} Array of all loop members.
*/
/** Filter out declined and removed loop members.
* @private
*/
/** Filter out loop members that have not accepted yet.
*
* @method jibo.kb.loop.LoopModel#_onlyAccepted
* @param {jibo.kb.loop.UserNode[]} loop Loop nodes to filter.
* @returns {jibo.kb.loop.UserNode[]} Loop nodes where `status` is 'accepted'.
* @private
*/

206
Skills/@be/node_modules/jibo-kb/lib/docs/Model.js generated vendored Normal file
View File

@@ -0,0 +1,206 @@
/** Combine multiple KB slices into one. Model instances are the main
* interaction point with the Knowledge Base. Methods for following
* edges between nodes are here.
*
* Extend this class to add model specific methods to a Model.
*
* @class Model
* @memberof jibo.kb
* @param {string|string[]} kbNames KB slice names to use in this
* model.
* @param {string} httpUrl Base URL of KB service to use.
*/
/** Create a new Model object.
*
* This behaves the same as `kb.createModel()`, except the KB
* names are not required to start with /. KB names that don't
* start with / will be relative to this Model. Specifically, they
* will relative to the KB name of the first KB in this model.
*
* For example, if this Model has the KB names `['/snap',
* '/snap/albums']` and this method is called as
* `model.createModel(['history', '/jibo.loop'])`, then the new
* model returned by this method will have the KB names
* `['/snap/history', '/jibo.loop']`.
*
* @method jibo.kb.Model#createModel
* @param {string|string[]} kbNames KB slice names to use in new
* model.
* @param {string} [httpUrl] Base URL of KB service to use
* (defaults to same URL as `this`).
* @returns {jibo.kb.Model} New Model object
*/
/** Create a new empty node on this Model. Will be attached to the
* first KB in this Model.
*
* @method jibo.kb.Model#createNode
* @param {string} nodeType Node type.
* @param {Object} [data] Initial data.
* @returns {jibo.kb.Node} New node object
*/
/** Load a node or array of nodes, by their IDs. All KBs in this
* Model slices are searched in order until found. If node is not
* found result will be `null`. If an array is supplied, then
* multiple IDs are searched for, and an array of results is
* returned. If callback is omitted, a promise is returned
* instead.
*
* @method jibo.kb.Model#load
* @param {string|string[]} ids ID or array of IDs to load.
* @param {Function} [callback] `(err, nodes) => {}`. If callback is
* omitted, a promise that resolves to `nodes` is returned instead.
* @returns {Promise} A promise that resolves with the value of
* `node` if the callback is omitted.
*/
/** Load the root node of the first KB. If a KB slice name is
* given, then load the root node for that KB instead. If callback
* is omitted a promise is returned instead.
*
* @method jibo.kb.Model#loadRoot
* @param {string} [kbName] Name of KB slice to load root node
* from. Default is first slice.
* @param {Function} [callback] (err, rootNode) => {}. If callback
* is omitted a promise that resolves to `rootNode` is returned
* instead.
* @returns {Promise} A promise that resolves with the value of
* `rootNode` if the callback is omitted.
*/
/** Preload all nodes connected by the layer names into the
* cache. Does not return the nodes. If callback is omitted a
* promise is returned instead.
*
* @method jibo.kb.Model#loadLayers
* @param {jibo.kb.Node} node Initial node to start from.
* @param {string|string[]} layers Edge names to follow.
* @param {Function} [callback] Callback for the method. If callback
* is omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Save all nodes connected by the layer names. Only used after
* activating the cache and preloading the given layers with
* loadLayers(). If callback is omitted a promise is returned
* instead.
*
* @method jibo.kb.Model#saveLayers
* @param {jibo.kb.Node} node Initial node to start from.
* @param {string|string[]} layers Edge names to follow.
* @param {Function} [callback] Callback for the method. If callback
* is omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Load all nodes connected by the layer names. Execute the given
* action once on each node. If callback is omitted a promise is
* returned instead.
*
* @method jibo.kb.Model#visitLayers
* @param {jibo.kb.Node} node Initial node to start from.
* @param {string|string[]} layers Edge names to follow.
* @param {Function} action `(eachNode, callback) => {}`
* @param {Function} [callback] Callback for the method. If callback
* is omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Create a clone of this Model object and its slices, but with
* the cache enabled. Cache based operations are intended to be
* short term in nature. Release the clone for garbage collection
* when finished.
*
* @method jibo.kb.Model#begin
* @returns {jibo.kb.Model} A new Model object.
*/
/** Synchronously fetch a node, or array of nodes, from the
* cache. Use on models created with `begin()` and preloaded with
* nodes. Nodes searched for but not found during preloading will
* be null. Nodes not preloaded will be undefined.
*
* @method jibo.kb.Model#fetch
* @param {string|string[]} ids ID or array of IDs node to fetch.
* @param {boolean} [quietly] Suppress warning if node not found
* in cache.
* @throws Exception if cache is not enabled.
* @returns {jibo.kb.Node} Node or `null` if not found. If
* an array of IDs is supplied, then an array of nodes is
* returned.
*/
/** Synchronously fetch the root node of the first KB from cache.
* If a KB slice name is given, then load the root node for that
* KB instead.
*
* @method jibo.kb.Model#fetchRoot
* @param {string} [kbName] Name of KB slice to load root node
* from. Default is first slice.
* @param {boolean} [quietly] Suppress warning if root node not
* found in cache.
* @throws Exception if cache is not enabled.
* @returns {jibo.kb.Node} Root node or `null` if not in cache.
*/
/** Turn on the cache. Don't call this directly, use begin() instead.
* @method jibo.kb.Model#enableCache
* @private
*/
/** Actual load command. Wrapped by interceptLoad when cache is
* enabled.
*
* @method jibo.kb.Model#_load
* @param {string} id Id of node to load
* @param {Function} callback (err, node) => {}
* @private
*/
/** Load a single node by its id. All KBs in this
* Model will be searched in order until found. Null returned (via
* callback) if not found.
*
* @method jibo.kb.Model#_loadOne
* @param {string} id ID to load.
* @param {Function} [callback] (err, node) => {}.
* @private
*/
/** Load an array of nodes by id. All KBs in this Model will be
* searched, in order, for each id in the array. An array is always
* returned, with the same length as the ids parameter. Nodes are
* returned in the array in the same order requested. Any not-found
* IDs will return a null in place of its node at the proper array
* position.
*
* @method jibo.kb.Model#_loadArray
* @param {string[]} ids Array of IDs of nodes to load.
* @param {Function} [callback] (err, nodes) => {}.
* @private
*/
/** Look through the pool and return the kb slice
* that has the given name
*
* @method jibo.kb.Model#_getKnowledgeDatabase
* @param {string} kbName Name of kb slice to find in pool
* @returns {jibo.kb.KnowledgeDatabase} Matching kb slice object, or
* undefined if not found
* @private
*/
/** check if cache is enabled and throw exception if not
*
* @method jibo.kb.Model#_assertCache
* @private
*/
/** Convert a single item to an array for arguments that may be a
* single thing or an array of things
*
* @method jibo.kb.Model#<_toArray
* @private
*/

151
Skills/@be/node_modules/jibo-kb/lib/docs/Node.js generated vendored Normal file
View File

@@ -0,0 +1,151 @@
/** Knowledge Base document store object. This is where data lives.
* Nodes have edges which point to other nodes in any KB slice
* (possibly even slices not in your current model). Edges have names
* to group them into layers.
*
* All user specified data goes into `node.data`.
*
* `model.createNode()` is typically used to create new nodes so the
* nodes will be bound to a KB slice for saving.
*
* @class Node
* @memberof jibo.kb
* @param {string} [nodeType] Type of node. Defaults to 'node'.
* @param {Object} [data] Initial data.
* @param {Object} [cloneFrom] Object or node to clone from.
*/
/** Save the node into KB slice it is bound to.
* Also sets the `node.updated` timestamp.
*
* @method jibo.kb.Node#save
* @param {Function} [callback] Called when node is finished
* saving. If callback is omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Remove the node from KB slice it is bound to.
*
* @method jibo.kb.Node#remove
* @param {Function} [callback] Called when node is finished being
* removed. If callback is omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Add edges to this node. Edges will have the name given by
* layer, or will be taken from the node types (but nodes must be
* given in that case, no id strings).
*
* @method jibo.kb.Node#addEdges
* @param {string|jibo.kb.Node|string[]|jibo.kb.Node[]} idsOrNodes Ids of edges to
* add to this node. Ids will be gotten from any nodes provided.
* @param {string} [layer] Added edges will have this name. If
* Nodes are given and layer is not specified, the edge name will
* be taken from the node type.
*/
/** Remove edges of the given layer name from this node. Layer can
* be omitted if nodes are given and the node types match the
* layer names of the edges to be removed.
*
* @method jibo.kb.Node#removeEdges
* @param {string|jibo.kb.Node|string[]|jibo.kb.Node[]} idsOrNodes Ids of edges to
* remove from this node. Ids will be gotten from any nodes
* provided.
* @param {string} [layer] Remove edges with this name. If Nodes
* are given and layer is not specified, the edge name will be
* taken from the node type for each node id.
*/
/** Remove all edges of a given name.
*
* @method jibo.kb.Node#clearEdges
* @param {string|string[]} layers The layer names (edge names) to remove.
*/
/** Get edges of given layer names. Duplicates are removed (this
* may change). Order of edges are preserved for a single layer
* name (except for duplicate removal). Order gets even messier for
* multiple layers (because of duplicate removal).
*
* @method jibo.kb.Node#getEdges
* @param {string|string[]} layers Nmes of layers to return edges for.
* @returns {string[]} Array of IDs.
*/
/** All layers (edge names) on this node
* @method jibo.kb.Node#getLayers
* @returns {string[]} Array of layer names.
*/
/** Create a new asset object and add it to the list of assets on
* this node.
*
* @method jibo.kb.Node#createAsset
* @param {string} [subtype] Subtype name for this asset.
* @param {string} [ext] Optional filename extension.
* @returns {jibo.kb.Asset} New asset object.
*/
/** Add existing asset objects to the list of assets on this
* node. The asset objects root directory needs to match this node
* object.
*
* @method jibo.kb.Node#addAssets
* @param {jibo.kb.Asset|jibo.kb.Asset[]} assets Asset objects to add to node.
* @param {string} [subtype] Subtype string to force assets to be
* added as. Subtype comes from each asset object unless this is
* specified.
*/
/** Get all asset objects of given subtype from the assets listed
* on this node.
*
* @method jibo.kb.Node#getAssets
* @param {string} [subtype] Asset subtype to get. Defaults to `asset`.
* @returns {jibo.kb.Asset[]} Array of asset objects.
*/
/** Get all asset objects from the assets listed on this node,
* regardless of subtype.
*
* @method jibo.kb.Node#getAllAssets
* @returns {jibo.kb.Asset[]} Array of asset objects.
*/
/** List of all asset subtypes on this node.
*
* @method jibo.kb.Node#getAssetSubtypes
* @returns {string[]} Array of subtype name strings.
*/
/** Delete an asset from disk and remove it from this node.
*
* @method jibo.kb.Node#removeAsset
* @param {jibo.kb.Asset} asset Asset object to remove.
* @param {Function} [callback] Called when done. If callback is
* omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Delete from disk and remove all assets from the node.
*
* @method jibo.kb.Node#removeAllAssets
* @param {Function} [callback] Called when done. If callback is
* omitted a promise is returned instead.
* @returns {Promise} A promise if the callback is omitted.
*/
/** Set the 'updated' timestamp on this node.
*
* @method jibo.kb.Node#setUpdated
* @param {number} [timestamp] Milliseconds since 1 January 1970
* 00:00:00 UTC. Defaults to now.
*/
/** Convert a single item to an array for arguments that may be a
* single thing or an array of things
*
* @method jibo.kb.Node#_toArray
* @private
*/

13
Skills/@be/node_modules/jibo-kb/lib/docs/RobotModel.js generated vendored Normal file
View File

@@ -0,0 +1,13 @@
/**
* Jibo KB Robot Properties API
* @namespace jibo.kb.robot
*/
/** RobotModel Class. The Robot Model subclass
*
* @class RobotModel
* @extends jibo.kb.Model
* @memberof jibo.kb.robot
* @example
* let model = jibo.kb.robot.createModel('/jibo/robot');
*/

View File

@@ -0,0 +1,6 @@
/**
* Event emitted whenever the robot properties have been updated
* (including on mobile devices)
* @name jibo.kb.robot.RobotModelEvents#robotUpdated
* @type {Event}
*/

View File

@@ -0,0 +1,11 @@
/**
* @class RobotRootNode
* @extends jibo.kb.Node
* @memberof jibo.kb.robot
*/
/**
* Get location override info if it has been set by the app.
* @name jibo.kb.robot.RobotRootNode#locationOverride
* @type {String}
*/

69
Skills/@be/node_modules/jibo-kb/lib/docs/UserNode.js generated vendored Normal file
View File

@@ -0,0 +1,69 @@
/**
* Specific type of node for members of the loop. All nodes returned by LoopModel should be UserNodes.
*
* @class UserNode
* @extends jibo.kb.Node
* @memberof jibo.kb.loop
*/
/**
* UUID of the user.
* @name jibo.kb.loop.UserNode#id
* @type {String}
*/
/**
* First name of the user.
* @name jibo.kb.loop.UserNode#firstName
* @type {String}
*/
/**
* Last name of the user.
* @name jibo.kb.loop.UserNode#lastName
* @type {String}
*/
/**
* Nickname of the user.
* @name jibo.kb.loop.UserNode#nickName
* @type {String}
*/
/**
* Gender of the user.
* @name jibo.kb.loop.UserNode#gender
* @type {String}
*/
/**
* If this loop member is actually Jibo.
* @name jibo.kb.loop.UserNode#isJibo
* @type {Boolean}
*/
/**
* The loop member's preferred written name. This will be the nickname or first name
* of the loop member.
* @method jibo.kb.loop.UserNode#getWrittenName
* @return {String} The loop member's preferred written name.
*/
/**
* The loop member's preferred spoken name. This will be the `phoneticName`, nickname, or first name
* of the loop member.
* @method jibo.kb.loop.UserNode#toString
* @return {String} The loop member's preferred spoken name.
*/
/**
* Calculate the initials of the loop member.
* @method jibo.kb.loop.UserNode#getInitials
* @return {String} The loop member's initials.
*/
/**
* Outputs data appropriate for unsecure logging.
* @method jibo.kb.loop.UserNode#toLog
* @return {String} A safe representation of the UserNode with no identifying info
*/

View File

@@ -0,0 +1,7 @@
/** Create an Error with a good message from an AxiosError object
*
* @method jibo.kb.WebClient#_processError
* @param {AxiosError} err Axios error object.
* @returns {Error} Error object.
* @private
*/

24
Skills/@be/node_modules/jibo-kb/lib/docs/decorators.js generated vendored Normal file
View File

@@ -0,0 +1,24 @@
/** @promisify method decorator
* Assumes the last argument is suppose to be a callback. If the last
* argument isn't a function, then assume the callback was left off on
* purpose to receive a promise instead. Call the method, wrap it in a
* promise, and return the promise.
* Note: only works with callbacks that have one argument or less
* (other than the err object)
* @private
*/
/** @promisify_4 method decorator
* Like @promisify, except specifically checks if the 4th argument is
* a function.
* @private
*/
/** @deprecate method decorator
* Outputs a warning message that a method has been deprecated. Takes
* one argument, a message string describing the deprecation.
*
* The decorator takes the argument just like a function:
* @deprecate('foo is bad, use method bar instead')
* @private
*/