@datadog/browser-core
Advanced tools
Comparing version 1.11.6 to 1.12.0
"use strict"; | ||
// tslint:disable ban-types | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var tslib_1 = require("tslib"); | ||
var lodash_assign_1 = tslib_1.__importDefault(require("lodash.assign")); | ||
var lodash_merge_1 = tslib_1.__importDefault(require("lodash.merge")); | ||
var errorCollection_1 = require("./errorCollection"); | ||
@@ -21,3 +18,3 @@ var tracekit_1 = require("./tracekit"); | ||
var batch = new transport_1.Batch(new transport_1.HttpRequest(configuration.internalMonitoringEndpoint, configuration.batchBytesLimit), configuration.maxBatchSize, configuration.batchBytesLimit, configuration.maxMessageSize, configuration.flushTimeout, function () { | ||
return lodash_merge_1.default({ | ||
return utils.deepMerge({ | ||
date: new Date().getTime(), | ||
@@ -30,3 +27,3 @@ view: { | ||
}); | ||
lodash_assign_1.default(monitoringConfiguration, { | ||
utils.assign(monitoringConfiguration, { | ||
batch: batch, | ||
@@ -33,0 +30,0 @@ maxMessagesPerPage: configuration.maxInternalMonitoringMessagesPerPage, |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var tslib_1 = require("tslib"); | ||
var lodash_merge_1 = tslib_1.__importDefault(require("lodash.merge")); | ||
var internalMonitoring_1 = require("./internalMonitoring"); | ||
@@ -91,3 +90,3 @@ var utils_1 = require("./utils"); | ||
Batch.prototype.process = function (message) { | ||
var contextualizedMessage = lodash_merge_1.default({}, this.contextProvider(), message); | ||
var contextualizedMessage = utils_1.deepMerge({}, this.contextProvider(), message); | ||
var processedMessage = utils_1.jsonStringify(contextualizedMessage); | ||
@@ -94,0 +93,0 @@ var messageBytesSize = this.sizeInBytes(processedMessage); |
@@ -36,2 +36,16 @@ export declare type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>; | ||
/** | ||
* Performs a deep merge of objects and arrays | ||
* - arrays values are merged index by index | ||
* - objects are merged by keys | ||
* - values get replaced, unless undefined | ||
* | ||
* ⚠️ this method does not prevent infinite loops while merging circular references ⚠️ | ||
* | ||
*/ | ||
export declare function deepMerge(destination: ContextValue, ...toMerge: ContextValue[]): ContextValue; | ||
interface Assignable { | ||
[key: string]: any; | ||
} | ||
export declare function assign(target: Assignable, ...toAssign: Assignable[]): void; | ||
/** | ||
* UUID v4 | ||
@@ -96,1 +110,2 @@ * from https://gist.github.com/jed/982883 | ||
export declare function getLinkElementOrigin(element: Location | HTMLAnchorElement | URL): string; | ||
export {}; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var tslib_1 = require("tslib"); | ||
exports.ONE_SECOND = 1000; | ||
@@ -71,3 +72,49 @@ exports.ONE_MINUTE = 60 * exports.ONE_SECOND; | ||
exports.throttle = throttle; | ||
var isContextArray = function (value) { return Array.isArray(value); }; | ||
var isContext = function (value) { return !Array.isArray(value) && typeof value === 'object'; }; | ||
/** | ||
* Performs a deep merge of objects and arrays | ||
* - arrays values are merged index by index | ||
* - objects are merged by keys | ||
* - values get replaced, unless undefined | ||
* | ||
* ⚠️ this method does not prevent infinite loops while merging circular references ⚠️ | ||
* | ||
*/ | ||
function deepMerge(destination) { | ||
var toMerge = []; | ||
for (var _i = 1; _i < arguments.length; _i++) { | ||
toMerge[_i - 1] = arguments[_i]; | ||
} | ||
return toMerge.reduce(function (value1, value2) { | ||
if (isContextArray(value1) && isContextArray(value2)) { | ||
return tslib_1.__spreadArrays(Array(Math.max(value1.length, value2.length))).map(function (_, index) { | ||
return deepMerge(value1[index], value2[index]); | ||
}); | ||
} | ||
if (isContext(value1) && isContext(value2)) { | ||
return Object.keys(value2).reduce(function (merged, key) { | ||
var _a; | ||
return (tslib_1.__assign(tslib_1.__assign({}, merged), (_a = {}, _a[key] = deepMerge(value1[key], value2[key]), _a))); | ||
}, value1); | ||
} | ||
return value2 === undefined ? value1 : value2; | ||
}, destination); | ||
} | ||
exports.deepMerge = deepMerge; | ||
function assign(target) { | ||
var toAssign = []; | ||
for (var _i = 1; _i < arguments.length; _i++) { | ||
toAssign[_i - 1] = arguments[_i]; | ||
} | ||
toAssign.forEach(function (source) { | ||
for (var key in source) { | ||
if (Object.prototype.hasOwnProperty.call(source, key)) { | ||
target[key] = source[key]; | ||
} | ||
} | ||
}); | ||
} | ||
exports.assign = assign; | ||
/** | ||
* UUID v4 | ||
@@ -74,0 +121,0 @@ * from https://gist.github.com/jed/982883 |
@@ -1,5 +0,2 @@ | ||
// tslint:disable ban-types | ||
import { __assign } from "tslib"; | ||
import lodashAssign from 'lodash.assign'; | ||
import lodashMerge from 'lodash.merge'; | ||
import { toStackTraceString } from './errorCollection'; | ||
@@ -19,3 +16,3 @@ import { computeStackTrace } from './tracekit'; | ||
var batch = new Batch(new HttpRequest(configuration.internalMonitoringEndpoint, configuration.batchBytesLimit), configuration.maxBatchSize, configuration.batchBytesLimit, configuration.maxMessageSize, configuration.flushTimeout, function () { | ||
return lodashMerge({ | ||
return utils.deepMerge({ | ||
date: new Date().getTime(), | ||
@@ -28,3 +25,3 @@ view: { | ||
}); | ||
lodashAssign(monitoringConfiguration, { | ||
utils.assign(monitoringConfiguration, { | ||
batch: batch, | ||
@@ -31,0 +28,0 @@ maxMessagesPerPage: configuration.maxInternalMonitoringMessagesPerPage, |
import { __spreadArrays } from "tslib"; | ||
import lodashMerge from 'lodash.merge'; | ||
import { monitor } from './internalMonitoring'; | ||
import { DOM_EVENT, jsonStringify, noop, objectValues } from './utils'; | ||
import { deepMerge, DOM_EVENT, jsonStringify, noop, objectValues } from './utils'; | ||
/** | ||
@@ -89,3 +88,3 @@ * Use POST request without content type to: | ||
Batch.prototype.process = function (message) { | ||
var contextualizedMessage = lodashMerge({}, this.contextProvider(), message); | ||
var contextualizedMessage = deepMerge({}, this.contextProvider(), message); | ||
var processedMessage = jsonStringify(contextualizedMessage); | ||
@@ -92,0 +91,0 @@ var messageBytesSize = this.sizeInBytes(processedMessage); |
@@ -36,2 +36,16 @@ export declare type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>; | ||
/** | ||
* Performs a deep merge of objects and arrays | ||
* - arrays values are merged index by index | ||
* - objects are merged by keys | ||
* - values get replaced, unless undefined | ||
* | ||
* ⚠️ this method does not prevent infinite loops while merging circular references ⚠️ | ||
* | ||
*/ | ||
export declare function deepMerge(destination: ContextValue, ...toMerge: ContextValue[]): ContextValue; | ||
interface Assignable { | ||
[key: string]: any; | ||
} | ||
export declare function assign(target: Assignable, ...toAssign: Assignable[]): void; | ||
/** | ||
* UUID v4 | ||
@@ -96,1 +110,2 @@ * from https://gist.github.com/jed/982883 | ||
export declare function getLinkElementOrigin(element: Location | HTMLAnchorElement | URL): string; | ||
export {}; |
@@ -0,1 +1,2 @@ | ||
import { __assign, __spreadArrays } from "tslib"; | ||
export var ONE_SECOND = 1000; | ||
@@ -68,3 +69,47 @@ export var ONE_MINUTE = 60 * ONE_SECOND; | ||
} | ||
var isContextArray = function (value) { return Array.isArray(value); }; | ||
var isContext = function (value) { return !Array.isArray(value) && typeof value === 'object'; }; | ||
/** | ||
* Performs a deep merge of objects and arrays | ||
* - arrays values are merged index by index | ||
* - objects are merged by keys | ||
* - values get replaced, unless undefined | ||
* | ||
* ⚠️ this method does not prevent infinite loops while merging circular references ⚠️ | ||
* | ||
*/ | ||
export function deepMerge(destination) { | ||
var toMerge = []; | ||
for (var _i = 1; _i < arguments.length; _i++) { | ||
toMerge[_i - 1] = arguments[_i]; | ||
} | ||
return toMerge.reduce(function (value1, value2) { | ||
if (isContextArray(value1) && isContextArray(value2)) { | ||
return __spreadArrays(Array(Math.max(value1.length, value2.length))).map(function (_, index) { | ||
return deepMerge(value1[index], value2[index]); | ||
}); | ||
} | ||
if (isContext(value1) && isContext(value2)) { | ||
return Object.keys(value2).reduce(function (merged, key) { | ||
var _a; | ||
return (__assign(__assign({}, merged), (_a = {}, _a[key] = deepMerge(value1[key], value2[key]), _a))); | ||
}, value1); | ||
} | ||
return value2 === undefined ? value1 : value2; | ||
}, destination); | ||
} | ||
export function assign(target) { | ||
var toAssign = []; | ||
for (var _i = 1; _i < arguments.length; _i++) { | ||
toAssign[_i - 1] = arguments[_i]; | ||
} | ||
toAssign.forEach(function (source) { | ||
for (var key in source) { | ||
if (Object.prototype.hasOwnProperty.call(source, key)) { | ||
target[key] = source[key]; | ||
} | ||
} | ||
}); | ||
} | ||
/** | ||
* UUID v4 | ||
@@ -71,0 +116,0 @@ * from https://gist.github.com/jed/982883 |
{ | ||
"name": "@datadog/browser-core", | ||
"version": "1.11.6", | ||
"version": "1.12.0", | ||
"license": "Apache-2.0", | ||
@@ -14,9 +14,5 @@ "main": "cjs/index.js", | ||
"dependencies": { | ||
"lodash.assign": "4.2.0", | ||
"lodash.merge": "4.6.2", | ||
"tslib": "1.10.0" | ||
}, | ||
"devDependencies": { | ||
"@types/lodash.assign": "4.2.6", | ||
"@types/lodash.merge": "4.6.6", | ||
"@types/sinon": "7.0.13", | ||
@@ -30,3 +26,3 @@ "sinon": "7.3.2" | ||
}, | ||
"gitHead": "2e24db5c62f408d9f08344745368b29b1768fcc0" | ||
"gitHead": "280cb27d74d72bcd0080df392a7199b5bb496bfa" | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
365497
1
2
6053
- Removedlodash.assign@4.2.0
- Removedlodash.merge@4.6.2
- Removedlodash.assign@4.2.0(transitive)
- Removedlodash.merge@4.6.2(transitive)