This commit is contained in:
Sreeram 2026-08-26 10:46:58 -07:00 committed by GitHub
commit 719f63805d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 62 additions and 4 deletions

View file

@ -4,7 +4,7 @@ import { $fetch } from "@lib/api"
import { useConnectorAccess } from "@/hooks/use-connector-access"
import type { ConnectionResponseSchema } from "@repo/validation/api"
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"
import { GoogleDrive, Granola, Notion, OneDrive } from "@ui/assets/icons"
import { GoogleDrive, Granola, Notion, OneDrive, Zoom } from "@ui/assets/icons"
import { useCustomer } from "autumn-js/react"
import {
Check,
@ -53,7 +53,12 @@ const GDRIVE_SCOPE_LABELS: Record<GDriveSyncScope, string> = {
type Connection = z.infer<typeof ConnectionResponseSchema>
type ConnectorProvider = "google-drive" | "notion" | "onedrive" | "granola"
type ConnectorProvider =
| "google-drive"
| "notion"
| "onedrive"
| "zoom"
| "granola"
const CONNECTORS: Record<
ConnectorProvider,
@ -82,6 +87,12 @@ const CONNECTORS: Record<
documentLabel: "documents",
icon: OneDrive,
},
zoom: {
title: "Zoom",
description: "Sync meeting notes, transcripts, and AI summaries",
documentLabel: "meetings",
icon: Zoom,
},
granola: {
title: "Granola",
description: "Sync AI meeting notes and transcripts",
@ -793,6 +804,23 @@ export function ConnectContent({ selectedProject }: ConnectContentProps) {
</span>
</div>
</DropdownMenuItem>
<DropdownMenuItem
onClick={() => {
setConnectingProvider("zoom")
addConnectionMutation.mutate({ provider: "zoom" })
}}
className="flex items-start gap-2.5 px-3 py-2.5 rounded-md cursor-pointer text-white opacity-60 hover:opacity-100 hover:bg-[#293952]/40 focus:bg-[#293952]/40 focus:opacity-100"
>
<Zoom className="size-5 mt-0.5 shrink-0" />
<div className="flex flex-col gap-0.5 min-w-0">
<span className="text-[14px] font-medium text-[#FAFAFA] leading-tight">
Zoom
</span>
<span className="text-[11px] text-[#737373] leading-tight">
Meetings & transcripts
</span>
</div>
</DropdownMenuItem>
<DropdownMenuItem
disabled={isUpgrading || autumn.isLoading}
onClick={() => {

View file

@ -4,7 +4,7 @@ import { dmSans125ClassName } from "@/lib/fonts"
import { cn } from "@lib/utils"
import { $fetch } from "@lib/api"
import { hasActivePlan } from "@lib/queries"
import { GoogleDrive, Granola, Notion, OneDrive } from "@ui/assets/icons"
import { GoogleDrive, Granola, Notion, OneDrive, Zoom } from "@ui/assets/icons"
import { useCustomer } from "autumn-js/react"
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"
import {
@ -72,6 +72,12 @@ const CONNECTORS = {
icon: OneDrive,
documentLabel: "documents",
},
zoom: {
title: "Zoom",
description: "Sync meeting notes, transcripts, and AI summaries",
icon: Zoom,
documentLabel: "meetings",
},
granola: {
title: "Granola",
description: "Sync AI meeting notes and transcripts",

View file

@ -42,6 +42,7 @@ export const PROVIDER_DISPLAY_NAMES: Record<string, string> = {
github: "GitHub",
"web-crawler": "Web Crawler",
s3: "S3",
zoom: "Zoom",
granola: "Granola",
}
@ -61,4 +62,5 @@ export type ImportProvider =
| "github"
| "web-crawler"
| "s3"
| "zoom"
| "granola"

View file

@ -115,7 +115,13 @@ export const apiSchema = createSchema({
redirectsTo: z.string().optional(),
}),
params: z.object({
provider: z.enum(["google-drive", "notion", "onedrive", "granola"]),
provider: z.enum([
"google-drive",
"notion",
"onedrive",
"zoom",
"granola",
]),
}),
},
@ -183,6 +189,7 @@ export const apiSchema = createSchema({
"github",
"web-crawler",
"s3",
"zoom",
"granola",
]),
}),

File diff suppressed because one or more lines are too long