@codeam/shared 2.60.66 → 2.60.68
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/index.d.mts +33 -6
- package/dist/index.d.ts +33 -6
- package/dist/index.js +210 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +210 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -327,8 +327,26 @@ declare function isHeadroomWrappable(agentId: string): boolean;
|
|
|
327
327
|
* ubiquitous CLI for the tool → `cliEnv`; otherwise → `mcp`. A tool may
|
|
328
328
|
* declare both.
|
|
329
329
|
*/
|
|
330
|
-
type IntegrationId = 'jira' | 'sentry' | 'linear' | 'slack' | 'notion';
|
|
330
|
+
type IntegrationId = 'jira' | 'sentry' | 'linear' | 'slack' | 'notion' | 'azure_devops';
|
|
331
331
|
type IntegrationAuthKind = 'oauth_redirect' | 'oauth_device' | 'api_key';
|
|
332
|
+
/**
|
|
333
|
+
* One user-entered field for an `api_key` integration (no browser OAuth — the
|
|
334
|
+
* user pastes credentials directly, e.g. a PAT + an org URL). The mobile form
|
|
335
|
+
* is driven entirely by this list, and `key` maps to a `BrokeredIntegrationToken`
|
|
336
|
+
* field the delivery `envMapping` references.
|
|
337
|
+
*/
|
|
338
|
+
interface IntegrationApiKeyField {
|
|
339
|
+
/** Maps to a BrokeredIntegrationToken field (`accessToken`, `orgUrl`, …). */
|
|
340
|
+
key: 'accessToken' | 'orgUrl';
|
|
341
|
+
/** Form label. */
|
|
342
|
+
label: string;
|
|
343
|
+
/** Example / placeholder. */
|
|
344
|
+
placeholder?: string;
|
|
345
|
+
/** Masked (secret) input — true for the token, false for a plain URL. */
|
|
346
|
+
secret?: boolean;
|
|
347
|
+
/** Short help under the field (e.g. how to create the PAT). */
|
|
348
|
+
help?: string;
|
|
349
|
+
}
|
|
332
350
|
type IntegrationHealth = 'ok' | 'expired' | 'revoked';
|
|
333
351
|
/** stdio MCP server spec, executed as DATA by the CLI shim (`codeam mcp-run <id>`). */
|
|
334
352
|
interface IntegrationMcpDelivery {
|
|
@@ -353,6 +371,8 @@ interface IntegrationDefinition {
|
|
|
353
371
|
auth: {
|
|
354
372
|
kind: IntegrationAuthKind;
|
|
355
373
|
scopes?: string[];
|
|
374
|
+
/** For `kind: 'api_key'` — the credential fields the user pastes (no OAuth). */
|
|
375
|
+
fields?: IntegrationApiKeyField[];
|
|
356
376
|
};
|
|
357
377
|
delivery: IntegrationDelivery;
|
|
358
378
|
}
|
|
@@ -386,6 +406,10 @@ interface BrokeredIntegrationToken {
|
|
|
386
406
|
/** Slack workspace/team id (`T…`) — the Slack MCP server needs it alongside
|
|
387
407
|
* the bot token (`SLACK_TEAM_ID`). Absent for non-Slack integrations. */
|
|
388
408
|
teamId?: string;
|
|
409
|
+
/** Azure DevOps organization URL (`https://dev.azure.com/<org>`) — the ADO
|
|
410
|
+
* MCP server needs it alongside the PAT (`AZURE_DEVOPS_ORG_URL`). Absent for
|
|
411
|
+
* non-ADO integrations. */
|
|
412
|
+
orgUrl?: string;
|
|
389
413
|
}
|
|
390
414
|
|
|
391
415
|
/**
|
|
@@ -409,12 +433,15 @@ declare function isKnownIntegrationId(id: string): id is IntegrationId;
|
|
|
409
433
|
* anything itself.
|
|
410
434
|
*
|
|
411
435
|
* `logoSvg` values are the OFFICIAL brand marks. jira/slack are the
|
|
412
|
-
* multicolor originals (from the vendor).
|
|
413
|
-
*
|
|
436
|
+
* multicolor originals (from the vendor). Every other entry (the 6 live
|
|
437
|
+
* integrations' single-path marks + the whole COMING SOON set) is a
|
|
438
|
+
* simple-icons single-path mark that ships with a black fill by default —
|
|
414
439
|
* that fill has been rewritten here to #FFFFFF so the mark reads on the
|
|
415
440
|
* dark surfaces this catalog targets; consumers may re-tint via
|
|
416
441
|
* `brandColor` (e.g. an SVG `<mask>`/currentColor wrapper) if a different
|
|
417
|
-
* treatment is needed.
|
|
442
|
+
* treatment is needed. `pendo` + `amplitude` are NOT in simple-icons
|
|
443
|
+
* (brand-guideline restrictions) so they carry faithful hand-authored
|
|
444
|
+
* monochrome marks in the same 24×24 single-path shape.
|
|
418
445
|
*/
|
|
419
446
|
interface IntegrationBranding {
|
|
420
447
|
/** Stable id — registry ids ('jira') plus upcoming ones not yet in IntegrationId. */
|
|
@@ -429,7 +456,7 @@ interface IntegrationBranding {
|
|
|
429
456
|
logoSvg: string;
|
|
430
457
|
}
|
|
431
458
|
declare const INTEGRATION_BRANDING: Record<string, IntegrationBranding>;
|
|
432
|
-
declare const UPCOMING_INTEGRATION_IDS: readonly ["
|
|
459
|
+
declare const UPCOMING_INTEGRATION_IDS: readonly ["gmail", "posthog", "clickup", "figma", "trello", "resend", "vercel", "supabase", "asana", "postman", "n8n", "stripe", "mixpanel", "pendo", "pagerduty", "amplitude", "datadog"];
|
|
433
460
|
declare function getIntegrationBranding(id: string): IntegrationBranding | null;
|
|
434
461
|
|
|
435
462
|
/**
|
|
@@ -1252,4 +1279,4 @@ type UserEventName = (typeof USER_EVENTS)[keyof typeof USER_EVENTS];
|
|
|
1252
1279
|
*/
|
|
1253
1280
|
declare const PREVIEW_DETECT_PROMPT: string;
|
|
1254
1281
|
|
|
1255
|
-
export { AGENT_REGISTRY, type AgentAuth, type AgentAuthKind, type AgentId, type AgentMetadata, type AgentModel, type AnswerResolvedEvent, type AwaitingAnswerEvent, type BeadsActionCommand, type BeadsActionKind, type BeadsActionPayload, type BeadsActionRequest, type BeadsActionType, type BeadsConfigureAction, type BeadsDependencyDto, type BeadsDependencyKind, type BeadsIngestPayload, type BeadsIssueDto, type BeadsIssueStatus, type BeadsMemoryDto, type BeadsProjectDto, type BeadsProvisioningPayload, type BeadsProvisioningStatus, type BeadsSnapshotDto, type BeadsStatus, type BeadsStatusState, type BeadsStatusSummary, type BlameLineWire, type BrokeredIntegrationToken, type ChromeStep, type ChromeToolType, type CommitEntryWire, DEFAULT_API_BASE_URL, DEV_API_BASE_URL, type EnvVar, type FileBlameEvent, type FileChangeStatus, type FileChangedEvent, type FileHistoryEvent, type FileReviewStatus, HEADROOM_BACKEND_ENV, HEADROOM_EXTRAS_BY_SURFACE, HEADROOM_MODELS, HEADROOM_PIP_COMPANIONS, HEADROOM_PROXY_PORT, HEARTBEAT_INTERVAL_MS_DEFAULT, HOUSE_AGENT_ID, HOUSE_AGENT_NAME, HOUSE_AGENT_PROVIDER, HOUSE_AGENT_SUBTITLE, HOUSE_AGENT_VENDOR, type HeadroomBudgetCommand, type HeadroomBudgetPeriod, type HeadroomBudgetUsage, type HeadroomKind, type HeadroomModelSpec, type HeadroomPythonRenderOpts, type HeadroomStatus, type HeadroomStep, type HeadroomSurface, type HunkLineType, INTEGRATION_BRANDING, INTEGRATION_REGISTRY, INTERNAL_TO_PUBLIC, type InputSuggestionChunk, type IntegrationAuthKind, type IntegrationBranding, type IntegrationDefinition, type IntegrationDelivery, type IntegrationHealth, type IntegrationId, type IntegrationMcpDelivery, type IntegrationStatus, type IntegrationsManifest, type IntegrationsManifestEntry, LINKED_AGENT_IDS, type LinkedAgentId, MODEL_CONTEXT_WINDOW, MODEL_PRICING, type ModelPricing, type NormalizedMessage, OBSERVER_BRIDGE_PORT, PREVIEW_DETECT_PROMPT, PROTOCOL_VERSION, PUBLIC_TO_INTERNAL, type PendingReviewHunkEvent, type PendingReviewHunkLine, type PreviewDetection, type PreviewErrorStage, type PreviewState, type PreviewStatus, type RemoteCommand, SSE_SOCKET_TIMEOUT_MS, type SelectPrompt, type StreamingChunkEvent, type StreamingChunkKind, TERMINAL_AGENT_PREFIX, UNKNOWN_MODEL_PRICING, UPCOMING_INTEGRATION_IDS, USER_EVENTS, type UserEventName, getAgent, getContextWindow, getEnabledAgents, getEnabledIntegrations, getIntegration, getIntegrationBranding, getPricing, headroomKindFor, headroomModelPredownloadScript, headroomPipPackage, headroomSnapshotDownloadLine, internalToPublic, isHeadroomWrappable, isKnownAgentId, isKnownIntegrationId, isKnownModel, isLinkedAgentId, normalizeAgentId, publicToInternal, renderToLines, resolveApiBaseUrl, toRemoteCommand };
|
|
1282
|
+
export { AGENT_REGISTRY, type AgentAuth, type AgentAuthKind, type AgentId, type AgentMetadata, type AgentModel, type AnswerResolvedEvent, type AwaitingAnswerEvent, type BeadsActionCommand, type BeadsActionKind, type BeadsActionPayload, type BeadsActionRequest, type BeadsActionType, type BeadsConfigureAction, type BeadsDependencyDto, type BeadsDependencyKind, type BeadsIngestPayload, type BeadsIssueDto, type BeadsIssueStatus, type BeadsMemoryDto, type BeadsProjectDto, type BeadsProvisioningPayload, type BeadsProvisioningStatus, type BeadsSnapshotDto, type BeadsStatus, type BeadsStatusState, type BeadsStatusSummary, type BlameLineWire, type BrokeredIntegrationToken, type ChromeStep, type ChromeToolType, type CommitEntryWire, DEFAULT_API_BASE_URL, DEV_API_BASE_URL, type EnvVar, type FileBlameEvent, type FileChangeStatus, type FileChangedEvent, type FileHistoryEvent, type FileReviewStatus, HEADROOM_BACKEND_ENV, HEADROOM_EXTRAS_BY_SURFACE, HEADROOM_MODELS, HEADROOM_PIP_COMPANIONS, HEADROOM_PROXY_PORT, HEARTBEAT_INTERVAL_MS_DEFAULT, HOUSE_AGENT_ID, HOUSE_AGENT_NAME, HOUSE_AGENT_PROVIDER, HOUSE_AGENT_SUBTITLE, HOUSE_AGENT_VENDOR, type HeadroomBudgetCommand, type HeadroomBudgetPeriod, type HeadroomBudgetUsage, type HeadroomKind, type HeadroomModelSpec, type HeadroomPythonRenderOpts, type HeadroomStatus, type HeadroomStep, type HeadroomSurface, type HunkLineType, INTEGRATION_BRANDING, INTEGRATION_REGISTRY, INTERNAL_TO_PUBLIC, type InputSuggestionChunk, type IntegrationApiKeyField, type IntegrationAuthKind, type IntegrationBranding, type IntegrationDefinition, type IntegrationDelivery, type IntegrationHealth, type IntegrationId, type IntegrationMcpDelivery, type IntegrationStatus, type IntegrationsManifest, type IntegrationsManifestEntry, LINKED_AGENT_IDS, type LinkedAgentId, MODEL_CONTEXT_WINDOW, MODEL_PRICING, type ModelPricing, type NormalizedMessage, OBSERVER_BRIDGE_PORT, PREVIEW_DETECT_PROMPT, PROTOCOL_VERSION, PUBLIC_TO_INTERNAL, type PendingReviewHunkEvent, type PendingReviewHunkLine, type PreviewDetection, type PreviewErrorStage, type PreviewState, type PreviewStatus, type RemoteCommand, SSE_SOCKET_TIMEOUT_MS, type SelectPrompt, type StreamingChunkEvent, type StreamingChunkKind, TERMINAL_AGENT_PREFIX, UNKNOWN_MODEL_PRICING, UPCOMING_INTEGRATION_IDS, USER_EVENTS, type UserEventName, getAgent, getContextWindow, getEnabledAgents, getEnabledIntegrations, getIntegration, getIntegrationBranding, getPricing, headroomKindFor, headroomModelPredownloadScript, headroomPipPackage, headroomSnapshotDownloadLine, internalToPublic, isHeadroomWrappable, isKnownAgentId, isKnownIntegrationId, isKnownModel, isLinkedAgentId, normalizeAgentId, publicToInternal, renderToLines, resolveApiBaseUrl, toRemoteCommand };
|
package/dist/index.d.ts
CHANGED
|
@@ -327,8 +327,26 @@ declare function isHeadroomWrappable(agentId: string): boolean;
|
|
|
327
327
|
* ubiquitous CLI for the tool → `cliEnv`; otherwise → `mcp`. A tool may
|
|
328
328
|
* declare both.
|
|
329
329
|
*/
|
|
330
|
-
type IntegrationId = 'jira' | 'sentry' | 'linear' | 'slack' | 'notion';
|
|
330
|
+
type IntegrationId = 'jira' | 'sentry' | 'linear' | 'slack' | 'notion' | 'azure_devops';
|
|
331
331
|
type IntegrationAuthKind = 'oauth_redirect' | 'oauth_device' | 'api_key';
|
|
332
|
+
/**
|
|
333
|
+
* One user-entered field for an `api_key` integration (no browser OAuth — the
|
|
334
|
+
* user pastes credentials directly, e.g. a PAT + an org URL). The mobile form
|
|
335
|
+
* is driven entirely by this list, and `key` maps to a `BrokeredIntegrationToken`
|
|
336
|
+
* field the delivery `envMapping` references.
|
|
337
|
+
*/
|
|
338
|
+
interface IntegrationApiKeyField {
|
|
339
|
+
/** Maps to a BrokeredIntegrationToken field (`accessToken`, `orgUrl`, …). */
|
|
340
|
+
key: 'accessToken' | 'orgUrl';
|
|
341
|
+
/** Form label. */
|
|
342
|
+
label: string;
|
|
343
|
+
/** Example / placeholder. */
|
|
344
|
+
placeholder?: string;
|
|
345
|
+
/** Masked (secret) input — true for the token, false for a plain URL. */
|
|
346
|
+
secret?: boolean;
|
|
347
|
+
/** Short help under the field (e.g. how to create the PAT). */
|
|
348
|
+
help?: string;
|
|
349
|
+
}
|
|
332
350
|
type IntegrationHealth = 'ok' | 'expired' | 'revoked';
|
|
333
351
|
/** stdio MCP server spec, executed as DATA by the CLI shim (`codeam mcp-run <id>`). */
|
|
334
352
|
interface IntegrationMcpDelivery {
|
|
@@ -353,6 +371,8 @@ interface IntegrationDefinition {
|
|
|
353
371
|
auth: {
|
|
354
372
|
kind: IntegrationAuthKind;
|
|
355
373
|
scopes?: string[];
|
|
374
|
+
/** For `kind: 'api_key'` — the credential fields the user pastes (no OAuth). */
|
|
375
|
+
fields?: IntegrationApiKeyField[];
|
|
356
376
|
};
|
|
357
377
|
delivery: IntegrationDelivery;
|
|
358
378
|
}
|
|
@@ -386,6 +406,10 @@ interface BrokeredIntegrationToken {
|
|
|
386
406
|
/** Slack workspace/team id (`T…`) — the Slack MCP server needs it alongside
|
|
387
407
|
* the bot token (`SLACK_TEAM_ID`). Absent for non-Slack integrations. */
|
|
388
408
|
teamId?: string;
|
|
409
|
+
/** Azure DevOps organization URL (`https://dev.azure.com/<org>`) — the ADO
|
|
410
|
+
* MCP server needs it alongside the PAT (`AZURE_DEVOPS_ORG_URL`). Absent for
|
|
411
|
+
* non-ADO integrations. */
|
|
412
|
+
orgUrl?: string;
|
|
389
413
|
}
|
|
390
414
|
|
|
391
415
|
/**
|
|
@@ -409,12 +433,15 @@ declare function isKnownIntegrationId(id: string): id is IntegrationId;
|
|
|
409
433
|
* anything itself.
|
|
410
434
|
*
|
|
411
435
|
* `logoSvg` values are the OFFICIAL brand marks. jira/slack are the
|
|
412
|
-
* multicolor originals (from the vendor).
|
|
413
|
-
*
|
|
436
|
+
* multicolor originals (from the vendor). Every other entry (the 6 live
|
|
437
|
+
* integrations' single-path marks + the whole COMING SOON set) is a
|
|
438
|
+
* simple-icons single-path mark that ships with a black fill by default —
|
|
414
439
|
* that fill has been rewritten here to #FFFFFF so the mark reads on the
|
|
415
440
|
* dark surfaces this catalog targets; consumers may re-tint via
|
|
416
441
|
* `brandColor` (e.g. an SVG `<mask>`/currentColor wrapper) if a different
|
|
417
|
-
* treatment is needed.
|
|
442
|
+
* treatment is needed. `pendo` + `amplitude` are NOT in simple-icons
|
|
443
|
+
* (brand-guideline restrictions) so they carry faithful hand-authored
|
|
444
|
+
* monochrome marks in the same 24×24 single-path shape.
|
|
418
445
|
*/
|
|
419
446
|
interface IntegrationBranding {
|
|
420
447
|
/** Stable id — registry ids ('jira') plus upcoming ones not yet in IntegrationId. */
|
|
@@ -429,7 +456,7 @@ interface IntegrationBranding {
|
|
|
429
456
|
logoSvg: string;
|
|
430
457
|
}
|
|
431
458
|
declare const INTEGRATION_BRANDING: Record<string, IntegrationBranding>;
|
|
432
|
-
declare const UPCOMING_INTEGRATION_IDS: readonly ["
|
|
459
|
+
declare const UPCOMING_INTEGRATION_IDS: readonly ["gmail", "posthog", "clickup", "figma", "trello", "resend", "vercel", "supabase", "asana", "postman", "n8n", "stripe", "mixpanel", "pendo", "pagerduty", "amplitude", "datadog"];
|
|
433
460
|
declare function getIntegrationBranding(id: string): IntegrationBranding | null;
|
|
434
461
|
|
|
435
462
|
/**
|
|
@@ -1252,4 +1279,4 @@ type UserEventName = (typeof USER_EVENTS)[keyof typeof USER_EVENTS];
|
|
|
1252
1279
|
*/
|
|
1253
1280
|
declare const PREVIEW_DETECT_PROMPT: string;
|
|
1254
1281
|
|
|
1255
|
-
export { AGENT_REGISTRY, type AgentAuth, type AgentAuthKind, type AgentId, type AgentMetadata, type AgentModel, type AnswerResolvedEvent, type AwaitingAnswerEvent, type BeadsActionCommand, type BeadsActionKind, type BeadsActionPayload, type BeadsActionRequest, type BeadsActionType, type BeadsConfigureAction, type BeadsDependencyDto, type BeadsDependencyKind, type BeadsIngestPayload, type BeadsIssueDto, type BeadsIssueStatus, type BeadsMemoryDto, type BeadsProjectDto, type BeadsProvisioningPayload, type BeadsProvisioningStatus, type BeadsSnapshotDto, type BeadsStatus, type BeadsStatusState, type BeadsStatusSummary, type BlameLineWire, type BrokeredIntegrationToken, type ChromeStep, type ChromeToolType, type CommitEntryWire, DEFAULT_API_BASE_URL, DEV_API_BASE_URL, type EnvVar, type FileBlameEvent, type FileChangeStatus, type FileChangedEvent, type FileHistoryEvent, type FileReviewStatus, HEADROOM_BACKEND_ENV, HEADROOM_EXTRAS_BY_SURFACE, HEADROOM_MODELS, HEADROOM_PIP_COMPANIONS, HEADROOM_PROXY_PORT, HEARTBEAT_INTERVAL_MS_DEFAULT, HOUSE_AGENT_ID, HOUSE_AGENT_NAME, HOUSE_AGENT_PROVIDER, HOUSE_AGENT_SUBTITLE, HOUSE_AGENT_VENDOR, type HeadroomBudgetCommand, type HeadroomBudgetPeriod, type HeadroomBudgetUsage, type HeadroomKind, type HeadroomModelSpec, type HeadroomPythonRenderOpts, type HeadroomStatus, type HeadroomStep, type HeadroomSurface, type HunkLineType, INTEGRATION_BRANDING, INTEGRATION_REGISTRY, INTERNAL_TO_PUBLIC, type InputSuggestionChunk, type IntegrationAuthKind, type IntegrationBranding, type IntegrationDefinition, type IntegrationDelivery, type IntegrationHealth, type IntegrationId, type IntegrationMcpDelivery, type IntegrationStatus, type IntegrationsManifest, type IntegrationsManifestEntry, LINKED_AGENT_IDS, type LinkedAgentId, MODEL_CONTEXT_WINDOW, MODEL_PRICING, type ModelPricing, type NormalizedMessage, OBSERVER_BRIDGE_PORT, PREVIEW_DETECT_PROMPT, PROTOCOL_VERSION, PUBLIC_TO_INTERNAL, type PendingReviewHunkEvent, type PendingReviewHunkLine, type PreviewDetection, type PreviewErrorStage, type PreviewState, type PreviewStatus, type RemoteCommand, SSE_SOCKET_TIMEOUT_MS, type SelectPrompt, type StreamingChunkEvent, type StreamingChunkKind, TERMINAL_AGENT_PREFIX, UNKNOWN_MODEL_PRICING, UPCOMING_INTEGRATION_IDS, USER_EVENTS, type UserEventName, getAgent, getContextWindow, getEnabledAgents, getEnabledIntegrations, getIntegration, getIntegrationBranding, getPricing, headroomKindFor, headroomModelPredownloadScript, headroomPipPackage, headroomSnapshotDownloadLine, internalToPublic, isHeadroomWrappable, isKnownAgentId, isKnownIntegrationId, isKnownModel, isLinkedAgentId, normalizeAgentId, publicToInternal, renderToLines, resolveApiBaseUrl, toRemoteCommand };
|
|
1282
|
+
export { AGENT_REGISTRY, type AgentAuth, type AgentAuthKind, type AgentId, type AgentMetadata, type AgentModel, type AnswerResolvedEvent, type AwaitingAnswerEvent, type BeadsActionCommand, type BeadsActionKind, type BeadsActionPayload, type BeadsActionRequest, type BeadsActionType, type BeadsConfigureAction, type BeadsDependencyDto, type BeadsDependencyKind, type BeadsIngestPayload, type BeadsIssueDto, type BeadsIssueStatus, type BeadsMemoryDto, type BeadsProjectDto, type BeadsProvisioningPayload, type BeadsProvisioningStatus, type BeadsSnapshotDto, type BeadsStatus, type BeadsStatusState, type BeadsStatusSummary, type BlameLineWire, type BrokeredIntegrationToken, type ChromeStep, type ChromeToolType, type CommitEntryWire, DEFAULT_API_BASE_URL, DEV_API_BASE_URL, type EnvVar, type FileBlameEvent, type FileChangeStatus, type FileChangedEvent, type FileHistoryEvent, type FileReviewStatus, HEADROOM_BACKEND_ENV, HEADROOM_EXTRAS_BY_SURFACE, HEADROOM_MODELS, HEADROOM_PIP_COMPANIONS, HEADROOM_PROXY_PORT, HEARTBEAT_INTERVAL_MS_DEFAULT, HOUSE_AGENT_ID, HOUSE_AGENT_NAME, HOUSE_AGENT_PROVIDER, HOUSE_AGENT_SUBTITLE, HOUSE_AGENT_VENDOR, type HeadroomBudgetCommand, type HeadroomBudgetPeriod, type HeadroomBudgetUsage, type HeadroomKind, type HeadroomModelSpec, type HeadroomPythonRenderOpts, type HeadroomStatus, type HeadroomStep, type HeadroomSurface, type HunkLineType, INTEGRATION_BRANDING, INTEGRATION_REGISTRY, INTERNAL_TO_PUBLIC, type InputSuggestionChunk, type IntegrationApiKeyField, type IntegrationAuthKind, type IntegrationBranding, type IntegrationDefinition, type IntegrationDelivery, type IntegrationHealth, type IntegrationId, type IntegrationMcpDelivery, type IntegrationStatus, type IntegrationsManifest, type IntegrationsManifestEntry, LINKED_AGENT_IDS, type LinkedAgentId, MODEL_CONTEXT_WINDOW, MODEL_PRICING, type ModelPricing, type NormalizedMessage, OBSERVER_BRIDGE_PORT, PREVIEW_DETECT_PROMPT, PROTOCOL_VERSION, PUBLIC_TO_INTERNAL, type PendingReviewHunkEvent, type PendingReviewHunkLine, type PreviewDetection, type PreviewErrorStage, type PreviewState, type PreviewStatus, type RemoteCommand, SSE_SOCKET_TIMEOUT_MS, type SelectPrompt, type StreamingChunkEvent, type StreamingChunkKind, TERMINAL_AGENT_PREFIX, UNKNOWN_MODEL_PRICING, UPCOMING_INTEGRATION_IDS, USER_EVENTS, type UserEventName, getAgent, getContextWindow, getEnabledAgents, getEnabledIntegrations, getIntegration, getIntegrationBranding, getPricing, headroomKindFor, headroomModelPredownloadScript, headroomPipPackage, headroomSnapshotDownloadLine, internalToPublic, isHeadroomWrappable, isKnownAgentId, isKnownIntegrationId, isKnownModel, isLinkedAgentId, normalizeAgentId, publicToInternal, renderToLines, resolveApiBaseUrl, toRemoteCommand };
|
package/dist/index.js
CHANGED
|
@@ -744,6 +744,53 @@ var INTEGRATION_REGISTRY = {
|
|
|
744
744
|
}
|
|
745
745
|
}
|
|
746
746
|
}
|
|
747
|
+
},
|
|
748
|
+
azure_devops: {
|
|
749
|
+
id: "azure_devops",
|
|
750
|
+
name: "Azure DevOps",
|
|
751
|
+
icon: "azure_devops",
|
|
752
|
+
// LIVE — the FIRST api_key (PAT) integration. No OAuth: Azure DevOps OAuth
|
|
753
|
+
// apps are being sunset by Microsoft in favor of Entra ID, and PATs are the
|
|
754
|
+
// native, reliable ADO auth. The user pastes their org URL + a PAT; the
|
|
755
|
+
// backend validates against the ADO REST API and vaults it. No env secrets
|
|
756
|
+
// to configure (config-gated 503 doesn't apply — there's no OAuth app).
|
|
757
|
+
enabled: true,
|
|
758
|
+
auth: {
|
|
759
|
+
kind: "api_key",
|
|
760
|
+
fields: [
|
|
761
|
+
{
|
|
762
|
+
key: "orgUrl",
|
|
763
|
+
label: "Organization URL",
|
|
764
|
+
placeholder: "https://dev.azure.com/your-org",
|
|
765
|
+
secret: false,
|
|
766
|
+
help: "Your Azure DevOps organization URL \u2014 e.g. https://dev.azure.com/contoso"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
key: "accessToken",
|
|
770
|
+
label: "Personal Access Token",
|
|
771
|
+
placeholder: "Paste your PAT",
|
|
772
|
+
secret: true,
|
|
773
|
+
help: "Create in Azure DevOps \u2192 User settings \u2192 Personal access tokens. Recommended scopes: Work Items (Read & Write), Code (Read), Build (Read), Project and Team (Read)."
|
|
774
|
+
}
|
|
775
|
+
]
|
|
776
|
+
},
|
|
777
|
+
delivery: {
|
|
778
|
+
mcp: {
|
|
779
|
+
// The @tiberriver256 ADO MCP server (Node) in PAT mode: the PAT is fed
|
|
780
|
+
// via AZURE_DEVOPS_PAT (Basic auth) + the org via AZURE_DEVOPS_ORG_URL
|
|
781
|
+
// (env only, never argv). AZURE_DEVOPS_AUTH_METHOD=pat pins the PAT path
|
|
782
|
+
// (the alternative, azure-identity, uses DefaultAzureCredential and
|
|
783
|
+
// would ignore our token). Version PINNED; bump only after re-verifying
|
|
784
|
+
// headless.
|
|
785
|
+
command: "npx",
|
|
786
|
+
args: ["-y", "@tiberriver256/mcp-server-azure-devops@0.1.46"],
|
|
787
|
+
envMapping: {
|
|
788
|
+
AZURE_DEVOPS_PAT: "accessToken",
|
|
789
|
+
AZURE_DEVOPS_ORG_URL: "orgUrl"
|
|
790
|
+
},
|
|
791
|
+
staticEnv: { AZURE_DEVOPS_AUTH_METHOD: "pat" }
|
|
792
|
+
}
|
|
793
|
+
}
|
|
747
794
|
}
|
|
748
795
|
};
|
|
749
796
|
function getEnabledIntegrations() {
|
|
@@ -801,9 +848,171 @@ var INTEGRATION_BRANDING = {
|
|
|
801
848
|
tagline: "Docs, wikis & knowledge",
|
|
802
849
|
brandColor: "#E8E7E4",
|
|
803
850
|
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Notion</title><path fill="#FFFFFF" d="M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z"/></svg>'
|
|
851
|
+
},
|
|
852
|
+
azure_devops: {
|
|
853
|
+
id: "azure_devops",
|
|
854
|
+
name: "Azure DevOps",
|
|
855
|
+
vendor: "Microsoft",
|
|
856
|
+
tagline: "Boards, Repos & Pipelines",
|
|
857
|
+
brandColor: "#0078D7",
|
|
858
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Azure DevOps</title><path fill="#FFFFFF" d="M0 8.877L2.247 5.91l8.405-3.416V.022l7.37 5.393L2.966 8.338v8.225L0 15.707zm24-4.45v14.651l-5.753 4.9-9.303-3.057v3.056l-5.978-7.416 15.057 1.798V5.415z"/></svg>'
|
|
859
|
+
},
|
|
860
|
+
gmail: {
|
|
861
|
+
id: "gmail",
|
|
862
|
+
name: "Gmail",
|
|
863
|
+
vendor: "Google",
|
|
864
|
+
tagline: "Read, search & send email",
|
|
865
|
+
brandColor: "#EA4335",
|
|
866
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Gmail</title><path fill="#FFFFFF" d="M24 5.457v13.909c0 .904-.732 1.636-1.636 1.636h-3.819V11.73L12 16.64l-6.545-4.91v9.273H1.636A1.636 1.636 0 0 1 0 19.366V5.457c0-2.023 2.309-3.178 3.927-1.964L5.455 4.64 12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z"/></svg>'
|
|
867
|
+
},
|
|
868
|
+
posthog: {
|
|
869
|
+
id: "posthog",
|
|
870
|
+
name: "PostHog",
|
|
871
|
+
vendor: "PostHog",
|
|
872
|
+
tagline: "Product analytics & feature flags",
|
|
873
|
+
brandColor: "#1D4AFF",
|
|
874
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>PostHog</title><path fill="#FFFFFF" d="M9.854 14.5 5 9.647.854 5.5A.5.5 0 0 0 0 5.854V8.44a.5.5 0 0 0 .146.353L5 13.647l.147.146L9.854 18.5l.146.147v-.049c.065.03.134.049.207.049h2.586a.5.5 0 0 0 .353-.854L9.854 14.5zm0-5-4-4a.487.487 0 0 0-.409-.144.515.515 0 0 0-.356.21.493.493 0 0 0-.089.288V8.44a.5.5 0 0 0 .147.353l9 9a.5.5 0 0 0 .853-.354v-2.585a.5.5 0 0 0-.146-.354l-5-5zm1-4a.5.5 0 0 0-.854.354V8.44a.5.5 0 0 0 .147.353l4 4a.5.5 0 0 0 .853-.354V9.854a.5.5 0 0 0-.146-.354l-4-4zm12.647 11.515a3.863 3.863 0 0 1-2.232-1.1l-4.708-4.707a.5.5 0 0 0-.854.354v6.585a.5.5 0 0 0 .5.5H23.5a.5.5 0 0 0 .5-.5v-.6c0-.276-.225-.497-.499-.532zm-5.394.032a.8.8 0 1 1 0-1.6.8.8 0 0 1 0 1.6zM.854 15.5a.5.5 0 0 0-.854.354v2.293a.5.5 0 0 0 .5.5h2.293c.222 0 .39-.135.462-.309a.493.493 0 0 0-.109-.545L.854 15.501zM5 14.647.854 10.5a.5.5 0 0 0-.854.353v2.586a.5.5 0 0 0 .146.353L4.854 18.5l.146.147h2.793a.5.5 0 0 0 .353-.854L5 14.647z"/></svg>'
|
|
875
|
+
},
|
|
876
|
+
clickup: {
|
|
877
|
+
id: "clickup",
|
|
878
|
+
name: "ClickUp",
|
|
879
|
+
vendor: "ClickUp",
|
|
880
|
+
tagline: "Tasks, docs & project management",
|
|
881
|
+
brandColor: "#7B68EE",
|
|
882
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ClickUp</title><path fill="#FFFFFF" d="M2 18.439l3.69-2.828c1.961 2.56 4.044 3.739 6.363 3.739 2.307 0 4.33-1.166 6.203-3.704L22 18.405C19.298 22.065 15.941 24 12.053 24 8.178 24 4.788 22.078 2 18.439zM12.04 6.15l-6.568 5.66-3.036-3.52L12.055 0l9.543 8.296-3.05 3.509z"/></svg>'
|
|
883
|
+
},
|
|
884
|
+
figma: {
|
|
885
|
+
id: "figma",
|
|
886
|
+
name: "Figma",
|
|
887
|
+
vendor: "Figma",
|
|
888
|
+
tagline: "Designs, files & comments",
|
|
889
|
+
brandColor: "#F24E1E",
|
|
890
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Figma</title><path fill="#FFFFFF" d="M15.852 8.981h-4.588V0h4.588c2.476 0 4.49 2.014 4.49 4.49s-2.014 4.491-4.49 4.491zM12.735 7.51h3.117c1.665 0 3.019-1.355 3.019-3.019s-1.355-3.019-3.019-3.019h-3.117V7.51zm0 1.471H8.148c-2.476 0-4.49-2.014-4.49-4.49S5.672 0 8.148 0h4.588v8.981zm-4.587-7.51c-1.665 0-3.019 1.355-3.019 3.019s1.354 3.02 3.019 3.02h3.117V1.471H8.148zm4.587 15.019H8.148c-2.476 0-4.49-2.014-4.49-4.49s2.014-4.49 4.49-4.49h4.588v8.98zM8.148 8.981c-1.665 0-3.019 1.355-3.019 3.019s1.355 3.019 3.019 3.019h3.117V8.981H8.148zM8.172 24c-2.489 0-4.515-2.014-4.515-4.49s2.014-4.49 4.49-4.49h4.588v4.441c0 2.503-2.047 4.539-4.563 4.539zm-.024-7.51a3.023 3.023 0 0 0-3.019 3.019c0 1.665 1.365 3.019 3.044 3.019 1.705 0 3.093-1.376 3.093-3.068v-2.97H8.148zm7.704 0h-.098c-2.476 0-4.49-2.014-4.49-4.49s2.014-4.49 4.49-4.49h.098c2.476 0 4.49 2.014 4.49 4.49s-2.014 4.49-4.49 4.49zm-.097-7.509c-1.665 0-3.019 1.355-3.019 3.019s1.355 3.019 3.019 3.019h.098c1.665 0 3.019-1.355 3.019-3.019s-1.355-3.019-3.019-3.019h-.098z"/></svg>'
|
|
891
|
+
},
|
|
892
|
+
trello: {
|
|
893
|
+
id: "trello",
|
|
894
|
+
name: "Trello",
|
|
895
|
+
vendor: "Atlassian",
|
|
896
|
+
tagline: "Boards, lists & cards",
|
|
897
|
+
brandColor: "#0052CC",
|
|
898
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Trello</title><path fill="#FFFFFF" d="M21.147 0H2.853A2.86 2.86 0 000 2.853v18.294A2.86 2.86 0 002.853 24h18.294A2.86 2.86 0 0024 21.147V2.853A2.86 2.86 0 0021.147 0zM10.34 17.287a.953.953 0 01-.953.953h-4a.954.954 0 01-.954-.953V5.38a.953.953 0 01.954-.953h4a.954.954 0 01.953.953zm9.233-5.467a.944.944 0 01-.953.947h-4a.947.947 0 01-.953-.947V5.38a.953.953 0 01.953-.953h4a.954.954 0 01.953.953z"/></svg>'
|
|
899
|
+
},
|
|
900
|
+
resend: {
|
|
901
|
+
id: "resend",
|
|
902
|
+
name: "Resend",
|
|
903
|
+
vendor: "Resend",
|
|
904
|
+
tagline: "Transactional email delivery",
|
|
905
|
+
brandColor: "#FFFFFF",
|
|
906
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Resend</title><path fill="#FFFFFF" d="M14.679 0c4.648 0 7.413 2.765 7.413 6.434s-2.765 6.434-7.413 6.434H12.33L24 24h-8.245l-8.88-8.44c-.636-.588-.93-1.273-.93-1.86 0-.831.587-1.565 1.713-1.883l4.574-1.224c1.737-.465 2.936-1.81 2.936-3.572 0-2.153-1.761-3.4-3.939-3.4H0V0z"/></svg>'
|
|
907
|
+
},
|
|
908
|
+
vercel: {
|
|
909
|
+
id: "vercel",
|
|
910
|
+
name: "Vercel",
|
|
911
|
+
vendor: "Vercel",
|
|
912
|
+
tagline: "Deployments, logs & projects",
|
|
913
|
+
brandColor: "#FFFFFF",
|
|
914
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Vercel</title><path fill="#FFFFFF" d="m12 1.608 12 20.784H0Z"/></svg>'
|
|
915
|
+
},
|
|
916
|
+
supabase: {
|
|
917
|
+
id: "supabase",
|
|
918
|
+
name: "Supabase",
|
|
919
|
+
vendor: "Supabase",
|
|
920
|
+
tagline: "Postgres, auth & storage",
|
|
921
|
+
brandColor: "#3FCF8E",
|
|
922
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Supabase</title><path fill="#FFFFFF" d="M11.9 1.036c-.015-.986-1.26-1.41-1.874-.637L.764 12.05C-.33 13.427.65 15.455 2.409 15.455h9.579l.113 7.51c.014.985 1.259 1.408 1.873.636l9.262-11.653c1.093-1.375.113-3.403-1.645-3.403h-9.642z"/></svg>'
|
|
923
|
+
},
|
|
924
|
+
asana: {
|
|
925
|
+
id: "asana",
|
|
926
|
+
name: "Asana",
|
|
927
|
+
vendor: "Asana",
|
|
928
|
+
tagline: "Tasks, projects & workflows",
|
|
929
|
+
brandColor: "#F06A6A",
|
|
930
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Asana</title><path fill="#FFFFFF" d="M18.78 12.653c-2.882 0-5.22 2.336-5.22 5.22s2.338 5.22 5.22 5.22 5.22-2.34 5.22-5.22-2.336-5.22-5.22-5.22zm-13.56 0c-2.88 0-5.22 2.337-5.22 5.22s2.338 5.22 5.22 5.22 5.22-2.338 5.22-5.22-2.336-5.22-5.22-5.22zm12-6.525c0 2.883-2.337 5.22-5.22 5.22-2.882 0-5.22-2.337-5.22-5.22 0-2.88 2.338-5.22 5.22-5.22 2.883 0 5.22 2.34 5.22 5.22z"/></svg>'
|
|
931
|
+
},
|
|
932
|
+
postman: {
|
|
933
|
+
id: "postman",
|
|
934
|
+
name: "Postman",
|
|
935
|
+
vendor: "Postman",
|
|
936
|
+
tagline: "APIs, collections & environments",
|
|
937
|
+
brandColor: "#FF6C37",
|
|
938
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Postman</title><path fill="#FFFFFF" d="M13.527.099C6.955-.744.942 3.9.099 10.473c-.843 6.572 3.8 12.584 10.373 13.428 6.573.843 12.587-3.801 13.428-10.374C24.744 6.955 20.101.943 13.527.099zm2.471 7.485a.855.855 0 0 0-.593.25l-4.453 4.453-.307-.307-.643-.643c4.389-4.376 5.18-4.418 5.996-3.753zm-4.863 4.861l4.44-4.44a.62.62 0 1 1 .847.903l-4.699 4.125-.588-.588zm.33.694l-1.1.238a.06.06 0 0 1-.067-.032.06.06 0 0 1 .01-.073l.645-.645.512.512zm-2.803-.459l1.172-1.172.879.878-1.979.426a.074.074 0 0 1-.085-.039.072.072 0 0 1 .013-.093zm-3.646 6.058a.076.076 0 0 1-.069-.083.077.077 0 0 1 .022-.046h.002l.946-.946 1.222 1.222-2.123-.147zm2.425-1.256a.228.228 0 0 0-.117.256l.203.865a.125.125 0 0 1-.211.117h-.003l-.934-.934-.294-.295 3.762-3.758 1.82-.393.874.874c-1.255 1.102-2.971 2.201-5.1 3.268zm5.279-3.428h-.002l-.839-.839 4.699-4.125a.952.952 0 0 0 .119-.127c-.148 1.345-2.029 3.245-3.977 5.091zm3.657-6.46l-.003-.002a1.822 1.822 0 0 1 2.459-2.684l-1.61 1.613a.119.119 0 0 0 0 .169l1.247 1.247a1.817 1.817 0 0 1-2.093-.343zm2.578 0a1.714 1.714 0 0 1-.271.218h-.001l-1.207-1.207 1.533-1.533c.661.72.637 1.832-.054 2.522zM18.855 6.05a.143.143 0 0 0-.053.157.416.416 0 0 1-.053.45.14.14 0 0 0 .023.197.141.141 0 0 0 .084.03.14.14 0 0 0 .106-.05.691.691 0 0 0 .087-.751.138.138 0 0 0-.194-.033z"/></svg>'
|
|
939
|
+
},
|
|
940
|
+
n8n: {
|
|
941
|
+
id: "n8n",
|
|
942
|
+
name: "n8n",
|
|
943
|
+
vendor: "n8n",
|
|
944
|
+
tagline: "Workflow automation & webhooks",
|
|
945
|
+
brandColor: "#EA4B71",
|
|
946
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>n8n</title><path fill="#FFFFFF" d="M21.4737 5.6842c-1.1772 0-2.1663.8051-2.4468 1.8947h-2.8955c-1.235 0-2.289.893-2.492 2.111l-.1038.623a1.263 1.263 0 0 1-1.246 1.0555H11.289c-.2805-1.0896-1.2696-1.8947-2.4468-1.8947s-2.1663.8051-2.4467 1.8947H4.973c-.2805-1.0896-1.2696-1.8947-2.4468-1.8947C1.1311 9.4737 0 10.6047 0 12s1.131 2.5263 2.5263 2.5263c1.1772 0 2.1663-.8051 2.4468-1.8947h1.4223c.2804 1.0896 1.2696 1.8947 2.4467 1.8947 1.1772 0 2.1663-.8051 2.4468-1.8947h1.0008a1.263 1.263 0 0 1 1.2459 1.0555l.1038.623c.203 1.218 1.257 2.111 2.492 2.111h.3692c.2804 1.0895 1.2696 1.8947 2.4468 1.8947 1.3952 0 2.5263-1.131 2.5263-2.5263s-1.131-2.5263-2.5263-2.5263c-1.1772 0-2.1664.805-2.4468 1.8947h-.3692a1.263 1.263 0 0 1-1.246-1.0555l-.1037-.623A2.52 2.52 0 0 0 13.9607 12a2.52 2.52 0 0 0 .821-1.4794l.1038-.623a1.263 1.263 0 0 1 1.2459-1.0555h2.8955c.2805 1.0896 1.2696 1.8947 2.4468 1.8947 1.3952 0 2.5263-1.131 2.5263-2.5263s-1.131-2.5263-2.5263-2.5263m0 1.2632a1.263 1.263 0 0 1 1.2631 1.2631 1.263 1.263 0 0 1-1.2631 1.2632 1.263 1.263 0 0 1-1.2632-1.2632 1.263 1.263 0 0 1 1.2632-1.2631M2.5263 10.7368A1.263 1.263 0 0 1 3.7895 12a1.263 1.263 0 0 1-1.2632 1.2632A1.263 1.263 0 0 1 1.2632 12a1.263 1.263 0 0 1 1.2631-1.2632m6.3158 0A1.263 1.263 0 0 1 10.1053 12a1.263 1.263 0 0 1-1.2632 1.2632A1.263 1.263 0 0 1 7.579 12a1.263 1.263 0 0 1 1.2632-1.2632m10.1053 3.7895a1.263 1.263 0 0 1 1.2631 1.2632 1.263 1.263 0 0 1-1.2631 1.2631 1.263 1.263 0 0 1-1.2632-1.2631 1.263 1.263 0 0 1 1.2632-1.2632"/></svg>'
|
|
947
|
+
},
|
|
948
|
+
stripe: {
|
|
949
|
+
id: "stripe",
|
|
950
|
+
name: "Stripe",
|
|
951
|
+
vendor: "Stripe",
|
|
952
|
+
tagline: "Payments, customers & invoices",
|
|
953
|
+
brandColor: "#635BFF",
|
|
954
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Stripe</title><path fill="#FFFFFF" d="M13.976 9.15c-2.172-.806-3.356-1.426-3.356-2.409 0-.831.683-1.305 1.901-1.305 2.227 0 4.515.858 6.09 1.631l.89-5.494C18.252.975 15.697 0 12.165 0 9.667 0 7.589.654 6.104 1.872 4.56 3.147 3.757 4.992 3.757 7.218c0 4.039 2.467 5.76 6.476 7.219 2.585.92 3.445 1.574 3.445 2.583 0 .98-.84 1.545-2.354 1.545-1.875 0-4.965-.921-6.99-2.109l-.9 5.555C5.175 22.99 8.385 24 11.714 24c2.641 0 4.843-.624 6.328-1.813 1.664-1.305 2.525-3.236 2.525-5.732 0-4.128-2.524-5.851-6.594-7.305h.003z"/></svg>'
|
|
955
|
+
},
|
|
956
|
+
mixpanel: {
|
|
957
|
+
id: "mixpanel",
|
|
958
|
+
name: "Mixpanel",
|
|
959
|
+
vendor: "Mixpanel",
|
|
960
|
+
tagline: "Product & user analytics",
|
|
961
|
+
brandColor: "#7856FF",
|
|
962
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Mixpanel</title><path fill="#FFFFFF" d="M6.967 9.996h3.053c-.763-.477-1.048-1.145-1.431-2.384L7.443 3.366C6.919 1.458 6.49.551 4.39.551H.004v1.145h.621c1.286 0 1.431.477 1.814 1.908L3.44 7.326c.524 1.814 1.337 2.67 3.53 2.67h-.003Zm7.06 0h3.053c2.194 0 2.956-.86 3.484-2.67l1.001-3.722c.382-1.431.57-1.908 1.814-1.908H24V.551h-4.34c-2.146 0-2.576.86-3.053 2.815l-1.145 4.246c-.384 1.286-.673 1.907-1.435 2.384Zm-4.007 4.008h4.007V9.996H10.02v4.008ZM0 23.449h4.39c2.1 0 2.529-.907 3.053-2.815l1.146-4.246c.383-1.239.668-1.907 1.431-2.384H6.967c-2.194 0-3.007.86-3.531 2.67l-1.001 3.722c-.383 1.431-.524 1.907-1.814 1.907H0v1.146Zm19.65 0h4.343v-1.146h-.622c-1.239 0-1.431-.476-1.814-1.907l-1.001-3.722c-.524-1.814-1.286-2.67-3.483-2.67h-3.046c.762.477 1.041 1.098 1.424 2.384l1.145 4.246c.477 1.955.907 2.815 3.054 2.815Z"/></svg>'
|
|
963
|
+
},
|
|
964
|
+
pendo: {
|
|
965
|
+
id: "pendo",
|
|
966
|
+
name: "Pendo",
|
|
967
|
+
vendor: "Pendo",
|
|
968
|
+
tagline: "Product analytics & user guides",
|
|
969
|
+
brandColor: "#EC2588",
|
|
970
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Pendo</title><path fill="#FFFFFF" d="M3 3h13.5A4.5 4.5 0 0 1 21 7.5v9A4.5 4.5 0 0 1 16.5 21H3V3Zm5 4v10h3v-3h2.2a3.5 3.5 0 0 0 0-7H8Zm3 2h1.9a1.5 1.5 0 0 1 0 3H11V9Z"/></svg>'
|
|
971
|
+
},
|
|
972
|
+
pagerduty: {
|
|
973
|
+
id: "pagerduty",
|
|
974
|
+
name: "PagerDuty",
|
|
975
|
+
vendor: "PagerDuty",
|
|
976
|
+
tagline: "Incidents, alerts & on-call",
|
|
977
|
+
brandColor: "#06AC38",
|
|
978
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>PagerDuty</title><path fill="#FFFFFF" d="M16.965 1.18C15.085.164 13.769 0 10.683 0H3.73v14.55h6.926c2.743 0 4.8-.164 6.61-1.37 1.975-1.303 3.004-3.484 3.004-6.007 0-2.716-1.262-4.896-3.305-5.994zm-5.5 10.326h-4.21V3.113l3.977-.027c3.62-.028 5.43 1.234 5.43 4.128 0 3.113-2.248 4.292-5.197 4.292zM3.73 17.61h3.525V24H3.73Z"/></svg>'
|
|
979
|
+
},
|
|
980
|
+
amplitude: {
|
|
981
|
+
id: "amplitude",
|
|
982
|
+
name: "Amplitude",
|
|
983
|
+
vendor: "Amplitude",
|
|
984
|
+
tagline: "Digital analytics & experiments",
|
|
985
|
+
brandColor: "#1F6FFF",
|
|
986
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Amplitude</title><path fill="#FFFFFF" d="M1 21h2V11H1v10Zm4 0h2V6H5v15Zm4 0h2V3H9v18Zm4 0h2V6h-2v15Zm4 0h2v-8h-2v8Zm4 0h2v-5h-2v5Z"/></svg>'
|
|
987
|
+
},
|
|
988
|
+
datadog: {
|
|
989
|
+
id: "datadog",
|
|
990
|
+
name: "Datadog",
|
|
991
|
+
vendor: "Datadog",
|
|
992
|
+
tagline: "Metrics, logs & monitoring",
|
|
993
|
+
brandColor: "#632CA6",
|
|
994
|
+
logoSvg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Datadog</title><path fill="#FFFFFF" d="M19.57 17.04l-1.997-1.316-1.665 2.782-1.937-.567-1.706 2.604.087.82 9.274-1.71-.538-5.794zm-8.649-2.498l1.488-.204c.241.108.409.15.697.223.45.117.97.23 1.741-.16.18-.088.553-.43.704-.625l6.096-1.106.622 7.527-10.444 1.882zm11.325-2.712l-.602.115L20.488 0 .789 2.285l2.427 19.693 2.306-.334c-.184-.263-.471-.581-.96-.989-.68-.564-.44-1.522-.039-2.127.53-1.022 3.26-2.322 3.106-3.956-.056-.594-.15-1.368-.702-1.898-.02.22.017.432.017.432s-.227-.289-.34-.683c-.112-.15-.2-.199-.319-.4-.085.233-.073.503-.073.503s-.186-.437-.216-.807c-.11.166-.137.48-.137.48s-.241-.69-.186-1.062c-.11-.323-.436-.965-.343-2.424.6.421 1.924.321 2.44-.439.171-.251.288-.939-.086-2.293-.24-.868-.835-2.16-1.066-2.651l-.028.02c.122.395.374 1.223.47 1.625.293 1.218.372 1.642.234 2.204-.116.488-.397.808-1.107 1.165-.71.358-1.653-.514-1.713-.562-.69-.55-1.224-1.447-1.284-1.883-.062-.477.275-.763.445-1.153-.243.07-.514.192-.514.192s.323-.334.722-.624c.165-.109.262-.178.436-.323a9.762 9.762 0 0 0-.456.003s.42-.227.855-.392c-.318-.014-.623-.003-.623-.003s.937-.419 1.678-.727c.509-.208 1.006-.147 1.286.257.367.53.752.817 1.569.996.501-.223.653-.337 1.284-.509.554-.61.99-.688.99-.688s-.216.198-.274.51c.314-.249.66-.455.66-.455s-.134.164-.259.426l.03.043c.366-.22.797-.394.797-.394s-.123.156-.268.358c.277-.002.838.012 1.056.037 1.285.028 1.552-1.374 2.045-1.55.618-.22.894-.353 1.947.68.903.888 1.609 2.477 1.259 2.833-.294.295-.874-.115-1.516-.916a3.466 3.466 0 0 1-.716-1.562 1.533 1.533 0 0 0-.497-.85s.23.51.23.96c0 .246.03 1.165.424 1.68-.039.076-.057.374-.1.43-.458-.554-1.443-.95-1.604-1.067.544.445 1.793 1.468 2.273 2.449.453.927.186 1.777.416 1.997.065.063.976 1.197 1.15 1.767.306.994.019 2.038-.381 2.685l-1.117.174c-.163-.045-.273-.068-.42-.153.08-.143.241-.5.243-.572l-.063-.111c-.348.492-.93.97-1.414 1.245-.633.359-1.363.304-1.838.156-1.348-.415-2.623-1.327-2.93-1.566 0 0-.01.191.048.234.34.383 1.119 1.077 1.872 1.56l-1.605.177.759 5.908c-.337.048-.39.071-.757.124-.325-1.147-.946-1.895-1.624-2.332-.599-.384-1.424-.47-2.214-.314l-.05.059a2.851 2.851 0 0 1 1.863.444c.654.413 1.181 1.481 1.375 2.124.248.822.42 1.7-.248 2.632-.476.662-1.864 1.028-2.986.237.3.481.705.876 1.25.95.809.11 1.577-.03 2.106-.574.452-.464.69-1.434.628-2.456l.714-.104.258 1.834 11.827-1.424zM15.05 6.848c-.034.075-.085.125-.007.37l.004.014.013.032.032.073c.14.287.295.558.552.696.067-.011.136-.019.207-.023.242-.01.395.028.492.08.009-.048.01-.119.005-.222-.018-.364.072-.982-.626-1.308-.264-.122-.634-.084-.757.068a.302.302 0 0 1 .058.013c.186.066.06.13.027.207m1.958 3.392c-.092-.05-.52-.03-.821.005-.574.068-1.193.267-1.328.372-.247.191-.135.523.047.66.511.382.96.638 1.432.575.29-.038.546-.497.728-.914.124-.288.124-.598-.058-.698m-5.077-2.942c.162-.154-.805-.355-1.556.156-.554.378-.571 1.187-.041 1.646.053.046.096.078.137.104a4.77 4.77 0 0 1 1.396-.412c.113-.125.243-.345.21-.745-.044-.542-.455-.456-.146-.749"/></svg>'
|
|
804
995
|
}
|
|
805
996
|
};
|
|
806
|
-
var UPCOMING_INTEGRATION_IDS = [
|
|
997
|
+
var UPCOMING_INTEGRATION_IDS = [
|
|
998
|
+
"gmail",
|
|
999
|
+
"posthog",
|
|
1000
|
+
"clickup",
|
|
1001
|
+
"figma",
|
|
1002
|
+
"trello",
|
|
1003
|
+
"resend",
|
|
1004
|
+
"vercel",
|
|
1005
|
+
"supabase",
|
|
1006
|
+
"asana",
|
|
1007
|
+
"postman",
|
|
1008
|
+
"n8n",
|
|
1009
|
+
"stripe",
|
|
1010
|
+
"mixpanel",
|
|
1011
|
+
"pendo",
|
|
1012
|
+
"pagerduty",
|
|
1013
|
+
"amplitude",
|
|
1014
|
+
"datadog"
|
|
1015
|
+
];
|
|
807
1016
|
function getIntegrationBranding(id) {
|
|
808
1017
|
return INTEGRATION_BRANDING[id] ?? null;
|
|
809
1018
|
}
|