MCPcopy Create free account

hub / github.com/SamuelZ12/longcut / functions

Functions698 in github.com/SamuelZ12/longcut

↓ 1 callersFunctiongetSourceLabel
(source: NoteSource)
app/all-notes/page.tsx:24
↓ 1 callersFunctiongetSupabaseConfig
()
lib/supabase/client.ts:3
↓ 1 callersFunctiongetThemeDisplayText
(theme: string)
components/theme-selector.tsx:134
↓ 1 callersFunctiongetTranslationClient
()
lib/translation/client.ts:13
↓ 1 callersFunctiongetWelcomeHtmlBody
(fullName?: string | null)
lib/email/templates/welcome.ts:3
↓ 1 callersFunctiongetWelcomeSubject
()
lib/email/templates/welcome.ts:1
↓ 1 callersFunctiongrantProAccess
(options: GrantProOptions)
scripts/grant-pro-access.ts:156
↓ 1 callersMethodgroupByLanguage
* Group requests by target language
lib/translation-batcher.ts:172
↓ 1 callersFunctionhandleCheckoutCompleted
( session: Stripe.Checkout.Session, supabase: SupabaseClient<any, string, any>, stripe: Stripe )
app/api/webhooks/stripe/route.ts:108
↓ 1 callersFunctionhandleDeleteNote
(noteId: string)
app/all-notes/page.tsx:171
↓ 1 callersFunctionhandleDotClick
(index: number)
components/loading-tips.tsx:68
↓ 1 callersFunctionhandleInvoicePaymentFailed
( invoice: Stripe.Invoice, supabase: SupabaseClient<any, string, any> )
app/api/webhooks/stripe/route.ts:316
↓ 1 callersFunctionhandleInvoicePaymentSucceeded
( invoice: Stripe.Invoice, supabase: SupabaseClient<any, string, any> )
app/api/webhooks/stripe/route.ts:279
↓ 1 callersFunctionhandleSegmentClick
(segment: TranscriptSegment)
components/transcript-viewer.tsx:550
↓ 1 callersFunctionhandleSubscriptionDeleted
( subscription: Stripe.Subscription, supabase: SupabaseClient<any, string, any> )
app/api/webhooks/stripe/route.ts:240
↓ 1 callersFunctionhandleSubscriptionUpdated
( subscription: Stripe.Subscription, supabase: SupabaseClient<any, string, any> )
app/api/webhooks/stripe/route.ts:199
↓ 1 callersFunctionhandleToggleFavorite
(e: React.MouseEvent, userVideoId: string, videoYoutubeId: string)
app/my-videos/video-grid.tsx:90
↓ 1 callersFunctionhandleTopicClick
(e: React.MouseEvent<HTMLDivElement>, topic: Topic)
components/video-progress-bar.tsx:59
↓ 1 callersFunctionhandleTopupSuccess
(data: { creditsAdded?: number totalCredits?: number | null alreadyApplied?: boolean u
app/settings/settings-form.tsx:267
↓ 1 callersFunctionhandleUpgrade
(period: BillingPeriod)
app/pricing/pricing-content.tsx:75
↓ 1 callersFunctionhandler
(request: NextRequest)
app/api/chat/route.ts:73
↓ 1 callersFunctionhasCountedGenerationThisPeriod
({ supabase, userId, youtubeId, videoId, periodStart, periodEnd }: { supabase: SupabaseServerCli
app/api/video-analysis/route.ts:41
↓ 1 callersFunctionhasSpeakerMetadata
(transcript: TranscriptSegment[])
lib/transcript-export.ts:326
↓ 1 callersFunctionimportFreshValidationModule
()
lib/__tests__/validation.test.ts:27
↓ 1 callersFunctioninitializeStripe
* Initialize Stripe client
scripts/update-product-description.ts:43
↓ 1 callersFunctioninitializeStripe
* Initialize Stripe client
scripts/setup-stripe-portal.ts:52
↓ 1 callersFunctioninjectCSRFToken
(response: NextResponse)
lib/csrf-protection.ts:93
↓ 1 callersFunctionisAllowedOrigin
* Check if origin is allowed for CORS
lib/security-middleware.ts:167
↓ 1 callersFunctionisFlattenedTranscript
( transcript: TranscriptSegment[], videoInfo?: VideoInfo | null, )
app/analyze/[videoId]/page.tsx:136
↓ 1 callersFunctionisInAppBrowser
()
lib/webview-detector.ts:26
↓ 1 callersFunctionisRetryableError
(error: any)
lib/ai-providers/gemini-adapter.ts:22
↓ 1 callersFunctionisRetryableError
(error: unknown)
lib/ai-providers/registry.ts:86
↓ 1 callersFunctionisValidModel
(model?: string)
lib/ai-providers/gemini-adapter.ts:18
↓ 1 callersFunctionisVideoCached
(youtubeId: string, client: DatabaseClient)
lib/subscription-manager.ts:618
↓ 1 callersFunctionloadPreference
()
lib/hooks/use-mode-preference.ts:31
↓ 1 callersFunctionlockStripeEvent
(eventId: string, supabase: SupabaseClient<any, string, any>)
app/api/webhooks/stripe/route.ts:441
↓ 1 callersMethodlogRateLimitExceeded
* Logs rate limit exceeded events
lib/audit-logger.ts:136
↓ 1 callersFunctionmain
()
scripts/validate-env.ts:193
↓ 1 callersFunctionmain
* Main execution function
scripts/update-product-description.ts:128
↓ 1 callersFunctionmain
()
scripts/create-new-prices.ts:40
↓ 1 callersFunctionmain
* Main execution function
scripts/setup-stripe-portal.ts:322
↓ 1 callersFunctionmain
()
scripts/grant-pro-access.ts:229
↓ 1 callersFunctionmain
()
scripts/add-credits.ts:192
↓ 1 callersFunctionmapMatchToSegments
( matchStart: number, matchLength: number, index: TranscriptIndex )
lib/quote-matcher.ts:295
↓ 1 callersFunctionmapNormalizedMatchToSegments
( normalizedMatchIdx: number, normalizedTargetText: string, index: TranscriptIndex )
lib/quote-matcher.ts:344
↓ 1 callersFunctionmapNote
(row: NoteRow)
app/api/notes/route.ts:26
↓ 1 callersFunctionmapToSubscriptionSummary
(payload: SubscriptionStatusResponse)
app/settings/settings-form.tsx:89
↓ 1 callersMethodmaybeStartBatch
* Decide whether to process batch now or schedule it * Simple logic: full queue = immediate, otherwise schedule
lib/translation-batcher.ts:84
↓ 1 callersFunctionnormalizeDate
(input?: string | Date | null)
components/usage-indicator.tsx:17
↓ 1 callersFunctionnormalizeMetadata
(metadata: Record<string, unknown>)
lib/ai-providers/minimax-adapter.ts:93
↓ 1 callersFunctionnormalizePaymentIntentId
( paymentIntent: Stripe.Checkout.Session['payment_intent'] )
lib/stripe-topup.ts:22
↓ 1 callersFunctionnormalizeSegment
(segment: TopicSegment | null | undefined)
lib/topic-utils.ts:26
↓ 1 callersFunctionnormalizeSegments
(segments: TopicSegment[] | null | undefined)
lib/topic-utils.ts:52
↓ 1 callersFunctionnormalizeSlug
(video: { slug: string | null; youtube_id: string | null; title: string | null })
app/sitemap.ts:15
↓ 1 callersFunctionnormalizeStructuredContent
( content: string, params: ProviderGenerateParams )
lib/ai-providers/minimax-adapter.ts:135
↓ 1 callersFunctionnormalizeTakeawaysPayload
(payload: unknown)
app/api/generate-summary/route.ts:20
↓ 1 callersFunctionnormalizeTopicTimestampRange
(value?: string)
components/ai-chat.tsx:38
↓ 1 callersFunctionnormalizeTranscriptSegment
( segment: TranscriptSegment | null | undefined, )
lib/topic-utils.ts:65
↓ 1 callersFunctionnormalizeUsage
(raw: any, latencyMs: number | undefined)
lib/ai-providers/grok-adapter.ts:93
↓ 1 callersFunctionnormalizeUsage
(raw: any, latencyMs: number | undefined)
lib/ai-providers/minimax-adapter.ts:58
↓ 1 callersFunctionnormalizeUsageMetadata
(metadata: any, latencyMs: number)
lib/ai-providers/gemini-adapter.ts:177
↓ 1 callersFunctionopenBillingPortal
()
lib/stripe-actions.ts:49
↓ 1 callersFunctionparseArgs
()
scripts/grant-pro-access.ts:66
↓ 1 callersFunctionparseArgs
()
scripts/add-credits.ts:60
↓ 1 callersFunctionparseCaptionXml
* Parses YouTube's caption XML format into transcript segments. * * YouTube uses TWO different XML formats depending on the client/track: * * Form
lib/youtube-transcript-provider.ts:335
↓ 1 callersFunctionparseDurationSeconds
(raw: unknown)
app/analyze/[videoId]/page.tsx:127
↓ 1 callersFunctionparseHost
(url: string | undefined)
middleware.ts:4
↓ 1 callersMethodparseIndexedResponse
* Parse indexed translation response with explicit markers * Returns partial results with null for missing translations
lib/translation/llm-translate-client.ts:271
↓ 1 callersMethodparseLineDelimitedResponse
* Parse line-delimited translation response
lib/translation/llm-translate-client.ts:210
↓ 1 callersFunctionpollForSubscription
()
app/settings/settings-form.tsx:326
↓ 1 callersFunctionpreprocessJsonResponse
(raw: string)
lib/json-utils.ts:25
↓ 1 callersFunctionprocessTextWithTimestamps
(text: string | ReactNode)
components/summary-viewer.tsx:177
↓ 1 callersFunctionpromoteDistinctThemes
(themes: string[], primaryCount = 3)
lib/ai-processing.ts:1489
↓ 1 callersFunctionrecoverPartialTakeaways
* Recovers partial takeaways from malformed JSON responses. * Extracts complete objects even when the array is truncated or malformed. * Also handle
app/api/generate-summary/route.ts:107
↓ 1 callersFunctionreduceCandidateSubset
( candidates: CandidateTopic[], options: { minTopics: number; maxTopics: number; fastModel: st
lib/ai-processing.ts:351
↓ 1 callersFunctionreleaseStripeEvent
(eventId: string, supabase: SupabaseClient<any, string, any>)
app/api/webhooks/stripe/route.ts:457
↓ 1 callersFunctionresolveBillingPeriod
(subscription: UserSubscription, now: Date)
lib/image-generation-manager.ts:33
↓ 1 callersFunctionresolveBillingPeriod
(subscription: UserSubscription, now: Date)
lib/subscription-manager.ts:62
↓ 1 callersFunctionresolveClientProviderKey
()
lib/ai-providers/client-config.ts:9
↓ 1 callersFunctionresolveVideoSlug
(video?: NoteWithVideo['video'])
app/all-notes/page.tsx:50
↓ 1 callersFunctionrevertTestCancellation
(subscriptionId: string)
scripts/revert-test-cancellation.ts:5
↓ 1 callersFunctionsafeParseJson
(text)
scripts/stripe-smoke.mjs:17
↓ 1 callersMethodsanitizeEmail
* Sanitizes email for logging
lib/audit-logger.ts:205
↓ 1 callersMethodsanitizeIdentifier
* Sanitizes identifier for logging
lib/audit-logger.ts:223
↓ 1 callersFunctionsanitizeSchemaForGrok
* Recursively removes JSON Schema properties that Grok doesn't support. * This allows us to use Zod schemas with constraints while still being * com
lib/ai-providers/grok-adapter.ts:21
↓ 1 callersFunctionsanitizeThemeList
(themes: string[])
lib/ai-processing.ts:1397
↓ 1 callersFunctionsaveNote
(payload: SaveNotePayload)
lib/notes-client.ts:27
↓ 1 callersFunctionscrapeWatchPage
* Fetches the YouTube watch page and extracts the internal API credentials. * Also handles the EU cookie consent page (YouTube shows a consent form
lib/youtube-transcript-provider.ts:124
↓ 1 callersFunctionscrollToBottom
()
components/ai-chat.tsx:166
↓ 1 callersFunctionseededRandom
(seed: number)
lib/utils.ts:86
↓ 1 callersFunctionseededShuffle
(array: string[], seed: string)
lib/utils.ts:92
↓ 1 callersFunctionselectBestTrack
* Picks the best caption track based on the user's language preference. * * Priority: * 1. Manual (human-created) captions in the requested languag
lib/youtube-transcript-provider.ts:420
↓ 1 callersFunctionsendNewsletter
()
scripts/send-newsletter.ts:31
↓ 1 callersFunctionsendTestNewsletter
()
scripts/send-test-newsletter.ts:19
↓ 1 callersFunctionshouldTryNextClient
* Determines whether we should try the next client identity after an error. * Some errors are about THIS client being blocked (try another), * while
lib/youtube-transcript-provider.ts:464
↓ 1 callersFunctionshouldUseMockData
()
lib/mock-data.ts:40
↓ 1 callersFunctionshouldUseMockVideoInfo
()
lib/mock-data.ts:44
↓ 1 callersFunctionsimpleHash
(str: string)
lib/utils.ts:75
↓ 1 callersFunctionstartPolling
()
app/settings/settings-form.tsx:334
↓ 1 callersFunctionstartTimeUpdateInterval
()
components/youtube-player.tsx:287
← previousnext →301–400 of 698, ranked by callers