asma-helpers 0.3.0 → 0.3.1

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.
@@ -1,16 +1,12 @@
1
1
  import type { AxiosRequestConfig } from 'axios';
2
2
  import type { ClientOptions } from '@genql/runtime';
3
- interface CliOptions extends Omit<ClientOptions, 'url'> {
3
+ interface CliOptions extends Omit<ClientOptions, 'url' | 'signal'> {
4
4
  anonymous?: boolean;
5
5
  }
6
6
  export declare function generateGenqlClient<T extends ReturnType<typeof createClient>>({ setReqConfig, createClient, serviceUrl, path, }: {
7
7
  setReqConfig: () => Promise<AxiosRequestConfig<any>>;
8
8
  createClient: (options?: ClientOptions | undefined) => T;
9
9
  serviceUrl: () => string;
10
- /**
11
- * Returns true whenether token and refresh token is epired! this helps to cancel all concurent requests after first request is invalidated.
12
- * @returns true if request should be cancelled
13
- */
14
10
  path?: string;
15
11
  }): {
16
12
  getGenqlClient: () => Promise<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"generateGenqlClient.d.ts","sourceRoot":"","sources":["../../src/helpers/generateGenqlClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,gBAAgB,CAAA;AAKjE,UAAU,UAAW,SAAQ,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC;IACnD,SAAS,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,YAAY,CAAC,EAAE,EAC3E,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,IAAoB,GACvB,EAAE;IAEC,YAAY,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;IACpD,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,KAAK,CAAC,CAAA;IACxD,UAAU,EAAE,MAAM,MAAM,CAAA;IACxB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB;;;4BA2BuC,UAAU,GAAG;QAAE,eAAe,CAAC,EAAE,eAAe,CAAA;KAAE,KAAQ,QAAQ,CAAC,CAAC;;EAwD3G"}
1
+ {"version":3,"file":"generateGenqlClient.d.ts","sourceRoot":"","sources":["../../src/helpers/generateGenqlClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAMnD,UAAU,UAAW,SAAQ,IAAI,CAAC,aAAa,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,YAAY,CAAC,EAAE,EAC3E,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,IAAoB,GACvB,EAAE;IACC,YAAY,EAAE,MAAM,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;IACpD,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,KAAK,CAAC,CAAA;IACxD,UAAU,EAAE,MAAM,MAAM,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB;;;4BAsCuC,UAAU,GAAG;QAAE,eAAe,CAAC,EAAE,eAAe,CAAA;KAAE,KAAQ,QAAQ,CAAC,CAAC;;EAoD3G"}
@@ -7,8 +7,9 @@ export function generateGenqlClient({ setReqConfig, createClient, serviceUrl, pa
7
7
  client = null;
8
8
  wsClient = null;
9
9
  }
10
- registerCallbackOnSrvAuthEvents('jwt_changed', resetClients);
10
+ //registerCallbackOnSrvAuthEvents('logout_event', resetClients)
11
11
  async function getGenqlClient() {
12
+ console.log('getGenqlClient', client, serviceUrl());
12
13
  if (client === null) {
13
14
  client = await genqlClient();
14
15
  return client;
@@ -19,12 +20,18 @@ export function generateGenqlClient({ setReqConfig, createClient, serviceUrl, pa
19
20
  client = null;
20
21
  wsClient = null;
21
22
  }
23
+ let logoutEventAbort = new AbortController();
24
+ registerCallbackOnSrvAuthEvents('logout_event', () => {
25
+ logoutEventAbort === null || logoutEventAbort === void 0 ? void 0 : logoutEventAbort.abort();
26
+ resetClients();
27
+ logoutEventAbort = new AbortController();
28
+ });
22
29
  async function genqlClient(options = {}) {
23
- const { anonymous, headers, abortController, ...rest } = options;
30
+ const { headers, abortController: abortControlleFromOpts, ...rest } = options;
24
31
  if (!serviceUrl()) {
25
- console.warn('requred param srv_url is undefined, please check EnvConfig object!');
32
+ throw Error('requred param srv_url is undefined, please check EnvConfig object!');
26
33
  }
27
- const localAbrotController = createabortControllerAndAbortOnLogoutEvent(abortController);
34
+ const abortControllerlocal = createabortControllerAndAbortOnLogoutEvent(abortControlleFromOpts);
28
35
  return createClient({
29
36
  url: `${serviceUrl()}${path}`,
30
37
  headers: async () => {
@@ -34,19 +41,19 @@ export function generateGenqlClient({ setReqConfig, createClient, serviceUrl, pa
34
41
  ...headers,
35
42
  });
36
43
  },
37
- signal: localAbrotController.signal,
44
+ signal: abortControllerlocal.signal,
38
45
  batch: { batchInterval: 50, maxBatchSize: 100 },
39
46
  ...rest,
40
47
  });
41
48
  }
42
49
  async function genqlClientWs() {
43
50
  if (!wsClient) {
44
- const localAbrotController = createabortControllerAndAbortOnLogoutEvent();
51
+ const aborControllerLocal = createabortControllerAndAbortOnLogoutEvent();
45
52
  wsClient = createClient({
46
53
  url: `${httpToWs(serviceUrl())}${path}`,
47
54
  cache: 'reload',
48
55
  batch: { batchInterval: 50, maxBatchSize: 100 },
49
- signal: localAbrotController.signal,
56
+ signal: aborControllerLocal.signal,
50
57
  subscription: {
51
58
  reconnect: true,
52
59
  reconnectionAttempts: 5,
@@ -56,13 +63,11 @@ export function generateGenqlClient({ setReqConfig, createClient, serviceUrl, pa
56
63
  }
57
64
  return wsClient;
58
65
  }
59
- function createabortControllerAndAbortOnLogoutEvent(abortController) {
60
- let localAbrotController = abortController || new AbortController();
61
- const { unregister } = registerCallbackOnSrvAuthEvents('logout_event', () => {
62
- localAbrotController === null || localAbrotController === void 0 ? void 0 : localAbrotController.abort();
63
- resetClients();
64
- unregister();
65
- });
66
+ function createabortControllerAndAbortOnLogoutEvent(abortControllerFromFnSig) {
67
+ const localAbrotController = abortControllerFromFnSig || new AbortController();
68
+ logoutEventAbort.signal.onabort = () => {
69
+ localAbrotController.abort();
70
+ };
66
71
  return localAbrotController;
67
72
  }
68
73
  return { getGenqlClient, resetGenqlClient, genqlClient, genqlClientWs };
@@ -1 +1 @@
1
- {"version":3,"file":"generateGenqlClient.js","sourceRoot":"","sources":["../../src/helpers/generateGenqlClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateGenqlClient.js","sourceRoot":"","sources":["../../src/helpers/generateGenqlClient.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export declare const dispatchSrvAuthEvents: <Key extends "logout_event" | "jwt_c
9
9
  }[Key_1]) => void) => {
10
10
  unregister: () => void;
11
11
  };
12
+ declare function dispatchLogoutEvent(): void;
12
13
  export declare function generateSrvAuthBindings<FeatureEnums = never>(SRV_AUTH: () => string, DEVELOPMENT: () => boolean, EnvironmentToOperateFn: () => string, logout?: () => void): {
13
14
  hasFeature: (featureName: FeatureEnums) => boolean;
14
15
  getFeatures: () => Set<FeatureEnums> | undefined;
@@ -18,7 +19,7 @@ export declare function generateSrvAuthBindings<FeatureEnums = never>(SRV_AUTH:
18
19
  features: FeatureEnums[];
19
20
  }, any> | undefined>;
20
21
  srvAuthGet: <R>(url: string, headers?: Record<string, string>) => Promise<AxiosResponse<R, any> | undefined>;
21
- signoutAuth: () => Promise<void>;
22
+ signoutAuth: typeof dispatchLogoutEvent;
22
23
  setReqConfig: <T = unknown>(data?: T | undefined, responseType?: ResponseType) => Promise<{
23
24
  data: T | undefined;
24
25
  responseType: ResponseType | undefined;
@@ -48,4 +49,5 @@ export declare function generateSrvAuthBindings<FeatureEnums = never>(SRV_AUTH:
48
49
  *
49
50
  */
50
51
  export declare function generateSrvAuthBindingsMicroApp(SRV_AUTH: () => string, DEVELOPMENT: () => boolean, ENVIRONMENT_TO_OPERATE: () => EnvironmentEnums, logout?: () => void): {};
52
+ export {};
51
53
  //# sourceMappingURL=generateSrvAuthBindings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateSrvAuthBindings.d.ts","sourceRoot":"","sources":["../../src/helpers/generateSrvAuthBindings.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAA;AAEpE,OAAO,EAAE,gBAAgB,EAAY,MAAM,IAAI,CAAA;AAI/C,eAAO,MAAkB,qBAAqB;iBAC7B,EAAE;kBACD,EAAE;sDAFsC,+BAA+B;iBACxE,EAAE;kBACD,EAAE;;;CACD,CAAA;AAEnB,wBAAgB,uBAAuB,CAAC,YAAY,GAAG,KAAK,EACxD,QAAQ,EAAE,MAAM,MAAM,EACtB,WAAW,EAAE,MAAM,OAAO,EAC1B,sBAAsB,EAAE,MAAM,MAAM,EACpC,MAAM,CAAC,EAAE,MAAM,IAAI;8BAkMc,YAAY;;;kBA9GlB,MAAM,YAAY,OAAO,MAAM,EAAE,MAAM,CAAC;eACxB,MAAM;kBAAY,YAAY,EAAE;;yBAvDzC,MAAM,YAAY,OAAO,MAAM,EAAE,MAAM,CAAC;;qEA4GR,YAAY;;;;;;;IAsE1E;;OAEG;;;;;;;qBAtGe,MAAM;;iBAwES,MAAM;aAAO,MAAM;;;iCA3GtB,OAAO;EAsJ5C;AACD;;;GAGG;AACH,wBAAgB,+BAA+B,CAC3C,QAAQ,EAAE,MAAM,MAAM,EACtB,WAAW,EAAE,MAAM,OAAO,EAC1B,sBAAsB,EAAE,MAAM,gBAAgB,EAC9C,MAAM,CAAC,EAAE,MAAM,IAAI,MAMtB"}
1
+ {"version":3,"file":"generateSrvAuthBindings.d.ts","sourceRoot":"","sources":["../../src/helpers/generateSrvAuthBindings.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAA;AAEpE,OAAO,EAAE,gBAAgB,EAAY,MAAM,IAAI,CAAA;AAI/C,eAAO,MAAkB,qBAAqB;iBAC7B,EAAE;kBACD,EAAE;sDAFsC,+BAA+B;iBACxE,EAAE;kBACD,EAAE;;;CACD,CAAA;AAEnB,iBAAS,mBAAmB,SAE3B;AAKD,wBAAgB,uBAAuB,CAAC,YAAY,GAAG,KAAK,EACxD,QAAQ,EAAE,MAAM,MAAM,EACtB,WAAW,EAAE,MAAM,OAAO,EAC1B,sBAAsB,EAAE,MAAM,MAAM,EACpC,MAAM,CAAC,EAAE,MAAM,IAAI;8BAkLc,YAAY;;;kBAtGlB,MAAM,YAAY,OAAO,MAAM,EAAE,MAAM,CAAC;eACxB,MAAM;kBAAY,YAAY,EAAE;;yBAvDzC,MAAM,YAAY,OAAO,MAAM,EAAE,MAAM,CAAC;;qEAoGR,YAAY;;;;;;;IAsE1E;;OAEG;;;;;;;qBAtGe,MAAM;;iBAwES,MAAM;aAAO,MAAM;;;iCAlGtB,OAAO;EA6I5C;AACD;;;GAGG;AACH,wBAAgB,+BAA+B,CAC3C,QAAQ,EAAE,MAAM,MAAM,EACtB,WAAW,EAAE,MAAM,OAAO,EAC1B,sBAAsB,EAAE,MAAM,gBAAgB,EAC9C,MAAM,CAAC,EAAE,MAAM,IAAI,MAMtB"}
@@ -3,6 +3,12 @@ import { EventBus } from 'asma-event-bus/lib/event-buss';
3
3
  import { EnvironmentEnums, parseJwt } from '..';
4
4
  //let logoutsuccesfull = false
5
5
  export const { dispatch: dispatchSrvAuthEvents, register: registerCallbackOnSrvAuthEvents } = EventBus('auth-bindings');
6
+ function dispatchLogoutEvent() {
7
+ dispatchSrvAuthEvents('logout_event', {}, false);
8
+ }
9
+ function dispatchJwtChangedEvent() {
10
+ dispatchSrvAuthEvents('jwt_changed', {}, false);
11
+ }
6
12
  export function generateSrvAuthBindings(SRV_AUTH, DEVELOPMENT, EnvironmentToOperateFn, logout) {
7
13
  var _a;
8
14
  if (logout) {
@@ -14,14 +20,8 @@ export function generateSrvAuthBindings(SRV_AUTH, DEVELOPMENT, EnvironmentToOper
14
20
  let jwtToken = '';
15
21
  let features;
16
22
  let parsed_jwt;
17
- /* let fetchJwtPromise: Promise<{
18
- data: { message: string; token?: string; features?: FeatureEnums[]; errors: { message: string }[] }
19
- }> | null = null */
20
23
  const isJwtInvalid = () => (jwtToken && accessTokenHasExpired()) || !jwtToken;
21
24
  const isJwtValid = () => !isJwtInvalid();
22
- //function cancelRequest() {
23
- // return logoutsuccesfull
24
- // }
25
25
  const promiseRegistry = {};
26
26
  async function srvAuthGet(url, headers) {
27
27
  if (DEVELOPMENT() && EnvironmentToOperateFn()) {
@@ -61,13 +61,11 @@ export function generateSrvAuthBindings(SRV_AUTH, DEVELOPMENT, EnvironmentToOper
61
61
  const tokenObj = getParsedJwt();
62
62
  const accessTokenExpDate = (tokenObj === null || tokenObj === void 0 ? void 0 : tokenObj.exp) || 0;
63
63
  const nowTime = Math.floor(new Date().getTime() / 1000);
64
- //set exp time -20sec for token to be refreshed early
65
64
  return accessTokenExpDate - 10 <= nowTime;
66
65
  }
67
66
  async function signin(url, headers) {
68
67
  const data = await srvAuthGet(url, headers);
69
68
  setAuthData(data === null || data === void 0 ? void 0 : data.data);
70
- // logoutsuccesfull = false
71
69
  return data;
72
70
  }
73
71
  const { unregister } = registerCallbackOnSrvAuthEvents('logout_event', () => {
@@ -75,10 +73,6 @@ export function generateSrvAuthBindings(SRV_AUTH, DEVELOPMENT, EnvironmentToOper
75
73
  srvAuthGet('/signout');
76
74
  unregister();
77
75
  });
78
- async function signoutAuth() {
79
- dispatchSrvAuthEvents('logout_event', {}, false);
80
- // return srvAuthGet('/signout')
81
- }
82
76
  function getUserId() {
83
77
  var _a;
84
78
  return ((_a = getParsedJwt()) === null || _a === void 0 ? void 0 : _a['user_id']) || '-1';
@@ -89,7 +83,7 @@ export function generateSrvAuthBindings(SRV_AUTH, DEVELOPMENT, EnvironmentToOper
89
83
  features = new Set(data.features);
90
84
  parsed_jwt = parseJwt(jwtToken);
91
85
  }
92
- dispatchSrvAuthEvents('jwt_changed', {}, false);
86
+ dispatchJwtChangedEvent();
93
87
  }
94
88
  function getJwtToken() {
95
89
  return jwtToken;
@@ -123,17 +117,16 @@ export function generateSrvAuthBindings(SRV_AUTH, DEVELOPMENT, EnvironmentToOper
123
117
  } */
124
118
  const data = await srvAuthGet('/token');
125
119
  if (!data || ((_a = data.data) === null || _a === void 0 ? void 0 : _a.errors) || !data.data.token) {
126
- dispatchSrvAuthEvents('logout_event', {}, false);
120
+ dispatchLogoutEvent();
127
121
  return;
128
122
  }
129
123
  setAuthData({ token: data.data.token || '', features: data.data.features || [] });
124
+ return jwtToken;
130
125
  }
131
126
  catch (error) {
132
- dispatchSrvAuthEvents('logout_event', {}, false);
127
+ dispatchLogoutEvent();
133
128
  setAuthData({ token: '', features: [] });
134
129
  console.error(error);
135
- }
136
- finally {
137
130
  return jwtToken;
138
131
  }
139
132
  }
@@ -160,7 +153,7 @@ export function generateSrvAuthBindings(SRV_AUTH, DEVELOPMENT, EnvironmentToOper
160
153
  isJwtValid,
161
154
  signin,
162
155
  srvAuthGet,
163
- signoutAuth,
156
+ signoutAuth: dispatchLogoutEvent,
164
157
  setReqConfig,
165
158
  getJwtTokenAsync,
166
159
  getNewJwtToken,
@@ -1 +1 @@
1
- {"version":3,"file":"generateSrvAuthBindings.js","sourceRoot":"","sources":["../../src/helpers/generateSrvAuthBindings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateSrvAuthBindings.js","sourceRoot":"","sources":["../../src/helpers/generateSrvAuthBindings.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "asma-helpers",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "helpers methods for asma",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib",
@@ -1,10 +1,12 @@
1
1
  import type { AxiosRequestConfig } from 'axios'
2
- import type { ClientOptions, createClient } from '@genql/runtime'
2
+ import type { createClient } from '@genql/runtime'
3
+ import type { ClientOptions } from '@genql/runtime'
3
4
  import { httpToWs } from './Config'
4
5
  import { registerCallbackOnSrvAuthEvents } from './generateSrvAuthBindings'
6
+
5
7
  //import { parseJwt } from '../helpers/parseJwt'
6
8
 
7
- interface CliOptions extends Omit<ClientOptions, 'url'> {
9
+ interface CliOptions extends Omit<ClientOptions, 'url' | 'signal'> {
8
10
  anonymous?: boolean
9
11
  }
10
12
 
@@ -14,14 +16,9 @@ export function generateGenqlClient<T extends ReturnType<typeof createClient>>({
14
16
  serviceUrl,
15
17
  path = '/v1/graphql',
16
18
  }: {
17
- // jwt_exp: number
18
19
  setReqConfig: () => Promise<AxiosRequestConfig<any>>
19
20
  createClient: (options?: ClientOptions | undefined) => T
20
21
  serviceUrl: () => string
21
- /**
22
- * Returns true whenether token and refresh token is epired! this helps to cancel all concurent requests after first request is invalidated.
23
- * @returns true if request should be cancelled
24
- */
25
22
  path?: string
26
23
  }) {
27
24
  let client: T | null = null
@@ -33,9 +30,11 @@ export function generateGenqlClient<T extends ReturnType<typeof createClient>>({
33
30
  wsClient = null
34
31
  }
35
32
 
36
- registerCallbackOnSrvAuthEvents('jwt_changed', resetClients)
33
+ //registerCallbackOnSrvAuthEvents('logout_event', resetClients)
37
34
 
38
35
  async function getGenqlClient() {
36
+ console.log('getGenqlClient', client, serviceUrl())
37
+
39
38
  if (client === null) {
40
39
  client = await genqlClient()
41
40
 
@@ -49,15 +48,24 @@ export function generateGenqlClient<T extends ReturnType<typeof createClient>>({
49
48
  client = null
50
49
  wsClient = null
51
50
  }
51
+ let logoutEventAbort = new AbortController()
52
+
53
+ registerCallbackOnSrvAuthEvents('logout_event', () => {
54
+ logoutEventAbort?.abort()
55
+
56
+ resetClients()
57
+
58
+ logoutEventAbort = new AbortController()
59
+ })
52
60
 
53
61
  async function genqlClient(options: CliOptions & { abortController?: AbortController } = {}): Promise<T> {
54
- const { anonymous, headers, abortController, ...rest } = options
62
+ const { headers, abortController: abortControlleFromOpts, ...rest } = options
55
63
 
56
64
  if (!serviceUrl()) {
57
- console.warn('requred param srv_url is undefined, please check EnvConfig object!')
65
+ throw Error('requred param srv_url is undefined, please check EnvConfig object!')
58
66
  }
59
67
 
60
- const localAbrotController = createabortControllerAndAbortOnLogoutEvent(abortController)
68
+ const abortControllerlocal = createabortControllerAndAbortOnLogoutEvent(abortControlleFromOpts)
61
69
 
62
70
  return createClient({
63
71
  url: `${serviceUrl()}${path}`,
@@ -65,7 +73,7 @@ export function generateGenqlClient<T extends ReturnType<typeof createClient>>({
65
73
  ...(options.anonymous ? {} : (((await setReqConfig()).headers ?? {}) as Record<string, string>)),
66
74
  ...headers,
67
75
  }),
68
- signal: localAbrotController.signal,
76
+ signal: abortControllerlocal.signal,
69
77
  batch: { batchInterval: 50, maxBatchSize: 100 },
70
78
  ...rest,
71
79
  })
@@ -73,13 +81,13 @@ export function generateGenqlClient<T extends ReturnType<typeof createClient>>({
73
81
 
74
82
  async function genqlClientWs() {
75
83
  if (!wsClient) {
76
- const localAbrotController = createabortControllerAndAbortOnLogoutEvent()
84
+ const aborControllerLocal = createabortControllerAndAbortOnLogoutEvent()
77
85
 
78
86
  wsClient = createClient({
79
87
  url: `${httpToWs(serviceUrl())}${path}`,
80
88
  cache: 'reload',
81
89
  batch: { batchInterval: 50, maxBatchSize: 100 },
82
- signal: localAbrotController.signal,
90
+ signal: aborControllerLocal.signal,
83
91
  subscription: {
84
92
  reconnect: true,
85
93
  reconnectionAttempts: 5,
@@ -91,16 +99,12 @@ export function generateGenqlClient<T extends ReturnType<typeof createClient>>({
91
99
  return wsClient
92
100
  }
93
101
 
94
- function createabortControllerAndAbortOnLogoutEvent(abortController?: AbortController) {
95
- let localAbrotController = abortController || new AbortController()
102
+ function createabortControllerAndAbortOnLogoutEvent(abortControllerFromFnSig?: AbortController) {
103
+ const localAbrotController = abortControllerFromFnSig || new AbortController()
96
104
 
97
- const { unregister } = registerCallbackOnSrvAuthEvents('logout_event', () => {
98
- localAbrotController?.abort()
99
-
100
- resetClients()
101
-
102
- unregister()
103
- })
105
+ logoutEventAbort.signal.onabort = () => {
106
+ localAbrotController.abort()
107
+ }
104
108
 
105
109
  return localAbrotController
106
110
  }
@@ -9,6 +9,13 @@ export const { dispatch: dispatchSrvAuthEvents, register: registerCallbackOnSrvA
9
9
  logout_event: {}
10
10
  }>('auth-bindings')
11
11
 
12
+ function dispatchLogoutEvent() {
13
+ dispatchSrvAuthEvents('logout_event', {}, false)
14
+ }
15
+ function dispatchJwtChangedEvent() {
16
+ dispatchSrvAuthEvents('jwt_changed', {}, false)
17
+ }
18
+
12
19
  export function generateSrvAuthBindings<FeatureEnums = never>(
13
20
  SRV_AUTH: () => string,
14
21
  DEVELOPMENT: () => boolean,
@@ -29,18 +36,10 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
29
36
 
30
37
  let parsed_jwt: unknown | undefined
31
38
 
32
- /* let fetchJwtPromise: Promise<{
33
- data: { message: string; token?: string; features?: FeatureEnums[]; errors: { message: string }[] }
34
- }> | null = null */
35
-
36
39
  const isJwtInvalid = () => (jwtToken && accessTokenHasExpired()) || !jwtToken
37
40
 
38
41
  const isJwtValid = () => !isJwtInvalid()
39
42
 
40
- //function cancelRequest() {
41
- // return logoutsuccesfull
42
- // }
43
-
44
43
  const promiseRegistry: Record<string, Promise<unknown>> = <{}>{}
45
44
 
46
45
  async function srvAuthGet<R>(url: string, headers?: Record<string, string>) {
@@ -74,6 +73,7 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
74
73
  if (!promiseRegistry[url]) {
75
74
  promiseRegistry[url] = promise
76
75
  }
76
+
77
77
  try {
78
78
  const res = await promise
79
79
 
@@ -93,7 +93,6 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
93
93
 
94
94
  const nowTime = Math.floor(new Date().getTime() / 1000)
95
95
 
96
- //set exp time -20sec for token to be refreshed early
97
96
  return accessTokenExpDate - 10 <= nowTime
98
97
  }
99
98
 
@@ -102,8 +101,6 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
102
101
 
103
102
  setAuthData(data?.data)
104
103
 
105
- // logoutsuccesfull = false
106
-
107
104
  return data
108
105
  }
109
106
 
@@ -115,12 +112,6 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
115
112
  unregister()
116
113
  })
117
114
 
118
- async function signoutAuth() {
119
- dispatchSrvAuthEvents('logout_event', {}, false)
120
-
121
- // return srvAuthGet('/signout')
122
- }
123
-
124
115
  function getUserId(): string {
125
116
  return getParsedJwt()?.['user_id'] || '-1'
126
117
  }
@@ -134,7 +125,7 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
134
125
  parsed_jwt = parseJwt(jwtToken)
135
126
  }
136
127
 
137
- dispatchSrvAuthEvents('jwt_changed', {}, false)
128
+ dispatchJwtChangedEvent()
138
129
  }
139
130
 
140
131
  function getJwtToken() {
@@ -176,19 +167,19 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
176
167
  const data = await srvAuthGet<{ errors?: string; token: string; features: FeatureEnums[] }>('/token')
177
168
 
178
169
  if (!data || data.data?.errors || !data.data.token) {
179
- dispatchSrvAuthEvents('logout_event', {}, false)
170
+ dispatchLogoutEvent()
180
171
 
181
172
  return
182
173
  }
183
174
 
184
175
  setAuthData({ token: data.data.token || '', features: data.data.features || [] })
176
+ return jwtToken
185
177
  } catch (error) {
186
- dispatchSrvAuthEvents('logout_event', {}, false)
178
+ dispatchLogoutEvent()
187
179
 
188
180
  setAuthData({ token: '', features: [] })
189
181
 
190
182
  console.error(error)
191
- } finally {
192
183
  return jwtToken
193
184
  }
194
185
  }
@@ -217,7 +208,7 @@ export function generateSrvAuthBindings<FeatureEnums = never>(
217
208
  isJwtValid,
218
209
  signin,
219
210
  srvAuthGet,
220
- signoutAuth,
211
+ signoutAuth: dispatchLogoutEvent,
221
212
  setReqConfig,
222
213
  getJwtTokenAsync,
223
214
  getNewJwtToken,