@dotcms/client 0.0.1-alpha.24 → 0.0.1-alpha.26

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dotcms/client",
3
- "version": "0.0.1-alpha.24",
3
+ "version": "0.0.1-alpha.26",
4
4
  "type": "module",
5
5
  "description": "Official JavaScript library for interacting with DotCMS REST APIs.",
6
6
  "repository": {
@@ -133,9 +133,9 @@ type NavApiOptions = {
133
133
  *
134
134
  */
135
135
  export declare class DotCmsClient {
136
- private config;
137
- private requestOptions;
138
- private listeners;
136
+ #private;
137
+ static instance: DotCmsClient;
138
+ dotcmsUrl?: string;
139
139
  content: Content;
140
140
  constructor(config?: ClientConfig);
141
141
  page: {
@@ -185,26 +185,9 @@ export declare class DotCmsClient {
185
185
  */
186
186
  get: (options?: NavApiOptions) => Promise<unknown>;
187
187
  };
188
+ static init(config: ClientConfig): DotCmsClient;
189
+ static get dotcmsUrl(): string;
188
190
  private validatePageOptions;
189
191
  private validateNavOptions;
190
192
  }
191
- /**
192
- * `dotcmsClient` is an object that provides a method to initialize the DotCMS SDK client.
193
- * It has a single method `init` which takes a configuration object and returns an instance of the `DotCmsClient` class.
194
- *
195
- * @namespace dotcmsClient
196
- *
197
- * @method init(config: ClientConfig): DotCmsClient - Initializes the SDK client.
198
- */
199
- export declare const dotcmsClient: {
200
- /**
201
- * `init` is a method of the `dotcmsClient` object that initializes the SDK client.
202
- * It takes a configuration object as a parameter and returns an instance of the `DotCmsClient` class.
203
- *
204
- * @method init
205
- * @param {ClientConfig} config - The configuration object for the DotCMS client.
206
- * @returns {DotCmsClient} - An instance of the {@link DotCmsClient} class.
207
- */
208
- init: (config: ClientConfig) => DotCmsClient;
209
- };
210
193
  export {};
@@ -1,3 +1,5 @@
1
+ var _DotCmsClient_config, _DotCmsClient_requestOptions, _DotCmsClient_listeners;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
1
3
  import { Content } from './content/content-api';
2
4
  import { ErrorMessages } from './models';
3
5
  import { isInsideEditor } from '../editor/sdk-editor';
@@ -26,7 +28,9 @@ function getHostURL(url) {
26
28
  */
27
29
  export class DotCmsClient {
28
30
  constructor(config = { dotcmsUrl: '', authToken: '', requestOptions: {}, siteId: '' }) {
29
- this.listeners = [];
31
+ _DotCmsClient_config.set(this, void 0);
32
+ _DotCmsClient_requestOptions.set(this, void 0);
33
+ _DotCmsClient_listeners.set(this, []);
30
34
  this.page = {
31
35
  /**
32
36
  * `page.get` is an asynchronous method of the `DotCmsClient` class that retrieves all the elements of any Page in your dotCMS system in JSON format.
@@ -57,14 +61,14 @@ export class DotCmsClient {
57
61
  queryParamsObj[key] = String(value);
58
62
  }
59
63
  }
60
- const queryHostId = options.siteId ?? this.config.siteId ?? '';
64
+ const queryHostId = options.siteId ?? __classPrivateFieldGet(this, _DotCmsClient_config, "f").siteId ?? '';
61
65
  if (queryHostId) {
62
66
  queryParamsObj['host_id'] = queryHostId;
63
67
  }
64
68
  const queryParams = new URLSearchParams(queryParamsObj).toString();
65
69
  const formattedPath = options.path.startsWith('/') ? options.path : `/${options.path}`;
66
- const url = `${this.config.dotcmsUrl}/api/v1/page/json${formattedPath}${queryParams ? `?${queryParams}` : ''}`;
67
- const response = await fetch(url, this.requestOptions);
70
+ const url = `${__classPrivateFieldGet(this, _DotCmsClient_config, "f").dotcmsUrl}/api/v1/page/json${formattedPath}${queryParams ? `?${queryParams}` : ''}`;
71
+ const response = await fetch(url, __classPrivateFieldGet(this, _DotCmsClient_requestOptions, "f"));
68
72
  if (!response.ok) {
69
73
  const error = {
70
74
  status: response.status,
@@ -73,7 +77,7 @@ export class DotCmsClient {
73
77
  console.error(error);
74
78
  throw error;
75
79
  }
76
- return response.json();
80
+ return response.json().then((data) => data.entity);
77
81
  }
78
82
  };
79
83
  this.editor = {
@@ -95,7 +99,7 @@ export class DotCmsClient {
95
99
  }
96
100
  };
97
101
  window.addEventListener('message', messageCallback);
98
- this.listeners.push({ event: 'message', callback: messageCallback, action });
102
+ __classPrivateFieldGet(this, _DotCmsClient_listeners, "f").push({ event: 'message', callback: messageCallback, action });
99
103
  }
100
104
  },
101
105
  /**
@@ -105,11 +109,11 @@ export class DotCmsClient {
105
109
  * @param action
106
110
  */
107
111
  off: (action) => {
108
- const listenerIndex = this.listeners.findIndex((listener) => listener.action === action);
112
+ const listenerIndex = __classPrivateFieldGet(this, _DotCmsClient_listeners, "f").findIndex((listener) => listener.action === action);
109
113
  if (listenerIndex !== -1) {
110
- const listener = this.listeners[listenerIndex];
114
+ const listener = __classPrivateFieldGet(this, _DotCmsClient_listeners, "f")[listenerIndex];
111
115
  window.removeEventListener(listener.event, listener.callback);
112
- this.listeners.splice(listenerIndex, 1);
116
+ __classPrivateFieldGet(this, _DotCmsClient_listeners, "f").splice(listenerIndex, 1);
113
117
  }
114
118
  }
115
119
  };
@@ -138,33 +142,42 @@ export class DotCmsClient {
138
142
  const queryParams = new URLSearchParams(queryParamsObj).toString();
139
143
  // Format the URL correctly depending on the 'path' value
140
144
  const formattedPath = path === '/' ? '/' : `/${path}`;
141
- const url = `${this.config.dotcmsUrl}/api/v1/nav${formattedPath}${queryParams ? `?${queryParams}` : ''}`;
142
- const response = await fetch(url, this.requestOptions);
145
+ const url = `${__classPrivateFieldGet(this, _DotCmsClient_config, "f").dotcmsUrl}/api/v1/nav${formattedPath}${queryParams ? `?${queryParams}` : ''}`;
146
+ const response = await fetch(url, __classPrivateFieldGet(this, _DotCmsClient_requestOptions, "f"));
143
147
  return response.json();
144
148
  }
145
149
  };
146
150
  if (!config.dotcmsUrl) {
147
151
  throw new Error("Invalid configuration - 'dotcmsUrl' is required");
148
152
  }
149
- const dotcmsHost = getHostURL(config.dotcmsUrl);
150
- if (!dotcmsHost) {
153
+ this.dotcmsUrl = getHostURL(config.dotcmsUrl)?.origin;
154
+ if (!this.dotcmsUrl) {
151
155
  throw new Error("Invalid configuration - 'dotcmsUrl' must be a valid URL");
152
156
  }
153
157
  if (!config.authToken) {
154
158
  throw new Error("Invalid configuration - 'authToken' is required");
155
159
  }
156
- this.config = {
160
+ __classPrivateFieldSet(this, _DotCmsClient_config, {
157
161
  ...config,
158
- dotcmsUrl: dotcmsHost.origin
159
- };
160
- this.requestOptions = {
161
- ...this.config.requestOptions,
162
+ dotcmsUrl: this.dotcmsUrl
163
+ }, "f");
164
+ __classPrivateFieldSet(this, _DotCmsClient_requestOptions, {
165
+ ...__classPrivateFieldGet(this, _DotCmsClient_config, "f").requestOptions,
162
166
  headers: {
163
- Authorization: `Bearer ${this.config.authToken}`,
164
- ...this.config.requestOptions?.headers
167
+ Authorization: `Bearer ${__classPrivateFieldGet(this, _DotCmsClient_config, "f").authToken}`,
168
+ ...__classPrivateFieldGet(this, _DotCmsClient_config, "f").requestOptions?.headers
165
169
  }
166
- };
167
- this.content = new Content(this.requestOptions, this.config.dotcmsUrl);
170
+ }, "f");
171
+ this.content = new Content(__classPrivateFieldGet(this, _DotCmsClient_requestOptions, "f"), __classPrivateFieldGet(this, _DotCmsClient_config, "f").dotcmsUrl);
172
+ }
173
+ static init(config) {
174
+ if (this.instance) {
175
+ console.warn('DotCmsClient has already been initialized. Please use the instance to interact with the DotCMS API.');
176
+ }
177
+ return this.instance ?? (this.instance = new DotCmsClient(config));
178
+ }
179
+ static get dotcmsUrl() {
180
+ return (this.instance && __classPrivateFieldGet(this.instance, _DotCmsClient_config, "f").dotcmsUrl) || '';
168
181
  }
169
182
  validatePageOptions(options) {
170
183
  if (!options.path) {
@@ -177,25 +190,5 @@ export class DotCmsClient {
177
190
  }
178
191
  }
179
192
  }
180
- /**
181
- * `dotcmsClient` is an object that provides a method to initialize the DotCMS SDK client.
182
- * It has a single method `init` which takes a configuration object and returns an instance of the `DotCmsClient` class.
183
- *
184
- * @namespace dotcmsClient
185
- *
186
- * @method init(config: ClientConfig): DotCmsClient - Initializes the SDK client.
187
- */
188
- export const dotcmsClient = {
189
- /**
190
- * `init` is a method of the `dotcmsClient` object that initializes the SDK client.
191
- * It takes a configuration object as a parameter and returns an instance of the `DotCmsClient` class.
192
- *
193
- * @method init
194
- * @param {ClientConfig} config - The configuration object for the DotCMS client.
195
- * @returns {DotCmsClient} - An instance of the {@link DotCmsClient} class.
196
- */
197
- init: (config) => {
198
- return new DotCmsClient(config);
199
- }
200
- };
193
+ _DotCmsClient_config = new WeakMap(), _DotCmsClient_requestOptions = new WeakMap(), _DotCmsClient_listeners = new WeakMap();
201
194
  //# sourceMappingURL=sdk-js-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-js-client.js","sourceRoot":"","sources":["../../../../../../../libs/sdk/client/src/lib/client/sdk-js-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk-js-client.js","sourceRoot":"","sources":["../../../../../../../libs/sdk/client/src/lib/client/sdk-js-client.ts"],"names":[],"mappings":"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"}