@prismicio/e2e-tests-utils 1.17.1-alpha.0 → 1.18.0-canary.933a809
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 +24 -27
- package/dist/_virtual/_rolldown/runtime.cjs +23 -0
- package/dist/clients/apiClient.cjs +38 -38
- package/dist/clients/apiClient.cjs.map +1 -1
- package/dist/clients/apiClient.d.cts +30 -0
- package/dist/clients/apiClient.d.cts.map +1 -0
- package/dist/clients/apiClient.d.ts +23 -23
- package/dist/clients/apiClient.d.ts.map +1 -0
- package/dist/clients/apiClient.js +38 -38
- package/dist/clients/apiClient.js.map +1 -1
- package/dist/clients/assetApi.cjs +81 -93
- package/dist/clients/assetApi.cjs.map +1 -1
- package/dist/clients/assetApi.d.cts +105 -0
- package/dist/clients/assetApi.d.cts.map +1 -0
- package/dist/clients/assetApi.d.ts +96 -97
- package/dist/clients/assetApi.d.ts.map +1 -0
- package/dist/clients/assetApi.js +79 -91
- package/dist/clients/assetApi.js.map +1 -1
- package/dist/clients/authenticationApi.cjs +52 -73
- package/dist/clients/authenticationApi.cjs.map +1 -1
- package/dist/clients/authenticationApi.d.cts +20 -0
- package/dist/clients/authenticationApi.d.cts.map +1 -0
- package/dist/clients/authenticationApi.d.ts +18 -13
- package/dist/clients/authenticationApi.d.ts.map +1 -0
- package/dist/clients/authenticationApi.js +52 -73
- package/dist/clients/authenticationApi.js.map +1 -1
- package/dist/clients/contentApi.cjs +94 -103
- package/dist/clients/contentApi.cjs.map +1 -1
- package/dist/clients/contentApi.d.cts +116 -0
- package/dist/clients/contentApi.d.cts.map +1 -0
- package/dist/clients/contentApi.d.ts +102 -98
- package/dist/clients/contentApi.d.ts.map +1 -0
- package/dist/clients/contentApi.js +94 -103
- package/dist/clients/contentApi.js.map +1 -1
- package/dist/clients/coreApi.cjs +123 -145
- package/dist/clients/coreApi.cjs.map +1 -1
- package/dist/clients/coreApi.d.cts +122 -0
- package/dist/clients/coreApi.d.cts.map +1 -0
- package/dist/clients/coreApi.d.ts +111 -109
- package/dist/clients/coreApi.d.ts.map +1 -0
- package/dist/clients/coreApi.js +122 -144
- package/dist/clients/coreApi.js.map +1 -1
- package/dist/clients/customTypesApi.cjs +90 -99
- package/dist/clients/customTypesApi.cjs.map +1 -1
- package/dist/clients/customTypesApi.d.cts +46 -0
- package/dist/clients/customTypesApi.d.cts.map +1 -0
- package/dist/clients/customTypesApi.d.ts +45 -45
- package/dist/clients/customTypesApi.d.ts.map +1 -0
- package/dist/clients/customTypesApi.js +87 -98
- package/dist/clients/customTypesApi.js.map +1 -1
- package/dist/clients/integrationFields.cjs +96 -87
- package/dist/clients/integrationFields.cjs.map +1 -1
- package/dist/clients/integrationFields.d.cts +30 -0
- package/dist/clients/integrationFields.d.cts.map +1 -0
- package/dist/clients/integrationFields.d.ts +27 -22
- package/dist/clients/integrationFields.d.ts.map +1 -0
- package/dist/clients/integrationFields.js +93 -86
- package/dist/clients/integrationFields.js.map +1 -1
- package/dist/clients/manageV2.cjs +154 -171
- package/dist/clients/manageV2.cjs.map +1 -1
- package/dist/clients/manageV2.d.cts +105 -0
- package/dist/clients/manageV2.d.cts.map +1 -0
- package/dist/clients/manageV2.d.ts +103 -111
- package/dist/clients/manageV2.d.ts.map +1 -0
- package/dist/clients/manageV2.js +149 -169
- package/dist/clients/manageV2.js.map +1 -1
- package/dist/clients/migrationApi.cjs +37 -36
- package/dist/clients/migrationApi.cjs.map +1 -1
- package/dist/clients/migrationApi.d.cts +48 -0
- package/dist/clients/migrationApi.d.cts.map +1 -0
- package/dist/clients/migrationApi.d.ts +45 -39
- package/dist/clients/migrationApi.d.ts.map +1 -0
- package/dist/clients/migrationApi.js +35 -34
- package/dist/clients/migrationApi.js.map +1 -1
- package/dist/clients/wroom.cjs +101 -122
- package/dist/clients/wroom.cjs.map +1 -1
- package/dist/clients/wroom.d.cts +48 -0
- package/dist/clients/wroom.d.cts.map +1 -0
- package/dist/clients/wroom.d.ts +46 -47
- package/dist/clients/wroom.d.ts.map +1 -0
- package/dist/clients/wroom.js +99 -122
- package/dist/clients/wroom.js.map +1 -1
- package/dist/index.cjs +13 -15
- package/dist/index.d.cts +8 -0
- package/dist/index.d.ts +8 -7
- package/dist/index.js +5 -14
- package/dist/managers/repositories.cjs +159 -169
- package/dist/managers/repositories.cjs.map +1 -1
- package/dist/managers/repositories.d.cts +67 -0
- package/dist/managers/repositories.d.cts.map +1 -0
- package/dist/managers/repositories.d.ts +56 -63
- package/dist/managers/repositories.d.ts.map +1 -0
- package/dist/managers/repositories.js +148 -159
- package/dist/managers/repositories.js.map +1 -1
- package/dist/managers/repository.cjs +529 -616
- package/dist/managers/repository.cjs.map +1 -1
- package/dist/managers/repository.d.cts +308 -0
- package/dist/managers/repository.d.cts.map +1 -0
- package/dist/managers/repository.d.ts +303 -307
- package/dist/managers/repository.d.ts.map +1 -0
- package/dist/managers/repository.js +529 -616
- package/dist/managers/repository.js.map +1 -1
- package/dist/types.d.cts +41 -0
- package/dist/types.d.cts.map +1 -0
- package/dist/types.d.ts +35 -37
- package/dist/types.d.ts.map +1 -0
- package/dist/utils/cookies.cjs +19 -17
- package/dist/utils/cookies.cjs.map +1 -1
- package/dist/utils/cookies.js +20 -18
- package/dist/utils/cookies.js.map +1 -1
- package/dist/utils/envVariableManager.cjs +33 -34
- package/dist/utils/envVariableManager.cjs.map +1 -1
- package/dist/utils/envVariableManager.js +34 -35
- package/dist/utils/envVariableManager.js.map +1 -1
- package/dist/utils/log.cjs +18 -19
- package/dist/utils/log.cjs.map +1 -1
- package/dist/utils/log.js +18 -21
- package/dist/utils/log.js.map +1 -1
- package/dist/utils/random.cjs +13 -6
- package/dist/utils/random.cjs.map +1 -1
- package/dist/utils/random.js +13 -6
- package/dist/utils/random.js.map +1 -1
- package/dist/utils/strings.cjs +13 -7
- package/dist/utils/strings.cjs.map +1 -1
- package/dist/utils/strings.js +14 -8
- package/dist/utils/strings.js.map +1 -1
- package/dist/utils/urls.cjs +21 -10
- package/dist/utils/urls.cjs.map +1 -1
- package/dist/utils/urls.js +22 -12
- package/dist/utils/urls.js.map +1 -1
- package/package.json +42 -67
- package/src/clients/apiClient.ts +16 -21
- package/src/clients/assetApi.ts +75 -82
- package/src/clients/authenticationApi.ts +25 -27
- package/src/clients/contentApi.ts +109 -129
- package/src/clients/coreApi.ts +113 -117
- package/src/clients/customTypesApi.ts +54 -76
- package/src/clients/integrationFields.ts +59 -74
- package/src/clients/manageV2.ts +72 -96
- package/src/clients/migrationApi.ts +35 -39
- package/src/clients/wroom.ts +42 -56
- package/src/index.ts +7 -7
- package/src/managers/repositories.ts +85 -108
- package/src/managers/repository.ts +303 -368
- package/src/types.ts +31 -31
- package/src/utils/cookies.ts +8 -8
- package/src/utils/envVariableManager.ts +15 -15
- package/src/utils/log.ts +17 -21
- package/src/utils/random.ts +5 -6
- package/src/utils/strings.ts +7 -9
- package/src/utils/urls.ts +10 -12
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/utils/cookies.d.ts +0 -8
- package/dist/utils/envVariableManager.d.ts +0 -16
- package/dist/utils/log.d.ts +0 -5
- package/dist/utils/random.d.ts +0 -8
- package/dist/utils/strings.d.ts +0 -11
- package/dist/utils/urls.d.ts +0 -16
package/dist/clients/coreApi.cjs
CHANGED
|
@@ -1,146 +1,124 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
throw new Error("Could not publish release ${id}");
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
async getRepository() {
|
|
126
|
-
const context = await this.getContext();
|
|
127
|
-
const result = await context.get(`core/repository`);
|
|
128
|
-
if (200 !== result.status()) {
|
|
129
|
-
await log.logPlaywrightApiResponse(result);
|
|
130
|
-
throw new Error(`Could not get repository`);
|
|
131
|
-
}
|
|
132
|
-
return result.json();
|
|
133
|
-
}
|
|
134
|
-
async updateRepository(data) {
|
|
135
|
-
const context = await this.getContext();
|
|
136
|
-
const result = await context.patch(`core/repository`, {
|
|
137
|
-
data
|
|
138
|
-
});
|
|
139
|
-
if (204 !== result.status()) {
|
|
140
|
-
await log.logPlaywrightApiResponse(result);
|
|
141
|
-
throw new Error(`Could not update repository`);
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}
|
|
1
|
+
const require_log = require("../utils/log.cjs");
|
|
2
|
+
const require_apiClient = require("./apiClient.cjs");
|
|
3
|
+
//#region src/clients/coreApi.ts
|
|
4
|
+
var CoreApiClient = class extends require_apiClient.AuthenticatedApiClient {
|
|
5
|
+
/**
|
|
6
|
+
* @example
|
|
7
|
+
* To instantiate the class:
|
|
8
|
+
*
|
|
9
|
+
* ```js
|
|
10
|
+
* new CoreApiClient("https://my-repo.prismic.io", {
|
|
11
|
+
* authToken: "my-secret-token",
|
|
12
|
+
* });
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @param baseURL - The api base URL like https://my-repo.prismic.io
|
|
16
|
+
* @param config - Optional configuration
|
|
17
|
+
*
|
|
18
|
+
* - {@link config.authToken}: Api token generated from the auth service or a function to fetch it
|
|
19
|
+
* when it's needed.
|
|
20
|
+
*/
|
|
21
|
+
constructor(baseURL, config) {
|
|
22
|
+
super(baseURL, config);
|
|
23
|
+
}
|
|
24
|
+
async getLanguages() {
|
|
25
|
+
const profiler = require_log.logger.startTimer();
|
|
26
|
+
const result = await (await this.getContext()).get("core/repository");
|
|
27
|
+
if (200 !== result.status() || !(await result.json()).languages) {
|
|
28
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
29
|
+
throw new Error("Could not get languages from the core api.");
|
|
30
|
+
}
|
|
31
|
+
profiler.done({ message: "retrieved languages configuration" });
|
|
32
|
+
return (await result.json()).languages;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Retrieves all releases, including the migration release.
|
|
36
|
+
*
|
|
37
|
+
* @returns An array of release metadata.
|
|
38
|
+
*/
|
|
39
|
+
async getReleases() {
|
|
40
|
+
const profiler = require_log.logger.startTimer();
|
|
41
|
+
const result = await (await this.getContext()).get("core/releases", { params: { include_migration_releases: true } });
|
|
42
|
+
if (200 !== result.status() || !(await result.json()).results) {
|
|
43
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
44
|
+
throw new Error("Could not get releases from the core api.");
|
|
45
|
+
}
|
|
46
|
+
profiler.done({ message: "retrieved releases" });
|
|
47
|
+
return (await result.json()).results;
|
|
48
|
+
}
|
|
49
|
+
async createDraft(data) {
|
|
50
|
+
const result = await (await this.getContext()).post("core/documents", { data });
|
|
51
|
+
if (201 !== result.status()) {
|
|
52
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
53
|
+
throw new Error("Could not create draft document");
|
|
54
|
+
}
|
|
55
|
+
return result.json();
|
|
56
|
+
}
|
|
57
|
+
async publishDraft(documentId) {
|
|
58
|
+
const result = await (await this.getContext()).patch(`core/documents/${documentId}/draft`, { data: { status: "published" } });
|
|
59
|
+
if (204 !== result.status()) {
|
|
60
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
61
|
+
throw new Error(`Could not publish document with id ${documentId}`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Retrieves documents.
|
|
66
|
+
*
|
|
67
|
+
* @param args - Configure which documents are retrieved.
|
|
68
|
+
* @returns A paginated set of documents.
|
|
69
|
+
*/
|
|
70
|
+
async getDocuments(args) {
|
|
71
|
+
const result = await (await this.getContext()).post("core/documents/search", { data: args });
|
|
72
|
+
if (200 !== result.status()) {
|
|
73
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
74
|
+
throw new Error("Could not search documents");
|
|
75
|
+
}
|
|
76
|
+
return result.json();
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Retrieves data for a specific document version.
|
|
80
|
+
*
|
|
81
|
+
* @param versionId - The document's version ID.
|
|
82
|
+
* @returns The document's version data.
|
|
83
|
+
*/
|
|
84
|
+
async getDocumentData(versionId) {
|
|
85
|
+
const result = await (await this.getContext()).get(`core/documents/data/${versionId}`);
|
|
86
|
+
if (200 !== result.status()) {
|
|
87
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
88
|
+
throw new Error("Could not retrieve document data");
|
|
89
|
+
}
|
|
90
|
+
return result.json();
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Publishes a release.
|
|
94
|
+
*
|
|
95
|
+
* @param id - The ID of the release.
|
|
96
|
+
* @returns A Promise that resolves when the release is published.
|
|
97
|
+
*/
|
|
98
|
+
async publishRelease(id) {
|
|
99
|
+
const result = await (await this.getContext()).post(`core/releases/${id}/publish`);
|
|
100
|
+
if (200 !== result.status()) {
|
|
101
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
102
|
+
throw new Error("Could not publish release ${id}");
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
async getRepository() {
|
|
106
|
+
const result = await (await this.getContext()).get(`core/repository`);
|
|
107
|
+
if (200 !== result.status()) {
|
|
108
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
109
|
+
throw new Error(`Could not get repository`);
|
|
110
|
+
}
|
|
111
|
+
return result.json();
|
|
112
|
+
}
|
|
113
|
+
async updateRepository(data) {
|
|
114
|
+
const result = await (await this.getContext()).patch(`core/repository`, { data });
|
|
115
|
+
if (204 !== result.status()) {
|
|
116
|
+
await require_log.logPlaywrightApiResponse(result);
|
|
117
|
+
throw new Error(`Could not update repository`);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
//#endregion
|
|
145
122
|
exports.CoreApiClient = CoreApiClient;
|
|
146
|
-
|
|
123
|
+
|
|
124
|
+
//# sourceMappingURL=coreApi.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coreApi.cjs","sources":["
|
|
1
|
+
{"version":3,"file":"coreApi.cjs","names":["AuthenticatedApiClient","logger","logPlaywrightApiResponse"],"sources":["../../src/clients/coreApi.ts"],"sourcesContent":["import { logPlaywrightApiResponse, logger } from \"../utils/log\"\nimport type { AuthServerToken } from \"./apiClient\"\nimport { AuthenticatedApiClient } from \"./apiClient\"\n\ntype Language = {\n\tid: string\n\tname: string\n\tis_master: boolean\n}\n\nexport type Release = {\n\tid: string\n\tlabel: string\n\tmigration: boolean\n}\n\nexport type CoreApiDocumentCreationPayload = {\n\ttitle: string\n\tlocale?: string\n\tgroup_lang_id?: string\n\trelease_id?: string\n\tintegration_field_ids: string[]\n\tdata: Record<string, unknown>\n\tcustom_type_id: string\n\ttags: string[]\n}\n\nexport type CoreApiRepository = Record<string, unknown> & {\n\tsimulator_url?: string\n}\n\nexport type CoreApiDocumentCreationResponse = {\n\tid: string\n\tgroup_lang_id: string\n\tcustom_type_id: string\n\tlocale: string\n\tlanguage: { id: string; name: string }\n\tfirst_publication_date: number | null\n\tlast_publication_date: number | null\n\ttitle: string\n\tversions: {\n\t\tstatus: string\n\t\tversion_id: string\n\t\tauthor: {\n\t\t\tid: string\n\t\t\tfirst_name: string | null\n\t\t\tlast_name: string | null\n\t\t\temail: string\n\t\t}\n\t\trelease_id: string | null\n\t\tlast_modified_date: number\n\t\ttags: string[]\n\t\tcustom_type_label: string\n\t\tpreview_summary?: string\n\t\tpreview_image?: string\n\t\tuid?: string\n\t}[]\n}\n\nexport type CoreApiDocumentsPayload = {\n\tlanguage?: string\n\tlimit?: number\n\tstatuses?: string[]\n\tgroupLangIds?: string[]\n}\n\nexport type CoreApiDocumentsResponse = {\n\ttotal: number\n\tcursor: string\n\tresults: CoreApiDocumentCreationResponse[]\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type CoreApiDocumentData = Record<string, any>\n\nexport class CoreApiClient extends AuthenticatedApiClient {\n\t/**\n\t * @example\n\t * \tTo instantiate the class:\n\t *\n\t * \t```js\n\t * \tnew CoreApiClient(\"https://my-repo.prismic.io\", {\n\t * \tauthToken: \"my-secret-token\",\n\t * \t});\n\t * \t```\n\t *\n\t * @param baseURL - The api base URL like https://my-repo.prismic.io\n\t * @param config - Optional configuration\n\t *\n\t * - {@link config.authToken}: Api token generated from the auth service or a function to fetch it\n\t * when it's needed.\n\t */\n\tconstructor(baseURL: string, config: AuthServerToken) {\n\t\tsuper(baseURL, config)\n\t}\n\n\tasync getLanguages(): Promise<Language[]> {\n\t\tconst profiler = logger.startTimer()\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.get(\"core/repository\")\n\n\t\tif (200 !== result.status() || !(await result.json()).languages) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(\"Could not get languages from the core api.\")\n\t\t}\n\n\t\tprofiler.done({ message: \"retrieved languages configuration\" })\n\n\t\treturn (await result.json()).languages\n\t}\n\n\t/**\n\t * Retrieves all releases, including the migration release.\n\t *\n\t * @returns An array of release metadata.\n\t */\n\tasync getReleases(): Promise<Release[]> {\n\t\tconst profiler = logger.startTimer()\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.get(\"core/releases\", {\n\t\t\tparams: { include_migration_releases: true },\n\t\t})\n\n\t\tif (200 !== result.status() || !(await result.json()).results) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(\"Could not get releases from the core api.\")\n\t\t}\n\n\t\tprofiler.done({ message: \"retrieved releases\" })\n\n\t\treturn (await result.json()).results\n\t}\n\n\tasync createDraft(\n\t\tdata: CoreApiDocumentCreationPayload,\n\t): Promise<CoreApiDocumentCreationResponse> {\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.post(\"core/documents\", {\n\t\t\tdata,\n\t\t})\n\n\t\tif (201 !== result.status()) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(\"Could not create draft document\")\n\t\t}\n\n\t\treturn result.json()\n\t}\n\n\tasync publishDraft(documentId: string): Promise<void> {\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.patch(`core/documents/${documentId}/draft`, {\n\t\t\tdata: {\n\t\t\t\tstatus: \"published\",\n\t\t\t},\n\t\t})\n\n\t\tif (204 !== result.status()) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(`Could not publish document with id ${documentId}`)\n\t\t}\n\t}\n\n\t/**\n\t * Retrieves documents.\n\t *\n\t * @param args - Configure which documents are retrieved.\n\t * @returns A paginated set of documents.\n\t */\n\tasync getDocuments(args: CoreApiDocumentsPayload): Promise<CoreApiDocumentsResponse> {\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.post(\"core/documents/search\", {\n\t\t\tdata: args,\n\t\t})\n\n\t\tif (200 !== result.status()) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(\"Could not search documents\")\n\t\t}\n\n\t\treturn result.json()\n\t}\n\n\t/**\n\t * Retrieves data for a specific document version.\n\t *\n\t * @param versionId - The document's version ID.\n\t * @returns The document's version data.\n\t */\n\tasync getDocumentData(versionId: string): Promise<CoreApiDocumentData> {\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.get(`core/documents/data/${versionId}`)\n\n\t\tif (200 !== result.status()) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(\"Could not retrieve document data\")\n\t\t}\n\n\t\treturn result.json()\n\t}\n\n\t/**\n\t * Publishes a release.\n\t *\n\t * @param id - The ID of the release.\n\t * @returns A Promise that resolves when the release is published.\n\t */\n\tasync publishRelease(id: string): Promise<void> {\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.post(`core/releases/${id}/publish`)\n\n\t\tif (200 !== result.status()) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(\"Could not publish release ${id}\")\n\t\t}\n\t}\n\n\tasync getRepository(): Promise<CoreApiRepository> {\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.get(`core/repository`)\n\n\t\tif (200 !== result.status()) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(`Could not get repository`)\n\t\t}\n\n\t\treturn result.json()\n\t}\n\n\tasync updateRepository(data: CoreApiRepository): Promise<void> {\n\t\tconst context = await this.getContext()\n\t\tconst result = await context.patch(`core/repository`, {\n\t\t\tdata,\n\t\t})\n\n\t\tif (204 !== result.status()) {\n\t\t\tawait logPlaywrightApiResponse(result)\n\t\t\tthrow new Error(`Could not update repository`)\n\t\t}\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { AuthServerToken, AuthenticatedApiClient } from "./apiClient.cjs";
|
|
2
|
+
|
|
3
|
+
//#region src/clients/coreApi.d.ts
|
|
4
|
+
type Language = {
|
|
5
|
+
id: string;
|
|
6
|
+
name: string;
|
|
7
|
+
is_master: boolean;
|
|
8
|
+
};
|
|
9
|
+
type Release = {
|
|
10
|
+
id: string;
|
|
11
|
+
label: string;
|
|
12
|
+
migration: boolean;
|
|
13
|
+
};
|
|
14
|
+
type CoreApiDocumentCreationPayload = {
|
|
15
|
+
title: string;
|
|
16
|
+
locale?: string;
|
|
17
|
+
group_lang_id?: string;
|
|
18
|
+
release_id?: string;
|
|
19
|
+
integration_field_ids: string[];
|
|
20
|
+
data: Record<string, unknown>;
|
|
21
|
+
custom_type_id: string;
|
|
22
|
+
tags: string[];
|
|
23
|
+
};
|
|
24
|
+
type CoreApiRepository = Record<string, unknown> & {
|
|
25
|
+
simulator_url?: string;
|
|
26
|
+
};
|
|
27
|
+
type CoreApiDocumentCreationResponse = {
|
|
28
|
+
id: string;
|
|
29
|
+
group_lang_id: string;
|
|
30
|
+
custom_type_id: string;
|
|
31
|
+
locale: string;
|
|
32
|
+
language: {
|
|
33
|
+
id: string;
|
|
34
|
+
name: string;
|
|
35
|
+
};
|
|
36
|
+
first_publication_date: number | null;
|
|
37
|
+
last_publication_date: number | null;
|
|
38
|
+
title: string;
|
|
39
|
+
versions: {
|
|
40
|
+
status: string;
|
|
41
|
+
version_id: string;
|
|
42
|
+
author: {
|
|
43
|
+
id: string;
|
|
44
|
+
first_name: string | null;
|
|
45
|
+
last_name: string | null;
|
|
46
|
+
email: string;
|
|
47
|
+
};
|
|
48
|
+
release_id: string | null;
|
|
49
|
+
last_modified_date: number;
|
|
50
|
+
tags: string[];
|
|
51
|
+
custom_type_label: string;
|
|
52
|
+
preview_summary?: string;
|
|
53
|
+
preview_image?: string;
|
|
54
|
+
uid?: string;
|
|
55
|
+
}[];
|
|
56
|
+
};
|
|
57
|
+
type CoreApiDocumentsPayload = {
|
|
58
|
+
language?: string;
|
|
59
|
+
limit?: number;
|
|
60
|
+
statuses?: string[];
|
|
61
|
+
groupLangIds?: string[];
|
|
62
|
+
};
|
|
63
|
+
type CoreApiDocumentsResponse = {
|
|
64
|
+
total: number;
|
|
65
|
+
cursor: string;
|
|
66
|
+
results: CoreApiDocumentCreationResponse[];
|
|
67
|
+
};
|
|
68
|
+
type CoreApiDocumentData = Record<string, any>;
|
|
69
|
+
declare class CoreApiClient extends AuthenticatedApiClient {
|
|
70
|
+
/**
|
|
71
|
+
* @example
|
|
72
|
+
* To instantiate the class:
|
|
73
|
+
*
|
|
74
|
+
* ```js
|
|
75
|
+
* new CoreApiClient("https://my-repo.prismic.io", {
|
|
76
|
+
* authToken: "my-secret-token",
|
|
77
|
+
* });
|
|
78
|
+
* ```
|
|
79
|
+
*
|
|
80
|
+
* @param baseURL - The api base URL like https://my-repo.prismic.io
|
|
81
|
+
* @param config - Optional configuration
|
|
82
|
+
*
|
|
83
|
+
* - {@link config.authToken}: Api token generated from the auth service or a function to fetch it
|
|
84
|
+
* when it's needed.
|
|
85
|
+
*/
|
|
86
|
+
constructor(baseURL: string, config: AuthServerToken);
|
|
87
|
+
getLanguages(): Promise<Language[]>;
|
|
88
|
+
/**
|
|
89
|
+
* Retrieves all releases, including the migration release.
|
|
90
|
+
*
|
|
91
|
+
* @returns An array of release metadata.
|
|
92
|
+
*/
|
|
93
|
+
getReleases(): Promise<Release[]>;
|
|
94
|
+
createDraft(data: CoreApiDocumentCreationPayload): Promise<CoreApiDocumentCreationResponse>;
|
|
95
|
+
publishDraft(documentId: string): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Retrieves documents.
|
|
98
|
+
*
|
|
99
|
+
* @param args - Configure which documents are retrieved.
|
|
100
|
+
* @returns A paginated set of documents.
|
|
101
|
+
*/
|
|
102
|
+
getDocuments(args: CoreApiDocumentsPayload): Promise<CoreApiDocumentsResponse>;
|
|
103
|
+
/**
|
|
104
|
+
* Retrieves data for a specific document version.
|
|
105
|
+
*
|
|
106
|
+
* @param versionId - The document's version ID.
|
|
107
|
+
* @returns The document's version data.
|
|
108
|
+
*/
|
|
109
|
+
getDocumentData(versionId: string): Promise<CoreApiDocumentData>;
|
|
110
|
+
/**
|
|
111
|
+
* Publishes a release.
|
|
112
|
+
*
|
|
113
|
+
* @param id - The ID of the release.
|
|
114
|
+
* @returns A Promise that resolves when the release is published.
|
|
115
|
+
*/
|
|
116
|
+
publishRelease(id: string): Promise<void>;
|
|
117
|
+
getRepository(): Promise<CoreApiRepository>;
|
|
118
|
+
updateRepository(data: CoreApiRepository): Promise<void>;
|
|
119
|
+
}
|
|
120
|
+
//#endregion
|
|
121
|
+
export { CoreApiClient, CoreApiDocumentCreationPayload, CoreApiDocumentCreationResponse, CoreApiDocumentData, CoreApiDocumentsPayload, CoreApiDocumentsResponse, CoreApiRepository, Release };
|
|
122
|
+
//# sourceMappingURL=coreApi.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coreApi.d.cts","names":[],"sources":["../../src/clients/coreApi.ts"],"mappings":";;;KAIK,QAAA;EACJ,EAAA;EACA,IAAA;EACA,SAAA;AAAA;AAAA,KAGW,OAAA;EACX,EAAA;EACA,KAAA;EACA,SAAA;AAAA;AAAA,KAGW,8BAAA;EACX,KAAA;EACA,MAAA;EACA,aAAA;EACA,UAAA;EACA,qBAAA;EACA,IAAA,EAAM,MAAM;EACZ,cAAA;EACA,IAAA;AAAA;AAAA,KAGW,iBAAA,GAAoB,MAAM;EACrC,aAAa;AAAA;AAAA,KAGF,+BAAA;EACX,EAAA;EACA,aAAA;EACA,cAAA;EACA,MAAA;EACA,QAAA;IAAY,EAAA;IAAY,IAAA;EAAA;EACxB,sBAAA;EACA,qBAAA;EACA,KAAA;EACA,QAAA;IACC,MAAA;IACA,UAAA;IACA,MAAA;MACC,EAAA;MACA,UAAA;MACA,SAAA;MACA,KAAA;IAAA;IAED,UAAA;IACA,kBAAA;IACA,IAAA;IACA,iBAAA;IACA,eAAA;IACA,aAAA;IACA,GAAA;EAAA;AAAA;AAAA,KAIU,uBAAA;EACX,QAAA;EACA,KAAA;EACA,QAAA;EACA,YAAA;AAAA;AAAA,KAGW,wBAAA;EACX,KAAA;EACA,MAAA;EACA,OAAA,EAAS,+BAA+B;AAAA;AAAA,KAI7B,mBAAA,GAAsB,MAAM;AAAA,cAE3B,aAAA,SAAsB,sBAAA;EArBjC;;;AACG;AAIL;;;;;;;;;AAIa;AAGb;;cA0Ba,OAAA,UAAiB,MAAA,EAAQ,eAAA;EAI/B,YAAA,IAAgB,OAAA,CAAQ,QAAA;EA7B9B;;;;;EAiDM,WAAA,IAAe,OAAA,CAAQ,OAAA;EAiBvB,WAAA,CACL,IAAA,EAAM,8BAAA,GACJ,OAAA,CAAQ,+BAAA;EAcL,YAAA,CAAa,UAAA,WAAqB,OAAA;;;AA5ED;AAExC;;;EA8FO,YAAA,CAAa,IAAA,EAAM,uBAAA,GAA0B,OAAA,CAAQ,wBAAA;EAzE7B;;;;;;EA6FxB,eAAA,CAAgB,SAAA,WAAoB,OAAA,CAAQ,mBAAA;EAxCV;;;;;;EA0DlC,cAAA,CAAe,EAAA,WAAa,OAAA;EAU5B,aAAA,IAAiB,OAAA,CAAQ,iBAAA;EAYzB,gBAAA,CAAiB,IAAA,EAAM,iBAAA,GAAoB,OAAA;AAAA"}
|