Skip to content

Commit ea81a7f

Browse files
fix: nested object in options are shared across multiple instances
1 parent b4187d2 commit ea81a7f

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/amplitude-client.js

+7-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,13 @@ 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+
library: { ...DEFAULT_OPTIONS.library },
46+
plan: { ...DEFAULT_OPTIONS.plan },
47+
trackingOptions: { ...DEFAULT_OPTIONS.trackingOptions },
48+
};
4349
this.cookieStorage = new cookieStorage().getStorage();
4450
this._q = []; // queue for proxied functions before script load
4551
this._sending = false;

0 commit comments

Comments
 (0)