@remkoj/optimizely-graph-client 6.0.0-pre1 → 6.0.0-pre3

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.
@@ -5,15 +5,17 @@ export declare class ChannelDefinition implements Readonly<ChannelDefinitionData
5
5
  readonly domains: ChannelDomain[];
6
6
  readonly locales: ChannelLocale[];
7
7
  readonly content: ChannelContent;
8
+ protected readonly dxp_url: string;
8
9
  get isDev(): boolean;
9
10
  get defaultLocale(): string;
10
11
  get defaultDomain(): string;
11
- protected dxp_url: string;
12
- protected get editDomain(): string | undefined;
13
12
  constructor(initialData: ChannelDefinitionData, dxp_url: string);
14
13
  getPrimaryDomain(): URL;
15
14
  getEditDomain(): URL;
16
15
  getCmsUrl(): string;
16
+ protected getPrimaryChannelDomain(): ChannelDomain | undefined;
17
+ getDomainForLocale(locale: string): URL;
18
+ protected channelDomainToUrl(d: ChannelDomain): URL;
17
19
  /**
18
20
  * Retieve the default locale specification, defined as the locale marked
19
21
  * as "primary" else the first locale of the channel. When the channel
@@ -89,4 +91,19 @@ export declare class ChannelDefinition implements Readonly<ChannelDefinitionData
89
91
  */
90
92
  asDataObject(): Readonly<[ReadonlyChannelDefinitionData, string]>;
91
93
  }
94
+ /**
95
+ * Test if the input varaible is an object of type ChannelDefinition
96
+ *
97
+ * @param toTest The value to test
98
+ * @returns `true` if the value is a ChannelDefinition, `false` otherwise
99
+ */
100
+ export declare function isChannelDefinition(toTest: any): toTest is ChannelDefinition;
101
+ /**
102
+ * Apply a gate on the input variable. It will returned by this function if it is a
103
+ * `ChannelDefinition`. The function will return `undefined` otherwise.
104
+ *
105
+ * @param toTest The value to gate
106
+ * @returns Either `toTest` or `undefined`, depending on the type of `toTest`
107
+ */
108
+ export declare function ifChannelDefinition(toTest: any): ChannelDefinition | undefined;
92
109
  export default ChannelDefinition;
@@ -11,12 +11,8 @@ export class ChannelDefinition {
11
11
  return (this.locales.filter(x => x.isDefault)[0] || this.locales[0])?.code ?? "en";
12
12
  }
13
13
  get defaultDomain() {
14
- const primaryDomain = this.isDev ? this.domains.filter(x => x.name.includes("localhost"))[0] : this.domains.filter(x => x.isPrimary)[0];
15
- return primaryDomain?.name ?? "localhost:3000";
16
- }
17
- get editDomain() {
18
- const editDomain = this.domains.filter(x => x.isEdit)[0];
19
- return editDomain?.name;
14
+ const pd = this.getPrimaryChannelDomain();
15
+ return pd?.name ?? "localhost:3000";
20
16
  }
21
17
  constructor(initialData, dxp_url) {
22
18
  this.id = initialData.id;
@@ -27,15 +23,31 @@ export class ChannelDefinition {
27
23
  this.dxp_url = dxp_url;
28
24
  }
29
25
  getPrimaryDomain() {
30
- return new URL(`${this.isDev ? 'http' : 'https'}://${this.defaultDomain}/`);
26
+ const pd = this.getPrimaryChannelDomain();
27
+ if (pd)
28
+ return this.channelDomainToUrl(pd);
29
+ return new URL('http://localhost:3000');
31
30
  }
32
31
  getEditDomain() {
33
- const edit = this.editDomain;
34
- return edit ? new URL(`https://${edit}/`) : new URL(this.dxp_url);
32
+ const edit = this.domains.filter(x => x.isEdit).at(0);
33
+ return edit ? this.channelDomainToUrl(edit) : new URL(this.dxp_url);
35
34
  }
36
35
  getCmsUrl() {
37
36
  return this.dxp_url;
38
37
  }
38
+ getPrimaryChannelDomain() {
39
+ return this.domains.filter(x => x.isPrimary).at(0) || this.domains.filter(x => x.name.startsWith('localhost') || x.name.includes('.local')).at(0);
40
+ }
41
+ getDomainForLocale(locale) {
42
+ const selected = this.domains.filter(x => x.forLocale === locale).at(0) || this.getPrimaryChannelDomain();
43
+ if (selected)
44
+ return this.channelDomainToUrl(selected);
45
+ return new URL('http://localhost:3000');
46
+ }
47
+ channelDomainToUrl(d) {
48
+ const isSecure = d.isSecure === undefined ? this.isDev : d.isSecure;
49
+ return new URL(`http${isSecure ? 's' : ''}://${d.name}`);
50
+ }
39
51
  /**
40
52
  * Retieve the default locale specification, defined as the locale marked
41
53
  * as "primary" else the first locale of the channel. When the channel
@@ -135,5 +147,26 @@ export class ChannelDefinition {
135
147
  }, this.dxp_url];
136
148
  }
137
149
  }
150
+ /**
151
+ * Test if the input varaible is an object of type ChannelDefinition
152
+ *
153
+ * @param toTest The value to test
154
+ * @returns `true` if the value is a ChannelDefinition, `false` otherwise
155
+ */
156
+ export function isChannelDefinition(toTest) {
157
+ if (typeof toTest !== 'object' || toTest === null)
158
+ return false;
159
+ return typeof toTest.id === 'string' && typeof toTest.getPrimaryDomain === 'function';
160
+ }
161
+ /**
162
+ * Apply a gate on the input variable. It will returned by this function if it is a
163
+ * `ChannelDefinition`. The function will return `undefined` otherwise.
164
+ *
165
+ * @param toTest The value to gate
166
+ * @returns Either `toTest` or `undefined`, depending on the type of `toTest`
167
+ */
168
+ export function ifChannelDefinition(toTest) {
169
+ return isChannelDefinition(toTest) ? toTest : undefined;
170
+ }
138
171
  export default ChannelDefinition;
139
172
  //# sourceMappingURL=definition.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/services/channel-repository/definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/services/channel-repository/definition.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,4 @@
1
1
  export { ChannelRepository, ChannelRepository as default } from './repository.js';
2
- export { ChannelDefinition } from './definition.js';
2
+ export { ChannelDefinition, isChannelDefinition, ifChannelDefinition } from './definition.js';
3
+ export { type ChannelDomain, type ChannelLocale, type ChannelDefinitionData, type ChannelContent } from './types.js';
4
+ export { type ContentLink } from '../types.js';
@@ -1,3 +1,3 @@
1
1
  export { ChannelRepository, ChannelRepository as default } from './repository.js';
2
- export { ChannelDefinition } from './definition.js';
2
+ export { ChannelDefinition, isChannelDefinition, ifChannelDefinition } from './definition.js';
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/channel-repository/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,IAAI,OAAO,EAAE,MAAO,iBAAiB,CAAA;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/channel-repository/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,IAAI,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -22,6 +22,6 @@ export declare class ChannelRepository {
22
22
  * @param cmsDomainGraphClientOrConfig A means to infer the CMS domain, either directly provided or through the Optimizely Graph Client
23
23
  * @returns The ChannelDefinition
24
24
  */
25
- static createDefinition(name: string, domain: string, locales: (string | ChannelLocale)[], cmsDomainGraphClientOrConfig?: string | IOptiGraphClient | OptimizelyGraphConfig): ChannelDefinition;
25
+ static createDefinition(name: string, domain: string | URL, locales: (string | ChannelLocale)[], cmsDomainGraphClientOrConfig?: string | IOptiGraphClient | OptimizelyGraphConfig): ChannelDefinition;
26
26
  }
27
27
  export default ChannelRepository;
@@ -85,13 +85,16 @@ export class ChannelRepository {
85
85
  */
86
86
  static createDefinition(name, domain, locales, cmsDomainGraphClientOrConfig) {
87
87
  const dxp_url = typeof cmsDomainGraphClientOrConfig === 'string' ? cmsDomainGraphClientOrConfig : (isOptiGraphClient(cmsDomainGraphClientOrConfig) ? cmsDomainGraphClientOrConfig.siteInfo.cmsURL : cmsDomainGraphClientOrConfig?.dxp_url) ?? 'https://example.cms.optimizely.com';
88
+ const domainName = isURL(domain) ? domain.host : domain;
89
+ const isSecure = isURL(domain) ? domain.protocol === 'https:' : !(domain.includes(".local") || domain.startsWith("localhost"));
88
90
  const data = {
89
91
  id: generateGuid(),
90
92
  name,
91
93
  domains: [{
92
94
  isEdit: false,
93
95
  isPrimary: true,
94
- name: domain
96
+ isSecure,
97
+ name: domainName,
95
98
  }],
96
99
  content: {},
97
100
  locales: locales.map((locale => {
@@ -108,5 +111,8 @@ export class ChannelRepository {
108
111
  return new ChannelDefinition(data, dxp_url);
109
112
  }
110
113
  }
114
+ function isURL(toTest) {
115
+ return typeof (toTest) === 'object' && toTest !== null && typeof (toTest.protocol) === 'string';
116
+ }
111
117
  export default ChannelRepository;
112
118
  //# sourceMappingURL=repository.js.map
@@ -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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"}
@@ -1,9 +1,31 @@
1
1
  import type { ContentLink } from '../types.js';
2
+ /**
3
+ * Domain definition for a Channel Domain
4
+ */
2
5
  export type ChannelDomain = {
6
+ /**
7
+ * The domain name, without protocol
8
+ */
3
9
  name: string;
10
+ /**
11
+ * Marker to set if this is the primary domain, e.g. the domain
12
+ * to use if there's no other matching.
13
+ */
4
14
  isPrimary: boolean;
15
+ /**
16
+ * Marker to set if this is the edit domain, e.g. the domain
17
+ * to use if there's no other matching.
18
+ */
5
19
  isEdit: boolean;
6
- forLocale?: string;
20
+ /**
21
+ * Marker to set if this domain uses a secure protocol
22
+ */
23
+ isSecure?: boolean;
24
+ /**
25
+ * The locale for this domain. It's to be used for all unmapped
26
+ * locales when this is `undefined` or `"ALL"`.
27
+ */
28
+ forLocale?: "ALL" | string;
7
29
  };
8
30
  export type ChannelLocale = {
9
31
  code: string;
@@ -1,4 +1,5 @@
1
1
  import type { ContentLink, ContentLinkWithLocale, InlineContentLink, InlineContentLinkWithLocale } from "./types.js";
2
+ export type { ContentLink, ContentLinkWithLocale, InlineContentLink, InlineContentLinkWithLocale } from "./types.js";
2
3
  /**
3
4
  * Transform a locale code (e.g. en-US) to a Optimizely Graph compatible locale
4
5
  * (e.g. en_US).
@@ -40,6 +41,9 @@ export declare function contentLinkIsEqualIgnoreVersion(link1: ContentLink | Con
40
41
  */
41
42
  export declare function isContentLink(toTest: any): toTest is ContentLink;
42
43
  export declare function isContentLinkWithLocale(toTest: any): toTest is ContentLinkWithLocale;
44
+ export declare function isContentLinkWithSetLocale<LocaleType = string>(toTest: any): toTest is ContentLink & {
45
+ locale: LocaleType;
46
+ };
43
47
  /**
44
48
  * Test if the variable is an inline content link
45
49
  *
@@ -66,4 +70,3 @@ export declare function normalizeContentLinkWithLocale<LT = string>(toNormalize:
66
70
  * @returns The textual representation of the ContentLink
67
71
  */
68
72
  export declare function contentLinkToString(contentLink: ContentLink | InlineContentLink | null | undefined, unique?: boolean): string;
69
- export {};
@@ -72,6 +72,12 @@ export function isContentLinkWithLocale(toTest) {
72
72
  const locale = toTest.locale;
73
73
  return locale == undefined || locale == null || (typeof (locale) == 'string' && locale.length >= 2 && locale.length <= 5);
74
74
  }
75
+ export function isContentLinkWithSetLocale(toTest) {
76
+ if (!isContentLink(toTest))
77
+ return false;
78
+ const locale = toTest.locale;
79
+ return typeof (locale) == 'string' && locale.length >= 2 && locale.length <= 5;
80
+ }
75
81
  /**
76
82
  * Test if the variable is an inline content link
77
83
  *
@@ -135,7 +141,7 @@ export function normalizeContentLink(toNormalize) {
135
141
  }
136
142
  export function normalizeContentLinkWithLocale(toNormalize) {
137
143
  const normalized = normalizeContentLink(toNormalize);
138
- if (toNormalize?.locale != undefined && !(typeof (toNormalize?.locale) == 'string' && (toNormalize.locale.length == 2 || toNormalize.locale.length == 5)))
144
+ if (normalized && toNormalize?.locale != undefined && !(typeof (toNormalize?.locale) == 'string' && (toNormalize.locale.length == 2 || toNormalize.locale.length == 5)))
139
145
  normalized.locale = toNormalize.locale;
140
146
  return normalized;
141
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/services/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/services/utils.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAI,MAAS;IAC9C,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,IAAI,SAAS,CAAC;QACrH,MAAM,IAAI,KAAK,CAAC,aAAa,MAAM,gCAAgC,CAAC,CAAA;IACtE,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAsC,CAAA;AACzE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAI,WAAc;IACnD,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,IAAI,WAAW,IAAI,KAAK,IAAI,WAAW,IAAI,SAAS,CAAC;QAC9I,MAAM,IAAI,KAAK,CAAC,aAAa,WAAW,gCAAgC,CAAC,CAAA;IAC3E,OAAO,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAsC,CAAA;AAC9E,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAA0C,EAAE,KAA0C;IACvH,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG;QACxB,OAAO,KAAK,CAAA;IACd,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;QACpE,OAAO,KAAK,CAAA;IACd,IAAI,CAAE,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM,CAAC,IAAK,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM;QAC5K,OAAO,KAAK,CAAA;IACd,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,+BAA+B,CAAC,KAA0C,EAAE,KAA0C;IACpI,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG;QACxB,OAAO,KAAK,CAAA;IACd,IAAI,CAAE,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM,CAAC,IAAK,KAA+B,CAAC,MAAM,IAAK,KAA+B,CAAC,MAAM;QAC5K,OAAO,KAAK,CAAA;IACd,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAW;IACvC,uBAAuB;IACvB,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC/C,OAAO,KAAK,CAAA;IAEd,6DAA6D;IAC7D,OAAO,OAAO,CAAE,MAAsB,CAAC,GAAG,CAAC,IAAI,QAAQ,IAAM,MAAsB,CAAC,GAAc,CAAC,MAAM,GAAG,CAAC,CAAA;AAC/G,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAW;IACjD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QACxB,OAAO,KAAK,CAAA;IAEd,MAAM,MAAM,GAAI,MAAgC,CAAC,MAAM,CAAA;IACvD,OAAO,MAAM,IAAI,SAAS,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;AAC3H,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAsB,MAAW;IACzE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QACxB,OAAO,KAAK,CAAA;IAEd,MAAM,MAAM,GAAI,MAAgC,CAAC,MAAM,CAAA;IACvD,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,CAAA;AAChF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAW;IAC7C,IAAI,OAAO,MAAM,IAAI,QAAQ,IAAI,MAAM,IAAI,IAAI;QAC7C,OAAO,KAAK,CAAA;IAEd,IAAK,MAAsC,CAAC,QAAQ,KAAK,IAAI;QAC3D,OAAO,IAAI,CAAA;IAEb,OAAO,CACL,mBAAmB,CAAE,MAAsC,CAAC,GAAG,CAAC;QAChE,aAAa,CAAE,MAAsC,CAAC,OAAO,CAAC;QAC9D,gBAAgB,CAAE,MAAsC,CAAC,MAAM,CAAC,CACjE,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,KAAU;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QACvC,OAAO,IAAI,CAAC;IACd,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,IAAI,KAAK,IAAI,EAAE,CAAC;AACnD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAI,KAA2B;IACnD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AAC7B,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,KAAU;IAClC,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC;AAC7E,CAAC;AAMD;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAsD;IACzF,IAAI,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACnE,OAAO,SAAS,CAAA;IAElB,MAAM,OAAO,GAAoC;QAC/C,GAAG,EAAE,WAAW,CAAC,GAAG;KACrB,CAAA;IACD,IAAI,WAAW,CAAC,OAAO;QACrB,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAA;IAElD,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAc,WAAgD;IAC1G,MAAM,UAAU,GAAG,oBAAoB,CAAC,WAAW,CAA0C,CAAA;IAC7F,IAAI,UAAU,IAAI,WAAW,EAAE,MAAM,IAAI,SAAS,IAAI,CAAC,CAAC,OAAO,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;QACrK,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAA;IACxC,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiB,UAAU;IACpD,IAAI,CAAC;QACH,OAAO,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IACzD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;QACpE,OAAO,MAAM,GAAG,SAAS,CAAA;IAC3B,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAA+D,EAAE,SAAkB,KAAK;IAC1H,IAAI,CAAC,WAAW;QACd,OAAO,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAA;IACpE,OAAO;QACL,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;KAC9C,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC7B,CAAC"}
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": "6.0.0-pre1",
4
+ "version": "6.0.0-pre3",
5
5
  "repository": "https://github.com/remkoj/optimizely-dxp-clients.git",
6
6
  "author": "Remko Jantzen <693172+remkoj@users.noreply.github.com>",
7
7
  "homepage": "https://github.com/remkoj/optimizely-dxp-clients",
@@ -51,7 +51,7 @@
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/crypto-js": "^4.2.2",
54
- "@types/node": "^22.16.0",
54
+ "@types/node": "^22.16.2",
55
55
  "openapi-typescript-codegen": "^0.29.0",
56
56
  "prop-types": "^15.8.1",
57
57
  "scheduler": "^0.26.0",