@qelos/sdk 3.1.15 → 3.1.20

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/dist/base-sdk.js CHANGED
@@ -15,6 +15,10 @@ export default class BaseSDK {
15
15
  }
16
16
  callJsonApi(relativeUrl, data) {
17
17
  return this.callApi(relativeUrl, data).then(async (res) => {
18
+ if (this.qlOptions.forceRefresh && res.status === 401) {
19
+ await this.qlOptions.extraHeaders('', true);
20
+ res = await this.callApi(relativeUrl, data);
21
+ }
18
22
  const isJson = (res.headers.get('Content-Type') ||
19
23
  res.headers.get('content-type') ||
20
24
  res.headers.get('ContentType') ||
@@ -1 +1 @@
1
- {"version":3,"file":"base-sdk.js","sourceRoot":"","sources":["../src/base-sdk.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,OAAO;IAIN;IAHpB,OAAO,CAAS;IAChB,MAAM,CAAY;IAElB,YAAoB,SAA0B;QAA1B,cAAS,GAAT,SAAS,CAAiB;QAC5C,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;QACjG,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,WAAmB,EAAE,IAAkB;QACnD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,WAAW,CAAI,WAAmB,EAAE,IAAkB;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtD,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;gBAC7C,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;gBAC/B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;gBACX,MAAM,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC3D;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"base-sdk.js","sourceRoot":"","sources":["../src/base-sdk.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,OAAO;IAIN;IAHpB,OAAO,CAAS;IAChB,MAAM,CAAY;IAElB,YAAoB,SAA0B;QAA1B,cAAS,GAAT,SAAS,CAAiB;QAC5C,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;QACjG,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,WAAmB,EAAE,IAAkB;QACnD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,WAAW,CAAI,WAAmB,EAAE,IAAkB;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtD,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;gBACrD,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC5C,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;aAC7C;YACD,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;gBAC7C,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;gBAC/B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACtD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;gBACX,MAAM,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC3D;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
package/dist/index.js CHANGED
@@ -5,6 +5,7 @@ import QlAppConfigurations from './configurations';
5
5
  import QlBlocks from './blocks';
6
6
  import QlLayouts from './administrator/layouts';
7
7
  import QlAuthentication from './authentication';
8
+ const noExtraHeadersUrls = new Set(['/api/token/refresh', '/api/signin', '/api/signup']);
8
9
  export default class QelosSDK extends BaseSDK {
9
10
  options;
10
11
  categories;
@@ -26,11 +27,11 @@ export default class QelosSDK extends BaseSDK {
26
27
  options.getAccessToken = () => this.authentication.accessToken;
27
28
  }
28
29
  if (!options.extraHeaders) {
29
- options.extraHeaders = async (relativeUrl) => {
30
- if (relativeUrl === '/api/token/refresh') {
30
+ options.extraHeaders = async (relativeUrl, forceRefresh) => {
31
+ if (noExtraHeadersUrls.has(relativeUrl)) {
31
32
  return {};
32
33
  }
33
- let token = options.getAccessToken();
34
+ let token = forceRefresh ? '' : options.getAccessToken();
34
35
  if (!token) {
35
36
  await this.authentication.refreshToken();
36
37
  token = options.getAccessToken();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,mBAAmB,MAAM,kBAAkB,CAAC;AAEnD,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAChD,OAAO,gBAAgB,MAAM,kBAAkB,CAAC;AAEhD,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IASvB;IAPpB,UAAU,CAAe;IACzB,KAAK,CAAU;IACf,MAAM,CAAW;IACjB,OAAO,CAAY;IACnB,iBAAiB,CAAsB;IACvC,cAAc,CAAmB;IAEjC,YAAoB,OAAwB;QAC1C,KAAK,CAAC,OAAO,CAAC,CAAC;QADG,YAAO,GAAP,OAAO,CAAiB;QAE1C,IAAI,CAAC,UAAU,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,CAAC,cAAc,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEzD,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;YAC3B,OAAO,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;SAChE;QACD,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;YACzB,OAAO,CAAC,YAAY,GAAG,KAAK,EAAE,WAAmB,EAAE,EAAE;gBACnD,IAAI,WAAW,KAAK,oBAAoB,EAAE;oBACxC,OAAO,EAAE,CAAC;iBACX;gBACD,IAAI,KAAK,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;gBACrC,IAAI,CAAC,KAAK,EAAE;oBACV,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAA;oBACxC,KAAK,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;iBAClC;gBACD,IAAI,KAAK,EAAE;oBACT,OAAO,EAAC,aAAa,EAAE,SAAS,GAAG,KAAK,EAAC,CAAA;iBAC1C;gBACD,OAAO,EAAE,CAAA;YACX,CAAC,CAAA;SACF;IACH,CAAC;CAEF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,mBAAmB,MAAM,kBAAkB,CAAC;AAEnD,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAChD,OAAO,gBAAgB,MAAM,kBAAkB,CAAC;AAEhD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,oBAAoB,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAA;AAExF,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IASvB;IAPpB,UAAU,CAAe;IACzB,KAAK,CAAU;IACf,MAAM,CAAW;IACjB,OAAO,CAAY;IACnB,iBAAiB,CAAsB;IACvC,cAAc,CAAmB;IAEjC,YAAoB,OAAwB;QAC1C,KAAK,CAAC,OAAO,CAAC,CAAC;QADG,YAAO,GAAP,OAAO,CAAiB;QAE1C,IAAI,CAAC,UAAU,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,CAAC,cAAc,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEzD,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;YAC3B,OAAO,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;SAChE;QAED,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;YACzB,OAAO,CAAC,YAAY,GAAG,KAAK,EAAE,WAAmB,EAAE,YAAsB,EAAE,EAAE;gBAC3E,IAAI,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;oBACvC,OAAO,EAAE,CAAC;iBACX;gBACD,IAAI,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBACzD,IAAI,CAAC,KAAK,EAAE;oBACV,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;oBACzC,KAAK,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;iBAClC;gBACD,IAAI,KAAK,EAAE;oBACT,OAAO,EAAC,aAAa,EAAE,SAAS,GAAG,KAAK,EAAC,CAAA;iBAC1C;gBACD,OAAO,EAAE,CAAA;YACX,CAAC,CAAA;SACF;IACH,CAAC;CAEF"}
package/dist/types.d.ts CHANGED
@@ -5,7 +5,8 @@ export interface QelosSDKOptions {
5
5
  accessToken?: string;
6
6
  refreshToken?: string;
7
7
  getAccessToken?: () => undefined | string;
8
- extraHeaders?: (relativeUrl: string) => Promise<{
8
+ extraHeaders?: (relativeUrl: string, forceRefresh?: boolean) => Promise<{
9
9
  [key: string]: string;
10
10
  }>;
11
+ forceRefresh?: boolean;
11
12
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qelos/sdk",
3
- "version": "3.1.15",
3
+ "version": "3.1.20",
4
4
  "description": "SDK for Qelos API",
5
5
  "main": "./dist/index.js",
6
6
  "scripts": {
package/src/base-sdk.ts CHANGED
@@ -18,6 +18,10 @@ export default class BaseSDK {
18
18
 
19
19
  callJsonApi<T>(relativeUrl: string, data?: RequestInit): Promise<T> {
20
20
  return this.callApi(relativeUrl, data).then(async res => {
21
+ if (this.qlOptions.forceRefresh && res.status === 401) {
22
+ await this.qlOptions.extraHeaders('', true);
23
+ res = await this.callApi(relativeUrl, data);
24
+ }
21
25
  const isJson = (res.headers.get('Content-Type') ||
22
26
  res.headers.get('content-type') ||
23
27
  res.headers.get('ContentType') ||
package/src/index.ts CHANGED
@@ -9,6 +9,8 @@ import GpLayouts from './administrator/layouts';
9
9
  import QlLayouts from './administrator/layouts';
10
10
  import QlAuthentication from './authentication';
11
11
 
12
+ const noExtraHeadersUrls = new Set(['/api/token/refresh', '/api/signin', '/api/signup'])
13
+
12
14
  export default class QelosSDK extends BaseSDK {
13
15
 
14
16
  categories: QlCategories;
@@ -30,14 +32,15 @@ export default class QelosSDK extends BaseSDK {
30
32
  if (!options.getAccessToken) {
31
33
  options.getAccessToken = () => this.authentication.accessToken;
32
34
  }
35
+
33
36
  if (!options.extraHeaders) {
34
- options.extraHeaders = async (relativeUrl: string) => {
35
- if (relativeUrl === '/api/token/refresh') {
37
+ options.extraHeaders = async (relativeUrl: string, forceRefresh?: boolean) => {
38
+ if (noExtraHeadersUrls.has(relativeUrl)) {
36
39
  return {};
37
40
  }
38
- let token = options.getAccessToken();
41
+ let token = forceRefresh ? '' : options.getAccessToken();
39
42
  if (!token) {
40
- await this.authentication.refreshToken()
43
+ await this.authentication.refreshToken();
41
44
  token = options.getAccessToken();
42
45
  }
43
46
  if (token) {
package/src/types.ts CHANGED
@@ -6,5 +6,6 @@ export interface QelosSDKOptions {
6
6
  accessToken?: string;
7
7
  refreshToken?: string;
8
8
  getAccessToken?: () => undefined | string;
9
- extraHeaders?: (relativeUrl: string) => Promise<{ [key: string]: string }>;
9
+ extraHeaders?: (relativeUrl: string, forceRefresh?: boolean) => Promise<{ [key: string]: string }>;
10
+ forceRefresh?: boolean;
10
11
  }