d2-ui
Version:
63 lines (51 loc) • 1.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = arrayTo;
var _isArray = require('./isArray');
var _isArray2 = _interopRequireDefault(_isArray);
var _isObject = require('./isObject');
var _isObject2 = _interopRequireDefault(_isObject);
var _isString = require('./isString');
var _isString2 = _interopRequireDefault(_isString);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* Create an array from the passed `param`. (When the value is an object only takes the iterable properties from the object (not its prototypes))
*
* @param {Object|String|Array} param The value to transform to an array
* @returns {Array} Returns the `param` transformed into an array, or an empty array of the value can not be transformed.
*
* @example
* arrayTo('myData') // Returns: ['myData']
*
* @example
* const sourceObject = {
* name: 'ANC First Visit',
* shortName: 'ANC1',
* level: 1,
* };
* arrayTo(sourceObject); // Returns: ['ANC First Visit', 'ANC1', 1]
*
* @example
* arrayTo(null); // Returns: []
*/
function arrayTo(param) {
if ((0, _isArray2.default)(param)) {
return param;
}
if ((0, _isObject2.default)(param)) {
var a = [];
for (var key in param) {
if (param.hasOwnProperty(key)) {
a.push(param[key]);
}
}
return a;
}
if ((0, _isString2.default)(param)) {
return param.split();
}
return [];
}
//# sourceMappingURL=arrayTo.js.map