forked from olcxjas-softworks/LarpixClient
Add capacitorjs runtime
This commit is contained in:
parent
d0ece489ee
commit
f90c0e6c40
8362 changed files with 1502407 additions and 1 deletions
472
node_modules/chevrotain/lib/src/utils/utils.js
generated
vendored
Normal file
472
node_modules/chevrotain/lib/src/utils/utils.js
generated
vendored
Normal file
|
|
@ -0,0 +1,472 @@
|
|||
"use strict";
|
||||
/*
|
||||
Utils using lodash style API. (not necessarily 100% compliant) for functional and other utils.
|
||||
These utils should replace usage of lodash in the production code base. not because they are any better...
|
||||
but for the purpose of being a dependency free library.
|
||||
|
||||
The hotspots in the code are already written in imperative style for performance reasons.
|
||||
so writing several dozen utils which may be slower than the original lodash, does not matter as much
|
||||
considering they will not be invoked in hotspots...
|
||||
*/
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.peek = exports.toFastProperties = exports.applyMixins = exports.isES2015MapSupported = exports.PRINT_WARNING = exports.PRINT_ERROR = exports.packArray = exports.IDENTITY = exports.NOOP = exports.merge = exports.groupBy = exports.defaults = exports.assignNoOverwrite = exports.assign = exports.zipObject = exports.sortBy = exports.indexOf = exports.some = exports.difference = exports.every = exports.isObject = exports.isRegExp = exports.isArray = exports.partial = exports.uniq = exports.compact = exports.reduce = exports.findAll = exports.find = exports.cloneObj = exports.cloneArr = exports.contains = exports.has = exports.pick = exports.reject = exports.filter = exports.dropRight = exports.drop = exports.isFunction = exports.isUndefined = exports.isString = exports.forEach = exports.last = exports.first = exports.flatten = exports.map = exports.mapValues = exports.values = exports.keys = exports.isEmpty = void 0;
|
||||
exports.timer = void 0;
|
||||
function isEmpty(arr) {
|
||||
return arr && arr.length === 0;
|
||||
}
|
||||
exports.isEmpty = isEmpty;
|
||||
function keys(obj) {
|
||||
if (obj === undefined || obj === null) {
|
||||
return [];
|
||||
}
|
||||
return Object.keys(obj);
|
||||
}
|
||||
exports.keys = keys;
|
||||
function values(obj) {
|
||||
var vals = [];
|
||||
var keys = Object.keys(obj);
|
||||
for (var i = 0; i < keys.length; i++) {
|
||||
vals.push(obj[keys[i]]);
|
||||
}
|
||||
return vals;
|
||||
}
|
||||
exports.values = values;
|
||||
function mapValues(obj, callback) {
|
||||
var result = [];
|
||||
var objKeys = keys(obj);
|
||||
for (var idx = 0; idx < objKeys.length; idx++) {
|
||||
var currKey = objKeys[idx];
|
||||
result.push(callback.call(null, obj[currKey], currKey));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.mapValues = mapValues;
|
||||
function map(arr, callback) {
|
||||
var result = [];
|
||||
for (var idx = 0; idx < arr.length; idx++) {
|
||||
result.push(callback.call(null, arr[idx], idx));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.map = map;
|
||||
function flatten(arr) {
|
||||
var result = [];
|
||||
for (var idx = 0; idx < arr.length; idx++) {
|
||||
var currItem = arr[idx];
|
||||
if (Array.isArray(currItem)) {
|
||||
result = result.concat(flatten(currItem));
|
||||
}
|
||||
else {
|
||||
result.push(currItem);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.flatten = flatten;
|
||||
function first(arr) {
|
||||
return isEmpty(arr) ? undefined : arr[0];
|
||||
}
|
||||
exports.first = first;
|
||||
function last(arr) {
|
||||
var len = arr && arr.length;
|
||||
return len ? arr[len - 1] : undefined;
|
||||
}
|
||||
exports.last = last;
|
||||
function forEach(collection, iteratorCallback) {
|
||||
/* istanbul ignore else */
|
||||
if (Array.isArray(collection)) {
|
||||
for (var i = 0; i < collection.length; i++) {
|
||||
iteratorCallback.call(null, collection[i], i);
|
||||
}
|
||||
}
|
||||
else if (isObject(collection)) {
|
||||
var colKeys = keys(collection);
|
||||
for (var i = 0; i < colKeys.length; i++) {
|
||||
var key = colKeys[i];
|
||||
var value = collection[key];
|
||||
iteratorCallback.call(null, value, key);
|
||||
}
|
||||
}
|
||||
else {
|
||||
throw Error("non exhaustive match");
|
||||
}
|
||||
}
|
||||
exports.forEach = forEach;
|
||||
function isString(item) {
|
||||
return typeof item === "string";
|
||||
}
|
||||
exports.isString = isString;
|
||||
function isUndefined(item) {
|
||||
return item === undefined;
|
||||
}
|
||||
exports.isUndefined = isUndefined;
|
||||
function isFunction(item) {
|
||||
return item instanceof Function;
|
||||
}
|
||||
exports.isFunction = isFunction;
|
||||
function drop(arr, howMuch) {
|
||||
if (howMuch === void 0) { howMuch = 1; }
|
||||
return arr.slice(howMuch, arr.length);
|
||||
}
|
||||
exports.drop = drop;
|
||||
function dropRight(arr, howMuch) {
|
||||
if (howMuch === void 0) { howMuch = 1; }
|
||||
return arr.slice(0, arr.length - howMuch);
|
||||
}
|
||||
exports.dropRight = dropRight;
|
||||
function filter(arr, predicate) {
|
||||
var result = [];
|
||||
if (Array.isArray(arr)) {
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
var item = arr[i];
|
||||
if (predicate.call(null, item)) {
|
||||
result.push(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.filter = filter;
|
||||
function reject(arr, predicate) {
|
||||
return filter(arr, function (item) { return !predicate(item); });
|
||||
}
|
||||
exports.reject = reject;
|
||||
function pick(obj, predicate) {
|
||||
var keys = Object.keys(obj);
|
||||
var result = {};
|
||||
for (var i = 0; i < keys.length; i++) {
|
||||
var currKey = keys[i];
|
||||
var currItem = obj[currKey];
|
||||
if (predicate(currItem)) {
|
||||
result[currKey] = currItem;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.pick = pick;
|
||||
function has(obj, prop) {
|
||||
if (isObject(obj)) {
|
||||
return obj.hasOwnProperty(prop);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
exports.has = has;
|
||||
function contains(arr, item) {
|
||||
return find(arr, function (currItem) { return currItem === item; }) !== undefined ? true : false;
|
||||
}
|
||||
exports.contains = contains;
|
||||
/**
|
||||
* shallow clone
|
||||
*/
|
||||
function cloneArr(arr) {
|
||||
var newArr = [];
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
newArr.push(arr[i]);
|
||||
}
|
||||
return newArr;
|
||||
}
|
||||
exports.cloneArr = cloneArr;
|
||||
/**
|
||||
* shallow clone
|
||||
*/
|
||||
function cloneObj(obj) {
|
||||
var clonedObj = {};
|
||||
for (var key in obj) {
|
||||
/* istanbul ignore else */
|
||||
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
||||
clonedObj[key] = obj[key];
|
||||
}
|
||||
}
|
||||
return clonedObj;
|
||||
}
|
||||
exports.cloneObj = cloneObj;
|
||||
function find(arr, predicate) {
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
var item = arr[i];
|
||||
if (predicate.call(null, item)) {
|
||||
return item;
|
||||
}
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
exports.find = find;
|
||||
function findAll(arr, predicate) {
|
||||
var found = [];
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
var item = arr[i];
|
||||
if (predicate.call(null, item)) {
|
||||
found.push(item);
|
||||
}
|
||||
}
|
||||
return found;
|
||||
}
|
||||
exports.findAll = findAll;
|
||||
function reduce(arrOrObj, iterator, initial) {
|
||||
var isArr = Array.isArray(arrOrObj);
|
||||
var vals = isArr ? arrOrObj : values(arrOrObj);
|
||||
var objKeys = isArr ? [] : keys(arrOrObj);
|
||||
var accumulator = initial;
|
||||
for (var i = 0; i < vals.length; i++) {
|
||||
accumulator = iterator.call(null, accumulator, vals[i], isArr ? i : objKeys[i]);
|
||||
}
|
||||
return accumulator;
|
||||
}
|
||||
exports.reduce = reduce;
|
||||
function compact(arr) {
|
||||
return reject(arr, function (item) { return item === null || item === undefined; });
|
||||
}
|
||||
exports.compact = compact;
|
||||
function uniq(arr, identity) {
|
||||
if (identity === void 0) { identity = function (item) { return item; }; }
|
||||
var identities = [];
|
||||
return reduce(arr, function (result, currItem) {
|
||||
var currIdentity = identity(currItem);
|
||||
if (contains(identities, currIdentity)) {
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
identities.push(currIdentity);
|
||||
return result.concat(currItem);
|
||||
}
|
||||
}, []);
|
||||
}
|
||||
exports.uniq = uniq;
|
||||
function partial(func) {
|
||||
var restArgs = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
restArgs[_i - 1] = arguments[_i];
|
||||
}
|
||||
var firstArg = [null];
|
||||
var allArgs = firstArg.concat(restArgs);
|
||||
return Function.bind.apply(func, allArgs);
|
||||
}
|
||||
exports.partial = partial;
|
||||
function isArray(obj) {
|
||||
return Array.isArray(obj);
|
||||
}
|
||||
exports.isArray = isArray;
|
||||
function isRegExp(obj) {
|
||||
return obj instanceof RegExp;
|
||||
}
|
||||
exports.isRegExp = isRegExp;
|
||||
function isObject(obj) {
|
||||
return obj instanceof Object;
|
||||
}
|
||||
exports.isObject = isObject;
|
||||
function every(arr, predicate) {
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
if (!predicate(arr[i], i)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
exports.every = every;
|
||||
function difference(arr, values) {
|
||||
return reject(arr, function (item) { return contains(values, item); });
|
||||
}
|
||||
exports.difference = difference;
|
||||
function some(arr, predicate) {
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
if (predicate(arr[i])) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
exports.some = some;
|
||||
function indexOf(arr, value) {
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
if (arr[i] === value) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
exports.indexOf = indexOf;
|
||||
function sortBy(arr, orderFunc) {
|
||||
var result = cloneArr(arr);
|
||||
result.sort(function (a, b) { return orderFunc(a) - orderFunc(b); });
|
||||
return result;
|
||||
}
|
||||
exports.sortBy = sortBy;
|
||||
function zipObject(keys, values) {
|
||||
if (keys.length !== values.length) {
|
||||
throw Error("can't zipObject with different number of keys and values!");
|
||||
}
|
||||
var result = {};
|
||||
for (var i = 0; i < keys.length; i++) {
|
||||
result[keys[i]] = values[i];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.zipObject = zipObject;
|
||||
/**
|
||||
* mutates! (and returns) target
|
||||
*/
|
||||
function assign(target) {
|
||||
var sources = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
sources[_i - 1] = arguments[_i];
|
||||
}
|
||||
for (var i = 0; i < sources.length; i++) {
|
||||
var curSource = sources[i];
|
||||
var currSourceKeys = keys(curSource);
|
||||
for (var j = 0; j < currSourceKeys.length; j++) {
|
||||
var currKey = currSourceKeys[j];
|
||||
target[currKey] = curSource[currKey];
|
||||
}
|
||||
}
|
||||
return target;
|
||||
}
|
||||
exports.assign = assign;
|
||||
/**
|
||||
* mutates! (and returns) target
|
||||
*/
|
||||
function assignNoOverwrite(target) {
|
||||
var sources = [];
|
||||
for (var _i = 1; _i < arguments.length; _i++) {
|
||||
sources[_i - 1] = arguments[_i];
|
||||
}
|
||||
for (var i = 0; i < sources.length; i++) {
|
||||
var curSource = sources[i];
|
||||
var currSourceKeys = keys(curSource);
|
||||
for (var j = 0; j < currSourceKeys.length; j++) {
|
||||
var currKey = currSourceKeys[j];
|
||||
if (!has(target, currKey)) {
|
||||
target[currKey] = curSource[currKey];
|
||||
}
|
||||
}
|
||||
}
|
||||
return target;
|
||||
}
|
||||
exports.assignNoOverwrite = assignNoOverwrite;
|
||||
function defaults() {
|
||||
var sources = [];
|
||||
for (var _i = 0; _i < arguments.length; _i++) {
|
||||
sources[_i] = arguments[_i];
|
||||
}
|
||||
return assignNoOverwrite.apply(null, [{}].concat(sources));
|
||||
}
|
||||
exports.defaults = defaults;
|
||||
function groupBy(arr, groupKeyFunc) {
|
||||
var result = {};
|
||||
forEach(arr, function (item) {
|
||||
var currGroupKey = groupKeyFunc(item);
|
||||
var currGroupArr = result[currGroupKey];
|
||||
if (currGroupArr) {
|
||||
currGroupArr.push(item);
|
||||
}
|
||||
else {
|
||||
result[currGroupKey] = [item];
|
||||
}
|
||||
});
|
||||
return result;
|
||||
}
|
||||
exports.groupBy = groupBy;
|
||||
/**
|
||||
* Merge obj2 into obj1.
|
||||
* Will overwrite existing properties with the same name
|
||||
*/
|
||||
function merge(obj1, obj2) {
|
||||
var result = cloneObj(obj1);
|
||||
var keys2 = keys(obj2);
|
||||
for (var i = 0; i < keys2.length; i++) {
|
||||
var key = keys2[i];
|
||||
var value = obj2[key];
|
||||
result[key] = value;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.merge = merge;
|
||||
function NOOP() { }
|
||||
exports.NOOP = NOOP;
|
||||
function IDENTITY(item) {
|
||||
return item;
|
||||
}
|
||||
exports.IDENTITY = IDENTITY;
|
||||
/**
|
||||
* Will return a new packed array with same values.
|
||||
*/
|
||||
function packArray(holeyArr) {
|
||||
var result = [];
|
||||
for (var i = 0; i < holeyArr.length; i++) {
|
||||
var orgValue = holeyArr[i];
|
||||
result.push(orgValue !== undefined ? orgValue : undefined);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.packArray = packArray;
|
||||
function PRINT_ERROR(msg) {
|
||||
/* istanbul ignore else - can't override global.console in node.js */
|
||||
if (console && console.error) {
|
||||
console.error("Error: " + msg);
|
||||
}
|
||||
}
|
||||
exports.PRINT_ERROR = PRINT_ERROR;
|
||||
function PRINT_WARNING(msg) {
|
||||
/* istanbul ignore else - can't override global.console in node.js*/
|
||||
if (console && console.warn) {
|
||||
// TODO: modify docs accordingly
|
||||
console.warn("Warning: " + msg);
|
||||
}
|
||||
}
|
||||
exports.PRINT_WARNING = PRINT_WARNING;
|
||||
function isES2015MapSupported() {
|
||||
return typeof Map === "function";
|
||||
}
|
||||
exports.isES2015MapSupported = isES2015MapSupported;
|
||||
function applyMixins(derivedCtor, baseCtors) {
|
||||
baseCtors.forEach(function (baseCtor) {
|
||||
var baseProto = baseCtor.prototype;
|
||||
Object.getOwnPropertyNames(baseProto).forEach(function (propName) {
|
||||
if (propName === "constructor") {
|
||||
return;
|
||||
}
|
||||
var basePropDescriptor = Object.getOwnPropertyDescriptor(baseProto, propName);
|
||||
// Handle Accessors
|
||||
if (basePropDescriptor &&
|
||||
(basePropDescriptor.get || basePropDescriptor.set)) {
|
||||
Object.defineProperty(derivedCtor.prototype, propName, basePropDescriptor);
|
||||
}
|
||||
else {
|
||||
derivedCtor.prototype[propName] = baseCtor.prototype[propName];
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
exports.applyMixins = applyMixins;
|
||||
// base on: https://github.com/petkaantonov/bluebird/blob/b97c0d2d487e8c5076e8bd897e0dcd4622d31846/src/util.js#L201-L216
|
||||
function toFastProperties(toBecomeFast) {
|
||||
function FakeConstructor() { }
|
||||
// If our object is used as a constructor it would receive
|
||||
FakeConstructor.prototype = toBecomeFast;
|
||||
var fakeInstance = new FakeConstructor();
|
||||
function fakeAccess() {
|
||||
return typeof fakeInstance.bar;
|
||||
}
|
||||
// help V8 understand this is a "real" prototype by actually using
|
||||
// the fake instance.
|
||||
fakeAccess();
|
||||
fakeAccess();
|
||||
return toBecomeFast;
|
||||
// Eval prevents optimization of this method (even though this is dead code)
|
||||
/* istanbul ignore next */
|
||||
// tslint:disable-next-line
|
||||
eval(toBecomeFast);
|
||||
}
|
||||
exports.toFastProperties = toFastProperties;
|
||||
function peek(arr) {
|
||||
return arr[arr.length - 1];
|
||||
}
|
||||
exports.peek = peek;
|
||||
/* istanbul ignore next - for performance tracing*/
|
||||
function timer(func) {
|
||||
var start = new Date().getTime();
|
||||
var val = func();
|
||||
var end = new Date().getTime();
|
||||
var total = end - start;
|
||||
return { time: total, value: val };
|
||||
}
|
||||
exports.timer = timer;
|
||||
//# sourceMappingURL=utils.js.map
|
||||
1
node_modules/chevrotain/lib/src/utils/utils.js.map
generated
vendored
Normal file
1
node_modules/chevrotain/lib/src/utils/utils.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue