@schibsted/account-sdk-browser 5.2.0 → 5.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schibsted/account-sdk-browser",
3
- "version": "5.2.0",
3
+ "version": "5.2.2",
4
4
  "description": "Schibsted account SDK for browsers",
5
5
  "main": "index.js",
6
6
  "type": "module",
package/src/RESTClient.js CHANGED
@@ -76,7 +76,9 @@ export class RESTClient {
76
76
  constructor({ serverUrl = 'PRE', envDic, fetch = globalFetch(), log, defaultParams = {}}) {
77
77
  assert(isObject(defaultParams), `defaultParams should be a non-null object`);
78
78
 
79
- this.url = new URL(urlMapper(serverUrl, envDic));
79
+ const mappedUrl = urlMapper(serverUrl, envDic);
80
+ const handledServerUrl = mappedUrl.endsWith('/') ? mappedUrl : `${mappedUrl}/`;
81
+ this.url = new URL(handledServerUrl);
80
82
 
81
83
  this.defaultParams = defaultParams;
82
84
 
@@ -157,7 +159,9 @@ export class RESTClient {
157
159
  * @return {string} - the resulting url string ready to pass to fetch
158
160
  */
159
161
  makeUrl(pathname = '', query = {}, useDefaultParams = true) {
160
- const url = new URL(pathname, this.url);
162
+ const handledPathname = pathname.startsWith('/') ? pathname.slice(1) : pathname;
163
+
164
+ const url = new URL(handledPathname, this.url);
161
165
  url.search = RESTClient.search(query, useDefaultParams, this.defaultParams);
162
166
  return url.href;
163
167
  }
package/src/identity.js CHANGED
@@ -204,6 +204,8 @@ export class Identity extends EventEmitter {
204
204
  this._session = {};
205
205
 
206
206
  this._setSessionServiceUrl(sessionDomain);
207
+ this._usedSessionServiceGetSessionEndpoint = this._sessionService.url.pathname && this._sessionService.url.pathname.length <= 1 ? 'v2/session' : 'session';
208
+
207
209
  this._setSpidServerUrl(env);
208
210
  this._setBffServerUrl(env);
209
211
  this._setOauthServerUrl(env);
@@ -589,7 +591,7 @@ export class Identity extends EventEmitter {
589
591
  }
590
592
  let sessionData = null;
591
593
  try {
592
- sessionData = await this._sessionService.get('v2/session', {tabId: this._getTabId()});
594
+ sessionData = await this._sessionService.get(this._usedSessionServiceGetSessionEndpoint, {tabId: this._getTabId()});
593
595
  } catch (err) {
594
596
  if (err && err.code === 400 && this._enableSessionCaching) {
595
597
  const expiresIn = 1000 * (err.expiresIn || 300);
package/src/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // Automatically generated in 'npm version' by scripts/genversion.js
2
2
 
3
3
  'use strict'
4
- const version = '5.2.0';
4
+ const version = '5.2.2';
5
5
  export default version;