dotcms 0.0.18 → 0.0.20
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 +9 -9
- package/package.json +7 -11
- package/{index.d.ts → src/index.d.ts} +0 -0
- package/src/index.js +40 -0
- package/src/index.js.map +1 -0
- package/{lib → src/lib}/api/DotApiAuthorization.d.ts +0 -1
- package/src/lib/api/DotApiAuthorization.js +46 -0
- package/src/lib/api/DotApiAuthorization.js.map +1 -0
- package/{lib → src/lib}/api/DotApiConfiguration.d.ts +0 -0
- package/src/lib/api/DotApiConfiguration.js +32 -0
- package/src/lib/api/DotApiConfiguration.js.map +1 -0
- package/{lib → src/lib}/api/DotApiContent.d.ts +0 -0
- package/src/lib/api/DotApiContent.js +59 -0
- package/src/lib/api/DotApiContent.js.map +1 -0
- package/{lib → src/lib}/api/DotApiContentType.d.ts +1 -1
- package/src/lib/api/DotApiContentType.js +35 -0
- package/src/lib/api/DotApiContentType.js.map +1 -0
- package/{lib → src/lib}/api/DotApiElasticSearch.d.ts +0 -0
- package/src/lib/api/DotApiElasticSearch.js +37 -0
- package/src/lib/api/DotApiElasticSearch.js.map +1 -0
- package/{lib → src/lib}/api/DotApiEvent.d.ts +0 -0
- package/src/lib/api/DotApiEvent.js +20 -0
- package/src/lib/api/DotApiEvent.js.map +1 -0
- package/{lib → src/lib}/api/DotApiForm.d.ts +1 -1
- package/src/lib/api/DotApiForm.js +25 -0
- package/src/lib/api/DotApiForm.js.map +1 -0
- package/{lib → src/lib}/api/DotApiLanguage.d.ts +0 -0
- package/src/lib/api/DotApiLanguage.js +33 -0
- package/src/lib/api/DotApiLanguage.js.map +1 -0
- package/{lib → src/lib}/api/DotApiNavigation.d.ts +1 -1
- package/src/lib/api/DotApiNavigation.js +34 -0
- package/src/lib/api/DotApiNavigation.js.map +1 -0
- package/{lib → src/lib}/api/DotApiPage.d.ts +1 -1
- package/src/lib/api/DotApiPage.js +51 -0
- package/src/lib/api/DotApiPage.js.map +1 -0
- package/{lib → src/lib}/api/DotApiSite.d.ts +0 -0
- package/src/lib/api/DotApiSite.js +31 -0
- package/src/lib/api/DotApiSite.js.map +1 -0
- package/{lib → src/lib}/api/DotApiWidget.d.ts +0 -0
- package/src/lib/api/DotApiWidget.js +33 -0
- package/src/lib/api/DotApiWidget.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSAuthorization.model.d.ts +0 -0
- package/src/lib/models/DotCMSAuthorization.model.js +3 -0
- package/src/lib/models/DotCMSAuthorization.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSConfiguration.model.d.ts +1 -1
- package/src/lib/models/DotCMSConfiguration.model.js +3 -0
- package/src/lib/models/DotCMSConfiguration.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSContent.model.d.ts +0 -0
- package/src/lib/models/DotCMSContent.model.js +3 -0
- package/src/lib/models/DotCMSContent.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSElasticSearch.model.d.ts +0 -0
- package/src/lib/models/DotCMSElasticSearch.model.js +3 -0
- package/src/lib/models/DotCMSElasticSearch.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSError.model.d.ts +0 -0
- package/src/lib/models/DotCMSError.model.js +3 -0
- package/src/lib/models/DotCMSError.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSEvent.model.d.ts +0 -0
- package/src/lib/models/DotCMSEvent.model.js +3 -0
- package/src/lib/models/DotCMSEvent.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSForm.model.d.ts +0 -0
- package/src/lib/models/DotCMSForm.model.js +3 -0
- package/src/lib/models/DotCMSForm.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSHttpClient.model.d.ts +0 -0
- package/src/lib/models/DotCMSHttpClient.model.js +3 -0
- package/src/lib/models/DotCMSHttpClient.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSLanguage.model.d.ts +0 -0
- package/src/lib/models/DotCMSLanguage.model.js +3 -0
- package/src/lib/models/DotCMSLanguage.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSNavigation.model.d.ts +0 -0
- package/src/lib/models/DotCMSNavigation.model.js +3 -0
- package/src/lib/models/DotCMSNavigation.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSPage.model.d.ts +0 -0
- package/src/lib/models/DotCMSPage.model.js +3 -0
- package/src/lib/models/DotCMSPage.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSPageFormat.model.d.ts +0 -0
- package/src/lib/models/DotCMSPageFormat.model.js +3 -0
- package/src/lib/models/DotCMSPageFormat.model.js.map +1 -0
- package/{lib → src/lib}/models/DotCMSSite.model.d.ts +0 -0
- package/src/lib/models/DotCMSSite.model.js +3 -0
- package/src/lib/models/DotCMSSite.model.js.map +1 -0
- package/{lib → src/lib}/models/index.d.ts +0 -0
- package/src/lib/models/index.js +17 -0
- package/src/lib/models/index.js.map +1 -0
- package/{lib → src/lib}/utils/DotCMSHttpClient.d.ts +0 -0
- package/src/lib/utils/DotCMSHttpClient.js +14 -0
- package/src/lib/utils/DotCMSHttpClient.js.map +1 -0
- package/{lib → src/lib}/utils/getEsQuery.d.ts +0 -0
- package/src/lib/utils/getEsQuery.js +39 -0
- package/src/lib/utils/getEsQuery.js.map +1 -0
- package/{lib → src/lib}/utils/request.d.ts +1 -1
- package/src/lib/utils/request.js +47 -0
- package/src/lib/utils/request.js.map +1 -0
- package/bundles/dotcms.umd.js +0 -966
- package/bundles/dotcms.umd.js.map +0 -1
- package/bundles/dotcms.umd.min.js +0 -16
- package/bundles/dotcms.umd.min.js.map +0 -1
- package/dotcms.d.ts +0 -4
- package/dotcms.metadata.json +0 -1
- package/esm2015/dotcms.js +0 -5
- package/esm2015/index.js +0 -36
- package/esm2015/lib/api/DotApiAuthorization.js +0 -43
- package/esm2015/lib/api/DotApiConfiguration.js +0 -28
- package/esm2015/lib/api/DotApiContent.js +0 -55
- package/esm2015/lib/api/DotApiContentType.js +0 -31
- package/esm2015/lib/api/DotApiElasticSearch.js +0 -33
- package/esm2015/lib/api/DotApiEvent.js +0 -16
- package/esm2015/lib/api/DotApiForm.js +0 -21
- package/esm2015/lib/api/DotApiLanguage.js +0 -29
- package/esm2015/lib/api/DotApiNavigation.js +0 -30
- package/esm2015/lib/api/DotApiPage.js +0 -47
- package/esm2015/lib/api/DotApiSite.js +0 -27
- package/esm2015/lib/api/DotApiWidget.js +0 -29
- package/esm2015/lib/models/DotCMSAuthorization.model.js +0 -2
- package/esm2015/lib/models/DotCMSConfiguration.model.js +0 -2
- package/esm2015/lib/models/DotCMSContent.model.js +0 -2
- package/esm2015/lib/models/DotCMSElasticSearch.model.js +0 -2
- package/esm2015/lib/models/DotCMSError.model.js +0 -2
- package/esm2015/lib/models/DotCMSEvent.model.js +0 -2
- package/esm2015/lib/models/DotCMSForm.model.js +0 -2
- package/esm2015/lib/models/DotCMSHttpClient.model.js +0 -2
- package/esm2015/lib/models/DotCMSLanguage.model.js +0 -2
- package/esm2015/lib/models/DotCMSNavigation.model.js +0 -2
- package/esm2015/lib/models/DotCMSPage.model.js +0 -2
- package/esm2015/lib/models/DotCMSPageFormat.model.js +0 -2
- package/esm2015/lib/models/DotCMSSite.model.js +0 -2
- package/esm2015/lib/models/index.js +0 -14
- package/esm2015/lib/utils/DotCMSHttpClient.js +0 -10
- package/esm2015/lib/utils/getEsQuery.js +0 -35
- package/esm2015/lib/utils/request.js +0 -44
- package/fesm2015/dotcms.js +0 -494
- package/fesm2015/dotcms.js.map +0 -1
package/fesm2015/dotcms.js
DELETED
|
@@ -1,494 +0,0 @@
|
|
|
1
|
-
import { __awaiter, __rest } from 'tslib';
|
|
2
|
-
import fetch from 'cross-fetch';
|
|
3
|
-
|
|
4
|
-
function getErrorMessage(data) {
|
|
5
|
-
if (data.errors) {
|
|
6
|
-
return data.errors[0].message;
|
|
7
|
-
}
|
|
8
|
-
if (data.error) {
|
|
9
|
-
return data.error;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* DotCMS Authentication handler to intereact with {@link https://dotcms.com/docs/latest/rest-api-authentication | Authentication API}
|
|
14
|
-
*
|
|
15
|
-
*/
|
|
16
|
-
class DotApiAuthorization {
|
|
17
|
-
/**
|
|
18
|
-
* Given user, password and expiration date to get a DotCMS Autorization Token
|
|
19
|
-
*/
|
|
20
|
-
getToken(params) {
|
|
21
|
-
const { user, password, expirationDays, host } = params;
|
|
22
|
-
return fetch(`${host || ''}/api/v1/authentication/api-token`, {
|
|
23
|
-
method: 'POST',
|
|
24
|
-
headers: {
|
|
25
|
-
'Content-Type': 'application/json'
|
|
26
|
-
},
|
|
27
|
-
body: JSON.stringify({
|
|
28
|
-
user: user,
|
|
29
|
-
password: password,
|
|
30
|
-
expirationDays: expirationDays || 10
|
|
31
|
-
})
|
|
32
|
-
}).then((res) => __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
const data = yield res.json();
|
|
34
|
-
if (res.status === 200) {
|
|
35
|
-
return data.entity.token;
|
|
36
|
-
}
|
|
37
|
-
throw {
|
|
38
|
-
message: getErrorMessage(data),
|
|
39
|
-
statusCode: res.status
|
|
40
|
-
};
|
|
41
|
-
}));
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Get the information of DotCMS configuration
|
|
47
|
-
*
|
|
48
|
-
*/
|
|
49
|
-
class DotApiConfiguration {
|
|
50
|
-
constructor(httpClient) {
|
|
51
|
-
this.dotCMSHttpClient = httpClient;
|
|
52
|
-
}
|
|
53
|
-
// TODO: CATCH THIS ERROR
|
|
54
|
-
get() {
|
|
55
|
-
return this.dotCMSHttpClient
|
|
56
|
-
.request({
|
|
57
|
-
url: '/api/v1/configuration'
|
|
58
|
-
})
|
|
59
|
-
.then((response) => __awaiter(this, void 0, void 0, function* () {
|
|
60
|
-
if (response.status === 200) {
|
|
61
|
-
const data = yield response.json();
|
|
62
|
-
return data.entity;
|
|
63
|
-
}
|
|
64
|
-
throw {
|
|
65
|
-
message: yield response.text(),
|
|
66
|
-
statusCode: response.status
|
|
67
|
-
};
|
|
68
|
-
}));
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
// tslint:disable-next-line:cyclomatic-complexity
|
|
73
|
-
function getEsQuery(params) {
|
|
74
|
-
const { contentType, queryParams: { languageId, sortResultsBy, sortOrder1, offset, pagination, itemsPerPage, numberOfResults, detailedSearchQuery } } = params;
|
|
75
|
-
const paginationQuery = `,
|
|
76
|
-
"from": OFFSETVALUE,
|
|
77
|
-
"size": SIZEPERPAGE`;
|
|
78
|
-
let query = `{
|
|
79
|
-
"query": {
|
|
80
|
-
"bool": {
|
|
81
|
-
"must": {
|
|
82
|
-
"query_string" : {
|
|
83
|
-
"query" : "+contentType:CONTENTTYPE +languageId:LANGUAGEIDVALUE ${detailedSearchQuery || ''}"
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
"sort" : [
|
|
89
|
-
{ "SORTBYVALUE" : {"order" : "SORTTYPEVALUE"}}
|
|
90
|
-
]
|
|
91
|
-
${pagination || numberOfResults ? paginationQuery : ''}
|
|
92
|
-
}`;
|
|
93
|
-
const esParams = {
|
|
94
|
-
CONTENTTYPE: contentType,
|
|
95
|
-
LANGUAGEIDVALUE: languageId || '1',
|
|
96
|
-
SORTBYVALUE: sortResultsBy || 'title_dotraw',
|
|
97
|
-
SORTTYPEVALUE: sortOrder1 || 'asc',
|
|
98
|
-
OFFSETVALUE: offset || '0',
|
|
99
|
-
SIZEPERPAGE: pagination ? itemsPerPage || 20 : numberOfResults || 40
|
|
100
|
-
};
|
|
101
|
-
Object.keys(esParams).forEach((key) => {
|
|
102
|
-
query = query.replace(key, esParams[key]);
|
|
103
|
-
});
|
|
104
|
-
return query;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* Request content from DotCMS using the {@link https://dotcms.com/docs/latest/elasticsearch-rest-api | Elastic Search API}
|
|
109
|
-
*
|
|
110
|
-
*/
|
|
111
|
-
class DotApiElasticSearch {
|
|
112
|
-
constructor(httpClient) {
|
|
113
|
-
this.dotCMSHttpClient = httpClient;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Provide the content type and the elastic search query and get the results contentlets and elastic search information
|
|
117
|
-
*
|
|
118
|
-
*/
|
|
119
|
-
search(params) {
|
|
120
|
-
return this.dotCMSHttpClient
|
|
121
|
-
.request({
|
|
122
|
-
url: '/api/es/search',
|
|
123
|
-
method: 'POST',
|
|
124
|
-
body: getEsQuery(params)
|
|
125
|
-
})
|
|
126
|
-
.then((response) => __awaiter(this, void 0, void 0, function* () {
|
|
127
|
-
if (response.status === 200) {
|
|
128
|
-
return response.json();
|
|
129
|
-
}
|
|
130
|
-
throw {
|
|
131
|
-
message: yield response.text(),
|
|
132
|
-
statusCode: response.status
|
|
133
|
-
};
|
|
134
|
-
}));
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
/**
|
|
139
|
-
* Emit custom events for the DotCMS Edit Mode
|
|
140
|
-
*
|
|
141
|
-
*/
|
|
142
|
-
class DotApiEvent {
|
|
143
|
-
emit(params) {
|
|
144
|
-
const { name, data } = params;
|
|
145
|
-
const customEvent = window.top.document.createEvent('CustomEvent');
|
|
146
|
-
customEvent.initCustomEvent('ng-event', false, false, {
|
|
147
|
-
name: name,
|
|
148
|
-
data: data
|
|
149
|
-
});
|
|
150
|
-
window.top.document.dispatchEvent(customEvent);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
/**
|
|
155
|
-
* Get DotCMS {@link https://dotcms.com/docs/latest/adding-and-editing-languages | Language code}
|
|
156
|
-
*
|
|
157
|
-
*/
|
|
158
|
-
class DotApiLanguage {
|
|
159
|
-
constructor(appConfig) {
|
|
160
|
-
this.dotAppConfig = appConfig;
|
|
161
|
-
}
|
|
162
|
-
getId(langCode) {
|
|
163
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
164
|
-
const languages = yield this.getLanguages();
|
|
165
|
-
const language = languages.find((lang) => lang.languageCode === langCode);
|
|
166
|
-
return language ? `${language.id}` : null;
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
getLanguages() {
|
|
170
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
171
|
-
if (this._languagesConf) {
|
|
172
|
-
return this._languagesConf;
|
|
173
|
-
}
|
|
174
|
-
this._languagesConf = yield this.dotAppConfig
|
|
175
|
-
.get()
|
|
176
|
-
.then((data) => data.languages);
|
|
177
|
-
return this._languagesConf;
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
/**
|
|
183
|
-
* Retrieve information about the dotCMS file and folder tree with the {@link https://dotcms.com/docs/latest/navigation-rest-api | Navigation REST API }
|
|
184
|
-
*
|
|
185
|
-
*/
|
|
186
|
-
class DotApiNavigation {
|
|
187
|
-
constructor(httpClient) {
|
|
188
|
-
this.dotCMSHttpClient = httpClient;
|
|
189
|
-
}
|
|
190
|
-
get(deep = '2', location = '/') {
|
|
191
|
-
return this.dotCMSHttpClient
|
|
192
|
-
.request({
|
|
193
|
-
url: `/api/v1/nav/${location}`,
|
|
194
|
-
params: {
|
|
195
|
-
deep
|
|
196
|
-
}
|
|
197
|
-
})
|
|
198
|
-
.then((res) => __awaiter(this, void 0, void 0, function* () {
|
|
199
|
-
if (res.status === 200) {
|
|
200
|
-
const data = yield res.json();
|
|
201
|
-
return data.entity;
|
|
202
|
-
}
|
|
203
|
-
throw {
|
|
204
|
-
message: yield res.text(),
|
|
205
|
-
statusCode: res.status
|
|
206
|
-
};
|
|
207
|
-
}));
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
/**
|
|
212
|
-
* Allow easy interaction with {@link https://dotcms.com/docs/latest/page-rest-api-layout-as-a-service-laas | DotCMS Page API}
|
|
213
|
-
*
|
|
214
|
-
*/
|
|
215
|
-
class DotApiPage {
|
|
216
|
-
constructor(httpClient, appLanguage) {
|
|
217
|
-
this.dotCMSHttpClient = httpClient;
|
|
218
|
-
this.dotAppLanguage = appLanguage;
|
|
219
|
-
}
|
|
220
|
-
/**
|
|
221
|
-
* Given the page url and the language return a {@link DotCMSPageAsset}
|
|
222
|
-
*
|
|
223
|
-
*/
|
|
224
|
-
get(params, format = "json" /* JSON */) {
|
|
225
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
226
|
-
if (params.language) {
|
|
227
|
-
params = Object.assign(Object.assign({}, params), { language: isNaN(params.language)
|
|
228
|
-
? yield this.dotAppLanguage.getId(params.language)
|
|
229
|
-
: params.language });
|
|
230
|
-
}
|
|
231
|
-
params = Object.assign(Object.assign({}, params), { url: `/api/v1/page/${format}${params.url}` });
|
|
232
|
-
return this.dotCMSHttpClient.request(params).then((res) => __awaiter(this, void 0, void 0, function* () {
|
|
233
|
-
if (res.status === 200) {
|
|
234
|
-
const data = yield res.json();
|
|
235
|
-
return data.entity;
|
|
236
|
-
}
|
|
237
|
-
const response = yield res.text();
|
|
238
|
-
let error;
|
|
239
|
-
try {
|
|
240
|
-
error = {
|
|
241
|
-
statusCode: res.status,
|
|
242
|
-
message: JSON.parse(response).message
|
|
243
|
-
};
|
|
244
|
-
}
|
|
245
|
-
catch (_a) {
|
|
246
|
-
error = {
|
|
247
|
-
statusCode: res.status,
|
|
248
|
-
message: response
|
|
249
|
-
};
|
|
250
|
-
}
|
|
251
|
-
throw error;
|
|
252
|
-
}));
|
|
253
|
-
});
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
/**
|
|
258
|
-
* Get information from {@link https://dotcms.com/docs/latest/multi-site-management | DotCMS Sites}
|
|
259
|
-
*/
|
|
260
|
-
class DotApiSite {
|
|
261
|
-
constructor(httpClient) {
|
|
262
|
-
this.dotCMSHttpClient = httpClient;
|
|
263
|
-
}
|
|
264
|
-
getCurrentSite() {
|
|
265
|
-
return this.dotCMSHttpClient
|
|
266
|
-
.request({
|
|
267
|
-
url: `/api/v1/site/currentSite`
|
|
268
|
-
})
|
|
269
|
-
.then((response) => __awaiter(this, void 0, void 0, function* () {
|
|
270
|
-
if (response.status === 200) {
|
|
271
|
-
const data = yield response.json();
|
|
272
|
-
const _a = data.entity, { map } = _a, site = __rest(_a, ["map"]);
|
|
273
|
-
return site;
|
|
274
|
-
}
|
|
275
|
-
throw {
|
|
276
|
-
message: yield response.text(),
|
|
277
|
-
statusCode: response.status
|
|
278
|
-
};
|
|
279
|
-
}));
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
/**
|
|
284
|
-
* DotCMS {@link https://dotcms.com/docs/latest/widgets | widgets handler}
|
|
285
|
-
*/
|
|
286
|
-
class DotApiWidget {
|
|
287
|
-
constructor(httpClient) {
|
|
288
|
-
this.dotCMSHttpClient = httpClient;
|
|
289
|
-
}
|
|
290
|
-
/**
|
|
291
|
-
* Get the widght HTML strong with it identifier
|
|
292
|
-
*
|
|
293
|
-
*/
|
|
294
|
-
getHtml(widgetId) {
|
|
295
|
-
return this.dotCMSHttpClient
|
|
296
|
-
.request({
|
|
297
|
-
url: `/api/widget/id/${widgetId}`
|
|
298
|
-
})
|
|
299
|
-
.then((response) => __awaiter(this, void 0, void 0, function* () {
|
|
300
|
-
if (response.status === 200) {
|
|
301
|
-
return response.text();
|
|
302
|
-
}
|
|
303
|
-
throw {
|
|
304
|
-
message: yield response.text(),
|
|
305
|
-
statusCode: response.status
|
|
306
|
-
};
|
|
307
|
-
}));
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
function getUrl({ params, url }, { host, hostId }) {
|
|
312
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
313
|
-
if (!host) {
|
|
314
|
-
throw new Error('Please pass the DotCMS instance in the initDotCMS initialization');
|
|
315
|
-
}
|
|
316
|
-
const newUrl = new URL(`${host}${url}`);
|
|
317
|
-
const paramsKeys = params ? Object.keys(params) : [];
|
|
318
|
-
if (paramsKeys.length) {
|
|
319
|
-
paramsKeys.map((key) => {
|
|
320
|
-
newUrl.searchParams.append(key, params[key]);
|
|
321
|
-
});
|
|
322
|
-
}
|
|
323
|
-
if (hostId) {
|
|
324
|
-
newUrl.searchParams.append('host_id', hostId);
|
|
325
|
-
}
|
|
326
|
-
return `${newUrl.toString()}`;
|
|
327
|
-
});
|
|
328
|
-
}
|
|
329
|
-
function shouldAppendBody(params) {
|
|
330
|
-
return params.method === 'POST' && !!params.body;
|
|
331
|
-
}
|
|
332
|
-
function getOpts(params, config) {
|
|
333
|
-
let opts = {
|
|
334
|
-
method: params.method || 'GET',
|
|
335
|
-
headers: {
|
|
336
|
-
Authorization: `Bearer ${config.token}`,
|
|
337
|
-
'Content-type': 'application/json'
|
|
338
|
-
}
|
|
339
|
-
};
|
|
340
|
-
if (shouldAppendBody(params)) {
|
|
341
|
-
opts = Object.assign(Object.assign({}, opts), { body: params.body });
|
|
342
|
-
}
|
|
343
|
-
return opts;
|
|
344
|
-
}
|
|
345
|
-
function request(options, config) {
|
|
346
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
347
|
-
const url = yield getUrl(options, config);
|
|
348
|
-
const opts = getOpts(options, config);
|
|
349
|
-
return fetch(url, opts);
|
|
350
|
-
});
|
|
351
|
-
}
|
|
352
|
-
|
|
353
|
-
class DotCMSHttpClient {
|
|
354
|
-
constructor(config) {
|
|
355
|
-
this._config = config;
|
|
356
|
-
}
|
|
357
|
-
request(params) {
|
|
358
|
-
return request(params, this._config);
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
|
|
362
|
-
function populateQueryUrl(params) {
|
|
363
|
-
let url = '';
|
|
364
|
-
const attrs = {
|
|
365
|
-
depth: `/depth/${params.options.depth}`,
|
|
366
|
-
limit: `/limit/${params.options.limit}`,
|
|
367
|
-
offset: `/offset/${params.options.offset}`,
|
|
368
|
-
orderBy: `/orderby/${params.options.orderBy}`
|
|
369
|
-
};
|
|
370
|
-
if (params.queryParams) {
|
|
371
|
-
for (const key of Object.keys(params.queryParams)) {
|
|
372
|
-
url += `+${key}:${params.queryParams[key]}%20`;
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
for (const key of Object.keys(params.options)) {
|
|
376
|
-
url += attrs[key];
|
|
377
|
-
}
|
|
378
|
-
return url;
|
|
379
|
-
}
|
|
380
|
-
/**
|
|
381
|
-
* Query/Save/Publish the information of DotCMS Content
|
|
382
|
-
*
|
|
383
|
-
*/
|
|
384
|
-
class DotApiContent {
|
|
385
|
-
constructor(httpClient) {
|
|
386
|
-
this.dotCMSHttpClient = httpClient;
|
|
387
|
-
}
|
|
388
|
-
query(params) {
|
|
389
|
-
const url = `/api/content/query/+contentType:${params.contentType}%20${populateQueryUrl(params)}`;
|
|
390
|
-
return this.doRequest(url, null, 'GET');
|
|
391
|
-
}
|
|
392
|
-
save(params) {
|
|
393
|
-
return this.doRequest('/api/content/save/1', params);
|
|
394
|
-
}
|
|
395
|
-
publish(params) {
|
|
396
|
-
return this.doRequest('/api/content/publish/1', params);
|
|
397
|
-
}
|
|
398
|
-
doRequest(url, params, httpMethod = 'POST') {
|
|
399
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
400
|
-
const response = yield this.dotCMSHttpClient.request({
|
|
401
|
-
url,
|
|
402
|
-
method: httpMethod,
|
|
403
|
-
body: params ? JSON.stringify(params) : ''
|
|
404
|
-
});
|
|
405
|
-
if (response.status !== 200) {
|
|
406
|
-
throw {
|
|
407
|
-
message: yield response.text(),
|
|
408
|
-
statusCode: response.status
|
|
409
|
-
};
|
|
410
|
-
}
|
|
411
|
-
return response;
|
|
412
|
-
});
|
|
413
|
-
}
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
/**
|
|
417
|
-
* Get the information of DotCMS contentTypes
|
|
418
|
-
*
|
|
419
|
-
*/
|
|
420
|
-
class DotApiContentType {
|
|
421
|
-
constructor(httpClient) {
|
|
422
|
-
this.dotCMSHttpClient = httpClient;
|
|
423
|
-
}
|
|
424
|
-
get(contentTypeId) {
|
|
425
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
426
|
-
const response = yield this.dotCMSHttpClient.request({
|
|
427
|
-
url: `/api/v1/contenttype/id/${contentTypeId}`
|
|
428
|
-
});
|
|
429
|
-
if (response.status !== 200) {
|
|
430
|
-
throw {
|
|
431
|
-
message: yield response.text(),
|
|
432
|
-
statusCode: response.status
|
|
433
|
-
};
|
|
434
|
-
}
|
|
435
|
-
const data = yield response.json();
|
|
436
|
-
return data.entity;
|
|
437
|
-
});
|
|
438
|
-
}
|
|
439
|
-
getLayout(contentTypeId) {
|
|
440
|
-
return this.get(contentTypeId).then((contentType) => {
|
|
441
|
-
return contentType.layout;
|
|
442
|
-
});
|
|
443
|
-
}
|
|
444
|
-
}
|
|
445
|
-
|
|
446
|
-
/**
|
|
447
|
-
* Creates and provide methods to render a DotCMS Form
|
|
448
|
-
*
|
|
449
|
-
*/
|
|
450
|
-
class DotApiForm {
|
|
451
|
-
constructor(dotApiContentType, formConfig) {
|
|
452
|
-
this.dotApiContentType = dotApiContentType;
|
|
453
|
-
this.formConfig = formConfig;
|
|
454
|
-
}
|
|
455
|
-
/**
|
|
456
|
-
* Render form on provided html element
|
|
457
|
-
* @memberof DotApiForm
|
|
458
|
-
*/
|
|
459
|
-
get() {
|
|
460
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
461
|
-
return this.dotApiContentType.get(this.formConfig.identifier);
|
|
462
|
-
});
|
|
463
|
-
}
|
|
464
|
-
}
|
|
465
|
-
|
|
466
|
-
const initDotCMS = (config) => {
|
|
467
|
-
const httpClient = new DotCMSHttpClient(config);
|
|
468
|
-
const apiConfig = new DotApiConfiguration(httpClient);
|
|
469
|
-
const apiLanguage = new DotApiLanguage(apiConfig);
|
|
470
|
-
const content = new DotApiContent(httpClient);
|
|
471
|
-
const dotApiContentType = new DotApiContentType(httpClient);
|
|
472
|
-
return {
|
|
473
|
-
auth: new DotApiAuthorization(),
|
|
474
|
-
config: apiConfig,
|
|
475
|
-
content: content,
|
|
476
|
-
contentType: new DotApiContentType(httpClient),
|
|
477
|
-
esSearch: new DotApiElasticSearch(httpClient),
|
|
478
|
-
event: new DotApiEvent(),
|
|
479
|
-
form: (formConfig) => new DotApiForm(dotApiContentType, formConfig),
|
|
480
|
-
language: apiLanguage,
|
|
481
|
-
nav: new DotApiNavigation(httpClient),
|
|
482
|
-
page: new DotApiPage(httpClient, apiLanguage),
|
|
483
|
-
site: new DotApiSite(httpClient),
|
|
484
|
-
widget: new DotApiWidget(httpClient),
|
|
485
|
-
httpClient
|
|
486
|
-
};
|
|
487
|
-
};
|
|
488
|
-
|
|
489
|
-
/**
|
|
490
|
-
* Generated bundle index. Do not edit.
|
|
491
|
-
*/
|
|
492
|
-
|
|
493
|
-
export { initDotCMS };
|
|
494
|
-
//# sourceMappingURL=dotcms.js.map
|
package/fesm2015/dotcms.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dotcms.js","sources":["../../../../libs/dotcms/src/lib/api/DotApiAuthorization.ts","../../../../libs/dotcms/src/lib/api/DotApiConfiguration.ts","../../../../libs/dotcms/src/lib/utils/getEsQuery.ts","../../../../libs/dotcms/src/lib/api/DotApiElasticSearch.ts","../../../../libs/dotcms/src/lib/api/DotApiEvent.ts","../../../../libs/dotcms/src/lib/api/DotApiLanguage.ts","../../../../libs/dotcms/src/lib/api/DotApiNavigation.ts","../../../../libs/dotcms/src/lib/api/DotApiPage.ts","../../../../libs/dotcms/src/lib/api/DotApiSite.ts","../../../../libs/dotcms/src/lib/api/DotApiWidget.ts","../../../../libs/dotcms/src/lib/utils/request.ts","../../../../libs/dotcms/src/lib/utils/DotCMSHttpClient.ts","../../../../libs/dotcms/src/lib/api/DotApiContent.ts","../../../../libs/dotcms/src/lib/api/DotApiContentType.ts","../../../../libs/dotcms/src/lib/api/DotApiForm.ts","../../../../libs/dotcms/src/index.ts","../../../../libs/dotcms/src/dotcms.ts"],"sourcesContent":["import { DotCMSAuthorizationLoginParams, DotCMSError } from '../models';\nimport fetch from 'cross-fetch';\nimport { Response } from 'cross-fetch/lib.fetch';\n\nfunction getErrorMessage(data: { [key: string]: any }) {\n if (data.errors) {\n return data.errors[0].message;\n }\n\n if (data.error) {\n return data.error;\n }\n}\n\n/**\n * DotCMS Authentication handler to intereact with {@link https://dotcms.com/docs/latest/rest-api-authentication | Authentication API}\n *\n */\nexport class DotApiAuthorization {\n /**\n * Given user, password and expiration date to get a DotCMS Autorization Token\n */\n\n getToken(params: DotCMSAuthorizationLoginParams): Promise<Response> {\n const { user, password, expirationDays, host } = params;\n\n return fetch(`${host || ''}/api/v1/authentication/api-token`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n user: user,\n password: password,\n expirationDays: expirationDays || 10\n })\n }).then(async (res: Response) => {\n const data = await res.json();\n\n if (res.status === 200) {\n return data.entity.token;\n }\n\n throw <DotCMSError>{\n message: getErrorMessage(data),\n statusCode: res.status\n };\n });\n }\n}\n","import { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { DotCMSConfigurationItem, DotCMSError } from '../models';\n\n/**\n * Get the information of DotCMS configuration\n *\n */\nexport class DotApiConfiguration {\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient) {\n this.dotCMSHttpClient = httpClient;\n }\n\n // TODO: CATCH THIS ERROR\n get(): Promise<DotCMSConfigurationItem> {\n return this.dotCMSHttpClient\n .request({\n url: '/api/v1/configuration'\n })\n .then(async (response: Response) => {\n if (response.status === 200) {\n const data = await response.json();\n return data.entity;\n }\n\n throw <DotCMSError>{\n message: await response.text(),\n statusCode: response.status\n };\n });\n }\n}\n","import { DotCMSElasticSearchParams } from '../models';\n\n// tslint:disable-next-line:cyclomatic-complexity\nexport function getEsQuery(params: DotCMSElasticSearchParams): string {\n const {\n contentType,\n queryParams: {\n languageId,\n sortResultsBy,\n sortOrder1,\n offset,\n pagination,\n itemsPerPage,\n numberOfResults,\n detailedSearchQuery\n }\n } = params;\n const paginationQuery = `,\n \"from\": OFFSETVALUE,\n \"size\": SIZEPERPAGE`;\n\n let query = `{\n \"query\": {\n \"bool\": {\n \"must\": {\n \"query_string\" : {\n \"query\" : \"+contentType:CONTENTTYPE +languageId:LANGUAGEIDVALUE ${\n detailedSearchQuery || ''\n }\"\n }\n }\n }\n },\n \"sort\" : [\n { \"SORTBYVALUE\" : {\"order\" : \"SORTTYPEVALUE\"}}\n ]\n ${pagination || numberOfResults ? paginationQuery : ''}\n }`;\n\n const esParams = {\n CONTENTTYPE: contentType,\n LANGUAGEIDVALUE: languageId || '1',\n SORTBYVALUE: sortResultsBy || 'title_dotraw',\n SORTTYPEVALUE: sortOrder1 || 'asc',\n OFFSETVALUE: offset || '0',\n SIZEPERPAGE: pagination ? itemsPerPage || 20 : numberOfResults || 40\n };\n\n Object.keys(esParams).forEach((key) => {\n query = query.replace(key, esParams[key]);\n });\n\n return query;\n}\n","import { DotCMSError } from './../models/DotCMSError.model';\nimport { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { getEsQuery } from '../utils/getEsQuery';\nimport { DotCMSElasticSearchResult, DotCMSElasticSearchParams } from '../models';\n\n/**\n * Request content from DotCMS using the {@link https://dotcms.com/docs/latest/elasticsearch-rest-api | Elastic Search API}\n *\n */\nexport class DotApiElasticSearch {\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient) {\n this.dotCMSHttpClient = httpClient;\n }\n\n /**\n * Provide the content type and the elastic search query and get the results contentlets and elastic search information\n *\n */\n search(params: DotCMSElasticSearchParams): Promise<DotCMSElasticSearchResult> {\n return this.dotCMSHttpClient\n .request({\n url: '/api/es/search',\n method: 'POST',\n body: getEsQuery(params)\n })\n .then(async (response: Response) => {\n if (response.status === 200) {\n return response.json();\n }\n\n throw <DotCMSError>{\n message: await response.text(),\n statusCode: response.status\n };\n });\n }\n}\n","import { DotCMSEventsParams } from '../models';\n\n/**\n * Emit custom events for the DotCMS Edit Mode\n *\n */\nexport class DotApiEvent {\n emit(params: DotCMSEventsParams): void {\n const { name, data } = params;\n const customEvent = window.top.document.createEvent('CustomEvent');\n customEvent.initCustomEvent('ng-event', false, false, {\n name: name,\n data: data\n });\n window.top.document.dispatchEvent(customEvent);\n }\n}\n","import { DotApiConfiguration } from './DotApiConfiguration';\nimport { DotCMSConfigurationItem, DotCMSLanguageItem } from '../models';\n\n/**\n * Get DotCMS {@link https://dotcms.com/docs/latest/adding-and-editing-languages | Language code}\n *\n */\nexport class DotApiLanguage {\n private _languagesConf: DotCMSLanguageItem[];\n private dotAppConfig: DotApiConfiguration;\n\n constructor(appConfig: DotApiConfiguration) {\n this.dotAppConfig = appConfig;\n }\n\n async getId(langCode: string): Promise<string> {\n const languages: DotCMSLanguageItem[] = await this.getLanguages();\n\n const language = languages.find(\n (lang: DotCMSLanguageItem) => lang.languageCode === langCode\n );\n return language ? `${language.id}` : null;\n }\n\n async getLanguages(): Promise<DotCMSLanguageItem[]> {\n if (this._languagesConf) {\n return this._languagesConf;\n }\n\n this._languagesConf = await this.dotAppConfig\n .get()\n .then((data: DotCMSConfigurationItem) => data.languages);\n\n return this._languagesConf;\n }\n}\n","import { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { DotCMSNavigationItem, DotCMSError } from '../models';\n\n/**\n * Retrieve information about the dotCMS file and folder tree with the {@link https://dotcms.com/docs/latest/navigation-rest-api | Navigation REST API }\n *\n */\nexport class DotApiNavigation {\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient) {\n this.dotCMSHttpClient = httpClient;\n }\n\n get(deep = '2', location = '/'): Promise<DotCMSNavigationItem> {\n return this.dotCMSHttpClient\n .request({\n url: `/api/v1/nav/${location}`,\n params: {\n deep\n }\n })\n .then(async (res: Response) => {\n if (res.status === 200) {\n const data = await res.json();\n return <DotCMSNavigationItem>data.entity;\n }\n\n throw <DotCMSError>{\n message: await res.text(),\n statusCode: res.status\n };\n });\n }\n}\n","import { DotCMSPageParams } from './../models/DotCMSPage.model';\nimport { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { DotCMSPageAsset, DotCMSError, DotCMSPageFormat } from '../models';\nimport { DotApiLanguage } from './DotApiLanguage';\n\n/**\n * Allow easy interaction with {@link https://dotcms.com/docs/latest/page-rest-api-layout-as-a-service-laas | DotCMS Page API}\n *\n */\nexport class DotApiPage {\n private dotAppLanguage: DotApiLanguage;\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient, appLanguage: DotApiLanguage) {\n this.dotCMSHttpClient = httpClient;\n this.dotAppLanguage = appLanguage;\n }\n\n /**\n * Given the page url and the language return a {@link DotCMSPageAsset}\n *\n */\n async get(\n params: DotCMSPageParams,\n format: DotCMSPageFormat = DotCMSPageFormat.JSON\n ): Promise<DotCMSPageAsset> {\n if (params.language) {\n params = {\n ...params,\n language: isNaN(params.language as any)\n ? await this.dotAppLanguage.getId(params.language)\n : params.language\n };\n }\n\n params = {\n ...params,\n url: `/api/v1/page/${format}${params.url}`\n };\n\n return this.dotCMSHttpClient.request(params).then(async (res: Response) => {\n if (res.status === 200) {\n const data = await res.json();\n return <DotCMSPageAsset>data.entity;\n }\n\n const response = await res.text();\n let error: DotCMSError;\n try {\n error = {\n statusCode: res.status,\n message: JSON.parse(response).message\n };\n } catch {\n error = {\n statusCode: res.status,\n message: response\n };\n }\n\n throw error;\n });\n }\n}\n","import { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { DotCMSSite, DotCMSError } from '../models';\n\n/**\n * Get information from {@link https://dotcms.com/docs/latest/multi-site-management | DotCMS Sites}\n */\nexport class DotApiSite {\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient) {\n this.dotCMSHttpClient = httpClient;\n }\n\n getCurrentSite(): Promise<DotCMSSite> {\n return this.dotCMSHttpClient\n .request({\n url: `/api/v1/site/currentSite`\n })\n .then(async (response: Response) => {\n if (response.status === 200) {\n const data = await response.json();\n const { map, ...site } = data.entity;\n return <DotCMSSite>site;\n }\n\n throw <DotCMSError>{\n message: await response.text(),\n statusCode: response.status\n };\n });\n }\n}\n","import { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { DotCMSError } from '../models';\n\n/**\n * DotCMS {@link https://dotcms.com/docs/latest/widgets | widgets handler}\n */\nexport class DotApiWidget {\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient) {\n this.dotCMSHttpClient = httpClient;\n }\n\n /**\n * Get the widght HTML strong with it identifier\n *\n */\n getHtml(widgetId: string): Promise<string> {\n return this.dotCMSHttpClient\n .request({\n url: `/api/widget/id/${widgetId}`\n })\n .then(async (response: Response) => {\n if (response.status === 200) {\n return response.text();\n }\n\n throw <DotCMSError>{\n message: await response.text(),\n statusCode: response.status\n };\n });\n }\n}\n","import { DotCMSConfigurationParams, DotAppHttpRequestParams } from '../models';\nimport fetch from 'cross-fetch';\n\nasync function getUrl(\n { params, url }: DotAppHttpRequestParams,\n { host, hostId }: DotCMSConfigurationParams\n): Promise<string> {\n if (!host) {\n throw new Error('Please pass the DotCMS instance in the initDotCMS initialization')\n }\n\n const newUrl = new URL(`${host}${url}`);\n const paramsKeys = params ? Object.keys(params) : [];\n\n if (paramsKeys.length) {\n paramsKeys.map((key: string) => {\n newUrl.searchParams.append(key, params[key]);\n })\n }\n\n if (hostId) {\n newUrl.searchParams.append('host_id', hostId);\n }\n\n return `${newUrl.toString()}`;\n}\n\nfunction shouldAppendBody(params: DotAppHttpRequestParams): boolean {\n return params.method === 'POST' && !!params.body;\n}\n\nfunction getOpts(\n params: DotAppHttpRequestParams,\n config: DotCMSConfigurationParams\n): { [key: string]: any } {\n let opts: { [key: string]: any } = {\n method: params.method || 'GET',\n headers: {\n Authorization: `Bearer ${config.token}`,\n 'Content-type': 'application/json'\n }\n };\n\n if (shouldAppendBody(params)) {\n opts = {\n ...opts,\n body: params.body\n };\n }\n\n return opts;\n}\n\nexport async function request(options: DotAppHttpRequestParams, config: DotCMSConfigurationParams) {\n const url = await getUrl(options, config);\n const opts = getOpts(options, config);\n return fetch(url, opts);\n}\n","import { request } from './request';\nimport { DotCMSConfigurationParams, DotAppHttpRequestParams } from '../models';\n\nexport class DotCMSHttpClient {\n private _config: DotCMSConfigurationParams;\n\n constructor(config: DotCMSConfigurationParams) {\n this._config = config;\n }\n\n public request(params: DotAppHttpRequestParams): Promise<any> {\n return request(params, this._config);\n }\n}\n","import { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { DotCMSContent, DotCMSContentQuery, DotCMSError } from '../models';\n\nfunction populateQueryUrl(params: DotCMSContentQuery): string {\n let url = '';\n\n const attrs = {\n depth: `/depth/${params.options.depth}`,\n limit: `/limit/${params.options.limit}`,\n offset: `/offset/${params.options.offset}`,\n orderBy: `/orderby/${params.options.orderBy}`\n };\n\n if (params.queryParams) {\n for (const key of Object.keys(params.queryParams)) {\n url += `+${key}:${params.queryParams[key]}%20`;\n }\n }\n\n for (const key of Object.keys(params.options)) {\n url += attrs[key];\n }\n\n return url;\n}\n\n/**\n * Query/Save/Publish the information of DotCMS Content\n *\n */\nexport class DotApiContent {\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient) {\n this.dotCMSHttpClient = httpClient;\n }\n\n query(params: DotCMSContentQuery): Promise<Response> {\n const url = `/api/content/query/+contentType:${params.contentType}%20${populateQueryUrl(\n params\n )}`;\n return this.doRequest(url, null, 'GET');\n }\n\n save<Content extends DotCMSContent>(params: Content): Promise<Response> {\n return this.doRequest('/api/content/save/1', params);\n }\n\n publish<Content extends DotCMSContent>(params: Content): Promise<Response> {\n return this.doRequest('/api/content/publish/1', params);\n }\n\n private async doRequest<Content extends DotCMSContent>(\n url: string,\n params?: Content,\n httpMethod = 'POST'\n ): Promise<Response> {\n const response = await this.dotCMSHttpClient.request({\n url,\n method: httpMethod,\n body: params ? JSON.stringify(params) : ''\n });\n\n if (response.status !== 200) {\n throw <DotCMSError>{\n message: await response.text(),\n statusCode: response.status\n };\n }\n\n return response;\n }\n}\n","import { DotCMSHttpClient } from '../utils/DotCMSHttpClient';\nimport { DotCMSError } from '../models';\nimport { DotCMSContentTypeLayoutRow, DotCMSContentType } from '@dotcms/dotcms-models';\n\n/**\n * Get the information of DotCMS contentTypes\n *\n */\nexport class DotApiContentType {\n private dotCMSHttpClient: DotCMSHttpClient;\n\n constructor(httpClient: DotCMSHttpClient) {\n this.dotCMSHttpClient = httpClient;\n }\n\n async get(contentTypeId): Promise<DotCMSContentType> {\n const response = await this.dotCMSHttpClient.request({\n url: `/api/v1/contenttype/id/${contentTypeId}`\n });\n\n if (response.status !== 200) {\n throw <DotCMSError>{\n message: await response.text(),\n statusCode: response.status\n };\n }\n\n const data = await response.json();\n return data.entity;\n }\n\n getLayout(contentTypeId): Promise<DotCMSContentTypeLayoutRow[]> {\n return this.get(contentTypeId).then((contentType: DotCMSContentType) => {\n return contentType.layout;\n });\n }\n}\n","import { DotCMSFormConfig } from '../models';\nimport { DotApiContentType } from './DotApiContentType';\n\n// This import allow us to use the type for the form: HTMLDotFormElement\nimport { DotCMSContentType } from '@dotcms/dotcms-models';\n\n/**\n * Creates and provide methods to render a DotCMS Form\n *\n */\nexport class DotApiForm {\n constructor(\n private dotApiContentType: DotApiContentType,\n private formConfig: DotCMSFormConfig\n ) {}\n\n /**\n * Render form on provided html element\n * @memberof DotApiForm\n */\n async get(): Promise<DotCMSContentType> {\n return this.dotApiContentType.get(this.formConfig.identifier);\n }\n}\n","import { DotApiAuthorization } from './lib/api/DotApiAuthorization';\nimport { DotApiConfiguration } from './lib/api/DotApiConfiguration';\nimport { DotApiElasticSearch } from './lib/api/DotApiElasticSearch';\nimport { DotApiEvent } from './lib/api/DotApiEvent';\nimport { DotApiLanguage } from './lib/api/DotApiLanguage';\nimport { DotApiNavigation } from './lib/api/DotApiNavigation';\nimport { DotApiPage } from './lib/api/DotApiPage';\nimport { DotApiSite } from './lib/api/DotApiSite';\nimport { DotApiWidget } from './lib/api/DotApiWidget';\nimport { DotCMSHttpClient } from './lib/utils/DotCMSHttpClient';\nimport { DotCMSConfigurationParams, DotCMSFormConfig } from './lib/models';\nimport { DotApiContent } from './lib/api/DotApiContent';\nimport { DotApiContentType } from './lib/api/DotApiContentType';\nimport { DotApiForm } from './lib/api/DotApiForm';\n\nexport interface DotCMSApp {\n auth: DotApiAuthorization;\n content: DotApiContent;\n contentType: DotApiContentType;\n esSearch: DotApiElasticSearch;\n event: DotApiEvent;\n nav: DotApiNavigation;\n page: DotApiPage;\n site: DotApiSite;\n form: (formConfig: DotCMSFormConfig, win?: Window) => DotApiForm;\n widget: DotApiWidget;\n config: DotApiConfiguration;\n language: DotApiLanguage;\n httpClient: DotCMSHttpClient;\n}\n\nexport const initDotCMS = (config: DotCMSConfigurationParams): DotCMSApp => {\n const httpClient = new DotCMSHttpClient(config);\n const apiConfig = new DotApiConfiguration(httpClient);\n const apiLanguage = new DotApiLanguage(apiConfig);\n const content = new DotApiContent(httpClient);\n const dotApiContentType = new DotApiContentType(httpClient);\n\n return {\n auth: new DotApiAuthorization(),\n config: apiConfig,\n content: content,\n contentType: new DotApiContentType(httpClient),\n esSearch: new DotApiElasticSearch(httpClient),\n event: new DotApiEvent(),\n form: (formConfig: DotCMSFormConfig) => new DotApiForm(dotApiContentType, formConfig),\n language: apiLanguage,\n nav: new DotApiNavigation(httpClient),\n page: new DotApiPage(httpClient, apiLanguage),\n site: new DotApiSite(httpClient),\n widget: new DotApiWidget(httpClient),\n httpClient\n };\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|