fix(tracker): new fix for setSessionTokenHeader

This commit is contained in:
nick-delirium 2023-08-17 17:31:36 +02:00
parent 1cf1c3688a
commit 02d26008f6
3 changed files with 16 additions and 9 deletions

View file

@ -1,6 +1,6 @@
# 9.0.2
# 9.0.2 & 9.0.3 & 9.0.4
- fix "setSessionTokenHeader" method
- fixes for "setSessionTokenHeader" method
# 9.0.1

View file

@ -1,7 +1,7 @@
{
"name": "@openreplay/tracker",
"description": "The OpenReplay tracker main package",
"version": "9.0.2",
"version": "9.0.4",
"keywords": [
"logging",
"replay"

View file

@ -144,12 +144,19 @@ export class FetchProxyHandler<T extends typeof fetch> implements ProxyHandler<T
this.beforeFetch(item, input as RequestInfo, init)
this.setSessionTokenHeader((name, value) => {
argsList[1] = {
...argsList[1],
headers: {
...argsList[1]?.headers,
[name]: value,
},
if (argsList[1] === undefined && argsList[0] instanceof Request) {
return argsList[0].headers.append(name, value)
} else {
if (argsList[1].headers === undefined) {
argsList[1].headers = {}
}
if (argsList[1].headers instanceof Headers) {
argsList[1].headers.append(name, value)
} else if (Array.isArray(argsList[1].headers)) {
argsList[1].headers.push([name, value])
} else {
argsList[1].headers[name] = value
}
}
})
return (<ReturnType<T>>target.apply(window, argsList))