@dotcms/client 0.0.1-beta.2 → 0.0.1-beta.4
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/index.cjs.js +102 -1238
- package/index.esm.js +86 -1221
- package/next.cjs.d.ts +1 -0
- package/next.cjs.default.js +1 -0
- package/next.cjs.js +553 -0
- package/next.cjs.mjs +2 -0
- package/next.esm.d.ts +1 -0
- package/next.esm.js +551 -0
- package/package.json +32 -7
- package/src/index.d.ts +6 -6
- package/src/lib/client/client.d.ts +84 -0
- package/src/lib/client/content/builders/collection/collection.d.ts +1 -1
- package/src/lib/client/content/content-api.d.ts +1 -1
- package/src/lib/client/content/shared/types.d.ts +2 -2
- package/src/lib/client/models/types.d.ts +513 -10
- package/src/lib/client/navigation/navigation-api.d.ts +31 -0
- package/src/lib/client/page/page-api.d.ts +165 -0
- package/src/lib/client/page/utils.d.ts +41 -0
- package/src/lib/{editor → deprecated/editor}/models/client.model.d.ts +13 -0
- package/src/lib/{editor → deprecated/editor}/sdk-editor.d.ts +1 -1
- package/src/lib/{client → deprecated}/sdk-js-client.d.ts +1 -1
- package/src/lib/utils/page/common-utils.d.ts +1 -1
- package/src/next.d.ts +1 -0
- package/src/types.d.ts +2 -0
- package/transforms.cjs.js +1145 -0
- package/transforms.esm.js +1139 -0
- package/types.cjs.d.ts +1 -0
- package/types.cjs.default.js +1 -0
- package/types.cjs.js +2 -0
- package/types.cjs.mjs +2 -0
- package/types.esm.d.ts +1 -0
- package/types.esm.js +1 -0
- /package/src/lib/{query-builder → client/content/builders/query}/lucene-syntax/Equals.d.ts +0 -0
- /package/src/lib/{query-builder → client/content/builders/query}/lucene-syntax/Field.d.ts +0 -0
- /package/src/lib/{query-builder → client/content/builders/query}/lucene-syntax/NotOperand.d.ts +0 -0
- /package/src/lib/{query-builder → client/content/builders/query}/lucene-syntax/Operand.d.ts +0 -0
- /package/src/lib/{query-builder → client/content/builders/query}/lucene-syntax/index.d.ts +0 -0
- /package/src/lib/{query-builder/sdk-query-builder.d.ts → client/content/builders/query/query.d.ts} +0 -0
- /package/src/lib/{query-builder → client/content/builders/query}/utils/index.d.ts +0 -0
- /package/src/lib/{editor → deprecated/editor}/listeners/listeners.d.ts +0 -0
- /package/src/lib/{editor → deprecated/editor}/models/editor.model.d.ts +0 -0
- /package/src/lib/{editor → deprecated/editor}/models/inline-event.model.d.ts +0 -0
- /package/src/lib/{editor → deprecated/editor}/models/listeners.model.d.ts +0 -0
- /package/src/lib/{editor → deprecated/editor}/sdk-editor-vtl.d.ts +0 -0
- /package/src/lib/{editor → deprecated/editor}/utils/editor.utils.d.ts +0 -0
- /package/src/lib/{editor → deprecated/editor}/utils/traditional-vtl.utils.d.ts +0 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { Content } from './content/content-api';
|
|
2
|
+
import { NavigationClient } from './navigation/navigation-api';
|
|
3
|
+
import { PageClient } from './page/page-api';
|
|
4
|
+
/**
|
|
5
|
+
* Options for configuring fetch requests, excluding body and method properties.
|
|
6
|
+
*/
|
|
7
|
+
export type RequestOptions = Omit<RequestInit, 'body' | 'method'>;
|
|
8
|
+
/**
|
|
9
|
+
* Configuration options for the DotCMS client.
|
|
10
|
+
*/
|
|
11
|
+
export interface DotCMSClientConfig {
|
|
12
|
+
/**
|
|
13
|
+
* The URL of the dotCMS instance.
|
|
14
|
+
* Ensure to include the protocol (http or https).
|
|
15
|
+
* @example `https://demo.dotcms.com`
|
|
16
|
+
*/
|
|
17
|
+
dotcmsUrl: string;
|
|
18
|
+
/**
|
|
19
|
+
* The authentication token for requests.
|
|
20
|
+
* Obtainable from the dotCMS UI.
|
|
21
|
+
*/
|
|
22
|
+
authToken: string;
|
|
23
|
+
/**
|
|
24
|
+
* The id of the site you want to interact with. Defaults to the default site if not provided.
|
|
25
|
+
*/
|
|
26
|
+
siteId?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Additional options for the fetch request.
|
|
29
|
+
* @example `{ headers: { 'Content-Type': 'application/json' } }`
|
|
30
|
+
*/
|
|
31
|
+
requestOptions?: RequestOptions;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Client for interacting with the DotCMS REST API.
|
|
35
|
+
* Provides access to content, page, and navigation functionality.
|
|
36
|
+
*/
|
|
37
|
+
declare class DotCMSClient {
|
|
38
|
+
private config;
|
|
39
|
+
private requestOptions;
|
|
40
|
+
/**
|
|
41
|
+
* Client for content-related operations.
|
|
42
|
+
*/
|
|
43
|
+
content: Content;
|
|
44
|
+
/**
|
|
45
|
+
* Client for page-related operations.
|
|
46
|
+
*/
|
|
47
|
+
page: PageClient;
|
|
48
|
+
/**
|
|
49
|
+
* Client for navigation-related operations.
|
|
50
|
+
*/
|
|
51
|
+
nav: NavigationClient;
|
|
52
|
+
/**
|
|
53
|
+
* Creates a new DotCMS client instance.
|
|
54
|
+
*
|
|
55
|
+
* @param config - Configuration options for the client
|
|
56
|
+
* @throws Warning if dotcmsUrl is invalid or authToken is missing
|
|
57
|
+
*/
|
|
58
|
+
constructor(config?: DotCMSClientConfig);
|
|
59
|
+
/**
|
|
60
|
+
* Creates request options with authentication headers.
|
|
61
|
+
*
|
|
62
|
+
* @param config - The client configuration
|
|
63
|
+
* @returns Request options with authorization headers
|
|
64
|
+
*/
|
|
65
|
+
private createAuthenticatedRequestOptions;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Creates and returns a new DotCMS client instance.
|
|
69
|
+
*
|
|
70
|
+
* @param config - Configuration options for the client
|
|
71
|
+
* @returns A configured DotCMS client instance
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* const client = dotCMSCreateClient({
|
|
75
|
+
* dotcmsUrl: 'https://demo.dotcms.com',
|
|
76
|
+
* authToken: 'your-auth-token'
|
|
77
|
+
* });
|
|
78
|
+
*
|
|
79
|
+
* // Use the client to fetch content
|
|
80
|
+
* const pages = await client.page.get('/about-us');
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
export declare const createDotCMSClient: (clientConfig: DotCMSClientConfig) => DotCMSClient;
|
|
84
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ClientOptions } from '
|
|
1
|
+
import { ClientOptions } from '../../../../deprecated/sdk-js-client';
|
|
2
2
|
import { GetCollectionResponse, BuildQuery, SortBy, GetCollectionError, OnFullfilled, OnRejected } from '../../shared/types';
|
|
3
3
|
/**
|
|
4
4
|
* Creates a Builder to filter and fetch content from the content API for a specific content type.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CollectionBuilder } from './builders/collection/collection';
|
|
2
|
-
import { ClientOptions } from '
|
|
2
|
+
import { ClientOptions } from '../../deprecated/sdk-js-client';
|
|
3
3
|
/**
|
|
4
4
|
* Creates a builder to filter and fetch a collection of content items.
|
|
5
5
|
* @param contentType - The content type to retrieve.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Equals } from '
|
|
2
|
-
import { QueryBuilder } from '
|
|
1
|
+
import { Equals } from '../builders/query/lucene-syntax';
|
|
2
|
+
import { QueryBuilder } from '../builders/query/query';
|
|
3
3
|
/**
|
|
4
4
|
* Model to sort by fields.
|
|
5
5
|
*/
|
|
@@ -1,13 +1,516 @@
|
|
|
1
|
+
export interface DotCMSPageAsset {
|
|
2
|
+
canCreateTemplate?: boolean;
|
|
3
|
+
containers: {
|
|
4
|
+
[key: string]: DotCMSPageAssetContainer;
|
|
5
|
+
};
|
|
6
|
+
layout: DotCMSLayout;
|
|
7
|
+
page: DotCMSPage;
|
|
8
|
+
site: DotCMSSite;
|
|
9
|
+
template: DotCMSTemplate;
|
|
10
|
+
viewAs?: DotCMSViewAs;
|
|
11
|
+
vanityUrl?: DotCMSVanityUrl;
|
|
12
|
+
}
|
|
13
|
+
export interface DotPageAssetLayoutRow {
|
|
14
|
+
identifier: number;
|
|
15
|
+
value?: string;
|
|
16
|
+
id?: string;
|
|
17
|
+
columns: DotPageAssetLayoutColumn[];
|
|
18
|
+
styleClass?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface DotCMSVanityUrl {
|
|
21
|
+
pattern: string;
|
|
22
|
+
vanityUrlId: string;
|
|
23
|
+
url: string;
|
|
24
|
+
siteId: string;
|
|
25
|
+
languageId: number;
|
|
26
|
+
forwardTo: string;
|
|
27
|
+
response: number;
|
|
28
|
+
order: number;
|
|
29
|
+
temporaryRedirect: boolean;
|
|
30
|
+
permanentRedirect: boolean;
|
|
31
|
+
forward: boolean;
|
|
32
|
+
}
|
|
33
|
+
export interface DotPageAssetLayoutColumn {
|
|
34
|
+
preview: boolean;
|
|
35
|
+
containers: DotCMSColumnContainer[];
|
|
36
|
+
widthPercent: number;
|
|
37
|
+
width: number;
|
|
38
|
+
leftOffset: number;
|
|
39
|
+
left: number;
|
|
40
|
+
styleClass?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface DotCMSColumnContainer {
|
|
43
|
+
identifier: string;
|
|
44
|
+
uuid: string;
|
|
45
|
+
historyUUIDs: string[];
|
|
46
|
+
}
|
|
47
|
+
export interface DotCMSPageAssetContainer {
|
|
48
|
+
container: DotCMSContainer;
|
|
49
|
+
containerStructures: DotCMSContainerStructure[];
|
|
50
|
+
contentlets: {
|
|
51
|
+
[key: string]: DotCMSContentlet[];
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export interface DotCMSContainer {
|
|
55
|
+
identifier: string;
|
|
56
|
+
uuid: string;
|
|
57
|
+
iDate: number;
|
|
58
|
+
type: string;
|
|
59
|
+
owner?: string;
|
|
60
|
+
inode: string;
|
|
61
|
+
source: string;
|
|
62
|
+
title: string;
|
|
63
|
+
friendlyName: string;
|
|
64
|
+
modDate: number;
|
|
65
|
+
modUser: string;
|
|
66
|
+
sortOrder: number;
|
|
67
|
+
showOnMenu: boolean;
|
|
68
|
+
code?: string;
|
|
69
|
+
maxContentlets: number;
|
|
70
|
+
useDiv: boolean;
|
|
71
|
+
sortContentletsBy?: string;
|
|
72
|
+
preLoop: string;
|
|
73
|
+
postLoop: string;
|
|
74
|
+
staticify: boolean;
|
|
75
|
+
luceneQuery?: string;
|
|
76
|
+
notes: string;
|
|
77
|
+
languageId?: number;
|
|
78
|
+
path?: string;
|
|
79
|
+
live: boolean;
|
|
80
|
+
locked: boolean;
|
|
81
|
+
working: boolean;
|
|
82
|
+
deleted: boolean;
|
|
83
|
+
name: string;
|
|
84
|
+
archived: boolean;
|
|
85
|
+
permissionId: string;
|
|
86
|
+
versionId: string;
|
|
87
|
+
versionType: string;
|
|
88
|
+
permissionType: string;
|
|
89
|
+
categoryId: string;
|
|
90
|
+
idate: number;
|
|
91
|
+
new: boolean;
|
|
92
|
+
acceptTypes: string;
|
|
93
|
+
contentlets: DotCMSContentlet[];
|
|
94
|
+
parentPermissionable: DotCMSSiteParentPermissionable;
|
|
95
|
+
}
|
|
96
|
+
export interface DotCMSContentlet {
|
|
97
|
+
archived: boolean;
|
|
98
|
+
baseType: string;
|
|
99
|
+
deleted?: boolean;
|
|
100
|
+
binary?: string;
|
|
101
|
+
binaryContentAsset?: string;
|
|
102
|
+
binaryVersion?: string;
|
|
103
|
+
contentType: string;
|
|
104
|
+
file?: string;
|
|
105
|
+
folder: string;
|
|
106
|
+
hasLiveVersion?: boolean;
|
|
107
|
+
hasTitleImage: boolean;
|
|
108
|
+
host: string;
|
|
109
|
+
hostName: string;
|
|
110
|
+
identifier: string;
|
|
111
|
+
inode: string;
|
|
112
|
+
image?: any;
|
|
113
|
+
languageId: number;
|
|
114
|
+
language?: string;
|
|
115
|
+
live: boolean;
|
|
116
|
+
locked: boolean;
|
|
117
|
+
mimeType?: string;
|
|
118
|
+
modDate: string;
|
|
119
|
+
modUser: string;
|
|
120
|
+
modUserName: string;
|
|
121
|
+
owner: string;
|
|
122
|
+
sortOrder: number;
|
|
123
|
+
stInode: string;
|
|
124
|
+
title: string;
|
|
125
|
+
titleImage: string;
|
|
126
|
+
text?: string;
|
|
127
|
+
url: string;
|
|
128
|
+
working: boolean;
|
|
129
|
+
body?: string;
|
|
130
|
+
contentTypeIcon?: string;
|
|
131
|
+
variant?: string;
|
|
132
|
+
__icon__?: string;
|
|
133
|
+
[key: string]: any;
|
|
134
|
+
}
|
|
135
|
+
export interface DotcmsNavigationItem {
|
|
136
|
+
code?: any;
|
|
137
|
+
folder: string;
|
|
138
|
+
children?: DotcmsNavigationItem[];
|
|
139
|
+
host: string;
|
|
140
|
+
languageId: number;
|
|
141
|
+
href: string;
|
|
142
|
+
title: string;
|
|
143
|
+
type: string;
|
|
144
|
+
hash: number;
|
|
145
|
+
target: string;
|
|
146
|
+
order: number;
|
|
147
|
+
}
|
|
148
|
+
interface DotCMSTemplate {
|
|
149
|
+
iDate: number;
|
|
150
|
+
type: string;
|
|
151
|
+
owner: string;
|
|
152
|
+
inode: string;
|
|
153
|
+
identifier: string;
|
|
154
|
+
source: string;
|
|
155
|
+
title: string;
|
|
156
|
+
friendlyName: string;
|
|
157
|
+
modDate: number;
|
|
158
|
+
modUser: string;
|
|
159
|
+
sortOrder: number;
|
|
160
|
+
showOnMenu: boolean;
|
|
161
|
+
image: string;
|
|
162
|
+
drawed: boolean;
|
|
163
|
+
drawedBody: string;
|
|
164
|
+
theme: string;
|
|
165
|
+
anonymous: boolean;
|
|
166
|
+
template: boolean;
|
|
167
|
+
name: string;
|
|
168
|
+
live: boolean;
|
|
169
|
+
archived: boolean;
|
|
170
|
+
locked: boolean;
|
|
171
|
+
working: boolean;
|
|
172
|
+
permissionId: string;
|
|
173
|
+
versionId: string;
|
|
174
|
+
versionType: string;
|
|
175
|
+
deleted: boolean;
|
|
176
|
+
permissionType: string;
|
|
177
|
+
categoryId: string;
|
|
178
|
+
idate: number;
|
|
179
|
+
new: boolean;
|
|
180
|
+
canEdit: boolean;
|
|
181
|
+
}
|
|
182
|
+
interface DotCMSPage {
|
|
183
|
+
template: string;
|
|
184
|
+
modDate: number;
|
|
185
|
+
metadata: string;
|
|
186
|
+
cachettl: string;
|
|
187
|
+
pageURI: string;
|
|
188
|
+
title: string;
|
|
189
|
+
type: string;
|
|
190
|
+
showOnMenu: string;
|
|
191
|
+
httpsRequired: boolean;
|
|
192
|
+
inode: string;
|
|
193
|
+
disabledWYSIWYG: any[];
|
|
194
|
+
seokeywords: string;
|
|
195
|
+
host: string;
|
|
196
|
+
lastReview: number;
|
|
197
|
+
working: boolean;
|
|
198
|
+
locked: boolean;
|
|
199
|
+
stInode: string;
|
|
200
|
+
friendlyName: string;
|
|
201
|
+
live: boolean;
|
|
202
|
+
owner: string;
|
|
203
|
+
identifier: string;
|
|
204
|
+
nullProperties: any[];
|
|
205
|
+
friendlyname: string;
|
|
206
|
+
pagemetadata: string;
|
|
207
|
+
languageId: number;
|
|
208
|
+
url: string;
|
|
209
|
+
seodescription: string;
|
|
210
|
+
modUserName: string;
|
|
211
|
+
folder: string;
|
|
212
|
+
deleted: boolean;
|
|
213
|
+
sortOrder: number;
|
|
214
|
+
modUser: string;
|
|
215
|
+
pageUrl: string;
|
|
216
|
+
workingInode: string;
|
|
217
|
+
shortyWorking: string;
|
|
218
|
+
canEdit: boolean;
|
|
219
|
+
canRead: boolean;
|
|
220
|
+
canLock: boolean;
|
|
221
|
+
lockedOn: number;
|
|
222
|
+
lockedBy: string;
|
|
223
|
+
lockedByName: string;
|
|
224
|
+
liveInode: string;
|
|
225
|
+
shortyLive: string;
|
|
226
|
+
}
|
|
227
|
+
interface DotCMSViewAs {
|
|
228
|
+
language: {
|
|
229
|
+
id: number;
|
|
230
|
+
languageCode: string;
|
|
231
|
+
countryCode: string;
|
|
232
|
+
language: string;
|
|
233
|
+
country: string;
|
|
234
|
+
};
|
|
235
|
+
mode: string;
|
|
236
|
+
}
|
|
237
|
+
interface DotCMSLayout {
|
|
238
|
+
pageWidth: string;
|
|
239
|
+
width: string;
|
|
240
|
+
layout: string;
|
|
241
|
+
title: string;
|
|
242
|
+
header: boolean;
|
|
243
|
+
footer: boolean;
|
|
244
|
+
body: DotPageAssetLayoutBody;
|
|
245
|
+
sidebar: DotPageAssetLayoutSidebar;
|
|
246
|
+
}
|
|
247
|
+
interface DotCMSContainerStructure {
|
|
248
|
+
id: string;
|
|
249
|
+
structureId: string;
|
|
250
|
+
containerInode: string;
|
|
251
|
+
containerId: string;
|
|
252
|
+
code: string;
|
|
253
|
+
contentTypeVar: string;
|
|
254
|
+
}
|
|
255
|
+
interface DotPageAssetLayoutSidebar {
|
|
256
|
+
preview: boolean;
|
|
257
|
+
containers: DotCMSContainer[];
|
|
258
|
+
location: string;
|
|
259
|
+
widthPercent: number;
|
|
260
|
+
width: string;
|
|
261
|
+
}
|
|
262
|
+
interface DotPageAssetLayoutBody {
|
|
263
|
+
rows: DotPageAssetLayoutRow[];
|
|
264
|
+
}
|
|
265
|
+
interface DotCMSSite {
|
|
266
|
+
lowIndexPriority: boolean;
|
|
267
|
+
name: string;
|
|
268
|
+
default: boolean;
|
|
269
|
+
aliases: string;
|
|
270
|
+
parent: boolean;
|
|
271
|
+
tagStorage: string;
|
|
272
|
+
systemHost: boolean;
|
|
273
|
+
inode: string;
|
|
274
|
+
versionType: string;
|
|
275
|
+
structureInode: string;
|
|
276
|
+
hostname: string;
|
|
277
|
+
hostThumbnail?: any;
|
|
278
|
+
owner: string;
|
|
279
|
+
permissionId: string;
|
|
280
|
+
permissionType: string;
|
|
281
|
+
type: string;
|
|
282
|
+
identifier: string;
|
|
283
|
+
modDate: number;
|
|
284
|
+
host: string;
|
|
285
|
+
live: boolean;
|
|
286
|
+
indexPolicy: string;
|
|
287
|
+
categoryId: string;
|
|
288
|
+
actionId?: any;
|
|
289
|
+
new: boolean;
|
|
290
|
+
archived: boolean;
|
|
291
|
+
locked: boolean;
|
|
292
|
+
disabledWysiwyg: any[];
|
|
293
|
+
modUser: string;
|
|
294
|
+
working: boolean;
|
|
295
|
+
titleImage: {
|
|
296
|
+
present: boolean;
|
|
297
|
+
};
|
|
298
|
+
folder: string;
|
|
299
|
+
htmlpage: boolean;
|
|
300
|
+
fileAsset: boolean;
|
|
301
|
+
vanityUrl: boolean;
|
|
302
|
+
keyValue: boolean;
|
|
303
|
+
structure?: DotCMSSiteStructure;
|
|
304
|
+
title: string;
|
|
305
|
+
languageId: number;
|
|
306
|
+
indexPolicyDependencies: string;
|
|
307
|
+
contentTypeId: string;
|
|
308
|
+
versionId: string;
|
|
309
|
+
lastReview: number;
|
|
310
|
+
nextReview?: any;
|
|
311
|
+
reviewInterval?: any;
|
|
312
|
+
sortOrder: number;
|
|
313
|
+
contentType: DotCMSSiteContentType;
|
|
314
|
+
}
|
|
315
|
+
interface DotCMSSiteContentType {
|
|
316
|
+
owner?: any;
|
|
317
|
+
parentPermissionable: DotCMSSiteParentPermissionable;
|
|
318
|
+
permissionId: string;
|
|
319
|
+
permissionType: string;
|
|
320
|
+
}
|
|
321
|
+
export interface DotCMSSiteParentPermissionable {
|
|
322
|
+
Inode: string;
|
|
323
|
+
Identifier: string;
|
|
324
|
+
permissionByIdentifier: boolean;
|
|
325
|
+
type: string;
|
|
326
|
+
owner?: any;
|
|
327
|
+
identifier: string;
|
|
328
|
+
permissionId: string;
|
|
329
|
+
parentPermissionable?: any;
|
|
330
|
+
permissionType: string;
|
|
331
|
+
inode: string;
|
|
332
|
+
childrenPermissionable?: any;
|
|
333
|
+
variantId?: string;
|
|
334
|
+
}
|
|
335
|
+
interface DotCMSSiteStructure {
|
|
336
|
+
iDate: number;
|
|
337
|
+
type: string;
|
|
338
|
+
owner?: any;
|
|
339
|
+
inode: string;
|
|
340
|
+
identifier: string;
|
|
341
|
+
name: string;
|
|
342
|
+
description: string;
|
|
343
|
+
defaultStructure: boolean;
|
|
344
|
+
reviewInterval?: any;
|
|
345
|
+
reviewerRole?: any;
|
|
346
|
+
pagedetail?: any;
|
|
347
|
+
structureType: number;
|
|
348
|
+
fixed: boolean;
|
|
349
|
+
system: boolean;
|
|
350
|
+
velocityVarName: string;
|
|
351
|
+
urlMapPattern?: any;
|
|
352
|
+
host: string;
|
|
353
|
+
folder: string;
|
|
354
|
+
publishDateVar?: any;
|
|
355
|
+
expireDateVar?: any;
|
|
356
|
+
modDate: number;
|
|
357
|
+
fields: DotCMSSiteField[];
|
|
358
|
+
widget: boolean;
|
|
359
|
+
detailPage?: any;
|
|
360
|
+
fieldsBySortOrder: DotCMSSiteField[];
|
|
361
|
+
form: boolean;
|
|
362
|
+
htmlpageAsset: boolean;
|
|
363
|
+
content: boolean;
|
|
364
|
+
fileAsset: boolean;
|
|
365
|
+
persona: boolean;
|
|
366
|
+
permissionId: string;
|
|
367
|
+
permissionType: string;
|
|
368
|
+
live: boolean;
|
|
369
|
+
categoryId: string;
|
|
370
|
+
idate: number;
|
|
371
|
+
new: boolean;
|
|
372
|
+
archived: boolean;
|
|
373
|
+
locked: boolean;
|
|
374
|
+
modUser: string;
|
|
375
|
+
working: boolean;
|
|
376
|
+
title: string;
|
|
377
|
+
versionId: string;
|
|
378
|
+
versionType: string;
|
|
379
|
+
}
|
|
380
|
+
interface DotCMSSiteField {
|
|
381
|
+
iDate: number;
|
|
382
|
+
type: string;
|
|
383
|
+
owner?: any;
|
|
384
|
+
inode: string;
|
|
385
|
+
identifier: string;
|
|
386
|
+
structureInode: string;
|
|
387
|
+
fieldName: string;
|
|
388
|
+
fieldType: string;
|
|
389
|
+
fieldRelationType?: any;
|
|
390
|
+
fieldContentlet: string;
|
|
391
|
+
required: boolean;
|
|
392
|
+
velocityVarName: string;
|
|
393
|
+
sortOrder: number;
|
|
394
|
+
values?: any;
|
|
395
|
+
regexCheck?: any;
|
|
396
|
+
hint?: any;
|
|
397
|
+
defaultValue?: any;
|
|
398
|
+
indexed: boolean;
|
|
399
|
+
listed: boolean;
|
|
400
|
+
fixed: boolean;
|
|
401
|
+
readOnly: boolean;
|
|
402
|
+
searchable: boolean;
|
|
403
|
+
unique: boolean;
|
|
404
|
+
modDate: number;
|
|
405
|
+
dataType: string;
|
|
406
|
+
live: boolean;
|
|
407
|
+
categoryId: string;
|
|
408
|
+
idate: number;
|
|
409
|
+
new: boolean;
|
|
410
|
+
archived: boolean;
|
|
411
|
+
locked: boolean;
|
|
412
|
+
modUser: string;
|
|
413
|
+
working: boolean;
|
|
414
|
+
permissionId: string;
|
|
415
|
+
parentPermissionable?: any;
|
|
416
|
+
permissionType: string;
|
|
417
|
+
title: string;
|
|
418
|
+
versionId: string;
|
|
419
|
+
versionType: string;
|
|
420
|
+
}
|
|
1
421
|
/**
|
|
2
|
-
* Represents a
|
|
422
|
+
* Represents a basic page structure returned from GraphQL queries
|
|
423
|
+
*/
|
|
424
|
+
export interface DotCMSBasicGraphQLPage {
|
|
425
|
+
publishDate: string;
|
|
426
|
+
type: string;
|
|
427
|
+
httpsRequired: boolean;
|
|
428
|
+
inode: string;
|
|
429
|
+
path: string;
|
|
430
|
+
identifier: string;
|
|
431
|
+
hasTitleImage: boolean;
|
|
432
|
+
sortOrder: number;
|
|
433
|
+
extension: string;
|
|
434
|
+
canRead: boolean;
|
|
435
|
+
pageURI: string;
|
|
436
|
+
canEdit: boolean;
|
|
437
|
+
archived: boolean;
|
|
438
|
+
friendlyName: string;
|
|
439
|
+
workingInode: string;
|
|
440
|
+
url: string;
|
|
441
|
+
hasLiveVersion: boolean;
|
|
442
|
+
deleted: boolean;
|
|
443
|
+
pageUrl: string;
|
|
444
|
+
shortyWorking: string;
|
|
445
|
+
mimeType: string;
|
|
446
|
+
locked: boolean;
|
|
447
|
+
stInode: string;
|
|
448
|
+
contentType: string;
|
|
449
|
+
creationDate: string;
|
|
450
|
+
liveInode: string;
|
|
451
|
+
name: string;
|
|
452
|
+
shortyLive: string;
|
|
453
|
+
modDate: string;
|
|
454
|
+
title: string;
|
|
455
|
+
baseType: string;
|
|
456
|
+
working: boolean;
|
|
457
|
+
canLock: boolean;
|
|
458
|
+
live: boolean;
|
|
459
|
+
isContentlet: boolean;
|
|
460
|
+
statusIcons: string;
|
|
461
|
+
conLanguage: {
|
|
462
|
+
id: number;
|
|
463
|
+
language: string;
|
|
464
|
+
languageCode: string;
|
|
465
|
+
};
|
|
466
|
+
template: {
|
|
467
|
+
drawed: boolean;
|
|
468
|
+
};
|
|
469
|
+
containers: {
|
|
470
|
+
path?: string;
|
|
471
|
+
identifier: string;
|
|
472
|
+
maxContentlets?: number;
|
|
473
|
+
containerStructures?: {
|
|
474
|
+
contentTypeVar: string;
|
|
475
|
+
}[];
|
|
476
|
+
containerContentlets?: {
|
|
477
|
+
uuid: string;
|
|
478
|
+
contentlets: DotCMSContentlet[];
|
|
479
|
+
}[];
|
|
480
|
+
};
|
|
481
|
+
layout: DotCMSLayout;
|
|
482
|
+
viewAs: DotCMSViewAs;
|
|
483
|
+
}
|
|
484
|
+
export interface DotCMSPageGraphQLContainer {
|
|
485
|
+
path: string;
|
|
486
|
+
identifier: string;
|
|
487
|
+
maxContentlets?: number;
|
|
488
|
+
containerStructures: DotCMSContainerStructure[];
|
|
489
|
+
containerContentlets: DotCMSPageContainerContentlets[];
|
|
490
|
+
}
|
|
491
|
+
export interface DotCMSPageContainerContentlets {
|
|
492
|
+
uuid: string;
|
|
493
|
+
contentlets: DotCMSContentlet[];
|
|
494
|
+
}
|
|
495
|
+
export interface DotCMSGraphQLError {
|
|
496
|
+
message: string;
|
|
497
|
+
locations: {
|
|
498
|
+
line: number;
|
|
499
|
+
column: number;
|
|
500
|
+
}[];
|
|
501
|
+
extensions: {
|
|
502
|
+
classification: string;
|
|
503
|
+
};
|
|
504
|
+
}
|
|
505
|
+
/**
|
|
506
|
+
* Represents the complete response from a GraphQL page query
|
|
3
507
|
*
|
|
4
|
-
* @
|
|
5
|
-
* @
|
|
6
|
-
* @property {string} event - The name of the event.
|
|
7
|
-
* @property {function(...args: any[]): void} callback - The callback function to handle the event.
|
|
508
|
+
* @template TContent - The type of the content data
|
|
509
|
+
* @template TNav - The type of the navigation data
|
|
8
510
|
*/
|
|
9
|
-
export
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
511
|
+
export interface DotCMSGraphQLPageResponse<TContent = Record<string, any>> {
|
|
512
|
+
page: DotCMSBasicGraphQLPage;
|
|
513
|
+
content?: TContent;
|
|
514
|
+
errors?: DotCMSGraphQLError;
|
|
515
|
+
}
|
|
516
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { DotCMSClientConfig, RequestOptions } from '../client';
|
|
2
|
+
interface NavRequestParams {
|
|
3
|
+
/**
|
|
4
|
+
* The depth of the folder tree to return.
|
|
5
|
+
* @example
|
|
6
|
+
* `1` returns only the element specified in the path.
|
|
7
|
+
* `2` returns the element specified in the path, and if that element is a folder, returns all direct children of that folder.
|
|
8
|
+
* `3` returns all children and grandchildren of the element specified in the path.
|
|
9
|
+
*/
|
|
10
|
+
depth?: number;
|
|
11
|
+
/**
|
|
12
|
+
* The language ID of content to return.
|
|
13
|
+
* @example
|
|
14
|
+
* `1` (or unspecified) returns content in the default language of the site.
|
|
15
|
+
*/
|
|
16
|
+
languageId?: number;
|
|
17
|
+
}
|
|
18
|
+
export declare class NavigationClient {
|
|
19
|
+
private requestOptions;
|
|
20
|
+
private BASE_URL;
|
|
21
|
+
constructor(config: DotCMSClientConfig, requestOptions: RequestOptions);
|
|
22
|
+
/**
|
|
23
|
+
* Retrieves information about the dotCMS file and folder tree.
|
|
24
|
+
* @param {NavigationApiOptions} options - The options for the Navigation API call. Defaults to `{ depth: 0, path: '/', languageId: 1 }`.
|
|
25
|
+
* @returns {Promise<unknown>} - A Promise that resolves to the response from the DotCMS API.
|
|
26
|
+
* @throws {Error} - Throws an error if the options are not valid.
|
|
27
|
+
*/
|
|
28
|
+
get(path: string, params?: NavRequestParams): Promise<unknown>;
|
|
29
|
+
private mapToBackendParams;
|
|
30
|
+
}
|
|
31
|
+
export {};
|