@zapier/zapier-sdk 0.48.1 → 0.49.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/CHANGELOG.md +6 -0
- package/README.md +818 -70
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +10 -1
- package/dist/api/polling.d.ts +7 -0
- package/dist/api/polling.d.ts.map +1 -1
- package/dist/api/polling.js +29 -4
- package/dist/api/types.d.ts +7 -0
- package/dist/api/types.d.ts.map +1 -1
- package/dist/experimental.cjs +10389 -0
- package/dist/experimental.d.mts +2292 -0
- package/dist/experimental.d.ts +2308 -0
- package/dist/experimental.d.ts.map +1 -0
- package/dist/experimental.js +155 -0
- package/dist/experimental.mjs +10207 -0
- package/dist/index-C2vsvjgN.d.mts +9539 -0
- package/dist/index-C2vsvjgN.d.ts +9539 -0
- package/dist/index.cjs +813 -602
- package/dist/index.d.mts +6 -8562
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.mjs +801 -602
- package/dist/plugins/apps/index.d.ts +1 -1
- package/dist/plugins/deprecated/inputFields.d.ts +468 -0
- package/dist/plugins/deprecated/inputFields.d.ts.map +1 -0
- package/dist/plugins/deprecated/inputFields.js +73 -0
- package/dist/plugins/fetch/index.d.ts +1 -1
- package/dist/plugins/fetch/schemas.d.ts +1 -1
- package/dist/plugins/{getInputFieldsSchema → getActionInputFieldsSchema}/index.d.ts +4 -4
- package/dist/plugins/getActionInputFieldsSchema/index.d.ts.map +1 -0
- package/dist/plugins/{getInputFieldsSchema → getActionInputFieldsSchema}/index.js +4 -4
- package/dist/plugins/{getInputFieldsSchema → getActionInputFieldsSchema}/schemas.d.ts +8 -8
- package/dist/plugins/getActionInputFieldsSchema/schemas.d.ts.map +1 -0
- package/dist/plugins/{getInputFieldsSchema → getActionInputFieldsSchema}/schemas.js +13 -10
- package/dist/plugins/{listInputFieldChoices → listActionInputFieldChoices}/index.d.ts +4 -4
- package/dist/plugins/listActionInputFieldChoices/index.d.ts.map +1 -0
- package/dist/plugins/{listInputFieldChoices → listActionInputFieldChoices}/index.js +4 -4
- package/dist/plugins/{listInputFieldChoices → listActionInputFieldChoices}/schemas.d.ts +10 -10
- package/dist/plugins/listActionInputFieldChoices/schemas.d.ts.map +1 -0
- package/dist/plugins/{listInputFieldChoices → listActionInputFieldChoices}/schemas.js +13 -10
- package/dist/plugins/{listInputFields → listActionInputFields}/index.d.ts +4 -4
- package/dist/plugins/listActionInputFields/index.d.ts.map +1 -0
- package/dist/plugins/{listInputFields → listActionInputFields}/index.js +4 -4
- package/dist/plugins/{listInputFields → listActionInputFields}/schemas.d.ts +9 -9
- package/dist/plugins/listActionInputFields/schemas.d.ts.map +1 -0
- package/dist/plugins/{listInputFields → listActionInputFields}/schemas.js +7 -7
- package/dist/plugins/request/index.d.ts +2 -2
- package/dist/plugins/request/schemas.d.ts +2 -2
- package/dist/plugins/triggers/ackTriggerInboxMessages/index.d.ts +51 -0
- package/dist/plugins/triggers/ackTriggerInboxMessages/index.d.ts.map +1 -0
- package/dist/plugins/triggers/ackTriggerInboxMessages/index.js +35 -0
- package/dist/plugins/triggers/ackTriggerInboxMessages/schemas.d.ts +34 -0
- package/dist/plugins/triggers/ackTriggerInboxMessages/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/ackTriggerInboxMessages/schemas.js +17 -0
- package/dist/plugins/triggers/createTriggerInbox/index.d.ts +62 -0
- package/dist/plugins/triggers/createTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/createTriggerInbox/index.js +54 -0
- package/dist/plugins/triggers/createTriggerInbox/schemas.d.ts +20 -0
- package/dist/plugins/triggers/createTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/createTriggerInbox/schemas.js +20 -0
- package/dist/plugins/triggers/deleteTriggerInbox/index.d.ts +50 -0
- package/dist/plugins/triggers/deleteTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/deleteTriggerInbox/index.js +27 -0
- package/dist/plugins/triggers/deleteTriggerInbox/schemas.d.ts +14 -0
- package/dist/plugins/triggers/deleteTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/deleteTriggerInbox/schemas.js +9 -0
- package/dist/plugins/triggers/drainTriggerInbox/index.d.ts +213 -0
- package/dist/plugins/triggers/drainTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/drainTriggerInbox/index.js +227 -0
- package/dist/plugins/triggers/drainTriggerInbox/pipeline.d.ts +56 -0
- package/dist/plugins/triggers/drainTriggerInbox/pipeline.d.ts.map +1 -0
- package/dist/plugins/triggers/drainTriggerInbox/pipeline.js +225 -0
- package/dist/plugins/triggers/drainTriggerInbox/schemas.d.ts +104 -0
- package/dist/plugins/triggers/drainTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/drainTriggerInbox/schemas.js +102 -0
- package/dist/plugins/triggers/ensureTriggerInbox/index.d.ts +63 -0
- package/dist/plugins/triggers/ensureTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/ensureTriggerInbox/index.js +77 -0
- package/dist/plugins/triggers/ensureTriggerInbox/schemas.d.ts +21 -0
- package/dist/plugins/triggers/ensureTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/ensureTriggerInbox/schemas.js +21 -0
- package/dist/plugins/triggers/getTriggerInbox/index.d.ts +50 -0
- package/dist/plugins/triggers/getTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/getTriggerInbox/index.js +26 -0
- package/dist/plugins/triggers/getTriggerInbox/schemas.d.ts +14 -0
- package/dist/plugins/triggers/getTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/getTriggerInbox/schemas.js +9 -0
- package/dist/plugins/triggers/getTriggerInputFieldsSchema/index.d.ts +48 -0
- package/dist/plugins/triggers/getTriggerInputFieldsSchema/index.d.ts.map +1 -0
- package/dist/plugins/triggers/getTriggerInputFieldsSchema/index.js +23 -0
- package/dist/plugins/triggers/getTriggerInputFieldsSchema/schemas.d.ts +13 -0
- package/dist/plugins/triggers/getTriggerInputFieldsSchema/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/getTriggerInputFieldsSchema/schemas.js +10 -0
- package/dist/plugins/triggers/leaseTriggerInboxMessages/index.d.ts +58 -0
- package/dist/plugins/triggers/leaseTriggerInboxMessages/index.d.ts.map +1 -0
- package/dist/plugins/triggers/leaseTriggerInboxMessages/index.js +70 -0
- package/dist/plugins/triggers/leaseTriggerInboxMessages/schemas.d.ts +57 -0
- package/dist/plugins/triggers/leaseTriggerInboxMessages/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/leaseTriggerInboxMessages/schemas.js +25 -0
- package/dist/plugins/triggers/listTriggerInboxMessages/index.d.ts +51 -0
- package/dist/plugins/triggers/listTriggerInboxMessages/index.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInboxMessages/index.js +48 -0
- package/dist/plugins/triggers/listTriggerInboxMessages/schemas.d.ts +37 -0
- package/dist/plugins/triggers/listTriggerInboxMessages/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInboxMessages/schemas.js +27 -0
- package/dist/plugins/triggers/listTriggerInboxes/index.d.ts +56 -0
- package/dist/plugins/triggers/listTriggerInboxes/index.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInboxes/index.js +51 -0
- package/dist/plugins/triggers/listTriggerInboxes/schemas.d.ts +58 -0
- package/dist/plugins/triggers/listTriggerInboxes/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInboxes/schemas.js +35 -0
- package/dist/plugins/triggers/listTriggerInputFieldChoices/index.d.ts +77 -0
- package/dist/plugins/triggers/listTriggerInputFieldChoices/index.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInputFieldChoices/index.js +30 -0
- package/dist/plugins/triggers/listTriggerInputFieldChoices/schemas.d.ts +20 -0
- package/dist/plugins/triggers/listTriggerInputFieldChoices/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInputFieldChoices/schemas.js +28 -0
- package/dist/plugins/triggers/listTriggerInputFields/index.d.ts +101 -0
- package/dist/plugins/triggers/listTriggerInputFields/index.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInputFields/index.js +33 -0
- package/dist/plugins/triggers/listTriggerInputFields/schemas.d.ts +16 -0
- package/dist/plugins/triggers/listTriggerInputFields/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/listTriggerInputFields/schemas.js +21 -0
- package/dist/plugins/triggers/pauseTriggerInbox/index.d.ts +50 -0
- package/dist/plugins/triggers/pauseTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/pauseTriggerInbox/index.js +26 -0
- package/dist/plugins/triggers/pauseTriggerInbox/schemas.d.ts +14 -0
- package/dist/plugins/triggers/pauseTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/pauseTriggerInbox/schemas.js +9 -0
- package/dist/plugins/triggers/releaseTriggerInboxMessages/index.d.ts +51 -0
- package/dist/plugins/triggers/releaseTriggerInboxMessages/index.d.ts.map +1 -0
- package/dist/plugins/triggers/releaseTriggerInboxMessages/index.js +37 -0
- package/dist/plugins/triggers/releaseTriggerInboxMessages/schemas.d.ts +34 -0
- package/dist/plugins/triggers/releaseTriggerInboxMessages/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/releaseTriggerInboxMessages/schemas.js +17 -0
- package/dist/plugins/triggers/resumeTriggerInbox/index.d.ts +50 -0
- package/dist/plugins/triggers/resumeTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/resumeTriggerInbox/index.js +26 -0
- package/dist/plugins/triggers/resumeTriggerInbox/schemas.d.ts +14 -0
- package/dist/plugins/triggers/resumeTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/resumeTriggerInbox/schemas.js +9 -0
- package/dist/plugins/triggers/shared.d.ts +17 -0
- package/dist/plugins/triggers/shared.d.ts.map +1 -0
- package/dist/plugins/triggers/shared.js +16 -0
- package/dist/plugins/triggers/updateTriggerInbox/index.d.ts +51 -0
- package/dist/plugins/triggers/updateTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/updateTriggerInbox/index.js +30 -0
- package/dist/plugins/triggers/updateTriggerInbox/schemas.d.ts +15 -0
- package/dist/plugins/triggers/updateTriggerInbox/schemas.d.ts.map +1 -0
- package/dist/plugins/triggers/updateTriggerInbox/schemas.js +15 -0
- package/dist/plugins/triggers/utils.d.ts +17 -0
- package/dist/plugins/triggers/utils.d.ts.map +1 -0
- package/dist/plugins/triggers/utils.js +28 -0
- package/dist/plugins/triggers/watchTriggerInbox/index.d.ts +163 -0
- package/dist/plugins/triggers/watchTriggerInbox/index.d.ts.map +1 -0
- package/dist/plugins/triggers/watchTriggerInbox/index.js +111 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +2 -0
- package/dist/resolvers/actionKey.d.ts +1 -0
- package/dist/resolvers/actionKey.d.ts.map +1 -1
- package/dist/resolvers/actionKey.js +1 -1
- package/dist/resolvers/index.d.ts +2 -2
- package/dist/resolvers/index.d.ts.map +1 -1
- package/dist/resolvers/index.js +2 -2
- package/dist/resolvers/triggerInbox.d.ts +4 -0
- package/dist/resolvers/triggerInbox.d.ts.map +1 -0
- package/dist/resolvers/triggerInbox.js +18 -0
- package/dist/schemas/TriggerInbox.d.ts +59 -0
- package/dist/schemas/TriggerInbox.d.ts.map +1 -0
- package/dist/schemas/TriggerInbox.js +81 -0
- package/dist/schemas/TriggerMessage.d.ts +48 -0
- package/dist/schemas/TriggerMessage.d.ts.map +1 -0
- package/dist/schemas/TriggerMessage.js +79 -0
- package/dist/sdk.d.ts +621 -17
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +26 -9
- package/dist/types/errors.d.ts +13 -0
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/errors.js +16 -0
- package/dist/types/plugin.d.ts +12 -1
- package/dist/types/plugin.d.ts.map +1 -1
- package/dist/types/properties.d.ts +12 -0
- package/dist/types/properties.d.ts.map +1 -1
- package/dist/types/properties.js +25 -0
- package/dist/types/registry.d.ts +5 -0
- package/dist/types/registry.d.ts.map +1 -1
- package/dist/types/sdk.d.ts +2 -2
- package/dist/types/sdk.d.ts.map +1 -1
- package/dist/types/signals.d.ts +20 -0
- package/dist/types/signals.d.ts.map +1 -0
- package/dist/types/signals.js +21 -0
- package/dist/utils/abort-utils.d.ts +13 -0
- package/dist/utils/abort-utils.d.ts.map +1 -1
- package/dist/utils/abort-utils.js +15 -0
- package/dist/utils/retry-utils.d.ts +6 -2
- package/dist/utils/retry-utils.d.ts.map +1 -1
- package/dist/utils/retry-utils.js +22 -3
- package/dist/utils/schema-utils.d.ts +19 -1
- package/dist/utils/schema-utils.d.ts.map +1 -1
- package/package.json +12 -1
- package/dist/plugins/getInputFieldsSchema/index.d.ts.map +0 -1
- package/dist/plugins/getInputFieldsSchema/schemas.d.ts.map +0 -1
- package/dist/plugins/listInputFieldChoices/index.d.ts.map +0 -1
- package/dist/plugins/listInputFieldChoices/schemas.d.ts.map +0 -1
- package/dist/plugins/listInputFields/index.d.ts.map +0 -1
- package/dist/plugins/listInputFields/schemas.d.ts.map +0 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { withFormatter } from "../utils/schema-utils";
|
|
3
|
+
// Open enum: known values listed for docs / TS autocomplete (when the
|
|
4
|
+
// doc-gen / type-trick tooling consumes the union AST), plus a string
|
|
5
|
+
// fallback so a new server-side value doesn't crash the parse.
|
|
6
|
+
export const TriggerInboxStatusSchema = z
|
|
7
|
+
.union([
|
|
8
|
+
z.enum([
|
|
9
|
+
"initializing",
|
|
10
|
+
"active",
|
|
11
|
+
"paused",
|
|
12
|
+
"deleting",
|
|
13
|
+
"initialization_failure",
|
|
14
|
+
]),
|
|
15
|
+
z.string(),
|
|
16
|
+
])
|
|
17
|
+
.describe("Inbox lifecycle status");
|
|
18
|
+
// Open enum: trigger ops can ship new reasons (rate_limited,
|
|
19
|
+
// quota_exceeded, etc.) without an SDK release.
|
|
20
|
+
export const TriggerInboxPausedReasonSchema = z
|
|
21
|
+
.union([
|
|
22
|
+
z.enum([
|
|
23
|
+
"user",
|
|
24
|
+
"authentication",
|
|
25
|
+
"authentication_access_revoked",
|
|
26
|
+
"partner_revoked",
|
|
27
|
+
"subscribe_failed",
|
|
28
|
+
"migrate_failed",
|
|
29
|
+
"abandoned",
|
|
30
|
+
"unknown",
|
|
31
|
+
"upstream_failures",
|
|
32
|
+
]),
|
|
33
|
+
z.string(),
|
|
34
|
+
])
|
|
35
|
+
.describe("Why the inbox was paused, if applicable");
|
|
36
|
+
export const TriggerSubscriptionApiSchema = z.object({
|
|
37
|
+
connection_id: z.union([z.string(), z.number(), z.null()]),
|
|
38
|
+
app_key: z.string(),
|
|
39
|
+
action_key: z.string(),
|
|
40
|
+
inputs: z.record(z.string(), z.unknown()),
|
|
41
|
+
});
|
|
42
|
+
const TriggerInboxItemSchemaBase = z.object({
|
|
43
|
+
id: z.string(),
|
|
44
|
+
created_at: z.string(),
|
|
45
|
+
name: z.string().nullable(),
|
|
46
|
+
status: TriggerInboxStatusSchema,
|
|
47
|
+
paused_reason: TriggerInboxPausedReasonSchema.nullable(),
|
|
48
|
+
notification_url: z.string().nullable(),
|
|
49
|
+
subscription: TriggerSubscriptionApiSchema,
|
|
50
|
+
});
|
|
51
|
+
export const TriggerInboxItemSchema = withFormatter(TriggerInboxItemSchemaBase, {
|
|
52
|
+
format: (item) => {
|
|
53
|
+
const details = [
|
|
54
|
+
{
|
|
55
|
+
text: `Status: ${item.status}`,
|
|
56
|
+
style: item.status === "active" ? "accent" : "dim",
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
text: `Subscription: ${item.subscription.app_key} / ${item.subscription.action_key}`,
|
|
60
|
+
style: "dim",
|
|
61
|
+
},
|
|
62
|
+
];
|
|
63
|
+
if (item.paused_reason) {
|
|
64
|
+
details.push({
|
|
65
|
+
text: `Paused reason: ${item.paused_reason}`,
|
|
66
|
+
style: "warning",
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
if (item.notification_url) {
|
|
70
|
+
details.push({
|
|
71
|
+
text: `Notify: ${item.notification_url}`,
|
|
72
|
+
style: "dim",
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
return {
|
|
76
|
+
title: item.name ?? `Trigger Inbox ${item.id}`,
|
|
77
|
+
id: item.id,
|
|
78
|
+
details,
|
|
79
|
+
};
|
|
80
|
+
},
|
|
81
|
+
});
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const TriggerMessageStatusSchema: z.ZodUnion<readonly [z.ZodEnum<{
|
|
3
|
+
available: "available";
|
|
4
|
+
leased: "leased";
|
|
5
|
+
acked: "acked";
|
|
6
|
+
quarantined: "quarantined";
|
|
7
|
+
}>, z.ZodString]>;
|
|
8
|
+
export type TriggerMessageStatus = z.infer<typeof TriggerMessageStatusSchema>;
|
|
9
|
+
export declare const TriggerMessageAttributesSchema: z.ZodObject<{
|
|
10
|
+
lease_count: z.ZodNumber;
|
|
11
|
+
error_message: z.ZodNullable<z.ZodString>;
|
|
12
|
+
possible_duplicate_data: z.ZodBoolean;
|
|
13
|
+
}, z.core.$strip>;
|
|
14
|
+
export type TriggerMessageAttributes = z.infer<typeof TriggerMessageAttributesSchema>;
|
|
15
|
+
export declare const TriggerMessageItemSchema: z.ZodObject<{
|
|
16
|
+
id: z.ZodString;
|
|
17
|
+
created_at: z.ZodString;
|
|
18
|
+
status: z.ZodUnion<readonly [z.ZodEnum<{
|
|
19
|
+
available: "available";
|
|
20
|
+
leased: "leased";
|
|
21
|
+
acked: "acked";
|
|
22
|
+
quarantined: "quarantined";
|
|
23
|
+
}>, z.ZodString]>;
|
|
24
|
+
message_attributes: z.ZodObject<{
|
|
25
|
+
lease_count: z.ZodNumber;
|
|
26
|
+
error_message: z.ZodNullable<z.ZodString>;
|
|
27
|
+
possible_duplicate_data: z.ZodBoolean;
|
|
28
|
+
}, z.core.$strip>;
|
|
29
|
+
}, z.core.$strip>;
|
|
30
|
+
export type TriggerMessageItem = z.infer<typeof TriggerMessageItemSchema>;
|
|
31
|
+
export declare const LeasedTriggerMessageItemSchema: z.ZodObject<{
|
|
32
|
+
id: z.ZodString;
|
|
33
|
+
created_at: z.ZodString;
|
|
34
|
+
status: z.ZodUnion<readonly [z.ZodEnum<{
|
|
35
|
+
available: "available";
|
|
36
|
+
leased: "leased";
|
|
37
|
+
acked: "acked";
|
|
38
|
+
quarantined: "quarantined";
|
|
39
|
+
}>, z.ZodString]>;
|
|
40
|
+
message_attributes: z.ZodObject<{
|
|
41
|
+
lease_count: z.ZodNumber;
|
|
42
|
+
error_message: z.ZodNullable<z.ZodString>;
|
|
43
|
+
possible_duplicate_data: z.ZodBoolean;
|
|
44
|
+
}, z.core.$strip>;
|
|
45
|
+
payload: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
46
|
+
}, z.core.$strip>;
|
|
47
|
+
export type LeasedTriggerMessageItem = z.infer<typeof LeasedTriggerMessageItemSchema>;
|
|
48
|
+
//# sourceMappingURL=TriggerMessage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TriggerMessage.d.ts","sourceRoot":"","sources":["../../src/schemas/TriggerMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,0BAA0B;;;;;iBAEA,CAAC;AAExC,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,8BAA8B;;;;iBAIzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC5C,OAAO,8BAA8B,CACtC,CAAC;AASF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;iBAoCpC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAM1E,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;iBAqC1C,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC5C,OAAO,8BAA8B,CACtC,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { withFormatter } from "../utils/schema-utils";
|
|
3
|
+
// Open enum: known values listed for docs / TS autocomplete (when the
|
|
4
|
+
// doc-gen / type-trick tooling consumes the union AST), plus a string
|
|
5
|
+
// fallback so a new server-side state doesn't crash the parse.
|
|
6
|
+
export const TriggerMessageStatusSchema = z
|
|
7
|
+
.union([z.enum(["available", "leased", "acked", "quarantined"]), z.string()])
|
|
8
|
+
.describe("Message lifecycle status");
|
|
9
|
+
export const TriggerMessageAttributesSchema = z.object({
|
|
10
|
+
lease_count: z.number().int(),
|
|
11
|
+
error_message: z.string().nullable(),
|
|
12
|
+
possible_duplicate_data: z.boolean(),
|
|
13
|
+
});
|
|
14
|
+
const TriggerMessageItemSchemaBase = z.object({
|
|
15
|
+
id: z.string(),
|
|
16
|
+
created_at: z.string(),
|
|
17
|
+
status: TriggerMessageStatusSchema,
|
|
18
|
+
message_attributes: TriggerMessageAttributesSchema,
|
|
19
|
+
});
|
|
20
|
+
export const TriggerMessageItemSchema = withFormatter(TriggerMessageItemSchemaBase, {
|
|
21
|
+
format: (item) => {
|
|
22
|
+
const details = [
|
|
23
|
+
{ text: `Status: ${item.status}`, style: "dim" },
|
|
24
|
+
{
|
|
25
|
+
text: `Lease count: ${item.message_attributes.lease_count}`,
|
|
26
|
+
style: "dim",
|
|
27
|
+
},
|
|
28
|
+
];
|
|
29
|
+
if (item.message_attributes.error_message) {
|
|
30
|
+
details.push({
|
|
31
|
+
text: `Error: ${item.message_attributes.error_message}`,
|
|
32
|
+
style: "warning",
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
if (item.message_attributes.possible_duplicate_data) {
|
|
36
|
+
details.push({
|
|
37
|
+
text: "Possible duplicate data",
|
|
38
|
+
style: "warning",
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
title: `Message ${item.id}`,
|
|
43
|
+
id: item.id,
|
|
44
|
+
details,
|
|
45
|
+
};
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
const LeasedTriggerMessageItemSchemaBase = TriggerMessageItemSchemaBase.extend({
|
|
49
|
+
payload: z.record(z.string(), z.unknown()),
|
|
50
|
+
});
|
|
51
|
+
export const LeasedTriggerMessageItemSchema = withFormatter(LeasedTriggerMessageItemSchemaBase, {
|
|
52
|
+
format: (item) => {
|
|
53
|
+
const details = [
|
|
54
|
+
{ text: `Status: ${item.status}`, style: "dim" },
|
|
55
|
+
{
|
|
56
|
+
text: `Lease count: ${item.message_attributes.lease_count}`,
|
|
57
|
+
style: "dim",
|
|
58
|
+
},
|
|
59
|
+
];
|
|
60
|
+
if (item.message_attributes.error_message) {
|
|
61
|
+
details.push({
|
|
62
|
+
text: `Error: ${item.message_attributes.error_message}`,
|
|
63
|
+
style: "warning",
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
if (item.message_attributes.possible_duplicate_data) {
|
|
67
|
+
details.push({
|
|
68
|
+
text: "Possible duplicate data",
|
|
69
|
+
style: "warning",
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
title: `Message ${item.id}`,
|
|
74
|
+
id: item.id,
|
|
75
|
+
data: item.payload,
|
|
76
|
+
details,
|
|
77
|
+
};
|
|
78
|
+
},
|
|
79
|
+
});
|