@kepler.gl/utils 3.0.0-alpha.0 → 3.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aggregate-utils.js +2 -2
- package/dist/color-utils.d.ts +4 -0
- package/dist/color-utils.js +28 -3
- package/dist/data-container-interface.js +1 -1
- package/dist/data-container-utils.js +2 -2
- package/dist/data-row.js +2 -2
- package/dist/data-scale-utils.js +4 -4
- package/dist/data-utils.d.ts +10 -12
- package/dist/data-utils.js +120 -44
- package/dist/dataset-utils.d.ts +12 -1
- package/dist/dataset-utils.js +74 -9
- package/dist/dom-to-image.d.ts +14 -14
- package/dist/dom-to-image.js +23 -69
- package/dist/dom-utils.d.ts +3 -0
- package/dist/dom-utils.js +29 -3
- package/dist/effect-utils.d.ts +13 -0
- package/dist/effect-utils.js +129 -0
- package/dist/export-map-html.js +2 -2
- package/dist/export-utils.js +13 -4
- package/dist/filter-utils.d.ts +11 -9
- package/dist/filter-utils.js +66 -36
- package/dist/format.d.ts +1 -0
- package/dist/format.js +33 -0
- package/dist/gl-utils.js +2 -2
- package/dist/h3-utils.d.ts +2 -1
- package/dist/h3-utils.js +5 -4
- package/dist/index.d.ts +14 -9
- package/dist/index.js +230 -555
- package/dist/indexed-data-container.js +2 -2
- package/dist/locale-utils.js +2 -2
- package/dist/map-info-utils.js +2 -2
- package/dist/map-style-utils/mapbox-gl-style-editor.d.ts +2 -1
- package/dist/map-style-utils/mapbox-gl-style-editor.js +9 -3
- package/dist/map-style-utils/mapbox-utils.js +2 -2
- package/dist/map-utils.d.ts +8 -2
- package/dist/map-utils.js +24 -7
- package/dist/mapbox-utils.js +2 -2
- package/dist/noop.d.ts +1 -0
- package/dist/noop.js +29 -0
- package/dist/notifications-utils.d.ts +14 -26
- package/dist/notifications-utils.js +9 -11
- package/dist/observe-dimensions.js +10 -6
- package/dist/plot.d.ts +6 -0
- package/dist/plot.js +46 -0
- package/dist/projection-utils.d.ts +9 -0
- package/dist/projection-utils.js +36 -2
- package/dist/row-data-container.js +2 -2
- package/dist/searcher-utils.js +2 -2
- package/dist/split-map-utils.d.ts +4 -1
- package/dist/split-map-utils.js +10 -4
- package/dist/time.d.ts +16 -0
- package/dist/time.js +105 -0
- package/dist/utils.d.ts +36 -10
- package/dist/utils.js +38 -6
- package/package.json +11 -11
package/dist/utils.d.ts
CHANGED
@@ -8,7 +8,7 @@ export declare function generateHashId(count?: number): string;
|
|
8
8
|
* Detect chrome
|
9
9
|
* @returns {boolean} - yes or no
|
10
10
|
*/
|
11
|
-
export declare function isChrome():
|
11
|
+
export declare function isChrome(): boolean;
|
12
12
|
/**
|
13
13
|
* Capitalize first letter of a string
|
14
14
|
* @param {string} str
|
@@ -21,14 +21,14 @@ export declare function capitalizeFirstLetter(str: any): any;
|
|
21
21
|
* @param {string} str
|
22
22
|
* @returns {string}
|
23
23
|
*/
|
24
|
-
export declare function camelToTitle(str:
|
24
|
+
export declare function camelToTitle(str: string): string;
|
25
25
|
/**
|
26
26
|
* Convert names to camel style
|
27
27
|
* Stroke Color -> strokeColor
|
28
28
|
* @param {string} str
|
29
29
|
* @returns {string}
|
30
30
|
*/
|
31
|
-
export declare const camelize: (str:
|
31
|
+
export declare const camelize: (str: string) => string;
|
32
32
|
/**
|
33
33
|
* Converts non-arrays to arrays. Leaves arrays alone. Converts
|
34
34
|
* undefined values to empty arrays ([] instead of [undefined]).
|
@@ -37,7 +37,7 @@ export declare const camelize: (str: any) => any;
|
|
37
37
|
* @param {*} item
|
38
38
|
* @returns {array} boom! much array. very indexed. so useful.
|
39
39
|
*/
|
40
|
-
export declare function toArray(item:
|
40
|
+
export declare function toArray<T>(item: T | T[]): T[];
|
41
41
|
/**
|
42
42
|
* immutably insert value to an Array or Object
|
43
43
|
* @param {Array|Object} obj
|
@@ -45,12 +45,17 @@ export declare function toArray(item: any): any[];
|
|
45
45
|
* @param {*} value
|
46
46
|
* @returns {Array|Object}
|
47
47
|
*/
|
48
|
-
export declare const insertValue: (obj:
|
48
|
+
export declare const insertValue: <T extends object | any[]>(obj: T, key: number | string, value: any) => T;
|
49
49
|
/**
|
50
50
|
* check if value is a loose object including a plain object, array, function
|
51
51
|
* @param {*} value
|
52
52
|
*/
|
53
53
|
export declare function isObject(value: any): boolean;
|
54
|
+
/**
|
55
|
+
* whether is an object
|
56
|
+
* @returns {boolean} - yes or no
|
57
|
+
*/
|
58
|
+
export declare function isPlainObject(obj: unknown): obj is Record<string, unknown>;
|
54
59
|
/**
|
55
60
|
* Immutable version of _.set
|
56
61
|
* @param {Array<String|Number>} path
|
@@ -58,7 +63,12 @@ export declare function isObject(value: any): boolean;
|
|
58
63
|
* @param {Object} obj
|
59
64
|
* @returns {Object}
|
60
65
|
*/
|
61
|
-
export declare const set: (path:
|
66
|
+
export declare const set: <T extends object | any[]>(path: (string | number)[], value: any, obj: T) => T;
|
67
|
+
declare type ErrorObject = {
|
68
|
+
error?: any;
|
69
|
+
err?: any;
|
70
|
+
message?: any;
|
71
|
+
};
|
62
72
|
/**
|
63
73
|
* Get error information of unknown type
|
64
74
|
* Extracts as much human readable information as possible
|
@@ -68,10 +78,16 @@ export declare const set: (path: any, value: any, obj: any) => any;
|
|
68
78
|
* @param {*} err - Unknown error
|
69
79
|
* @return {string} - human readable error msg
|
70
80
|
*/
|
71
|
-
export declare function getError(err
|
72
|
-
export declare function arrayInsert(arr:
|
73
|
-
export declare function hasMobileWidth(breakPointValues:
|
74
|
-
|
81
|
+
export declare function getError(err?: Error | ErrorObject | string): string;
|
82
|
+
export declare function arrayInsert<T>(arr: T[], index: number, val: T): T[];
|
83
|
+
export declare function hasMobileWidth(breakPointValues: {
|
84
|
+
palm: number;
|
85
|
+
desk: number;
|
86
|
+
}): boolean;
|
87
|
+
export declare function hasPortableWidth(breakPointValues: {
|
88
|
+
palm: number;
|
89
|
+
desk: number;
|
90
|
+
}): boolean;
|
75
91
|
export declare function isTest(): boolean;
|
76
92
|
/**
|
77
93
|
* Filters an object by an arbitrary predicate
|
@@ -82,3 +98,13 @@ export declare function isTest(): boolean;
|
|
82
98
|
*/
|
83
99
|
export declare function filterObjectByPredicate(obj: any, predicate: any): {};
|
84
100
|
export declare function isFunction(func: any): boolean;
|
101
|
+
export declare function findById(id: string): <X extends {
|
102
|
+
id: string;
|
103
|
+
}>(arr: X[]) => X | undefined;
|
104
|
+
/**
|
105
|
+
* Returns array difference from
|
106
|
+
*/
|
107
|
+
export declare function arrayDifference<X extends {
|
108
|
+
id: string;
|
109
|
+
}>(source: X[]): (compare: X[]) => X[];
|
110
|
+
export {};
|
package/dist/utils.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
// Copyright (c)
|
1
|
+
// Copyright (c) 2023 Uber Technologies, Inc.
|
2
2
|
//
|
3
3
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
4
4
|
// of this software and associated documentation files (the "Software"), to deal
|
@@ -31,6 +31,7 @@ exports.capitalizeFirstLetter = capitalizeFirstLetter;
|
|
31
31
|
exports.camelToTitle = camelToTitle;
|
32
32
|
exports.toArray = toArray;
|
33
33
|
exports.isObject = isObject;
|
34
|
+
exports.isPlainObject = isPlainObject;
|
34
35
|
exports.getError = getError;
|
35
36
|
exports.arrayInsert = arrayInsert;
|
36
37
|
exports.hasMobileWidth = hasMobileWidth;
|
@@ -38,6 +39,8 @@ exports.hasPortableWidth = hasPortableWidth;
|
|
38
39
|
exports.isTest = isTest;
|
39
40
|
exports.filterObjectByPredicate = filterObjectByPredicate;
|
40
41
|
exports.isFunction = isFunction;
|
42
|
+
exports.findById = findById;
|
43
|
+
exports.arrayDifference = arrayDifference;
|
41
44
|
exports.set = exports.insertValue = exports.camelize = void 0;
|
42
45
|
|
43
46
|
var _toArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toArray"));
|
@@ -160,6 +163,15 @@ exports.insertValue = insertValue;
|
|
160
163
|
function isObject(value) {
|
161
164
|
return value !== null && ((0, _typeof2["default"])(value) === 'object' || typeof value === 'function');
|
162
165
|
}
|
166
|
+
/**
|
167
|
+
* whether is an object
|
168
|
+
* @returns {boolean} - yes or no
|
169
|
+
*/
|
170
|
+
|
171
|
+
|
172
|
+
function isPlainObject(obj) {
|
173
|
+
return obj === Object(obj) && typeof obj !== 'function' && !Array.isArray(obj);
|
174
|
+
}
|
163
175
|
|
164
176
|
var setPath = function setPath(_ref, value, obj) {
|
165
177
|
var _ref2 = (0, _toArray2["default"])(_ref),
|
@@ -191,6 +203,9 @@ var setPath = function setPath(_ref, value, obj) {
|
|
191
203
|
var set = function set(path, value, obj) {
|
192
204
|
return obj === null ? obj : setPath(path, value, obj);
|
193
205
|
};
|
206
|
+
|
207
|
+
exports.set = set;
|
208
|
+
|
194
209
|
/**
|
195
210
|
* Get error information of unknown type
|
196
211
|
* Extracts as much human readable information as possible
|
@@ -200,10 +215,6 @@ var set = function set(path, value, obj) {
|
|
200
215
|
* @param {*} err - Unknown error
|
201
216
|
* @return {string} - human readable error msg
|
202
217
|
*/
|
203
|
-
|
204
|
-
|
205
|
-
exports.set = set;
|
206
|
-
|
207
218
|
function getError(err) {
|
208
219
|
if (!err) {
|
209
220
|
return 'Something went wrong';
|
@@ -264,4 +275,25 @@ function filterObjectByPredicate(obj, predicate) {
|
|
264
275
|
function isFunction(func) {
|
265
276
|
return typeof func === 'function';
|
266
277
|
}
|
267
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy50cyJdLCJuYW1lcyI6WyJnZW5lcmF0ZUhhc2hJZCIsImNvdW50IiwiTWF0aCIsInJhbmRvbSIsInRvU3RyaW5nIiwic3Vic3RyIiwiaXNDaHJvbWUiLCJ3aW5kb3ciLCJjaHJvbWUiLCJ3ZWJzdG9yZSIsImNhcGl0YWxpemVGaXJzdExldHRlciIsInN0ciIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwic2xpY2UiLCJjYW1lbFRvVGl0bGUiLCJicmVha1dvcmQiLCJyZXBsYWNlIiwiY2FtZWxpemUiLCJtYXRjaCIsImluZGV4IiwiTnVtYmVyIiwidG9Mb3dlckNhc2UiLCJ0b0FycmF5IiwiaXRlbSIsIkFycmF5IiwiaXNBcnJheSIsImluc2VydFZhbHVlIiwib2JqIiwia2V5IiwidmFsdWUiLCJsZW5ndGgiLCJpc09iamVjdCIsInNldFBhdGgiLCJuZXh0IiwiaGFzT3duUHJvcGVydHkiLCJzZXQiLCJwYXRoIiwiZ2V0RXJyb3IiLCJlcnIiLCJFcnJvciIsIm1lc3NhZ2UiLCJlcnJvciIsIkpTT04iLCJzdHJpbmdpZnkiLCJhcnJheUluc2VydCIsImFyciIsInZhbCIsImhhc01vYmlsZVdpZHRoIiwiYnJlYWtQb2ludFZhbHVlcyIsIm1vYmlsZVdpZHRoIiwibWF0Y2hNZWRpYSIsInBhbG0iLCJtYXRjaGVzIiwiaGFzUG9ydGFibGVXaWR0aCIsImRlc2siLCJpc1Rlc3QiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJmaWx0ZXJPYmplY3RCeVByZWRpY2F0ZSIsInByZWRpY2F0ZSIsIk9iamVjdCIsImVudHJpZXMiLCJyZWR1Y2UiLCJhY2MiLCJlbnRyeSIsImlzRnVuY3Rpb24iLCJmdW5jIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7Ozs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxTQUFTQSxjQUFULEdBQW1DO0FBQUEsTUFBWEMsS0FBVyx1RUFBSCxDQUFHO0FBQ3hD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O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNPLFNBQVNDLHVCQUFULENBQWlDaEMsR0FBakMsRUFBc0NpQyxTQUF0QyxFQUFpRDtBQUN0RCxTQUFPQyxNQUFNLENBQUNDLE9BQVAsQ0FBZW5DLEdBQWYsRUFBb0JvQyxNQUFwQixDQUNMLFVBQUNDLEdBQUQsRUFBTUMsS0FBTjtBQUFBLFdBQWlCTCxTQUFTLENBQUNLLEtBQUssQ0FBQyxDQUFELENBQU4sRUFBV0EsS0FBSyxDQUFDLENBQUQsQ0FBaEIsQ0FBVCxtQ0FBb0NELEdBQXBDLDRDQUEwQ0MsS0FBSyxDQUFDLENBQUQsQ0FBL0MsRUFBcURBLEtBQUssQ0FBQyxDQUFELENBQTFELEtBQWlFRCxHQUFsRjtBQUFBLEdBREssRUFFTCxFQUZLLENBQVA7QUFJRDs7QUFFTSxTQUFTRSxVQUFULENBQW9CQyxJQUFwQixFQUEwQjtBQUMvQixTQUFPLE9BQU9BLElBQVAsS0FBZ0IsVUFBdkI7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCB3aW5kb3cgZnJvbSAnZ2xvYmFsL3dpbmRvdyc7XG5cbi8qKlxuICogR2VuZXJhdGUgYSBoYXNoIHN0cmluZyBiYXNlZCBvbiBudW1iZXIgb2YgY2hhcmFjdGVyXG4gKiBAcGFyYW0ge251bWJlcn0gY291bnRcbiAqIEByZXR1cm5zIHtzdHJpbmd9IGhhc2ggc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZUhhc2hJZChjb3VudCA9IDYpIHtcbiAgcmV0dXJuIE1hdGgucmFuZG9tKClcbiAgICAudG9TdHJpbmcoMzYpXG4gICAgLnN1YnN0cihjb3VudCk7XG59XG5cbi8qKlxuICogRGV0ZWN0IGNocm9tZVxuICogQHJldHVybnMge2Jvb2xlYW59IC0geWVzIG9yIG5vXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Nocm9tZSgpIHtcbiAgLy8gQ2hyb21lIDErXG4gIHJldHVybiB3aW5kb3cuY2hyb21lICYmIHdpbmRvdy5jaHJvbWUud2Vic3RvcmU7XG59XG5cbi8qKlxuICogQ2FwaXRhbGl6ZSBmaXJzdCBsZXR0ZXIgb2YgYSBzdHJpbmdcbiAqIEBwYXJhbSB7c3RyaW5nfSBzdHJcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYXBpdGFsaXplRmlyc3RMZXR0ZXIoc3RyKSB7XG4gIHJldHVybiB0eXBlb2Ygc3RyID09PSAnc3RyaW5nJyA/IHN0ci5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0ci5zbGljZSgxKSA6IHN0cjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IGNhbWVsIHN0eWxlIG5hbWVzIHRvIHRpdGxlXG4gKiBzdHJva2VDb2xvciAtPiBTdHJva2UgQ29sb3JcbiAqIEBwYXJhbSB7c3RyaW5nfSBzdHJcbiAqIEByZXR1cm5zIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYW1lbFRvVGl0bGUoc3RyKSB7XG4gIGNvbnN0IGJyZWFrV29yZCA9IHN0ci5yZXBsYWNlKC8oW0EtWl0pL2csICcgJDEnKTtcbiAgcmV0dXJuIGNhcGl0YWxpemVGaXJzdExldHRlcihicmVha1dvcmQpO1xufVxuXG4vKipcbiAqIENvbnZlcnQgbmFtZXMgdG8gY2FtZWwgc3R5bGVcbiAqIFN0cm9rZSBDb2xvciAtPiBzdHJva2VDb2xvclxuICogQHBhcmFtIHtzdHJpbmd9IHN0clxuICogQHJldHVybnMge3N0cmluZ31cbiAqL1xuZXhwb3J0IGNvbnN0IGNhbWVsaXplID0gc3RyID0+IHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC8oPzpeXFx3fFtBLVpdfFxcYlxcd3xcXHMrKS9nLCAobWF0Y2gsIGluZGV4KSA9PiB7XG4gICAgaWYgKE51bWJlcihtYXRjaCkgPT09IDApIHJldHVybiAnJzsgLy8gb3IgaWYgKC9cXHMrLy50ZXN0KG1hdGNoKSkgZm9yIHdoaXRlIHNwYWNlc1xuICAgIHJldHVybiBpbmRleCA9PT0gMCA/IG1hdGNoLnRvTG93ZXJDYXNlKCkgOiBtYXRjaC50b1VwcGVyQ2FzZSgpO1xuICB9KTtcbn07XG5cbi8qKlxuICogQ29udmVydHMgbm9uLWFycmF5cyB0byBhcnJheXMuICBMZWF2ZXMgYXJyYXlzIGFsb25lLiAgQ29udmVydHNcbiAqIHVuZGVmaW5lZCB2YWx1ZXMgdG8gZW1wdHkgYXJyYXlzIChbXSBpbnN0ZWFkIG9mIFt1bmRlZmluZWRdKS5cbiAqIE90aGVyd2lzZSwganVzdCByZXR1cm5zIFtpdGVtXSBmb3Igbm9uLWFycmF5IGl0ZW1zLlxuICpcbiAqIEBwYXJhbSB7Kn0gaXRlbVxuICogQHJldHVybnMge2FycmF5fSBib29tISBtdWNoIGFycmF5LiB2ZXJ5IGluZGV4ZWQuIHNvIHVzZWZ1bC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvQXJyYXkoaXRlbSkge1xuICBpZiAoQXJyYXkuaXNBcnJheShpdGVtKSkge1xuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgaWYgKHR5cGVvZiBpdGVtID09PSAndW5kZWZpbmVkJyB8fCBpdGVtID09PSBudWxsKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgcmV0dXJuIFtpdGVtXTtcbn1cblxuLyoqXG4gKiBpbW11dGFibHkgaW5zZXJ0IHZhbHVlIHRvIGFuIEFycmF5IG9yIE9iamVjdFxuICogQHBhcmFtIHtBcnJheXxPYmplY3R9IG9ialxuICogQHBhcmFtIHtOdW1iZXJ8U3RyaW5nfSBrZXlcbiAqIEBwYXJhbSB7Kn0gdmFsdWVcbiAqIEByZXR1cm5zIHtBcnJheXxPYmplY3R9XG4gKi9cbmV4cG9ydCBjb25zdCBpbnNlcnRWYWx1ZSA9IChvYmosIGtleSwgdmFsdWUpID0+IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSAmJiB0eXBlb2Yga2V5ID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiBbLi4ub2JqLnNsaWNlKDAsIGtleSksIHZhbHVlLCAuLi5vYmouc2xpY2Uoa2V5ICsgMSwgb2JqLmxlbmd0aCldO1xuICB9XG5cbiAgcmV0dXJuIHsuLi5vYmosIFtrZXldOiB2YWx1ZX07XG59O1xuXG4vKipcbiAqIGNoZWNrIGlmIHZhbHVlIGlzIGEgbG9vc2Ugb2JqZWN0IGluY2x1ZGluZyBhIHBsYWluIG9iamVjdCwgYXJyYXksIGZ1bmN0aW9uXG4gKiBAcGFyYW0geyp9IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdCh2YWx1ZSkge1xuICByZXR1cm4gdmFsdWUgIT09IG51bGwgJiYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgfHwgdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKTtcbn1cblxuY29uc3Qgc2V0UGF0aCA9IChba2V5LCAuLi5uZXh0XSwgdmFsdWUsIG9iaikgPT4ge1xuICAvLyBpcyBPYmplY3QgYWxsb3dzIGpzIG9iamVjdCwgYXJyYXkgYW5kIGZ1bmN0aW9uXG4gIGlmICghaXNPYmplY3Qob2JqKSkge1xuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICBpZiAobmV4dC5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gaW5zZXJ0VmFsdWUob2JqLCBrZXksIHZhbHVlKTtcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgcmV0dXJuIGluc2VydFZhbHVlKG9iaiwga2V5LCBzZXRQYXRoKG5leHQsIHZhbHVlLCBvYmouaGFzT3duUHJvcGVydHkoa2V5KSA/IG9ialtrZXldIDoge30pKTtcbn07XG5cbi8qKlxuICogSW1tdXRhYmxlIHZlcnNpb24gb2YgXy5zZXRcbiAqIEBwYXJhbSB7QXJyYXk8U3RyaW5nfE51bWJlcj59IHBhdGhcbiAqIEBwYXJhbSB7Kn0gdmFsdWVcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmpcbiAqIEByZXR1cm5zIHtPYmplY3R9XG4gKi9cbi8vIEB0cy1pZ25vcmVcbmV4cG9ydCBjb25zdCBzZXQgPSAocGF0aCwgdmFsdWUsIG9iaikgPT4gKG9iaiA9PT0gbnVsbCA/IG9iaiA6IHNldFBhdGgocGF0aCwgdmFsdWUsIG9iaikpO1xuXG4vKipcbiAqIEdldCBlcnJvciBpbmZvcm1hdGlvbiBvZiB1bmtub3duIHR5cGVcbiAqIEV4dHJhY3RzIGFzIG11Y2ggaHVtYW4gcmVhZGFibGUgaW5mb3JtYXRpb24gYXMgcG9zc2libGVcbiAqIEVuc3VyZSByZXN1bHQgaXMgYW4gRXJyb3Igb2JqZWN0IHN1aXRhYmxlIGZvciB0aHJvdyBvciBwcm9taXNlIHJlamVjdGlvblxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9ICBlcnIgLSBVbmtub3duIGVycm9yXG4gKiBAcmV0dXJuIHtzdHJpbmd9IC0gaHVtYW4gcmVhZGFibGUgZXJyb3IgbXNnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFcnJvcihlcnIpIHtcbiAgaWYgKCFlcnIpIHtcbiAgICByZXR1cm4gJ1NvbWV0aGluZyB3ZW50IHdyb25nJztcbiAgfVxuXG4gIGlmICh0eXBlb2YgZXJyID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBlcnI7XG4gIH0gZWxzZSBpZiAoZXJyIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICByZXR1cm4gZXJyLm1lc3NhZ2U7XG4gIH0gZWxzZSBpZiAodHlwZW9mIGVyciA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gZXJyLmVycm9yXG4gICAgICA/IGdldEVycm9yKGVyci5lcnJvcilcbiAgICAgIDogZXJyLmVyclxuICAgICAgPyBnZXRFcnJvcihlcnIuZXJyKVxuICAgICAgOiBlcnIubWVzc2FnZVxuICAgICAgPyBnZXRFcnJvcihlcnIubWVzc2FnZSlcbiAgICAgIDogSlNPTi5zdHJpbmdpZnkoZXJyKTtcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcnJheUluc2VydChhcnIsIGluZGV4LCB2YWwpIHtcbiAgaWYgKCFBcnJheS5pc0FycmF5KGFycikpIHtcbiAgICByZXR1cm4gYXJyO1xuICB9XG5cbiAgcmV0dXJuIFsuLi5hcnIuc2xpY2UoMCwgaW5kZXgpLCB2YWwsIC4uLmFyci5zbGljZShpbmRleCldO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFzTW9iaWxlV2lkdGgoYnJlYWtQb2ludFZhbHVlcykge1xuICBjb25zdCBtb2JpbGVXaWR0aCA9IHdpbmRvdy5tYXRjaE1lZGlhKGAobWF4LXdpZHRoOiAke2JyZWFrUG9pbnRWYWx1ZXMucGFsbX1weClgKTtcbiAgcmV0dXJuIG1vYmlsZVdpZHRoLm1hdGNoZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYXNQb3J0YWJsZVdpZHRoKGJyZWFrUG9pbnRWYWx1ZXMpIHtcbiAgY29uc3QgbW9iaWxlV2lkdGggPSB3aW5kb3cubWF0Y2hNZWRpYShgKG1heC13aWR0aDogJHticmVha1BvaW50VmFsdWVzLmRlc2t9cHgpYCk7XG4gIHJldHVybiBtb2JpbGVXaWR0aC5tYXRjaGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUZXN0KCkge1xuICByZXR1cm4gcHJvY2Vzcz8uZW52Py5OT0RFX0VOViA9PT0gJ3Rlc3QnO1xufVxuXG4vKipcbiAqIEZpbHRlcnMgYW4gb2JqZWN0IGJ5IGFuIGFyYml0cmFyeSBwcmVkaWNhdGVcbiAqIFJldHVybnMgYSBuZXcgb2JqZWN0IGNvbnRhaW5pbmcgYWxsIGVsZW1lbnRzIHRoYXQgbWF0Y2ggdGhlIHByZWRpY2F0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iaiBPYmplY3QgdG8gYmUgZmlsdGVyZWRcbiAqIEBwYXJhbSB7RnVuY3Rpb259IHByZWRpY2F0ZSBQcmVkaWNhdGUgYnkgd2hpY2ggdGhlIG9iamVjdCB3aWxsIGJlIGZpbHRlcmVkXG4gKiBAcmV0dXJucyB7T2JqZWN0fVxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyT2JqZWN0QnlQcmVkaWNhdGUob2JqLCBwcmVkaWNhdGUpIHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9iaikucmVkdWNlKFxuICAgIChhY2MsIGVudHJ5KSA9PiAocHJlZGljYXRlKGVudHJ5WzBdLCBlbnRyeVsxXSkgPyB7Li4uYWNjLCBbZW50cnlbMF1dOiBlbnRyeVsxXX0gOiBhY2MpLFxuICAgIHt9XG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Z1bmN0aW9uKGZ1bmMpIHtcbiAgcmV0dXJuIHR5cGVvZiBmdW5jID09PSAnZnVuY3Rpb24nO1xufVxuIl19
|
278
|
+
|
279
|
+
function findById(id) {
|
280
|
+
return function (arr) {
|
281
|
+
return arr.find(function (a) {
|
282
|
+
return a.id === id;
|
283
|
+
});
|
284
|
+
};
|
285
|
+
}
|
286
|
+
/**
|
287
|
+
* Returns array difference from
|
288
|
+
*/
|
289
|
+
|
290
|
+
|
291
|
+
function arrayDifference(source) {
|
292
|
+
return function (compare) {
|
293
|
+
return source.reduce(function (acc, element) {
|
294
|
+
var foundElement = findById(element.id)(compare);
|
295
|
+
return foundElement ? [].concat((0, _toConsumableArray2["default"])(acc), [foundElement]) : acc;
|
296
|
+
}, []);
|
297
|
+
};
|
298
|
+
}
|
299
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy50cyJdLCJuYW1lcyI6WyJnZW5lcmF0ZUhhc2hJZCIsImNvdW50IiwiTWF0aCIsInJhbmRvbSIsInRvU3RyaW5nIiwic3Vic3RyIiwiaXNDaHJvbWUiLCJ3aW5kb3ciLCJjaHJvbWUiLCJ3ZWJzdG9yZSIsImNhcGl0YWxpemVGaXJzdExldHRlciIsInN0ciIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwic2xpY2UiLCJjYW1lbFRvVGl0bGUiLCJicmVha1dvcmQiLCJyZXBsYWNlIiwiY2FtZWxpemUiLCJtYXRjaCIsImluZGV4IiwiTnVtYmVyIiwidG9Mb3dlckNhc2UiLCJ0b0FycmF5IiwiaXRlbSIsIkFycmF5IiwiaXNBcnJheSIsImluc2VydFZhbHVlIiwib2JqIiwia2V5IiwidmFsdWUiLCJsZW5ndGgiLCJpc09iamVjdCIsImlzUGxhaW5PYmplY3QiLCJPYmplY3QiLCJzZXRQYXRoIiwibmV4dCIsImhhc093blByb3BlcnR5Iiwic2V0IiwicGF0aCIsImdldEVycm9yIiwiZXJyIiwiRXJyb3IiLCJtZXNzYWdlIiwiZXJyb3IiLCJKU09OIiwic3RyaW5naWZ5IiwiYXJyYXlJbnNlcnQiLCJhcnIiLCJ2YWwiLCJoYXNNb2JpbGVXaWR0aCIsImJyZWFrUG9pbnRWYWx1ZXMiLCJtb2JpbGVXaWR0aCIsIm1hdGNoTWVkaWEiLCJwYWxtIiwibWF0Y2hlcyIsImhhc1BvcnRhYmxlV2lkdGgiLCJkZXNrIiwiaXNUZXN0IiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZmlsdGVyT2JqZWN0QnlQcmVkaWNhdGUiLCJwcmVkaWNhdGUiLCJlbnRyaWVzIiwicmVkdWNlIiwiYWNjIiwiZW50cnkiLCJpc0Z1bmN0aW9uIiwiZnVuYyIsImZpbmRCeUlkIiwiaWQiLCJmaW5kIiwiYSIsImFycmF5RGlmZmVyZW5jZSIsInNvdXJjZSIsImNvbXBhcmUiLCJlbGVtZW50IiwiZm91bmRFbGVtZW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7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Q08sU0FBU0csZUFBVCxDQUFpREMsTUFBakQsRUFBcUY7QUFDMUYsU0FBTyxVQUFBQyxPQUFPO0FBQUEsV0FDWkQsTUFBTSxDQUFDVixNQUFQLENBQWMsVUFBQ0MsR0FBRCxFQUFNVyxPQUFOLEVBQWtCO0FBQzlCLFVBQU1DLFlBQVksR0FBR1IsUUFBUSxDQUFDTyxPQUFPLENBQUNOLEVBQVQsQ0FBUixDQUFxQkssT0FBckIsQ0FBckI7QUFDQSxhQUFPRSxZQUFZLGlEQUFPWixHQUFQLElBQVlZLFlBQVosS0FBNEJaLEdBQS9DO0FBQ0QsS0FIRCxFQUdHLEVBSEgsQ0FEWTtBQUFBLEdBQWQ7QUFLRCIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMyBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCB3aW5kb3cgZnJvbSAnZ2xvYmFsL3dpbmRvdyc7XG5cbi8qKlxuICogR2VuZXJhdGUgYSBoYXNoIHN0cmluZyBiYXNlZCBvbiBudW1iZXIgb2YgY2hhcmFjdGVyXG4gKiBAcGFyYW0ge251bWJlcn0gY291bnRcbiAqIEByZXR1cm5zIHtzdHJpbmd9IGhhc2ggc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZUhhc2hJZChjb3VudDogbnVtYmVyID0gNik6IHN0cmluZyB7XG4gIHJldHVybiBNYXRoLnJhbmRvbSgpXG4gICAgLnRvU3RyaW5nKDM2KVxuICAgIC5zdWJzdHIoY291bnQpO1xufVxuXG4vKipcbiAqIERldGVjdCBjaHJvbWVcbiAqIEByZXR1cm5zIHtib29sZWFufSAtIHllcyBvciBub1xuICovXG5leHBvcnQgZnVuY3Rpb24gaXNDaHJvbWUoKTogYm9vbGVhbiB7XG4gIC8vIENocm9tZSAxK1xuICByZXR1cm4gd2luZG93LmNocm9tZSAmJiB3aW5kb3cuY2hyb21lLndlYnN0b3JlO1xufVxuXG4vKipcbiAqIENhcGl0YWxpemUgZmlyc3QgbGV0dGVyIG9mIGEgc3RyaW5nXG4gKiBAcGFyYW0ge3N0cmluZ30gc3RyXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKHN0cikge1xuICByZXR1cm4gdHlwZW9mIHN0ciA9PT0gJ3N0cmluZycgPyBzdHIuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBzdHIuc2xpY2UoMSkgOiBzdHI7XG59XG5cbi8qKlxuICogQ29udmVydCBjYW1lbCBzdHlsZSBuYW1lcyB0byB0aXRsZVxuICogc3Ryb2tlQ29sb3IgLT4gU3Ryb2tlIENvbG9yXG4gKiBAcGFyYW0ge3N0cmluZ30gc3RyXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FtZWxUb1RpdGxlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgYnJlYWtXb3JkID0gc3RyLnJlcGxhY2UoLyhbQS1aXSkvZywgJyAkMScpO1xuICByZXR1cm4gY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGJyZWFrV29yZCk7XG59XG5cbi8qKlxuICogQ29udmVydCBuYW1lcyB0byBjYW1lbCBzdHlsZVxuICogU3Ryb2tlIENvbG9yIC0+IHN0cm9rZUNvbG9yXG4gKiBAcGFyYW0ge3N0cmluZ30gc3RyXG4gKiBAcmV0dXJucyB7c3RyaW5nfVxuICovXG5leHBvcnQgY29uc3QgY2FtZWxpemUgPSAoc3RyOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gc3RyLnJlcGxhY2UoLyg/Ol5cXHd8W0EtWl18XFxiXFx3fFxccyspL2csIChtYXRjaCwgaW5kZXgpID0+IHtcbiAgICBpZiAoTnVtYmVyKG1hdGNoKSA9PT0gMCkgcmV0dXJuICcnOyAvLyBvciBpZiAoL1xccysvLnRlc3QobWF0Y2gpKSBmb3Igd2hpdGUgc3BhY2VzXG4gICAgcmV0dXJuIGluZGV4ID09PSAwID8gbWF0Y2gudG9Mb3dlckNhc2UoKSA6IG1hdGNoLnRvVXBwZXJDYXNlKCk7XG4gIH0pO1xufTtcblxuLyoqXG4gKiBDb252ZXJ0cyBub24tYXJyYXlzIHRvIGFycmF5cy4gIExlYXZlcyBhcnJheXMgYWxvbmUuICBDb252ZXJ0c1xuICogdW5kZWZpbmVkIHZhbHVlcyB0byBlbXB0eSBhcnJheXMgKFtdIGluc3RlYWQgb2YgW3VuZGVmaW5lZF0pLlxuICogT3RoZXJ3aXNlLCBqdXN0IHJldHVybnMgW2l0ZW1dIGZvciBub24tYXJyYXkgaXRlbXMuXG4gKlxuICogQHBhcmFtIHsqfSBpdGVtXG4gKiBAcmV0dXJucyB7YXJyYXl9IGJvb20hIG11Y2ggYXJyYXkuIHZlcnkgaW5kZXhlZC4gc28gdXNlZnVsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9BcnJheTxUPihpdGVtOiBUIHwgVFtdKTogVFtdIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbSkpIHtcbiAgICByZXR1cm4gaXRlbTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgaXRlbSA9PT0gJ3VuZGVmaW5lZCcgfHwgaXRlbSA9PT0gbnVsbCkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHJldHVybiBbaXRlbV07XG59XG5cbi8qKlxuICogaW1tdXRhYmx5IGluc2VydCB2YWx1ZSB0byBhbiBBcnJheSBvciBPYmplY3RcbiAqIEBwYXJhbSB7QXJyYXl8T2JqZWN0fSBvYmpcbiAqIEBwYXJhbSB7TnVtYmVyfFN0cmluZ30ga2V5XG4gKiBAcGFyYW0geyp9IHZhbHVlXG4gKiBAcmV0dXJucyB7QXJyYXl8T2JqZWN0fVxuICovXG5leHBvcnQgY29uc3QgaW5zZXJ0VmFsdWUgPSA8VCBleHRlbmRzIGFueVtdIHwgb2JqZWN0PihcbiAgb2JqOiBULFxuICBrZXk6IG51bWJlciB8IHN0cmluZyxcbiAgdmFsdWU6IGFueVxuKTogVCA9PiB7XG4gIGlmIChBcnJheS5pc0FycmF5KG9iaikgJiYgdHlwZW9mIGtleSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gWy4uLm9iai5zbGljZSgwLCBrZXkpLCB2YWx1ZSwgLi4ub2JqLnNsaWNlKGtleSArIDEsIG9iai5sZW5ndGgpXSBhcyBUO1xuICB9XG5cbiAgcmV0dXJuIHsuLi5vYmosIFtrZXldOiB2YWx1ZX07XG59O1xuXG4vKipcbiAqIGNoZWNrIGlmIHZhbHVlIGlzIGEgbG9vc2Ugb2JqZWN0IGluY2x1ZGluZyBhIHBsYWluIG9iamVjdCwgYXJyYXksIGZ1bmN0aW9uXG4gKiBAcGFyYW0geyp9IHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdCh2YWx1ZSk6IGJvb2xlYW4ge1xuICByZXR1cm4gdmFsdWUgIT09IG51bGwgJiYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgfHwgdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKTtcbn1cblxuLyoqXG4gKiB3aGV0aGVyIGlzIGFuIG9iamVjdFxuICogQHJldHVybnMge2Jvb2xlYW59IC0geWVzIG9yIG5vXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1BsYWluT2JqZWN0KG9iajogdW5rbm93bik6IG9iaiBpcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gIHJldHVybiBvYmogPT09IE9iamVjdChvYmopICYmIHR5cGVvZiBvYmogIT09ICdmdW5jdGlvbicgJiYgIUFycmF5LmlzQXJyYXkob2JqKTtcbn1cblxuY29uc3Qgc2V0UGF0aCA9IDxUIGV4dGVuZHMgYW55W10gfCBvYmplY3Q+KFxuICBba2V5LCAuLi5uZXh0XTogKHN0cmluZyB8IG51bWJlcilbXSxcbiAgdmFsdWU6IGFueSxcbiAgb2JqOiBvYmplY3QgfCBhbnlbXVxuKTogVCA9PiB7XG4gIC8vIGlzIE9iamVjdCBhbGxvd3MganMgb2JqZWN0LCBhcnJheSBhbmQgZnVuY3Rpb25cbiAgaWYgKCFpc09iamVjdChvYmopKSB7XG4gICAgcmV0dXJuIG9iaiBhcyBUO1xuICB9XG5cbiAgaWYgKG5leHQubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIGluc2VydFZhbHVlKG9iaiwga2V5LCB2YWx1ZSkgYXMgVDtcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgcmV0dXJuIGluc2VydFZhbHVlKG9iaiwga2V5LCBzZXRQYXRoKG5leHQsIHZhbHVlLCBvYmouaGFzT3duUHJvcGVydHkoa2V5KSA/IG9ialtrZXldIDoge30pKTtcbn07XG5cbi8qKlxuICogSW1tdXRhYmxlIHZlcnNpb24gb2YgXy5zZXRcbiAqIEBwYXJhbSB7QXJyYXk8U3RyaW5nfE51bWJlcj59IHBhdGhcbiAqIEBwYXJhbSB7Kn0gdmFsdWVcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmpcbiAqIEByZXR1cm5zIHtPYmplY3R9XG4gKi9cbi8vIEB0cy1pZ25vcmVcbmV4cG9ydCBjb25zdCBzZXQgPSA8VCBleHRlbmRzIGFueVtdIHwgb2JqZWN0PihwYXRoOiAoc3RyaW5nIHwgbnVtYmVyKVtdLCB2YWx1ZTogYW55LCBvYmo6IFQpOiBUID0+XG4gIG9iaiA9PT0gbnVsbCA/IG9iaiA6IHNldFBhdGgocGF0aCwgdmFsdWUsIG9iaik7XG5cbnR5cGUgRXJyb3JPYmplY3QgPSB7XG4gIGVycm9yPzogYW55O1xuICBlcnI/OiBhbnk7XG4gIG1lc3NhZ2U/OiBhbnk7XG59O1xuXG4vKipcbiAqIEdldCBlcnJvciBpbmZvcm1hdGlvbiBvZiB1bmtub3duIHR5cGVcbiAqIEV4dHJhY3RzIGFzIG11Y2ggaHVtYW4gcmVhZGFibGUgaW5mb3JtYXRpb24gYXMgcG9zc2libGVcbiAqIEVuc3VyZSByZXN1bHQgaXMgYW4gRXJyb3Igb2JqZWN0IHN1aXRhYmxlIGZvciB0aHJvdyBvciBwcm9taXNlIHJlamVjdGlvblxuICpcbiAqIEBwcml2YXRlXG4gKiBAcGFyYW0geyp9ICBlcnIgLSBVbmtub3duIGVycm9yXG4gKiBAcmV0dXJuIHtzdHJpbmd9IC0gaHVtYW4gcmVhZGFibGUgZXJyb3IgbXNnXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFcnJvcihlcnI/OiBFcnJvciB8IEVycm9yT2JqZWN0IHwgc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKCFlcnIpIHtcbiAgICByZXR1cm4gJ1NvbWV0aGluZyB3ZW50IHdyb25nJztcbiAgfVxuXG4gIGlmICh0eXBlb2YgZXJyID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBlcnI7XG4gIH0gZWxzZSBpZiAoZXJyIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICByZXR1cm4gZXJyLm1lc3NhZ2U7XG4gIH0gZWxzZSBpZiAodHlwZW9mIGVyciA9PT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gZXJyLmVycm9yXG4gICAgICA/IGdldEVycm9yKGVyci5lcnJvcilcbiAgICAgIDogZXJyLmVyclxuICAgICAgPyBnZXRFcnJvcihlcnIuZXJyKVxuICAgICAgOiBlcnIubWVzc2FnZVxuICAgICAgPyBnZXRFcnJvcihlcnIubWVzc2FnZSlcbiAgICAgIDogSlNPTi5zdHJpbmdpZnkoZXJyKTtcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcnJheUluc2VydDxUPihhcnI6IFRbXSwgaW5kZXg6IG51bWJlciwgdmFsOiBUKTogVFtdIHtcbiAgaWYgKCFBcnJheS5pc0FycmF5KGFycikpIHtcbiAgICByZXR1cm4gYXJyO1xuICB9XG5cbiAgcmV0dXJuIFsuLi5hcnIuc2xpY2UoMCwgaW5kZXgpLCB2YWwsIC4uLmFyci5zbGljZShpbmRleCldO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFzTW9iaWxlV2lkdGgoYnJlYWtQb2ludFZhbHVlczoge3BhbG06IG51bWJlcjsgZGVzazogbnVtYmVyfSk6IGJvb2xlYW4ge1xuICBjb25zdCBtb2JpbGVXaWR0aCA9IHdpbmRvdy5tYXRjaE1lZGlhKGAobWF4LXdpZHRoOiAke2JyZWFrUG9pbnRWYWx1ZXMucGFsbX1weClgKTtcbiAgcmV0dXJuIG1vYmlsZVdpZHRoLm1hdGNoZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYXNQb3J0YWJsZVdpZHRoKGJyZWFrUG9pbnRWYWx1ZXM6IHtwYWxtOiBudW1iZXI7IGRlc2s6IG51bWJlcn0pOiBib29sZWFuIHtcbiAgY29uc3QgbW9iaWxlV2lkdGggPSB3aW5kb3cubWF0Y2hNZWRpYShgKG1heC13aWR0aDogJHticmVha1BvaW50VmFsdWVzLmRlc2t9cHgpYCk7XG4gIHJldHVybiBtb2JpbGVXaWR0aC5tYXRjaGVzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUZXN0KCk6IGJvb2xlYW4ge1xuICByZXR1cm4gcHJvY2Vzcz8uZW52Py5OT0RFX0VOViA9PT0gJ3Rlc3QnO1xufVxuXG4vKipcbiAqIEZpbHRlcnMgYW4gb2JqZWN0IGJ5IGFuIGFyYml0cmFyeSBwcmVkaWNhdGVcbiAqIFJldHVybnMgYSBuZXcgb2JqZWN0IGNvbnRhaW5pbmcgYWxsIGVsZW1lbnRzIHRoYXQgbWF0Y2ggdGhlIHByZWRpY2F0ZVxuICogQHBhcmFtIHtPYmplY3R9IG9iaiBPYmplY3QgdG8gYmUgZmlsdGVyZWRcbiAqIEBwYXJhbSB7RnVuY3Rpb259IHByZWRpY2F0ZSBQcmVkaWNhdGUgYnkgd2hpY2ggdGhlIG9iamVjdCB3aWxsIGJlIGZpbHRlcmVkXG4gKiBAcmV0dXJucyB7T2JqZWN0fVxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyT2JqZWN0QnlQcmVkaWNhdGUob2JqLCBwcmVkaWNhdGUpIHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9iaikucmVkdWNlKFxuICAgIChhY2MsIGVudHJ5KSA9PiAocHJlZGljYXRlKGVudHJ5WzBdLCBlbnRyeVsxXSkgPyB7Li4uYWNjLCBbZW50cnlbMF1dOiBlbnRyeVsxXX0gOiBhY2MpLFxuICAgIHt9XG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Z1bmN0aW9uKGZ1bmMpOiBib29sZWFuIHtcbiAgcmV0dXJuIHR5cGVvZiBmdW5jID09PSAnZnVuY3Rpb24nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmluZEJ5SWQoaWQ6IHN0cmluZyk6IDxYIGV4dGVuZHMge2lkOiBzdHJpbmd9PihhcnI6IFhbXSkgPT4gWCB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBhcnIgPT4gYXJyLmZpbmQoYSA9PiBhLmlkID09PSBpZCk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhcnJheSBkaWZmZXJlbmNlIGZyb21cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFycmF5RGlmZmVyZW5jZTxYIGV4dGVuZHMge2lkOiBzdHJpbmd9Pihzb3VyY2U6IFhbXSk6IChjb21wYXJlOiBYW10pID0+IFhbXSB7XG4gIHJldHVybiBjb21wYXJlID0+XG4gICAgc291cmNlLnJlZHVjZSgoYWNjLCBlbGVtZW50KSA9PiB7XG4gICAgICBjb25zdCBmb3VuZEVsZW1lbnQgPSBmaW5kQnlJZChlbGVtZW50LmlkKShjb21wYXJlKTtcbiAgICAgIHJldHVybiBmb3VuZEVsZW1lbnQgPyBbLi4uYWNjLCBmb3VuZEVsZW1lbnRdIDogYWNjO1xuICAgIH0sIFtdIGFzIFhbXSk7XG59XG4iXX0=
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@kepler.gl/utils",
|
3
3
|
"author": "Shan He <shan@uber.com>",
|
4
|
-
"version": "3.0.0-alpha.
|
4
|
+
"version": "3.0.0-alpha.1",
|
5
5
|
"description": "kepler.gl constants used by kepler.gl components, actions and reducers",
|
6
6
|
"license": "MIT",
|
7
7
|
"main": "dist/index.js",
|
@@ -30,10 +30,10 @@
|
|
30
30
|
"umd"
|
31
31
|
],
|
32
32
|
"dependencies": {
|
33
|
-
"@kepler.gl/constants": "3.0.0-alpha.
|
34
|
-
"@kepler.gl/types": "3.0.0-alpha.
|
35
|
-
"@luma.gl/constants": "^8.5.
|
36
|
-
"@luma.gl/core": "^8.5.
|
33
|
+
"@kepler.gl/constants": "3.0.0-alpha.1",
|
34
|
+
"@kepler.gl/types": "3.0.0-alpha.1",
|
35
|
+
"@luma.gl/constants": "^8.5.19",
|
36
|
+
"@luma.gl/core": "^8.5.19",
|
37
37
|
"@mapbox/geo-viewport": "^0.4.1",
|
38
38
|
"@turf/boolean-within": "^6.0.1",
|
39
39
|
"@turf/helpers": "^6.1.4",
|
@@ -56,24 +56,24 @@
|
|
56
56
|
"lodash.memoize": "^4.1.2",
|
57
57
|
"lodash.throttle": "^4.1.1",
|
58
58
|
"mini-svg-data-uri": "^1.0.3",
|
59
|
-
"moment-timezone": "^0.5.
|
60
|
-
"react": "^
|
59
|
+
"moment-timezone": "^0.5.35",
|
60
|
+
"react": "^18.2.0",
|
61
61
|
"resize-observer-polyfill": "^1.5.1",
|
62
|
-
"type-analyzer": "0.
|
63
|
-
},
|
62
|
+
"type-analyzer": "0.4.0"
|
63
|
+
},
|
64
64
|
"nyc": {
|
65
65
|
"sourceMap": false,
|
66
66
|
"instrument": false
|
67
67
|
},
|
68
68
|
"engines": {
|
69
|
-
"node": ">=
|
69
|
+
"node": ">=14.21.1"
|
70
70
|
},
|
71
71
|
"maintainers": [
|
72
72
|
"Shan He <heshan0131@gmail.com>",
|
73
73
|
"Giuseppe Macri <gmacri@uber.com>"
|
74
74
|
],
|
75
75
|
"volta": {
|
76
|
-
"node": "
|
76
|
+
"node": "14.21.1",
|
77
77
|
"yarn": "1.22.17"
|
78
78
|
}
|
79
79
|
}
|