checkly 9.3.0 → 9.4.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/ai-context/skills-command/references/configure-supporting-constructs.md +3 -0
- package/dist/commands/deploy.js +3 -2
- package/dist/commands/deploy.js.map +1 -1
- package/dist/constructs/agentic-check.d.ts +70 -0
- package/dist/constructs/api-check-bundle.d.ts +84 -0
- package/dist/constructs/api-check.d.ts +76 -0
- package/dist/constructs/browser-check-bundle.d.ts +78 -0
- package/dist/constructs/browser-check-codegen.js +3 -1
- package/dist/constructs/browser-check-codegen.js.map +1 -1
- package/dist/constructs/browser-check.d.ts +73 -3
- package/dist/constructs/browser-check.js +2 -2
- package/dist/constructs/browser-check.js.map +1 -1
- package/dist/constructs/check-codegen.d.ts +7 -1
- package/dist/constructs/check-codegen.js +10 -2
- package/dist/constructs/check-codegen.js.map +1 -1
- package/dist/constructs/check.d.ts +149 -0
- package/dist/constructs/check.js +29 -0
- package/dist/constructs/check.js.map +1 -1
- package/dist/constructs/dns-monitor.d.ts +68 -0
- package/dist/constructs/grpc-monitor.d.ts +68 -0
- package/dist/constructs/icmp-monitor.d.ts +68 -0
- package/dist/constructs/internal/status-page-v3-component-configuration.d.ts +10 -0
- package/dist/constructs/internal/status-page-v3-component-configuration.js +13 -0
- package/dist/constructs/internal/status-page-v3-component-configuration.js.map +1 -0
- package/dist/constructs/monitor.d.ts +60 -0
- package/dist/constructs/multi-step-check-bundle.d.ts +74 -0
- package/dist/constructs/multi-step-check-codegen.js +3 -1
- package/dist/constructs/multi-step-check-codegen.js.map +1 -1
- package/dist/constructs/multi-step-check.d.ts +71 -3
- package/dist/constructs/multi-step-check.js +2 -2
- package/dist/constructs/multi-step-check.js.map +1 -1
- package/dist/constructs/playwright-check-bundle.d.ts +84 -0
- package/dist/constructs/playwright-check.d.ts +70 -0
- package/dist/constructs/project-bundle.d.ts +20 -1
- package/dist/constructs/project-bundle.js +51 -22
- package/dist/constructs/project-bundle.js.map +1 -1
- package/dist/constructs/ssl-monitor.d.ts +96 -0
- package/dist/constructs/status-page-v3-codegen.d.ts +1 -0
- package/dist/constructs/status-page-v3-codegen.js +3 -0
- package/dist/constructs/status-page-v3-codegen.js.map +1 -1
- package/dist/constructs/status-page-v3-component-codegen.d.ts +1 -0
- package/dist/constructs/status-page-v3-component-codegen.js +12 -0
- package/dist/constructs/status-page-v3-component-codegen.js.map +1 -1
- package/dist/constructs/status-page-v3-component.d.ts +43 -6
- package/dist/constructs/status-page-v3-component.js +38 -0
- package/dist/constructs/status-page-v3-component.js.map +1 -1
- package/dist/constructs/status-page-v3.d.ts +5 -0
- package/dist/constructs/status-page-v3.js +3 -0
- package/dist/constructs/status-page-v3.js.map +1 -1
- package/dist/constructs/tcp-monitor.d.ts +68 -0
- package/dist/constructs/traceroute-monitor.d.ts +68 -0
- package/dist/constructs/url-monitor.d.ts +82 -0
- package/dist/rest/projects.d.ts +15 -1
- package/dist/rest/projects.js.map +1 -1
- package/dist/services/check-parser/lockfile-pruner.js +7 -1
- package/dist/services/check-parser/lockfile-pruner.js.map +1 -1
- package/dist/services/check-parser/package-files/lockfile-package-version.d.ts +3 -0
- package/dist/services/check-parser/package-files/lockfile-package-version.js +5 -1
- package/dist/services/check-parser/package-files/lockfile-package-version.js.map +1 -1
- package/dist/services/check-parser/patched-dependencies.d.ts +17 -3
- package/dist/services/check-parser/patched-dependencies.js +30 -5
- package/dist/services/check-parser/patched-dependencies.js.map +1 -1
- package/dist/services/checkly-config-loader.js +15 -1
- package/dist/services/checkly-config-loader.js.map +1 -1
- package/dist/services/embedded-packages/lockfile-packages.js +4 -1
- package/dist/services/embedded-packages/lockfile-packages.js.map +1 -1
- package/dist/services/pnpm-lockfile-documents.d.ts +50 -0
- package/dist/services/pnpm-lockfile-documents.js +42 -0
- package/dist/services/pnpm-lockfile-documents.js.map +1 -0
- package/dist/services/util.d.ts +13 -0
- package/dist/services/util.js +25 -0
- package/dist/services/util.js.map +1 -1
- package/oclif.manifest.json +1 -1
- package/package.json +10 -10
|
@@ -1,3 +1,26 @@
|
|
|
1
|
+
import * as path from 'node:path';
|
|
2
|
+
/**
|
|
3
|
+
* The construct's declaring file relative to the repository root, with posix
|
|
4
|
+
* separators; `undefined` when either path is unknown or the file lives
|
|
5
|
+
* outside the repository.
|
|
6
|
+
*
|
|
7
|
+
* @param platformPath this is for testing purposes only so we can exercise
|
|
8
|
+
* Windows path handling on Linux / Darwin
|
|
9
|
+
*/
|
|
10
|
+
export function resolveSourceFile(repoRoot, checkFileAbsolutePath, platformPath = path) {
|
|
11
|
+
if (!repoRoot || !checkFileAbsolutePath) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
const relativePath = platformPath.relative(repoRoot, checkFileAbsolutePath);
|
|
15
|
+
// An empty result means the file is the root itself; a leading `..`
|
|
16
|
+
// segment or an absolute result (a different Windows drive) means it lives
|
|
17
|
+
// outside the repository. Neither can be opened as a file in the repository.
|
|
18
|
+
const escapesRoot = relativePath === '..' || relativePath.startsWith(`..${platformPath.sep}`);
|
|
19
|
+
if (!relativePath || escapesRoot || platformPath.isAbsolute(relativePath)) {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
return relativePath.split(platformPath.sep).join(path.posix.sep);
|
|
23
|
+
}
|
|
1
24
|
export class ProjectBundle {
|
|
2
25
|
project;
|
|
3
26
|
data;
|
|
@@ -5,39 +28,45 @@ export class ProjectBundle {
|
|
|
5
28
|
this.project = project;
|
|
6
29
|
this.data = data;
|
|
7
30
|
}
|
|
8
|
-
synthesizeRecord(record) {
|
|
31
|
+
synthesizeRecord(record, { repoRoot }) {
|
|
9
32
|
return Object.entries(record)
|
|
10
|
-
.map(([key, { construct, bundle }]) =>
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
33
|
+
.map(([key, { construct, bundle }]) => {
|
|
34
|
+
const sourceFile = resolveSourceFile(repoRoot, construct.checkFileAbsolutePath);
|
|
35
|
+
return {
|
|
36
|
+
logicalId: key,
|
|
37
|
+
type: construct.type,
|
|
38
|
+
physicalId: construct.physicalId,
|
|
39
|
+
member: construct.member,
|
|
40
|
+
payload: bundle.synthesize(),
|
|
41
|
+
// Only present when known, so older backends see an unchanged
|
|
42
|
+
// envelope.
|
|
43
|
+
...(sourceFile !== undefined ? { sourceFile } : {}),
|
|
44
|
+
};
|
|
45
|
+
});
|
|
17
46
|
}
|
|
18
|
-
synthesize() {
|
|
47
|
+
synthesize(options = {}) {
|
|
19
48
|
return {
|
|
20
49
|
...this.project.synthesize(),
|
|
21
50
|
resources: [
|
|
22
51
|
// The order in which resources are defined here is important. If
|
|
23
52
|
// resource A may include references to resource B, it should occur
|
|
24
53
|
// later than resource B.
|
|
25
|
-
...this.synthesizeRecord(this.data['status-page-service']),
|
|
26
|
-
...this.synthesizeRecord(this.data['status-page']),
|
|
54
|
+
...this.synthesizeRecord(this.data['status-page-service'], options),
|
|
55
|
+
...this.synthesizeRecord(this.data['status-page'], options),
|
|
27
56
|
// v3: components reference their page (and parent group), rules
|
|
28
57
|
// reference the page and components. Declaration order keeps parents
|
|
29
58
|
// before children within components.
|
|
30
|
-
...this.synthesizeRecord(this.data['status-page-component']),
|
|
31
|
-
...this.synthesizeRecord(this.data['status-page-automation-rule']),
|
|
32
|
-
...this.synthesizeRecord(this.data['check-group']),
|
|
33
|
-
...this.synthesizeRecord(this.data.check),
|
|
34
|
-
...this.synthesizeRecord(this.data['alert-channel']),
|
|
35
|
-
...this.synthesizeRecord(this.data['alert-channel-subscription']),
|
|
36
|
-
...this.synthesizeRecord(this.data['maintenance-window']),
|
|
37
|
-
...this.synthesizeRecord(this.data['private-location']),
|
|
38
|
-
...this.synthesizeRecord(this.data['private-location-check-assignment']),
|
|
39
|
-
...this.synthesizeRecord(this.data['private-location-group-assignment']),
|
|
40
|
-
...this.synthesizeRecord(this.data.dashboard),
|
|
59
|
+
...this.synthesizeRecord(this.data['status-page-component'], options),
|
|
60
|
+
...this.synthesizeRecord(this.data['status-page-automation-rule'], options),
|
|
61
|
+
...this.synthesizeRecord(this.data['check-group'], options),
|
|
62
|
+
...this.synthesizeRecord(this.data.check, options),
|
|
63
|
+
...this.synthesizeRecord(this.data['alert-channel'], options),
|
|
64
|
+
...this.synthesizeRecord(this.data['alert-channel-subscription'], options),
|
|
65
|
+
...this.synthesizeRecord(this.data['maintenance-window'], options),
|
|
66
|
+
...this.synthesizeRecord(this.data['private-location'], options),
|
|
67
|
+
...this.synthesizeRecord(this.data['private-location-check-assignment'], options),
|
|
68
|
+
...this.synthesizeRecord(this.data['private-location-group-assignment'], options),
|
|
69
|
+
...this.synthesizeRecord(this.data.dashboard, options),
|
|
41
70
|
],
|
|
42
71
|
};
|
|
43
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-bundle.js","sourceRoot":"","sources":["../../src/constructs/project-bundle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"project-bundle.js","sourceRoot":"","sources":["../../src/constructs/project-bundle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAsBjC;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAA4B,EAC5B,qBAAyC,EACzC,eAAkC,IAAI;IAEtC,IAAI,CAAC,QAAQ,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACxC,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAA;IAC3E,oEAAoE;IACpE,2EAA2E;IAC3E,6EAA6E;IAC7E,MAAM,WAAW,GAAG,YAAY,KAAK,IAAI,IAAI,YAAY,CAAC,UAAU,CAAC,KAAK,YAAY,CAAC,GAAG,EAAE,CAAC,CAAA;IAC7F,IAAI,CAAC,YAAY,IAAI,WAAW,IAAI,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1E,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AAClE,CAAC;AAED,MAAM,OAAO,aAAa;IACxB,OAAO,CAAS;IAChB,IAAI,CAAmB;IAEvB,YAAa,OAAgB,EAAE,IAAuB;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAEO,gBAAgB,CACtB,MAAqD,EACrD,EAAE,QAAQ,EAA4B;QAEtC,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aAC1B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,qBAAqB,CAAC,CAAA;YAC/E,OAAO;gBACL,SAAS,EAAE,GAAG;gBACd,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,MAAM,EAAE,SAAS,CAAC,MAAM;gBACxB,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE;gBAC5B,8DAA8D;gBAC9D,YAAY;gBACZ,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpD,CAAA;QACH,CAAC,CAAC,CAAA;IACN,CAAC;IAED,UAAU,CAAE,UAAoC,EAAE;QAChD,OAAO;YACL,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YAC5B,SAAS,EAAE;gBACT,iEAAiE;gBACjE,mEAAmE;gBACnE,yBAAyB;gBACzB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;gBACnE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;gBAC3D,gEAAgE;gBAChE,qEAAqE;gBACrE,qCAAqC;gBACrC,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;gBACrE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,EAAE,OAAO,CAAC;gBAC3E,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;gBAC3D,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC;gBAClD,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;gBAC7D,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,EAAE,OAAO,CAAC;gBAC1E,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;gBAClE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;gBAChE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,EAAE,OAAO,CAAC;gBACjF,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,EAAE,OAAO,CAAC;gBACjF,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC;aACvD;SACF,CAAA;IACH,CAAC;CACF"}
|
|
@@ -83,6 +83,7 @@ export declare class SslMonitor extends Monitor {
|
|
|
83
83
|
description: string;
|
|
84
84
|
notifySubscribers: boolean;
|
|
85
85
|
} | undefined;
|
|
86
|
+
aiAutoRepairEnabled?: undefined;
|
|
86
87
|
intent?: undefined;
|
|
87
88
|
description?: string | undefined;
|
|
88
89
|
name: string;
|
|
@@ -126,6 +127,101 @@ export declare class SslMonitor extends Monitor {
|
|
|
126
127
|
description: string;
|
|
127
128
|
notifySubscribers: boolean;
|
|
128
129
|
} | undefined;
|
|
130
|
+
aiAutoRepairEnabled: boolean | null;
|
|
131
|
+
intent?: undefined;
|
|
132
|
+
description?: string | undefined;
|
|
133
|
+
name: string;
|
|
134
|
+
} | {
|
|
135
|
+
checkType: string;
|
|
136
|
+
request: {
|
|
137
|
+
sslConfig: {
|
|
138
|
+
hostname: string;
|
|
139
|
+
port: number | undefined;
|
|
140
|
+
ipFamily: import("./ip.js").IPFamily | undefined;
|
|
141
|
+
serverName: string | undefined;
|
|
142
|
+
skipChainValidation: boolean | undefined;
|
|
143
|
+
handshakeTimeoutMs: number | undefined;
|
|
144
|
+
alertDaysBeforeExpiry: number | undefined;
|
|
145
|
+
clientCertificateMode: import("./ssl-request.js").SslClientCertificateMode | undefined;
|
|
146
|
+
securityBaseline: import("./ssl-request.js").SecurityBaseline | undefined;
|
|
147
|
+
};
|
|
148
|
+
sslClientCertificateId: string | undefined;
|
|
149
|
+
assertions: import("./ssl-assertion.js").SslAssertion[] | undefined;
|
|
150
|
+
};
|
|
151
|
+
degradedResponseTime: number | undefined;
|
|
152
|
+
maxResponseTime: number | undefined;
|
|
153
|
+
doubleCheck: boolean;
|
|
154
|
+
activated: boolean | undefined;
|
|
155
|
+
muted: boolean | undefined;
|
|
156
|
+
shouldFail: boolean | undefined;
|
|
157
|
+
locations: (keyof import("../index.js").Region)[] | undefined;
|
|
158
|
+
privateLocations: undefined;
|
|
159
|
+
tags: string[] | undefined;
|
|
160
|
+
frequency: number | undefined;
|
|
161
|
+
frequencyOffset: number | undefined;
|
|
162
|
+
groupId: import("./ref.js").Ref | null;
|
|
163
|
+
retryStrategy: import("./retry-strategy.js").LinearRetryStrategy | import("./retry-strategy.js").ExponentialRetryStrategy | import("./retry-strategy.js").FixedRetryStrategy | import("./retry-strategy.js").SingleRetryRetryStrategy | null | undefined;
|
|
164
|
+
alertSettings: import("./alert-escalation-policy.js").AlertEscalation | undefined;
|
|
165
|
+
useGlobalAlertSettings: boolean | undefined;
|
|
166
|
+
runParallel: boolean | undefined;
|
|
167
|
+
triggerIncident: {
|
|
168
|
+
serviceId: import("./ref.js").Ref;
|
|
169
|
+
severity: "MINOR" | "MEDIUM" | "MAJOR" | "CRITICAL";
|
|
170
|
+
name: string;
|
|
171
|
+
description: string;
|
|
172
|
+
notifySubscribers: boolean;
|
|
173
|
+
} | undefined;
|
|
174
|
+
aiAutoRepairEnabled?: undefined;
|
|
175
|
+
intent: {
|
|
176
|
+
goal: string;
|
|
177
|
+
constraints: {
|
|
178
|
+
type: import("./check.js").CheckIntentConstraintType;
|
|
179
|
+
statement: string;
|
|
180
|
+
}[];
|
|
181
|
+
} | null;
|
|
182
|
+
description?: string | undefined;
|
|
183
|
+
name: string;
|
|
184
|
+
} | {
|
|
185
|
+
checkType: string;
|
|
186
|
+
request: {
|
|
187
|
+
sslConfig: {
|
|
188
|
+
hostname: string;
|
|
189
|
+
port: number | undefined;
|
|
190
|
+
ipFamily: import("./ip.js").IPFamily | undefined;
|
|
191
|
+
serverName: string | undefined;
|
|
192
|
+
skipChainValidation: boolean | undefined;
|
|
193
|
+
handshakeTimeoutMs: number | undefined;
|
|
194
|
+
alertDaysBeforeExpiry: number | undefined;
|
|
195
|
+
clientCertificateMode: import("./ssl-request.js").SslClientCertificateMode | undefined;
|
|
196
|
+
securityBaseline: import("./ssl-request.js").SecurityBaseline | undefined;
|
|
197
|
+
};
|
|
198
|
+
sslClientCertificateId: string | undefined;
|
|
199
|
+
assertions: import("./ssl-assertion.js").SslAssertion[] | undefined;
|
|
200
|
+
};
|
|
201
|
+
degradedResponseTime: number | undefined;
|
|
202
|
+
maxResponseTime: number | undefined;
|
|
203
|
+
doubleCheck: boolean;
|
|
204
|
+
activated: boolean | undefined;
|
|
205
|
+
muted: boolean | undefined;
|
|
206
|
+
shouldFail: boolean | undefined;
|
|
207
|
+
locations: (keyof import("../index.js").Region)[] | undefined;
|
|
208
|
+
privateLocations: undefined;
|
|
209
|
+
tags: string[] | undefined;
|
|
210
|
+
frequency: number | undefined;
|
|
211
|
+
frequencyOffset: number | undefined;
|
|
212
|
+
groupId: import("./ref.js").Ref | null;
|
|
213
|
+
retryStrategy: import("./retry-strategy.js").LinearRetryStrategy | import("./retry-strategy.js").ExponentialRetryStrategy | import("./retry-strategy.js").FixedRetryStrategy | import("./retry-strategy.js").SingleRetryRetryStrategy | null | undefined;
|
|
214
|
+
alertSettings: import("./alert-escalation-policy.js").AlertEscalation | undefined;
|
|
215
|
+
useGlobalAlertSettings: boolean | undefined;
|
|
216
|
+
runParallel: boolean | undefined;
|
|
217
|
+
triggerIncident: {
|
|
218
|
+
serviceId: import("./ref.js").Ref;
|
|
219
|
+
severity: "MINOR" | "MEDIUM" | "MAJOR" | "CRITICAL";
|
|
220
|
+
name: string;
|
|
221
|
+
description: string;
|
|
222
|
+
notifySubscribers: boolean;
|
|
223
|
+
} | undefined;
|
|
224
|
+
aiAutoRepairEnabled: boolean | null;
|
|
129
225
|
intent: {
|
|
130
226
|
goal: string;
|
|
131
227
|
constraints: {
|
|
@@ -15,6 +15,7 @@ export interface StatusPageV3Resource {
|
|
|
15
15
|
defaultTheme?: StatusPageTheme | null;
|
|
16
16
|
privacyPolicyLink?: string | null;
|
|
17
17
|
termsOfServiceLink?: string | null;
|
|
18
|
+
supportLink?: string | null;
|
|
18
19
|
footerText?: string | null;
|
|
19
20
|
googleAnalyticsTag?: string | null;
|
|
20
21
|
allowIndexing?: boolean | null;
|
|
@@ -80,6 +80,9 @@ export class StatusPageV3Codegen extends Codegen {
|
|
|
80
80
|
if (resource.termsOfServiceLink) {
|
|
81
81
|
builder.string('termsOfServiceLink', resource.termsOfServiceLink);
|
|
82
82
|
}
|
|
83
|
+
if (resource.supportLink) {
|
|
84
|
+
builder.string('supportLink', resource.supportLink);
|
|
85
|
+
}
|
|
83
86
|
if (resource.footerText) {
|
|
84
87
|
builder.string('footerText', resource.footerText);
|
|
85
88
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-page-v3-codegen.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAW,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAiB,KAAK,EAAS,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"status-page-v3-codegen.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3-codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ export interface StatusPageV3ComponentResource {
|
|
|
10
10
|
description?: string | null;
|
|
11
11
|
hidden?: boolean | null;
|
|
12
12
|
displayOrder: number;
|
|
13
|
+
configuration?: Record<string, boolean> | null;
|
|
13
14
|
}
|
|
14
15
|
export declare function valueForStatusPageV3ComponentFromId(genfile: GeneratedFile, physicalId: string): Value;
|
|
15
16
|
/**
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import { Codegen } from './internal/codegen/index.js';
|
|
2
2
|
import { decl, expr, ident } from '../sourcegen/index.js';
|
|
3
|
+
import { defaultConfigurationByType } from './internal/status-page-v3-component-configuration.js';
|
|
3
4
|
import { valueForStatusPageV3Ref } from './status-page-v3-codegen.js';
|
|
5
|
+
// The configuration's properties are top-level props on the construct. The
|
|
6
|
+
// backend fills the defaults when one is omitted, so only values that differ
|
|
7
|
+
// are worth generating.
|
|
8
|
+
function nonDefaultConfiguration(resource) {
|
|
9
|
+
const defaults = defaultConfigurationByType[resource.type] ?? {};
|
|
10
|
+
return Object.entries(resource.configuration ?? {})
|
|
11
|
+
.filter((entry) => typeof entry[1] === 'boolean' && defaults[entry[0]] !== entry[1]);
|
|
12
|
+
}
|
|
4
13
|
const construct = 'StatusPageV3Component';
|
|
5
14
|
export function valueForStatusPageV3ComponentFromId(genfile, physicalId) {
|
|
6
15
|
genfile.namedImport(construct, 'checkly/constructs');
|
|
@@ -61,6 +70,9 @@ export class StatusPageV3ComponentCodegen extends Codegen {
|
|
|
61
70
|
builder.boolean('hidden', true);
|
|
62
71
|
}
|
|
63
72
|
builder.number('displayOrder', resource.displayOrder);
|
|
73
|
+
for (const [key, value] of nonDefaultConfiguration(resource)) {
|
|
74
|
+
builder.boolean(key, value);
|
|
75
|
+
}
|
|
64
76
|
if (resource.parentId) {
|
|
65
77
|
builder.value('parent', valueForStatusPageV3ComponentRef(file, resource.parentId, context));
|
|
66
78
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-page-v3-component-codegen.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3-component-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAW,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAiB,KAAK,EAAS,MAAM,uBAAuB,CAAA;AAE/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"status-page-v3-component-codegen.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3-component-codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,17 +2,12 @@ import { Construct } from './construct.js';
|
|
|
2
2
|
import { Diagnostics } from './diagnostics.js';
|
|
3
3
|
import { StatusPageV3, StatusPageV3Ref } from './status-page-v3.js';
|
|
4
4
|
export type StatusPageV3ComponentType = 'SERVICE' | 'GROUP';
|
|
5
|
-
|
|
5
|
+
interface StatusPageV3ComponentBaseProps {
|
|
6
6
|
/**
|
|
7
7
|
* The v3 status page this component belongs to. A component belongs to
|
|
8
8
|
* exactly one page and cannot be moved to another one later.
|
|
9
9
|
*/
|
|
10
10
|
statusPage: StatusPageV3 | StatusPageV3Ref;
|
|
11
|
-
/**
|
|
12
|
-
* `SERVICE` (a monitored thing with its own status) or `GROUP` (a
|
|
13
|
-
* container for other components). Defaults to `SERVICE`.
|
|
14
|
-
*/
|
|
15
|
-
type?: StatusPageV3ComponentType;
|
|
16
11
|
/**
|
|
17
12
|
* The name shown on the status page.
|
|
18
13
|
*/
|
|
@@ -36,6 +31,42 @@ export interface StatusPageV3ComponentProps {
|
|
|
36
31
|
*/
|
|
37
32
|
parent?: StatusPageV3Component | StatusPageV3ComponentRef;
|
|
38
33
|
}
|
|
34
|
+
export interface StatusPageV3ServiceComponentProps extends StatusPageV3ComponentBaseProps {
|
|
35
|
+
/**
|
|
36
|
+
* `SERVICE`: a monitored thing with its own status. This is the default.
|
|
37
|
+
*/
|
|
38
|
+
type?: 'SERVICE';
|
|
39
|
+
/**
|
|
40
|
+
* Show the historical status (the uptime bar) of the component on the
|
|
41
|
+
* status page. Defaults to true.
|
|
42
|
+
*/
|
|
43
|
+
showHistoricalData?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Only available on a `GROUP` component.
|
|
46
|
+
*/
|
|
47
|
+
expandedByDefault?: never;
|
|
48
|
+
}
|
|
49
|
+
export interface StatusPageV3GroupComponentProps extends StatusPageV3ComponentBaseProps {
|
|
50
|
+
/**
|
|
51
|
+
* `GROUP`: a container for other components.
|
|
52
|
+
*/
|
|
53
|
+
type: 'GROUP';
|
|
54
|
+
/**
|
|
55
|
+
* Render the group expanded when the status page loads. Defaults to false.
|
|
56
|
+
*/
|
|
57
|
+
expandedByDefault?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Show the historical status (the uptime bar) of the group on the status
|
|
60
|
+
* page. Defaults to true.
|
|
61
|
+
*/
|
|
62
|
+
showHistoricalData?: boolean;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Discriminated on `type`: `expandedByDefault` is only available with
|
|
66
|
+
* `type: 'GROUP'`. The type-specific settings are sent to the backend as the
|
|
67
|
+
* component's `configuration`; an omitted setting takes the backend default.
|
|
68
|
+
*/
|
|
69
|
+
export type StatusPageV3ComponentProps = StatusPageV3ServiceComponentProps | StatusPageV3GroupComponentProps;
|
|
39
70
|
/**
|
|
40
71
|
* Creates a reference to an existing v3 Status Page Component.
|
|
41
72
|
*
|
|
@@ -58,6 +89,8 @@ export declare class StatusPageV3Component extends Construct {
|
|
|
58
89
|
hidden?: boolean;
|
|
59
90
|
displayOrder: number;
|
|
60
91
|
parent?: StatusPageV3Component | StatusPageV3ComponentRef;
|
|
92
|
+
showHistoricalData?: boolean;
|
|
93
|
+
expandedByDefault?: boolean;
|
|
61
94
|
static readonly __checklyType = "status-page-component";
|
|
62
95
|
/**
|
|
63
96
|
* Constructs the Status Page Component instance
|
|
@@ -74,5 +107,9 @@ export declare class StatusPageV3Component extends Construct {
|
|
|
74
107
|
*/
|
|
75
108
|
static fromId(id: string): StatusPageV3ComponentRef;
|
|
76
109
|
validate(diagnostics: Diagnostics): Promise<void>;
|
|
110
|
+
private settings;
|
|
111
|
+
private configuration;
|
|
112
|
+
private validateSettings;
|
|
77
113
|
synthesize(): any | null;
|
|
78
114
|
}
|
|
115
|
+
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Construct } from './construct.js';
|
|
2
2
|
import { InvalidPropertyValueDiagnostic } from './construct-diagnostics.js';
|
|
3
3
|
import { validatePhysicalIdIsUuid } from './internal/common-diagnostics.js';
|
|
4
|
+
import { defaultConfigurationByType } from './internal/status-page-v3-component-configuration.js';
|
|
4
5
|
import { Ref } from './ref.js';
|
|
5
6
|
import { Session } from './session.js';
|
|
6
7
|
import { StatusPageV3, StatusPageV3Ref } from './status-page-v3.js';
|
|
@@ -37,6 +38,8 @@ export class StatusPageV3Component extends Construct {
|
|
|
37
38
|
hidden;
|
|
38
39
|
displayOrder;
|
|
39
40
|
parent;
|
|
41
|
+
showHistoricalData;
|
|
42
|
+
expandedByDefault;
|
|
40
43
|
static __checklyType = 'status-page-component';
|
|
41
44
|
/**
|
|
42
45
|
* Constructs the Status Page Component instance
|
|
@@ -55,6 +58,10 @@ export class StatusPageV3Component extends Construct {
|
|
|
55
58
|
this.hidden = props.hidden;
|
|
56
59
|
this.displayOrder = props.displayOrder;
|
|
57
60
|
this.parent = props.parent;
|
|
61
|
+
this.showHistoricalData = props.showHistoricalData;
|
|
62
|
+
// Only a GROUP prop; read it regardless so validate() can report it on
|
|
63
|
+
// a SERVICE for loosely typed callers.
|
|
64
|
+
this.expandedByDefault = 'expandedByDefault' in props ? props.expandedByDefault : undefined;
|
|
58
65
|
Session.registerConstruct(this);
|
|
59
66
|
}
|
|
60
67
|
describe() {
|
|
@@ -80,6 +87,7 @@ export class StatusPageV3Component extends Construct {
|
|
|
80
87
|
if (!Number.isInteger(this.displayOrder)) {
|
|
81
88
|
diagnostics.add(new InvalidPropertyValueDiagnostic('displayOrder', new Error('Value must be an integer.')));
|
|
82
89
|
}
|
|
90
|
+
this.validateSettings(diagnostics);
|
|
83
91
|
// A referenced parent (fromId) can only be checked on the backend.
|
|
84
92
|
if (this.parent instanceof StatusPageV3Component) {
|
|
85
93
|
if (this.parent.componentType !== 'GROUP') {
|
|
@@ -90,6 +98,35 @@ export class StatusPageV3Component extends Construct {
|
|
|
90
98
|
}
|
|
91
99
|
}
|
|
92
100
|
}
|
|
101
|
+
// The backend `configuration` of this component: every type-specific
|
|
102
|
+
// setting that is set, keyed as the API expects. Unset ones are left out so
|
|
103
|
+
// the backend fills its defaults; nothing set means no configuration.
|
|
104
|
+
settings() {
|
|
105
|
+
return { showHistoricalData: this.showHistoricalData, expandedByDefault: this.expandedByDefault };
|
|
106
|
+
}
|
|
107
|
+
configuration() {
|
|
108
|
+
const allowedKeys = Object.keys(defaultConfigurationByType[this.componentType] ?? {});
|
|
109
|
+
const entries = Object.entries(this.settings())
|
|
110
|
+
.filter((entry) => allowedKeys.includes(entry[0]) && entry[1] !== undefined);
|
|
111
|
+
return entries.length > 0 ? Object.fromEntries(entries) : undefined;
|
|
112
|
+
}
|
|
113
|
+
// The props type already pairs each setting with `type`; this repeats the
|
|
114
|
+
// check at runtime for JavaScript users and loosely typed objects, matching
|
|
115
|
+
// what the backend rejects.
|
|
116
|
+
validateSettings(diagnostics) {
|
|
117
|
+
const allowedKeys = Object.keys(defaultConfigurationByType[this.componentType] ?? {});
|
|
118
|
+
for (const [key, value] of Object.entries(this.settings())) {
|
|
119
|
+
if (value === undefined) {
|
|
120
|
+
continue;
|
|
121
|
+
}
|
|
122
|
+
if (!allowedKeys.includes(key)) {
|
|
123
|
+
diagnostics.add(new InvalidPropertyValueDiagnostic(key, new Error(`Not supported for a ${this.componentType} component.`)));
|
|
124
|
+
}
|
|
125
|
+
else if (typeof value !== 'boolean') {
|
|
126
|
+
diagnostics.add(new InvalidPropertyValueDiagnostic(key, new Error('Value must be a boolean.')));
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
93
130
|
synthesize() {
|
|
94
131
|
return {
|
|
95
132
|
statusPageId: Ref.from(this.statusPage.logicalId),
|
|
@@ -99,6 +136,7 @@ export class StatusPageV3Component extends Construct {
|
|
|
99
136
|
description: this.description,
|
|
100
137
|
hidden: this.hidden,
|
|
101
138
|
displayOrder: this.displayOrder,
|
|
139
|
+
configuration: this.configuration(),
|
|
102
140
|
};
|
|
103
141
|
}
|
|
104
142
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-page-v3-component.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAA;AAE3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAA;AAC3E,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"status-page-v3-component.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3-component.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,10 @@ export interface StatusPageV3Props {
|
|
|
46
46
|
* A link to your terms of service, shown in the page footer.
|
|
47
47
|
*/
|
|
48
48
|
termsOfServiceLink?: string;
|
|
49
|
+
/**
|
|
50
|
+
* A link to your support channel, shown in the page footer.
|
|
51
|
+
*/
|
|
52
|
+
supportLink?: string;
|
|
49
53
|
/**
|
|
50
54
|
* Free-form footer text.
|
|
51
55
|
*/
|
|
@@ -96,6 +100,7 @@ export declare class StatusPageV3 extends Construct {
|
|
|
96
100
|
defaultTheme?: StatusPageTheme;
|
|
97
101
|
privacyPolicyLink?: string;
|
|
98
102
|
termsOfServiceLink?: string;
|
|
103
|
+
supportLink?: string;
|
|
99
104
|
footerText?: string;
|
|
100
105
|
googleAnalyticsTag?: string;
|
|
101
106
|
allowIndexing?: boolean;
|
|
@@ -48,6 +48,7 @@ export class StatusPageV3 extends Construct {
|
|
|
48
48
|
defaultTheme;
|
|
49
49
|
privacyPolicyLink;
|
|
50
50
|
termsOfServiceLink;
|
|
51
|
+
supportLink;
|
|
51
52
|
footerText;
|
|
52
53
|
googleAnalyticsTag;
|
|
53
54
|
allowIndexing;
|
|
@@ -75,6 +76,7 @@ export class StatusPageV3 extends Construct {
|
|
|
75
76
|
this.defaultTheme = props.defaultTheme;
|
|
76
77
|
this.privacyPolicyLink = props.privacyPolicyLink;
|
|
77
78
|
this.termsOfServiceLink = props.termsOfServiceLink;
|
|
79
|
+
this.supportLink = props.supportLink;
|
|
78
80
|
this.footerText = props.footerText;
|
|
79
81
|
this.googleAnalyticsTag = props.googleAnalyticsTag;
|
|
80
82
|
this.allowIndexing = props.allowIndexing;
|
|
@@ -102,6 +104,7 @@ export class StatusPageV3 extends Construct {
|
|
|
102
104
|
defaultTheme: this.defaultTheme,
|
|
103
105
|
privacyPolicyLink: this.privacyPolicyLink,
|
|
104
106
|
termsOfServiceLink: this.termsOfServiceLink,
|
|
107
|
+
supportLink: this.supportLink,
|
|
105
108
|
footerText: this.footerText,
|
|
106
109
|
googleAnalyticsTag: this.googleAnalyticsTag,
|
|
107
110
|
allowIndexing: this.allowIndexing,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-page-v3.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAA;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"status-page-v3.js","sourceRoot":"","sources":["../../src/constructs/status-page-v3.ts"],"names":[],"mappings":"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"}
|
|
@@ -151,6 +151,7 @@ export declare class TcpMonitor extends Monitor {
|
|
|
151
151
|
description: string;
|
|
152
152
|
notifySubscribers: boolean;
|
|
153
153
|
} | undefined;
|
|
154
|
+
aiAutoRepairEnabled?: undefined;
|
|
154
155
|
intent?: undefined;
|
|
155
156
|
description?: string | undefined;
|
|
156
157
|
name: string;
|
|
@@ -180,6 +181,73 @@ export declare class TcpMonitor extends Monitor {
|
|
|
180
181
|
description: string;
|
|
181
182
|
notifySubscribers: boolean;
|
|
182
183
|
} | undefined;
|
|
184
|
+
aiAutoRepairEnabled: boolean | null;
|
|
185
|
+
intent?: undefined;
|
|
186
|
+
description?: string | undefined;
|
|
187
|
+
name: string;
|
|
188
|
+
} | {
|
|
189
|
+
checkType: string;
|
|
190
|
+
request: TcpRequest;
|
|
191
|
+
degradedResponseTime: number | undefined;
|
|
192
|
+
maxResponseTime: number | undefined;
|
|
193
|
+
doubleCheck: boolean;
|
|
194
|
+
activated: boolean | undefined;
|
|
195
|
+
muted: boolean | undefined;
|
|
196
|
+
shouldFail: boolean | undefined;
|
|
197
|
+
locations: (keyof import("../index.js").Region)[] | undefined;
|
|
198
|
+
privateLocations: undefined;
|
|
199
|
+
tags: string[] | undefined;
|
|
200
|
+
frequency: number | undefined;
|
|
201
|
+
frequencyOffset: number | undefined;
|
|
202
|
+
groupId: import("./ref.js").Ref | null;
|
|
203
|
+
retryStrategy: import("./retry-strategy.js").LinearRetryStrategy | import("./retry-strategy.js").ExponentialRetryStrategy | import("./retry-strategy.js").FixedRetryStrategy | import("./retry-strategy.js").SingleRetryRetryStrategy | null | undefined;
|
|
204
|
+
alertSettings: import("./alert-escalation-policy.js").AlertEscalation | undefined;
|
|
205
|
+
useGlobalAlertSettings: boolean | undefined;
|
|
206
|
+
runParallel: boolean | undefined;
|
|
207
|
+
triggerIncident: {
|
|
208
|
+
serviceId: import("./ref.js").Ref;
|
|
209
|
+
severity: "MINOR" | "MEDIUM" | "MAJOR" | "CRITICAL";
|
|
210
|
+
name: string;
|
|
211
|
+
description: string;
|
|
212
|
+
notifySubscribers: boolean;
|
|
213
|
+
} | undefined;
|
|
214
|
+
aiAutoRepairEnabled?: undefined;
|
|
215
|
+
intent: {
|
|
216
|
+
goal: string;
|
|
217
|
+
constraints: {
|
|
218
|
+
type: import("./check.js").CheckIntentConstraintType;
|
|
219
|
+
statement: string;
|
|
220
|
+
}[];
|
|
221
|
+
} | null;
|
|
222
|
+
description?: string | undefined;
|
|
223
|
+
name: string;
|
|
224
|
+
} | {
|
|
225
|
+
checkType: string;
|
|
226
|
+
request: TcpRequest;
|
|
227
|
+
degradedResponseTime: number | undefined;
|
|
228
|
+
maxResponseTime: number | undefined;
|
|
229
|
+
doubleCheck: boolean;
|
|
230
|
+
activated: boolean | undefined;
|
|
231
|
+
muted: boolean | undefined;
|
|
232
|
+
shouldFail: boolean | undefined;
|
|
233
|
+
locations: (keyof import("../index.js").Region)[] | undefined;
|
|
234
|
+
privateLocations: undefined;
|
|
235
|
+
tags: string[] | undefined;
|
|
236
|
+
frequency: number | undefined;
|
|
237
|
+
frequencyOffset: number | undefined;
|
|
238
|
+
groupId: import("./ref.js").Ref | null;
|
|
239
|
+
retryStrategy: import("./retry-strategy.js").LinearRetryStrategy | import("./retry-strategy.js").ExponentialRetryStrategy | import("./retry-strategy.js").FixedRetryStrategy | import("./retry-strategy.js").SingleRetryRetryStrategy | null | undefined;
|
|
240
|
+
alertSettings: import("./alert-escalation-policy.js").AlertEscalation | undefined;
|
|
241
|
+
useGlobalAlertSettings: boolean | undefined;
|
|
242
|
+
runParallel: boolean | undefined;
|
|
243
|
+
triggerIncident: {
|
|
244
|
+
serviceId: import("./ref.js").Ref;
|
|
245
|
+
severity: "MINOR" | "MEDIUM" | "MAJOR" | "CRITICAL";
|
|
246
|
+
name: string;
|
|
247
|
+
description: string;
|
|
248
|
+
notifySubscribers: boolean;
|
|
249
|
+
} | undefined;
|
|
250
|
+
aiAutoRepairEnabled: boolean | null;
|
|
183
251
|
intent: {
|
|
184
252
|
goal: string;
|
|
185
253
|
constraints: {
|