mirror of
https://github.com/supermemoryai/supermemory.git
synced 2026-09-06 08:16:03 +00:00
Added quick note and highlights features to the new UI, improved OG scraping, and implemented Nova alpha access feature flag.
65 lines
2.1 KiB
TypeScript
65 lines
2.1 KiB
TypeScript
import posthog from "posthog-js"
|
|
|
|
// Helper function to safely capture events
|
|
const safeCapture = (
|
|
eventName: string,
|
|
properties?: Record<string, unknown>,
|
|
) => {
|
|
if (posthog.__loaded) {
|
|
posthog.capture(eventName, properties)
|
|
}
|
|
}
|
|
|
|
export const analytics = {
|
|
userSignedOut: () => safeCapture("user_signed_out"),
|
|
|
|
memoryAdded: (props: {
|
|
type: "note" | "link" | "file"
|
|
project_id?: string
|
|
content_length?: number
|
|
file_size?: number
|
|
file_type?: string
|
|
}) => safeCapture("memory_added", props),
|
|
|
|
memoryDetailOpened: () => safeCapture("memory_detail_opened"),
|
|
|
|
projectCreated: () => safeCapture("project_created"),
|
|
|
|
newChatStarted: () => safeCapture("new_chat_started"),
|
|
chatHistoryViewed: () => safeCapture("chat_history_viewed"),
|
|
chatDeleted: () => safeCapture("chat_deleted"),
|
|
|
|
viewModeChanged: (mode: "graph" | "list") =>
|
|
safeCapture("view_mode_changed", { mode }),
|
|
|
|
documentCardClicked: () => safeCapture("document_card_clicked"),
|
|
|
|
billingViewed: () => safeCapture("billing_viewed"),
|
|
upgradeInitiated: () => safeCapture("upgrade_initiated"),
|
|
upgradeCompleted: () => safeCapture("upgrade_completed"),
|
|
billingPortalOpened: () => safeCapture("billing_portal_opened"),
|
|
|
|
connectionAdded: (provider: string) =>
|
|
safeCapture("connection_added", { provider }),
|
|
connectionDeleted: () => safeCapture("connection_deleted"),
|
|
connectionAuthStarted: () => safeCapture("connection_auth_started"),
|
|
connectionAuthCompleted: () => safeCapture("connection_auth_completed"),
|
|
connectionAuthFailed: () => safeCapture("connection_auth_failed"),
|
|
|
|
mcpViewOpened: () => safeCapture("mcp_view_opened"),
|
|
mcpInstallCmdCopied: () => safeCapture("mcp_install_cmd_copied"),
|
|
|
|
extensionInstallClicked: () => safeCapture("extension_install_clicked"),
|
|
|
|
// nova analytics
|
|
documentAdded: (props: {
|
|
type: "note" | "link" | "file" | "connect"
|
|
project_id?: string
|
|
}) => safeCapture("document_added", props),
|
|
|
|
newChatCreated: () => safeCapture("new_chat_created"),
|
|
|
|
mcpModalOpened: () => safeCapture("mcp_modal_opened"),
|
|
|
|
addDocumentModalOpened: () => safeCapture("add_document_modal_opened"),
|
|
}
|