61 lines · 1.6 KB · Swift
RawDownload
import AppKitimport CodexBarCoreimport SwiftUI extension ProviderSwitcherSelection {    var provider: UsageProvider? {        switch self {        case .overview:            nil        case let .provider(provider):            provider        }    }} struct OverviewMenuCardRowView: View {    let model: UsageMenuCardView.Model    let width: CGFloat     var body: some View {        VStack(alignment: .leading, spacing: 0) {            UsageMenuCardHeaderSectionView(                model: self.model,                showDivider: self.hasUsageBlock,                width: self.width)            if self.hasUsageBlock {                UsageMenuCardUsageSectionView(                    model: self.model,                    showBottomDivider: false,                    bottomPadding: 6,                    width: self.width)            }        }        .frame(width: self.width, alignment: .leading)    }     private var hasUsageBlock: Bool {        !self.model.metrics.isEmpty || !self.model.usageNotes.isEmpty || self.model.placeholder != nil    }} struct OpenAIWebMenuItems {    let hasUsageBreakdown: Bool    let hasCreditsHistory: Bool    let hasCostHistory: Bool    let canShowBuyCredits: Bool} struct TokenAccountMenuDisplay {    let provider: UsageProvider    let accounts: [ProviderTokenAccount]    let snapshots: [TokenAccountUsageSnapshot]    let activeIndex: Int    let showAll: Bool    let showSwitcher: Bool} struct CodexAccountMenuDisplay: Equatable {    let accounts: [CodexVisibleAccount]    let activeVisibleAccountID: String?}