@automate.ax/catalog 0.84.0 → 0.85.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalog.d.ts +19 -0
- package/dist/catalog.js +7 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/triggers/index.d.ts +120 -0
- package/dist/triggers/index.js +2 -0
- package/dist/triggers/webflow.d.ts +63 -0
- package/dist/triggers/webflow.js +86 -0
- package/package.json +8 -2
- package/src/catalog.ts +8 -0
- package/src/index.ts +1 -0
- package/src/triggers/index.ts +2 -0
- package/src/triggers/webflow.ts +92 -0
package/dist/catalog.d.ts
CHANGED
|
@@ -681,6 +681,16 @@ export declare const whatsappService: {
|
|
|
681
681
|
readonly id: "whatsapp";
|
|
682
682
|
readonly name: "WhatsApp";
|
|
683
683
|
};
|
|
684
|
+
export declare const webflowService: {
|
|
685
|
+
readonly connectionMethods: readonly [{
|
|
686
|
+
readonly id: "oauth";
|
|
687
|
+
readonly name: "OAuth";
|
|
688
|
+
readonly type: "redirect";
|
|
689
|
+
}];
|
|
690
|
+
readonly description: "Connect Webflow sites and workspaces.";
|
|
691
|
+
readonly id: "webflow";
|
|
692
|
+
readonly name: "Webflow";
|
|
693
|
+
};
|
|
684
694
|
export declare const xaiService: {
|
|
685
695
|
readonly id: "xai";
|
|
686
696
|
readonly name: string;
|
|
@@ -1336,6 +1346,15 @@ export declare const integrationCatalog: readonly [{
|
|
|
1336
1346
|
readonly id: "vercel";
|
|
1337
1347
|
readonly name: "Vercel";
|
|
1338
1348
|
readonly preferredConnectionMethodId: "oauth";
|
|
1349
|
+
}, {
|
|
1350
|
+
readonly connectionMethods: readonly [{
|
|
1351
|
+
readonly id: "oauth";
|
|
1352
|
+
readonly name: "OAuth";
|
|
1353
|
+
readonly type: "redirect";
|
|
1354
|
+
}];
|
|
1355
|
+
readonly description: "Connect Webflow sites and workspaces.";
|
|
1356
|
+
readonly id: "webflow";
|
|
1357
|
+
readonly name: "Webflow";
|
|
1339
1358
|
}, {
|
|
1340
1359
|
readonly connectionMethods: readonly [{
|
|
1341
1360
|
readonly id: "embedded-signup";
|
package/dist/catalog.js
CHANGED
|
@@ -391,6 +391,12 @@ export const whatsappService = defineIntegrationService({
|
|
|
391
391
|
id: "whatsapp",
|
|
392
392
|
name: "WhatsApp",
|
|
393
393
|
});
|
|
394
|
+
export const webflowService = defineIntegrationService({
|
|
395
|
+
connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
|
|
396
|
+
description: "Connect Webflow sites and workspaces.",
|
|
397
|
+
id: "webflow",
|
|
398
|
+
name: "Webflow",
|
|
399
|
+
});
|
|
394
400
|
export const xaiService = defineApiKeyService({
|
|
395
401
|
description: "Connect an xAI API key.",
|
|
396
402
|
id: "xai",
|
|
@@ -435,6 +441,7 @@ export const integrationCatalog = defineIntegrationCatalog([
|
|
|
435
441
|
trelloService,
|
|
436
442
|
vercelAiGatewayService,
|
|
437
443
|
vercelService,
|
|
444
|
+
webflowService,
|
|
438
445
|
whatsappService,
|
|
439
446
|
xaiService,
|
|
440
447
|
]);
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, chatgptService, cloudflareService, codexService, cohereService, convexService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, stripeService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, whatsappService, xaiService, type IntegrationServiceId, } from "./catalog.js";
|
|
1
|
+
export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, chatgptService, cloudflareService, codexService, cohereService, convexService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, stripeService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, webflowService, whatsappService, xaiService, type IntegrationServiceId, } from "./catalog.js";
|
|
2
2
|
export { defineIntegrationCatalog, defineIntegrationService, integrationScope, type IntegrationAccountConnectionOption, type IntegrationAccountRequirement, type IntegrationConnectionDefinition, type IntegrationConnectionNotice, type IntegrationFormField, type IntegrationScopeRequirement, type IntegrationServiceDefinition, type ScopeRequirementGroup, type TriggerDefinition, type TriggerPresentation, type TriggerPresentationContext, type TriggerPresentationDetail, type TriggerScopePresentation, type TriggerPresentationValue, } from "./types.js";
|
|
3
3
|
export { getDashboardRunEndpoint, getDashboardRunEndpointKey, getHttpTriggerEndpoint, getHttpTriggerEndpointKey, getMailhookAddress, getMailhookAddressKey, DASHBOARD_RUN_CONFIG_SCHEMA, getTriggerDefinition, getTriggerName, getTriggerPresentation, isTriggerVisible, PLATFORM_EMAIL_DOMAIN, triggerCatalog, triggerDefinitions, type DashboardRunConfig, type DashboardRunEndpointOptions, type DashboardRunField, type HttpTriggerEndpointOptions, type HttpTriggerScope, type MailhookAddressOptions, type MailhookScope, type TriggerType, } from "./triggers/index.js";
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, chatgptService, cloudflareService, codexService, cohereService, convexService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, stripeService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, whatsappService, xaiService, } from "./catalog.js";
|
|
1
|
+
export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, chatgptService, cloudflareService, codexService, cohereService, convexService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, stripeService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, webflowService, whatsappService, xaiService, } from "./catalog.js";
|
|
2
2
|
export { defineIntegrationCatalog, defineIntegrationService, integrationScope, } from "./types.js";
|
|
3
3
|
export { getDashboardRunEndpoint, getDashboardRunEndpointKey, getHttpTriggerEndpoint, getHttpTriggerEndpointKey, getMailhookAddress, getMailhookAddressKey, DASHBOARD_RUN_CONFIG_SCHEMA, getTriggerDefinition, getTriggerName, getTriggerPresentation, isTriggerVisible, PLATFORM_EMAIL_DOMAIN, triggerCatalog, triggerDefinitions, } from "./triggers/index.js";
|
package/dist/triggers/index.d.ts
CHANGED
|
@@ -65,6 +65,66 @@ export declare const triggerDefinitions: {
|
|
|
65
65
|
};
|
|
66
66
|
readonly type: "whatsapp.message.statusEvent";
|
|
67
67
|
};
|
|
68
|
+
readonly webflowCollectionItemChanged: {
|
|
69
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
70
|
+
readonly type: "webflow.collectionItem.changed";
|
|
71
|
+
};
|
|
72
|
+
readonly webflowCollectionItemCreated: {
|
|
73
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
74
|
+
readonly type: "webflow.collectionItem.created";
|
|
75
|
+
};
|
|
76
|
+
readonly webflowCollectionItemDeleted: {
|
|
77
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
78
|
+
readonly type: "webflow.collectionItem.deleted";
|
|
79
|
+
};
|
|
80
|
+
readonly webflowCollectionItemPublished: {
|
|
81
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
82
|
+
readonly type: "webflow.collectionItem.published";
|
|
83
|
+
};
|
|
84
|
+
readonly webflowCollectionItemUnpublished: {
|
|
85
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
86
|
+
readonly type: "webflow.collectionItem.unpublished";
|
|
87
|
+
};
|
|
88
|
+
readonly webflowCommentCreated: {
|
|
89
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
90
|
+
readonly type: "webflow.comment.created";
|
|
91
|
+
};
|
|
92
|
+
readonly webflowEvent: {
|
|
93
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
94
|
+
readonly type: "webflow.event";
|
|
95
|
+
};
|
|
96
|
+
readonly webflowFormSubmitted: {
|
|
97
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
98
|
+
readonly type: "webflow.form.submitted";
|
|
99
|
+
};
|
|
100
|
+
readonly webflowInventoryChanged: {
|
|
101
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
102
|
+
readonly type: "webflow.inventory.changed";
|
|
103
|
+
};
|
|
104
|
+
readonly webflowOrderChanged: {
|
|
105
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
106
|
+
readonly type: "webflow.order.changed";
|
|
107
|
+
};
|
|
108
|
+
readonly webflowOrderCreated: {
|
|
109
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
110
|
+
readonly type: "webflow.order.created";
|
|
111
|
+
};
|
|
112
|
+
readonly webflowPageCreated: {
|
|
113
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
114
|
+
readonly type: "webflow.page.created";
|
|
115
|
+
};
|
|
116
|
+
readonly webflowPageDeleted: {
|
|
117
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
118
|
+
readonly type: "webflow.page.deleted";
|
|
119
|
+
};
|
|
120
|
+
readonly webflowPageMetadataUpdated: {
|
|
121
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
122
|
+
readonly type: "webflow.page.metadataUpdated";
|
|
123
|
+
};
|
|
124
|
+
readonly webflowSitePublished: {
|
|
125
|
+
readonly account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
126
|
+
readonly type: "webflow.site.published";
|
|
127
|
+
};
|
|
68
128
|
readonly vercelDeployment: {
|
|
69
129
|
readonly account: {
|
|
70
130
|
readonly connectionOptions: readonly [{
|
|
@@ -3481,6 +3541,66 @@ export declare const triggerCatalog: ({
|
|
|
3481
3541
|
readonly serviceId: "vercel";
|
|
3482
3542
|
};
|
|
3483
3543
|
type: "vercel.project.renamed";
|
|
3544
|
+
} | {
|
|
3545
|
+
name: string;
|
|
3546
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3547
|
+
type: "webflow.collectionItem.changed";
|
|
3548
|
+
} | {
|
|
3549
|
+
name: string;
|
|
3550
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3551
|
+
type: "webflow.collectionItem.created";
|
|
3552
|
+
} | {
|
|
3553
|
+
name: string;
|
|
3554
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3555
|
+
type: "webflow.collectionItem.deleted";
|
|
3556
|
+
} | {
|
|
3557
|
+
name: string;
|
|
3558
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3559
|
+
type: "webflow.collectionItem.published";
|
|
3560
|
+
} | {
|
|
3561
|
+
name: string;
|
|
3562
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3563
|
+
type: "webflow.collectionItem.unpublished";
|
|
3564
|
+
} | {
|
|
3565
|
+
name: string;
|
|
3566
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3567
|
+
type: "webflow.comment.created";
|
|
3568
|
+
} | {
|
|
3569
|
+
name: string;
|
|
3570
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3571
|
+
type: "webflow.event";
|
|
3572
|
+
} | {
|
|
3573
|
+
name: string;
|
|
3574
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3575
|
+
type: "webflow.form.submitted";
|
|
3576
|
+
} | {
|
|
3577
|
+
name: string;
|
|
3578
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3579
|
+
type: "webflow.inventory.changed";
|
|
3580
|
+
} | {
|
|
3581
|
+
name: string;
|
|
3582
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3583
|
+
type: "webflow.order.changed";
|
|
3584
|
+
} | {
|
|
3585
|
+
name: string;
|
|
3586
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3587
|
+
type: "webflow.order.created";
|
|
3588
|
+
} | {
|
|
3589
|
+
name: string;
|
|
3590
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3591
|
+
type: "webflow.page.created";
|
|
3592
|
+
} | {
|
|
3593
|
+
name: string;
|
|
3594
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3595
|
+
type: "webflow.page.deleted";
|
|
3596
|
+
} | {
|
|
3597
|
+
name: string;
|
|
3598
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3599
|
+
type: "webflow.page.metadataUpdated";
|
|
3600
|
+
} | {
|
|
3601
|
+
name: string;
|
|
3602
|
+
account: import("..").IntegrationAccountRequirement<"webflow">;
|
|
3603
|
+
type: "webflow.site.published";
|
|
3484
3604
|
} | {
|
|
3485
3605
|
name: string;
|
|
3486
3606
|
account: {
|
package/dist/triggers/index.js
CHANGED
|
@@ -12,6 +12,7 @@ import { slackTriggerDefinitions } from "./slack.js";
|
|
|
12
12
|
import { stripeTriggerDefinitions } from "./stripe.js";
|
|
13
13
|
import { trelloTriggerDefinitions } from "./trello.js";
|
|
14
14
|
import { vercelTriggerDefinitions } from "./vercel.js";
|
|
15
|
+
import { webflowTriggerDefinitions } from "./webflow.js";
|
|
15
16
|
import { whatsappTriggerDefinitions } from "./whatsapp.js";
|
|
16
17
|
import { sentenceCase } from "./name.js";
|
|
17
18
|
import { getIntegrationService } from "../catalog.js";
|
|
@@ -32,6 +33,7 @@ export const triggerDefinitions = {
|
|
|
32
33
|
...stripeTriggerDefinitions,
|
|
33
34
|
...trelloTriggerDefinitions,
|
|
34
35
|
...vercelTriggerDefinitions,
|
|
36
|
+
...webflowTriggerDefinitions,
|
|
35
37
|
...whatsappTriggerDefinitions,
|
|
36
38
|
};
|
|
37
39
|
/** Trigger definitions with inferred display names materialized. */
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { IntegrationAccountRequirement } from "../types.js";
|
|
2
|
+
export declare const webflowTriggerDefinitions: {
|
|
3
|
+
readonly webflowCollectionItemChanged: {
|
|
4
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
5
|
+
readonly type: "webflow.collectionItem.changed";
|
|
6
|
+
};
|
|
7
|
+
readonly webflowCollectionItemCreated: {
|
|
8
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
9
|
+
readonly type: "webflow.collectionItem.created";
|
|
10
|
+
};
|
|
11
|
+
readonly webflowCollectionItemDeleted: {
|
|
12
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
13
|
+
readonly type: "webflow.collectionItem.deleted";
|
|
14
|
+
};
|
|
15
|
+
readonly webflowCollectionItemPublished: {
|
|
16
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
17
|
+
readonly type: "webflow.collectionItem.published";
|
|
18
|
+
};
|
|
19
|
+
readonly webflowCollectionItemUnpublished: {
|
|
20
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
21
|
+
readonly type: "webflow.collectionItem.unpublished";
|
|
22
|
+
};
|
|
23
|
+
readonly webflowCommentCreated: {
|
|
24
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
25
|
+
readonly type: "webflow.comment.created";
|
|
26
|
+
};
|
|
27
|
+
readonly webflowEvent: {
|
|
28
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
29
|
+
readonly type: "webflow.event";
|
|
30
|
+
};
|
|
31
|
+
readonly webflowFormSubmitted: {
|
|
32
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
33
|
+
readonly type: "webflow.form.submitted";
|
|
34
|
+
};
|
|
35
|
+
readonly webflowInventoryChanged: {
|
|
36
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
37
|
+
readonly type: "webflow.inventory.changed";
|
|
38
|
+
};
|
|
39
|
+
readonly webflowOrderChanged: {
|
|
40
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
41
|
+
readonly type: "webflow.order.changed";
|
|
42
|
+
};
|
|
43
|
+
readonly webflowOrderCreated: {
|
|
44
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
45
|
+
readonly type: "webflow.order.created";
|
|
46
|
+
};
|
|
47
|
+
readonly webflowPageCreated: {
|
|
48
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
49
|
+
readonly type: "webflow.page.created";
|
|
50
|
+
};
|
|
51
|
+
readonly webflowPageDeleted: {
|
|
52
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
53
|
+
readonly type: "webflow.page.deleted";
|
|
54
|
+
};
|
|
55
|
+
readonly webflowPageMetadataUpdated: {
|
|
56
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
57
|
+
readonly type: "webflow.page.metadataUpdated";
|
|
58
|
+
};
|
|
59
|
+
readonly webflowSitePublished: {
|
|
60
|
+
readonly account: IntegrationAccountRequirement<"webflow">;
|
|
61
|
+
readonly type: "webflow.site.published";
|
|
62
|
+
};
|
|
63
|
+
};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
const WEBFLOW_SITE_READ_ACCOUNT = webflowAccount(["sites:read"]);
|
|
2
|
+
export const webflowTriggerDefinitions = {
|
|
3
|
+
webflowCollectionItemChanged: {
|
|
4
|
+
account: webflowAccount(["cms:read"]),
|
|
5
|
+
type: "webflow.collectionItem.changed",
|
|
6
|
+
},
|
|
7
|
+
webflowCollectionItemCreated: {
|
|
8
|
+
account: webflowAccount(["cms:read"]),
|
|
9
|
+
type: "webflow.collectionItem.created",
|
|
10
|
+
},
|
|
11
|
+
webflowCollectionItemDeleted: {
|
|
12
|
+
account: webflowAccount(["cms:read"]),
|
|
13
|
+
type: "webflow.collectionItem.deleted",
|
|
14
|
+
},
|
|
15
|
+
webflowCollectionItemPublished: {
|
|
16
|
+
account: webflowAccount(["cms:read"]),
|
|
17
|
+
type: "webflow.collectionItem.published",
|
|
18
|
+
},
|
|
19
|
+
webflowCollectionItemUnpublished: {
|
|
20
|
+
account: webflowAccount(["cms:read"]),
|
|
21
|
+
type: "webflow.collectionItem.unpublished",
|
|
22
|
+
},
|
|
23
|
+
webflowCommentCreated: {
|
|
24
|
+
account: webflowAccount(["comments:read"]),
|
|
25
|
+
type: "webflow.comment.created",
|
|
26
|
+
},
|
|
27
|
+
webflowEvent: {
|
|
28
|
+
account: webflowAccount([
|
|
29
|
+
"cms:read",
|
|
30
|
+
"comments:read",
|
|
31
|
+
"ecommerce:read",
|
|
32
|
+
"forms:read",
|
|
33
|
+
"pages:read",
|
|
34
|
+
"sites:read",
|
|
35
|
+
]),
|
|
36
|
+
type: "webflow.event",
|
|
37
|
+
},
|
|
38
|
+
webflowFormSubmitted: {
|
|
39
|
+
account: webflowAccount(["forms:read"]),
|
|
40
|
+
type: "webflow.form.submitted",
|
|
41
|
+
},
|
|
42
|
+
webflowInventoryChanged: {
|
|
43
|
+
account: webflowAccount(["ecommerce:read"]),
|
|
44
|
+
type: "webflow.inventory.changed",
|
|
45
|
+
},
|
|
46
|
+
webflowOrderChanged: {
|
|
47
|
+
account: webflowAccount(["ecommerce:read"]),
|
|
48
|
+
type: "webflow.order.changed",
|
|
49
|
+
},
|
|
50
|
+
webflowOrderCreated: {
|
|
51
|
+
account: webflowAccount(["ecommerce:read"]),
|
|
52
|
+
type: "webflow.order.created",
|
|
53
|
+
},
|
|
54
|
+
webflowPageCreated: {
|
|
55
|
+
account: webflowAccount(["pages:read"]),
|
|
56
|
+
type: "webflow.page.created",
|
|
57
|
+
},
|
|
58
|
+
webflowPageDeleted: {
|
|
59
|
+
account: webflowAccount(["pages:read"]),
|
|
60
|
+
type: "webflow.page.deleted",
|
|
61
|
+
},
|
|
62
|
+
webflowPageMetadataUpdated: {
|
|
63
|
+
account: webflowAccount(["pages:read"]),
|
|
64
|
+
type: "webflow.page.metadataUpdated",
|
|
65
|
+
},
|
|
66
|
+
webflowSitePublished: {
|
|
67
|
+
account: WEBFLOW_SITE_READ_ACCOUNT,
|
|
68
|
+
type: "webflow.site.published",
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Requires webhook management plus the scopes needed for delivered events.
|
|
73
|
+
*
|
|
74
|
+
* @param eventScopes - Read scopes required by the selected provider events.
|
|
75
|
+
*/
|
|
76
|
+
function webflowAccount(eventScopes) {
|
|
77
|
+
return {
|
|
78
|
+
connectionOptions: [
|
|
79
|
+
{
|
|
80
|
+
connectionMethodId: "oauth",
|
|
81
|
+
requiredScopes: ["sites:write", ...eventScopes],
|
|
82
|
+
},
|
|
83
|
+
],
|
|
84
|
+
serviceId: "webflow",
|
|
85
|
+
};
|
|
86
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@automate.ax/catalog",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.85.0",
|
|
4
4
|
"description": "Shared integration service and trigger definitions for Automate.ax.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
"./triggers/stripe": "./src/triggers/stripe.ts",
|
|
40
40
|
"./triggers/trello": "./src/triggers/trello.ts",
|
|
41
41
|
"./triggers/vercel": "./src/triggers/vercel.ts",
|
|
42
|
+
"./triggers/webflow": "./src/triggers/webflow.ts",
|
|
42
43
|
"./triggers/whatsapp": "./src/triggers/whatsapp.ts"
|
|
43
44
|
},
|
|
44
45
|
"cjs": false,
|
|
@@ -47,7 +48,7 @@
|
|
|
47
48
|
}
|
|
48
49
|
},
|
|
49
50
|
"devDependencies": {
|
|
50
|
-
"@internal/config": "0.
|
|
51
|
+
"@internal/config": "0.2.0",
|
|
51
52
|
"@types/bun": "latest",
|
|
52
53
|
"@typescript/native": "npm:typescript@^7.0.2",
|
|
53
54
|
"@zachsents/oxlint-config": "^0.4.1",
|
|
@@ -183,6 +184,11 @@
|
|
|
183
184
|
"types": "./dist/triggers/vercel.d.ts",
|
|
184
185
|
"default": "./dist/triggers/vercel.js"
|
|
185
186
|
},
|
|
187
|
+
"./triggers/webflow": {
|
|
188
|
+
"bun": "./src/triggers/webflow.ts",
|
|
189
|
+
"types": "./dist/triggers/webflow.d.ts",
|
|
190
|
+
"default": "./dist/triggers/webflow.js"
|
|
191
|
+
},
|
|
186
192
|
"./triggers/whatsapp": {
|
|
187
193
|
"bun": "./src/triggers/whatsapp.ts",
|
|
188
194
|
"types": "./dist/triggers/whatsapp.d.ts",
|
package/src/catalog.ts
CHANGED
|
@@ -438,6 +438,13 @@ export const whatsappService = defineIntegrationService({
|
|
|
438
438
|
name: "WhatsApp",
|
|
439
439
|
})
|
|
440
440
|
|
|
441
|
+
export const webflowService = defineIntegrationService({
|
|
442
|
+
connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
|
|
443
|
+
description: "Connect Webflow sites and workspaces.",
|
|
444
|
+
id: "webflow",
|
|
445
|
+
name: "Webflow",
|
|
446
|
+
})
|
|
447
|
+
|
|
441
448
|
export const xaiService = defineApiKeyService({
|
|
442
449
|
description: "Connect an xAI API key.",
|
|
443
450
|
id: "xai",
|
|
@@ -483,6 +490,7 @@ export const integrationCatalog = defineIntegrationCatalog([
|
|
|
483
490
|
trelloService,
|
|
484
491
|
vercelAiGatewayService,
|
|
485
492
|
vercelService,
|
|
493
|
+
webflowService,
|
|
486
494
|
whatsappService,
|
|
487
495
|
xaiService,
|
|
488
496
|
])
|
package/src/index.ts
CHANGED
package/src/triggers/index.ts
CHANGED
|
@@ -12,6 +12,7 @@ import { slackTriggerDefinitions } from "./slack"
|
|
|
12
12
|
import { stripeTriggerDefinitions } from "./stripe"
|
|
13
13
|
import { trelloTriggerDefinitions } from "./trello"
|
|
14
14
|
import { vercelTriggerDefinitions } from "./vercel"
|
|
15
|
+
import { webflowTriggerDefinitions } from "./webflow"
|
|
15
16
|
import { whatsappTriggerDefinitions } from "./whatsapp"
|
|
16
17
|
import { sentenceCase } from "./name"
|
|
17
18
|
import { getIntegrationService } from "../catalog"
|
|
@@ -56,6 +57,7 @@ export const triggerDefinitions = {
|
|
|
56
57
|
...stripeTriggerDefinitions,
|
|
57
58
|
...trelloTriggerDefinitions,
|
|
58
59
|
...vercelTriggerDefinitions,
|
|
60
|
+
...webflowTriggerDefinitions,
|
|
59
61
|
...whatsappTriggerDefinitions,
|
|
60
62
|
} as const satisfies Record<string, TriggerDefinition>
|
|
61
63
|
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import type { IntegrationAccountRequirement, TriggerDefinition } from "../types"
|
|
2
|
+
|
|
3
|
+
const WEBFLOW_SITE_READ_ACCOUNT = webflowAccount(["sites:read"])
|
|
4
|
+
|
|
5
|
+
export const webflowTriggerDefinitions = {
|
|
6
|
+
webflowCollectionItemChanged: {
|
|
7
|
+
account: webflowAccount(["cms:read"]),
|
|
8
|
+
type: "webflow.collectionItem.changed",
|
|
9
|
+
},
|
|
10
|
+
webflowCollectionItemCreated: {
|
|
11
|
+
account: webflowAccount(["cms:read"]),
|
|
12
|
+
type: "webflow.collectionItem.created",
|
|
13
|
+
},
|
|
14
|
+
webflowCollectionItemDeleted: {
|
|
15
|
+
account: webflowAccount(["cms:read"]),
|
|
16
|
+
type: "webflow.collectionItem.deleted",
|
|
17
|
+
},
|
|
18
|
+
webflowCollectionItemPublished: {
|
|
19
|
+
account: webflowAccount(["cms:read"]),
|
|
20
|
+
type: "webflow.collectionItem.published",
|
|
21
|
+
},
|
|
22
|
+
webflowCollectionItemUnpublished: {
|
|
23
|
+
account: webflowAccount(["cms:read"]),
|
|
24
|
+
type: "webflow.collectionItem.unpublished",
|
|
25
|
+
},
|
|
26
|
+
webflowCommentCreated: {
|
|
27
|
+
account: webflowAccount(["comments:read"]),
|
|
28
|
+
type: "webflow.comment.created",
|
|
29
|
+
},
|
|
30
|
+
webflowEvent: {
|
|
31
|
+
account: webflowAccount([
|
|
32
|
+
"cms:read",
|
|
33
|
+
"comments:read",
|
|
34
|
+
"ecommerce:read",
|
|
35
|
+
"forms:read",
|
|
36
|
+
"pages:read",
|
|
37
|
+
"sites:read",
|
|
38
|
+
]),
|
|
39
|
+
type: "webflow.event",
|
|
40
|
+
},
|
|
41
|
+
webflowFormSubmitted: {
|
|
42
|
+
account: webflowAccount(["forms:read"]),
|
|
43
|
+
type: "webflow.form.submitted",
|
|
44
|
+
},
|
|
45
|
+
webflowInventoryChanged: {
|
|
46
|
+
account: webflowAccount(["ecommerce:read"]),
|
|
47
|
+
type: "webflow.inventory.changed",
|
|
48
|
+
},
|
|
49
|
+
webflowOrderChanged: {
|
|
50
|
+
account: webflowAccount(["ecommerce:read"]),
|
|
51
|
+
type: "webflow.order.changed",
|
|
52
|
+
},
|
|
53
|
+
webflowOrderCreated: {
|
|
54
|
+
account: webflowAccount(["ecommerce:read"]),
|
|
55
|
+
type: "webflow.order.created",
|
|
56
|
+
},
|
|
57
|
+
webflowPageCreated: {
|
|
58
|
+
account: webflowAccount(["pages:read"]),
|
|
59
|
+
type: "webflow.page.created",
|
|
60
|
+
},
|
|
61
|
+
webflowPageDeleted: {
|
|
62
|
+
account: webflowAccount(["pages:read"]),
|
|
63
|
+
type: "webflow.page.deleted",
|
|
64
|
+
},
|
|
65
|
+
webflowPageMetadataUpdated: {
|
|
66
|
+
account: webflowAccount(["pages:read"]),
|
|
67
|
+
type: "webflow.page.metadataUpdated",
|
|
68
|
+
},
|
|
69
|
+
webflowSitePublished: {
|
|
70
|
+
account: WEBFLOW_SITE_READ_ACCOUNT,
|
|
71
|
+
type: "webflow.site.published",
|
|
72
|
+
},
|
|
73
|
+
} as const satisfies Record<string, TriggerDefinition>
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Requires webhook management plus the scopes needed for delivered events.
|
|
77
|
+
*
|
|
78
|
+
* @param eventScopes - Read scopes required by the selected provider events.
|
|
79
|
+
*/
|
|
80
|
+
function webflowAccount(
|
|
81
|
+
eventScopes: readonly string[],
|
|
82
|
+
): IntegrationAccountRequirement<"webflow"> {
|
|
83
|
+
return {
|
|
84
|
+
connectionOptions: [
|
|
85
|
+
{
|
|
86
|
+
connectionMethodId: "oauth",
|
|
87
|
+
requiredScopes: ["sites:write", ...eventScopes],
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
serviceId: "webflow",
|
|
91
|
+
}
|
|
92
|
+
}
|