34 lines
1.8 KiB
Kotlin
34 lines
1.8 KiB
Kotlin
package com.rainy.token.data.proxy
|
||
|
||
/**
|
||
* 网关支持的 Provider 清单。
|
||
*
|
||
* 命名规则:按「产品 + 区域」区分(同一个产品在国内版/国际版使用不同域名与鉴权体系)。
|
||
* supportsCheckin 表示该平台官方是否有每日签到类活动;是否已实测由各自 Repository 决定。
|
||
*/
|
||
enum class ProviderKind(
|
||
val displayName: String,
|
||
val regions: Set<ProviderRegion> = ProviderRegion.entries.toSet(),
|
||
val supportsChat: Boolean = true,
|
||
val supportsCheckin: Boolean = false,
|
||
) {
|
||
WORKBUDDY_CN("WorkBuddy 国内版", setOf(ProviderRegion.CN), supportsCheckin = true),
|
||
WORKBUDDY_INTL("WorkBuddy 国际版", setOf(ProviderRegion.INTL)),
|
||
TRAE_CN("Trae CN", setOf(ProviderRegion.CN), supportsCheckin = true),
|
||
TRAE_INTL("Trae INTL", setOf(ProviderRegion.INTL)),
|
||
TRAE_WORK("TraeWork 桌面版", setOf(ProviderRegion.CN)),
|
||
QODER_CN("Qoder CN", setOf(ProviderRegion.CN), supportsCheckin = true),
|
||
RACCOON_CN("小浣熊(商汤)", setOf(ProviderRegion.CN), supportsCheckin = true),
|
||
CATPAW_CN("CatPaw(美团)", setOf(ProviderRegion.CN)),
|
||
AUTOCLAW_CN("AutoClaw 国内版", setOf(ProviderRegion.CN), supportsCheckin = true),
|
||
AUTOCLAW_INTL("AutoClaw 国际版", setOf(ProviderRegion.INTL)),
|
||
CLINE("Cline", setOf(ProviderRegion.INTL)),
|
||
ACCIO_CN("Accio 国内版", setOf(ProviderRegion.CN)),
|
||
ACCIO_INTL("Accio 国际版", setOf(ProviderRegion.INTL)),
|
||
ZCODE_CN("ZCode 国内版", setOf(ProviderRegion.CN)),
|
||
ZCODE_INTL("ZCode 国际版", setOf(ProviderRegion.INTL)),
|
||
CODEARTS_CN("CodeArts(华为云)", setOf(ProviderRegion.CN)),
|
||
LOOMY_CN("Loomy(讯飞)", setOf(ProviderRegion.CN), supportsCheckin = true),
|
||
OPENAI_COMPATIBLE("OpenAI 兼容自定义", ProviderRegion.entries.toSet()),
|
||
}
|