terse-cli 0.2.16 → 0.3.1
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/_tmp_create_project.d.ts +2 -0
- package/dist/_tmp_create_project.d.ts.map +1 -0
- package/dist/_tmp_create_project.js +17 -0
- package/dist/_tmp_create_project.js.map +1 -0
- package/dist/_tmp_delete_agent.d.ts +2 -0
- package/dist/_tmp_delete_agent.d.ts.map +1 -0
- package/dist/_tmp_delete_agent.js +14 -0
- package/dist/_tmp_delete_agent.js.map +1 -0
- package/dist/_tmp_manual_trigger.d.ts +2 -0
- package/dist/_tmp_manual_trigger.d.ts.map +1 -0
- package/dist/_tmp_manual_trigger.js +17 -0
- package/dist/_tmp_manual_trigger.js.map +1 -0
- package/dist/_tmp_patch_active.d.ts +2 -0
- package/dist/_tmp_patch_active.d.ts.map +1 -0
- package/dist/_tmp_patch_active.js +21 -0
- package/dist/_tmp_patch_active.js.map +1 -0
- package/dist/codegen.d.ts +15 -0
- package/dist/codegen.d.ts.map +1 -1
- package/dist/codegen.js +466 -81
- package/dist/codegen.js.map +1 -1
- package/dist/commands/deployTheme.d.ts +28 -0
- package/dist/commands/deployTheme.d.ts.map +1 -0
- package/dist/commands/deployTheme.js +68 -0
- package/dist/commands/deployTheme.js.map +1 -0
- package/dist/commands/dev.d.ts +3 -0
- package/dist/commands/dev.d.ts.map +1 -0
- package/dist/commands/dev.js +47 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/fsExec.d.ts +8 -0
- package/dist/commands/fsExec.d.ts.map +1 -0
- package/dist/commands/fsExec.js +46 -0
- package/dist/commands/fsExec.js.map +1 -0
- package/dist/commands/generate.d.ts.map +1 -1
- package/dist/commands/generate.js +36 -267
- package/dist/commands/generate.js.map +1 -1
- package/dist/commands/serve.d.ts +1 -0
- package/dist/commands/serve.d.ts.map +1 -0
- package/dist/commands/serve.js +2 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/terseCliTheme.d.ts +28 -0
- package/dist/commands/terseCliTheme.d.ts.map +1 -0
- package/dist/commands/terseCliTheme.js +68 -0
- package/dist/commands/terseCliTheme.js.map +1 -0
- package/dist/commands/tool.d.ts +6 -0
- package/dist/commands/tool.d.ts.map +1 -0
- package/dist/commands/tool.js +34 -0
- package/dist/commands/tool.js.map +1 -0
- package/dist/commands/toolRun.js +1 -1
- package/dist/commands/toolRun.js.map +1 -1
- package/dist/data/standardSlackEmoji.d.ts +2 -0
- package/dist/data/standardSlackEmoji.d.ts.map +1 -0
- package/dist/data/standardSlackEmoji.js +1978 -0
- package/dist/data/standardSlackEmoji.js.map +1 -0
- package/dist/data/standardSlackEmoji.json +1974 -0
- package/dist/deploy.d.ts +2 -1
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js +61 -38
- package/dist/deploy.js.map +1 -1
- package/dist/generate.d.ts +2 -1
- package/dist/generate.d.ts.map +1 -1
- package/dist/generate.js +67 -69
- package/dist/generate.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/init.d.ts +2 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +45 -96
- package/dist/init.js.map +1 -1
- package/dist/integrate.d.ts +1 -0
- package/dist/integrate.d.ts.map +1 -1
- package/dist/integrate.js +191 -11
- package/dist/integrate.js.map +1 -1
- package/dist/nonInteractive.d.ts +4 -2
- package/dist/nonInteractive.d.ts.map +1 -1
- package/dist/nonInteractive.js +5 -2
- package/dist/nonInteractive.js.map +1 -1
- package/dist/perf.d.ts +9 -0
- package/dist/perf.d.ts.map +1 -0
- package/dist/perf.js +59 -0
- package/dist/perf.js.map +1 -0
- package/dist/providers/LanguageProvider.d.ts +6 -2
- package/dist/providers/LanguageProvider.d.ts.map +1 -1
- package/dist/providers/codegen.test.d.ts +2 -0
- package/dist/providers/codegen.test.d.ts.map +1 -0
- package/dist/providers/codegen.test.js +45 -0
- package/dist/providers/codegen.test.js.map +1 -0
- package/dist/providers/codegenTypes.d.ts +16 -134
- package/dist/providers/codegenTypes.d.ts.map +1 -1
- package/dist/providers/python/PythonProvider.js +1 -0
- package/dist/providers/python/PythonProvider.js.map +1 -1
- package/dist/providers/python/PythonProvider.test.d.ts +2 -0
- package/dist/providers/python/PythonProvider.test.d.ts.map +1 -0
- package/dist/providers/python/PythonProvider.test.js +169 -0
- package/dist/providers/python/PythonProvider.test.js.map +1 -0
- package/dist/providers/typescript/TypeScriptProvider.d.ts +2 -2
- package/dist/providers/typescript/TypeScriptProvider.d.ts.map +1 -1
- package/dist/providers/typescript/TypeScriptProvider.js +53 -4
- package/dist/providers/typescript/TypeScriptProvider.js.map +1 -1
- package/dist/providers/typescript/attioProjection.d.ts +50 -0
- package/dist/providers/typescript/attioProjection.d.ts.map +1 -0
- package/dist/providers/typescript/attioProjection.js +358 -0
- package/dist/providers/typescript/attioProjection.js.map +1 -0
- package/dist/providers/typescript/modules/IntegrationModule.d.ts +82 -0
- package/dist/providers/typescript/modules/IntegrationModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/IntegrationModule.js +184 -0
- package/dist/providers/typescript/modules/IntegrationModule.js.map +1 -0
- package/dist/providers/typescript/modules/attio/AttioModule.d.ts +55 -0
- package/dist/providers/typescript/modules/attio/AttioModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/attio/AttioModule.js +163 -0
- package/dist/providers/typescript/modules/attio/AttioModule.js.map +1 -0
- package/dist/providers/typescript/modules/attio/attioProjection.d.ts +50 -0
- package/dist/providers/typescript/modules/attio/attioProjection.d.ts.map +1 -0
- package/dist/providers/typescript/modules/attio/attioProjection.js +358 -0
- package/dist/providers/typescript/modules/attio/attioProjection.js.map +1 -0
- package/dist/providers/typescript/modules/attio/attioToolMethods.d.ts +4 -0
- package/dist/providers/typescript/modules/attio/attioToolMethods.d.ts.map +1 -0
- package/dist/providers/typescript/modules/attio/attioToolMethods.js +295 -0
- package/dist/providers/typescript/modules/attio/attioToolMethods.js.map +1 -0
- package/dist/providers/typescript/modules/attio/attioTypes.d.ts +36 -0
- package/dist/providers/typescript/modules/attio/attioTypes.d.ts.map +1 -0
- package/dist/providers/typescript/modules/attio/attioTypes.js +2 -0
- package/dist/providers/typescript/modules/attio/attioTypes.js.map +1 -0
- package/dist/providers/typescript/modules/datadog/DatadogModule.d.ts +25 -0
- package/dist/providers/typescript/modules/datadog/DatadogModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/datadog/DatadogModule.js +33 -0
- package/dist/providers/typescript/modules/datadog/DatadogModule.js.map +1 -0
- package/dist/providers/typescript/modules/github/GithubModule.d.ts +44 -0
- package/dist/providers/typescript/modules/github/GithubModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/github/GithubModule.js +111 -0
- package/dist/providers/typescript/modules/github/GithubModule.js.map +1 -0
- package/dist/providers/typescript/modules/gmail/GmailModule.d.ts +17 -0
- package/dist/providers/typescript/modules/gmail/GmailModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/gmail/GmailModule.js +30 -0
- package/dist/providers/typescript/modules/gmail/GmailModule.js.map +1 -0
- package/dist/providers/typescript/modules/hey_reach/HeyReachModule.d.ts +25 -0
- package/dist/providers/typescript/modules/hey_reach/HeyReachModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/hey_reach/HeyReachModule.js +33 -0
- package/dist/providers/typescript/modules/hey_reach/HeyReachModule.js.map +1 -0
- package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.d.ts +26 -0
- package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.js +34 -0
- package/dist/providers/typescript/modules/launchdarkly/LaunchDarklyModule.js.map +1 -0
- package/dist/providers/typescript/modules/linear/LinearModule.d.ts +35 -0
- package/dist/providers/typescript/modules/linear/LinearModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/linear/LinearModule.js +48 -0
- package/dist/providers/typescript/modules/linear/LinearModule.js.map +1 -0
- package/dist/providers/typescript/modules/moduleHelpers.d.ts +23 -0
- package/dist/providers/typescript/modules/moduleHelpers.d.ts.map +1 -0
- package/dist/providers/typescript/modules/moduleHelpers.js +74 -0
- package/dist/providers/typescript/modules/moduleHelpers.js.map +1 -0
- package/dist/providers/typescript/modules/notion/NotionModule.d.ts +33 -0
- package/dist/providers/typescript/modules/notion/NotionModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/notion/NotionModule.js +44 -0
- package/dist/providers/typescript/modules/notion/NotionModule.js.map +1 -0
- package/dist/providers/typescript/modules/posthog/PosthogModule.d.ts +30 -0
- package/dist/providers/typescript/modules/posthog/PosthogModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/posthog/PosthogModule.js +60 -0
- package/dist/providers/typescript/modules/posthog/PosthogModule.js.map +1 -0
- package/dist/providers/typescript/modules/registry.d.ts +11 -0
- package/dist/providers/typescript/modules/registry.d.ts.map +1 -0
- package/dist/providers/typescript/modules/registry.js +37 -0
- package/dist/providers/typescript/modules/registry.js.map +1 -0
- package/dist/providers/typescript/modules/resend/ResendModule.d.ts +32 -0
- package/dist/providers/typescript/modules/resend/ResendModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/resend/ResendModule.js +71 -0
- package/dist/providers/typescript/modules/resend/ResendModule.js.map +1 -0
- package/dist/providers/typescript/modules/slack/SlackModule.d.ts +32 -0
- package/dist/providers/typescript/modules/slack/SlackModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/slack/SlackModule.js +51 -0
- package/dist/providers/typescript/modules/slack/SlackModule.js.map +1 -0
- package/dist/providers/typescript/modules/snowflake/SnowflakeModule.d.ts +20 -0
- package/dist/providers/typescript/modules/snowflake/SnowflakeModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/snowflake/SnowflakeModule.js +27 -0
- package/dist/providers/typescript/modules/snowflake/SnowflakeModule.js.map +1 -0
- package/dist/providers/typescript/modules/templateRenderer.d.ts +17 -0
- package/dist/providers/typescript/modules/templateRenderer.d.ts.map +1 -0
- package/dist/providers/typescript/modules/templateRenderer.js +64 -0
- package/dist/providers/typescript/modules/templateRenderer.js.map +1 -0
- package/dist/providers/typescript/modules/terse/TerseModule.d.ts +20 -0
- package/dist/providers/typescript/modules/terse/TerseModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/terse/TerseModule.js +62 -0
- package/dist/providers/typescript/modules/terse/TerseModule.js.map +1 -0
- package/dist/providers/typescript/modules/workos/WorkOSModule.d.ts +17 -0
- package/dist/providers/typescript/modules/workos/WorkOSModule.d.ts.map +1 -0
- package/dist/providers/typescript/modules/workos/WorkOSModule.js +30 -0
- package/dist/providers/typescript/modules/workos/WorkOSModule.js.map +1 -0
- package/dist/providers/typescript/prepareCodegenData.test.d.ts +2 -0
- package/dist/providers/typescript/prepareCodegenData.test.d.ts.map +1 -0
- package/dist/providers/typescript/prepareCodegenData.test.js +54 -0
- package/dist/providers/typescript/prepareCodegenData.test.js.map +1 -0
- package/dist/providers/typescript/projectedTypes.d.ts +11 -0
- package/dist/providers/typescript/projectedTypes.d.ts.map +1 -0
- package/dist/providers/typescript/projectedTypes.js +53 -0
- package/dist/providers/typescript/projectedTypes.js.map +1 -0
- package/dist/providers/typescript/projectionPrinter.d.ts +26 -0
- package/dist/providers/typescript/projectionPrinter.d.ts.map +1 -0
- package/dist/providers/typescript/projectionPrinter.js +110 -0
- package/dist/providers/typescript/projectionPrinter.js.map +1 -0
- package/dist/providers/typescript/replayLogDedupe.d.ts +6 -0
- package/dist/providers/typescript/replayLogDedupe.d.ts.map +1 -0
- package/dist/providers/typescript/replayLogDedupe.js +156 -0
- package/dist/providers/typescript/replayLogDedupe.js.map +1 -0
- package/dist/providers/typescript/templateEngine.d.ts +8 -2
- package/dist/providers/typescript/templateEngine.d.ts.map +1 -1
- package/dist/providers/typescript/templateEngine.js +241 -29
- package/dist/providers/typescript/templateEngine.js.map +1 -1
- package/dist/providers/typescript/triggerPayloads.d.ts +7 -0
- package/dist/providers/typescript/triggerPayloads.d.ts.map +1 -0
- package/dist/providers/typescript/triggerPayloads.js +60 -0
- package/dist/providers/typescript/triggerPayloads.js.map +1 -0
- package/dist/providers/typescript/triggerTypeDeclarations.d.ts +7 -0
- package/dist/providers/typescript/triggerTypeDeclarations.d.ts.map +1 -0
- package/dist/providers/typescript/triggerTypeDeclarations.js +42 -0
- package/dist/providers/typescript/triggerTypeDeclarations.js.map +1 -0
- package/dist/providers/typescript/triggerTypeRegistry.d.ts +7 -0
- package/dist/providers/typescript/triggerTypeRegistry.d.ts.map +1 -0
- package/dist/providers/typescript/triggerTypeRegistry.js +198 -0
- package/dist/providers/typescript/triggerTypeRegistry.js.map +1 -0
- package/dist/providers/typescript/typePrinter.d.ts +23 -0
- package/dist/providers/typescript/typePrinter.d.ts.map +1 -0
- package/dist/providers/typescript/typePrinter.js +123 -0
- package/dist/providers/typescript/typePrinter.js.map +1 -0
- package/dist/run.d.ts +2 -11
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +42 -153
- package/dist/run.js.map +1 -1
- package/dist/sampleEventId.d.ts +0 -4
- package/dist/sampleEventId.d.ts.map +1 -1
- package/dist/sampleEventId.js +0 -4
- package/dist/sampleEventId.js.map +1 -1
- package/dist/shared/ApiRoutes.d.ts +19 -0
- package/dist/shared/ApiRoutes.d.ts.map +1 -1
- package/dist/shared/ApiRoutes.js +17 -1
- package/dist/shared/ApiRoutes.js.map +1 -1
- package/dist/shared/Configs.d.ts +24 -2
- package/dist/shared/Configs.d.ts.map +1 -1
- package/dist/shared/Configs.js +32 -2
- package/dist/shared/Configs.js.map +1 -1
- package/dist/shared/Integrations.d.ts +18 -1
- package/dist/shared/Integrations.d.ts.map +1 -1
- package/dist/shared/Integrations.js +10 -1
- package/dist/shared/Integrations.js.map +1 -1
- package/dist/shared/InvalidationKeys.d.ts +1 -0
- package/dist/shared/InvalidationKeys.d.ts.map +1 -1
- package/dist/shared/InvalidationKeys.js +3 -0
- package/dist/shared/InvalidationKeys.js.map +1 -1
- package/dist/shared/ModelEvents.d.ts +9 -0
- package/dist/shared/ModelEvents.d.ts.map +1 -1
- package/dist/shared/ModelEvents.js +15 -0
- package/dist/shared/ModelEvents.js.map +1 -1
- package/dist/shared/ToolDisplayUtils.d.ts.map +1 -1
- package/dist/shared/ToolDisplayUtils.js +107 -11
- package/dist/shared/ToolDisplayUtils.js.map +1 -1
- package/dist/shared/types.d.ts +1013 -108
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/types.js.map +1 -1
- package/dist/test.d.ts +2 -1
- package/dist/test.d.ts.map +1 -1
- package/dist/test.js +43 -23
- package/dist/test.js.map +1 -1
- package/dist/triggerParseDetail.d.ts +8 -0
- package/dist/triggerParseDetail.d.ts.map +1 -0
- package/dist/triggerParseDetail.js +30 -0
- package/dist/triggerParseDetail.js.map +1 -0
- package/dist/util.d.ts +2 -3
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +3 -3
- package/dist/util.js.map +1 -1
- package/package.json +7 -5
- package/src/providers/typescript/modules/attio/attio.schemas.hbs +150 -0
- package/src/providers/typescript/modules/attio/attio.tools.hbs +192 -0
- package/src/providers/typescript/modules/attio/attio.triggers.hbs +130 -0
- package/src/providers/typescript/modules/datadog/datadog.tools.hbs +16 -0
- package/src/providers/typescript/modules/github/github.tools.hbs +68 -0
- package/src/providers/typescript/modules/github/github.triggers.hbs +40 -0
- package/src/providers/typescript/modules/gmail/gmail.tools.hbs +17 -0
- package/src/providers/typescript/modules/gmail/gmail.triggers.hbs +16 -0
- package/src/providers/typescript/modules/hey_reach/hey_reach.tools.hbs +9 -0
- package/src/providers/typescript/modules/hey_reach/hey_reach.triggers.hbs +56 -0
- package/src/providers/typescript/modules/launchdarkly/launchdarkly.tools.hbs +16 -0
- package/src/providers/typescript/modules/linear/linear.tools.hbs +23 -0
- package/src/providers/typescript/modules/linear/linear.triggers.hbs +24 -0
- package/src/providers/typescript/modules/notion/notion.tools.hbs +20 -0
- package/src/providers/typescript/modules/posthog/posthog.tools.hbs +28 -0
- package/{templates/typescript/codegen/partials/resend-section.hbs → src/providers/typescript/modules/resend/resend.tools.hbs} +17 -5
- package/src/providers/typescript/modules/slack/slack.tools.hbs +18 -0
- package/src/providers/typescript/modules/slack/slack.triggers.hbs +28 -0
- package/src/providers/typescript/modules/snowflake/snowflake.tools.hbs +12 -0
- package/src/providers/typescript/modules/terse/terse.tools.hbs +22 -0
- package/src/providers/typescript/modules/terse/terse.triggers.hbs +33 -0
- package/src/providers/typescript/modules/workos/workos.tools.hbs +12 -0
- package/src/providers/typescript/modules/workos/workos.triggers.hbs +64 -0
- package/templates/typescript/codegen/.impeccable/hook.cache.json +1 -0
- package/templates/typescript/codegen/common.hbs +6 -0
- package/templates/typescript/codegen/partials/tools-slice.hbs +18 -0
- package/templates/typescript/codegen/root.hbs +72 -0
- package/templates/typescript/codegen/sdk-primitives.hbs +42 -0
- package/dist/jsonOutput.d.ts +0 -19
- package/dist/jsonOutput.d.ts.map +0 -1
- package/dist/jsonOutput.js +0 -25
- package/dist/jsonOutput.js.map +0 -1
- package/dist/providers/typescript/parkSignals.d.ts +0 -7
- package/dist/providers/typescript/parkSignals.d.ts.map +0 -1
- package/dist/providers/typescript/parkSignals.js +0 -45
- package/dist/providers/typescript/parkSignals.js.map +0 -1
- package/dist/replay.d.ts +0 -3
- package/dist/replay.d.ts.map +0 -1
- package/dist/replay.js +0 -20
- package/dist/replay.js.map +0 -1
- package/dist/testRelay.d.ts +0 -6
- package/dist/testRelay.d.ts.map +0 -1
- package/dist/testRelay.js +0 -91
- package/dist/testRelay.js.map +0 -1
- package/dist/urls.d.ts +0 -3
- package/dist/urls.d.ts.map +0 -1
- package/dist/urls.js +0 -27
- package/dist/urls.js.map +0 -1
- package/templates/typescript/codegen/generated.hbs +0 -15
- package/templates/typescript/codegen/partials/attio-section.hbs +0 -86
- package/templates/typescript/codegen/partials/datadog-section.hbs +0 -3
- package/templates/typescript/codegen/partials/github-section.hbs +0 -30
- package/templates/typescript/codegen/partials/header.hbs +0 -17
- package/templates/typescript/codegen/partials/hey-reach-section.hbs +0 -3
- package/templates/typescript/codegen/partials/launchdarkly-section.hbs +0 -3
- package/templates/typescript/codegen/partials/linear-section.hbs +0 -5
- package/templates/typescript/codegen/partials/notion-section.hbs +0 -5
- package/templates/typescript/codegen/partials/posthog-section.hbs +0 -15
- package/templates/typescript/codegen/partials/skills-section.hbs +0 -105
- package/templates/typescript/codegen/partials/slack-section.hbs +0 -5
- package/templates/typescript/codegen/partials/tools-section.hbs +0 -94
- package/templates/typescript/codegen/partials/triggers-section.hbs +0 -353
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ApiRoutes, IntegrationType } from "terse-types";
|
|
2
|
+
import { fetchWithAuth } from "../../../../api.js";
|
|
3
|
+
import { IntegrationModule } from "../IntegrationModule.js";
|
|
4
|
+
import { buildSkillToolType } from "../moduleHelpers.js";
|
|
5
|
+
export class GmailModule extends IntegrationModule {
|
|
6
|
+
type = IntegrationType.GMAIL;
|
|
7
|
+
summaryLabel = "Gmail";
|
|
8
|
+
sectionImports = ["GmailConfig", "GmailOutputConfig", "GmailDraftOutputConfig", "TypedSkill", "TypedTrigger", "GmailEventType"];
|
|
9
|
+
async fetchInstances(apiKey) {
|
|
10
|
+
const instances = await fetchWithAuth(ApiRoutes.GMAIL.INTEGRATIONS, apiKey);
|
|
11
|
+
return instances.map(inst => ({ id: inst.id, displayName: inst.email || inst.id }));
|
|
12
|
+
}
|
|
13
|
+
instanceId(instance) {
|
|
14
|
+
return instance.id;
|
|
15
|
+
}
|
|
16
|
+
get triggersAggregateLines() {
|
|
17
|
+
return [" gmail: gmailTriggers,"];
|
|
18
|
+
}
|
|
19
|
+
get skillsAggregateLines() {
|
|
20
|
+
return [" /** Gmail — send emails */", " gmail: gmailSkill,", " /** Gmail — create draft emails (no auto-send) */", " gmailDraft: gmailDraftSkill,"];
|
|
21
|
+
}
|
|
22
|
+
prepareSection(input) {
|
|
23
|
+
const inst = this.requireInstance(input);
|
|
24
|
+
return {
|
|
25
|
+
id: inst.id,
|
|
26
|
+
skillToolType: buildSkillToolType(input.tools)
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=GmailModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GmailModule.js","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/gmail/GmailModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAgC,iBAAiB,EAA0B,MAAM,yBAAyB,CAAA;AACjH,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,OAAO,WAAY,SAAQ,iBAA+D;IACnF,IAAI,GAAG,eAAe,CAAC,KAAK,CAAA;IAC5B,YAAY,GAAG,OAAO,CAAA;IACZ,cAAc,GAAG,CAAC,aAAa,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAA;IAElJ,KAAK,CAAC,cAAc,CAAC,MAAc;QAC/B,MAAM,SAAS,GAAG,MAAM,aAAa,CAAqB,SAAS,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QAC/F,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IACvF,CAAC;IAED,UAAU,CAAC,QAAiC;QACxC,OAAO,QAAQ,CAAC,EAAE,CAAA;IACtB,CAAC;IAED,IAAc,sBAAsB;QAChC,OAAO,CAAC,2BAA2B,CAAC,CAAA;IACxC,CAAC;IAED,IAAc,oBAAoB;QAC9B,OAAO,CAAC,gCAAgC,EAAE,wBAAwB,EAAE,uDAAuD,EAAE,kCAAkC,CAAC,CAAA;IACpK,CAAC;IAES,cAAc,CAAC,KAAiD;QACtE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QACxC,OAAO;YACH,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,aAAa,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC;SACjD,CAAA;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IntegrationType } from "terse-types";
|
|
2
|
+
import { IntegrationModule, type ModuleRenderInput } from "../IntegrationModule.js";
|
|
3
|
+
import { type ResourceClassContext } from "../moduleHelpers.js";
|
|
4
|
+
export declare class HeyReachModule extends IntegrationModule<HeyReachInstanceData, HeyReachSectionContext> {
|
|
5
|
+
readonly type = IntegrationType.HEY_REACH;
|
|
6
|
+
readonly summaryLabel = "HeyReach";
|
|
7
|
+
protected readonly sectionImports: string[];
|
|
8
|
+
fetchInstances(apiKey: string): Promise<HeyReachInstanceData[]>;
|
|
9
|
+
instanceId(instance: HeyReachInstanceData): string;
|
|
10
|
+
protected get triggersAggregateLines(): readonly string[];
|
|
11
|
+
protected prepareSection(input: ModuleRenderInput<HeyReachInstanceData>): HeyReachSectionContext;
|
|
12
|
+
}
|
|
13
|
+
export interface HeyReachInstanceData {
|
|
14
|
+
id: string;
|
|
15
|
+
displayName: string;
|
|
16
|
+
campaigns: Array<{
|
|
17
|
+
id: string;
|
|
18
|
+
name: string;
|
|
19
|
+
}>;
|
|
20
|
+
}
|
|
21
|
+
export interface HeyReachSectionContext {
|
|
22
|
+
id: string;
|
|
23
|
+
campaignClass: ResourceClassContext;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=HeyReachModule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeyReachModule.d.ts","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/hey_reach/HeyReachModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,eAAe,EAAE,MAAM,aAAa,CAAA;AAGxD,OAAO,EAAE,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAAE,KAAK,oBAAoB,EAA6B,MAAM,qBAAqB,CAAA;AAE1F,qBAAa,cAAe,SAAQ,iBAAiB,CAAC,oBAAoB,EAAE,sBAAsB,CAAC;IAC/F,QAAQ,CAAC,IAAI,6BAA4B;IACzC,QAAQ,CAAC,YAAY,cAAa;IAClC,SAAS,CAAC,QAAQ,CAAC,cAAc,WAA+D;IAE1F,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAYrE,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM;IAIlD,SAAS,KAAK,sBAAsB,IAAI,SAAS,MAAM,EAAE,CAExD;IAED,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,GAAG,sBAAsB;CAenG;AAED,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACjD;AAED,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,MAAM,CAAA;IACV,aAAa,EAAE,oBAAoB,CAAA;CACtC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ApiRoutes, IntegrationType } from "terse-types";
|
|
2
|
+
import { fetchWithAuth } from "../../../../api.js";
|
|
3
|
+
import { IntegrationModule } from "../IntegrationModule.js";
|
|
4
|
+
import { buildResourceClassContext } from "../moduleHelpers.js";
|
|
5
|
+
export class HeyReachModule extends IntegrationModule {
|
|
6
|
+
type = IntegrationType.HEY_REACH;
|
|
7
|
+
summaryLabel = "HeyReach";
|
|
8
|
+
sectionImports = ["HeyReachInputConfig", "HeyReachEventType", "TypedTrigger"];
|
|
9
|
+
async fetchInstances(apiKey) {
|
|
10
|
+
const instances = await fetchWithAuth(ApiRoutes.HEY_REACH.INTEGRATIONS, apiKey);
|
|
11
|
+
return Promise.all(instances.map(async (inst) => {
|
|
12
|
+
const resp = await fetchWithAuth(`${ApiRoutes.HEY_REACH.CAMPAIGNS}?integrationId=${encodeURIComponent(inst.id)}`, apiKey).catch(() => ({ campaigns: [] }));
|
|
13
|
+
return { id: inst.id, displayName: inst.id, campaigns: resp.campaigns || [] };
|
|
14
|
+
}));
|
|
15
|
+
}
|
|
16
|
+
instanceId(instance) {
|
|
17
|
+
return instance.id;
|
|
18
|
+
}
|
|
19
|
+
get triggersAggregateLines() {
|
|
20
|
+
return [" heyReach: heyReachTriggers,"];
|
|
21
|
+
}
|
|
22
|
+
prepareSection(input) {
|
|
23
|
+
const inst = this.requireInstance(input);
|
|
24
|
+
return {
|
|
25
|
+
id: inst.id,
|
|
26
|
+
campaignClass: buildResourceClassContext("HeyReachCampaign", [
|
|
27
|
+
{ classField: "campaignId", type: "string", sourceField: "id" },
|
|
28
|
+
{ classField: "name", type: "string", sourceField: "name" }
|
|
29
|
+
], "name", inst.campaigns)
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=HeyReachModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HeyReachModule.js","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/hey_reach/HeyReachModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAA0B,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAA6B,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAE1F,MAAM,OAAO,cAAe,SAAQ,iBAA+D;IACtF,IAAI,GAAG,eAAe,CAAC,SAAS,CAAA;IAChC,YAAY,GAAG,UAAU,CAAA;IACf,cAAc,GAAG,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,cAAc,CAAC,CAAA;IAEhG,KAAK,CAAC,cAAc,CAAC,MAAc;QAC/B,MAAM,SAAS,GAAG,MAAM,aAAa,CAAwB,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACtG,OAAO,OAAO,CAAC,GAAG,CACd,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAiC,EAAE;YACxD,MAAM,IAAI,GAAG,MAAM,aAAa,CAAqD,GAAG,SAAS,CAAC,SAAS,CAAC,SAAS,kBAAkB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,KAAK,CAC/K,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAC5B,CAAA;YACD,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,CAAA;QACjF,CAAC,CAAC,CACL,CAAA;IACL,CAAC;IAED,UAAU,CAAC,QAA8B;QACrC,OAAO,QAAQ,CAAC,EAAE,CAAA;IACtB,CAAC;IAED,IAAc,sBAAsB;QAChC,OAAO,CAAC,iCAAiC,CAAC,CAAA;IAC9C,CAAC;IAES,cAAc,CAAC,KAA8C;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QACxC,OAAO;YACH,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,aAAa,EAAE,yBAAyB,CACpC,kBAAkB,EAClB;gBACI,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE;gBAC/D,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE;aAC9D,EACD,MAAM,EACN,IAAI,CAAC,SAAS,CACjB;SACJ,CAAA;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IntegrationType } from "terse-types";
|
|
2
|
+
import { IntegrationModule, type ModuleRenderInput } from "../IntegrationModule.js";
|
|
3
|
+
import { type ResourceClassContext } from "../moduleHelpers.js";
|
|
4
|
+
export declare class LaunchDarklyModule extends IntegrationModule<LaunchDarklyInstanceData, LaunchDarklySectionContext> {
|
|
5
|
+
readonly type = IntegrationType.LAUNCHDARKLY;
|
|
6
|
+
readonly summaryLabel = "LaunchDarkly";
|
|
7
|
+
protected readonly sectionImports: string[];
|
|
8
|
+
fetchInstances(apiKey: string): Promise<LaunchDarklyInstanceData[]>;
|
|
9
|
+
instanceId(instance: LaunchDarklyInstanceData): string;
|
|
10
|
+
protected get skillsAggregateLines(): readonly string[];
|
|
11
|
+
protected prepareSection(input: ModuleRenderInput<LaunchDarklyInstanceData>): LaunchDarklySectionContext;
|
|
12
|
+
}
|
|
13
|
+
export interface LaunchDarklyInstanceData {
|
|
14
|
+
id: string;
|
|
15
|
+
displayName: string;
|
|
16
|
+
projects: Array<{
|
|
17
|
+
key: string;
|
|
18
|
+
name: string;
|
|
19
|
+
}>;
|
|
20
|
+
}
|
|
21
|
+
export interface LaunchDarklySectionContext {
|
|
22
|
+
id: string;
|
|
23
|
+
skillToolType: string;
|
|
24
|
+
projectClass: ResourceClassContext;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=LaunchDarklyModule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LaunchDarklyModule.d.ts","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/launchdarkly/LaunchDarklyModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,eAAe,EAAc,MAAM,aAAa,CAAA;AAGpE,OAAO,EAAE,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAAE,KAAK,oBAAoB,EAAiD,MAAM,qBAAqB,CAAA;AAE9G,qBAAa,kBAAmB,SAAQ,iBAAiB,CAAC,wBAAwB,EAAE,0BAA0B,CAAC;IAC3G,QAAQ,CAAC,IAAI,gCAA+B;IAC5C,QAAQ,CAAC,YAAY,kBAAiB;IACtC,SAAS,CAAC,QAAQ,CAAC,cAAc,WAAuC;IAElE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAazE,UAAU,CAAC,QAAQ,EAAE,wBAAwB,GAAG,MAAM;IAItD,SAAS,KAAK,oBAAoB,IAAI,SAAS,MAAM,EAAE,CAEtD;IAED,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,iBAAiB,CAAC,wBAAwB,CAAC,GAAG,0BAA0B;CAgB3G;AAED,MAAM,WAAW,wBAAwB;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACjD;AAED,MAAM,WAAW,0BAA0B;IACvC,EAAE,EAAE,MAAM,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,oBAAoB,CAAA;CACrC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ApiRoutes, IntegrationType, buildRoute } from "terse-types";
|
|
2
|
+
import { fetchWithAuth } from "../../../../api.js";
|
|
3
|
+
import { IntegrationModule } from "../IntegrationModule.js";
|
|
4
|
+
import { buildResourceClassContext, buildSkillToolType } from "../moduleHelpers.js";
|
|
5
|
+
export class LaunchDarklyModule extends IntegrationModule {
|
|
6
|
+
type = IntegrationType.LAUNCHDARKLY;
|
|
7
|
+
summaryLabel = "LaunchDarkly";
|
|
8
|
+
sectionImports = ["LaunchDarklyConfig", "TypedSkill"];
|
|
9
|
+
async fetchInstances(apiKey) {
|
|
10
|
+
const instances = await fetchWithAuth(ApiRoutes.LAUNCHDARKLY.INTEGRATIONS, apiKey);
|
|
11
|
+
return Promise.all(instances.map(async (inst) => {
|
|
12
|
+
const resp = await fetchWithAuth(buildRoute(ApiRoutes.LAUNCHDARKLY.PROJECTS_BY_INTEGRATION_ID, { integrationId: inst.id }), apiKey).catch(() => ({ projects: [] }));
|
|
13
|
+
return { id: inst.id, displayName: inst.tokenName || inst.email || inst.id, projects: resp.projects || [] };
|
|
14
|
+
}));
|
|
15
|
+
}
|
|
16
|
+
instanceId(instance) {
|
|
17
|
+
return instance.id;
|
|
18
|
+
}
|
|
19
|
+
get skillsAggregateLines() {
|
|
20
|
+
return [" /** LaunchDarkly — read and toggle feature flags in a project + environments */", " launchDarkly: launchDarklySkill,"];
|
|
21
|
+
}
|
|
22
|
+
prepareSection(input) {
|
|
23
|
+
const inst = this.requireInstance(input);
|
|
24
|
+
return {
|
|
25
|
+
id: inst.id,
|
|
26
|
+
skillToolType: buildSkillToolType(input.tools),
|
|
27
|
+
projectClass: buildResourceClassContext("LaunchDarklyProject", [
|
|
28
|
+
{ classField: "projectKey", type: "string", sourceField: "key" },
|
|
29
|
+
{ classField: "name", type: "string", sourceField: "name" }
|
|
30
|
+
], "name", inst.projects)
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=LaunchDarklyModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LaunchDarklyModule.js","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/launchdarkly/LaunchDarklyModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAEpE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAA0B,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAA6B,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE9G,MAAM,OAAO,kBAAmB,SAAQ,iBAAuE;IAClG,IAAI,GAAG,eAAe,CAAC,YAAY,CAAA;IACnC,YAAY,GAAG,cAAc,CAAA;IACnB,cAAc,GAAG,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAA;IAExE,KAAK,CAAC,cAAc,CAAC,MAAc;QAC/B,MAAM,SAAS,GAAG,MAAM,aAAa,CAA4B,SAAS,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QAC7G,OAAO,OAAO,CAAC,GAAG,CACd,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAqC,EAAE;YAC5D,MAAM,IAAI,GAAG,MAAM,aAAa,CAC5B,UAAU,CAAC,SAAS,CAAC,YAAY,CAAC,0BAA0B,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,EACzF,MAAM,CACT,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;YACjC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAA;QAC/G,CAAC,CAAC,CACL,CAAA;IACL,CAAC;IAED,UAAU,CAAC,QAAkC;QACzC,OAAO,QAAQ,CAAC,EAAE,CAAA;IACtB,CAAC;IAED,IAAc,oBAAoB;QAC9B,OAAO,CAAC,qFAAqF,EAAE,sCAAsC,CAAC,CAAA;IAC1I,CAAC;IAES,cAAc,CAAC,KAAkD;QACvE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QACxC,OAAO;YACH,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,aAAa,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC;YAC9C,YAAY,EAAE,yBAAyB,CACnC,qBAAqB,EACrB;gBACI,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE;gBAChE,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE;aAC9D,EACD,MAAM,EACN,IAAI,CAAC,QAAQ,CAChB;SACJ,CAAA;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { IntegrationType } from "terse-types";
|
|
2
|
+
import { IntegrationModule, type ModuleRenderInput } from "../IntegrationModule.js";
|
|
3
|
+
import { type ResourceClassContext } from "../moduleHelpers.js";
|
|
4
|
+
export declare class LinearModule extends IntegrationModule<LinearInstanceData, LinearSectionContext> {
|
|
5
|
+
readonly type = IntegrationType.LINEAR;
|
|
6
|
+
readonly summaryLabel = "Linear";
|
|
7
|
+
protected readonly sectionImports: string[];
|
|
8
|
+
fetchInstances(apiKey: string): Promise<LinearInstanceData[]>;
|
|
9
|
+
instanceId(instance: LinearInstanceData): string;
|
|
10
|
+
protected get triggersAggregateLines(): readonly string[];
|
|
11
|
+
protected get skillsAggregateLines(): readonly string[];
|
|
12
|
+
protected prepareSection(input: ModuleRenderInput<LinearInstanceData>): LinearSectionContext;
|
|
13
|
+
}
|
|
14
|
+
export interface LinearInstanceData {
|
|
15
|
+
id: string;
|
|
16
|
+
displayName: string;
|
|
17
|
+
teams: Array<{
|
|
18
|
+
id: string;
|
|
19
|
+
name: string;
|
|
20
|
+
key: string;
|
|
21
|
+
}>;
|
|
22
|
+
projects: Array<{
|
|
23
|
+
id: string;
|
|
24
|
+
name: string;
|
|
25
|
+
description?: string;
|
|
26
|
+
teamId: string;
|
|
27
|
+
}>;
|
|
28
|
+
}
|
|
29
|
+
export interface LinearSectionContext {
|
|
30
|
+
id: string;
|
|
31
|
+
skillToolType: string;
|
|
32
|
+
teamClass: ResourceClassContext;
|
|
33
|
+
projectClass: ResourceClassContext;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=LinearModule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinearModule.d.ts","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/linear/LinearModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,eAAe,EAAE,MAAM,aAAa,CAAA;AAGxD,OAAO,EAAE,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAAE,KAAK,oBAAoB,EAAiD,MAAM,qBAAqB,CAAA;AAE9G,qBAAa,YAAa,SAAQ,iBAAiB,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;IACzF,QAAQ,CAAC,IAAI,0BAAyB;IACtC,QAAQ,CAAC,YAAY,YAAW;IAChC,SAAS,CAAC,QAAQ,CAAC,cAAc,WAA+F;IAE1H,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAqBnE,UAAU,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM;IAIhD,SAAS,KAAK,sBAAsB,IAAI,SAAS,MAAM,EAAE,CAExD;IAED,SAAS,KAAK,oBAAoB,IAAI,SAAS,MAAM,EAAE,CAEtD;IAED,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,oBAAoB;CA0B/F;AAED,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvD,QAAQ,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACtF;AAED,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,oBAAoB,CAAA;IAC/B,YAAY,EAAE,oBAAoB,CAAA;CACrC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ApiRoutes, IntegrationType } from "terse-types";
|
|
2
|
+
import { fetchWithAuth } from "../../../../api.js";
|
|
3
|
+
import { IntegrationModule } from "../IntegrationModule.js";
|
|
4
|
+
import { buildResourceClassContext, buildSkillToolType } from "../moduleHelpers.js";
|
|
5
|
+
export class LinearModule extends IntegrationModule {
|
|
6
|
+
type = IntegrationType.LINEAR;
|
|
7
|
+
summaryLabel = "Linear";
|
|
8
|
+
sectionImports = ["LinearInputConfig", "LinearOutputConfig", "TypedSkill", "TypedTrigger", "LinearEventType"];
|
|
9
|
+
async fetchInstances(apiKey) {
|
|
10
|
+
const instances = await fetchWithAuth(ApiRoutes.LINEAR.INTEGRATIONS, apiKey);
|
|
11
|
+
return Promise.all(instances.map(async (inst) => {
|
|
12
|
+
const teams = await fetchWithAuth(`${ApiRoutes.LINEAR.TEAMS}?integrationId=${encodeURIComponent(inst.id)}`, apiKey).catch(() => []);
|
|
13
|
+
const projects = await fetchWithAuth(`${ApiRoutes.LINEAR.PROJECTS}?integrationId=${encodeURIComponent(inst.id)}`, apiKey).catch(() => []);
|
|
14
|
+
return {
|
|
15
|
+
id: inst.id,
|
|
16
|
+
displayName: inst.workspaceName || inst.id,
|
|
17
|
+
teams: Array.isArray(teams) ? teams : [],
|
|
18
|
+
projects: Array.isArray(projects) ? projects : []
|
|
19
|
+
};
|
|
20
|
+
}));
|
|
21
|
+
}
|
|
22
|
+
instanceId(instance) {
|
|
23
|
+
return instance.id;
|
|
24
|
+
}
|
|
25
|
+
get triggersAggregateLines() {
|
|
26
|
+
return [" linear: linearTriggers,"];
|
|
27
|
+
}
|
|
28
|
+
get skillsAggregateLines() {
|
|
29
|
+
return [" /** Linear — read and write issues, optionally scoped to a team or project */", " linear: linearSkill,"];
|
|
30
|
+
}
|
|
31
|
+
prepareSection(input) {
|
|
32
|
+
const inst = this.requireInstance(input);
|
|
33
|
+
return {
|
|
34
|
+
id: inst.id,
|
|
35
|
+
skillToolType: buildSkillToolType(input.tools),
|
|
36
|
+
teamClass: buildResourceClassContext("LinearTeam", [
|
|
37
|
+
{ classField: "teamId", type: "string", sourceField: "id" },
|
|
38
|
+
{ classField: "name", type: "string", sourceField: "name" },
|
|
39
|
+
{ classField: "key", type: "string", sourceField: "key" }
|
|
40
|
+
], "name", inst.teams),
|
|
41
|
+
projectClass: buildResourceClassContext("LinearProject", [
|
|
42
|
+
{ classField: "projectId", type: "string", sourceField: "id" },
|
|
43
|
+
{ classField: "name", type: "string", sourceField: "name" }
|
|
44
|
+
], "name", inst.projects)
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=LinearModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinearModule.js","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/linear/LinearModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ToolDefinition } from "terse-types";
|
|
2
|
+
export declare function toPascalCase(value: string): string;
|
|
3
|
+
export declare function toCamelCase(value: string): string;
|
|
4
|
+
export declare function escapeString(value: string): string;
|
|
5
|
+
export declare function toGeneratedIdentifier(raw: string, fallback: string): string;
|
|
6
|
+
export declare function toolNameToTypeName(name: string, suffix: "Params" | "Result"): string;
|
|
7
|
+
export declare function renderStringLiteralUnion(values: string[]): string;
|
|
8
|
+
export declare function buildSkillToolType(tools: readonly ToolDefinition[]): string;
|
|
9
|
+
export declare function buildResourceClassContext(className: string, fields: ResourceFieldMapping[], staticNameField: string, items: object[]): ResourceClassContext;
|
|
10
|
+
export interface ResourceFieldMapping {
|
|
11
|
+
classField: string;
|
|
12
|
+
type: string;
|
|
13
|
+
sourceField: string;
|
|
14
|
+
}
|
|
15
|
+
export interface ResourceClassContext {
|
|
16
|
+
className: string;
|
|
17
|
+
constructorParams: string;
|
|
18
|
+
items: Array<{
|
|
19
|
+
staticName: string;
|
|
20
|
+
argsText: string;
|
|
21
|
+
}>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=moduleHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleHelpers.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/modules/moduleHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGjD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAK3E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAOpF;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAGjE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,GAAG,MAAM,CAO3E;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAgC3J;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,oBAAoB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,CAAA;IACzB,KAAK,EAAE,KAAK,CAAC;QACT,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,CAAA;KACnB,CAAC,CAAA;CACL"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
export function toPascalCase(value) {
|
|
2
|
+
return value
|
|
3
|
+
.replace(/[^a-zA-Z0-9]+/g, " ")
|
|
4
|
+
.trim()
|
|
5
|
+
.split(/\s+/)
|
|
6
|
+
.filter(Boolean)
|
|
7
|
+
.map(word => word.charAt(0).toUpperCase() + word.slice(1))
|
|
8
|
+
.join("");
|
|
9
|
+
}
|
|
10
|
+
export function toCamelCase(value) {
|
|
11
|
+
const pascal = toPascalCase(value);
|
|
12
|
+
return pascal.charAt(0).toLowerCase() + pascal.slice(1);
|
|
13
|
+
}
|
|
14
|
+
export function escapeString(value) {
|
|
15
|
+
return value.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
16
|
+
}
|
|
17
|
+
export function toGeneratedIdentifier(raw, fallback) {
|
|
18
|
+
let name = toPascalCase(raw || fallback);
|
|
19
|
+
if (!name)
|
|
20
|
+
name = fallback;
|
|
21
|
+
if (/^\d/.test(name))
|
|
22
|
+
name = `_${name}`;
|
|
23
|
+
return name;
|
|
24
|
+
}
|
|
25
|
+
export function toolNameToTypeName(name, suffix) {
|
|
26
|
+
return (name
|
|
27
|
+
.split("_")
|
|
28
|
+
.map(word => word.charAt(0).toUpperCase() + word.slice(1))
|
|
29
|
+
.join("") + suffix);
|
|
30
|
+
}
|
|
31
|
+
export function renderStringLiteralUnion(values) {
|
|
32
|
+
if (values.length === 0)
|
|
33
|
+
return "never";
|
|
34
|
+
return values.map(value => `"${escapeString(value)}"`).join(" | ");
|
|
35
|
+
}
|
|
36
|
+
export function buildSkillToolType(tools) {
|
|
37
|
+
const toolNames = tools
|
|
38
|
+
.filter(tool => !tool.isReadOnly || tool.supportsApproval)
|
|
39
|
+
.map(tool => tool.name)
|
|
40
|
+
.sort();
|
|
41
|
+
return renderStringLiteralUnion(toolNames);
|
|
42
|
+
}
|
|
43
|
+
export function buildResourceClassContext(className, fields, staticNameField, items) {
|
|
44
|
+
const constructorParams = fields.map(field => `public readonly ${field.classField}: ${field.type}`).join(", ");
|
|
45
|
+
const entries = [];
|
|
46
|
+
const usedNames = new Set();
|
|
47
|
+
for (const item of items) {
|
|
48
|
+
const source = item;
|
|
49
|
+
let name = toPascalCase(String(source[staticNameField] || "Unknown"));
|
|
50
|
+
if (!name || /^\d/.test(name))
|
|
51
|
+
name = `_${name}`;
|
|
52
|
+
while (usedNames.has(name))
|
|
53
|
+
name += "_";
|
|
54
|
+
usedNames.add(name);
|
|
55
|
+
const argsText = fields
|
|
56
|
+
.map(field => {
|
|
57
|
+
const value = source[field.sourceField];
|
|
58
|
+
if (typeof value === "number")
|
|
59
|
+
return String(value);
|
|
60
|
+
return `"${escapeString(String(value ?? ""))}"`;
|
|
61
|
+
})
|
|
62
|
+
.join(", ");
|
|
63
|
+
entries.push({
|
|
64
|
+
staticName: name,
|
|
65
|
+
argsText
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
className,
|
|
70
|
+
constructorParams,
|
|
71
|
+
items: entries
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=moduleHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"moduleHelpers.js","sourceRoot":"","sources":["../../../../src/providers/typescript/modules/moduleHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { IntegrationType } from "terse-types";
|
|
2
|
+
import { IntegrationModule, type ModuleRenderInput } from "../IntegrationModule.js";
|
|
3
|
+
import { type ResourceClassContext } from "../moduleHelpers.js";
|
|
4
|
+
export declare class NotionModule extends IntegrationModule<NotionInstanceData, NotionSectionContext> {
|
|
5
|
+
readonly type = IntegrationType.NOTION;
|
|
6
|
+
readonly summaryLabel = "Notion";
|
|
7
|
+
protected readonly sectionImports: string[];
|
|
8
|
+
fetchInstances(apiKey: string): Promise<NotionInstanceData[]>;
|
|
9
|
+
instanceId(instance: NotionInstanceData): string;
|
|
10
|
+
protected get skillsAggregateLines(): readonly string[];
|
|
11
|
+
protected prepareSection(input: ModuleRenderInput<NotionInstanceData>): NotionSectionContext;
|
|
12
|
+
}
|
|
13
|
+
export interface NotionInstanceData {
|
|
14
|
+
id: string;
|
|
15
|
+
displayName: string;
|
|
16
|
+
databases: Array<{
|
|
17
|
+
id: string;
|
|
18
|
+
title: string;
|
|
19
|
+
type: string;
|
|
20
|
+
}>;
|
|
21
|
+
pages: Array<{
|
|
22
|
+
id: string;
|
|
23
|
+
title: string;
|
|
24
|
+
type: string;
|
|
25
|
+
}>;
|
|
26
|
+
}
|
|
27
|
+
export interface NotionSectionContext {
|
|
28
|
+
id: string;
|
|
29
|
+
skillToolType: string;
|
|
30
|
+
databaseClass: ResourceClassContext;
|
|
31
|
+
pageClass: ResourceClassContext;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=NotionModule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotionModule.d.ts","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/notion/NotionModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,eAAe,EAAE,MAAM,aAAa,CAAA;AAGxD,OAAO,EAAE,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAAE,KAAK,oBAAoB,EAAiD,MAAM,qBAAqB,CAAA;AAE9G,qBAAa,YAAa,SAAQ,iBAAiB,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;IACzF,QAAQ,CAAC,IAAI,0BAAyB;IACtC,QAAQ,CAAC,YAAY,YAAW;IAChC,SAAS,CAAC,QAAQ,CAAC,cAAc,WAAiC;IAE5D,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAmBnE,UAAU,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM;IAIhD,SAAS,KAAK,oBAAoB,IAAI,SAAS,MAAM,EAAE,CAEtD;IAED,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,oBAAoB;CAyB/F;AAED,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC7D,KAAK,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAC5D;AAED,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,oBAAoB,CAAA;IACnC,SAAS,EAAE,oBAAoB,CAAA;CAClC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ApiRoutes, IntegrationType } from "terse-types";
|
|
2
|
+
import { fetchWithAuth } from "../../../../api.js";
|
|
3
|
+
import { IntegrationModule } from "../IntegrationModule.js";
|
|
4
|
+
import { buildResourceClassContext, buildSkillToolType } from "../moduleHelpers.js";
|
|
5
|
+
export class NotionModule extends IntegrationModule {
|
|
6
|
+
type = IntegrationType.NOTION;
|
|
7
|
+
summaryLabel = "Notion";
|
|
8
|
+
sectionImports = ["NotionConfig", "TypedSkill"];
|
|
9
|
+
async fetchInstances(apiKey) {
|
|
10
|
+
const instances = await fetchWithAuth(ApiRoutes.NOTION.INTEGRATIONS, apiKey);
|
|
11
|
+
return Promise.all(instances.map(async (inst) => {
|
|
12
|
+
const resp = await fetchWithAuth(`${ApiRoutes.NOTION.RESOURCES}?integrationId=${encodeURIComponent(inst.id)}`, apiKey).catch(() => ({ resources: [] }));
|
|
13
|
+
const resources = resp.resources || [];
|
|
14
|
+
return {
|
|
15
|
+
id: inst.id,
|
|
16
|
+
displayName: inst.workspaceName || inst.id,
|
|
17
|
+
databases: resources.filter(r => r.type === "database"),
|
|
18
|
+
pages: resources.filter(r => r.type === "page")
|
|
19
|
+
};
|
|
20
|
+
}));
|
|
21
|
+
}
|
|
22
|
+
instanceId(instance) {
|
|
23
|
+
return instance.id;
|
|
24
|
+
}
|
|
25
|
+
get skillsAggregateLines() {
|
|
26
|
+
return [" /** Notion — read and write to the given databases or pages */", " notion: notionSkill,"];
|
|
27
|
+
}
|
|
28
|
+
prepareSection(input) {
|
|
29
|
+
const inst = this.requireInstance(input);
|
|
30
|
+
return {
|
|
31
|
+
id: inst.id,
|
|
32
|
+
skillToolType: buildSkillToolType(input.tools),
|
|
33
|
+
databaseClass: buildResourceClassContext("NotionDatabase", [
|
|
34
|
+
{ classField: "databaseId", type: "string", sourceField: "id" },
|
|
35
|
+
{ classField: "title", type: "string", sourceField: "title" }
|
|
36
|
+
], "title", inst.databases),
|
|
37
|
+
pageClass: buildResourceClassContext("NotionPage", [
|
|
38
|
+
{ classField: "pageId", type: "string", sourceField: "id" },
|
|
39
|
+
{ classField: "title", type: "string", sourceField: "title" }
|
|
40
|
+
], "title", inst.pages)
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=NotionModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotionModule.js","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/notion/NotionModule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAA0B,MAAM,yBAAyB,CAAA;AACnF,OAAO,EAA6B,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE9G,MAAM,OAAO,YAAa,SAAQ,iBAA2D;IAChF,IAAI,GAAG,eAAe,CAAC,MAAM,CAAA;IAC7B,YAAY,GAAG,QAAQ,CAAA;IACb,cAAc,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IAElE,KAAK,CAAC,cAAc,CAAC,MAAc;QAC/B,MAAM,SAAS,GAAG,MAAM,aAAa,CAAsB,SAAS,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACjG,OAAO,OAAO,CAAC,GAAG,CACd,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAA+B,EAAE;YACtD,MAAM,IAAI,GAAG,MAAM,aAAa,CAC5B,GAAG,SAAS,CAAC,MAAM,CAAC,SAAS,kBAAkB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAC5E,MAAM,CACT,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;YAClC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAA;YACtC,OAAO;gBACH,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,WAAW,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,EAAE;gBAC1C,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC;gBACvD,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aAClD,CAAA;QACL,CAAC,CAAC,CACL,CAAA;IACL,CAAC;IAED,UAAU,CAAC,QAA4B;QACnC,OAAO,QAAQ,CAAC,EAAE,CAAA;IACtB,CAAC;IAED,IAAc,oBAAoB;QAC9B,OAAO,CAAC,oEAAoE,EAAE,0BAA0B,CAAC,CAAA;IAC7G,CAAC;IAES,cAAc,CAAC,KAA4C;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QACxC,OAAO;YACH,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,aAAa,EAAE,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC;YAC9C,aAAa,EAAE,yBAAyB,CACpC,gBAAgB,EAChB;gBACI,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE;gBAC/D,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE;aAChE,EACD,OAAO,EACP,IAAI,CAAC,SAAS,CACjB;YACD,SAAS,EAAE,yBAAyB,CAChC,YAAY,EACZ;gBACI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE;gBAC3D,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE;aAChE,EACD,OAAO,EACP,IAAI,CAAC,KAAK,CACb;SACJ,CAAA;IACL,CAAC;CACJ"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ToolDefinition } from "terse-types";
|
|
2
|
+
import { IntegrationType } from "terse-types";
|
|
3
|
+
import { IntegrationModule, type ModuleRenderInput, type ToolParamsPrintOptions } from "../IntegrationModule.js";
|
|
4
|
+
import { type ResourceClassContext } from "../moduleHelpers.js";
|
|
5
|
+
export declare class PosthogModule extends IntegrationModule<PosthogInstanceData, PosthogSectionContext> {
|
|
6
|
+
readonly type = IntegrationType.POSTHOG;
|
|
7
|
+
readonly summaryLabel = "PostHog";
|
|
8
|
+
protected readonly sectionImports: string[];
|
|
9
|
+
fetchInstances(apiKey: string): Promise<PosthogInstanceData[]>;
|
|
10
|
+
instanceId(instance: PosthogInstanceData): string;
|
|
11
|
+
protected get skillsAggregateLines(): readonly string[];
|
|
12
|
+
protected prepareSection(input: ModuleRenderInput<PosthogInstanceData>): PosthogSectionContext;
|
|
13
|
+
protected toolParamsPrintOptions(tool: ToolDefinition, input: ModuleRenderInput<PosthogInstanceData>): ToolParamsPrintOptions;
|
|
14
|
+
}
|
|
15
|
+
export interface PosthogInstanceData {
|
|
16
|
+
id: string;
|
|
17
|
+
displayName: string;
|
|
18
|
+
projects: Array<{
|
|
19
|
+
id: string;
|
|
20
|
+
name: string;
|
|
21
|
+
events: string[];
|
|
22
|
+
}>;
|
|
23
|
+
}
|
|
24
|
+
export interface PosthogSectionContext {
|
|
25
|
+
id: string;
|
|
26
|
+
skillToolType: string;
|
|
27
|
+
projectClass: ResourceClassContext;
|
|
28
|
+
eventNames: string[];
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=PosthogModule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PosthogModule.d.ts","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/posthog/PosthogModule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAsB,cAAc,EAAE,MAAM,aAAa,CAAA;AACrE,OAAO,EAAa,eAAe,EAAsC,MAAM,aAAa,CAAA;AAG5F,OAAO,EAAE,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChH,OAAO,EAAE,KAAK,oBAAoB,EAAiD,MAAM,qBAAqB,CAAA;AAE9G,qBAAa,aAAc,SAAQ,iBAAiB,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;IAC5F,QAAQ,CAAC,IAAI,2BAA0B;IACvC,QAAQ,CAAC,YAAY,aAAY;IACjC,SAAS,CAAC,QAAQ,CAAC,cAAc,WAAkC;IAE7D,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAkBpE,UAAU,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAIjD,SAAS,KAAK,oBAAoB,IAAI,SAAS,MAAM,EAAE,CAEtD;IAED,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,qBAAqB;IAkB9F,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,GAAG,sBAAsB;CAQhI;AAYD,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAClE;AAED,MAAM,WAAW,qBAAqB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,oBAAoB,CAAA;IAClC,UAAU,EAAE,MAAM,EAAE,CAAA;CACvB"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { log } from "@clack/prompts";
|
|
2
|
+
import { ApiRoutes, IntegrationType, posthogProjectEventsResponseSchema } from "terse-types";
|
|
3
|
+
import { fetchWithAuth } from "../../../../api.js";
|
|
4
|
+
import { IntegrationModule } from "../IntegrationModule.js";
|
|
5
|
+
import { buildResourceClassContext, buildSkillToolType } from "../moduleHelpers.js";
|
|
6
|
+
export class PosthogModule extends IntegrationModule {
|
|
7
|
+
type = IntegrationType.POSTHOG;
|
|
8
|
+
summaryLabel = "PostHog";
|
|
9
|
+
sectionImports = ["PosthogConfig", "TypedSkill"];
|
|
10
|
+
async fetchInstances(apiKey) {
|
|
11
|
+
const instances = await fetchWithAuth(ApiRoutes.POSTHOG.INTEGRATIONS, apiKey);
|
|
12
|
+
return Promise.all(instances.map(async (inst) => {
|
|
13
|
+
const resp = await fetchWithAuth(`${ApiRoutes.POSTHOG.PROJECTS}?integrationId=${encodeURIComponent(inst.id)}`, apiKey).catch(() => ({
|
|
14
|
+
projects: []
|
|
15
|
+
}));
|
|
16
|
+
const projects = await Promise.all((resp.projects || []).map(async (project) => {
|
|
17
|
+
const events = await fetchPosthogProjectEventNames(inst.id, project.id, apiKey);
|
|
18
|
+
return { ...project, events };
|
|
19
|
+
}));
|
|
20
|
+
return { id: inst.id, displayName: inst.orgName || inst.email || inst.id, projects };
|
|
21
|
+
}));
|
|
22
|
+
}
|
|
23
|
+
instanceId(instance) {
|
|
24
|
+
return instance.id;
|
|
25
|
+
}
|
|
26
|
+
get skillsAggregateLines() {
|
|
27
|
+
return [" /** PostHog — query analytics for a specific project */", " posthog: posthogSkill,"];
|
|
28
|
+
}
|
|
29
|
+
prepareSection(input) {
|
|
30
|
+
const inst = this.requireInstance(input);
|
|
31
|
+
return {
|
|
32
|
+
id: inst.id,
|
|
33
|
+
skillToolType: buildSkillToolType(input.tools),
|
|
34
|
+
projectClass: buildResourceClassContext("PosthogProject", [
|
|
35
|
+
{ classField: "projectId", type: "string", sourceField: "id" },
|
|
36
|
+
{ classField: "name", type: "string", sourceField: "name" }
|
|
37
|
+
], "name", inst.projects),
|
|
38
|
+
eventNames: [...new Set(inst.projects.flatMap(project => project.events))]
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
toolParamsPrintOptions(tool, input) {
|
|
42
|
+
const hasEventNames = (input.instances[0]?.projects ?? []).some(project => project.events.length > 0);
|
|
43
|
+
if (tool.name === "searchPosthogEvents" && hasEventNames) {
|
|
44
|
+
// Custom events type-check against the generated union; $-prefixed builtins are always allowed
|
|
45
|
+
return { fieldOverrides: { eventName: "PosthogEventName | `$${string}` | null" } };
|
|
46
|
+
}
|
|
47
|
+
return {};
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
async function fetchPosthogProjectEventNames(integrationId, projectId, apiKey) {
|
|
51
|
+
try {
|
|
52
|
+
const raw = await fetchWithAuth(`${ApiRoutes.POSTHOG.EVENTS}?integrationId=${encodeURIComponent(integrationId)}&projectId=${encodeURIComponent(projectId)}`, apiKey);
|
|
53
|
+
return posthogProjectEventsResponseSchema.parse(raw).events.map(event => event.name);
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
log.warn(`Could not fetch PostHog event names for project ${projectId}; eventName stays untyped until the next successful terse generate`);
|
|
57
|
+
return [];
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=PosthogModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PosthogModule.js","sourceRoot":"","sources":["../../../../../src/providers/typescript/modules/posthog/PosthogModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ExternalIntegrationType } from "terse-types";
|
|
2
|
+
import type { IntegrationModule } from "./IntegrationModule.js";
|
|
3
|
+
import { TerseModule } from "./terse/TerseModule.js";
|
|
4
|
+
/**
|
|
5
|
+
* Exhaustive by construction: adding an IntegrationType won't compile until its
|
|
6
|
+
* module exists here. The terse module lives outside the record because built-ins
|
|
7
|
+
* are always active and never fetched.
|
|
8
|
+
*/
|
|
9
|
+
export declare const integrationModuleRegistry: Record<ExternalIntegrationType, IntegrationModule>;
|
|
10
|
+
export declare const terseModule: TerseModule;
|
|
11
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/providers/typescript/modules/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAG1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAa/D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAGpD;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,uBAAuB,EAAE,iBAAiB,CAcxF,CAAA;AAED,eAAO,MAAM,WAAW,aAAoB,CAAA"}
|