StackGenVis: Alignment of Data, Algorithms, and Models for Stacking Ensemble Learning Using Performance Metrics https://doi.org/10.1109/TVCG.2020.3030352
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
StackGenVis/frontend/node_modules/data-store/utils.js

72 lines
1.5 KiB

4 years ago
'use strict';
var utils = module.exports = require('lazy-cache')(require);
var fn = require;
require = utils; // eslint-disable-line
/**
* Utils
*/
require('clone-deep', 'clone');
require('extend-shallow', 'extend');
require('define-property', 'define');
require('graceful-fs', 'fs');
require('has-own-deep', 'hasOwn');
require('mkdirp', 'mkdirp');
require('project-name', 'project');
require('resolve-dir', 'resolve');
require('rimraf', 'del');
require('union-value', 'union');
require = fn; // eslint-disable-line
utils.noop = function() {
return;
};
utils.last = function(arr) {
return arr[arr.length - 1];
};
utils.arrayify = function(val) {
return val ? (Array.isArray(val) ? val : [val]) : [];
};
/**
* Throw an error if sub-store `name` is already a key on `store`.
*
* @param {Object} `store`
* @param {String} `name`
*/
utils.validateName = function(store, name) {
if (~store.keys.indexOf(name) && !utils.isStore(store, name)) {
throw utils.formatConflictError(name);
}
};
/**
* Return true if `name` is a store object.
*/
utils.isStore = function(store, name) {
return !!store[name]
&& (typeof store[name] === 'object')
&& store[name].isStore === true;
};
/**
* Format the error used when sub-store `name` is
* invalid.
*
* @param {String} `name`
*/
utils.formatConflictError = function(name) {
var msg = 'Cannot create store: '
+ '"' + name + '", since '
+ '"' + name + '" is a reserved property key. '
+ 'Please choose a different store name.';
return new Error(msg);
};