Skip to content

Commit 5129c45

Browse files
fix: nested object in options are shared across multiple instances (#559)
1 parent 064b8d4 commit 5129c45

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/amplitude-client.js

+8-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,14 @@ var AmplitudeClient = function AmplitudeClient(instanceName) {
3939
this._instanceName = utils.isEmptyString(instanceName) ? Constants.DEFAULT_INSTANCE : instanceName.toLowerCase();
4040
this._unsentEvents = [];
4141
this._unsentIdentifys = [];
42-
this.options = { ...DEFAULT_OPTIONS, trackingOptions: { ...DEFAULT_OPTIONS.trackingOptions } };
42+
this.options = {
43+
...DEFAULT_OPTIONS,
44+
headers: { ...DEFAULT_OPTIONS.headers },
45+
ingestionMetadata: { ...DEFAULT_OPTIONS.ingestionMetadata },
46+
library: { ...DEFAULT_OPTIONS.library },
47+
plan: { ...DEFAULT_OPTIONS.plan },
48+
trackingOptions: { ...DEFAULT_OPTIONS.trackingOptions },
49+
};
4350
this.cookieStorage = new cookieStorage().getStorage();
4451
this._q = []; // queue for proxied functions before script load
4552
this._sending = false;

0 commit comments

Comments
 (0)