MCPcopy Create free account
hub / github.com/Noumena-Network/code / buildSubscriptionSessionState

Function buildSubscriptionSessionState

src/utils/subscriptionSession.ts:25–59  ·  view source on GitHub ↗
(
  session: SubscriptionSessionInput,
)

Source from the content-addressed store, hash-verified

23}
24
25export function buildSubscriptionSessionState(
26 session: SubscriptionSessionInput,
27): SubscriptionSessionState {
28 const isOauthBackedFirstPartySession =
29 session?.providerPlan.mode === 'noumena_managed' &&
30 session.headersKind === 'bearer' &&
31 session.scopes.includes('user:inference')
32
33 const subscriptionName = isOauthBackedFirstPartySession
34 ? session.subscription.subscriptionName
35 : null
36 const subscriptionType = isOauthBackedFirstPartySession
37 ? session.subscription.subscriptionType
38 : null
39 const rateLimitTier = isOauthBackedFirstPartySession
40 ? session.subscription.rateLimitTier
41 : null
42
43 return {
44 subscriptionName,
45 subscriptionDisplayName: isOauthBackedFirstPartySession
46 ? (subscriptionName ?? 'Noumena Managed')
47 : null,
48 subscriptionType,
49 rateLimitTier,
50 isOauthBackedFirstPartySession,
51 isMaxSubscriber: subscriptionType === 'max',
52 isTeamSubscriber: subscriptionType === 'team',
53 isEnterpriseSubscriber: subscriptionType === 'enterprise',
54 isTeamPremiumSubscriber:
55 subscriptionType === 'team' &&
56 rateLimitTier === 'default_claude_max_5x',
57 isProSubscriber: subscriptionType === 'pro',
58 }
59}
60
61export function getCurrentSubscriptionSessionState(): SubscriptionSessionState {
62 return buildSubscriptionSessionState(getAuthRuntime().getCurrentSession())

Calls

no outgoing calls

Tested by

no test coverage detected