@devhelm/sdk 0.1.3 → 0.2.0
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/dist/client.d.ts +2 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +3 -0
- package/dist/client.js.map +1 -1
- package/dist/errors.d.ts +98 -6
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +171 -27
- package/dist/errors.js.map +1 -1
- package/dist/generated/api.d.ts +19710 -7489
- package/dist/generated/api.d.ts.map +1 -1
- package/dist/generated/schemas.d.ts +9495 -0
- package/dist/generated/schemas.d.ts.map +1 -0
- package/dist/generated/schemas.js +3547 -0
- package/dist/generated/schemas.js.map +1 -0
- package/dist/http.d.ts +33 -19
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +120 -50
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/resources/alert-channels.d.ts +2 -4
- package/dist/resources/alert-channels.d.ts.map +1 -1
- package/dist/resources/alert-channels.js +12 -12
- package/dist/resources/alert-channels.js.map +1 -1
- package/dist/resources/api-keys.d.ts.map +1 -1
- package/dist/resources/api-keys.js +8 -6
- package/dist/resources/api-keys.js.map +1 -1
- package/dist/resources/dependencies.d.ts +7 -1
- package/dist/resources/dependencies.d.ts.map +1 -1
- package/dist/resources/dependencies.js +14 -9
- package/dist/resources/dependencies.js.map +1 -1
- package/dist/resources/deploy-lock.d.ts +9 -1
- package/dist/resources/deploy-lock.d.ts.map +1 -1
- package/dist/resources/deploy-lock.js +21 -8
- package/dist/resources/deploy-lock.js.map +1 -1
- package/dist/resources/environments.d.ts.map +1 -1
- package/dist/resources/environments.js +11 -10
- package/dist/resources/environments.js.map +1 -1
- package/dist/resources/incidents.d.ts +3 -5
- package/dist/resources/incidents.d.ts.map +1 -1
- package/dist/resources/incidents.js +12 -15
- package/dist/resources/incidents.js.map +1 -1
- package/dist/resources/monitors.d.ts +2 -2
- package/dist/resources/monitors.d.ts.map +1 -1
- package/dist/resources/monitors.js +16 -18
- package/dist/resources/monitors.js.map +1 -1
- package/dist/resources/notification-policies.d.ts.map +1 -1
- package/dist/resources/notification-policies.js +11 -10
- package/dist/resources/notification-policies.js.map +1 -1
- package/dist/resources/resource-groups.d.ts +2 -2
- package/dist/resources/resource-groups.d.ts.map +1 -1
- package/dist/resources/resource-groups.js +15 -13
- package/dist/resources/resource-groups.js.map +1 -1
- package/dist/resources/secrets.d.ts.map +1 -1
- package/dist/resources/secrets.js +10 -8
- package/dist/resources/secrets.js.map +1 -1
- package/dist/resources/status-pages.d.ts +103 -0
- package/dist/resources/status-pages.d.ts.map +1 -0
- package/dist/resources/status-pages.js +190 -0
- package/dist/resources/status-pages.js.map +1 -0
- package/dist/resources/status.d.ts.map +1 -1
- package/dist/resources/status.js +3 -3
- package/dist/resources/status.js.map +1 -1
- package/dist/resources/tags.d.ts.map +1 -1
- package/dist/resources/tags.js +11 -10
- package/dist/resources/tags.js.map +1 -1
- package/dist/resources/webhooks.d.ts +2 -4
- package/dist/resources/webhooks.d.ts.map +1 -1
- package/dist/resources/webhooks.js +12 -12
- package/dist/resources/webhooks.js.map +1 -1
- package/dist/schemas.d.ts +5159 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +160 -0
- package/dist/schemas.js.map +1 -0
- package/dist/types.d.ts +72 -37
- package/dist/types.d.ts.map +1 -1
- package/dist/validation.d.ts +44 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/validation.js +71 -0
- package/dist/validation.js.map +1 -0
- package/package.json +10 -5
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MonitorDtoSchema, MonitorVersionDtoSchema, CheckResultDtoSchema, MonitorTestResultDtoSchema, CreateMonitorRequestSchema, UpdateMonitorRequestSchema, } from '../schemas.js';
|
|
2
|
+
import { fetchAllPages, fetchPage, fetchCursorPage, fetchSingle, fetchVoid } from '../http.js';
|
|
3
|
+
import { validateRequest } from '../validation.js';
|
|
2
4
|
export class Monitors {
|
|
3
5
|
client;
|
|
4
6
|
constructor(client) {
|
|
@@ -6,53 +8,49 @@ export class Monitors {
|
|
|
6
8
|
}
|
|
7
9
|
/** List all monitors (auto-paginates). */
|
|
8
10
|
async list() {
|
|
9
|
-
return fetchAllPages(this.client, '/api/v1/monitors');
|
|
11
|
+
return fetchAllPages(this.client, '/api/v1/monitors', MonitorDtoSchema);
|
|
10
12
|
}
|
|
11
13
|
/** List monitors with manual page control. */
|
|
12
14
|
async listPage(page, size) {
|
|
13
|
-
return fetchPage(this.client, '/api/v1/monitors', page, size);
|
|
15
|
+
return fetchPage(this.client, '/api/v1/monitors', MonitorDtoSchema, page, size);
|
|
14
16
|
}
|
|
15
17
|
/** Get a single monitor by ID. */
|
|
16
18
|
async get(id) {
|
|
17
|
-
|
|
18
|
-
return unwrapSingle(resp);
|
|
19
|
+
return fetchSingle(this.client, 'GET', `/api/v1/monitors/${id}`, MonitorDtoSchema);
|
|
19
20
|
}
|
|
20
21
|
/** Create a new monitor. */
|
|
21
22
|
async create(body) {
|
|
22
|
-
|
|
23
|
-
return
|
|
23
|
+
validateRequest(CreateMonitorRequestSchema, body, 'monitors.create');
|
|
24
|
+
return fetchSingle(this.client, 'POST', '/api/v1/monitors', MonitorDtoSchema, body);
|
|
24
25
|
}
|
|
25
26
|
/** Update an existing monitor. */
|
|
26
27
|
async update(id, body) {
|
|
27
|
-
|
|
28
|
-
return
|
|
28
|
+
validateRequest(UpdateMonitorRequestSchema, body, 'monitors.update');
|
|
29
|
+
return fetchSingle(this.client, 'PUT', `/api/v1/monitors/${id}`, MonitorDtoSchema, body);
|
|
29
30
|
}
|
|
30
31
|
/** Delete a monitor. */
|
|
31
32
|
async delete(id) {
|
|
32
|
-
|
|
33
|
+
return fetchVoid(this.client, `/api/v1/monitors/${id}`);
|
|
33
34
|
}
|
|
34
35
|
/** Pause a monitor. */
|
|
35
36
|
async pause(id) {
|
|
36
|
-
|
|
37
|
-
return unwrapSingle(resp);
|
|
37
|
+
return fetchSingle(this.client, 'POST', `/api/v1/monitors/${id}/pause`, MonitorDtoSchema);
|
|
38
38
|
}
|
|
39
39
|
/** Resume a paused monitor. */
|
|
40
40
|
async resume(id) {
|
|
41
|
-
|
|
42
|
-
return unwrapSingle(resp);
|
|
41
|
+
return fetchSingle(this.client, 'POST', `/api/v1/monitors/${id}/resume`, MonitorDtoSchema);
|
|
43
42
|
}
|
|
44
43
|
/** Trigger an ad-hoc test run for a monitor. */
|
|
45
44
|
async test(id) {
|
|
46
|
-
|
|
47
|
-
return unwrapSingle(resp);
|
|
45
|
+
return fetchSingle(this.client, 'POST', `/api/v1/monitors/${id}/test`, MonitorTestResultDtoSchema);
|
|
48
46
|
}
|
|
49
47
|
/** List check results (cursor-paginated). */
|
|
50
48
|
async results(id, options = {}) {
|
|
51
|
-
return fetchCursorPage(this.client, `/api/v1/monitors/${id}/results`, options);
|
|
49
|
+
return fetchCursorPage(this.client, `/api/v1/monitors/${id}/results`, CheckResultDtoSchema, options);
|
|
52
50
|
}
|
|
53
51
|
/** List monitor version history. */
|
|
54
52
|
async versions(id, options = {}) {
|
|
55
|
-
return fetchPage(this.client, `/api/v1/monitors/${id}/versions`, options.page ?? 0, options.size ?? 20);
|
|
53
|
+
return fetchPage(this.client, `/api/v1/monitors/${id}/versions`, MonitorVersionDtoSchema, options.page ?? 0, options.size ?? 20);
|
|
56
54
|
}
|
|
57
55
|
}
|
|
58
56
|
//# sourceMappingURL=monitors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monitors.js","sourceRoot":"","sources":["../../src/resources/monitors.ts"],"names":[],"mappings":"AAMA,OAAO,
|
|
1
|
+
{"version":3,"file":"monitors.js","sourceRoot":"","sources":["../../src/resources/monitors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-policies.d.ts","sourceRoot":"","sources":["../../src/resources/notification-policies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAC,qBAAqB,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"notification-policies.d.ts","sourceRoot":"","sources":["../../src/resources/notification-policies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAC,qBAAqB,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;AAK9H,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,SAAS;IAE9C,uDAAuD;IACjD,IAAI,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAI9C,2DAA2D;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAIhF,8CAA8C;IACxC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI9D,wCAAwC;IAClC,MAAM,CAAC,IAAI,EAAE,+BAA+B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAKnF,8CAA8C;IACxC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,+BAA+B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAKxG,oCAAoC;IAC9B,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,qDAAqD;IAC/C,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG/C"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NotificationPolicyDtoSchema, CreateNotificationPolicyRequestSchema, UpdateNotificationPolicyRequestSchema } from '../schemas.js';
|
|
2
|
+
import { apiPost, fetchAllPages, fetchPage, fetchSingle, fetchVoid } from '../http.js';
|
|
3
|
+
import { validateRequest } from '../validation.js';
|
|
2
4
|
export class NotificationPolicies {
|
|
3
5
|
client;
|
|
4
6
|
constructor(client) {
|
|
@@ -6,30 +8,29 @@ export class NotificationPolicies {
|
|
|
6
8
|
}
|
|
7
9
|
/** List all notification policies (auto-paginates). */
|
|
8
10
|
async list() {
|
|
9
|
-
return fetchAllPages(this.client, '/api/v1/notification-policies');
|
|
11
|
+
return fetchAllPages(this.client, '/api/v1/notification-policies', NotificationPolicyDtoSchema);
|
|
10
12
|
}
|
|
11
13
|
/** List notification policies with manual page control. */
|
|
12
14
|
async listPage(page, size) {
|
|
13
|
-
return fetchPage(this.client, '/api/v1/notification-policies', page, size);
|
|
15
|
+
return fetchPage(this.client, '/api/v1/notification-policies', NotificationPolicyDtoSchema, page, size);
|
|
14
16
|
}
|
|
15
17
|
/** Get a single notification policy by ID. */
|
|
16
18
|
async get(id) {
|
|
17
|
-
|
|
18
|
-
return unwrapSingle(resp);
|
|
19
|
+
return fetchSingle(this.client, 'GET', `/api/v1/notification-policies/${id}`, NotificationPolicyDtoSchema);
|
|
19
20
|
}
|
|
20
21
|
/** Create a new notification policy. */
|
|
21
22
|
async create(body) {
|
|
22
|
-
|
|
23
|
-
return
|
|
23
|
+
validateRequest(CreateNotificationPolicyRequestSchema, body, 'notificationPolicies.create');
|
|
24
|
+
return fetchSingle(this.client, 'POST', '/api/v1/notification-policies', NotificationPolicyDtoSchema, body);
|
|
24
25
|
}
|
|
25
26
|
/** Update an existing notification policy. */
|
|
26
27
|
async update(id, body) {
|
|
27
|
-
|
|
28
|
-
return
|
|
28
|
+
validateRequest(UpdateNotificationPolicyRequestSchema, body, 'notificationPolicies.update');
|
|
29
|
+
return fetchSingle(this.client, 'PUT', `/api/v1/notification-policies/${id}`, NotificationPolicyDtoSchema, body);
|
|
29
30
|
}
|
|
30
31
|
/** Delete a notification policy. */
|
|
31
32
|
async delete(id) {
|
|
32
|
-
|
|
33
|
+
return fetchVoid(this.client, `/api/v1/notification-policies/${id}`);
|
|
33
34
|
}
|
|
34
35
|
/** Send a test dispatch to verify policy routing. */
|
|
35
36
|
async test(id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-policies.js","sourceRoot":"","sources":["../../src/resources/notification-policies.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"notification-policies.js","sourceRoot":"","sources":["../../src/resources/notification-policies.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,2BAA2B,EAAE,qCAAqC,EAAE,qCAAqC,EAAC,MAAM,eAAe,CAAA;AACvI,OAAO,EAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAC,MAAM,YAAY,CAAA;AACpF,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAA;AAEhD,MAAM,OAAO,oBAAoB;IACF;IAA7B,YAA6B,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAElD,uDAAuD;IACvD,KAAK,CAAC,IAAI;QACR,OAAO,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,+BAA+B,EAAE,2BAA2B,CAAC,CAAA;IACjG,CAAC;IAED,2DAA2D;IAC3D,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAAY;QACvC,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IACzG,CAAC;IAED,8CAA8C;IAC9C,KAAK,CAAC,GAAG,CAAC,EAAmB;QAC3B,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE,EAAE,2BAA2B,CAAC,CAAA;IAC5G,CAAC;IAED,wCAAwC;IACxC,KAAK,CAAC,MAAM,CAAC,IAAqC;QAChD,eAAe,CAAC,qCAAqC,EAAE,IAAI,EAAE,6BAA6B,CAAC,CAAA;QAC3F,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAA;IAC7G,CAAC;IAED,8CAA8C;IAC9C,KAAK,CAAC,MAAM,CAAC,EAAmB,EAAE,IAAqC;QACrE,eAAe,CAAC,qCAAqC,EAAE,IAAI,EAAE,6BAA6B,CAAC,CAAA;QAC3F,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE,EAAE,2BAA2B,EAAE,IAAI,CAAC,CAAA;IAClH,CAAC;IAED,oCAAoC;IACpC,KAAK,CAAC,MAAM,CAAC,EAAmB;QAC9B,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,iCAAiC,EAAE,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,IAAI,CAAC,EAAmB;QAC5B,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,iCAAiC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;IAC5E,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ApiClient } from '../http.js';
|
|
2
|
-
import type { ResourceGroupDto, CreateResourceGroupRequest, UpdateResourceGroupRequest, Page } from '../types.js';
|
|
2
|
+
import type { ResourceGroupDto, CreateResourceGroupRequest, UpdateResourceGroupRequest, AddResourceGroupMemberRequest, Page } from '../types.js';
|
|
3
3
|
export declare class ResourceGroups {
|
|
4
4
|
private readonly client;
|
|
5
5
|
constructor(client: ApiClient);
|
|
@@ -16,7 +16,7 @@ export declare class ResourceGroups {
|
|
|
16
16
|
/** Delete a resource group. */
|
|
17
17
|
delete(id: string | number): Promise<void>;
|
|
18
18
|
/** Add a member (monitor or service) to a resource group. */
|
|
19
|
-
addMember(groupId: string | number,
|
|
19
|
+
addMember(groupId: string | number, body: AddResourceGroupMemberRequest): Promise<void>;
|
|
20
20
|
/** Remove a member from a resource group. */
|
|
21
21
|
removeMember(groupId: string | number, memberId: string | number): Promise<void>;
|
|
22
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-groups.d.ts","sourceRoot":"","sources":["../../src/resources/resource-groups.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAC,gBAAgB,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"resource-groups.d.ts","sourceRoot":"","sources":["../../src/resources/resource-groups.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAC,gBAAgB,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;AAK9I,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,SAAS;IAE9C,iDAAiD;IAC3C,IAAI,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIzC,qDAAqD;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAI3E,yCAAyC;IACnC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIzD,mCAAmC;IAC7B,MAAM,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAKzE,yCAAyC;IACnC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAK9F,+BAA+B;IACzB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,6DAA6D;IACvD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7F,6CAA6C;IACvC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGvF"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ResourceGroupDtoSchema, CreateResourceGroupRequestSchema, UpdateResourceGroupRequestSchema, AddResourceGroupMemberRequestSchema } from '../schemas.js';
|
|
2
|
+
import { apiPost, fetchAllPages, fetchPage, fetchSingle, fetchVoid } from '../http.js';
|
|
3
|
+
import { validateRequest } from '../validation.js';
|
|
2
4
|
export class ResourceGroups {
|
|
3
5
|
client;
|
|
4
6
|
constructor(client) {
|
|
@@ -6,38 +8,38 @@ export class ResourceGroups {
|
|
|
6
8
|
}
|
|
7
9
|
/** List all resource groups (auto-paginates). */
|
|
8
10
|
async list() {
|
|
9
|
-
return fetchAllPages(this.client, '/api/v1/resource-groups');
|
|
11
|
+
return fetchAllPages(this.client, '/api/v1/resource-groups', ResourceGroupDtoSchema);
|
|
10
12
|
}
|
|
11
13
|
/** List resource groups with manual page control. */
|
|
12
14
|
async listPage(page, size) {
|
|
13
|
-
return fetchPage(this.client, '/api/v1/resource-groups', page, size);
|
|
15
|
+
return fetchPage(this.client, '/api/v1/resource-groups', ResourceGroupDtoSchema, page, size);
|
|
14
16
|
}
|
|
15
17
|
/** Get a single resource group by ID. */
|
|
16
18
|
async get(id) {
|
|
17
|
-
|
|
18
|
-
return unwrapSingle(resp);
|
|
19
|
+
return fetchSingle(this.client, 'GET', `/api/v1/resource-groups/${id}`, ResourceGroupDtoSchema);
|
|
19
20
|
}
|
|
20
21
|
/** Create a new resource group. */
|
|
21
22
|
async create(body) {
|
|
22
|
-
|
|
23
|
-
return
|
|
23
|
+
validateRequest(CreateResourceGroupRequestSchema, body, 'resourceGroups.create');
|
|
24
|
+
return fetchSingle(this.client, 'POST', '/api/v1/resource-groups', ResourceGroupDtoSchema, body);
|
|
24
25
|
}
|
|
25
26
|
/** Update an existing resource group. */
|
|
26
27
|
async update(id, body) {
|
|
27
|
-
|
|
28
|
-
return
|
|
28
|
+
validateRequest(UpdateResourceGroupRequestSchema, body, 'resourceGroups.update');
|
|
29
|
+
return fetchSingle(this.client, 'PUT', `/api/v1/resource-groups/${id}`, ResourceGroupDtoSchema, body);
|
|
29
30
|
}
|
|
30
31
|
/** Delete a resource group. */
|
|
31
32
|
async delete(id) {
|
|
32
|
-
|
|
33
|
+
return fetchVoid(this.client, `/api/v1/resource-groups/${id}`);
|
|
33
34
|
}
|
|
34
35
|
/** Add a member (monitor or service) to a resource group. */
|
|
35
|
-
async addMember(groupId,
|
|
36
|
-
|
|
36
|
+
async addMember(groupId, body) {
|
|
37
|
+
validateRequest(AddResourceGroupMemberRequestSchema, body, 'resourceGroups.addMember');
|
|
38
|
+
await apiPost(this.client, `/api/v1/resource-groups/${groupId}/members`, body);
|
|
37
39
|
}
|
|
38
40
|
/** Remove a member from a resource group. */
|
|
39
41
|
async removeMember(groupId, memberId) {
|
|
40
|
-
|
|
42
|
+
return fetchVoid(this.client, `/api/v1/resource-groups/${groupId}/members/${memberId}`);
|
|
41
43
|
}
|
|
42
44
|
}
|
|
43
45
|
//# sourceMappingURL=resource-groups.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-groups.js","sourceRoot":"","sources":["../../src/resources/resource-groups.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"resource-groups.js","sourceRoot":"","sources":["../../src/resources/resource-groups.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,sBAAsB,EAAE,gCAAgC,EAAE,gCAAgC,EAAE,mCAAmC,EAAC,MAAM,eAAe,CAAA;AAC7J,OAAO,EAAC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAC,MAAM,YAAY,CAAA;AACpF,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAA;AAEhD,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAElD,iDAAiD;IACjD,KAAK,CAAC,IAAI;QACR,OAAO,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,yBAAyB,EAAE,sBAAsB,CAAC,CAAA;IACtF,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAAY;QACvC,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IAC9F,CAAC;IAED,yCAAyC;IACzC,KAAK,CAAC,GAAG,CAAC,EAAmB;QAC3B,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,EAAE,sBAAsB,CAAC,CAAA;IACjG,CAAC;IAED,mCAAmC;IACnC,KAAK,CAAC,MAAM,CAAC,IAAgC;QAC3C,eAAe,CAAC,gCAAgC,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAA;QAChF,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAA;IAClG,CAAC;IAED,yCAAyC;IACzC,KAAK,CAAC,MAAM,CAAC,EAAmB,EAAE,IAAgC;QAChE,eAAe,CAAC,gCAAgC,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAA;QAChF,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAA;IACvG,CAAC;IAED,+BAA+B;IAC/B,KAAK,CAAC,MAAM,CAAC,EAAmB;QAC9B,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,2BAA2B,EAAE,EAAE,CAAC,CAAA;IAChE,CAAC;IAED,6DAA6D;IAC7D,KAAK,CAAC,SAAS,CAAC,OAAwB,EAAE,IAAmC;QAC3E,eAAe,CAAC,mCAAmC,EAAE,IAAI,EAAE,0BAA0B,CAAC,CAAA;QACtF,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,2BAA2B,OAAO,UAAU,EAAE,IAAI,CAAC,CAAA;IAChF,CAAC;IAED,6CAA6C;IAC7C,KAAK,CAAC,YAAY,CAAC,OAAwB,EAAE,QAAyB;QACpE,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,2BAA2B,OAAO,YAAY,QAAQ,EAAE,CAAC,CAAA;IACzF,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/resources/secrets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAC,SAAS,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../src/resources/secrets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAC,SAAS,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;AAK1F,qBAAa,OAAO;IACN,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,SAAS;IAE9C,4EAA4E;IACtE,IAAI,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAIlC,6CAA6C;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAIpE,2BAA2B;IACrB,MAAM,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAK3D,sCAAsC;IAChC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC;IAKxE,8BAA8B;IACxB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { SecretDtoSchema, CreateSecretRequestSchema, UpdateSecretRequestSchema } from '../schemas.js';
|
|
2
|
+
import { fetchAllPages, fetchPage, fetchSingle, fetchVoid } from '../http.js';
|
|
3
|
+
import { validateRequest } from '../validation.js';
|
|
2
4
|
export class Secrets {
|
|
3
5
|
client;
|
|
4
6
|
constructor(client) {
|
|
@@ -6,25 +8,25 @@ export class Secrets {
|
|
|
6
8
|
}
|
|
7
9
|
/** List all secrets (auto-paginates). Returns metadata only, not values. */
|
|
8
10
|
async list() {
|
|
9
|
-
return fetchAllPages(this.client, '/api/v1/secrets');
|
|
11
|
+
return fetchAllPages(this.client, '/api/v1/secrets', SecretDtoSchema);
|
|
10
12
|
}
|
|
11
13
|
/** List secrets with manual page control. */
|
|
12
14
|
async listPage(page, size) {
|
|
13
|
-
return fetchPage(this.client, '/api/v1/secrets', page, size);
|
|
15
|
+
return fetchPage(this.client, '/api/v1/secrets', SecretDtoSchema, page, size);
|
|
14
16
|
}
|
|
15
17
|
/** Create a new secret. */
|
|
16
18
|
async create(body) {
|
|
17
|
-
|
|
18
|
-
return
|
|
19
|
+
validateRequest(CreateSecretRequestSchema, body, 'secrets.create');
|
|
20
|
+
return fetchSingle(this.client, 'POST', '/api/v1/secrets', SecretDtoSchema, body);
|
|
19
21
|
}
|
|
20
22
|
/** Update a secret's value by key. */
|
|
21
23
|
async update(key, body) {
|
|
22
|
-
|
|
23
|
-
return
|
|
24
|
+
validateRequest(UpdateSecretRequestSchema, body, 'secrets.update');
|
|
25
|
+
return fetchSingle(this.client, 'PUT', `/api/v1/secrets/${key}`, SecretDtoSchema, body);
|
|
24
26
|
}
|
|
25
27
|
/** Delete a secret by key. */
|
|
26
28
|
async delete(key) {
|
|
27
|
-
|
|
29
|
+
return fetchVoid(this.client, `/api/v1/secrets/${key}`);
|
|
28
30
|
}
|
|
29
31
|
}
|
|
30
32
|
//# sourceMappingURL=secrets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/resources/secrets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"secrets.js","sourceRoot":"","sources":["../../src/resources/secrets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,eAAe,EAAE,yBAAyB,EAAE,yBAAyB,EAAC,MAAM,eAAe,CAAA;AACnG,OAAO,EAAC,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAC,MAAM,YAAY,CAAA;AAC3E,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAA;AAEhD,MAAM,OAAO,OAAO;IACW;IAA7B,YAA6B,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAElD,4EAA4E;IAC5E,KAAK,CAAC,IAAI;QACR,OAAO,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAA;IACvE,CAAC;IAED,6CAA6C;IAC7C,KAAK,CAAC,QAAQ,CAAC,IAAY,EAAE,IAAY;QACvC,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IAC/E,CAAC;IAED,2BAA2B;IAC3B,KAAK,CAAC,MAAM,CAAC,IAAyB;QACpC,eAAe,CAAC,yBAAyB,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAA;QAClE,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,IAAI,CAAC,CAAA;IACnF,CAAC;IAED,sCAAsC;IACtC,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,IAAyB;QACjD,eAAe,CAAC,yBAAyB,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAA;QAClE,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,CAAA;IACzF,CAAC;IAED,8BAA8B;IAC9B,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,mBAAmB,GAAG,EAAE,CAAC,CAAA;IACzD,CAAC;CACF"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import type { ApiClient } from '../http.js';
|
|
2
|
+
import type { StatusPageDto, CreateStatusPageRequest, UpdateStatusPageRequest, StatusPageComponentDto, CreateStatusPageComponentRequest, UpdateStatusPageComponentRequest, StatusPageComponentGroupDto, CreateStatusPageComponentGroupRequest, UpdateStatusPageComponentGroupRequest, StatusPageIncidentDto, CreateStatusPageIncidentRequest, UpdateStatusPageIncidentRequest, CreateStatusPageIncidentUpdateRequest, PublishStatusPageIncidentRequest, StatusPageSubscriberDto, AdminAddSubscriberRequest, StatusPageCustomDomainDto, AddCustomDomainRequest, ReorderComponentsRequest, ReorderPageLayoutRequest, Page } from '../types.js';
|
|
3
|
+
declare class Components {
|
|
4
|
+
private readonly client;
|
|
5
|
+
constructor(client: ApiClient);
|
|
6
|
+
/** List all components on a status page. */
|
|
7
|
+
list(pageId: string | number): Promise<StatusPageComponentDto[]>;
|
|
8
|
+
/** Add a component to a status page. */
|
|
9
|
+
create(pageId: string | number, body: CreateStatusPageComponentRequest): Promise<StatusPageComponentDto>;
|
|
10
|
+
/** Update a component. */
|
|
11
|
+
update(pageId: string | number, componentId: string | number, body: UpdateStatusPageComponentRequest): Promise<StatusPageComponentDto>;
|
|
12
|
+
/** Remove a component from a status page. */
|
|
13
|
+
delete(pageId: string | number, componentId: string | number): Promise<void>;
|
|
14
|
+
/** Batch reorder components. */
|
|
15
|
+
reorder(pageId: string | number, body: ReorderComponentsRequest): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
declare class Groups {
|
|
18
|
+
private readonly client;
|
|
19
|
+
constructor(client: ApiClient);
|
|
20
|
+
/** List all component groups (with nested components). */
|
|
21
|
+
list(pageId: string | number): Promise<StatusPageComponentGroupDto[]>;
|
|
22
|
+
/** Create a component group. */
|
|
23
|
+
create(pageId: string | number, body: CreateStatusPageComponentGroupRequest): Promise<StatusPageComponentGroupDto>;
|
|
24
|
+
/** Update a component group. */
|
|
25
|
+
update(pageId: string | number, groupId: string | number, body: UpdateStatusPageComponentGroupRequest): Promise<StatusPageComponentGroupDto>;
|
|
26
|
+
/** Delete a component group. */
|
|
27
|
+
delete(pageId: string | number, groupId: string | number): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
declare class Incidents {
|
|
30
|
+
private readonly client;
|
|
31
|
+
constructor(client: ApiClient);
|
|
32
|
+
/** List incidents on a status page (paginated). */
|
|
33
|
+
list(pageId: string | number, options?: {
|
|
34
|
+
page?: number;
|
|
35
|
+
size?: number;
|
|
36
|
+
}): Promise<Page<StatusPageIncidentDto>>;
|
|
37
|
+
/** Get a single incident with timeline. */
|
|
38
|
+
get(pageId: string | number, incidentId: string | number): Promise<StatusPageIncidentDto>;
|
|
39
|
+
/** Create a status page incident. */
|
|
40
|
+
create(pageId: string | number, body: CreateStatusPageIncidentRequest): Promise<StatusPageIncidentDto>;
|
|
41
|
+
/** Update an incident. */
|
|
42
|
+
update(pageId: string | number, incidentId: string | number, body: UpdateStatusPageIncidentRequest): Promise<StatusPageIncidentDto>;
|
|
43
|
+
/** Post a timeline update on an incident. */
|
|
44
|
+
postUpdate(pageId: string | number, incidentId: string | number, body: CreateStatusPageIncidentUpdateRequest): Promise<StatusPageIncidentDto>;
|
|
45
|
+
/** Publish a draft incident. */
|
|
46
|
+
publish(pageId: string | number, incidentId: string | number, body?: PublishStatusPageIncidentRequest): Promise<StatusPageIncidentDto>;
|
|
47
|
+
/** Dismiss a draft incident. */
|
|
48
|
+
dismiss(pageId: string | number, incidentId: string | number): Promise<void>;
|
|
49
|
+
/** Delete an incident. */
|
|
50
|
+
delete(pageId: string | number, incidentId: string | number): Promise<void>;
|
|
51
|
+
}
|
|
52
|
+
declare class Subscribers {
|
|
53
|
+
private readonly client;
|
|
54
|
+
constructor(client: ApiClient);
|
|
55
|
+
/** List confirmed subscribers (paginated). */
|
|
56
|
+
list(pageId: string | number, options?: {
|
|
57
|
+
page?: number;
|
|
58
|
+
size?: number;
|
|
59
|
+
}): Promise<Page<StatusPageSubscriberDto>>;
|
|
60
|
+
/** Add a subscriber (admin). */
|
|
61
|
+
add(pageId: string | number, body: AdminAddSubscriberRequest): Promise<StatusPageSubscriberDto>;
|
|
62
|
+
/** Remove a subscriber. */
|
|
63
|
+
remove(pageId: string | number, subscriberId: string | number): Promise<void>;
|
|
64
|
+
}
|
|
65
|
+
declare class Domains {
|
|
66
|
+
private readonly client;
|
|
67
|
+
constructor(client: ApiClient);
|
|
68
|
+
/** List custom domains on a status page. */
|
|
69
|
+
list(pageId: string | number): Promise<StatusPageCustomDomainDto[]>;
|
|
70
|
+
/** Add a custom domain. */
|
|
71
|
+
add(pageId: string | number, body: AddCustomDomainRequest): Promise<StatusPageCustomDomainDto>;
|
|
72
|
+
/** Trigger domain verification check. */
|
|
73
|
+
verify(pageId: string | number, domainId: string | number): Promise<StatusPageCustomDomainDto>;
|
|
74
|
+
/** Remove a custom domain. */
|
|
75
|
+
remove(pageId: string | number, domainId: string | number): Promise<void>;
|
|
76
|
+
}
|
|
77
|
+
export declare class StatusPages {
|
|
78
|
+
private readonly client;
|
|
79
|
+
readonly components: Components;
|
|
80
|
+
readonly groups: Groups;
|
|
81
|
+
readonly incidents: Incidents;
|
|
82
|
+
readonly subscribers: Subscribers;
|
|
83
|
+
readonly domains: Domains;
|
|
84
|
+
constructor(client: ApiClient);
|
|
85
|
+
/** List all status pages in the workspace. */
|
|
86
|
+
list(): Promise<StatusPageDto[]>;
|
|
87
|
+
/** Get a status page by ID. */
|
|
88
|
+
get(id: string | number): Promise<StatusPageDto>;
|
|
89
|
+
/** Create a status page. */
|
|
90
|
+
create(body: CreateStatusPageRequest): Promise<StatusPageDto>;
|
|
91
|
+
/** Update a status page. */
|
|
92
|
+
update(id: string | number, body: UpdateStatusPageRequest): Promise<StatusPageDto>;
|
|
93
|
+
/** Delete a status page. */
|
|
94
|
+
delete(id: string | number): Promise<void>;
|
|
95
|
+
/**
|
|
96
|
+
* Batch-reorder the page layout: top-level sections (groups + ungrouped
|
|
97
|
+
* components) and, optionally, within-group component ordering. Returns
|
|
98
|
+
* 204 No Content on success.
|
|
99
|
+
*/
|
|
100
|
+
reorderLayout(id: string | number, body: ReorderPageLayoutRequest): Promise<void>;
|
|
101
|
+
}
|
|
102
|
+
export {};
|
|
103
|
+
//# sourceMappingURL=status-pages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-pages.d.ts","sourceRoot":"","sources":["../../src/resources/status-pages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { StatusPageDtoSchema, StatusPageComponentDtoSchema, StatusPageComponentGroupDtoSchema, StatusPageIncidentDtoSchema, StatusPageSubscriberDtoSchema, StatusPageCustomDomainDtoSchema, CreateStatusPageRequestSchema, UpdateStatusPageRequestSchema, CreateStatusPageComponentRequestSchema, UpdateStatusPageComponentRequestSchema, CreateStatusPageComponentGroupRequestSchema, UpdateStatusPageComponentGroupRequestSchema, CreateStatusPageIncidentRequestSchema, UpdateStatusPageIncidentRequestSchema, CreateStatusPageIncidentUpdateRequestSchema, PublishStatusPageIncidentRequestSchema, AdminAddSubscriberRequestSchema, AddCustomDomainRequestSchema, ReorderComponentsRequestSchema, ReorderPageLayoutRequestSchema, } from '../schemas.js';
|
|
2
|
+
import { apiPut, fetchAllPages, fetchPage, fetchSingle, fetchVoid } from '../http.js';
|
|
3
|
+
import { validateRequest } from '../validation.js';
|
|
4
|
+
const BASE = '/api/v1/status-pages';
|
|
5
|
+
class Components {
|
|
6
|
+
client;
|
|
7
|
+
constructor(client) {
|
|
8
|
+
this.client = client;
|
|
9
|
+
}
|
|
10
|
+
/** List all components on a status page. */
|
|
11
|
+
async list(pageId) {
|
|
12
|
+
return fetchAllPages(this.client, `${BASE}/${pageId}/components`, StatusPageComponentDtoSchema);
|
|
13
|
+
}
|
|
14
|
+
/** Add a component to a status page. */
|
|
15
|
+
async create(pageId, body) {
|
|
16
|
+
validateRequest(CreateStatusPageComponentRequestSchema, body, 'statusPages.components.create');
|
|
17
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/components`, StatusPageComponentDtoSchema, body);
|
|
18
|
+
}
|
|
19
|
+
/** Update a component. */
|
|
20
|
+
async update(pageId, componentId, body) {
|
|
21
|
+
validateRequest(UpdateStatusPageComponentRequestSchema, body, 'statusPages.components.update');
|
|
22
|
+
return fetchSingle(this.client, 'PUT', `${BASE}/${pageId}/components/${componentId}`, StatusPageComponentDtoSchema, body);
|
|
23
|
+
}
|
|
24
|
+
/** Remove a component from a status page. */
|
|
25
|
+
async delete(pageId, componentId) {
|
|
26
|
+
return fetchVoid(this.client, `${BASE}/${pageId}/components/${componentId}`);
|
|
27
|
+
}
|
|
28
|
+
/** Batch reorder components. */
|
|
29
|
+
async reorder(pageId, body) {
|
|
30
|
+
validateRequest(ReorderComponentsRequestSchema, body, 'statusPages.components.reorder');
|
|
31
|
+
await apiPut(this.client, `${BASE}/${pageId}/components/reorder`, body);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
class Groups {
|
|
35
|
+
client;
|
|
36
|
+
constructor(client) {
|
|
37
|
+
this.client = client;
|
|
38
|
+
}
|
|
39
|
+
/** List all component groups (with nested components). */
|
|
40
|
+
async list(pageId) {
|
|
41
|
+
return fetchAllPages(this.client, `${BASE}/${pageId}/groups`, StatusPageComponentGroupDtoSchema);
|
|
42
|
+
}
|
|
43
|
+
/** Create a component group. */
|
|
44
|
+
async create(pageId, body) {
|
|
45
|
+
validateRequest(CreateStatusPageComponentGroupRequestSchema, body, 'statusPages.groups.create');
|
|
46
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/groups`, StatusPageComponentGroupDtoSchema, body);
|
|
47
|
+
}
|
|
48
|
+
/** Update a component group. */
|
|
49
|
+
async update(pageId, groupId, body) {
|
|
50
|
+
validateRequest(UpdateStatusPageComponentGroupRequestSchema, body, 'statusPages.groups.update');
|
|
51
|
+
return fetchSingle(this.client, 'PUT', `${BASE}/${pageId}/groups/${groupId}`, StatusPageComponentGroupDtoSchema, body);
|
|
52
|
+
}
|
|
53
|
+
/** Delete a component group. */
|
|
54
|
+
async delete(pageId, groupId) {
|
|
55
|
+
return fetchVoid(this.client, `${BASE}/${pageId}/groups/${groupId}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
class Incidents {
|
|
59
|
+
client;
|
|
60
|
+
constructor(client) {
|
|
61
|
+
this.client = client;
|
|
62
|
+
}
|
|
63
|
+
/** List incidents on a status page (paginated). */
|
|
64
|
+
async list(pageId, options = {}) {
|
|
65
|
+
return fetchPage(this.client, `${BASE}/${pageId}/incidents`, StatusPageIncidentDtoSchema, options.page ?? 0, options.size ?? 20);
|
|
66
|
+
}
|
|
67
|
+
/** Get a single incident with timeline. */
|
|
68
|
+
async get(pageId, incidentId) {
|
|
69
|
+
return fetchSingle(this.client, 'GET', `${BASE}/${pageId}/incidents/${incidentId}`, StatusPageIncidentDtoSchema);
|
|
70
|
+
}
|
|
71
|
+
/** Create a status page incident. */
|
|
72
|
+
async create(pageId, body) {
|
|
73
|
+
validateRequest(CreateStatusPageIncidentRequestSchema, body, 'statusPages.incidents.create');
|
|
74
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/incidents`, StatusPageIncidentDtoSchema, body);
|
|
75
|
+
}
|
|
76
|
+
/** Update an incident. */
|
|
77
|
+
async update(pageId, incidentId, body) {
|
|
78
|
+
validateRequest(UpdateStatusPageIncidentRequestSchema, body, 'statusPages.incidents.update');
|
|
79
|
+
return fetchSingle(this.client, 'PUT', `${BASE}/${pageId}/incidents/${incidentId}`, StatusPageIncidentDtoSchema, body);
|
|
80
|
+
}
|
|
81
|
+
/** Post a timeline update on an incident. */
|
|
82
|
+
async postUpdate(pageId, incidentId, body) {
|
|
83
|
+
validateRequest(CreateStatusPageIncidentUpdateRequestSchema, body, 'statusPages.incidents.postUpdate');
|
|
84
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/incidents/${incidentId}/updates`, StatusPageIncidentDtoSchema, body);
|
|
85
|
+
}
|
|
86
|
+
/** Publish a draft incident. */
|
|
87
|
+
async publish(pageId, incidentId, body) {
|
|
88
|
+
if (body)
|
|
89
|
+
validateRequest(PublishStatusPageIncidentRequestSchema, body, 'statusPages.incidents.publish');
|
|
90
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/incidents/${incidentId}/publish`, StatusPageIncidentDtoSchema, body);
|
|
91
|
+
}
|
|
92
|
+
/** Dismiss a draft incident. */
|
|
93
|
+
async dismiss(pageId, incidentId) {
|
|
94
|
+
await fetchSingle(this.client, 'POST', `${BASE}/${pageId}/incidents/${incidentId}/dismiss`, StatusPageIncidentDtoSchema);
|
|
95
|
+
}
|
|
96
|
+
/** Delete an incident. */
|
|
97
|
+
async delete(pageId, incidentId) {
|
|
98
|
+
return fetchVoid(this.client, `${BASE}/${pageId}/incidents/${incidentId}`);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
class Subscribers {
|
|
102
|
+
client;
|
|
103
|
+
constructor(client) {
|
|
104
|
+
this.client = client;
|
|
105
|
+
}
|
|
106
|
+
/** List confirmed subscribers (paginated). */
|
|
107
|
+
async list(pageId, options = {}) {
|
|
108
|
+
return fetchPage(this.client, `${BASE}/${pageId}/subscribers`, StatusPageSubscriberDtoSchema, options.page ?? 0, options.size ?? 20);
|
|
109
|
+
}
|
|
110
|
+
/** Add a subscriber (admin). */
|
|
111
|
+
async add(pageId, body) {
|
|
112
|
+
validateRequest(AdminAddSubscriberRequestSchema, body, 'statusPages.subscribers.add');
|
|
113
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/subscribers`, StatusPageSubscriberDtoSchema, body);
|
|
114
|
+
}
|
|
115
|
+
/** Remove a subscriber. */
|
|
116
|
+
async remove(pageId, subscriberId) {
|
|
117
|
+
return fetchVoid(this.client, `${BASE}/${pageId}/subscribers/${subscriberId}`);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
class Domains {
|
|
121
|
+
client;
|
|
122
|
+
constructor(client) {
|
|
123
|
+
this.client = client;
|
|
124
|
+
}
|
|
125
|
+
/** List custom domains on a status page. */
|
|
126
|
+
async list(pageId) {
|
|
127
|
+
return fetchAllPages(this.client, `${BASE}/${pageId}/domains`, StatusPageCustomDomainDtoSchema);
|
|
128
|
+
}
|
|
129
|
+
/** Add a custom domain. */
|
|
130
|
+
async add(pageId, body) {
|
|
131
|
+
validateRequest(AddCustomDomainRequestSchema, body, 'statusPages.domains.add');
|
|
132
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/domains`, StatusPageCustomDomainDtoSchema, body);
|
|
133
|
+
}
|
|
134
|
+
/** Trigger domain verification check. */
|
|
135
|
+
async verify(pageId, domainId) {
|
|
136
|
+
return fetchSingle(this.client, 'POST', `${BASE}/${pageId}/domains/${domainId}/verify`, StatusPageCustomDomainDtoSchema);
|
|
137
|
+
}
|
|
138
|
+
/** Remove a custom domain. */
|
|
139
|
+
async remove(pageId, domainId) {
|
|
140
|
+
return fetchVoid(this.client, `${BASE}/${pageId}/domains/${domainId}`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
export class StatusPages {
|
|
144
|
+
client;
|
|
145
|
+
components;
|
|
146
|
+
groups;
|
|
147
|
+
incidents;
|
|
148
|
+
subscribers;
|
|
149
|
+
domains;
|
|
150
|
+
constructor(client) {
|
|
151
|
+
this.client = client;
|
|
152
|
+
this.components = new Components(client);
|
|
153
|
+
this.groups = new Groups(client);
|
|
154
|
+
this.incidents = new Incidents(client);
|
|
155
|
+
this.subscribers = new Subscribers(client);
|
|
156
|
+
this.domains = new Domains(client);
|
|
157
|
+
}
|
|
158
|
+
/** List all status pages in the workspace. */
|
|
159
|
+
async list() {
|
|
160
|
+
return fetchAllPages(this.client, BASE, StatusPageDtoSchema);
|
|
161
|
+
}
|
|
162
|
+
/** Get a status page by ID. */
|
|
163
|
+
async get(id) {
|
|
164
|
+
return fetchSingle(this.client, 'GET', `${BASE}/${id}`, StatusPageDtoSchema);
|
|
165
|
+
}
|
|
166
|
+
/** Create a status page. */
|
|
167
|
+
async create(body) {
|
|
168
|
+
validateRequest(CreateStatusPageRequestSchema, body, 'statusPages.create');
|
|
169
|
+
return fetchSingle(this.client, 'POST', BASE, StatusPageDtoSchema, body);
|
|
170
|
+
}
|
|
171
|
+
/** Update a status page. */
|
|
172
|
+
async update(id, body) {
|
|
173
|
+
validateRequest(UpdateStatusPageRequestSchema, body, 'statusPages.update');
|
|
174
|
+
return fetchSingle(this.client, 'PUT', `${BASE}/${id}`, StatusPageDtoSchema, body);
|
|
175
|
+
}
|
|
176
|
+
/** Delete a status page. */
|
|
177
|
+
async delete(id) {
|
|
178
|
+
return fetchVoid(this.client, `${BASE}/${id}`);
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Batch-reorder the page layout: top-level sections (groups + ungrouped
|
|
182
|
+
* components) and, optionally, within-group component ordering. Returns
|
|
183
|
+
* 204 No Content on success.
|
|
184
|
+
*/
|
|
185
|
+
async reorderLayout(id, body) {
|
|
186
|
+
validateRequest(ReorderPageLayoutRequestSchema, body, 'statusPages.reorderLayout');
|
|
187
|
+
await apiPut(this.client, `${BASE}/${id}/layout/reorder`, body);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=status-pages.js.map
|