@sendly/cli 3.0.1 → 3.0.3
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 +2 -3
- package/dist/commands/credits/history.js +4 -4
- package/dist/commands/keys/create.js +3 -3
- package/dist/commands/keys/revoke.js +13 -10
- package/dist/commands/send.d.ts +13 -0
- package/dist/commands/send.js +75 -0
- package/dist/commands/status.d.ts +10 -0
- package/dist/commands/status.js +112 -0
- package/dist/commands/webhooks/create.js +7 -5
- package/dist/commands/webhooks/deliveries.js +17 -15
- package/dist/commands/webhooks/get.js +17 -15
- package/dist/commands/webhooks/list.js +3 -3
- package/dist/commands/webhooks/listen.js +5 -18
- package/dist/commands/webhooks/rotate-secret.js +6 -6
- package/dist/commands/webhooks/test.js +17 -14
- package/dist/commands/webhooks/update.js +16 -11
- package/dist/commands/whoami.js +14 -10
- package/dist/hooks/command-not-found.d.ts +3 -0
- package/dist/hooks/command-not-found.js +142 -0
- package/dist/lib/api-client.js +66 -15
- package/oclif.manifest.json +173 -72
- package/package.json +4 -1
|
@@ -40,16 +40,18 @@ export default class WebhooksDeliveries extends AuthenticatedCommand {
|
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
42
|
if (deliveries.length === 0) {
|
|
43
|
-
info(flags["failed-only"]
|
|
43
|
+
info(flags["failed-only"]
|
|
44
|
+
? "No failed deliveries found"
|
|
45
|
+
: "No deliveries found");
|
|
44
46
|
return;
|
|
45
47
|
}
|
|
46
48
|
console.log();
|
|
47
49
|
console.log(colors.dim(`Showing ${deliveries.length} deliveries for webhook ${args.id}`));
|
|
48
50
|
console.log();
|
|
49
51
|
// Add computed fields for better display
|
|
50
|
-
const deliveriesWithComputed = deliveries.map(d => ({
|
|
52
|
+
const deliveriesWithComputed = deliveries.map((d) => ({
|
|
51
53
|
...d,
|
|
52
|
-
attemptDisplay: `${d.
|
|
54
|
+
attemptDisplay: `${d.attempt_number}/${d.max_attempts}`,
|
|
53
55
|
}));
|
|
54
56
|
table(deliveriesWithComputed, [
|
|
55
57
|
{
|
|
@@ -60,7 +62,7 @@ export default class WebhooksDeliveries extends AuthenticatedCommand {
|
|
|
60
62
|
},
|
|
61
63
|
{
|
|
62
64
|
header: "Event",
|
|
63
|
-
key: "
|
|
65
|
+
key: "event_type",
|
|
64
66
|
width: 15,
|
|
65
67
|
formatter: (v) => String(v).replace("message.", ""),
|
|
66
68
|
},
|
|
@@ -90,7 +92,7 @@ export default class WebhooksDeliveries extends AuthenticatedCommand {
|
|
|
90
92
|
},
|
|
91
93
|
{
|
|
92
94
|
header: "Status Code",
|
|
93
|
-
key: "
|
|
95
|
+
key: "response_status_code",
|
|
94
96
|
width: 12,
|
|
95
97
|
formatter: (v) => {
|
|
96
98
|
if (!v)
|
|
@@ -103,35 +105,35 @@ export default class WebhooksDeliveries extends AuthenticatedCommand {
|
|
|
103
105
|
},
|
|
104
106
|
{
|
|
105
107
|
header: "Response Time",
|
|
106
|
-
key: "
|
|
108
|
+
key: "response_time",
|
|
107
109
|
width: 14,
|
|
108
|
-
formatter: (v) => v ? `${v}ms` : colors.dim("-"),
|
|
110
|
+
formatter: (v) => (v ? `${v}ms` : colors.dim("-")),
|
|
109
111
|
},
|
|
110
112
|
{
|
|
111
113
|
header: "Created",
|
|
112
|
-
key: "
|
|
114
|
+
key: "created_at",
|
|
113
115
|
width: 16,
|
|
114
116
|
formatter: (v) => formatDate(String(v)),
|
|
115
117
|
},
|
|
116
118
|
]);
|
|
117
119
|
// Show failed delivery details
|
|
118
|
-
const failed = deliveries.filter(d => d.status === "failed" && d.
|
|
120
|
+
const failed = deliveries.filter((d) => d.status === "failed" && d.error_message);
|
|
119
121
|
if (failed.length > 0 && !flags["failed-only"]) {
|
|
120
122
|
console.log();
|
|
121
123
|
console.log(colors.error("Failed deliveries:"));
|
|
122
|
-
failed.forEach(delivery => {
|
|
123
|
-
console.log(colors.dim(` ${delivery.id.slice(0, 15)}...:`), delivery.
|
|
124
|
+
failed.forEach((delivery) => {
|
|
125
|
+
console.log(colors.dim(` ${delivery.id.slice(0, 15)}...:`), delivery.error_message || "Unknown error");
|
|
124
126
|
});
|
|
125
127
|
}
|
|
126
128
|
// Show pending retries
|
|
127
|
-
const pending = deliveries.filter(d => d.status === "pending" && d.
|
|
129
|
+
const pending = deliveries.filter((d) => d.status === "pending" && d.next_retry_at);
|
|
128
130
|
if (pending.length > 0) {
|
|
129
131
|
console.log();
|
|
130
132
|
console.log(colors.warning("Pending retries:"));
|
|
131
|
-
pending.forEach(delivery => {
|
|
132
|
-
console.log(colors.dim(` ${delivery.id.slice(0, 15)}...:`), `Next retry at ${formatDate(delivery.
|
|
133
|
+
pending.forEach((delivery) => {
|
|
134
|
+
console.log(colors.dim(` ${delivery.id.slice(0, 15)}...:`), `Next retry at ${formatDate(delivery.next_retry_at)}`);
|
|
133
135
|
});
|
|
134
136
|
}
|
|
135
137
|
}
|
|
136
138
|
}
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy93ZWJob29rcy9kZWxpdmVyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsS0FBSyxFQUNMLElBQUksRUFDSixJQUFJLEVBQ0osTUFBTSxFQUNOLFVBQVUsRUFDVixVQUFVLEdBQ1gsTUFBTSxxQkFBcUIsQ0FBQztBQWlCN0IsTUFBTSxDQUFDLE9BQU8sT0FBTyxrQkFBbUIsU0FBUSxvQkFBb0I7SUFDbEUsTUFBTSxDQUFDLFdBQVcsR0FBRywrQkFBK0IsQ0FBQztJQUVyRCxNQUFNLENBQUMsUUFBUSxHQUFHO1FBQ2hCLGtEQUFrRDtRQUNsRCw2REFBNkQ7UUFDN0QsZ0VBQWdFO1FBQ2hFLHlEQUF5RDtLQUMxRCxDQUFDO0lBRUYsTUFBTSxDQUFDLElBQUksR0FBRztRQUNaLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ2QsV0FBVyxFQUFFLFlBQVk7WUFDekIsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO0tBQ0gsQ0FBQztJQUVGLE1BQU0sQ0FBQyxLQUFLLEdBQUc7UUFDYixHQUFHLG9CQUFvQixDQUFDLFNBQVM7UUFDakMsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDbkIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsOEJBQThCO1lBQzNDLE9BQU8sRUFBRSxFQUFFO1NBQ1osQ0FBQztRQUNGLGFBQWEsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQzNCLFdBQVcsRUFBRSw2QkFBNkI7WUFDMUMsT0FBTyxFQUFFLEtBQUs7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QUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxpQkFBaUIsVUFBVSxDQUFDLFFBQVEsQ0FBQyxXQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDckgsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFyZ3MsIEZsYWdzIH0gZnJvbSBcIkBvY2xpZi9jb3JlXCI7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi8uLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIHRhYmxlLFxuICBqc29uLFxuICBpbmZvLFxuICBjb2xvcnMsXG4gIGZvcm1hdERhdGUsXG4gIGlzSnNvbk1vZGUsXG59IGZyb20gXCIuLi8uLi9saWIvb3V0cHV0LmpzXCI7XG5cbmludGVyZmFjZSBXZWJob29rRGVsaXZlcnkge1xuICBpZDogc3RyaW5nO1xuICBldmVudFR5cGU6IHN0cmluZztcbiAgYXR0ZW1wdE51bWJlcjogbnVtYmVyO1xuICBtYXhBdHRlbXB0czogbnVtYmVyO1xuICBzdGF0dXM6IFwicGVuZGluZ1wiIHwgXCJkZWxpdmVyZWRcIiB8IFwiZmFpbGVkXCIgfCBcImNhbmNlbGxlZFwiO1xuICByZXNwb25zZVN0YXR1c0NvZGU/OiBudW1iZXI7XG4gIHJlc3BvbnNlVGltZT86IG51bWJlcjtcbiAgZXJyb3JNZXNzYWdlPzogc3RyaW5nO1xuICBlcnJvckNvZGU/OiBzdHJpbmc7XG4gIG5leHRSZXRyeUF0Pzogc3RyaW5nO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgZGVsaXZlcmVkQXQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFdlYmhvb2tzRGVsaXZlcmllcyBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJWaWV3IHdlYmhvb2sgZGVsaXZlcnkgaGlzdG9yeVwiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGRlbGl2ZXJpZXMgd2hrX2FiYzEyM1wiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3MgZGVsaXZlcmllcyB3aGtfYWJjMTIzIC0tbGltaXQgMjBcIixcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGRlbGl2ZXJpZXMgd2hrX2FiYzEyMyAtLWZhaWxlZC1vbmx5XCIsXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyBkZWxpdmVyaWVzIHdoa19hYmMxMjMgLS1qc29uXCIsXG4gIF07XG5cbiAgc3RhdGljIGFyZ3MgPSB7XG4gICAgaWQ6IEFyZ3Muc3RyaW5nKHtcbiAgICAgIGRlc2NyaXB0aW9uOiBcIldlYmhvb2sgSURcIixcbiAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIH0pLFxuICB9O1xuXG4gIHN0YXRpYyBmbGFncyA9IHtcbiAgICAuLi5BdXRoZW50aWNhdGVkQ29tbWFuZC5iYXNlRmxhZ3MsXG4gICAgbGltaXQ6IEZsYWdzLmludGVnZXIoe1xuICAgICAgY2hhcjogXCJsXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJOdW1iZXIgb2YgZGVsaXZlcmllcyB0byBzaG93XCIsXG4gICAgICBkZWZhdWx0OiAxMCxcbiAgICB9KSxcbiAgICBcImZhaWxlZC1vbmx5XCI6IEZsYWdzLmJvb2xlYW4oe1xuICAgICAgZGVzY3JpcHRpb246IFwiU2hvdyBvbmx5IGZhaWxlZCBkZWxpdmVyaWVzXCIsXG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICB9KSxcbiAgfTtcblxuICBhc3luYyBydW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgeyBhcmdzLCBmbGFncyB9ID0gYXdhaXQgdGhpcy5wYXJzZShXZWJob29rc0RlbGl2ZXJpZXMpO1xuXG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh7XG4gICAgICBsaW1pdDogU3RyaW5nKGZsYWdzLmxpbWl0KSxcbiAgICAgIC4uLihmbGFnc1tcImZhaWxlZC1vbmx5XCJdICYmIHsgc3RhdHVzOiBcImZhaWxlZFwiIH0pLFxuICAgIH0pO1xuXG4gICAgY29uc3QgZGVsaXZlcmllcyA9IGF3YWl0IGFwaUNsaWVudC5nZXQ8V2ViaG9va0RlbGl2ZXJ5W10+KFxuICAgICAgYC9hcGkvdjEvd2ViaG9va3MvJHthcmdzLmlkfS9kZWxpdmVyaWVzPyR7cGFyYW1zLnRvU3RyaW5nKCl9YFxuICAgICk7XG5cbiAgICBpZiAoaXNKc29uTW9kZSgpKSB7XG4gICAgICBqc29uKGRlbGl2ZXJpZXMpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChkZWxpdmVyaWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaW5mbyhmbGFnc1tcImZhaWxlZC1vbmx5XCJdID8gXCJObyBmYWlsZWQgZGVsaXZlcmllcyBmb3VuZFwiIDogXCJObyBkZWxpdmVyaWVzIGZvdW5kXCIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnNvbGUubG9nKCk7XG4gICAgY29uc29sZS5sb2coY29sb3JzLmRpbShgU2hvd2luZyAke2RlbGl2ZXJpZXMubGVuZ3RofSBkZWxpdmVyaWVzIGZvciB3ZWJob29rICR7YXJncy5pZH1gKSk7XG4gICAgY29uc29sZS5sb2coKTtcblxuICAgIC8vIEFkZCBjb21wdXRlZCBmaWVsZHMgZm9yIGJldHRlciBkaXNwbGF5XG4gICAgY29uc3QgZGVsaXZlcmllc1dpdGhDb21wdXRlZCA9IGRlbGl2ZXJpZXMubWFwKGQgPT4gKHtcbiAgICAgIC4uLmQsXG4gICAgICBhdHRlbXB0RGlzcGxheTogYCR7ZC5hdHRlbXB0TnVtYmVyfS8ke2QubWF4QXR0ZW1wdHN9YCxcbiAgICB9KSk7XG5cbiAgICB0YWJsZShkZWxpdmVyaWVzV2l0aENvbXB1dGVkLCBbXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJEZWxpdmVyeSBJRFwiLFxuICAgICAgICBrZXk6IFwiaWRcIixcbiAgICAgICAgd2lkdGg6IDE4LFxuICAgICAgICBmb3JtYXR0ZXI6ICh2KSA9PiBjb2xvcnMuZGltKFN0cmluZyh2KS5zbGljZSgwLCAxNSkgKyBcIi4uLlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJFdmVudFwiLFxuICAgICAgICBrZXk6IFwiZXZlbnRUeXBlXCIsXG4gICAgICAgIHdpZHRoOiAxNSxcbiAgICAgICAgZm9ybWF0dGVyOiAodikgPT4gU3RyaW5nKHYpLnJlcGxhY2UoXCJtZXNzYWdlLlwiLCBcIlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJTdGF0dXNcIixcbiAgICAgICAga2V5OiBcInN0YXR1c1wiLFxuICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBzd2l0Y2ggKHYpIHtcbiAgICAgICAgICAgIGNhc2UgXCJkZWxpdmVyZWRcIjpcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy5zdWNjZXNzKFwiZGVsaXZlcmVkXCIpO1xuICAgICAgICAgICAgY2FzZSBcImZhaWxlZFwiOlxuICAgICAgICAgICAgICByZXR1cm4gY29sb3JzLmVycm9yKFwiZmFpbGVkXCIpO1xuICAgICAgICAgICAgY2FzZSBcInBlbmRpbmdcIjpcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy53YXJuaW5nKFwicGVuZGluZ1wiKTtcbiAgICAgICAgICAgIGNhc2UgXCJjYW5jZWxsZWRcIjpcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy5kaW0oXCJjYW5jZWxsZWRcIik7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKHYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJBdHRlbXB0XCIsXG4gICAgICAgIGtleTogXCJhdHRlbXB0RGlzcGxheVwiLFxuICAgICAgICB3aWR0aDogMTAsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiU3RhdHVzIENvZGVcIixcbiAgICAgICAga2V5OiBcInJlc3BvbnNlU3RhdHVzQ29kZVwiLFxuICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBpZiAoIXYpIHJldHVybiBjb2xvcnMuZGltKFwiLVwiKTtcbiAgICAgICAgICBjb25zdCBjb2RlID0gTnVtYmVyKHYpO1xuICAgICAgICAgIHJldHVybiBjb2RlID49IDIwMCAmJiBjb2RlIDwgMzAwIFxuICAgICAgICAgICAgPyBjb2xvcnMuc3VjY2VzcyhTdHJpbmcoY29kZSkpXG4gICAgICAgICAgICA6IGNvbG9ycy5lcnJvcihTdHJpbmcoY29kZSkpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaGVhZGVyOiBcIlJlc3BvbnNlIFRpbWVcIixcbiAgICAgICAga2V5OiBcInJlc3BvbnNlVGltZVwiLFxuICAgICAgICB3aWR0aDogMTQsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHYgPyBgJHt2fW1zYCA6IGNvbG9ycy5kaW0oXCItXCIpLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaGVhZGVyOiBcIkNyZWF0ZWRcIixcbiAgICAgICAga2V5OiBcImNyZWF0ZWRBdFwiLFxuICAgICAgICB3aWR0aDogMTYsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IGZvcm1hdERhdGUoU3RyaW5nKHYpKSxcbiAgICAgIH0sXG4gICAgXSk7XG5cbiAgICAvLyBTaG93IGZhaWxlZCBkZWxpdmVyeSBkZXRhaWxzXG4gICAgY29uc3QgZmFpbGVkID0gZGVsaXZlcmllcy5maWx0ZXIoZCA9PiBkLnN0YXR1cyA9PT0gXCJmYWlsZWRcIiAmJiBkLmVycm9yTWVzc2FnZSk7XG4gICAgaWYgKGZhaWxlZC5sZW5ndGggPiAwICYmICFmbGFnc1tcImZhaWxlZC1vbmx5XCJdKSB7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coY29sb3JzLmVycm9yKFwiRmFpbGVkIGRlbGl2ZXJpZXM6XCIpKTtcbiAgICAgIGZhaWxlZC5mb3JFYWNoKGRlbGl2ZXJ5ID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coY29sb3JzLmRpbShgICAke2RlbGl2ZXJ5LmlkLnNsaWNlKDAsIDE1KX0uLi46YCksIGRlbGl2ZXJ5LmVycm9yTWVzc2FnZSB8fCBcIlVua25vd24gZXJyb3JcIik7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBTaG93IHBlbmRpbmcgcmV0cmllc1xuICAgIGNvbnN0IHBlbmRpbmcgPSBkZWxpdmVyaWVzLmZpbHRlcihkID0+IGQuc3RhdHVzID09PSBcInBlbmRpbmdcIiAmJiBkLm5leHRSZXRyeUF0KTtcbiAgICBpZiAocGVuZGluZy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coY29sb3JzLndhcm5pbmcoXCJQZW5kaW5nIHJldHJpZXM6XCIpKTtcbiAgICAgIHBlbmRpbmcuZm9yRWFjaChkZWxpdmVyeSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5kaW0oYCAgJHtkZWxpdmVyeS5pZC5zbGljZSgwLCAxNSl9Li4uOmApLCBgTmV4dCByZXRyeSBhdCAke2Zvcm1hdERhdGUoZGVsaXZlcnkubmV4dFJldHJ5QXQhKX1gKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufSJdfQ==
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsaXZlcmllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy93ZWJob29rcy9kZWxpdmVyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsS0FBSyxFQUNMLElBQUksRUFDSixJQUFJLEVBQ0osTUFBTSxFQUNOLFVBQVUsRUFDVixVQUFVLEdBQ1gsTUFBTSxxQkFBcUIsQ0FBQztBQWlCN0IsTUFBTSxDQUFDLE9BQU8sT0FBTyxrQkFBbUIsU0FBUSxvQkFBb0I7SUFDbEUsTUFBTSxDQUFDLFdBQVcsR0FBRywrQkFBK0IsQ0FBQztJQUVyRCxNQUFNLENBQUMsUUFBUSxHQUFHO1FBQ2hCLGtEQUFrRDtRQUNsRCw2REFBNkQ7UUFDN0QsZ0VBQWdFO1FBQ2hFLHlEQUF5RDtLQUMxRCxDQUFDO0lBRUYsTUFBTSxDQUFDLElBQUksR0FBRztRQUNaLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ2QsV0FBVyxFQUFFLFlBQVk7WUFDekIsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO0tBQ0gsQ0FBQztJQUVGLE1BQU0sQ0FBQyxLQUFLLEdBQUc7UUFDYixHQUFHLG9CQUFvQixDQUFDLFNBQVM7UUFDakMsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDbkIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsOEJBQThCO1lBQzNDLE9BQU8sRUFBRSxFQUFFO1NBQ1osQ0FBQztRQUNGLGFBQWEsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQzNCLFdBQVcsRUFBRSw2QkFBNkI7WUFDMUMsT0FBTyxFQUFFLEtBQUs7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Q0FDVCxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFDL0MsaUJBQWlCLFVBQVUsQ0FBQyxRQUFRLENBQUMsYUFBYyxDQUFDLEVBQUUsQ0FDdkQsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcmdzLCBGbGFncyB9IGZyb20gXCJAb2NsaWYvY29yZVwiO1xuaW1wb3J0IHsgQXV0aGVudGljYXRlZENvbW1hbmQgfSBmcm9tIFwiLi4vLi4vbGliL2Jhc2UtY29tbWFuZC5qc1wiO1xuaW1wb3J0IHsgYXBpQ2xpZW50IH0gZnJvbSBcIi4uLy4uL2xpYi9hcGktY2xpZW50LmpzXCI7XG5pbXBvcnQge1xuICB0YWJsZSxcbiAganNvbixcbiAgaW5mbyxcbiAgY29sb3JzLFxuICBmb3JtYXREYXRlLFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuXG5pbnRlcmZhY2UgV2ViaG9va0RlbGl2ZXJ5IHtcbiAgaWQ6IHN0cmluZztcbiAgZXZlbnRfdHlwZTogc3RyaW5nO1xuICBhdHRlbXB0X251bWJlcjogbnVtYmVyO1xuICBtYXhfYXR0ZW1wdHM6IG51bWJlcjtcbiAgc3RhdHVzOiBcInBlbmRpbmdcIiB8IFwiZGVsaXZlcmVkXCIgfCBcImZhaWxlZFwiIHwgXCJjYW5jZWxsZWRcIjtcbiAgcmVzcG9uc2Vfc3RhdHVzX2NvZGU/OiBudW1iZXI7XG4gIHJlc3BvbnNlX3RpbWU/OiBudW1iZXI7XG4gIGVycm9yX21lc3NhZ2U/OiBzdHJpbmc7XG4gIGVycm9yX2NvZGU/OiBzdHJpbmc7XG4gIG5leHRfcmV0cnlfYXQ/OiBzdHJpbmc7XG4gIGNyZWF0ZWRfYXQ6IHN0cmluZztcbiAgZGVsaXZlcmVkX2F0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXZWJob29rc0RlbGl2ZXJpZXMgZXh0ZW5kcyBBdXRoZW50aWNhdGVkQ29tbWFuZCB7XG4gIHN0YXRpYyBkZXNjcmlwdGlvbiA9IFwiVmlldyB3ZWJob29rIGRlbGl2ZXJ5IGhpc3RvcnlcIjtcblxuICBzdGF0aWMgZXhhbXBsZXMgPSBbXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyBkZWxpdmVyaWVzIHdoa19hYmMxMjNcIixcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGRlbGl2ZXJpZXMgd2hrX2FiYzEyMyAtLWxpbWl0IDIwXCIsXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyBkZWxpdmVyaWVzIHdoa19hYmMxMjMgLS1mYWlsZWQtb25seVwiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3MgZGVsaXZlcmllcyB3aGtfYWJjMTIzIC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBhcmdzID0ge1xuICAgIGlkOiBBcmdzLnN0cmluZyh7XG4gICAgICBkZXNjcmlwdGlvbjogXCJXZWJob29rIElEXCIsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KSxcbiAgfTtcblxuICBzdGF0aWMgZmxhZ3MgPSB7XG4gICAgLi4uQXV0aGVudGljYXRlZENvbW1hbmQuYmFzZUZsYWdzLFxuICAgIGxpbWl0OiBGbGFncy5pbnRlZ2VyKHtcbiAgICAgIGNoYXI6IFwibFwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiTnVtYmVyIG9mIGRlbGl2ZXJpZXMgdG8gc2hvd1wiLFxuICAgICAgZGVmYXVsdDogMTAsXG4gICAgfSksXG4gICAgXCJmYWlsZWQtb25seVwiOiBGbGFncy5ib29sZWFuKHtcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlNob3cgb25seSBmYWlsZWQgZGVsaXZlcmllc1wiLFxuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgfSksXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgYXJncywgZmxhZ3MgfSA9IGF3YWl0IHRoaXMucGFyc2UoV2ViaG9va3NEZWxpdmVyaWVzKTtcblxuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoe1xuICAgICAgbGltaXQ6IFN0cmluZyhmbGFncy5saW1pdCksXG4gICAgICAuLi4oZmxhZ3NbXCJmYWlsZWQtb25seVwiXSAmJiB7IHN0YXR1czogXCJmYWlsZWRcIiB9KSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGRlbGl2ZXJpZXMgPSBhd2FpdCBhcGlDbGllbnQuZ2V0PFdlYmhvb2tEZWxpdmVyeVtdPihcbiAgICAgIGAvYXBpL3YxL3dlYmhvb2tzLyR7YXJncy5pZH0vZGVsaXZlcmllcz8ke3BhcmFtcy50b1N0cmluZygpfWAsXG4gICAgKTtcblxuICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgIGpzb24oZGVsaXZlcmllcyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGRlbGl2ZXJpZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICBpbmZvKFxuICAgICAgICBmbGFnc1tcImZhaWxlZC1vbmx5XCJdXG4gICAgICAgICAgPyBcIk5vIGZhaWxlZCBkZWxpdmVyaWVzIGZvdW5kXCJcbiAgICAgICAgICA6IFwiTm8gZGVsaXZlcmllcyBmb3VuZFwiLFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zb2xlLmxvZygpO1xuICAgIGNvbnNvbGUubG9nKFxuICAgICAgY29sb3JzLmRpbShcbiAgICAgICAgYFNob3dpbmcgJHtkZWxpdmVyaWVzLmxlbmd0aH0gZGVsaXZlcmllcyBmb3Igd2ViaG9vayAke2FyZ3MuaWR9YCxcbiAgICAgICksXG4gICAgKTtcbiAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgLy8gQWRkIGNvbXB1dGVkIGZpZWxkcyBmb3IgYmV0dGVyIGRpc3BsYXlcbiAgICBjb25zdCBkZWxpdmVyaWVzV2l0aENvbXB1dGVkID0gZGVsaXZlcmllcy5tYXAoKGQpID0+ICh7XG4gICAgICAuLi5kLFxuICAgICAgYXR0ZW1wdERpc3BsYXk6IGAke2QuYXR0ZW1wdF9udW1iZXJ9LyR7ZC5tYXhfYXR0ZW1wdHN9YCxcbiAgICB9KSk7XG5cbiAgICB0YWJsZShkZWxpdmVyaWVzV2l0aENvbXB1dGVkLCBbXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJEZWxpdmVyeSBJRFwiLFxuICAgICAgICBrZXk6IFwiaWRcIixcbiAgICAgICAgd2lkdGg6IDE4LFxuICAgICAgICBmb3JtYXR0ZXI6ICh2KSA9PiBjb2xvcnMuZGltKFN0cmluZyh2KS5zbGljZSgwLCAxNSkgKyBcIi4uLlwiKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJFdmVudFwiLFxuICAgICAgICBrZXk6IFwiZXZlbnRfdHlwZVwiLFxuICAgICAgICB3aWR0aDogMTUsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IFN0cmluZyh2KS5yZXBsYWNlKFwibWVzc2FnZS5cIiwgXCJcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiU3RhdHVzXCIsXG4gICAgICAgIGtleTogXCJzdGF0dXNcIixcbiAgICAgICAgd2lkdGg6IDEyLFxuICAgICAgICBmb3JtYXR0ZXI6ICh2KSA9PiB7XG4gICAgICAgICAgc3dpdGNoICh2KSB7XG4gICAgICAgICAgICBjYXNlIFwiZGVsaXZlcmVkXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMuc3VjY2VzcyhcImRlbGl2ZXJlZFwiKTtcbiAgICAgICAgICAgIGNhc2UgXCJmYWlsZWRcIjpcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy5lcnJvcihcImZhaWxlZFwiKTtcbiAgICAgICAgICAgIGNhc2UgXCJwZW5kaW5nXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMud2FybmluZyhcInBlbmRpbmdcIik7XG4gICAgICAgICAgICBjYXNlIFwiY2FuY2VsbGVkXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMuZGltKFwiY2FuY2VsbGVkXCIpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgcmV0dXJuIFN0cmluZyh2KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiQXR0ZW1wdFwiLFxuICAgICAgICBrZXk6IFwiYXR0ZW1wdERpc3BsYXlcIixcbiAgICAgICAgd2lkdGg6IDEwLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaGVhZGVyOiBcIlN0YXR1cyBDb2RlXCIsXG4gICAgICAgIGtleTogXCJyZXNwb25zZV9zdGF0dXNfY29kZVwiLFxuICAgICAgICB3aWR0aDogMTIsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBpZiAoIXYpIHJldHVybiBjb2xvcnMuZGltKFwiLVwiKTtcbiAgICAgICAgICBjb25zdCBjb2RlID0gTnVtYmVyKHYpO1xuICAgICAgICAgIHJldHVybiBjb2RlID49IDIwMCAmJiBjb2RlIDwgMzAwXG4gICAgICAgICAgICA/IGNvbG9ycy5zdWNjZXNzKFN0cmluZyhjb2RlKSlcbiAgICAgICAgICAgIDogY29sb3JzLmVycm9yKFN0cmluZyhjb2RlKSk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiUmVzcG9uc2UgVGltZVwiLFxuICAgICAgICBrZXk6IFwicmVzcG9uc2VfdGltZVwiLFxuICAgICAgICB3aWR0aDogMTQsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+ICh2ID8gYCR7dn1tc2AgOiBjb2xvcnMuZGltKFwiLVwiKSksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiQ3JlYXRlZFwiLFxuICAgICAgICBrZXk6IFwiY3JlYXRlZF9hdFwiLFxuICAgICAgICB3aWR0aDogMTYsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IGZvcm1hdERhdGUoU3RyaW5nKHYpKSxcbiAgICAgIH0sXG4gICAgXSk7XG5cbiAgICAvLyBTaG93IGZhaWxlZCBkZWxpdmVyeSBkZXRhaWxzXG4gICAgY29uc3QgZmFpbGVkID0gZGVsaXZlcmllcy5maWx0ZXIoXG4gICAgICAoZCkgPT4gZC5zdGF0dXMgPT09IFwiZmFpbGVkXCIgJiYgZC5lcnJvcl9tZXNzYWdlLFxuICAgICk7XG4gICAgaWYgKGZhaWxlZC5sZW5ndGggPiAwICYmICFmbGFnc1tcImZhaWxlZC1vbmx5XCJdKSB7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coY29sb3JzLmVycm9yKFwiRmFpbGVkIGRlbGl2ZXJpZXM6XCIpKTtcbiAgICAgIGZhaWxlZC5mb3JFYWNoKChkZWxpdmVyeSkgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICBjb2xvcnMuZGltKGAgICR7ZGVsaXZlcnkuaWQuc2xpY2UoMCwgMTUpfS4uLjpgKSxcbiAgICAgICAgICBkZWxpdmVyeS5lcnJvcl9tZXNzYWdlIHx8IFwiVW5rbm93biBlcnJvclwiLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gU2hvdyBwZW5kaW5nIHJldHJpZXNcbiAgICBjb25zdCBwZW5kaW5nID0gZGVsaXZlcmllcy5maWx0ZXIoXG4gICAgICAoZCkgPT4gZC5zdGF0dXMgPT09IFwicGVuZGluZ1wiICYmIGQubmV4dF9yZXRyeV9hdCxcbiAgICApO1xuICAgIGlmIChwZW5kaW5nLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnNvbGUubG9nKCk7XG4gICAgICBjb25zb2xlLmxvZyhjb2xvcnMud2FybmluZyhcIlBlbmRpbmcgcmV0cmllczpcIikpO1xuICAgICAgcGVuZGluZy5mb3JFYWNoKChkZWxpdmVyeSkgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICBjb2xvcnMuZGltKGAgICR7ZGVsaXZlcnkuaWQuc2xpY2UoMCwgMTUpfS4uLjpgKSxcbiAgICAgICAgICBgTmV4dCByZXRyeSBhdCAke2Zvcm1hdERhdGUoZGVsaXZlcnkubmV4dF9yZXRyeV9hdCEpfWAsXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -27,31 +27,33 @@ export default class WebhooksGet extends AuthenticatedCommand {
|
|
|
27
27
|
header(`Webhook ${webhook.id}`);
|
|
28
28
|
console.log();
|
|
29
29
|
keyValue({
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
...(webhook.description ? {
|
|
34
|
-
|
|
35
|
-
|
|
30
|
+
ID: webhook.id,
|
|
31
|
+
URL: webhook.url,
|
|
32
|
+
Events: webhook.events.join(", "),
|
|
33
|
+
...(webhook.description ? { Description: webhook.description } : {}),
|
|
34
|
+
Status: webhook.is_active
|
|
35
|
+
? colors.success("active")
|
|
36
|
+
: colors.warning("inactive"),
|
|
37
|
+
"Circuit State": webhook.circuit_state === "closed"
|
|
36
38
|
? colors.success("closed")
|
|
37
|
-
: webhook.
|
|
39
|
+
: webhook.circuit_state === "open"
|
|
38
40
|
? colors.error("open")
|
|
39
41
|
: colors.warning("half_open"),
|
|
40
|
-
"Failure Count": String(webhook.
|
|
41
|
-
"Secret Version": String(webhook.
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
"Failure Count": String(webhook.failure_count),
|
|
43
|
+
"Secret Version": String(webhook.secret_version),
|
|
44
|
+
Created: formatDate(webhook.created_at),
|
|
45
|
+
Updated: formatDate(webhook.updated_at),
|
|
44
46
|
});
|
|
45
|
-
if (webhook.
|
|
47
|
+
if (webhook.failure_count > 0) {
|
|
46
48
|
console.log();
|
|
47
|
-
console.log(colors.warning(`⚠ This webhook has failed ${webhook.
|
|
49
|
+
console.log(colors.warning(`⚠ This webhook has failed ${webhook.failure_count} times recently.`));
|
|
48
50
|
console.log(colors.dim("Check delivery history with:"), colors.code(`sendly webhooks deliveries ${webhook.id}`));
|
|
49
51
|
}
|
|
50
|
-
if (webhook.
|
|
52
|
+
if (webhook.circuit_state === "open") {
|
|
51
53
|
console.log();
|
|
52
54
|
console.log(colors.error("⚠ Circuit breaker is OPEN - webhook deliveries are paused."));
|
|
53
55
|
console.log(colors.dim("Test your endpoint and the circuit will auto-recover."));
|
|
54
56
|
}
|
|
55
57
|
}
|
|
56
58
|
}
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3dlYmhvb2tzL2dldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsUUFBUSxFQUNSLElBQUksRUFDSixNQUFNLEVBQ04sVUFBVSxFQUNWLE1BQU0sRUFFTixVQUFVLEdBQ1gsTUFBTSxxQkFBcUIsQ0FBQztBQWU3QixNQUFNLENBQUMsT0FBTyxPQUFPLFdBQVksU0FBUSxvQkFBb0I7SUFDM0QsTUFBTSxDQUFDLFdBQVcsR0FBRyxxQkFBcUIsQ0FBQztJQUUzQyxNQUFNLENBQUMsUUFBUSxHQUFHO1FBQ2hCLDJDQUEyQztRQUMzQyxrREFBa0Q7S0FDbkQsQ0FBQztJQUVGLE1BQU0sQ0FBQyxJQUFJLEdBQUc7UUFDWixFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUNkLFdBQVcsRUFBRSxZQUFZO1lBQ3pCLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQztLQUNILENBQUM7SUFFRixNQUFNLENBQUMsS0FBSyxHQUFHO1FBQ2IsR0FBRyxvQkFBb0IsQ0FBQyxTQUFTO0tBQ2xDLENBQUM7SUFFRixLQUFLLENBQUMsR0FBRztRQUNQLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFL0MsTUFBTSxPQUFPLEdBQUcsTUFBTSxTQUFTLENBQUMsR0FBRyxDQUFVLG9CQUFvQixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU1RSxJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2QsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLENBQUMsV0FBVyxPQUFPLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFFZCxRQUFRLENBQUM7WUFDUCxFQUFFLEVBQUUsT0FBTyxDQUFDLEVBQUU7WUFDZCxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7WUFDaEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNqQyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDcEUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxTQUFTO2dCQUN2QixDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7Z0JBQzFCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztZQUM5QixlQUFlLEVBQ2IsT0FBTyxDQUFDLGFBQWEsS0FBSyxRQUFRO2dCQUNoQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7Z0JBQzFCLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxLQUFLLE1BQU07b0JBQ2hDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztvQkFDdEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1lBQ25DLGVBQWUsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztZQUM5QyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUNoRCxPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7WUFDdkMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO1NBQ3hDLENBQUMsQ0FBQztRQUVILElBQUksT0FBTyxDQUFDLGFBQWEsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM5QixPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDZCxPQUFPLENBQUMsR0FBRyxDQUNULE1BQU0sQ0FBQyxPQUFPLENBQ1osNkJBQTZCLE9BQU8sQ0FBQyxhQUFhLGtCQUFrQixDQUNyRSxDQUNGLENBQUM7WUFDRixPQUFPLENBQUMsR0FBRyxDQUNULE1BQU0sQ0FBQyxHQUFHLENBQUMsOEJBQThCLENBQUMsRUFDMUMsTUFBTSxDQUFDLElBQUksQ0FBQyw4QkFBOEIsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ3hELENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsYUFBYSxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQ3JDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLE9BQU8sQ0FBQyxHQUFHLENBQ1QsTUFBTSxDQUFDLEtBQUssQ0FDViw0REFBNEQsQ0FDN0QsQ0FDRixDQUFDO1lBQ0YsT0FBTyxDQUFDLEdBQUcsQ0FDVCxNQUFNLENBQUMsR0FBRyxDQUFDLHVEQUF1RCxDQUFDLENBQ3BFLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFyZ3MgfSBmcm9tIFwiQG9jbGlmL2NvcmVcIjtcbmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRDb21tYW5kIH0gZnJvbSBcIi4uLy4uL2xpYi9iYXNlLWNvbW1hbmQuanNcIjtcbmltcG9ydCB7IGFwaUNsaWVudCB9IGZyb20gXCIuLi8uLi9saWIvYXBpLWNsaWVudC5qc1wiO1xuaW1wb3J0IHtcbiAga2V5VmFsdWUsXG4gIGpzb24sXG4gIGhlYWRlcixcbiAgZm9ybWF0RGF0ZSxcbiAgY29sb3JzLFxuICBkaXZpZGVyLFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuXG5pbnRlcmZhY2UgV2ViaG9vayB7XG4gIGlkOiBzdHJpbmc7XG4gIHVybDogc3RyaW5nO1xuICBldmVudHM6IHN0cmluZ1tdO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgaXNfYWN0aXZlOiBib29sZWFuO1xuICBmYWlsdXJlX2NvdW50OiBudW1iZXI7XG4gIGNpcmN1aXRfc3RhdGU6IFwiY2xvc2VkXCIgfCBcIm9wZW5cIiB8IFwiaGFsZl9vcGVuXCI7XG4gIHNlY3JldF92ZXJzaW9uOiBudW1iZXI7XG4gIGNyZWF0ZWRfYXQ6IHN0cmluZztcbiAgdXBkYXRlZF9hdDogc3RyaW5nO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXZWJob29rc0dldCBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJHZXQgd2ViaG9vayBkZXRhaWxzXCI7XG5cbiAgc3RhdGljIGV4YW1wbGVzID0gW1xuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3MgZ2V0IHdoa19hYmMxMjNcIixcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGdldCB3aGtfYWJjMTIzIC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBhcmdzID0ge1xuICAgIGlkOiBBcmdzLnN0cmluZyh7XG4gICAgICBkZXNjcmlwdGlvbjogXCJXZWJob29rIElEXCIsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KSxcbiAgfTtcblxuICBzdGF0aWMgZmxhZ3MgPSB7XG4gICAgLi4uQXV0aGVudGljYXRlZENvbW1hbmQuYmFzZUZsYWdzLFxuICB9O1xuXG4gIGFzeW5jIHJ1bigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB7IGFyZ3MgfSA9IGF3YWl0IHRoaXMucGFyc2UoV2ViaG9va3NHZXQpO1xuXG4gICAgY29uc3Qgd2ViaG9vayA9IGF3YWl0IGFwaUNsaWVudC5nZXQ8V2ViaG9vaz4oYC9hcGkvdjEvd2ViaG9va3MvJHthcmdzLmlkfWApO1xuXG4gICAgaWYgKGlzSnNvbk1vZGUoKSkge1xuICAgICAganNvbih3ZWJob29rKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBoZWFkZXIoYFdlYmhvb2sgJHt3ZWJob29rLmlkfWApO1xuICAgIGNvbnNvbGUubG9nKCk7XG5cbiAgICBrZXlWYWx1ZSh7XG4gICAgICBJRDogd2ViaG9vay5pZCxcbiAgICAgIFVSTDogd2ViaG9vay51cmwsXG4gICAgICBFdmVudHM6IHdlYmhvb2suZXZlbnRzLmpvaW4oXCIsIFwiKSxcbiAgICAgIC4uLih3ZWJob29rLmRlc2NyaXB0aW9uID8geyBEZXNjcmlwdGlvbjogd2ViaG9vay5kZXNjcmlwdGlvbiB9IDoge30pLFxuICAgICAgU3RhdHVzOiB3ZWJob29rLmlzX2FjdGl2ZVxuICAgICAgICA/IGNvbG9ycy5zdWNjZXNzKFwiYWN0aXZlXCIpXG4gICAgICAgIDogY29sb3JzLndhcm5pbmcoXCJpbmFjdGl2ZVwiKSxcbiAgICAgIFwiQ2lyY3VpdCBTdGF0ZVwiOlxuICAgICAgICB3ZWJob29rLmNpcmN1aXRfc3RhdGUgPT09IFwiY2xvc2VkXCJcbiAgICAgICAgICA/IGNvbG9ycy5zdWNjZXNzKFwiY2xvc2VkXCIpXG4gICAgICAgICAgOiB3ZWJob29rLmNpcmN1aXRfc3RhdGUgPT09IFwib3BlblwiXG4gICAgICAgICAgICA/IGNvbG9ycy5lcnJvcihcIm9wZW5cIilcbiAgICAgICAgICAgIDogY29sb3JzLndhcm5pbmcoXCJoYWxmX29wZW5cIiksXG4gICAgICBcIkZhaWx1cmUgQ291bnRcIjogU3RyaW5nKHdlYmhvb2suZmFpbHVyZV9jb3VudCksXG4gICAgICBcIlNlY3JldCBWZXJzaW9uXCI6IFN0cmluZyh3ZWJob29rLnNlY3JldF92ZXJzaW9uKSxcbiAgICAgIENyZWF0ZWQ6IGZvcm1hdERhdGUod2ViaG9vay5jcmVhdGVkX2F0KSxcbiAgICAgIFVwZGF0ZWQ6IGZvcm1hdERhdGUod2ViaG9vay51cGRhdGVkX2F0KSxcbiAgICB9KTtcblxuICAgIGlmICh3ZWJob29rLmZhaWx1cmVfY291bnQgPiAwKSB7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGNvbG9ycy53YXJuaW5nKFxuICAgICAgICAgIGDimqAgVGhpcyB3ZWJob29rIGhhcyBmYWlsZWQgJHt3ZWJob29rLmZhaWx1cmVfY291bnR9IHRpbWVzIHJlY2VudGx5LmAsXG4gICAgICAgICksXG4gICAgICApO1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGNvbG9ycy5kaW0oXCJDaGVjayBkZWxpdmVyeSBoaXN0b3J5IHdpdGg6XCIpLFxuICAgICAgICBjb2xvcnMuY29kZShgc2VuZGx5IHdlYmhvb2tzIGRlbGl2ZXJpZXMgJHt3ZWJob29rLmlkfWApLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAod2ViaG9vay5jaXJjdWl0X3N0YXRlID09PSBcIm9wZW5cIikge1xuICAgICAgY29uc29sZS5sb2coKTtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBjb2xvcnMuZXJyb3IoXG4gICAgICAgICAgXCLimqAgQ2lyY3VpdCBicmVha2VyIGlzIE9QRU4gLSB3ZWJob29rIGRlbGl2ZXJpZXMgYXJlIHBhdXNlZC5cIixcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgY29sb3JzLmRpbShcIlRlc3QgeW91ciBlbmRwb2ludCBhbmQgdGhlIGNpcmN1aXQgd2lsbCBhdXRvLXJlY292ZXIuXCIpLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -53,13 +53,13 @@ export default class WebhooksList extends AuthenticatedCommand {
|
|
|
53
53
|
},
|
|
54
54
|
{
|
|
55
55
|
header: "Status",
|
|
56
|
-
key: "
|
|
56
|
+
key: "is_active",
|
|
57
57
|
width: 10,
|
|
58
58
|
formatter: (v) => v ? colors.success("active") : colors.error("disabled"),
|
|
59
59
|
},
|
|
60
60
|
{
|
|
61
61
|
header: "Circuit",
|
|
62
|
-
key: "
|
|
62
|
+
key: "circuit_state",
|
|
63
63
|
width: 10,
|
|
64
64
|
formatter: (v) => {
|
|
65
65
|
switch (v) {
|
|
@@ -77,4 +77,4 @@ export default class WebhooksList extends AuthenticatedCommand {
|
|
|
77
77
|
]);
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy93ZWJob29rcy9saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsS0FBSyxFQUNMLElBQUksRUFDSixJQUFJLEVBRUosTUFBTSxFQUNOLFVBQVUsR0FDWCxNQUFNLHFCQUFxQixDQUFDO0FBYTdCLE1BQU0sQ0FBQyxPQUFPLE9BQU8sWUFBYSxTQUFRLG9CQUFvQjtJQUM1RCxNQUFNLENBQUMsV0FBVyxHQUFHLDBCQUEwQixDQUFDO0lBRWhELE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsaUNBQWlDO1FBQ2pDLHdDQUF3QztLQUN6QyxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztLQUNsQyxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLFFBQVEsR0FBRyxNQUFNLFNBQVMsQ0FBQyxHQUFHLENBQVksa0JBQWtCLENBQUMsQ0FBQztRQUVwRSxJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2YsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFDL0IsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsTUFBTSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMxRSxPQUFPLENBQUMsR0FBRyxDQUNULDBCQUEwQixNQUFNLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsQ0FDbEUsQ0FBQztZQUNGLE9BQU87UUFDVCxDQUFDO1FBRUQsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRWQsS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUNkO2dCQUNFLE1BQU0sRUFBRSxJQUFJO2dCQUNaLEdBQUcsRUFBRSxJQUFJO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUM7YUFDN0Q7WUFDRDtnQkFDRSxNQUFNLEVBQUUsS0FBSztnQkFDYixHQUFHLEVBQUUsS0FBSztnQkFDVixLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDZixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3RCLE9BQU8sR0FBRyxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO2dCQUMxRCxDQUFDO2FBQ0Y7WUFDRDtnQkFDRSxNQUFNLEVBQUUsUUFBUTtnQkFDaEIsR0FBRyxFQUFFLFFBQVE7Z0JBQ2IsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ2YsTUFBTSxNQUFNLEdBQUcsQ0FBYSxDQUFDO29CQUM3QixPQUFPLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQzt3QkFDdEIsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sU0FBUzt3QkFDM0IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDbEQsQ0FBQzthQUNGO1lBQ0Q7Z0JBQ0UsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLEdBQUcsRUFBRSxXQUFXO2dCQUNoQixLQUFLLEVBQUUsRUFBRTtnQkFDVCxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNmLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7YUFDMUQ7WUFDRDtnQkFDRSxNQUFNLEVBQUUsU0FBUztnQkFDakIsR0FBRyxFQUFFLGVBQWU7Z0JBQ3BCLEtBQUssRUFBRSxFQUFFO2dCQUNULFNBQVMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUNmLFFBQVEsQ0FBQyxFQUFFLENBQUM7d0JBQ1YsS0FBSyxRQUFROzRCQUNYLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQzt3QkFDbEMsS0FBSyxNQUFNOzRCQUNULE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQzt3QkFDOUIsS0FBSyxXQUFXOzRCQUNkLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQzt3QkFDckM7NEJBQ0UsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3JCLENBQUM7Z0JBQ0gsQ0FBQzthQUNGO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhlbnRpY2F0ZWRDb21tYW5kIH0gZnJvbSBcIi4uLy4uL2xpYi9iYXNlLWNvbW1hbmQuanNcIjtcbmltcG9ydCB7IGFwaUNsaWVudCB9IGZyb20gXCIuLi8uLi9saWIvYXBpLWNsaWVudC5qc1wiO1xuaW1wb3J0IHtcbiAgdGFibGUsXG4gIGpzb24sXG4gIGluZm8sXG4gIGZvcm1hdFN0YXR1cyxcbiAgY29sb3JzLFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuXG5pbnRlcmZhY2UgV2ViaG9vayB7XG4gIGlkOiBzdHJpbmc7XG4gIHVybDogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgZXZlbnRzOiBzdHJpbmdbXTtcbiAgaXNfYWN0aXZlOiBib29sZWFuO1xuICBmYWlsdXJlX2NvdW50OiBudW1iZXI7XG4gIGNpcmN1aXRfc3RhdGU6IFwiY2xvc2VkXCIgfCBcIm9wZW5cIiB8IFwiaGFsZl9vcGVuXCI7XG4gIGNyZWF0ZWRfYXQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV2ViaG9va3NMaXN0IGV4dGVuZHMgQXV0aGVudGljYXRlZENvbW1hbmQge1xuICBzdGF0aWMgZGVzY3JpcHRpb24gPSBcIkxpc3QgY29uZmlndXJlZCB3ZWJob29rc1wiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGxpc3RcIixcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGxpc3QgLS1qc29uXCIsXG4gIF07XG5cbiAgc3RhdGljIGZsYWdzID0ge1xuICAgIC4uLkF1dGhlbnRpY2F0ZWRDb21tYW5kLmJhc2VGbGFncyxcbiAgfTtcblxuICBhc3luYyBydW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgd2ViaG9va3MgPSBhd2FpdCBhcGlDbGllbnQuZ2V0PFdlYmhvb2tbXT4oXCIvYXBpL3YxL3dlYmhvb2tzXCIpO1xuXG4gICAgaWYgKGlzSnNvbk1vZGUoKSkge1xuICAgICAganNvbih3ZWJob29rcyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHdlYmhvb2tzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaW5mbyhcIk5vIHdlYmhvb2tzIGNvbmZpZ3VyZWRcIik7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coYCAgQ3JlYXRlIG9uZSB3aXRoICR7Y29sb3JzLmNvZGUoXCJzZW5kbHkgd2ViaG9va3MgY3JlYXRlXCIpfWApO1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGAgIE9yIHRlc3QgbG9jYWxseSB3aXRoICR7Y29sb3JzLmNvZGUoXCJzZW5kbHkgd2ViaG9va3MgbGlzdGVuXCIpfWAsXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnNvbGUubG9nKCk7XG5cbiAgICB0YWJsZSh3ZWJob29rcywgW1xuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiSURcIixcbiAgICAgICAga2V5OiBcImlkXCIsXG4gICAgICAgIHdpZHRoOiAxOCxcbiAgICAgICAgZm9ybWF0dGVyOiAodikgPT4gY29sb3JzLmRpbShTdHJpbmcodikuc2xpY2UoMCwgMTUpICsgXCIuLi5cIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiVVJMXCIsXG4gICAgICAgIGtleTogXCJ1cmxcIixcbiAgICAgICAgd2lkdGg6IDM1LFxuICAgICAgICBmb3JtYXR0ZXI6ICh2KSA9PiB7XG4gICAgICAgICAgY29uc3QgdXJsID0gU3RyaW5nKHYpO1xuICAgICAgICAgIHJldHVybiB1cmwubGVuZ3RoID4gMzIgPyB1cmwuc2xpY2UoMCwgMzIpICsgXCIuLi5cIiA6IHVybDtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJFdmVudHNcIixcbiAgICAgICAga2V5OiBcImV2ZW50c1wiLFxuICAgICAgICB3aWR0aDogMTUsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBjb25zdCBldmVudHMgPSB2IGFzIHN0cmluZ1tdO1xuICAgICAgICAgIHJldHVybiBldmVudHMubGVuZ3RoID4gMlxuICAgICAgICAgICAgPyBgJHtldmVudHMubGVuZ3RofSBldmVudHNgXG4gICAgICAgICAgICA6IGV2ZW50cy5qb2luKFwiLCBcIikucmVwbGFjZSgvbWVzc2FnZVxcLi9nLCBcIlwiKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGhlYWRlcjogXCJTdGF0dXNcIixcbiAgICAgICAga2V5OiBcImlzX2FjdGl2ZVwiLFxuICAgICAgICB3aWR0aDogMTAsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+XG4gICAgICAgICAgdiA/IGNvbG9ycy5zdWNjZXNzKFwiYWN0aXZlXCIpIDogY29sb3JzLmVycm9yKFwiZGlzYWJsZWRcIiksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBoZWFkZXI6IFwiQ2lyY3VpdFwiLFxuICAgICAgICBrZXk6IFwiY2lyY3VpdF9zdGF0ZVwiLFxuICAgICAgICB3aWR0aDogMTAsXG4gICAgICAgIGZvcm1hdHRlcjogKHYpID0+IHtcbiAgICAgICAgICBzd2l0Y2ggKHYpIHtcbiAgICAgICAgICAgIGNhc2UgXCJjbG9zZWRcIjpcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy5zdWNjZXNzKFwiY2xvc2VkXCIpO1xuICAgICAgICAgICAgY2FzZSBcIm9wZW5cIjpcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbG9ycy5lcnJvcihcIm9wZW5cIik7XG4gICAgICAgICAgICBjYXNlIFwiaGFsZl9vcGVuXCI6XG4gICAgICAgICAgICAgIHJldHVybiBjb2xvcnMud2FybmluZyhcImhhbGZfb3BlblwiKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgIHJldHVybiBTdHJpbmcodik7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICBdKTtcbiAgfVxufVxuIl19
|
|
@@ -2,7 +2,6 @@ import { Flags } from "@oclif/core";
|
|
|
2
2
|
import { AuthenticatedCommand } from "../../lib/base-command.js";
|
|
3
3
|
import { apiClient } from "../../lib/api-client.js";
|
|
4
4
|
import { error, warn, colors, spinner, } from "../../lib/output.js";
|
|
5
|
-
import { getConfigValue } from "../../lib/config.js";
|
|
6
5
|
import localtunnel from "localtunnel";
|
|
7
6
|
export default class WebhooksListen extends AuthenticatedCommand {
|
|
8
7
|
static description = "Listen for webhooks locally (like Stripe CLI). Creates a secure tunnel to forward events to your local server.";
|
|
@@ -91,15 +90,7 @@ export default class WebhooksListen extends AuthenticatedCommand {
|
|
|
91
90
|
}
|
|
92
91
|
}
|
|
93
92
|
async pollEvents(forwardUrl, secret) {
|
|
94
|
-
|
|
95
|
-
// Set up SSE connection for real-time events
|
|
96
|
-
const eventSource = new EventSource(`${baseUrl}/api/cli/webhooks/events?webhookId=${this.webhookId}`, {
|
|
97
|
-
// @ts-ignore - headers not in type but supported
|
|
98
|
-
headers: {
|
|
99
|
-
Authorization: `Bearer ${getConfigValue("apiKey") || getConfigValue("accessToken")}`,
|
|
100
|
-
},
|
|
101
|
-
});
|
|
102
|
-
// Fallback to polling if SSE not available
|
|
93
|
+
// Poll for events at regular intervals
|
|
103
94
|
const pollInterval = setInterval(async () => {
|
|
104
95
|
try {
|
|
105
96
|
const events = await apiClient.get(`/api/cli/webhooks/events?webhookId=${this.webhookId}&since=${Date.now() - 5000}`);
|
|
@@ -174,7 +165,9 @@ export default class WebhooksListen extends AuthenticatedCommand {
|
|
|
174
165
|
const key = await crypto.subtle.importKey("raw", encoder.encode(secret), { name: "HMAC", hash: "SHA-256" }, false, ["sign"]);
|
|
175
166
|
const signature = await crypto.subtle.sign("HMAC", key, encoder.encode(payload));
|
|
176
167
|
const hashArray = Array.from(new Uint8Array(signature));
|
|
177
|
-
const hashHex = hashArray
|
|
168
|
+
const hashHex = hashArray
|
|
169
|
+
.map((b) => b.toString(16).padStart(2, "0"))
|
|
170
|
+
.join("");
|
|
178
171
|
return `v1=${hashHex}`;
|
|
179
172
|
}
|
|
180
173
|
async cleanup() {
|
|
@@ -193,10 +186,4 @@ export default class WebhooksListen extends AuthenticatedCommand {
|
|
|
193
186
|
}
|
|
194
187
|
}
|
|
195
188
|
}
|
|
196
|
-
// Polyfill EventSource for Node.js if needed
|
|
197
|
-
class EventSource {
|
|
198
|
-
constructor(url, options) {
|
|
199
|
-
// Simple implementation - in production use a proper polyfill
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3dlYmhvb2tzL2xpc3Rlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBRUwsS0FBSyxFQUVMLElBQUksRUFDSixNQUFNLEVBR04sT0FBTyxHQUdSLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sV0FBVyxNQUFNLGFBQWEsQ0FBQztBQVN0QyxNQUFNLENBQUMsT0FBTyxPQUFPLGNBQWUsU0FBUSxvQkFBb0I7SUFDOUQsTUFBTSxDQUFDLFdBQVcsR0FDaEIsZ0hBQWdILENBQUM7SUFFbkgsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQixtQ0FBbUM7UUFDbkMsMkVBQTJFO1FBQzNFLDZFQUE2RTtLQUM5RSxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztRQUNqQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNwQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSxnQ0FBZ0M7WUFDN0MsT0FBTyxFQUFFLCtCQUErQjtTQUN6QyxDQUFDO1FBQ0YsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDbkIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsOENBQThDO1lBQzNELE9BQU8sRUFBRSwrREFBK0Q7U0FDekUsQ0FBQztRQUNGLElBQUksRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ2xCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FB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UUFDbkIsa0JBQWtCO1FBQ2xCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdEIsQ0FBQztRQUVELDZCQUE2QjtRQUM3QixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUM7Z0JBQ0gsTUFBTSxTQUFTLENBQUMsTUFBTSxDQUFDLDRCQUE0QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztZQUN2RSxDQUFDO1lBQUMsTUFBTSxDQUFDO2dCQUNQLHdCQUF3QjtZQUMxQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7O0FBR0gsNkNBQTZDO0FBQzdDLE1BQU0sV0FBVztJQUNmLFlBQVksR0FBVyxFQUFFLE9BQWE7UUFDcEMsOERBQThEO0lBQ2hFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZsYWdzIH0gZnJvbSBcIkBvY2xpZi9jb3JlXCI7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi8uLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIHN1Y2Nlc3MsXG4gIGVycm9yLFxuICBpbmZvLFxuICB3YXJuLFxuICBjb2xvcnMsXG4gIGZvcm1hdFN0YXR1cyxcbiAgZm9ybWF0RGF0ZSxcbiAgc3Bpbm5lcixcbiAganNvbiBhcyBqc29uT3V0cHV0LFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuaW1wb3J0IHsgZ2V0Q29uZmlnVmFsdWUgfSBmcm9tIFwiLi4vLi4vbGliL2NvbmZpZy5qc1wiO1xuaW1wb3J0IGxvY2FsdHVubmVsIGZyb20gXCJsb2NhbHR1bm5lbFwiO1xuXG5pbnRlcmZhY2UgV2ViaG9va0V2ZW50IHtcbiAgaWQ6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgY3JlYXRlZDogbnVtYmVyO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXZWJob29rc0xpc3RlbiBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID1cbiAgICBcIkxpc3RlbiBmb3Igd2ViaG9va3MgbG9jYWxseSAobGlrZSBTdHJpcGUgQ0xJKS4gQ3JlYXRlcyBhIHNlY3VyZSB0dW5uZWwgdG8gZm9yd2FyZCBldmVudHMgdG8geW91ciBsb2NhbCBzZXJ2ZXIuXCI7XG5cbiAgc3RhdGljIGV4YW1wbGVzID0gW1xuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3MgbGlzdGVuXCIsXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyBsaXN0ZW4gLS1mb3J3YXJkIGh0dHA6Ly9sb2NhbGhvc3Q6MzAwMC93ZWJob29rXCIsXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyBsaXN0ZW4gLS1ldmVudHMgbWVzc2FnZS5kZWxpdmVyZWQsbWVzc2FnZS5mYWlsZWRcIixcbiAgXTtcblxuICBzdGF0aWMgZmxhZ3MgPSB7XG4gICAgLi4uQXV0aGVudGljYXRlZENvbW1hbmQuYmFzZUZsYWdzLFxuICAgIGZvcndhcmQ6IEZsYWdzLnN0cmluZyh7XG4gICAgICBjaGFyOiBcImZcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkxvY2FsIFVSTCB0byBmb3J3YXJkIGV2ZW50cyB0b1wiLFxuICAgICAgZGVmYXVsdDogXCJodHRwOi8vbG9jYWxob3N0OjMwMDAvd2ViaG9va1wiLFxuICAgIH0pLFxuICAgIGV2ZW50czogRmxhZ3Muc3RyaW5nKHtcbiAgICAgIGNoYXI6IFwiZVwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiQ29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgZXZlbnRzIHRvIGxpc3RlbiBmb3JcIixcbiAgICAgIGRlZmF1bHQ6IFwibWVzc2FnZS5zZW50LG1lc3NhZ2UuZGVsaXZlcmVkLG1lc3NhZ2UuZmFpbGVkLG1lc3NhZ2UuYm91bmNlZFwiLFxuICAgIH0pLFxuICAgIHBvcnQ6IEZsYWdzLmludGVnZXIoe1xuICAgICAgY2hhcjogXCJwXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJMb2NhbCBwb3J0IGZvciB0aGUgdHVubmVsIChhdXRvLWRldGVjdGVkIGZyb20gZm9yd2FyZCBVUkwgaWYgbm90IHNwZWNpZmllZClcIixcbiAgICB9KSxcbiAgfTtcblxuICBwcml2YXRlIHR1bm5lbDogbG9jYWx0dW5uZWwuVHVubmVsIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgd2ViaG9va0lkOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBhc3luYyBydW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgeyBmbGFncyB9ID0gYXdhaXQgdGhpcy5wYXJzZShXZWJob29rc0xpc3Rlbik7XG5cbiAgICBjb25zdCBmb3J3YXJkVXJsID0gbmV3IFVSTChmbGFncy5mb3J3YXJkKTtcbiAgICBjb25zdCBsb2NhbFBvcnQgPSBmbGFncy5wb3J0IHx8IHBhcnNlSW50KGZvcndhcmRVcmwucG9ydCkgfHwgMzAwMDtcbiAgICBjb25zdCBldmVudHMgPSBmbGFncy5ldmVudHMuc3BsaXQoXCIsXCIpLm1hcCgoZSkgPT4gZS50cmltKCkpO1xuXG4gICAgY29uc3Qgc3BpbiA9IHNwaW5uZXIoXCJTdGFydGluZyB3ZWJob29rIGxpc3RlbmVyLi4uXCIpO1xuICAgIHNwaW4uc3RhcnQoKTtcblxuICAgIHRyeSB7XG4gICAgICAvLyBDcmVhdGUgbG9jYWx0dW5uZWxcbiAgICAgIHRoaXMudHVubmVsID0gYXdhaXQgbG9jYWx0dW5uZWwoe1xuICAgICAgICBwb3J0OiBsb2NhbFBvcnQsXG4gICAgICAgIHN1YmRvbWFpbjogYHNlbmRseS0ke0RhdGUubm93KCkudG9TdHJpbmcoMzYpfWAsXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgdHVubmVsVXJsID0gdGhpcy50dW5uZWwudXJsO1xuICAgICAgc3Bpbi5zdWNjZWVkKFwiVHVubmVsIGVzdGFibGlzaGVkXCIpO1xuXG4gICAgICAvLyBSZWdpc3RlciB0ZW1wb3Jhcnkgd2ViaG9vayB3aXRoIFNlbmRseVxuICAgICAgY29uc3Qgd2ViaG9va1Jlc3BvbnNlID0gYXdhaXQgYXBpQ2xpZW50LnBvc3Q8e1xuICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICBzZWNyZXQ6IHN0cmluZztcbiAgICAgIH0+KFwiL2FwaS9jbGkvd2ViaG9va3MvbGlzdGVuXCIsIHtcbiAgICAgICAgdXJsOiBgJHt0dW5uZWxVcmx9L2NsaS13ZWJob29rYCxcbiAgICAgICAgZXZlbnRzLFxuICAgICAgICBmb3J3YXJkVXJsOiBmbGFncy5mb3J3YXJkLFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMud2ViaG9va0lkID0gd2ViaG9va1Jlc3BvbnNlLmlkO1xuICAgICAgY29uc3Qgc2VjcmV0ID0gd2ViaG9va1Jlc3BvbnNlLnNlY3JldDtcblxuICAgICAgLy8gRGlzcGxheSBjb25uZWN0aW9uIGluZm9cbiAgICAgIGNvbnNvbGUubG9nKCk7XG4gICAgICBjb25zb2xlLmxvZyhjb2xvcnMuYm9sZChjb2xvcnMucHJpbWFyeShcIldlYmhvb2sgbGlzdGVuZXIgcmVhZHkhXCIpKSk7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coYCAgJHtjb2xvcnMuZGltKFwiVHVubmVsIFVSTDpcIil9ICAgICAke2NvbG9ycy5jb2RlKHR1bm5lbFVybCl9YCk7XG4gICAgICBjb25zb2xlLmxvZyhgICAke2NvbG9ycy5kaW0oXCJGb3J3YXJkaW5nIHRvOlwiKX0gJHtjb2xvcnMuY29kZShmbGFncy5mb3J3YXJkKX1gKTtcbiAgICAgIGNvbnNvbGUubG9nKGAgICR7Y29sb3JzLmRpbShcIkV2ZW50czpcIil9ICAgICAgICAke2V2ZW50cy5qb2luKFwiLCBcIil9YCk7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coYCAgJHtjb2xvcnMuZGltKFwiV2ViaG9vayBTZWNyZXQ6XCIpfWApO1xuICAgICAgY29uc29sZS5sb2coYCAgJHtjb2xvcnMucHJpbWFyeShzZWNyZXQpfWApO1xuICAgICAgY29uc29sZS5sb2coKTtcbiAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5kaW0oXCJVc2UgdGhpcyBzZWNyZXQgdG8gdmVyaWZ5IHdlYmhvb2sgc2lnbmF0dXJlcyBpbiB5b3VyIGFwcC5cIikpO1xuICAgICAgY29uc29sZS5sb2coKTtcbiAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5ib2xkKFwiV2FpdGluZyBmb3IgZXZlbnRzLi4uXCIpKTtcbiAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5kaW0oXCLilIBcIi5yZXBlYXQoNjApKSk7XG4gICAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgICAvLyBTZXQgdXAgZXZlbnQgZm9yd2FyZGluZ1xuICAgICAgdGhpcy50dW5uZWwub24oXCJyZXF1ZXN0XCIsIChpbmZvKSA9PiB7XG4gICAgICAgIC8vIFRoaXMgaXMganVzdCBmb3IgbG9nZ2luZyAtIGFjdHVhbCBmb3J3YXJkaW5nIGhhcHBlbnMgc2VydmVyLXNpZGVcbiAgICAgIH0pO1xuXG4gICAgICAvLyBIYW5kbGUgdHVubmVsIGNsb3NlXG4gICAgICB0aGlzLnR1bm5lbC5vbihcImNsb3NlXCIsICgpID0+IHtcbiAgICAgICAgd2FybihcIlR1bm5lbCBjbG9zZWRcIik7XG4gICAgICAgIHRoaXMuY2xlYW51cCgpO1xuICAgICAgICBwcm9jZXNzLmV4aXQoMCk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy50dW5uZWwub24oXCJlcnJvclwiLCAoZXJyKSA9PiB7XG4gICAgICAgIGVycm9yKGBUdW5uZWwgZXJyb3I6ICR7ZXJyLm1lc3NhZ2V9YCk7XG4gICAgICB9KTtcblxuICAgICAgLy8gUG9sbCBmb3IgZXZlbnRzIGFuZCBkaXNwbGF5IHRoZW1cbiAgICAgIGF3YWl0IHRoaXMucG9sbEV2ZW50cyhmbGFncy5mb3J3YXJkLCBzZWNyZXQpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgc3Bpbi5mYWlsKFwiRmFpbGVkIHRvIHN0YXJ0IGxpc3RlbmVyXCIpO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcG9sbEV2ZW50cyhmb3J3YXJkVXJsOiBzdHJpbmcsIHNlY3JldDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgYmFzZVVybCA9IGdldENvbmZpZ1ZhbHVlKFwiYmFzZVVybFwiKSB8fCBcImh0dHBzOi8vc2VuZGx5LmxpdmVcIjtcblxuICAgIC8vIFNldCB1cCBTU0UgY29ubmVjdGlvbiBmb3IgcmVhbC10aW1lIGV2ZW50c1xuICAgIGNvbnN0IGV2ZW50U291cmNlID0gbmV3IEV2ZW50U291cmNlKFxuICAgICAgYCR7YmFzZVVybH0vYXBpL2NsaS93ZWJob29rcy9ldmVudHM/d2ViaG9va0lkPSR7dGhpcy53ZWJob29rSWR9YCxcbiAgICAgIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZSAtIGhlYWRlcnMgbm90IGluIHR5cGUgYnV0IHN1cHBvcnRlZFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke2dldENvbmZpZ1ZhbHVlKFwiYXBpS2V5XCIpIHx8IGdldENvbmZpZ1ZhbHVlKFwiYWNjZXNzVG9rZW5cIil9YCxcbiAgICAgICAgfSxcbiAgICAgIH1cbiAgICApO1xuXG4gICAgLy8gRmFsbGJhY2sgdG8gcG9sbGluZyBpZiBTU0Ugbm90IGF2YWlsYWJsZVxuICAgIGNvbnN0IHBvbGxJbnRlcnZhbCA9IHNldEludGVydmFsKGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGV2ZW50cyA9IGF3YWl0IGFwaUNsaWVudC5nZXQ8V2ViaG9va0V2ZW50W10+KFxuICAgICAgICAgIGAvYXBpL2NsaS93ZWJob29rcy9ldmVudHM/d2ViaG9va0lkPSR7dGhpcy53ZWJob29rSWR9JnNpbmNlPSR7RGF0ZS5ub3coKSAtIDUwMDB9YFxuICAgICAgICApO1xuXG4gICAgICAgIGZvciAoY29uc3QgZXZlbnQgb2YgZXZlbnRzKSB7XG4gICAgICAgICAgdGhpcy5kaXNwbGF5RXZlbnQoZXZlbnQpO1xuICAgICAgICAgIGF3YWl0IHRoaXMuZm9yd2FyZEV2ZW50KGZvcndhcmRVcmwsIGV2ZW50LCBzZWNyZXQpO1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgLy8gSWdub3JlIHBvbGxpbmcgZXJyb3JzXG4gICAgICB9XG4gICAgfSwgMjAwMCk7XG5cbiAgICAvLyBIYW5kbGUgZ3JhY2VmdWwgc2h1dGRvd25cbiAgICBjb25zdCBjbGVhbnVwID0gKCkgPT4ge1xuICAgICAgY2xlYXJJbnRlcnZhbChwb2xsSW50ZXJ2YWwpO1xuICAgICAgdGhpcy5jbGVhbnVwKCk7XG4gICAgICBwcm9jZXNzLmV4aXQoMCk7XG4gICAgfTtcblxuICAgIHByb2Nlc3Mub24oXCJTSUdJTlRcIiwgY2xlYW51cCk7XG4gICAgcHJvY2Vzcy5vbihcIlNJR1RFUk1cIiwgY2xlYW51cCk7XG5cbiAgICAvLyBLZWVwIHByb2Nlc3MgYWxpdmVcbiAgICBhd2FpdCBuZXcgUHJvbWlzZSgoKSA9PiB7fSk7XG4gIH1cblxuICBwcml2YXRlIGRpc3BsYXlFdmVudChldmVudDogV2ViaG9va0V2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgdGltZXN0YW1wID0gbmV3IERhdGUoZXZlbnQuY3JlYXRlZCAqIDEwMDApLnRvTG9jYWxlVGltZVN0cmluZygpO1xuICAgIGNvbnN0IGV2ZW50VHlwZSA9IGV2ZW50LnR5cGU7XG5cbiAgICBsZXQgc3RhdHVzQ29sb3IgPSBjb2xvcnMuaW5mbztcbiAgICBpZiAoZXZlbnRUeXBlLmluY2x1ZGVzKFwiZGVsaXZlcmVkXCIpKSBzdGF0dXNDb2xvciA9IGNvbG9ycy5zdWNjZXNzO1xuICAgIGlmIChldmVudFR5cGUuaW5jbHVkZXMoXCJmYWlsZWRcIikpIHN0YXR1c0NvbG9yID0gY29sb3JzLmVycm9yO1xuXG4gICAgY29uc29sZS5sb2coXG4gICAgICBgJHtjb2xvcnMuZGltKHRpbWVzdGFtcCl9ICR7c3RhdHVzQ29sb3IoXCLihpJcIil9ICR7Y29sb3JzLmJvbGQoZXZlbnRUeXBlKX1gXG4gICAgKTtcblxuICAgIGlmIChldmVudC5kYXRhKSB7XG4gICAgICBjb25zdCBtZXNzYWdlSWQgPSAoZXZlbnQuZGF0YSBhcyBhbnkpLm1lc3NhZ2VfaWQgfHwgKGV2ZW50LmRhdGEgYXMgYW55KS5pZDtcbiAgICAgIGNvbnN0IHRvID0gKGV2ZW50LmRhdGEgYXMgYW55KS50bztcbiAgICAgIGlmIChtZXNzYWdlSWQpIHtcbiAgICAgICAgY29uc29sZS5sb2coYCAgJHtjb2xvcnMuZGltKFwibWVzc2FnZV9pZDpcIil9ICR7bWVzc2FnZUlkfWApO1xuICAgICAgfVxuICAgICAgaWYgKHRvKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGAgICR7Y29sb3JzLmRpbShcInRvOlwiKX0gJHt0b31gKTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc29sZS5sb2coKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZm9yd2FyZEV2ZW50KFxuICAgIGZvcndhcmRVcmw6IHN0cmluZyxcbiAgICBldmVudDogV2ViaG9va0V2ZW50LFxuICAgIHNlY3JldDogc3RyaW5nXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwYXlsb2FkID0gSlNPTi5zdHJpbmdpZnkoZXZlbnQpO1xuICAgICAgY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgdGhpcy5nZW5lcmF0ZVNpZ25hdHVyZShwYXlsb2FkLCBzZWNyZXQpO1xuXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKGZvcndhcmRVcmwsIHtcbiAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICAgIFwiWC1TZW5kbHktU2lnbmF0dXJlXCI6IHNpZ25hdHVyZSxcbiAgICAgICAgICBcIlgtU2VuZGx5LUV2ZW50XCI6IGV2ZW50LnR5cGUsXG4gICAgICAgIH0sXG4gICAgICAgIGJvZHk6IHBheWxvYWQsXG4gICAgICB9KTtcblxuICAgICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGAgICR7Y29sb3JzLnN1Y2Nlc3MoXCLinJNcIil9IEZvcndhcmRlZCB0byAke2ZvcndhcmRVcmx9ICgke3Jlc3BvbnNlLnN0YXR1c30pYFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgYCAgJHtjb2xvcnMuZXJyb3IoXCLinJdcIil9IEZvcndhcmQgZmFpbGVkICgke3Jlc3BvbnNlLnN0YXR1c30pYFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGAgICR7Y29sb3JzLmVycm9yKFwi4pyXXCIpfSBGb3J3YXJkIGVycm9yOiAkeyhlcnIgYXMgRXJyb3IpLm1lc3NhZ2V9YFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc29sZS5sb2coKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2VuZXJhdGVTaWduYXR1cmUoXG4gICAgcGF5bG9hZDogc3RyaW5nLFxuICAgIHNlY3JldDogc3RyaW5nXG4gICk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgZW5jb2RlciA9IG5ldyBUZXh0RW5jb2RlcigpO1xuICAgIGNvbnN0IGtleSA9IGF3YWl0IGNyeXB0by5zdWJ0bGUuaW1wb3J0S2V5KFxuICAgICAgXCJyYXdcIixcbiAgICAgIGVuY29kZXIuZW5jb2RlKHNlY3JldCksXG4gICAgICB7IG5hbWU6IFwiSE1BQ1wiLCBoYXNoOiBcIlNIQS0yNTZcIiB9LFxuICAgICAgZmFsc2UsXG4gICAgICBbXCJzaWduXCJdXG4gICAgKTtcbiAgICBjb25zdCBzaWduYXR1cmUgPSBhd2FpdCBjcnlwdG8uc3VidGxlLnNpZ24oXG4gICAgICBcIkhNQUNcIixcbiAgICAgIGtleSxcbiAgICAgIGVuY29kZXIuZW5jb2RlKHBheWxvYWQpXG4gICAgKTtcbiAgICBjb25zdCBoYXNoQXJyYXkgPSBBcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KHNpZ25hdHVyZSkpO1xuICAgIGNvbnN0IGhhc2hIZXggPSBoYXNoQXJyYXkubWFwKChiKSA9PiBiLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCBcIjBcIikpLmpvaW4oXCJcIik7XG4gICAgcmV0dXJuIGB2MT0ke2hhc2hIZXh9YDtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgY2xlYW51cCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBDbGVhbiB1cCB0dW5uZWxcbiAgICBpZiAodGhpcy50dW5uZWwpIHtcbiAgICAgIHRoaXMudHVubmVsLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgLy8gQ2xlYW4gdXAgdGVtcG9yYXJ5IHdlYmhvb2tcbiAgICBpZiAodGhpcy53ZWJob29rSWQpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGFwaUNsaWVudC5kZWxldGUoYC9hcGkvY2xpL3dlYmhvb2tzL2xpc3Rlbi8ke3RoaXMud2ViaG9va0lkfWApO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIC8vIElnbm9yZSBjbGVhbnVwIGVycm9yc1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBQb2x5ZmlsbCBFdmVudFNvdXJjZSBmb3IgTm9kZS5qcyBpZiBuZWVkZWRcbmNsYXNzIEV2ZW50U291cmNlIHtcbiAgY29uc3RydWN0b3IodXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBhbnkpIHtcbiAgICAvLyBTaW1wbGUgaW1wbGVtZW50YXRpb24gLSBpbiBwcm9kdWN0aW9uIHVzZSBhIHByb3BlciBwb2x5ZmlsbFxuICB9XG59XG4iXX0=
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdGVuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3dlYmhvb2tzL2xpc3Rlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBRUwsS0FBSyxFQUVMLElBQUksRUFDSixNQUFNLEVBR04sT0FBTyxHQUdSLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxXQUFXLE1BQU0sYUFBYSxDQUFDO0FBU3RDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sY0FBZSxTQUFRLG9CQUFvQjtJQUM5RCxNQUFNLENBQUMsV0FBVyxHQUNoQixnSEFBZ0gsQ0FBQztJQUVuSCxNQUFNLENBQUMsUUFBUSxHQUFHO1FBQ2hCLG1DQUFtQztRQUNuQywyRUFBMkU7UUFDM0UsNkVBQTZFO0tBQzlFLENBQUM7SUFFRixNQUFNLENBQUMsS0FBSyxHQUFHO1FBQ2IsR0FBRyxvQkFBb0IsQ0FBQyxTQUFTO1FBQ2pDLE9BQU8sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3BCLElBQUksRUFBRSxHQUFHO1lBQ1QsV0FBVyxFQUFFLGdDQUFnQztZQUM3QyxPQUFPLEVBQUUsK0JBQStCO1NBQ3pDLENBQUM7UUFDRixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNuQixJQUFJLEVBQUUsR0FBRztZQUNULFdBQVcsRUFBRSw4Q0FBOEM7WUFDM0QsT0FBTyxFQUFFLCtEQUErRDtTQUN6RSxDQUFDO1FBQ0YsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDbEIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQ1QsNkVBQTZFO1NBQ2hGLENBQUM7S0FDSCxDQUFDO0lBRU0sTUFB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Q29udGVudCI6WyJpbXBvcnQgeyBGbGFncyB9IGZyb20gXCJAb2NsaWYvY29yZVwiO1xuaW1wb3J0IHsgQXV0aGVudGljYXRlZENvbW1hbmQgfSBmcm9tIFwiLi4vLi4vbGliL2Jhc2UtY29tbWFuZC5qc1wiO1xuaW1wb3J0IHsgYXBpQ2xpZW50IH0gZnJvbSBcIi4uLy4uL2xpYi9hcGktY2xpZW50LmpzXCI7XG5pbXBvcnQge1xuICBzdWNjZXNzLFxuICBlcnJvcixcbiAgaW5mbyxcbiAgd2FybixcbiAgY29sb3JzLFxuICBmb3JtYXRTdGF0dXMsXG4gIGZvcm1hdERhdGUsXG4gIHNwaW5uZXIsXG4gIGpzb24gYXMganNvbk91dHB1dCxcbiAgaXNKc29uTW9kZSxcbn0gZnJvbSBcIi4uLy4uL2xpYi9vdXRwdXQuanNcIjtcbmltcG9ydCB7IGdldENvbmZpZ1ZhbHVlIH0gZnJvbSBcIi4uLy4uL2xpYi9jb25maWcuanNcIjtcbmltcG9ydCBsb2NhbHR1bm5lbCBmcm9tIFwibG9jYWx0dW5uZWxcIjtcblxuaW50ZXJmYWNlIFdlYmhvb2tFdmVudCB7XG4gIGlkOiBzdHJpbmc7XG4gIHR5cGU6IHN0cmluZztcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIGNyZWF0ZWQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV2ViaG9va3NMaXN0ZW4gZXh0ZW5kcyBBdXRoZW50aWNhdGVkQ29tbWFuZCB7XG4gIHN0YXRpYyBkZXNjcmlwdGlvbiA9XG4gICAgXCJMaXN0ZW4gZm9yIHdlYmhvb2tzIGxvY2FsbHkgKGxpa2UgU3RyaXBlIENMSSkuIENyZWF0ZXMgYSBzZWN1cmUgdHVubmVsIHRvIGZvcndhcmQgZXZlbnRzIHRvIHlvdXIgbG9jYWwgc2VydmVyLlwiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIGxpc3RlblwiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3MgbGlzdGVuIC0tZm9yd2FyZCBodHRwOi8vbG9jYWxob3N0OjMwMDAvd2ViaG9va1wiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3MgbGlzdGVuIC0tZXZlbnRzIG1lc3NhZ2UuZGVsaXZlcmVkLG1lc3NhZ2UuZmFpbGVkXCIsXG4gIF07XG5cbiAgc3RhdGljIGZsYWdzID0ge1xuICAgIC4uLkF1dGhlbnRpY2F0ZWRDb21tYW5kLmJhc2VGbGFncyxcbiAgICBmb3J3YXJkOiBGbGFncy5zdHJpbmcoe1xuICAgICAgY2hhcjogXCJmXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJMb2NhbCBVUkwgdG8gZm9yd2FyZCBldmVudHMgdG9cIixcbiAgICAgIGRlZmF1bHQ6IFwiaHR0cDovL2xvY2FsaG9zdDozMDAwL3dlYmhvb2tcIixcbiAgICB9KSxcbiAgICBldmVudHM6IEZsYWdzLnN0cmluZyh7XG4gICAgICBjaGFyOiBcImVcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGV2ZW50cyB0byBsaXN0ZW4gZm9yXCIsXG4gICAgICBkZWZhdWx0OiBcIm1lc3NhZ2Uuc2VudCxtZXNzYWdlLmRlbGl2ZXJlZCxtZXNzYWdlLmZhaWxlZCxtZXNzYWdlLmJvdW5jZWRcIixcbiAgICB9KSxcbiAgICBwb3J0OiBGbGFncy5pbnRlZ2VyKHtcbiAgICAgIGNoYXI6IFwicFwiLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgIFwiTG9jYWwgcG9ydCBmb3IgdGhlIHR1bm5lbCAoYXV0by1kZXRlY3RlZCBmcm9tIGZvcndhcmQgVVJMIGlmIG5vdCBzcGVjaWZpZWQpXCIsXG4gICAgfSksXG4gIH07XG5cbiAgcHJpdmF0ZSB0dW5uZWw6IGxvY2FsdHVubmVsLlR1bm5lbCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIHdlYmhvb2tJZDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgZmxhZ3MgfSA9IGF3YWl0IHRoaXMucGFyc2UoV2ViaG9va3NMaXN0ZW4pO1xuXG4gICAgY29uc3QgZm9yd2FyZFVybCA9IG5ldyBVUkwoZmxhZ3MuZm9yd2FyZCk7XG4gICAgY29uc3QgbG9jYWxQb3J0ID0gZmxhZ3MucG9ydCB8fCBwYXJzZUludChmb3J3YXJkVXJsLnBvcnQpIHx8IDMwMDA7XG4gICAgY29uc3QgZXZlbnRzID0gZmxhZ3MuZXZlbnRzLnNwbGl0KFwiLFwiKS5tYXAoKGUpID0+IGUudHJpbSgpKTtcblxuICAgIGNvbnN0IHNwaW4gPSBzcGlubmVyKFwiU3RhcnRpbmcgd2ViaG9vayBsaXN0ZW5lci4uLlwiKTtcbiAgICBzcGluLnN0YXJ0KCk7XG5cbiAgICB0cnkge1xuICAgICAgLy8gQ3JlYXRlIGxvY2FsdHVubmVsXG4gICAgICB0aGlzLnR1bm5lbCA9IGF3YWl0IGxvY2FsdHVubmVsKHtcbiAgICAgICAgcG9ydDogbG9jYWxQb3J0LFxuICAgICAgICBzdWJkb21haW46IGBzZW5kbHktJHtEYXRlLm5vdygpLnRvU3RyaW5nKDM2KX1gLFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHR1bm5lbFVybCA9IHRoaXMudHVubmVsLnVybDtcbiAgICAgIHNwaW4uc3VjY2VlZChcIlR1bm5lbCBlc3RhYmxpc2hlZFwiKTtcblxuICAgICAgLy8gUmVnaXN0ZXIgdGVtcG9yYXJ5IHdlYmhvb2sgd2l0aCBTZW5kbHlcbiAgICAgIGNvbnN0IHdlYmhvb2tSZXNwb25zZSA9IGF3YWl0IGFwaUNsaWVudC5wb3N0PHtcbiAgICAgICAgaWQ6IHN0cmluZztcbiAgICAgICAgc2VjcmV0OiBzdHJpbmc7XG4gICAgICB9PihcIi9hcGkvY2xpL3dlYmhvb2tzL2xpc3RlblwiLCB7XG4gICAgICAgIHVybDogYCR7dHVubmVsVXJsfS9jbGktd2ViaG9va2AsXG4gICAgICAgIGV2ZW50cyxcbiAgICAgICAgZm9yd2FyZFVybDogZmxhZ3MuZm9yd2FyZCxcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLndlYmhvb2tJZCA9IHdlYmhvb2tSZXNwb25zZS5pZDtcbiAgICAgIGNvbnN0IHNlY3JldCA9IHdlYmhvb2tSZXNwb25zZS5zZWNyZXQ7XG5cbiAgICAgIC8vIERpc3BsYXkgY29ubmVjdGlvbiBpbmZvXG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coY29sb3JzLmJvbGQoY29sb3JzLnByaW1hcnkoXCJXZWJob29rIGxpc3RlbmVyIHJlYWR5IVwiKSkpO1xuICAgICAgY29uc29sZS5sb2coKTtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgICAke2NvbG9ycy5kaW0oXCJUdW5uZWwgVVJMOlwiKX0gICAgICR7Y29sb3JzLmNvZGUodHVubmVsVXJsKX1gLFxuICAgICAgKTtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBgICAke2NvbG9ycy5kaW0oXCJGb3J3YXJkaW5nIHRvOlwiKX0gJHtjb2xvcnMuY29kZShmbGFncy5mb3J3YXJkKX1gLFxuICAgICAgKTtcbiAgICAgIGNvbnNvbGUubG9nKGAgICR7Y29sb3JzLmRpbShcIkV2ZW50czpcIil9ICAgICAgICAke2V2ZW50cy5qb2luKFwiLCBcIil9YCk7XG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgY29uc29sZS5sb2coYCAgJHtjb2xvcnMuZGltKFwiV2ViaG9vayBTZWNyZXQ6XCIpfWApO1xuICAgICAgY29uc29sZS5sb2coYCAgJHtjb2xvcnMucHJpbWFyeShzZWNyZXQpfWApO1xuICAgICAgY29uc29sZS5sb2coKTtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBjb2xvcnMuZGltKFwiVXNlIHRoaXMgc2VjcmV0IHRvIHZlcmlmeSB3ZWJob29rIHNpZ25hdHVyZXMgaW4geW91ciBhcHAuXCIpLFxuICAgICAgKTtcbiAgICAgIGNvbnNvbGUubG9nKCk7XG4gICAgICBjb25zb2xlLmxvZyhjb2xvcnMuYm9sZChcIldhaXRpbmcgZm9yIGV2ZW50cy4uLlwiKSk7XG4gICAgICBjb25zb2xlLmxvZyhjb2xvcnMuZGltKFwi4pSAXCIucmVwZWF0KDYwKSkpO1xuICAgICAgY29uc29sZS5sb2coKTtcblxuICAgICAgLy8gU2V0IHVwIGV2ZW50IGZvcndhcmRpbmdcbiAgICAgIHRoaXMudHVubmVsLm9uKFwicmVxdWVzdFwiLCAoaW5mbykgPT4ge1xuICAgICAgICAvLyBUaGlzIGlzIGp1c3QgZm9yIGxvZ2dpbmcgLSBhY3R1YWwgZm9yd2FyZGluZyBoYXBwZW5zIHNlcnZlci1zaWRlXG4gICAgICB9KTtcblxuICAgICAgLy8gSGFuZGxlIHR1bm5lbCBjbG9zZVxuICAgICAgdGhpcy50dW5uZWwub24oXCJjbG9zZVwiLCAoKSA9PiB7XG4gICAgICAgIHdhcm4oXCJUdW5uZWwgY2xvc2VkXCIpO1xuICAgICAgICB0aGlzLmNsZWFudXAoKTtcbiAgICAgICAgcHJvY2Vzcy5leGl0KDApO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMudHVubmVsLm9uKFwiZXJyb3JcIiwgKGVycikgPT4ge1xuICAgICAgICBlcnJvcihgVHVubmVsIGVycm9yOiAke2Vyci5tZXNzYWdlfWApO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIFBvbGwgZm9yIGV2ZW50cyBhbmQgZGlzcGxheSB0aGVtXG4gICAgICBhd2FpdCB0aGlzLnBvbGxFdmVudHMoZmxhZ3MuZm9yd2FyZCwgc2VjcmV0KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHNwaW4uZmFpbChcIkZhaWxlZCB0byBzdGFydCBsaXN0ZW5lclwiKTtcbiAgICAgIHRocm93IGVycjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHBvbGxFdmVudHMoZm9yd2FyZFVybDogc3RyaW5nLCBzZWNyZXQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFBvbGwgZm9yIGV2ZW50cyBhdCByZWd1bGFyIGludGVydmFsc1xuICAgIGNvbnN0IHBvbGxJbnRlcnZhbCA9IHNldEludGVydmFsKGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGV2ZW50cyA9IGF3YWl0IGFwaUNsaWVudC5nZXQ8V2ViaG9va0V2ZW50W10+KFxuICAgICAgICAgIGAvYXBpL2NsaS93ZWJob29rcy9ldmVudHM/d2ViaG9va0lkPSR7dGhpcy53ZWJob29rSWR9JnNpbmNlPSR7RGF0ZS5ub3coKSAtIDUwMDB9YCxcbiAgICAgICAgKTtcblxuICAgICAgICBmb3IgKGNvbnN0IGV2ZW50IG9mIGV2ZW50cykge1xuICAgICAgICAgIHRoaXMuZGlzcGxheUV2ZW50KGV2ZW50KTtcbiAgICAgICAgICBhd2FpdCB0aGlzLmZvcndhcmRFdmVudChmb3J3YXJkVXJsLCBldmVudCwgc2VjcmV0KTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIC8vIElnbm9yZSBwb2xsaW5nIGVycm9yc1xuICAgICAgfVxuICAgIH0sIDIwMDApO1xuXG4gICAgLy8gSGFuZGxlIGdyYWNlZnVsIHNodXRkb3duXG4gICAgY29uc3QgY2xlYW51cCA9ICgpID0+IHtcbiAgICAgIGNsZWFySW50ZXJ2YWwocG9sbEludGVydmFsKTtcbiAgICAgIHRoaXMuY2xlYW51cCgpO1xuICAgICAgcHJvY2Vzcy5leGl0KDApO1xuICAgIH07XG5cbiAgICBwcm9jZXNzLm9uKFwiU0lHSU5UXCIsIGNsZWFudXApO1xuICAgIHByb2Nlc3Mub24oXCJTSUdURVJNXCIsIGNsZWFudXApO1xuXG4gICAgLy8gS2VlcCBwcm9jZXNzIGFsaXZlXG4gICAgYXdhaXQgbmV3IFByb21pc2UoKCkgPT4ge30pO1xuICB9XG5cbiAgcHJpdmF0ZSBkaXNwbGF5RXZlbnQoZXZlbnQ6IFdlYmhvb2tFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHRpbWVzdGFtcCA9IG5ldyBEYXRlKGV2ZW50LmNyZWF0ZWQgKiAxMDAwKS50b0xvY2FsZVRpbWVTdHJpbmcoKTtcbiAgICBjb25zdCBldmVudFR5cGUgPSBldmVudC50eXBlO1xuXG4gICAgbGV0IHN0YXR1c0NvbG9yID0gY29sb3JzLmluZm87XG4gICAgaWYgKGV2ZW50VHlwZS5pbmNsdWRlcyhcImRlbGl2ZXJlZFwiKSkgc3RhdHVzQ29sb3IgPSBjb2xvcnMuc3VjY2VzcztcbiAgICBpZiAoZXZlbnRUeXBlLmluY2x1ZGVzKFwiZmFpbGVkXCIpKSBzdGF0dXNDb2xvciA9IGNvbG9ycy5lcnJvcjtcblxuICAgIGNvbnNvbGUubG9nKFxuICAgICAgYCR7Y29sb3JzLmRpbSh0aW1lc3RhbXApfSAke3N0YXR1c0NvbG9yKFwi4oaSXCIpfSAke2NvbG9ycy5ib2xkKGV2ZW50VHlwZSl9YCxcbiAgICApO1xuXG4gICAgaWYgKGV2ZW50LmRhdGEpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2VJZCA9XG4gICAgICAgIChldmVudC5kYXRhIGFzIGFueSkubWVzc2FnZV9pZCB8fCAoZXZlbnQuZGF0YSBhcyBhbnkpLmlkO1xuICAgICAgY29uc3QgdG8gPSAoZXZlbnQuZGF0YSBhcyBhbnkpLnRvO1xuICAgICAgaWYgKG1lc3NhZ2VJZCkge1xuICAgICAgICBjb25zb2xlLmxvZyhgICAke2NvbG9ycy5kaW0oXCJtZXNzYWdlX2lkOlwiKX0gJHttZXNzYWdlSWR9YCk7XG4gICAgICB9XG4gICAgICBpZiAodG8pIHtcbiAgICAgICAgY29uc29sZS5sb2coYCAgJHtjb2xvcnMuZGltKFwidG86XCIpfSAke3RvfWApO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zb2xlLmxvZygpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBmb3J3YXJkRXZlbnQoXG4gICAgZm9yd2FyZFVybDogc3RyaW5nLFxuICAgIGV2ZW50OiBXZWJob29rRXZlbnQsXG4gICAgc2VjcmV0OiBzdHJpbmcsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwYXlsb2FkID0gSlNPTi5zdHJpbmdpZnkoZXZlbnQpO1xuICAgICAgY29uc3Qgc2lnbmF0dXJlID0gYXdhaXQgdGhpcy5nZW5lcmF0ZVNpZ25hdHVyZShwYXlsb2FkLCBzZWNyZXQpO1xuXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKGZvcndhcmRVcmwsIHtcbiAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiLFxuICAgICAgICAgIFwiWC1TZW5kbHktU2lnbmF0dXJlXCI6IHNpZ25hdHVyZSxcbiAgICAgICAgICBcIlgtU2VuZGx5LUV2ZW50XCI6IGV2ZW50LnR5cGUsXG4gICAgICAgIH0sXG4gICAgICAgIGJvZHk6IHBheWxvYWQsXG4gICAgICB9KTtcblxuICAgICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGAgICR7Y29sb3JzLnN1Y2Nlc3MoXCLinJNcIil9IEZvcndhcmRlZCB0byAke2ZvcndhcmRVcmx9ICgke3Jlc3BvbnNlLnN0YXR1c30pYCxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGAgICR7Y29sb3JzLmVycm9yKFwi4pyXXCIpfSBGb3J3YXJkIGZhaWxlZCAoJHtyZXNwb25zZS5zdGF0dXN9KWAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgYCAgJHtjb2xvcnMuZXJyb3IoXCLinJdcIil9IEZvcndhcmQgZXJyb3I6ICR7KGVyciBhcyBFcnJvcikubWVzc2FnZX1gLFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc29sZS5sb2coKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2VuZXJhdGVTaWduYXR1cmUoXG4gICAgcGF5bG9hZDogc3RyaW5nLFxuICAgIHNlY3JldDogc3RyaW5nLFxuICApOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKTtcbiAgICBjb25zdCBrZXkgPSBhd2FpdCBjcnlwdG8uc3VidGxlLmltcG9ydEtleShcbiAgICAgIFwicmF3XCIsXG4gICAgICBlbmNvZGVyLmVuY29kZShzZWNyZXQpLFxuICAgICAgeyBuYW1lOiBcIkhNQUNcIiwgaGFzaDogXCJTSEEtMjU2XCIgfSxcbiAgICAgIGZhbHNlLFxuICAgICAgW1wic2lnblwiXSxcbiAgICApO1xuICAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IGNyeXB0by5zdWJ0bGUuc2lnbihcbiAgICAgIFwiSE1BQ1wiLFxuICAgICAga2V5LFxuICAgICAgZW5jb2Rlci5lbmNvZGUocGF5bG9hZCksXG4gICAgKTtcbiAgICBjb25zdCBoYXNoQXJyYXkgPSBBcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KHNpZ25hdHVyZSkpO1xuICAgIGNvbnN0IGhhc2hIZXggPSBoYXNoQXJyYXlcbiAgICAgIC5tYXAoKGIpID0+IGIudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsIFwiMFwiKSlcbiAgICAgIC5qb2luKFwiXCIpO1xuICAgIHJldHVybiBgdjE9JHtoYXNoSGV4fWA7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNsZWFudXAoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gQ2xlYW4gdXAgdHVubmVsXG4gICAgaWYgKHRoaXMudHVubmVsKSB7XG4gICAgICB0aGlzLnR1bm5lbC5jbG9zZSgpO1xuICAgIH1cblxuICAgIC8vIENsZWFuIHVwIHRlbXBvcmFyeSB3ZWJob29rXG4gICAgaWYgKHRoaXMud2ViaG9va0lkKSB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBhcGlDbGllbnQuZGVsZXRlKGAvYXBpL2NsaS93ZWJob29rcy9saXN0ZW4vJHt0aGlzLndlYmhvb2tJZH1gKTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICAvLyBJZ25vcmUgY2xlYW51cCBlcnJvcnNcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -62,16 +62,16 @@ export default class WebhooksRotateSecret extends AuthenticatedCommand {
|
|
|
62
62
|
}
|
|
63
63
|
success("Webhook secret rotated", {
|
|
64
64
|
"Webhook ID": result.id,
|
|
65
|
-
"Secret Version": `${webhook.
|
|
66
|
-
"Grace Period": `${result.
|
|
67
|
-
"Rotated At": result.
|
|
65
|
+
"Secret Version": `${webhook.secret_version} → ${result.new_secret_version}`,
|
|
66
|
+
"Grace Period": `${result.grace_period_hours} hours`,
|
|
67
|
+
"Rotated At": result.rotated_at,
|
|
68
68
|
});
|
|
69
69
|
console.log();
|
|
70
70
|
warn("Copy your new webhook secret now. The old secret will expire in 24 hours!");
|
|
71
|
-
codeBlock(result.
|
|
71
|
+
codeBlock(result.new_secret);
|
|
72
72
|
console.log();
|
|
73
73
|
console.log(colors.dim("Update your application with this new secret for webhook signature verification."));
|
|
74
|
-
console.log(colors.dim(`The old secret will remain valid for ${result.
|
|
74
|
+
console.log(colors.dim(`The old secret will remain valid for ${result.grace_period_hours} hours to allow for graceful migration.`));
|
|
75
75
|
}
|
|
76
76
|
catch (err) {
|
|
77
77
|
if (err instanceof Error) {
|
|
@@ -84,4 +84,4 @@ export default class WebhooksRotateSecret extends AuthenticatedCommand {
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm90YXRlLXNlY3JldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy93ZWJob29rcy9yb3RhdGUtc2VjcmV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsT0FBTyxFQUNQLElBQUksRUFDSixLQUFLLEVBQ0wsSUFBSSxFQUNKLE1BQU0sRUFDTixTQUFTLEVBQ1QsVUFBVSxHQUNYLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxRQUFRLE1BQU0sVUFBVSxDQUFDO0FBVWhDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sb0JBQXFCLFNBQVEsb0JBQW9CO0lBQ3BFLE1BQU0sQ0FBQyxXQUFXLEdBQUcsdUJBQXVCLENBQUM7SUFFN0MsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQixxREFBcUQ7UUFDckQsMkRBQTJEO1FBQzNELDREQUE0RDtLQUM3RCxDQUFDO0lBRUYsTUFBTSxDQUFDLElBQUksR0FBRztRQUNaLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ2QsV0FBVyxFQUFFLFlBQVk7WUFDekIsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDO0tBQ0gsQ0FBQztJQUVGLE1BQU0sQ0FBQyxLQUFLLEdBQUc7UUFDYixHQUFHLG9CQUFvQixDQUFDLFNBQVM7UUFDakMsR0FBRyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDakIsSUFBSSxFQUFFLEdBQUc7WUFDVCxXQUFXLEVBQUUsMEJBQTBCO1lBQ3ZDLE9BQU8sRUFBRSxLQUFLO1NBQ2YsQ0FBQztLQUNILENBQUM7SUFFRixLQUFLLENBQUMsR0FBRztRQUNQLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFL0QsdUNBQXVDO1FBQ3ZDLElBQUksT0FBTyxDQUFDO1FBQ1osSUFBSSxDQUFDO1lBQ0gsT0FBTyxHQUFHLE1BQU0sU0FBUyxDQUFDLEdBQUcsQ0FJMUIsb0JBQW9CLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsS0FBSyxDQUFDLHNCQUFzQixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2YsQ0FBQztRQUVELG1CQUFtQjtRQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7WUFDaEMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2QsT0FBTyxDQUFDLEdBQUcsQ0FDVCxNQUFNLENBQUMsT0FBTyxDQUNaLGtGQUFrRixDQUNuRixDQUNGLENBQUM7WUFDRixPQUFPLENBQUMsR0FBRyxDQUNULE1BQU0sQ0FBQyxHQUFHLENBQUMsMkRBQTJELENBQUMsQ0FDeEUsQ0FBQztZQUNGLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUVkLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3hDO29CQUNFLElBQUksRUFBRSxTQUFTO29CQUNmLElBQUksRUFBRSxTQUFTO29CQUNmLE9BQU8sRUFBRSw2QkFBNkIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUk7b0JBQzFGLE9BQU8sRUFBRSxLQUFLO2lCQUNmO2FBQ0YsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNiLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO2dCQUNuQyxPQUFPO1lBQ1QsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQ2pDLG9CQUFvQixJQUFJLENBQUMsRUFBRSxnQkFBZ0IsQ0FDNUMsQ0FBQztZQUVGLElBQUksVUFBVSxFQUFFLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNiLE9BQU87WUFDVCxDQUFDO1lBRUQsT0FBTyxDQUFDLHdCQUF3QixFQUFFO2dCQUNoQyxZQUFZLEVBQUUsTUFBTSxDQUFDLEVBQUU7Z0JBQ3ZCLGdCQUFnQixFQUFFLEdBQUcsT0FBTyxDQUFDLGNBQWMsTUFBTSxNQUFNLENBQUMsa0JBQWtCLEVBQUU7Z0JBQzVFLGNBQWMsRUFBRSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsUUFBUTtnQkFDcEQsWUFBWSxFQUFFLE1BQU0sQ0FBQyxVQUFVO2FBQ2hDLENBQUMsQ0FBQztZQUVILE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FDRiwyRUFBMkUsQ0FDNUUsQ0FBQztZQUNGLFNBQVMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7WUFFN0IsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2QsT0FBTyxDQUFDLEdBQUcsQ0FDVCxNQUFNLENBQUMsR0FBRyxDQUNSLGtGQUFrRixDQUNuRixDQUNGLENBQUM7WUFDRixPQUFPLENBQUMsR0FBRyxDQUNULE1BQU0sQ0FBQyxHQUFHLENBQ1Isd0NBQXdDLE1BQU0sQ0FBQyxrQkFBa0IseUNBQXlDLENBQzNHLENBQ0YsQ0FBQztRQUNKLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsSUFBSSxHQUFHLFlBQVksS0FBSyxFQUFFLENBQUM7Z0JBQ3pCLEtBQUssQ0FBQyw0QkFBNEIsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDbkQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLEtBQUssQ0FBQyw0QkFBNEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRCxDQUFDO1lBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNmLENBQUM7SUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJncywgRmxhZ3MgfSBmcm9tIFwiQG9jbGlmL2NvcmVcIjtcbmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRDb21tYW5kIH0gZnJvbSBcIi4uLy4uL2xpYi9iYXNlLWNvbW1hbmQuanNcIjtcbmltcG9ydCB7IGFwaUNsaWVudCB9IGZyb20gXCIuLi8uLi9saWIvYXBpLWNsaWVudC5qc1wiO1xuaW1wb3J0IHtcbiAgc3VjY2VzcyxcbiAgd2FybixcbiAgZXJyb3IsXG4gIGpzb24sXG4gIGNvbG9ycyxcbiAgY29kZUJsb2NrLFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuaW1wb3J0IGlucXVpcmVyIGZyb20gXCJpbnF1aXJlclwiO1xuXG5pbnRlcmZhY2UgUm90YXRlU2VjcmV0UmVzcG9uc2Uge1xuICBpZDogc3RyaW5nO1xuICBuZXdfc2VjcmV0OiBzdHJpbmc7XG4gIG5ld19zZWNyZXRfdmVyc2lvbjogbnVtYmVyO1xuICBncmFjZV9wZXJpb2RfaG91cnM6IG51bWJlcjtcbiAgcm90YXRlZF9hdDogc3RyaW5nO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBXZWJob29rc1JvdGF0ZVNlY3JldCBleHRlbmRzIEF1dGhlbnRpY2F0ZWRDb21tYW5kIHtcbiAgc3RhdGljIGRlc2NyaXB0aW9uID0gXCJSb3RhdGUgd2ViaG9vayBzZWNyZXRcIjtcblxuICBzdGF0aWMgZXhhbXBsZXMgPSBbXG4gICAgXCI8JT0gY29uZmlnLmJpbiAlPiB3ZWJob29rcyByb3RhdGUtc2VjcmV0IHdoa19hYmMxMjNcIixcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIHJvdGF0ZS1zZWNyZXQgd2hrX2FiYzEyMyAtLXllc1wiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3Mgcm90YXRlLXNlY3JldCB3aGtfYWJjMTIzIC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBhcmdzID0ge1xuICAgIGlkOiBBcmdzLnN0cmluZyh7XG4gICAgICBkZXNjcmlwdGlvbjogXCJXZWJob29rIElEXCIsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICB9KSxcbiAgfTtcblxuICBzdGF0aWMgZmxhZ3MgPSB7XG4gICAgLi4uQXV0aGVudGljYXRlZENvbW1hbmQuYmFzZUZsYWdzLFxuICAgIHllczogRmxhZ3MuYm9vbGVhbih7XG4gICAgICBjaGFyOiBcInlcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlNraXAgY29uZmlybWF0aW9uIHByb21wdFwiLFxuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgfSksXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgYXJncywgZmxhZ3MgfSA9IGF3YWl0IHRoaXMucGFyc2UoV2ViaG9va3NSb3RhdGVTZWNyZXQpO1xuXG4gICAgLy8gR2V0IHdlYmhvb2sgZGV0YWlscyBmb3IgY29uZmlybWF0aW9uXG4gICAgbGV0IHdlYmhvb2s7XG4gICAgdHJ5IHtcbiAgICAgIHdlYmhvb2sgPSBhd2FpdCBhcGlDbGllbnQuZ2V0PHtcbiAgICAgICAgaWQ6IHN0cmluZztcbiAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgIHNlY3JldF92ZXJzaW9uOiBudW1iZXI7XG4gICAgICB9PihgL2FwaS92MS93ZWJob29rcy8ke2FyZ3MuaWR9YCk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBlcnJvcihgV2ViaG9vayBub3QgZm91bmQ6ICR7YXJncy5pZH1gKTtcbiAgICAgIHRoaXMuZXhpdCgxKTtcbiAgICB9XG5cbiAgICAvLyBDb25maXJtIHJvdGF0aW9uXG4gICAgaWYgKCFmbGFncy55ZXMgJiYgIWlzSnNvbk1vZGUoKSkge1xuICAgICAgY29uc29sZS5sb2coKTtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBjb2xvcnMud2FybmluZyhcbiAgICAgICAgICBcIuKaoCBUaGlzIHdpbGwgcm90YXRlIHRoZSB3ZWJob29rIHNlY3JldCBhbmQgaW52YWxpZGF0ZSB0aGUgb2xkIG9uZSBhZnRlciAyNCBob3Vycy5cIixcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgY29sb3JzLmRpbShcIk1ha2Ugc3VyZSB0byB1cGRhdGUgeW91ciBhcHBsaWNhdGlvbiB3aXRoIHRoZSBuZXcgc2VjcmV0LlwiKSxcbiAgICAgICk7XG4gICAgICBjb25zb2xlLmxvZygpO1xuXG4gICAgICBjb25zdCB7IGNvbmZpcm0gfSA9IGF3YWl0IGlucXVpcmVyLnByb21wdChbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiBcImNvbmZpcm1cIixcbiAgICAgICAgICBuYW1lOiBcImNvbmZpcm1cIixcbiAgICAgICAgICBtZXNzYWdlOiBgUm90YXRlIHNlY3JldCBmb3Igd2ViaG9vayAke2NvbG9ycy5jb2RlKGFyZ3MuaWQpfSAoJHtjb2xvcnMuZGltKHdlYmhvb2sudXJsKX0pP2AsXG4gICAgICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdKTtcblxuICAgICAgaWYgKCFjb25maXJtKSB7XG4gICAgICAgIGVycm9yKFwiU2VjcmV0IHJvdGF0aW9uIGNhbmNlbGxlZFwiKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBhcGlDbGllbnQucG9zdDxSb3RhdGVTZWNyZXRSZXNwb25zZT4oXG4gICAgICAgIGAvYXBpL3YxL3dlYmhvb2tzLyR7YXJncy5pZH0vcm90YXRlLXNlY3JldGAsXG4gICAgICApO1xuXG4gICAgICBpZiAoaXNKc29uTW9kZSgpKSB7XG4gICAgICAgIGpzb24ocmVzdWx0KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBzdWNjZXNzKFwiV2ViaG9vayBzZWNyZXQgcm90YXRlZFwiLCB7XG4gICAgICAgIFwiV2ViaG9vayBJRFwiOiByZXN1bHQuaWQsXG4gICAgICAgIFwiU2VjcmV0IFZlcnNpb25cIjogYCR7d2ViaG9vay5zZWNyZXRfdmVyc2lvbn0g4oaSICR7cmVzdWx0Lm5ld19zZWNyZXRfdmVyc2lvbn1gLFxuICAgICAgICBcIkdyYWNlIFBlcmlvZFwiOiBgJHtyZXN1bHQuZ3JhY2VfcGVyaW9kX2hvdXJzfSBob3Vyc2AsXG4gICAgICAgIFwiUm90YXRlZCBBdFwiOiByZXN1bHQucm90YXRlZF9hdCxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgd2FybihcbiAgICAgICAgXCJDb3B5IHlvdXIgbmV3IHdlYmhvb2sgc2VjcmV0IG5vdy4gVGhlIG9sZCBzZWNyZXQgd2lsbCBleHBpcmUgaW4gMjQgaG91cnMhXCIsXG4gICAgICApO1xuICAgICAgY29kZUJsb2NrKHJlc3VsdC5uZXdfc2VjcmV0KTtcblxuICAgICAgY29uc29sZS5sb2coKTtcbiAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICBjb2xvcnMuZGltKFxuICAgICAgICAgIFwiVXBkYXRlIHlvdXIgYXBwbGljYXRpb24gd2l0aCB0aGlzIG5ldyBzZWNyZXQgZm9yIHdlYmhvb2sgc2lnbmF0dXJlIHZlcmlmaWNhdGlvbi5cIixcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgY29sb3JzLmRpbShcbiAgICAgICAgICBgVGhlIG9sZCBzZWNyZXQgd2lsbCByZW1haW4gdmFsaWQgZm9yICR7cmVzdWx0LmdyYWNlX3BlcmlvZF9ob3Vyc30gaG91cnMgdG8gYWxsb3cgZm9yIGdyYWNlZnVsIG1pZ3JhdGlvbi5gLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICBlcnJvcihgRmFpbGVkIHRvIHJvdGF0ZSBzZWNyZXQ6ICR7ZXJyLm1lc3NhZ2V9YCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBlcnJvcihgRmFpbGVkIHRvIHJvdGF0ZSBzZWNyZXQ6ICR7U3RyaW5nKGVycil9YCk7XG4gICAgICB9XG4gICAgICB0aGlzLmV4aXQoMSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -30,26 +30,29 @@ export default class WebhooksTest extends AuthenticatedCommand {
|
|
|
30
30
|
}
|
|
31
31
|
if (result.status === "delivered") {
|
|
32
32
|
success("Test event delivered", {
|
|
33
|
-
"Delivery ID": result.
|
|
34
|
-
"Webhook URL": result.
|
|
35
|
-
"Event Type": result.
|
|
36
|
-
"Response Time": `${result.
|
|
37
|
-
"Status Code": String(result.
|
|
38
|
-
"Delivered At": result.
|
|
33
|
+
"Delivery ID": result.delivery_id,
|
|
34
|
+
"Webhook URL": result.webhook_url,
|
|
35
|
+
"Event Type": result.event_type,
|
|
36
|
+
"Response Time": `${result.response_time}ms`,
|
|
37
|
+
"Status Code": String(result.status_code),
|
|
38
|
+
"Delivered At": result.delivered_at,
|
|
39
39
|
});
|
|
40
|
-
if (result.
|
|
40
|
+
if (result.response_body) {
|
|
41
41
|
console.log();
|
|
42
42
|
console.log(colors.dim("Response Body:"));
|
|
43
|
-
console.log(result.
|
|
43
|
+
console.log(result.response_body.substring(0, 200) +
|
|
44
|
+
(result.response_body.length > 200 ? "..." : ""));
|
|
44
45
|
}
|
|
45
46
|
}
|
|
46
47
|
else {
|
|
47
48
|
error("Test event failed", {
|
|
48
|
-
"Delivery ID": result.
|
|
49
|
-
"Webhook URL": result.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
...(result.
|
|
49
|
+
"Delivery ID": result.delivery_id,
|
|
50
|
+
"Webhook URL": result.webhook_url,
|
|
51
|
+
Status: result.status,
|
|
52
|
+
Error: result.error || "Unknown error",
|
|
53
|
+
...(result.status_code && {
|
|
54
|
+
"Status Code": String(result.status_code),
|
|
55
|
+
}),
|
|
53
56
|
});
|
|
54
57
|
}
|
|
55
58
|
}
|
|
@@ -70,4 +73,4 @@ export default class WebhooksTest extends AuthenticatedCommand {
|
|
|
70
73
|
}
|
|
71
74
|
}
|
|
72
75
|
}
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy93ZWJob29rcy90ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFDTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLE9BQU8sRUFDUCxJQUFJLEVBQ0osTUFBTSxFQUVOLFVBQVUsR0FDWCxNQUFNLHFCQUFxQixDQUFDO0FBZTdCLE1BQU0sQ0FBQyxPQUFPLE9BQU8sWUFBYSxTQUFRLG9CQUFvQjtJQUM1RCxNQUFNLENBQUMsV0FBVyxHQUFHLGdDQUFnQyxDQUFDO0lBRXRELE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsNENBQTRDO1FBQzVDLG1EQUFtRDtLQUNwRCxDQUFDO0lBRUYsTUFBTSxDQUFDLElBQUksR0FBRztRQUNaLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ2QsV0FBVyxFQUFFLG9CQUFvQjtZQUNqQyxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUM7S0FDSCxDQUFDO0lBRUYsTUFBTSxDQUFDLEtBQUssR0FBRztRQUNiLEdBQUcsb0JBQW9CLENBQUMsU0FBUztLQUNsQyxDQUFDO0lBRUYsS0FBSyxDQUFDLEdBQUc7UUFDUCxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRWhELE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3JELFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUVwQixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQ2pDLG9CQUFvQixJQUFJLENBQUMsRUFBRSxPQUFPLENBQ25DLENBQUM7WUFFRixXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7WUFFbkIsSUFBSSxVQUFVLEVBQUUsRUFBRSxDQUFDO2dCQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2IsT0FBTztZQUNULENBQUM7WUFFRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssV0FBVyxFQUFFLENBQUM7Z0JBQ2xDLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRTtvQkFDOUIsYUFBYSxFQUFFLE1BQU0sQ0FBQyxXQUFXO29CQUNqQyxhQUFhLEVBQUUsTUFBTSxDQUFDLFdBQVc7b0JBQ2pDLFlBQVksRUFBRSxNQUFNLENBQUMsVUFBVTtvQkFDL0IsZUFBZSxFQUFFLEdBQUcsTUFBTSxDQUFDLGFBQWEsSUFBSTtvQkFDNUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO29CQUN6QyxjQUFjLEVBQUUsTUFBTSxDQUFDLFlBQVk7aUJBQ3BDLENBQUMsQ0FBQztnQkFFSCxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDekIsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7b0JBQzFDLE9BQU8sQ0FBQyxHQUFHLENBQ1QsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQzt3QkFDcEMsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQ25ELENBQUM7Z0JBQ0osQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixLQUFLLENBQUMsbUJBQW1CLEVBQUU7b0JBQ3pCLGFBQWEsRUFBRSxNQUFNLENBQUMsV0FBVztvQkFDakMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxXQUFXO29CQUNqQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07b0JBQ3JCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxJQUFJLGVBQWU7b0JBQ3RDLEdBQUcsQ0FBQyxNQUFNLENBQUMsV0FBVyxJQUFJO3dCQUN4QixhQUFhLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7cUJBQzFDLENBQUM7aUJBQ0gsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2IsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1lBRW5CLElBQUksR0FBRyxZQUFZLEtBQUssSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUN4RCxLQUFLLENBQUMsc0JBQXNCLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3pDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLEdBQUcsWUFBWSxLQUFLLEVBQUUsQ0FBQztvQkFDekIsS0FBSyxDQUFDLDhCQUE4QixHQUFHLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztnQkFDckQsQ0FBQztxQkFBTSxDQUFDO29CQUNOLEtBQUssQ0FBQyw4QkFBOEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDckQsQ0FBQztZQUNILENBQUM7WUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcmdzIH0gZnJvbSBcIkBvY2xpZi9jb3JlXCI7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGVkQ29tbWFuZCB9IGZyb20gXCIuLi8uLi9saWIvYmFzZS1jb21tYW5kLmpzXCI7XG5pbXBvcnQgeyBhcGlDbGllbnQgfSBmcm9tIFwiLi4vLi4vbGliL2FwaS1jbGllbnQuanNcIjtcbmltcG9ydCB7XG4gIHN1Y2Nlc3MsXG4gIGVycm9yLFxuICBzcGlubmVyLFxuICBqc29uLFxuICBjb2xvcnMsXG4gIGtleVZhbHVlLFxuICBpc0pzb25Nb2RlLFxufSBmcm9tIFwiLi4vLi4vbGliL291dHB1dC5qc1wiO1xuXG5pbnRlcmZhY2UgVGVzdFdlYmhvb2tSZXNwb25zZSB7XG4gIGlkOiBzdHJpbmc7XG4gIGRlbGl2ZXJ5X2lkOiBzdHJpbmc7XG4gIHdlYmhvb2tfdXJsOiBzdHJpbmc7XG4gIGV2ZW50X3R5cGU6IHN0cmluZztcbiAgc3RhdHVzOiBzdHJpbmc7XG4gIHJlc3BvbnNlX3RpbWU6IG51bWJlcjtcbiAgc3RhdHVzX2NvZGU/OiBudW1iZXI7XG4gIHJlc3BvbnNlX2JvZHk/OiBzdHJpbmc7XG4gIGVycm9yPzogc3RyaW5nO1xuICBkZWxpdmVyZWRfYXQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgV2ViaG9va3NUZXN0IGV4dGVuZHMgQXV0aGVudGljYXRlZENvbW1hbmQge1xuICBzdGF0aWMgZGVzY3JpcHRpb24gPSBcIlNlbmQgYSB0ZXN0IGV2ZW50IHRvIGEgd2ViaG9va1wiO1xuXG4gIHN0YXRpYyBleGFtcGxlcyA9IFtcbiAgICBcIjwlPSBjb25maWcuYmluICU+IHdlYmhvb2tzIHRlc3Qgd2hrX2FiYzEyM1wiLFxuICAgIFwiPCU9IGNvbmZpZy5iaW4gJT4gd2ViaG9va3MgdGVzdCB3aGtfYWJjMTIzIC0tanNvblwiLFxuICBdO1xuXG4gIHN0YXRpYyBhcmdzID0ge1xuICAgIGlkOiBBcmdzLnN0cmluZyh7XG4gICAgICBkZXNjcmlwdGlvbjogXCJXZWJob29rIElEIHRvIHRlc3RcIixcbiAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIH0pLFxuICB9O1xuXG4gIHN0YXRpYyBmbGFncyA9IHtcbiAgICAuLi5BdXRoZW50aWNhdGVkQ29tbWFuZC5iYXNlRmxhZ3MsXG4gIH07XG5cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHsgYXJncyB9ID0gYXdhaXQgdGhpcy5wYXJzZShXZWJob29rc1Rlc3QpO1xuXG4gICAgY29uc3QgdGVzdFNwaW5uZXIgPSBzcGlubmVyKFwiU2VuZGluZyB0ZXN0IGV2ZW50Li4uXCIpO1xuICAgIHRlc3RTcGlubmVyLnN0YXJ0KCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYXBpQ2xpZW50LnBvc3Q8VGVzdFdlYmhvb2tSZXNwb25zZT4oXG4gICAgICAgIGAvYXBpL3YxL3dlYmhvb2tzLyR7YXJncy5pZH0vdGVzdGAsXG4gICAgICApO1xuXG4gICAgICB0ZXN0U3Bpbm5lci5zdG9wKCk7XG5cbiAgICAgIGlmIChpc0pzb25Nb2RlKCkpIHtcbiAgICAgICAganNvbihyZXN1bHQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChyZXN1bHQuc3RhdHVzID09PSBcImRlbGl2ZXJlZFwiKSB7XG4gICAgICAgIHN1Y2Nlc3MoXCJUZXN0IGV2ZW50IGRlbGl2ZXJlZFwiLCB7XG4gICAgICAgICAgXCJEZWxpdmVyeSBJRFwiOiByZXN1bHQuZGVsaXZlcnlfaWQsXG4gICAgICAgICAgXCJXZWJob29rIFVSTFwiOiByZXN1bHQud2ViaG9va191cmwsXG4gICAgICAgICAgXCJFdmVudCBUeXBlXCI6IHJlc3VsdC5ldmVudF90eXBlLFxuICAgICAgICAgIFwiUmVzcG9uc2UgVGltZVwiOiBgJHtyZXN1bHQucmVzcG9uc2VfdGltZX1tc2AsXG4gICAgICAgICAgXCJTdGF0dXMgQ29kZVwiOiBTdHJpbmcocmVzdWx0LnN0YXR1c19jb2RlKSxcbiAgICAgICAgICBcIkRlbGl2ZXJlZCBBdFwiOiByZXN1bHQuZGVsaXZlcmVkX2F0LFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAocmVzdWx0LnJlc3BvbnNlX2JvZHkpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKGNvbG9ycy5kaW0oXCJSZXNwb25zZSBCb2R5OlwiKSk7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICByZXN1bHQucmVzcG9uc2VfYm9keS5zdWJzdHJpbmcoMCwgMjAwKSArXG4gICAgICAgICAgICAgIChyZXN1bHQucmVzcG9uc2VfYm9keS5sZW5ndGggPiAyMDAgPyBcIi4uLlwiIDogXCJcIiksXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZXJyb3IoXCJUZXN0IGV2ZW50IGZhaWxlZFwiLCB7XG4gICAgICAgICAgXCJEZWxpdmVyeSBJRFwiOiByZXN1bHQuZGVsaXZlcnlfaWQsXG4gICAgICAgICAgXCJXZWJob29rIFVSTFwiOiByZXN1bHQud2ViaG9va191cmwsXG4gICAgICAgICAgU3RhdHVzOiByZXN1bHQuc3RhdHVzLFxuICAgICAgICAgIEVycm9yOiByZXN1bHQuZXJyb3IgfHwgXCJVbmtub3duIGVycm9yXCIsXG4gICAgICAgICAgLi4uKHJlc3VsdC5zdGF0dXNfY29kZSAmJiB7XG4gICAgICAgICAgICBcIlN0YXR1cyBDb2RlXCI6IFN0cmluZyhyZXN1bHQuc3RhdHVzX2NvZGUpLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRlc3RTcGlubmVyLnN0b3AoKTtcblxuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yICYmIGVyci5tZXNzYWdlLmluY2x1ZGVzKFwiNDA0XCIpKSB7XG4gICAgICAgIGVycm9yKGBXZWJob29rIG5vdCBmb3VuZDogJHthcmdzLmlkfWApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgZXJyb3IoYEZhaWxlZCB0byBzZW5kIHRlc3QgZXZlbnQ6ICR7ZXJyLm1lc3NhZ2V9YCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXJyb3IoYEZhaWxlZCB0byBzZW5kIHRlc3QgZXZlbnQ6ICR7U3RyaW5nKGVycil9YCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRoaXMuZXhpdCgxKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|