refactor(desktop): 라이선스 UI 빅뱅 — 키 입력 제거, 구독 기반 전환
- LicenseTab/LicenseModal: LemonSqueezy 키 입력 삭제, Payple 구독 UI로 전환 - useLicenseState 훅: 라이선스+클라우드 인증 공용 상태 관리 추출 - PREMIUM_MODEL_LIMITS: 3곳 중복 → @d3ro/core/constants 단일 소스 - i18n: LemonSqueezy 전용 키 18개 삭제, 구독 관련 키 13개 추가 (12 locale) - DashboardPage: dashboard.model* → license.model* 키 통일
This commit is contained in:
parent
68881bf0d0
commit
996def683b
17 changed files with 633 additions and 537 deletions
|
|
@ -50,6 +50,30 @@ export const AUDIO_FORMAT = {
|
|||
BYTES_PER_SAMPLE: 2
|
||||
} as const
|
||||
|
||||
/** Premium 모델별 쿼터 한도 (LicenseService QUOTA_LIMITS, 서버 quota.ts와 동기) */
|
||||
export interface PremiumModelQuota {
|
||||
readonly model: string
|
||||
readonly i18nKey: string
|
||||
readonly limit: number // -1 = 무제한
|
||||
readonly period: 'daily' | 'weekly'
|
||||
}
|
||||
|
||||
export const PREMIUM_MODEL_LIMITS: Record<'free' | 'pro' | 'pro_plus', readonly PremiumModelQuota[]> = {
|
||||
free: [
|
||||
{ model: 'llm_haiku', i18nKey: 'license.modelHaiku', limit: 250, period: 'weekly' },
|
||||
],
|
||||
pro: [
|
||||
{ model: 'llm_haiku', i18nKey: 'license.modelHaiku', limit: 1500, period: 'daily' },
|
||||
{ model: 'llm_sonnet', i18nKey: 'license.modelSonnet', limit: 300, period: 'daily' },
|
||||
{ model: 'llm_opus', i18nKey: 'license.modelOpus', limit: 50, period: 'daily' },
|
||||
],
|
||||
pro_plus: [
|
||||
{ model: 'llm_haiku', i18nKey: 'license.modelHaiku', limit: -1, period: 'daily' },
|
||||
{ model: 'llm_sonnet', i18nKey: 'license.modelSonnet', limit: 1500, period: 'daily' },
|
||||
{ model: 'llm_opus', i18nKey: 'license.modelOpus', limit: 300, period: 'daily' },
|
||||
],
|
||||
} as const
|
||||
|
||||
/** 윈도우 크기 */
|
||||
export const WINDOW_SIZE = {
|
||||
MAIN: { width: 1104, height: 816 },
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue