πŸ“„ File detail

utils/extraUsage.ts

🧩 .tsπŸ“ 24 linesπŸ’Ύ 635 bytesπŸ“ text
← Back to All Files

🎯 Use case

This file lives under β€œutils/”, which covers cross-cutting helpers (shell, tempfiles, settings, messages, process input, …). On the API surface it exposes isBilledAsExtraUsage β€” mainly functions, hooks, or classes. It composes internal code from auth and context (relative imports).

Generated from folder role, exports, dependency roots, and inline comments β€” not hand-reviewed for every path.

🧠 Inline summary

import { isClaudeAISubscriber } from './auth.js' import { has1mContext } from './context.js' export function isBilledAsExtraUsage( model: string | null,

πŸ“€ Exports (heuristic)

  • isBilledAsExtraUsage

πŸ–₯️ Source preview

import { isClaudeAISubscriber } from './auth.js'
import { has1mContext } from './context.js'

export function isBilledAsExtraUsage(
  model: string | null,
  isFastMode: boolean,
  isOpus1mMerged: boolean,
): boolean {
  if (!isClaudeAISubscriber()) return false
  if (isFastMode) return true
  if (model === null || !has1mContext(model)) return false

  const m = model
    .toLowerCase()
    .replace(/\[1m\]$/, '')
    .trim()
  const isOpus46 = m === 'opus' || m.includes('opus-4-6')
  const isSonnet46 = m === 'sonnet' || m.includes('sonnet-4-6')

  if (isOpus46 && isOpus1mMerged) return false

  return isOpus46 || isSonnet46
}