@remkoj/optimizely-graph-client 2.1.0 → 3.0.0

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/README.md CHANGED
@@ -5,7 +5,12 @@ An extension of the [graphql-request](https://www.npmjs.com/package/graphql-requ
5
5
  - [1. Provided services](#1-provided-services)
6
6
  - [2. Usage example](#2-usage-example)
7
7
  - [2.1. GraphQL Client](#21-graphql-client)
8
- - [2.2. Admin API](#22-admin-api)
8
+ - [2.2. GraphQL Client Authentication](#22-graphql-client-authentication)
9
+ - [2.2.1. Graph Keys](#221-graph-keys)
10
+ - [2.2.2. Token passthrough](#222-token-passthrough)
11
+ - [2.2.3. OpenID Connect](#223-openid-connect)
12
+ - [2.2.4. Token passthrough](#224-token-passthrough)
13
+ - [2.3. Admin API](#23-admin-api)
9
14
  - [3. Configuration](#3-configuration)
10
15
  - [3.1. Advanced Features](#31-advanced-features)
11
16
 
@@ -70,7 +75,60 @@ const channels = new ChannelRepository(client)
70
75
  const allChannels = await channels.getAll()
71
76
  ```
72
77
 
73
- ### 2.2. Admin API
78
+ ### 2.2. GraphQL Client Authentication
79
+ Optimizely Graph allows restricted content to be queried, using either of the following patterns:
80
+
81
+ * **Graph Keys**: Admin authentication using Graph Sercet Key and App Key
82
+ * **Token passthrough**: Used by CMS preview/edit mode to provide a short lived access token to query the content to be previewed/edited. [Read more](https://docs.developers.optimizely.com/platform-optimizely/v1.4.0-optimizely-graph/docs/on-page-editing-using-content-graph)
83
+ * **OpenID Connect**: Used by the frontend to pass through OpenID Connect based JWT to authorize content. [Read more](https://docs.developers.optimizely.com/platform-optimizely/v1.4.0-optimizely-graph/docs/opti-id)
84
+ * **Generic Login**: Used by the fronend to pass through the username/roles from a trusted identity provider. [Read more](https://docs.developers.optimizely.com/platform-optimizely/v1.4.0-optimizely-graph/docs/basic-auth-from-backend)
85
+
86
+ #### 2.2.1. Graph Keys
87
+ The Graph Keys authentication mechanism can be enabled by providing the App Secret and App Key as part of the configuration. Then depending on your security policy, use either:
88
+
89
+ - Basic Authentication: `client.updateAuthentication(AuthMode.Basic)`
90
+ - HMAC Authentication: `client.updateAuthentication(AuthMode.HMAC)`
91
+
92
+ HMAC provides slightly better security as it both ensures message integrity and never transmits the App Secret in a decryptable form.
93
+
94
+ #### 2.2.2. Token passthrough
95
+ This method of authentication is specific to Optimizely CMS, where the edit UI will provide a short-lived token that allows access to the content that is being edited. This only requires the Single Key to be known.
96
+
97
+ ```typescript
98
+ const tokenValue: string = ''; //Your token value here
99
+ client.updateAuthentication(tokenValue)
100
+ ```
101
+
102
+ #### 2.2.3. OpenID Connect
103
+ This method requires two steps, first, the client must be configured with the Turnstile Tenant ID, secondly the JWT Token of the OIDC provider must be added to the client.
104
+
105
+ ```typescript
106
+ const client = createClient({
107
+ single_key: "your_single_key",
108
+ tenant_id: "your_turnstile_tenant_id"
109
+ })
110
+ const tokenValue: string = ''; //Your OIDC JWT Token
111
+ client.updateAuthentication(tokenValue)
112
+ ```
113
+
114
+ #### 2.2.4. Token passthrough
115
+ This method works with non-OIDC compliant identity providers, but requires a trusted connection with Optimizely Graph. As such, it requires the Graph Keys to ensure that the client is authorized to pass in the username and roles directly.
116
+
117
+ The roles must be provided as a comma separated list, without spaces around the values. Both the username and roles must exactly match the roles and usernames defined in Optimizely CMS.
118
+
119
+ ```typescript
120
+ const client = createClient({
121
+ single_key: "your_single_key",
122
+ app_key: "your_app_key",
123
+ secret: "your_secret"
124
+ })
125
+ client.setFrontendUser({
126
+ username: "your_username",
127
+ roles: "list_of_roles"
128
+ })
129
+ ```
130
+
131
+ ### 2.3. Admin API
74
132
  ***Warning***: The AdminAPI of Optimizely Graph requires your App Key & Secret as it allows full management of the service. When used in a browser, take all needed steps to prevent leaking of these credentials.
75
133
 
76
134
  ```typescript
@@ -98,6 +156,7 @@ The following configuration options are available, the table lists both the envi
98
156
  | `OPTIMIZELY_GRAPH_SINGLE_KEY` | single_key | yes | The key needed for public, read-only access |
99
157
  | `OPTIMIZELY_GRAPH_SECRET` | secret | no | The Optimizely Graph secret for write access, this value must never be made available in a browser |
100
158
  | `OPTIMIZELY_GRAPH_APP_KEY` | app_key | no | The Optimizely Graph app_key for write access, this value must never be made available in a browser |
159
+ | `OPTIMIZELY_GRAPH_TENANT_ID` | tenant_id | no | The Optimizely Graph Tenant ID.<br/><br/>*Only required when using OIDC Authentication* |
101
160
  | `SITE_DOMAIN` | deploy_domain | no | The domain of the frontend |
102
161
  | `OPTIMIZELY_CMS_URL` | dxp_url | yes | The domain where the CMS has been installed |
103
162
  | `OPTIMIZELY_CMS_SCHEMA` | opti_cms_schema | no | The marker for the CMS schema version, which can be used by services and the implementation. Valid values are: `OPTI-CMS-12` and `OPTI-CMS-13`. The default value is `OPTI-CMS-13` |
@@ -11,7 +11,7 @@ export class OptimizelyGraphAdminApi {
11
11
  constructor(config, HttpRequest = FetchHttpRequest) {
12
12
  this.request = new HttpRequest({
13
13
  BASE: config?.BASE ?? 'https://prod.cg.optimizely.com',
14
- VERSION: config?.VERSION ?? '3.12.0',
14
+ VERSION: config?.VERSION ?? '3.13.0',
15
15
  WITH_CREDENTIALS: config?.WITH_CREDENTIALS ?? false,
16
16
  CREDENTIALS: config?.CREDENTIALS ?? 'include',
17
17
  TOKEN: config?.TOKEN,
@@ -1,6 +1,6 @@
1
1
  export const OpenAPI = {
2
2
  BASE: 'https://prod.cg.optimizely.com',
3
- VERSION: '3.12.0',
3
+ VERSION: '3.13.0',
4
4
  WITH_CREDENTIALS: false,
5
5
  CREDENTIALS: 'include',
6
6
  TOKEN: undefined,
@@ -1,16 +1,18 @@
1
1
  import { type OptimizelyGraphConfigInternal, type OptimizelyGraphConfig } from "../config.js";
2
2
  import { GraphQLClient } from "graphql-request";
3
- import { AuthMode, type RequestMethod, type IOptiGraphClient, type OptiGraphSiteInfo, type IOptiGraphClientFlags, type OptiCmsSchema } from "./types.js";
3
+ import { AuthMode, type RequestMethod, type IOptiGraphClient, type OptiGraphSiteInfo, type IOptiGraphClientFlags, type OptiCmsSchema, type FrontendUser } from "./types.js";
4
4
  import { type FetchAPI } from "../hmac-fetch.js";
5
5
  export declare class ContentGraphClient extends GraphQLClient implements IOptiGraphClient {
6
6
  static readonly ForceHmacToken: string;
7
7
  static readonly ForceBasicAuth: string;
8
8
  protected readonly _config: Readonly<OptimizelyGraphConfigInternal>;
9
+ private _user;
9
10
  private _token;
10
11
  private _hmacFetch;
11
12
  private _flags;
12
13
  get currentOptiCmsSchema(): OptiCmsSchema;
13
14
  get debug(): boolean;
15
+ get frontendUser(): FrontendUser | undefined;
14
16
  protected get token(): string | undefined;
15
17
  protected set token(newValue: string | undefined);
16
18
  protected get hmacFetch(): FetchAPI;
@@ -31,7 +33,7 @@ export declare class ContentGraphClient extends GraphQLClient implements IOptiGr
31
33
  private _oldFlags;
32
34
  updateFlags(newFlags: Partial<IOptiGraphClientFlags>, temporary?: boolean): IOptiGraphClient;
33
35
  restoreFlags(): IOptiGraphClient;
36
+ setFrontendUser(newUser: FrontendUser | null): boolean;
34
37
  protected updateRequestConfig(): void;
35
38
  }
36
- export declare const createClient: (config?: OptimizelyGraphConfig, token?: string | undefined) => IOptiGraphClient;
37
39
  export default ContentGraphClient;
@@ -2,7 +2,7 @@ import { readEnvironmentVariables, applyConfigDefaults, validateConfig } from ".
2
2
  import { GraphQLClient } from "graphql-request";
3
3
  import { AuthMode } from "./types.js";
4
4
  import createHmacFetch from "../hmac-fetch.js";
5
- import { base64encode, isError, validateToken, getAuthMode } from "./utils.js";
5
+ import { base64encode, isError, validateToken, getAuthMode, isValidFrontendUser } from "./utils.js";
6
6
  const defaultFlags = {
7
7
  queryCache: true,
8
8
  cache: true,
@@ -16,6 +16,9 @@ export class ContentGraphClient extends GraphQLClient {
16
16
  get debug() {
17
17
  return this._config.debug ?? false;
18
18
  }
19
+ get frontendUser() {
20
+ return this._user;
21
+ }
19
22
  get token() {
20
23
  return this._token;
21
24
  }
@@ -46,7 +49,7 @@ export class ContentGraphClient extends GraphQLClient {
46
49
  };
47
50
  }
48
51
  get currentAuthMode() {
49
- return getAuthMode(this._token);
52
+ return this._user ? AuthMode.User : getAuthMode(this._token);
50
53
  }
51
54
  constructor(config, token = undefined, flags) {
52
55
  const configFlags = { ...defaultFlags, ...flags };
@@ -67,8 +70,10 @@ export class ContentGraphClient extends GraphQLClient {
67
70
  method: "post",
68
71
  requestMiddleware: request => {
69
72
  if (QUERY_LOG) {
70
- console.log(`🔎 [Optimizely Graph] [Request Query] ${request.body}`);
71
- console.log(`🔖 [Optimizely Graph] [Request Variables] ${JSON.stringify(request.variables)}`);
73
+ console.log(`🔎 [Optimizely Graph] [Request URL] ${request.url}\n
74
+ 🔎 [Optimizely Graph] [Request Headers] ${JSON.stringify(request.headers)}\n
75
+ 🔎 [Optimizely Graph] [Request Query] ${request.body}\n
76
+ 🔖 [Optimizely Graph] [Request Variables] ${JSON.stringify(request.variables)}`);
72
77
  }
73
78
  return request;
74
79
  },
@@ -93,6 +98,7 @@ export class ContentGraphClient extends GraphQLClient {
93
98
  }
94
99
  }
95
100
  });
101
+ this._user = undefined;
96
102
  this.query = (...args) => {
97
103
  //@ts-expect-error
98
104
  return this.request(...args);
@@ -116,6 +122,8 @@ export class ContentGraphClient extends GraphQLClient {
116
122
  updateAuthentication(tokenOrAuthmode) {
117
123
  if (tokenOrAuthmode == AuthMode.Token)
118
124
  throw new Error("❌ [Optimizely Graph] Provide the authentication token to switch to AuthMode.Token");
125
+ if (tokenOrAuthmode == AuthMode.User)
126
+ throw new Error("❌ [Optimizely Graph] User mode authentication automatically activated when setting user information");
119
127
  this.token = tokenOrAuthmode == AuthMode.Public ? undefined : tokenOrAuthmode;
120
128
  this.updateRequestConfig();
121
129
  return this;
@@ -145,6 +153,16 @@ export class ContentGraphClient extends GraphQLClient {
145
153
  this.updateRequestConfig();
146
154
  return this;
147
155
  }
156
+ setFrontendUser(newUser) {
157
+ if (!(this._config.app_key && this._config.secret)) {
158
+ return false;
159
+ }
160
+ if (!isValidFrontendUser(newUser))
161
+ return false;
162
+ this._user = newUser ?? undefined;
163
+ this.updateRequestConfig();
164
+ return true;
165
+ }
148
166
  updateRequestConfig() {
149
167
  // Build headers that are shared across authentication modes
150
168
  const headers = {
@@ -167,6 +185,17 @@ export class ContentGraphClient extends GraphQLClient {
167
185
  this.requestConfig.cache = 'no-store';
168
186
  this.requestConfig.fetch = fetch;
169
187
  break;
188
+ case AuthMode.User:
189
+ if (!isValidFrontendUser(this._user))
190
+ throw new Error('❌ [Optimizely Graph] Invalid frontend user configuration');
191
+ this.setHeaders({
192
+ ...headers,
193
+ 'cg-username': this._user.username,
194
+ 'cg-roles': this._user.roles
195
+ });
196
+ this.requestConfig.cache = 'no-store';
197
+ this.requestConfig.fetch = this.hmacFetch;
198
+ break;
170
199
  case AuthMode.Token:
171
200
  this.setHeaders({
172
201
  ...headers,
@@ -188,11 +217,14 @@ export class ContentGraphClient extends GraphQLClient {
188
217
  if (!this._flags.cache) {
189
218
  this.requestConfig.cache = 'no-store';
190
219
  }
191
- // Update endpoint
220
+ // Build endpoint
192
221
  const serviceUrl = new URL("/content/v2", this._config.gateway);
222
+ if (typeof (this._config.tenant_id) == 'string' && this._config.tenant_id.length > 0)
223
+ serviceUrl.pathname = serviceUrl.pathname + '/tenant_id=' + this._config.tenant_id;
193
224
  serviceUrl.searchParams.set('stored', this._flags.queryCache ? 'true' : 'false');
194
225
  serviceUrl.searchParams.set('cache', this._flags.cache ? 'true' : 'false');
195
226
  serviceUrl.searchParams.set('omit_empty', this._flags.omitEmpty ? 'true' : 'false');
227
+ serviceUrl.searchParams.set('authMode', this.currentAuthMode);
196
228
  if (this.debug)
197
229
  console.log(`🔗 [Optimizely Graph] Setting service endpoint to: ${serviceUrl.href}`);
198
230
  this.setEndpoint(serviceUrl.href);
@@ -200,6 +232,5 @@ export class ContentGraphClient extends GraphQLClient {
200
232
  }
201
233
  ContentGraphClient.ForceHmacToken = 'use-hmac';
202
234
  ContentGraphClient.ForceBasicAuth = 'use-basic';
203
- export const createClient = (config, token = undefined) => new ContentGraphClient(config, token);
204
235
  export default ContentGraphClient;
205
236
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,15 @@
1
- export { createClient as default, createClient, ContentGraphClient } from './client.js';
1
+ export { ContentGraphClient } from './client.js';
2
2
  export { createHmacFetch } from '../hmac-fetch.js';
3
- export { isContentGraphClient, isOptiGraphClient } from './utils.js';
3
+ export { isContentGraphClient, isOptiGraphClient, isOptiGraphConfig } from './utils.js';
4
4
  export { OptiCmsSchema, AuthMode, type IOptiGraphClient, type ClientFactory } from './types.js';
5
+ import type { OptimizelyGraphConfig } from '../types.js';
6
+ import { type IOptiGraphClient } from './types.js';
7
+ /**
8
+ * Create a new instance of the default Optimizely Graph client
9
+ *
10
+ * @param config The client configuration
11
+ * @param token The authentication token to apply to the client
12
+ * @returns The newly created instance
13
+ */
14
+ export declare function createClient(config?: OptimizelyGraphConfig, token?: string | undefined): IOptiGraphClient;
15
+ export default createClient;
@@ -1,5 +1,17 @@
1
- export { createClient as default, createClient, ContentGraphClient } from './client.js';
1
+ export { ContentGraphClient } from './client.js';
2
2
  export { createHmacFetch } from '../hmac-fetch.js';
3
- export { isContentGraphClient, isOptiGraphClient } from './utils.js';
3
+ export { isContentGraphClient, isOptiGraphClient, isOptiGraphConfig } from './utils.js';
4
4
  export { OptiCmsSchema, AuthMode } from './types.js';
5
+ import { ContentGraphClient } from './client.js';
6
+ /**
7
+ * Create a new instance of the default Optimizely Graph client
8
+ *
9
+ * @param config The client configuration
10
+ * @param token The authentication token to apply to the client
11
+ * @returns The newly created instance
12
+ */
13
+ export function createClient(config, token) {
14
+ return new ContentGraphClient(config, token);
15
+ }
16
+ export default createClient;
5
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAA6C,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACvF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAA6C,MAAM,YAAY,CAAA;AAK/F,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAA8B,EAAE,KAA0B;IAEnF,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AAChD,CAAC;AAED,eAAe,YAAY,CAAA"}
@@ -5,6 +5,20 @@ export type QueryParams = {
5
5
  query: Parameters<RequestMethod>[0]['document'];
6
6
  variables: Parameters<RequestMethod>[0]['variables'];
7
7
  };
8
+ /**
9
+ * Frontend authentication data
10
+ */
11
+ export type FrontendUser = {
12
+ /**
13
+ * The username of the authenticated frontend user
14
+ */
15
+ username: string;
16
+ /**
17
+ * The role(s) of the authenticated frontend user, as a comma separated
18
+ * list, no whitespaces around the values
19
+ */
20
+ roles: string;
21
+ };
8
22
  export declare enum OptiCmsSchema {
9
23
  CMS12 = "OPTI-CMS-12",
10
24
  CMS13 = "OPTI-CMS-13"
@@ -13,7 +27,8 @@ export declare enum AuthMode {
13
27
  Public = "epi-single",
14
28
  Basic = "use-basic",
15
29
  HMAC = "use-hmac",
16
- Token = "use-token"
30
+ Token = "use-token",
31
+ User = "use-user"
17
32
  }
18
33
  export type OptiGraphSiteInfo = {
19
34
  frontendDomain?: string;
@@ -65,11 +80,18 @@ export interface IOptiGraphClient extends ClientInstanceType {
65
80
  * query format must be used.
66
81
  */
67
82
  readonly currentOptiCmsSchema: OptiCmsSchema;
83
+ /**
84
+ * Retrieve the currently used frontend user information - if any
85
+ */
86
+ readonly frontendUser: FrontendUser | undefined;
68
87
  /**
69
88
  * Update the authentication data for this client.
70
- * - Set to AuthMode.HMAC or AuthMode.Basic to use that authentication scheme, this requires the AppKey and Secret to be part of the configuration
89
+ * - Set to AuthMode.HMAC or AuthMode.Basic to use that authentication
90
+ * scheme, this requires the AppKey and Secret to be part of the
91
+ * configuration
71
92
  * - Set to the actual token to be used to switch to AuthMode.Token
72
- * - Set to undefined or AuthMode.Public to switch to public, read-only mode. (i.e. using the SingleKey)
93
+ * - Set to undefined or AuthMode.Public to switch to public, read-only
94
+ * mode. (i.e. using the SingleKey)
73
95
  *
74
96
  * @param tokenOrAuthmode The authentication mode/token to be used
75
97
  * @returns The client itself
@@ -84,16 +106,31 @@ export interface IOptiGraphClient extends ClientInstanceType {
84
106
  /**
85
107
  * Set the client controllable service configuration
86
108
  *
87
- * @param newFlags The configuration values to override
88
- * @param temporary Set to true to store the old configuration, please note that you cannot invoke this method again untill the configuration has been restored first
109
+ * @param newFlags The configuration values to override.
110
+ * @param temporary Set to true to store the old configuration,
111
+ * please note that you cannot invoke this method
112
+ * again untill the configuration has been
113
+ * restored first.
89
114
  * @returns Itself, so you chain it in a request
90
115
  */
91
116
  updateFlags(newFlags: Partial<IOptiGraphClientFlags>, temporary?: boolean): IOptiGraphClient;
92
117
  /**
93
- * Restore client controllable service configuration, after it has been saved by a temporary update. If there's nothing to restore this method will do nothing
118
+ * Restore client controllable service configuration, after it has been
119
+ * saved by a temporary update. If there's nothing to restore this method
120
+ * will do nothing
94
121
  *
95
122
  * @returns Itself, so you chain it in a request
96
123
  */
97
124
  restoreFlags(): IOptiGraphClient;
125
+ /**
126
+ * Apply the frontend user configuration that must be used for this client
127
+ *
128
+ * @param newUser The Frontend User to apply to the requests of
129
+ * this client instance. Provide the value `null`
130
+ * to remove the current user information.
131
+ * @returns Whether or not the FrontendUser was applied correctly to
132
+ * the client configuration
133
+ */
134
+ setFrontendUser(newUser: FrontendUser | null): boolean;
98
135
  }
99
136
  export type ClientFactory = (token?: string) => IOptiGraphClient;
@@ -9,5 +9,6 @@ export var AuthMode;
9
9
  AuthMode["Basic"] = "use-basic";
10
10
  AuthMode["HMAC"] = "use-hmac";
11
11
  AuthMode["Token"] = "use-token";
12
+ AuthMode["User"] = "use-user";
12
13
  })(AuthMode || (AuthMode = {}));
13
14
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AAUA,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,sCAAqB,CAAA;IACrB,sCAAqB,CAAA;AACzB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAN,IAAY,QAKX;AALD,WAAY,QAAQ;IAChB,iCAAqB,CAAA;IACrB,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;IACjB,+BAAmB,CAAA;AACvB,CAAC,EALW,QAAQ,KAAR,QAAQ,QAKnB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,sCAAqB,CAAA;IACrB,sCAAqB,CAAA;AACzB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAChB,iCAAqB,CAAA;IACrB,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;IACjB,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;AACrB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB"}
@@ -1,5 +1,13 @@
1
- import { AuthMode, type IOptiGraphClient } from "./types.js";
1
+ import { OptimizelyGraphConfig } from "../types.js";
2
+ import { AuthMode, type IOptiGraphClient, type FrontendUser } from "./types.js";
2
3
  import { type GraphQLClient } from "graphql-request";
4
+ /**
5
+ * Test if the provided value is a valid FrontendUser object
6
+ *
7
+ * @param toTest The value to test
8
+ * @returns `true` If toTest is a FrontendUser, `false` otherwise
9
+ */
10
+ export declare function isValidFrontendUser(toTest?: any): toTest is FrontendUser;
3
11
  export declare function validateToken(newToken?: string): boolean;
4
12
  export declare function getAuthMode(token?: string): AuthMode;
5
13
  export declare function base64encode(binaryString: string): string;
@@ -20,3 +28,11 @@ export declare function isContentGraphClient(client: any): client is IOptiGraphC
20
28
  * @returns `true` when the value can be used as IOptiGraphClient, `false` if not
21
29
  */
22
30
  export declare function isOptiGraphClient(client: GraphQLClient | Record<string, string | number | boolean | object> | undefined | null): client is IOptiGraphClient;
31
+ /**
32
+ * Test if the provided Object can be understood to be an instance of the
33
+ * Optimizely Graph configuration
34
+ *
35
+ * @param client The value to test
36
+ * @returns `true` when the value can be understood as a config object, `false` otherwise
37
+ */
38
+ export declare function isOptiGraphConfig(client: any): client is OptimizelyGraphConfig;
@@ -1,5 +1,19 @@
1
1
  import { AuthMode } from "./types.js";
2
2
  const TOKEN_MIN_LENGTH = 16;
3
+ /**
4
+ * Test if the provided value is a valid FrontendUser object
5
+ *
6
+ * @param toTest The value to test
7
+ * @returns `true` If toTest is a FrontendUser, `false` otherwise
8
+ */
9
+ export function isValidFrontendUser(toTest) {
10
+ // FrontendUser is an object with exactly two properties
11
+ if (typeof (toTest) != 'object' || toTest == null || Object.getOwnPropertyNames(toTest).length != 2)
12
+ return false;
13
+ // FrontendUser has string property `username` and `roles`, each being non-empty
14
+ return typeof (toTest?.username) == 'string' && toTest.username.length > 0 &&
15
+ typeof (toTest?.roles) == 'string' && toTest.roles.length > 0;
16
+ }
3
17
  export function validateToken(newToken) {
4
18
  return newToken == undefined || newToken == AuthMode.HMAC || newToken == AuthMode.Basic || newToken.length > TOKEN_MIN_LENGTH;
5
19
  }
@@ -49,4 +63,16 @@ export function isOptiGraphClient(client) {
49
63
  return typeof client.updateAuthentication == 'function'
50
64
  && typeof client.request == 'function';
51
65
  }
66
+ /**
67
+ * Test if the provided Object can be understood to be an instance of the
68
+ * Optimizely Graph configuration
69
+ *
70
+ * @param client The value to test
71
+ * @returns `true` when the value can be understood as a config object, `false` otherwise
72
+ */
73
+ export function isOptiGraphConfig(client) {
74
+ if (typeof (client) != 'object' || client == null)
75
+ return false;
76
+ return typeof client.single_key == 'string' && client.single_key.length > 0;
77
+ }
52
78
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/client/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAyB,MAAM,YAAY,CAAA;AAG5D,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAE3B,MAAM,UAAU,aAAa,CAAC,QAAkB;IAE5C,OAAO,QAAQ,IAAI,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,GAAG,gBAAgB,CAAA;AAClI,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc;IAEtC,QAAO,KAAK,EACZ,CAAC;QACG,KAAK,QAAQ,CAAC,IAAI;YACd,OAAO,QAAQ,CAAC,IAAI,CAAA;QACxB,KAAK,QAAQ,CAAC,KAAK;YACf,OAAO,QAAQ,CAAC,KAAK,CAAA;QACzB;YACI,IAAI,OAAM,CAAC,KAAK,CAAC,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,gBAAgB;gBAC5D,OAAO,QAAQ,CAAC,KAAK,CAAA;YACzB,OAAO,QAAQ,CAAC,MAAM,CAAA;IAC9B,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,YAAoB;IAC7C,IAAI,MAAM;QACN,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACvD,OAAO,IAAI,CAAC,YAAY,CAAC,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,MAAW;IAC/B,OAAO,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI,IAAI,OAAO,MAAgB,CAAC,IAAI,IAAI,QAAQ,IAAI,OAAO,MAAgB,CAAC,OAAO,IAAI,QAAQ,CAAA;AAClJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAW;IAE5C,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC5C,OAAO,KAAK,CAAA;IAChB,OAAO,OAAO,MAA2B,CAAC,oBAAoB,IAAI,UAAU;WACrE,OAAO,MAA2B,CAAC,OAAO,IAAI,UAAU,CAAA;AACnE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAsF;IAEpH,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC5C,OAAO,KAAK,CAAA;IAChB,OAAO,OAAO,MAA2B,CAAC,oBAAoB,IAAI,UAAU;WACrE,OAAO,MAA2B,CAAC,OAAO,IAAI,UAAU,CAAA;AACnE,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/client/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAA4C,MAAM,YAAY,CAAA;AAG/E,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAE3B;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAa;IAE7C,wDAAwD;IACxD,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,CAAC;QAC9F,OAAO,KAAK,CAAA;IAEhB,gFAAgF;IAChF,OAAO,OAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACjE,OAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;AACxE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,QAAkB;IAE5C,OAAO,QAAQ,IAAI,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,GAAG,gBAAgB,CAAA;AAClI,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc;IAEtC,QAAO,KAAK,EACZ,CAAC;QACG,KAAK,QAAQ,CAAC,IAAI;YACd,OAAO,QAAQ,CAAC,IAAI,CAAA;QACxB,KAAK,QAAQ,CAAC,KAAK;YACf,OAAO,QAAQ,CAAC,KAAK,CAAA;QACzB;YACI,IAAI,OAAM,CAAC,KAAK,CAAC,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,gBAAgB;gBAC5D,OAAO,QAAQ,CAAC,KAAK,CAAA;YACzB,OAAO,QAAQ,CAAC,MAAM,CAAA;IAC9B,CAAC;AACL,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,YAAoB;IAC7C,IAAI,MAAM;QACN,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACvD,OAAO,IAAI,CAAC,YAAY,CAAC,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,MAAW;IAC/B,OAAO,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI,IAAI,OAAO,MAAgB,CAAC,IAAI,IAAI,QAAQ,IAAI,OAAO,MAAgB,CAAC,OAAO,IAAI,QAAQ,CAAA;AAClJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAW;IAE5C,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC5C,OAAO,KAAK,CAAA;IAChB,OAAO,OAAO,MAA2B,CAAC,oBAAoB,IAAI,UAAU;WACrE,OAAO,MAA2B,CAAC,OAAO,IAAI,UAAU,CAAA;AACnE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAsF;IAEpH,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC5C,OAAO,KAAK,CAAA;IAChB,OAAO,OAAO,MAA2B,CAAC,oBAAoB,IAAI,UAAU;WACrE,OAAO,MAA2B,CAAC,OAAO,IAAI,UAAU,CAAA;AACnE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAW;IAEzC,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC5C,OAAO,KAAK,CAAA;IAChB,OAAO,OAAO,MAAgC,CAAC,UAAU,IAAI,QAAQ,IAAK,MAAgC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAA;AACpI,CAAC"}
package/dist/config.js CHANGED
@@ -6,6 +6,7 @@ export function readEnvironmentVariables() {
6
6
  app_key: getOptional('OPTIMIZELY_GRAPH_APP_KEY', () => getOptional('OPTIMIZELY_CONTENTGRAPH_APP_KEY')),
7
7
  single_key: getOptional('OPTIMIZELY_GRAPH_SINGLE_KEY', () => getOptional('OPTIMIZELY_CONTENTGRAPH_SINGLE_KEY', '')),
8
8
  gateway: getOptional('OPTIMIZELY_GRAPH_GATEWAY', () => getOptional('OPTIMIZELY_CONTENTGRAPH_GATEWAY')),
9
+ tenant_id: getOptional('OPTIMIZELY_GRAPH_TENANT_ID'),
9
10
  deploy_domain: getOptional('SITE_DOMAIN'),
10
11
  dxp_url: getOptional('OPTIMIZELY_CMS_URL', () => getOptional('DXP_URL')),
11
12
  query_log: getBoolean('OPTIMIZELY_GRAPH_QUERY_LOG', () => getBoolean('OPTIMIZELY_CONTENTGRAPH_QUERY_LOG', false)),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * @returns The Optimizely Graph safe locale
7
7
  */
8
8
  export function localeToGraphLocale(locale) {
9
- if (typeof (locale) != 'string' || (locale.length != 2 && locale.length != 5))
9
+ if (typeof (locale) != 'string' || (locale.length != 2 && locale.length != 5 && locale != 'ALL' && locale != 'NEUTRAL'))
10
10
  throw new Error(`The value ${locale} is not a supported ISO locale`);
11
11
  return locale.replaceAll('-', '_');
12
12
  }
@@ -17,7 +17,7 @@ export function localeToGraphLocale(locale) {
17
17
  * @returns The ISO Locale
18
18
  */
19
19
  export function graphLocaleToLocale(graphLocale) {
20
- if (typeof (graphLocale) != 'string' || (graphLocale.length != 2 && graphLocale.length != 5))
20
+ if (typeof (graphLocale) != 'string' || (graphLocale.length != 2 && graphLocale.length != 5 && graphLocale != 'ALL' && graphLocale != 'NEUTRAL'))
21
21
  throw new Error(`The value ${graphLocale} is not a supported ISO locale`);
22
22
  return graphLocale.replaceAll('_', '-');
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/services/utils.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAI,MAAS;IAE5C,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,aAAc,MAAO,gCAAgC,CAAC,CAAA;IAC1E,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,EAAC,GAAG,CAAsC,CAAA;AAC1E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAI,WAAc;IAEjD,IAAI,OAAM,CAAC,WAAW,CAAC,IAAI,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,CAAC;QACvF,MAAM,IAAI,KAAK,CAAC,aAAc,WAAY,gCAAgC,CAAC,CAAA;IAC/E,OAAO,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAsC,CAAA;AAChF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAA0C,EAAE,KAA0C;IAErH,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG;QACtB,OAAO,KAAK,CAAA;IAChB,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;QAClE,OAAO,KAAK,CAAA;IAChB,IAAI,CAAE,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM,CAAC,IAAK,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM;QAC1K,OAAO,KAAK,CAAA;IAChB,OAAO,IAAI,CAAA;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,+BAA+B,CAAC,KAA0C,EAAE,KAA0C;IAElI,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG;QACtB,OAAO,KAAK,CAAA;IAChB,IAAI,CAAE,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM,CAAC,IAAK,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM;QAC1K,OAAO,KAAK,CAAA;IAChB,OAAO,IAAI,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAW;IAErC,uBAAuB;IACvB,IAAI,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC5C,OAAO,KAAK,CAAA;IAEhB,6DAA6D;IAC7D,OAAO,OAAM,CAAE,MAAsB,CAAC,GAAG,CAAC,IAAI,QAAQ,IAAM,MAAsB,CAAC,GAAc,CAAC,MAAM,GAAG,CAAC,CAAA;AAChH,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAW;IAE/C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QACtB,OAAO,KAAK,CAAA;IAEhB,MAAM,MAAM,GAAI,MAAgC,CAAC,MAAM,CAAA;IACvD,OAAO,MAAM,IAAI,SAAS,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,OAAM,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;AAC5H,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAW;IAE3C,IAAI,OAAO,MAAM,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC3C,OAAO,KAAK,CAAA;IAEhB,OAAQ,MAAsC,CAAC,GAAG,IAAI,IAAI;QACtD,CAAE,MAAsC,CAAC,OAAO,IAAI,IAAI,IAAK,MAAsC,CAAC,OAAO,IAAI,SAAS,CAAC;QACzH,CAAC,OAAQ,MAAsC,CAAC,MAAM,IAAI,QAAQ,IAAK,MAAsC,CAAC,MAAM,IAAI,IAAI,IAAK,MAAsC,CAAC,MAAM,IAAI,SAAS,CAAC,CAAA;AACpM,CAAC;AAMD;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAsD;IAEvF,IAAI,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACjE,OAAO,SAAS,CAAA;IAEpB,MAAM,OAAO,GAAqC;QAC9C,GAAG,EAAE,WAAW,CAAC,GAAG;KACvB,CAAA;IACD,IAAI,WAAW,CAAC,OAAO;QACnB,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAA;IAEpD,OAAO,WAAW,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAc,WAAgD;IAExG,MAAM,UAAU,GAAG,oBAAoB,CAAC,WAAW,CAA8B,CAAA;IACjF,IAAI,WAAW,EAAE,MAAM,IAAI,SAAS,IAAI,CAAC,CAAC,OAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;QACpJ,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;IAC1C,OAAO,UAAU,CAAA;AACrB,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB,UAAU;IAElD,IAAI,CAAC;QACD,OAAO,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,UAAU,CAAC,GAAG,EAAC,EAAE,CAAC,CAAA;IAC1D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;QACpE,OAAO,MAAM,GAAG,SAAS,CAAA;IAC7B,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAA+D,EAAE,SAAkB,KAAK;IAExH,IAAI,CAAC,WAAW;QACZ,OAAO,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAA;IACtE,OAAO;QACH,WAAW,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG;QAC/F,WAAW,CAAC,OAAO;QAClB,WAAqC,CAAC,MAAM;KAChD,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC/B,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/services/utils.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -40,6 +40,10 @@ export type OptimizelyGraphConfigInternal = {
40
40
  * The CMS Schema version that is used
41
41
  */
42
42
  opti_cms_schema: OptiCmsSchema;
43
+ /**
44
+ * The Turnstile Tenant ID that must be used - if any
45
+ */
46
+ tenant_id?: string;
43
47
  };
44
48
  export type OptimizelyGraphConfig = Partial<Omit<OptimizelyGraphConfigInternal, 'single_key'>> & Pick<OptimizelyGraphConfigInternal, 'single_key'>;
45
49
  /**
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@remkoj/optimizely-graph-client",
3
3
  "license": "Apache-2.0",
4
- "version": "2.1.0",
4
+ "version": "3.0.0",
5
5
  "packageManager": "yarn@4.1.1",
6
6
  "repository": "https://github.com/remkoj/optimizely-dxp-clients.git",
7
7
  "author": "Remko Jantzen <693172+remkoj@users.noreply.github.com>",
@@ -52,13 +52,13 @@
52
52
  },
53
53
  "devDependencies": {
54
54
  "@types/crypto-js": "^4.2.2",
55
- "@types/node": "^22.7.4",
55
+ "@types/node": "^22.8.4",
56
56
  "graphql": "^16.9.0",
57
57
  "graphql-request": "^6.1.0",
58
58
  "openapi-typescript-codegen": "^0.29.0",
59
59
  "prop-types": "^15.8.1",
60
60
  "scheduler": "^0.23.2",
61
- "typescript": "^5.6.2"
61
+ "typescript": "^5.6.3"
62
62
  },
63
63
  "dependencies": {
64
64
  "crypto-js": "^4.2.0"