@remkoj/optimizely-graph-client 2.0.4 → 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.
Files changed (93) hide show
  1. package/README.md +195 -135
  2. package/dist/admin-api/client/OptimizelyGraphAdminApi.js +1 -1
  3. package/dist/admin-api/client/core/OpenAPI.js +1 -1
  4. package/dist/admin-api/client/index.d.ts +4 -3
  5. package/dist/admin-api/client/index.js.map +1 -1
  6. package/dist/admin-api/client/models/{ContentTypeDefinition_V2.d.ts → ContentSource_V2.d.ts} +1 -1
  7. package/dist/admin-api/client/models/ContentSource_V2.js +2 -0
  8. package/dist/admin-api/client/models/ContentSource_V2.js.map +1 -0
  9. package/dist/admin-api/client/models/{ContentTypeDefinition_V3.d.ts → ContentSource_V3.d.ts} +2 -1
  10. package/dist/admin-api/client/models/ContentSource_V3.js +2 -0
  11. package/dist/admin-api/client/models/ContentSource_V3.js.map +1 -0
  12. package/dist/admin-api/client/models/FilterMap.d.ts +2 -2
  13. package/dist/admin-api/client/models/OperationMap.d.ts +1 -1
  14. package/dist/admin-api/client/models/Partial_Record_string_OperationMap__.d.ts +5 -0
  15. package/dist/admin-api/client/models/Partial_Record_string_OperationMap__.js +2 -0
  16. package/dist/admin-api/client/models/Partial_Record_string_OperationMap__.js.map +1 -0
  17. package/dist/admin-api/client/models/SourceInfo.d.ts +1 -0
  18. package/dist/admin-api/client/models/SourceMetadata.d.ts +4 -0
  19. package/dist/admin-api/client/models/SourceMetadata.js +2 -0
  20. package/dist/admin-api/client/models/SourceMetadata.js.map +1 -0
  21. package/dist/admin-api/client/models/Webhook.d.ts +2 -0
  22. package/dist/admin-api/client/models/WebhookPayload.d.ts +2 -2
  23. package/dist/admin-api/client/services/DefinitionV2Service.d.ts +2 -2
  24. package/dist/admin-api/client/services/DefinitionV2Service.js.map +1 -1
  25. package/dist/admin-api/client/services/DefinitionV3Service.d.ts +16 -6
  26. package/dist/admin-api/client/services/DefinitionV3Service.js +21 -2
  27. package/dist/admin-api/client/services/DefinitionV3Service.js.map +1 -1
  28. package/dist/client/client.d.ts +5 -2
  29. package/dist/client/client.js +40 -6
  30. package/dist/client/client.js.map +1 -1
  31. package/dist/client/index.d.ts +14 -3
  32. package/dist/client/index.js +15 -3
  33. package/dist/client/index.js.map +1 -1
  34. package/dist/client/types.d.ts +53 -6
  35. package/dist/client/types.js +6 -0
  36. package/dist/client/types.js.map +1 -1
  37. package/dist/client/utils.d.ts +33 -1
  38. package/dist/client/utils.js +46 -0
  39. package/dist/client/utils.js.map +1 -1
  40. package/dist/config.d.ts +1 -0
  41. package/dist/config.js +14 -1
  42. package/dist/config.js.map +1 -1
  43. package/dist/services/channel-repository/repository.d.ts +1 -1
  44. package/dist/services/channel-repository/repository.js +4 -2
  45. package/dist/services/channel-repository/repository.js.map +1 -1
  46. package/dist/services/routing/queries/cms12/getAllRoutes.d.ts +32 -0
  47. package/dist/services/routing/queries/cms12/getAllRoutes.js +34 -0
  48. package/dist/services/routing/queries/cms12/getAllRoutes.js.map +1 -0
  49. package/dist/services/routing/queries/cms12/getRouteById.d.ts +13 -0
  50. package/dist/services/routing/queries/cms12/getRouteById.js +39 -0
  51. package/dist/services/routing/queries/cms12/getRouteById.js.map +1 -0
  52. package/dist/services/routing/queries/cms12/getRouteByPath.d.ts +12 -0
  53. package/dist/services/routing/queries/cms12/getRouteByPath.js +31 -0
  54. package/dist/services/routing/queries/cms12/getRouteByPath.js.map +1 -0
  55. package/dist/services/routing/queries/cms12/index.d.ts +14 -0
  56. package/dist/services/routing/queries/cms12/index.js +118 -0
  57. package/dist/services/routing/queries/cms12/index.js.map +1 -0
  58. package/dist/services/routing/queries/cms13/getAllRoutes.js.map +1 -0
  59. package/dist/services/routing/queries/cms13/getRouteById.js.map +1 -0
  60. package/dist/services/routing/queries/{getRouteByPath.js → cms13/getRouteByPath.js} +1 -1
  61. package/dist/services/routing/queries/cms13/getRouteByPath.js.map +1 -0
  62. package/dist/services/routing/queries/cms13/index.d.ts +12 -0
  63. package/dist/services/routing/queries/cms13/index.js +91 -0
  64. package/dist/services/routing/queries/cms13/index.js.map +1 -0
  65. package/dist/services/routing/queries/index.d.ts +1 -0
  66. package/dist/services/routing/queries/index.js +2 -0
  67. package/dist/services/routing/queries/index.js.map +1 -0
  68. package/dist/services/routing/queries/types.d.ts +7 -0
  69. package/dist/services/routing/queries/types.js +2 -0
  70. package/dist/services/routing/queries/types.js.map +1 -0
  71. package/dist/services/routing/resolver.d.ts +11 -9
  72. package/dist/services/routing/resolver.js +24 -85
  73. package/dist/services/routing/resolver.js.map +1 -1
  74. package/dist/services/routing/types.d.ts +32 -0
  75. package/dist/services/utils.js +2 -2
  76. package/dist/services/utils.js.map +1 -1
  77. package/dist/types.d.ts +9 -0
  78. package/package.json +3 -3
  79. package/dist/admin-api/client/models/ContentTypeDefinition_V2.js +0 -2
  80. package/dist/admin-api/client/models/ContentTypeDefinition_V2.js.map +0 -1
  81. package/dist/admin-api/client/models/ContentTypeDefinition_V3.js +0 -2
  82. package/dist/admin-api/client/models/ContentTypeDefinition_V3.js.map +0 -1
  83. package/dist/admin-api/client/models/Partial_Record_FieldKeys_OperationMap__.d.ts +0 -8
  84. package/dist/admin-api/client/models/Partial_Record_FieldKeys_OperationMap__.js +0 -2
  85. package/dist/admin-api/client/models/Partial_Record_FieldKeys_OperationMap__.js.map +0 -1
  86. package/dist/services/routing/queries/getAllRoutes.js.map +0 -1
  87. package/dist/services/routing/queries/getRouteById.js.map +0 -1
  88. package/dist/services/routing/queries/getRouteByPath.js.map +0 -1
  89. /package/dist/services/routing/queries/{getAllRoutes.d.ts → cms13/getAllRoutes.d.ts} +0 -0
  90. /package/dist/services/routing/queries/{getAllRoutes.js → cms13/getAllRoutes.js} +0 -0
  91. /package/dist/services/routing/queries/{getRouteById.d.ts → cms13/getRouteById.d.ts} +0 -0
  92. /package/dist/services/routing/queries/{getRouteById.js → cms13/getRouteById.js} +0 -0
  93. /package/dist/services/routing/queries/{getRouteByPath.d.ts → cms13/getRouteByPath.d.ts} +0 -0
@@ -4,7 +4,7 @@ export class DefinitionV3Service {
4
4
  }
5
5
  /**
6
6
  * Get source metadata
7
- * Get `id`, `label` and `languages` fields of the source
7
+ * Get `id`, `label`, `description` and `languages` fields of the source
8
8
  * @param id The id of the source _(optional)_
9
9
  * - _(empty): all sources_
10
10
  * - _**default**: only default source_
@@ -52,11 +52,30 @@ export class DefinitionV3Service {
52
52
  },
53
53
  });
54
54
  }
55
+ /**
56
+ * Update source metadata
57
+ * Update `label`, `description` fields of the source
58
+ * @param id The id of the source
59
+ * @param requestBody The new metadata source
60
+ * @returns void
61
+ * @throws ApiError
62
+ */
63
+ postContentV3SourceHandler(id, requestBody) {
64
+ return this.httpRequest.request({
65
+ method: 'POST',
66
+ url: '/api/content/v3/sources',
67
+ query: {
68
+ 'id': id,
69
+ },
70
+ body: requestBody,
71
+ mediaType: 'application/json',
72
+ });
73
+ }
55
74
  /**
56
75
  * Get content types
57
76
  * Get content types of the source
58
77
  * @param id The id of the source
59
- * @returns ContentTypeDefinition_V3 Ok
78
+ * @returns ContentSource_V3 Ok
60
79
  * @throws ApiError
61
80
  */
62
81
  getContentV3TypeHandler(id = 'default') {
@@ -1 +1 @@
1
- {"version":3,"file":"DefinitionV3Service.js","sourceRoot":"","sources":["../../../../src/admin-api/client/services/DefinitionV3Service.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,mBAAmB;IAC5B,YAA4B,WAA4B;QAA5B,gBAAW,GAAX,WAAW,CAAiB;IAAG,CAAC;IAC5D;;;;;;;;;OASG;IACI,yBAAyB,CAC5B,EAAW;QAEX,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,yBAAyB;YAC9B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;SACJ,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;;;;;;;;;;;OAiBG;IACI,4BAA4B,CAC/B,EAAW,EACX,IAAiB;QAEjB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,yBAAyB;YAC9B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;gBACR,MAAM,EAAE,IAAI;aACf;YACD,MAAM,EAAE;gBACJ,GAAG,EAAE,qBAAqB;aAC7B;SACJ,CAAC,CAAC;IACP,CAAC;IACD;;;;;;OAMG;IACI,uBAAuB,CAC1B,KAAa,SAAS;QAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;SACJ,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;OAOG;IACI,wBAAwB,CAC3B,WAAqC,EACrC,KAAa,SAAS;QAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;YACD,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,kBAAkB;SAChC,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;OAOG;IACI,uBAAuB,CAC1B,WAAqC,EACrC,KAAa,SAAS;QAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;YACD,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,kBAAkB;SAChC,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"DefinitionV3Service.js","sourceRoot":"","sources":["../../../../src/admin-api/client/services/DefinitionV3Service.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,mBAAmB;IAC5B,YAA4B,WAA4B;QAA5B,gBAAW,GAAX,WAAW,CAAiB;IAAG,CAAC;IAC5D;;;;;;;;;OASG;IACI,yBAAyB,CAC5B,EAAW;QAEX,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,yBAAyB;YAC9B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;SACJ,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;;;;;;;;;;;OAiBG;IACI,4BAA4B,CAC/B,EAAW,EACX,IAAiB;QAEjB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,yBAAyB;YAC9B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;gBACR,MAAM,EAAE,IAAI;aACf;YACD,MAAM,EAAE;gBACJ,GAAG,EAAE,qBAAqB;aAC7B;SACJ,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;OAOG;IACI,0BAA0B,CAC7B,EAAU,EACV,WAA2B;QAE3B,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,yBAAyB;YAC9B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;YACD,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,kBAAkB;SAChC,CAAC,CAAC;IACP,CAAC;IACD;;;;;;OAMG;IACI,uBAAuB,CAC1B,KAAa,SAAS;QAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;SACJ,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;OAOG;IACI,wBAAwB,CAC3B,WAA6B,EAC7B,KAAa,SAAS;QAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;YACD,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,kBAAkB;SAChC,CAAC,CAAC;IACP,CAAC;IACD;;;;;;;OAOG;IACI,uBAAuB,CAC1B,WAA6B,EAC7B,KAAa,SAAS;QAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC5B,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,uBAAuB;YAC5B,KAAK,EAAE;gBACH,IAAI,EAAE,EAAE;aACX;YACD,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,kBAAkB;SAChC,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -1,15 +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 } 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;
13
+ get currentOptiCmsSchema(): OptiCmsSchema;
12
14
  get debug(): boolean;
15
+ get frontendUser(): FrontendUser | undefined;
13
16
  protected get token(): string | undefined;
14
17
  protected set token(newValue: string | undefined);
15
18
  protected get hmacFetch(): FetchAPI;
@@ -30,7 +33,7 @@ export declare class ContentGraphClient extends GraphQLClient implements IOptiGr
30
33
  private _oldFlags;
31
34
  updateFlags(newFlags: Partial<IOptiGraphClientFlags>, temporary?: boolean): IOptiGraphClient;
32
35
  restoreFlags(): IOptiGraphClient;
36
+ setFrontendUser(newUser: FrontendUser | null): boolean;
33
37
  protected updateRequestConfig(): void;
34
38
  }
35
- export declare const createClient: (config?: OptimizelyGraphConfig, token?: string | undefined) => IOptiGraphClient;
36
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,
@@ -10,9 +10,15 @@ const defaultFlags = {
10
10
  omitEmpty: false
11
11
  };
12
12
  export class ContentGraphClient extends GraphQLClient {
13
+ get currentOptiCmsSchema() {
14
+ return this._config.opti_cms_schema;
15
+ }
13
16
  get debug() {
14
17
  return this._config.debug ?? false;
15
18
  }
19
+ get frontendUser() {
20
+ return this._user;
21
+ }
16
22
  get token() {
17
23
  return this._token;
18
24
  }
@@ -43,7 +49,7 @@ export class ContentGraphClient extends GraphQLClient {
43
49
  };
44
50
  }
45
51
  get currentAuthMode() {
46
- return getAuthMode(this._token);
52
+ return this._user ? AuthMode.User : getAuthMode(this._token);
47
53
  }
48
54
  constructor(config, token = undefined, flags) {
49
55
  const configFlags = { ...defaultFlags, ...flags };
@@ -64,8 +70,10 @@ export class ContentGraphClient extends GraphQLClient {
64
70
  method: "post",
65
71
  requestMiddleware: request => {
66
72
  if (QUERY_LOG) {
67
- console.log(`🔎 [Optimizely Graph] [Request Query] ${request.body}`);
68
- 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)}`);
69
77
  }
70
78
  return request;
71
79
  },
@@ -90,6 +98,7 @@ export class ContentGraphClient extends GraphQLClient {
90
98
  }
91
99
  }
92
100
  });
101
+ this._user = undefined;
93
102
  this.query = (...args) => {
94
103
  //@ts-expect-error
95
104
  return this.request(...args);
@@ -113,6 +122,8 @@ export class ContentGraphClient extends GraphQLClient {
113
122
  updateAuthentication(tokenOrAuthmode) {
114
123
  if (tokenOrAuthmode == AuthMode.Token)
115
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");
116
127
  this.token = tokenOrAuthmode == AuthMode.Public ? undefined : tokenOrAuthmode;
117
128
  this.updateRequestConfig();
118
129
  return this;
@@ -142,6 +153,16 @@ export class ContentGraphClient extends GraphQLClient {
142
153
  this.updateRequestConfig();
143
154
  return this;
144
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
+ }
145
166
  updateRequestConfig() {
146
167
  // Build headers that are shared across authentication modes
147
168
  const headers = {
@@ -164,6 +185,17 @@ export class ContentGraphClient extends GraphQLClient {
164
185
  this.requestConfig.cache = 'no-store';
165
186
  this.requestConfig.fetch = fetch;
166
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;
167
199
  case AuthMode.Token:
168
200
  this.setHeaders({
169
201
  ...headers,
@@ -185,11 +217,14 @@ export class ContentGraphClient extends GraphQLClient {
185
217
  if (!this._flags.cache) {
186
218
  this.requestConfig.cache = 'no-store';
187
219
  }
188
- // Update endpoint
220
+ // Build endpoint
189
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;
190
224
  serviceUrl.searchParams.set('stored', this._flags.queryCache ? 'true' : 'false');
191
225
  serviceUrl.searchParams.set('cache', this._flags.cache ? 'true' : 'false');
192
226
  serviceUrl.searchParams.set('omit_empty', this._flags.omitEmpty ? 'true' : 'false');
227
+ serviceUrl.searchParams.set('authMode', this.currentAuthMode);
193
228
  if (this.debug)
194
229
  console.log(`🔗 [Optimizely Graph] Setting service endpoint to: ${serviceUrl.href}`);
195
230
  this.setEndpoint(serviceUrl.href);
@@ -197,6 +232,5 @@ export class ContentGraphClient extends GraphQLClient {
197
232
  }
198
233
  ContentGraphClient.ForceHmacToken = 'use-hmac';
199
234
  ContentGraphClient.ForceBasicAuth = 'use-basic';
200
- export const createClient = (config, token = undefined) => new ContentGraphClient(config, token);
201
235
  export default ContentGraphClient;
202
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 } from './utils.js';
4
- export { AuthMode, type IOptiGraphClient, type ClientFactory } from './types.js';
3
+ export { isContentGraphClient, isOptiGraphClient, isOptiGraphConfig } from './utils.js';
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 } from './utils.js';
4
- export { AuthMode } from './types.js';
3
+ export { isContentGraphClient, isOptiGraphClient, isOptiGraphConfig } from './utils.js';
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,MAAM,YAAY,CAAA;AACjD,OAAO,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,11 +5,30 @@ 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
+ };
22
+ export declare enum OptiCmsSchema {
23
+ CMS12 = "OPTI-CMS-12",
24
+ CMS13 = "OPTI-CMS-13"
25
+ }
8
26
  export declare enum AuthMode {
9
27
  Public = "epi-single",
10
28
  Basic = "use-basic",
11
29
  HMAC = "use-hmac",
12
- Token = "use-token"
30
+ Token = "use-token",
31
+ User = "use-user"
13
32
  }
14
33
  export type OptiGraphSiteInfo = {
15
34
  frontendDomain?: string;
@@ -55,11 +74,24 @@ export interface IOptiGraphClient extends ClientInstanceType {
55
74
  * Retrieve the current authentication mode
56
75
  */
57
76
  readonly currentAuthMode: AuthMode;
77
+ /**
78
+ * Retrieve the currently active CMS Schema. This doesn't affect the client
79
+ * itself, however it can be used by users of this client to determine which
80
+ * query format must be used.
81
+ */
82
+ readonly currentOptiCmsSchema: OptiCmsSchema;
83
+ /**
84
+ * Retrieve the currently used frontend user information - if any
85
+ */
86
+ readonly frontendUser: FrontendUser | undefined;
58
87
  /**
59
88
  * Update the authentication data for this client.
60
- * - 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
61
92
  * - Set to the actual token to be used to switch to AuthMode.Token
62
- * - 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)
63
95
  *
64
96
  * @param tokenOrAuthmode The authentication mode/token to be used
65
97
  * @returns The client itself
@@ -74,16 +106,31 @@ export interface IOptiGraphClient extends ClientInstanceType {
74
106
  /**
75
107
  * Set the client controllable service configuration
76
108
  *
77
- * @param newFlags The configuration values to override
78
- * @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.
79
114
  * @returns Itself, so you chain it in a request
80
115
  */
81
116
  updateFlags(newFlags: Partial<IOptiGraphClientFlags>, temporary?: boolean): IOptiGraphClient;
82
117
  /**
83
- * 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
84
121
  *
85
122
  * @returns Itself, so you chain it in a request
86
123
  */
87
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;
88
135
  }
89
136
  export type ClientFactory = (token?: string) => IOptiGraphClient;
@@ -1,8 +1,14 @@
1
+ export var OptiCmsSchema;
2
+ (function (OptiCmsSchema) {
3
+ OptiCmsSchema["CMS12"] = "OPTI-CMS-12";
4
+ OptiCmsSchema["CMS13"] = "OPTI-CMS-13";
5
+ })(OptiCmsSchema || (OptiCmsSchema = {}));
1
6
  export var AuthMode;
2
7
  (function (AuthMode) {
3
8
  AuthMode["Public"] = "epi-single";
4
9
  AuthMode["Basic"] = "use-basic";
5
10
  AuthMode["HMAC"] = "use-hmac";
6
11
  AuthMode["Token"] = "use-token";
12
+ AuthMode["User"] = "use-user";
7
13
  })(AuthMode || (AuthMode = {}));
8
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,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,6 +1,38 @@
1
- import { AuthMode, type IOptiGraphClient } from "./types.js";
1
+ import { OptimizelyGraphConfig } from "../types.js";
2
+ import { AuthMode, type IOptiGraphClient, type FrontendUser } from "./types.js";
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;
2
11
  export declare function validateToken(newToken?: string): boolean;
3
12
  export declare function getAuthMode(token?: string): AuthMode;
4
13
  export declare function base64encode(binaryString: string): string;
5
14
  export declare function isError(toTest: any): toTest is Error;
15
+ /**
16
+ *
17
+ * @deprecated
18
+ * @see `isOptiGraphClient()`
19
+ * @param client The value to test
20
+ * @returns `true` when the value can be used as IOptiGraphClient, `false` if not
21
+ */
6
22
  export declare function isContentGraphClient(client: any): client is IOptiGraphClient;
23
+ /**
24
+ * Test if the provided GraphQL Client is an IOptiGraphClient instance and thus allows
25
+ * the extended API of this interface to be used.
26
+ *
27
+ * @param client The GraphQL Client to test
28
+ * @returns `true` when the value can be used as IOptiGraphClient, `false` if not
29
+ */
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
  }
@@ -23,10 +37,42 @@ export function base64encode(binaryString) {
23
37
  export function isError(toTest) {
24
38
  return typeof (toTest) == 'object' && toTest != null && typeof toTest.name == 'string' && typeof toTest.message == 'string';
25
39
  }
40
+ /**
41
+ *
42
+ * @deprecated
43
+ * @see `isOptiGraphClient()`
44
+ * @param client The value to test
45
+ * @returns `true` when the value can be used as IOptiGraphClient, `false` if not
46
+ */
26
47
  export function isContentGraphClient(client) {
27
48
  if (typeof (client) != 'object' || client == null)
28
49
  return false;
29
50
  return typeof client.updateAuthentication == 'function'
30
51
  && typeof client.request == 'function';
31
52
  }
53
+ /**
54
+ * Test if the provided GraphQL Client is an IOptiGraphClient instance and thus allows
55
+ * the extended API of this interface to be used.
56
+ *
57
+ * @param client The GraphQL Client to test
58
+ * @returns `true` when the value can be used as IOptiGraphClient, `false` if not
59
+ */
60
+ export function isOptiGraphClient(client) {
61
+ if (typeof (client) != 'object' || client == null)
62
+ return false;
63
+ return typeof client.updateAuthentication == 'function'
64
+ && typeof client.request == 'function';
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
+ }
32
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;AAE5D,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,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"}
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.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import type * as Types from './types.js';
2
2
  export type { ContentGraphConfig, OptimizelyGraphConfigInternal, OptimizelyGraphConfig } from './types.js';
3
+ export { OptiCmsSchema } from "./client/types.js";
3
4
  export declare function readEnvironmentVariables(): Types.OptimizelyGraphConfig;
4
5
  export declare function applyConfigDefaults(configuredValues: Types.OptimizelyGraphConfig): Types.OptimizelyGraphConfigInternal;
5
6
  /**
package/dist/config.js CHANGED
@@ -1,14 +1,18 @@
1
+ import { OptiCmsSchema } from "./client/types.js";
2
+ export { OptiCmsSchema } from "./client/types.js";
1
3
  export function readEnvironmentVariables() {
2
4
  const config = {
3
5
  secret: getOptional('OPTIMIZELY_GRAPH_SECRET', () => getOptional('OPTIMIZELY_CONTENTGRAPH_SECRET')),
4
6
  app_key: getOptional('OPTIMIZELY_GRAPH_APP_KEY', () => getOptional('OPTIMIZELY_CONTENTGRAPH_APP_KEY')),
5
7
  single_key: getOptional('OPTIMIZELY_GRAPH_SINGLE_KEY', () => getOptional('OPTIMIZELY_CONTENTGRAPH_SINGLE_KEY', '')),
6
8
  gateway: getOptional('OPTIMIZELY_GRAPH_GATEWAY', () => getOptional('OPTIMIZELY_CONTENTGRAPH_GATEWAY')),
9
+ tenant_id: getOptional('OPTIMIZELY_GRAPH_TENANT_ID'),
7
10
  deploy_domain: getOptional('SITE_DOMAIN'),
8
11
  dxp_url: getOptional('OPTIMIZELY_CMS_URL', () => getOptional('DXP_URL')),
9
12
  query_log: getBoolean('OPTIMIZELY_GRAPH_QUERY_LOG', () => getBoolean('OPTIMIZELY_CONTENTGRAPH_QUERY_LOG', false)),
10
13
  debug: getBoolean('OPTIMIZELY_DEBUG', () => getBoolean('DXP_DEBUG', false)),
11
- publish: getOptional('OPTIMIZELY_PUBLISH_TOKEN')
14
+ publish: getOptional('OPTIMIZELY_PUBLISH_TOKEN'),
15
+ opti_cms_schema: getSelection('OPTIMIZELY_CMS_SCHEMA', [OptiCmsSchema.CMS12, OptiCmsSchema.CMS13], OptiCmsSchema.CMS13)
12
16
  };
13
17
  if (config.gateway && config.gateway?.endsWith("/"))
14
18
  config.gateway = config.gateway.substring(0, config.gateway.length - 1);
@@ -22,6 +26,7 @@ export function applyConfigDefaults(configuredValues) {
22
26
  deploy_domain: "",
23
27
  debug: false,
24
28
  query_log: false,
29
+ opti_cms_schema: OptiCmsSchema.CMS13
25
30
  };
26
31
  const config = {
27
32
  ...defaults,
@@ -100,4 +105,12 @@ function getOptional(envVarName, defaultValue) {
100
105
  return defaultValue;
101
106
  }
102
107
  }
108
+ function getSelection(envVarName, allowedValues, defaultValue) {
109
+ const rawValue = getOptional(envVarName, defaultValue);
110
+ if (!rawValue)
111
+ return defaultValue;
112
+ if (allowedValues.some(av => av == rawValue))
113
+ return rawValue;
114
+ return defaultValue;
115
+ }
103
116
  //# sourceMappingURL=config.js.map
@@ -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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"}
@@ -1,4 +1,4 @@
1
- import type { OptimizelyGraphConfig } from '../../types.js';
1
+ import { type OptimizelyGraphConfig } from '../../types.js';
2
2
  import { type IOptiGraphClient } from '../../client/index.js';
3
3
  import ChannelDefinition from './definition.js';
4
4
  export declare class ChannelRepository {
@@ -1,10 +1,12 @@
1
- import createClient, { isContentGraphClient } from '../../client/index.js';
1
+ import createClient, { isOptiGraphClient, OptiCmsSchema } from '../../client/index.js';
2
2
  import ChannelDefinition from './definition.js';
3
3
  import * as Queries from './queries.js';
4
4
  import { localeToGraphLocale } from '../utils.js';
5
5
  export class ChannelRepository {
6
6
  constructor(clientOrConfig) {
7
- this.client = isContentGraphClient(clientOrConfig) ? clientOrConfig : createClient(clientOrConfig);
7
+ this.client = isOptiGraphClient(clientOrConfig) ? clientOrConfig : createClient(clientOrConfig);
8
+ if (this.client.currentOptiCmsSchema != OptiCmsSchema.CMS12)
9
+ throw new Error("🦺 Optimizely SaaS CMS does not yet expose the Applications through Optimizely Graph");
8
10
  }
9
11
  async getAll() {
10
12
  const data = await this.client.request(Queries.getAll);
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../src/services/channel-repository/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../src/services/channel-repository/repository.ts"],"names":[],"mappings":"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"}