fix(tracker): sessionHash as a start() option
This commit is contained in:
parent
231a7d62b6
commit
4590fb1875
2 changed files with 12 additions and 9 deletions
|
|
@ -21,6 +21,7 @@ export interface StartOptions {
|
|||
userID?: string
|
||||
metadata?: Record<string, string>
|
||||
forceNew?: boolean
|
||||
sessionHash?: string
|
||||
}
|
||||
|
||||
interface OnStartInfo {
|
||||
|
|
@ -94,7 +95,7 @@ export default class App {
|
|||
private activityState: ActivityState = ActivityState.NotActive
|
||||
private readonly version = 'TRACKER_VERSION' // TODO: version compatability check inside each plugin.
|
||||
private readonly worker?: Worker
|
||||
constructor(projectKey: string, sessionHash: string | undefined, options: Partial<Options>) {
|
||||
constructor(projectKey: string, sessionToken: string | undefined, options: Partial<Options>) {
|
||||
// if (options.onStart !== undefined) {
|
||||
// deprecationWarn("'onStart' option", "tracker.start().then(/* handle session info */)")
|
||||
// } ?? maybe onStart is good
|
||||
|
|
@ -140,8 +141,9 @@ export default class App {
|
|||
}
|
||||
})
|
||||
|
||||
if (sessionHash != null) {
|
||||
this.session.applySessionHash(sessionHash)
|
||||
// @depricated (use sessionHash on start instead)
|
||||
if (sessionToken != null) {
|
||||
this.session.applySessionHash(sessionToken)
|
||||
}
|
||||
|
||||
try {
|
||||
|
|
@ -343,6 +345,9 @@ export default class App {
|
|||
)
|
||||
}
|
||||
this.activityState = ActivityState.Starting
|
||||
if (startOpts.sessionHash) {
|
||||
this.session.applySessionHash(startOpts.sessionHash)
|
||||
}
|
||||
|
||||
const timestamp = now()
|
||||
const startWorkerMsg: WorkerMessageData = {
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ export type Options = Partial<
|
|||
> & {
|
||||
projectID?: number // For the back compatibility only (deprecated)
|
||||
projectKey: string
|
||||
sessionHash?: string
|
||||
sessionToken?: string
|
||||
respectDoNotTrack?: boolean
|
||||
autoResetOnWindowOpen?: boolean
|
||||
// dev only
|
||||
|
|
@ -70,10 +70,8 @@ function processOptions(obj: any): obj is Options {
|
|||
obj.projectKey = obj.projectKey.toString()
|
||||
}
|
||||
}
|
||||
if (typeof obj.sessionHash !== 'string' && obj.sessionHash != null) {
|
||||
console.warn(
|
||||
`OpenReplay: invalid 'sessionHash' option type. Please, check documentation on ${DOCS_HOST}${DOCS_SETUP}`,
|
||||
)
|
||||
if (obj.sessionToken != null) {
|
||||
deprecationWarn('`sessionToken` option', '`sessionHash` start() option', '/')
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
|
@ -110,7 +108,7 @@ export default class API {
|
|||
!('Blob' in window) ||
|
||||
!('Worker' in window)
|
||||
? null
|
||||
: new App(options.projectKey, options.sessionHash, options))
|
||||
: new App(options.projectKey, options.sessionToken, options))
|
||||
if (app !== null) {
|
||||
Viewport(app)
|
||||
CSSRules(app)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue