@bitblit/ratchet-graphql 6.1.198-alpha → 6.1.200-alpha

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.
@@ -0,0 +1,10 @@
1
+ import { GraphqlRatchetEndpointProvider } from './provider/graphql-ratchet-endpoint-provider.js';
2
+ import { GraphqlRatchetJwtTokenProvider } from './provider/graphql-ratchet-jwt-token-provider.js';
3
+ import { GraphqlRatchetQueryProvider } from './provider/graphql-ratchet-query-provider.js';
4
+ import { GraphqlRatchetErrorHandler } from './provider/graphql-ratchet-error-handler.js';
5
+ export interface GraphqlRatchetOptions {
6
+ queryProvider: GraphqlRatchetQueryProvider;
7
+ endpointProvider: GraphqlRatchetEndpointProvider;
8
+ jwtTokenProvider?: GraphqlRatchetJwtTokenProvider;
9
+ errorHandler?: GraphqlRatchetErrorHandler;
10
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=graphql-ratchet-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql-ratchet-options.js","sourceRoot":"","sources":["../../src/graphql/graphql-ratchet-options.ts"],"names":[],"mappings":""}
@@ -1,17 +1,11 @@
1
- import { GraphqlRatchetEndpointProvider } from './provider/graphql-ratchet-endpoint-provider.js';
2
- import { GraphqlRatchetJwtTokenProvider } from './provider/graphql-ratchet-jwt-token-provider.js';
3
- import { GraphqlRatchetQueryProvider } from './provider/graphql-ratchet-query-provider.js';
4
- import { GraphqlRatchetErrorHandler } from './provider/graphql-ratchet-error-handler.js';
5
- import { AuthorizationStyle } from './authorization-style.js';
1
+ import { AuthorizationStyle } from "./authorization-style.js";
2
+ import { GraphqlRatchetOptions } from "./graphql-ratchet-options.ts";
6
3
  export declare class GraphqlRatchet {
7
- private queryProvider;
8
- private endpointProvider;
9
- private jwtTokenProvider?;
10
- private errorHandler;
11
4
  private clientCache;
12
5
  private noAuthClient;
13
6
  private cachedEndpoint;
14
- constructor(queryProvider: GraphqlRatchetQueryProvider, endpointProvider: GraphqlRatchetEndpointProvider, jwtTokenProvider?: GraphqlRatchetJwtTokenProvider, errorHandler?: GraphqlRatchetErrorHandler);
7
+ private ops;
8
+ constructor(opsIn: GraphqlRatchetOptions);
15
9
  currentAuthToken(): string;
16
10
  fetchQueryText(qry: string): Promise<string>;
17
11
  private createAnonymousApi;
@@ -1,33 +1,28 @@
1
- import { DefaultGraphqlRatchetErrorHandler } from './provider/default-graphql-ratchet-error-handler.js';
2
- import { RequireRatchet } from '@bitblit/ratchet-common/lang/require-ratchet';
3
- import { Logger } from '@bitblit/ratchet-common/logger/logger';
4
- import { ErrorRatchet } from '@bitblit/ratchet-common/lang/error-ratchet';
5
- import { StringRatchet } from '@bitblit/ratchet-common/lang/string-ratchet';
6
- import { GraphQLClient } from 'graphql-request';
7
- import { AuthorizationStyle } from './authorization-style.js';
1
+ import { DefaultGraphqlRatchetErrorHandler } from "./provider/default-graphql-ratchet-error-handler.js";
2
+ import { RequireRatchet } from "@bitblit/ratchet-common/lang/require-ratchet";
3
+ import { Logger } from "@bitblit/ratchet-common/logger/logger";
4
+ import { ErrorRatchet } from "@bitblit/ratchet-common/lang/error-ratchet";
5
+ import { StringRatchet } from "@bitblit/ratchet-common/lang/string-ratchet";
6
+ import { GraphQLClient } from "graphql-request";
7
+ import { AuthorizationStyle } from "./authorization-style.js";
8
8
  export class GraphqlRatchet {
9
- queryProvider;
10
- endpointProvider;
11
- jwtTokenProvider;
12
- errorHandler;
13
9
  clientCache = new Map();
14
10
  noAuthClient;
15
11
  cachedEndpoint;
16
- constructor(queryProvider, endpointProvider, jwtTokenProvider, errorHandler = new DefaultGraphqlRatchetErrorHandler()) {
17
- this.queryProvider = queryProvider;
18
- this.endpointProvider = endpointProvider;
19
- this.jwtTokenProvider = jwtTokenProvider;
20
- this.errorHandler = errorHandler;
21
- RequireRatchet.notNullOrUndefined(queryProvider, 'queryProvider');
22
- RequireRatchet.notNullOrUndefined(endpointProvider, 'endpointProvider');
23
- RequireRatchet.notNullOrUndefined(errorHandler, 'errorHandler');
24
- this.cachedEndpoint = this.endpointProvider.fetchGraphqlEndpoint();
12
+ ops;
13
+ constructor(opsIn) {
14
+ RequireRatchet.notNullOrUndefined(opsIn, 'opsIn');
15
+ RequireRatchet.notNullOrUndefined(opsIn.queryProvider, 'queryProvider');
16
+ RequireRatchet.notNullOrUndefined(opsIn.endpointProvider, 'endpointProvider');
17
+ RequireRatchet.notNullOrUndefined(opsIn.errorHandler, 'errorHandler');
18
+ this.ops = Object.assign({ errorHandler: new DefaultGraphqlRatchetErrorHandler() }, opsIn);
19
+ this.cachedEndpoint = this.ops.endpointProvider.fetchGraphqlEndpoint();
25
20
  }
26
21
  currentAuthToken() {
27
- return this?.jwtTokenProvider?.fetchJwtToken();
22
+ return this?.ops?.jwtTokenProvider?.fetchJwtToken();
28
23
  }
29
24
  async fetchQueryText(qry) {
30
- const text = await this.queryProvider.fetchQueryText(qry);
25
+ const text = await this.ops.queryProvider.fetchQueryText(qry);
31
26
  if (!text) {
32
27
  Logger.warn('Could not find requested query : %s', qry);
33
28
  }
@@ -39,8 +34,8 @@ export class GraphqlRatchet {
39
34
  return rval;
40
35
  }
41
36
  fetchApi(authStyle) {
42
- let rval = null;
43
- const jwtToken = authStyle === AuthorizationStyle.AlwaysAnonymous ? null : StringRatchet.trimToNull(this?.jwtTokenProvider?.fetchJwtToken());
37
+ let rval;
38
+ const jwtToken = authStyle === AuthorizationStyle.AlwaysAnonymous ? null : StringRatchet.trimToNull(this.ops.jwtTokenProvider?.fetchJwtToken());
44
39
  if (authStyle === AuthorizationStyle.TokenRequired && !jwtToken) {
45
40
  throw ErrorRatchet.fErr('No token provided, auth style is TokenRequired');
46
41
  }
@@ -82,7 +77,7 @@ export class GraphqlRatchet {
82
77
  return rval;
83
78
  }
84
79
  checkIfEndpointChanged() {
85
- const check = this.endpointProvider.fetchGraphqlEndpoint();
80
+ const check = this.ops.endpointProvider.fetchGraphqlEndpoint();
86
81
  if (check !== this.cachedEndpoint) {
87
82
  Logger.info('Endpoint changed from %s to %s - clearing apollo caches');
88
83
  this.clientCache = new Map();
@@ -128,7 +123,7 @@ export class GraphqlRatchet {
128
123
  }
129
124
  catch (err) {
130
125
  Logger.silly('Exception caught in executeQuery : %s %s %j %s', err, queryName, variables, authStyle, err);
131
- this.errorHandler.handleError(err, queryName, variables, authStyle);
126
+ this.ops.errorHandler.handleError(err, queryName, variables, authStyle);
132
127
  }
133
128
  return rval;
134
129
  }
@@ -149,7 +144,7 @@ export class GraphqlRatchet {
149
144
  }
150
145
  }
151
146
  catch (err) {
152
- this.errorHandler.handleError(err, queryName, variables, authStyle);
147
+ this.ops.errorHandler.handleError(err, queryName, variables, authStyle);
153
148
  }
154
149
  return rval;
155
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"graphql-ratchet.js","sourceRoot":"","sources":["../../src/graphql/graphql-ratchet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphql-ratchet.js","sourceRoot":"","sources":["../../src/graphql/graphql-ratchet.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitblit/ratchet-graphql",
3
- "version": "6.1.198-alpha",
3
+ "version": "6.1.200-alpha",
4
4
  "description": "Ratchet tools to simplify use of graphql",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -47,12 +47,12 @@
47
47
  },
48
48
  "license": "Apache-2.0",
49
49
  "dependencies": {
50
- "@bitblit/ratchet-common": "6.1.198-alpha",
50
+ "@bitblit/ratchet-common": "6.1.200-alpha",
51
51
  "graphql": "16.12.0",
52
52
  "graphql-request": "7.4.0"
53
53
  },
54
54
  "peerDependencies": {
55
- "@bitblit/ratchet-common": "6.1.198-alpha",
55
+ "@bitblit/ratchet-common": "6.1.200-alpha",
56
56
  "graphql": "^16.12.0",
57
57
  "graphql-request": "^7.4.0"
58
58
  },
@@ -0,0 +1,12 @@
1
+ import { GraphqlRatchetEndpointProvider } from './provider/graphql-ratchet-endpoint-provider.js';
2
+ import { GraphqlRatchetJwtTokenProvider } from './provider/graphql-ratchet-jwt-token-provider.js';
3
+ import { GraphqlRatchetQueryProvider } from './provider/graphql-ratchet-query-provider.js';
4
+ import { GraphqlRatchetErrorHandler } from './provider/graphql-ratchet-error-handler.js';
5
+
6
+ export interface GraphqlRatchetOptions {
7
+ queryProvider: GraphqlRatchetQueryProvider;
8
+ endpointProvider: GraphqlRatchetEndpointProvider;
9
+ jwtTokenProvider?: GraphqlRatchetJwtTokenProvider;
10
+ errorHandler?: GraphqlRatchetErrorHandler;
11
+ }
12
+
@@ -1,7 +1,8 @@
1
- import { describe, expect, test } from 'vitest';
2
- import { GraphqlRatchet } from './graphql-ratchet';
3
- import { StringRecordQueryProvider } from './provider/string-record-query-provider';
4
- import { DefaultGraphqlRatchetEndpointProvider } from './provider/default-graphql-ratchet-endpoint-provider';
1
+ import { describe, expect, test } from "vitest";
2
+ import { GraphqlRatchet } from "./graphql-ratchet";
3
+ import { StringRecordQueryProvider } from "./provider/string-record-query-provider";
4
+ import { DefaultGraphqlRatchetEndpointProvider } from "./provider/default-graphql-ratchet-endpoint-provider";
5
+ import { AuthorizationStyle } from "./authorization-style";
5
6
 
6
7
  describe('#runTest', function () {
7
8
  test.skip('should pull defaults', async () => {
@@ -35,8 +36,8 @@ describe('#runTest', function () {
35
36
  );
36
37
 
37
38
  // Since this'll be self-signed
38
- process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = '0';
39
- const out: any = await gr.executeQuery<any>('q', {}, true);
39
+ // process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = '0';
40
+ const out: any = await gr.executeQuery<any>('q', {}, AuthorizationStyle.AnonymousIfNoTokenAvailable);
40
41
  expect(out).toBeTruthy();
41
42
  });
42
43
  });
@@ -1,15 +1,12 @@
1
- import { GraphqlRatchetEndpointProvider } from './provider/graphql-ratchet-endpoint-provider.js';
2
- import { GraphqlRatchetJwtTokenProvider } from './provider/graphql-ratchet-jwt-token-provider.js';
3
- import { GraphqlRatchetQueryProvider } from './provider/graphql-ratchet-query-provider.js';
4
- import { GraphqlRatchetErrorHandler } from './provider/graphql-ratchet-error-handler.js';
5
- import { DefaultGraphqlRatchetErrorHandler } from './provider/default-graphql-ratchet-error-handler.js';
6
-
7
- import { RequireRatchet } from '@bitblit/ratchet-common/lang/require-ratchet';
8
- import { Logger } from '@bitblit/ratchet-common/logger/logger';
9
- import { ErrorRatchet } from '@bitblit/ratchet-common/lang/error-ratchet';
10
- import { StringRatchet } from '@bitblit/ratchet-common/lang/string-ratchet';
11
- import { GraphQLClient } from 'graphql-request';
12
- import { AuthorizationStyle } from './authorization-style.js';
1
+ import { DefaultGraphqlRatchetErrorHandler } from "./provider/default-graphql-ratchet-error-handler.js";
2
+
3
+ import { RequireRatchet } from "@bitblit/ratchet-common/lang/require-ratchet";
4
+ import { Logger } from "@bitblit/ratchet-common/logger/logger";
5
+ import { ErrorRatchet } from "@bitblit/ratchet-common/lang/error-ratchet";
6
+ import { StringRatchet } from "@bitblit/ratchet-common/lang/string-ratchet";
7
+ import { GraphQLClient } from "graphql-request";
8
+ import { AuthorizationStyle } from "./authorization-style.js";
9
+ import { GraphqlRatchetOptions } from "./graphql-ratchet-options.ts";
13
10
 
14
11
  /**
15
12
  * This is a very simplistic client for non-cache use cases, etc. For more
@@ -20,26 +17,26 @@ export class GraphqlRatchet {
20
17
  private noAuthClient: GraphQLClient;
21
18
 
22
19
  private cachedEndpoint: string;
20
+ private ops: GraphqlRatchetOptions;
23
21
 
24
22
  constructor(
25
- private queryProvider: GraphqlRatchetQueryProvider,
26
- private endpointProvider: GraphqlRatchetEndpointProvider,
27
- private jwtTokenProvider?: GraphqlRatchetJwtTokenProvider,
28
- private errorHandler: GraphqlRatchetErrorHandler = new DefaultGraphqlRatchetErrorHandler(),
23
+ opsIn: GraphqlRatchetOptions
29
24
  ) {
30
- RequireRatchet.notNullOrUndefined(queryProvider, 'queryProvider');
31
- RequireRatchet.notNullOrUndefined(endpointProvider, 'endpointProvider');
25
+ RequireRatchet.notNullOrUndefined(opsIn, 'opsIn');
26
+ RequireRatchet.notNullOrUndefined(opsIn.queryProvider, 'queryProvider');
27
+ RequireRatchet.notNullOrUndefined(opsIn.endpointProvider, 'endpointProvider');
32
28
  //RequireRatchet.notNullOrUndefined(jwtTokenProvider, 'jwtTokenProvider');
33
- RequireRatchet.notNullOrUndefined(errorHandler, 'errorHandler');
34
- this.cachedEndpoint = this.endpointProvider.fetchGraphqlEndpoint();
29
+ RequireRatchet.notNullOrUndefined(opsIn.errorHandler, 'errorHandler');
30
+ this.ops = Object.assign({errorHandler: new DefaultGraphqlRatchetErrorHandler()}, opsIn);
31
+ this.cachedEndpoint = this.ops.endpointProvider.fetchGraphqlEndpoint();
35
32
  }
36
33
 
37
34
  public currentAuthToken(): string {
38
- return this?.jwtTokenProvider?.fetchJwtToken();
35
+ return this?.ops?.jwtTokenProvider?.fetchJwtToken();
39
36
  }
40
37
 
41
38
  public async fetchQueryText(qry: string): Promise<string> {
42
- const text: string = await this.queryProvider.fetchQueryText(qry);
39
+ const text: string = await this.ops.queryProvider.fetchQueryText(qry);
43
40
  if (!text) {
44
41
  Logger.warn('Could not find requested query : %s', qry);
45
42
  }
@@ -48,14 +45,14 @@ export class GraphqlRatchet {
48
45
 
49
46
  private createAnonymousApi(): GraphQLClient {
50
47
  Logger.info('Creating anonymous GraphQLClient');
51
- const rval: GraphQLClient = new GraphQLClient(this.cachedEndpoint, { errorPolicy: 'none' });
48
+ const rval: GraphQLClient = new GraphQLClient(this.cachedEndpoint, { errorPolicy: 'none' });
52
49
  return rval;
53
50
  }
54
51
 
55
52
  private fetchApi(authStyle: AuthorizationStyle): GraphQLClient {
56
- let rval: GraphQLClient = null;
53
+ let rval: GraphQLClient;
57
54
  const jwtToken: string =
58
- authStyle === AuthorizationStyle.AlwaysAnonymous ? null : StringRatchet.trimToNull(this?.jwtTokenProvider?.fetchJwtToken());
55
+ authStyle === AuthorizationStyle.AlwaysAnonymous ? null : StringRatchet.trimToNull(this.ops.jwtTokenProvider?.fetchJwtToken());
59
56
  if (authStyle === AuthorizationStyle.TokenRequired && !jwtToken) {
60
57
  throw ErrorRatchet.fErr('No token provided, auth style is TokenRequired');
61
58
  }
@@ -98,7 +95,7 @@ export class GraphqlRatchet {
98
95
  }
99
96
 
100
97
  private checkIfEndpointChanged(): void {
101
- const check: string = this.endpointProvider.fetchGraphqlEndpoint();
98
+ const check: string = this.ops.endpointProvider.fetchGraphqlEndpoint();
102
99
  if (check !== this.cachedEndpoint) {
103
100
  Logger.info('Endpoint changed from %s to %s - clearing apollo caches');
104
101
  this.clientCache = new Map<string, GraphQLClient>();
@@ -148,7 +145,7 @@ export class GraphqlRatchet {
148
145
  }
149
146
  } catch (err) {
150
147
  Logger.silly('Exception caught in executeQuery : %s %s %j %s', err, queryName, variables, authStyle, err);
151
- this.errorHandler.handleError(err, queryName, variables, authStyle);
148
+ this.ops.errorHandler.handleError(err, queryName, variables, authStyle);
152
149
  }
153
150
  return rval;
154
151
  }
@@ -172,7 +169,7 @@ export class GraphqlRatchet {
172
169
  ErrorRatchet.throwFormattedErr('Cannot run - no api fetched');
173
170
  }
174
171
  } catch (err) {
175
- this.errorHandler.handleError(err, queryName, variables, authStyle);
172
+ this.ops.errorHandler.handleError(err, queryName, variables, authStyle);
176
173
  }
177
174
 
178
175
  return rval;