@quantabit/account-type-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.iife.js","sources":["../src/types/index.js","../src/services/accountTypeApi.js","../src/i18n/index.js","../src/hooks/useAccountType.js","../src/components/AccountType.jsx"],"sourcesContent":["/**\n * Account Type SDK - 类型定义\n */\n\n// 账号类型\nexport const AccountType = {\n PERSONAL: 'personal', // 个人账号\n CREATOR: 'creator', // 创作者账号\n BUSINESS: 'business', // 企业账号\n INSTITUTION: 'institution', // 机构账号\n DEVELOPER: 'developer', // 开发者账号\n};\n\n// 认证级别\nexport const VerificationLevel = {\n NONE: 'none',\n BASIC: 'basic',\n VERIFIED: 'verified',\n OFFICIAL: 'official',\n};\n\n// 认证标识颜色\nexport const VerificationBadge = {\n BLUE: 'blue', // 蓝V - 个人认证\n YELLOW: 'yellow', // 黄V - 企业认证\n RED: 'red', // 红V - 官方认证\n PURPLE: 'purple', // 紫V - 机构认证\n};\n\n// 申请状态\nexport const ApplicationStatus = {\n PENDING: 'pending',\n REVIEWING: 'reviewing',\n APPROVED: 'approved',\n REJECTED: 'rejected',\n NEED_INFO: 'need_info',\n};\n\n/**\n * 账号类型配置\n */\nexport const ACCOUNT_TYPE_CONFIG = {\n [AccountType.PERSONAL]: {\n name: '个人账号',\n icon: '👤',\n badge: null,\n features: ['基础功能', '社交互动', '内容发布'],\n limits: { dailyPosts: 10, followers: 5000 },\n },\n [AccountType.CREATOR]: {\n name: '创作者账号',\n icon: '✨',\n badge: VerificationBadge.BLUE,\n features: ['数据分析', '粉丝运营', '收益提现', '专属标识'],\n limits: { dailyPosts: 50, followers: null },\n requirements: { followers: 1000, posts: 10 },\n },\n [AccountType.BUSINESS]: {\n name: '企业账号',\n icon: '🏢',\n badge: VerificationBadge.YELLOW,\n features: ['企业主页', '客户管理', '数据面板', '优先客服'],\n limits: { dailyPosts: 100, followers: null },\n requirements: { businessLicense: true },\n },\n [AccountType.INSTITUTION]: {\n name: '机构账号',\n icon: '🏛️',\n badge: VerificationBadge.PURPLE,\n features: ['多账号管理', '团队协作', 'API接入', '专属客服'],\n limits: { dailyPosts: 200, subAccounts: 50 },\n requirements: { institutionLicense: true },\n },\n [AccountType.DEVELOPER]: {\n name: '开发者账号',\n icon: '👨‍💻',\n badge: null,\n features: ['API访问', '开发文档', '沙箱环境', '技术支持'],\n limits: { apiCalls: 10000 },\n requirements: { email: true },\n },\n};\n\n/**\n * 获取账号类型信息\n */\nexport function getAccountTypeInfo(type) {\n return ACCOUNT_TYPE_CONFIG[type] || ACCOUNT_TYPE_CONFIG[AccountType.PERSONAL];\n}\n\n/**\n * 获取认证图标\n */\nexport function getVerificationBadgeIcon(badge) {\n const icons = {\n [VerificationBadge.BLUE]: '✓',\n [VerificationBadge.YELLOW]: '✓',\n [VerificationBadge.RED]: '★',\n [VerificationBadge.PURPLE]: '✓',\n };\n return icons[badge] || '';\n}\n\n/**\n * 获取认证颜色\n */\nexport function getVerificationColor(badge) {\n const colors = {\n [VerificationBadge.BLUE]: '#3b82f6',\n [VerificationBadge.YELLOW]: '#f59e0b',\n [VerificationBadge.RED]: '#ef4444',\n [VerificationBadge.PURPLE]: '#8b5cf6',\n };\n return colors[badge] || '#6b7280';\n}\n\n/**\n * 检查升级条件\n */\nexport function checkUpgradeEligibility(currentType, targetType, userStats) {\n const config = ACCOUNT_TYPE_CONFIG[targetType];\n if (!config?.requirements) return { eligible: true, missing: [] };\n \n const missing = [];\n const { requirements } = config;\n \n if (requirements.followers && userStats.followers < requirements.followers) {\n missing.push(`粉丝数需达到 ${requirements.followers}`);\n }\n if (requirements.posts && userStats.posts < requirements.posts) {\n missing.push(`发布内容需达到 ${requirements.posts} 条`);\n }\n if (requirements.businessLicense && !userStats.hasBusinessLicense) {\n missing.push('需要营业执照');\n }\n \n return { eligible: missing.length === 0, missing };\n}\n","/**\n * Account Type SDK - API 客户端\n * 账号类型管理系统后端接口封装\n * \n * 使用 BaseApiClient 基类简化代码\n */\n\nimport { BaseApiClient } from '@quantabit/sdk-config';\n\n/**\n * 账号类型 API 客户端\n */\nexport class AccountTypeApiClient extends BaseApiClient {\n constructor(config = {}) {\n super('/account-type', config);\n }\n\n // ============ 账号类型查询 ============\n\n /**\n * 获取当前账号类型\n */\n async getMyAccountType() {\n return this.get('/me');\n }\n\n /**\n * 获取可用账号类型列表\n */\n async getAvailableTypes() {\n return this.get('/types');\n }\n\n /**\n * 获取类型详情\n * @param {string} type - 类型标识\n */\n async getTypeDetails(type) {\n return this.get(`/types/${type}`);\n }\n\n /**\n * 获取权益对比\n * @param {string} type1 - 类型1\n * @param {string} type2 - 类型2\n */\n async compareBenefits(type1, type2) {\n return this.get('/compare', { type1, type2 });\n }\n\n // ============ 升级申请 ============\n\n /**\n * 检查升级资格\n * @param {string} targetType - 目标类型\n */\n async checkEligibility(targetType) {\n return this.get('/upgrade/check', { type: targetType });\n }\n\n /**\n * 申请升级\n * @param {string} targetType - 目标类型\n * @param {Object} documents - 证明材料\n */\n async applyUpgrade(targetType, documents = {}) {\n return this.post('/upgrade/apply', { targetType, documents });\n }\n\n /**\n * 获取申请状态\n */\n async getApplicationStatus() {\n return this.get('/upgrade/status');\n }\n\n /**\n * 取消申请\n * @param {string} applicationId - 申请 ID\n */\n async cancelApplication(applicationId) {\n return this.post(`/upgrade/${applicationId}/cancel`);\n }\n\n /**\n * 补充材料\n * @param {string} applicationId - 申请 ID\n * @param {Object} documents - 补充材料\n */\n async submitAdditionalDocs(applicationId, documents) {\n return this.post(`/upgrade/${applicationId}/documents`, { documents });\n }\n\n /**\n * 获取升级历史\n */\n async getUpgradeHistory() {\n return this.get('/upgrade/history');\n }\n\n // ============ 认证申请 ============\n\n /**\n * 申请企业认证\n * @param {Object} data - 企业信息\n */\n async applyBusinessVerification(data) {\n return this.post('/verification/business', data);\n }\n\n /**\n * 申请创作者认证\n * @param {Object} data - 创作者信息\n */\n async applyCreatorVerification(data) {\n return this.post('/verification/creator', data);\n }\n\n /**\n * 申请机构认证\n * @param {Object} data - 机构信息\n */\n async applyOrganizationVerification(data) {\n return this.post('/verification/organization', data);\n }\n\n /**\n * 获取认证状态\n * @param {string} type - 认证类型\n */\n async getVerificationStatus(type) {\n return this.get(`/verification/${type}/status`);\n }\n}\n\n// 创建默认实例\nexport const accountTypeApi = new AccountTypeApiClient();\n\nexport default accountTypeApi;\n","/**\n * Account Type SDK - 国际化支持\n */\n\nconst messages = {\n en: {\n accountType: 'Account Type',\n personal: 'Personal',\n creator: 'Creator',\n business: 'Business',\n institution: 'Institution',\n developer: 'Developer',\n \n currentType: 'Current Type',\n upgrade: 'Upgrade',\n downgrade: 'Downgrade',\n apply: 'Apply',\n cancel: 'Cancel',\n \n verified: 'Verified',\n unverified: 'Unverified',\n \n features: 'Features',\n benefits: 'Benefits',\n requirements: 'Requirements',\n \n applicationPending: 'Application Pending',\n applicationApproved: 'Approved',\n applicationRejected: 'Rejected',\n needMoreInfo: 'Need More Info',\n \n followers: 'Followers',\n posts: 'Posts',\n businessLicense: 'Business License',\n \n upgradeSuccess: 'Upgrade Successful!',\n applicationSubmitted: 'Application Submitted',\n },\n \n zh: {\n accountType: '账号类型',\n personal: '个人账号',\n creator: '创作者',\n business: '企业账号',\n institution: '机构账号',\n developer: '开发者',\n \n currentType: '当前类型',\n upgrade: '升级',\n downgrade: '降级',\n apply: '申请',\n cancel: '取消',\n \n verified: '已认证',\n unverified: '未认证',\n \n features: '功能特权',\n benefits: '权益',\n requirements: '申请条件',\n \n applicationPending: '申请审核中',\n applicationApproved: '已通过',\n applicationRejected: '已拒绝',\n needMoreInfo: '需要补充材料',\n \n followers: '粉丝数',\n posts: '发布内容',\n businessLicense: '营业执照',\n \n upgradeSuccess: '升级成功!',\n applicationSubmitted: '申请已提交',\n },\n \n ja: {\n accountType: 'アカウントタイプ',\n personal: '個人',\n creator: 'クリエイター',\n business: 'ビジネス',\n institution: '機関',\n developer: '開発者',\n \n currentType: '現在のタイプ',\n upgrade: 'アップグレード',\n downgrade: 'ダウングレード',\n apply: '申請',\n cancel: 'キャンセル',\n \n verified: '認証済み',\n unverified: '未認証',\n \n features: '機能',\n benefits: '特典',\n requirements: '申請条件',\n \n applicationPending: '審査中',\n applicationApproved: '承認済み',\n applicationRejected: '却下',\n needMoreInfo: '追加情報が必要',\n \n followers: 'フォロワー',\n posts: '投稿',\n businessLicense: '事業許可証',\n \n upgradeSuccess: 'アップグレード成功!',\n applicationSubmitted: '申請完了',\n },\n \n ko: {\n accountType: '계정 유형',\n personal: '개인',\n creator: '크리에이터',\n business: '비즈니스',\n institution: '기관',\n developer: '개발자',\n \n currentType: '현재 유형',\n upgrade: '업그레이드',\n downgrade: '다운그레이드',\n apply: '신청',\n cancel: '취소',\n \n verified: '인증됨',\n unverified: '미인증',\n \n features: '기능',\n benefits: '혜택',\n requirements: '신청 조건',\n \n applicationPending: '심사 중',\n applicationApproved: '승인됨',\n applicationRejected: '거절됨',\n needMoreInfo: '추가 정보 필요',\n \n followers: '팔로워',\n posts: '게시물',\n businessLicense: '사업자등록증',\n \n upgradeSuccess: '업그레이드 성공!',\n applicationSubmitted: '신청 완료',\n },\n};\n\nconst SUPPORTED_LANGUAGES = ['en', 'zh', 'ja', 'ko'];\nlet currentLanguage = 'zh';\n\nexport function setLanguage(lang) {\n if (SUPPORTED_LANGUAGES.includes(lang)) {\n currentLanguage = lang;\n }\n}\n\nexport function getLanguage() {\n return currentLanguage;\n}\n\nexport function t(key, params = {}) {\n let text = messages[currentLanguage]?.[key] || messages.en[key] || key;\n Object.keys(params).forEach((param) => {\n text = text.replace(`{${param}}`, params[param]);\n });\n return text;\n}\n\nexport { messages, SUPPORTED_LANGUAGES };\n","/**\n * Account Type SDK - React Hooks\n */\n\nimport { useState, useEffect, useCallback } from 'react';\nimport { accountTypeApi } from '../services/accountTypeApi';\n\n// 获取当前账号类型\nexport function useAccountType() {\n const [accountType, setAccountType] = useState(null);\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState(null);\n\n const refresh = useCallback(async () => {\n try {\n setLoading(true);\n const data = await accountTypeApi.getMyAccountType();\n setAccountType(data);\n setError(null);\n } catch (err) {\n setError(err.message);\n } finally {\n setLoading(false);\n }\n }, []);\n\n useEffect(() => {\n refresh();\n }, [refresh]);\n\n return { accountType, loading, error, refresh };\n}\n\n// 获取可用类型\nexport function useAvailableTypes() {\n const [types, setTypes] = useState([]);\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState(null);\n\n useEffect(() => {\n accountTypeApi.getAvailableTypes()\n .then(setTypes)\n .catch((err) => setError(err.message))\n .finally(() => setLoading(false));\n }, []);\n\n return { types, loading, error };\n}\n\n// 升级申请\nexport function useUpgradeApplication() {\n const [status, setStatus] = useState(null);\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState(null);\n\n const fetchStatus = useCallback(async () => {\n try {\n const data = await accountTypeApi.getApplicationStatus();\n setStatus(data);\n } catch (err) {\n // 可能没有申请记录\n setStatus(null);\n }\n }, []);\n\n const apply = useCallback(async (targetType, documents = {}) => {\n try {\n setLoading(true);\n setError(null);\n const result = await accountTypeApi.applyUpgrade(targetType, documents);\n await fetchStatus();\n return result;\n } catch (err) {\n setError(err.message);\n throw err;\n } finally {\n setLoading(false);\n }\n }, [fetchStatus]);\n\n const cancel = useCallback(async (applicationId) => {\n try {\n setLoading(true);\n await accountTypeApi.cancelApplication(applicationId);\n await fetchStatus();\n } catch (err) {\n setError(err.message);\n throw err;\n } finally {\n setLoading(false);\n }\n }, [fetchStatus]);\n\n const submitDocs = useCallback(async (applicationId, documents) => {\n try {\n setLoading(true);\n await accountTypeApi.submitAdditionalDocs(applicationId, documents);\n await fetchStatus();\n } catch (err) {\n setError(err.message);\n throw err;\n } finally {\n setLoading(false);\n }\n }, [fetchStatus]);\n\n useEffect(() => {\n fetchStatus();\n }, [fetchStatus]);\n\n return { status, apply, cancel, submitDocs, loading, error, refresh: fetchStatus };\n}\n\n// 资格检查\nexport function useEligibilityCheck(targetType) {\n const [eligibility, setEligibility] = useState(null);\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState(null);\n\n useEffect(() => {\n if (!targetType) return;\n \n accountTypeApi.checkEligibility(targetType)\n .then(setEligibility)\n .catch((err) => setError(err.message))\n .finally(() => setLoading(false));\n }, [targetType]);\n\n return { eligibility, loading, error };\n}\n\n// 权益对比\nexport function useBenefitsComparison(type1, type2) {\n const [comparison, setComparison] = useState(null);\n const [loading, setLoading] = useState(true);\n const [error, setError] = useState(null);\n\n useEffect(() => {\n if (!type1 || !type2) return;\n \n accountTypeApi.compareBenefits(type1, type2)\n .then(setComparison)\n .catch((err) => setError(err.message))\n .finally(() => setLoading(false));\n }, [type1, type2]);\n\n return { comparison, loading, error };\n}\n","import React, { useState } from 'react';\nimport { getAccountTypeInfo, getVerificationColor, getVerificationBadgeIcon, AccountType, ApplicationStatus } from '../types';\n\n/**\n * 认证徽章\n */\nexport function VerificationBadge({ badge, size = 'medium' }) {\n if (!badge) return null;\n \n const color = getVerificationColor(badge);\n const icon = getVerificationBadgeIcon(badge);\n const sizeClass = { small: 'badge-sm', medium: 'badge-md', large: 'badge-lg' };\n \n return (\n <span \n className={`account-badge ${sizeClass[size]}`}\n style={{ backgroundColor: color }}\n >\n {icon}\n </span>\n );\n}\n\n/**\n * 账号类型卡片\n */\nexport function AccountTypeCard({\n type,\n isCurrent = false,\n isSelected = false,\n onSelect,\n disabled = false,\n}) {\n const info = getAccountTypeInfo(type);\n \n return (\n <div \n className={`account-type-card ${isCurrent ? 'current' : ''} ${isSelected ? 'selected' : ''} ${disabled ? 'disabled' : ''}`}\n onClick={() => !disabled && onSelect?.(type)}\n >\n {isCurrent && <span className=\"account-current-tag\">当前</span>}\n <div className=\"account-type-icon\">{info.icon}</div>\n <div className=\"account-type-name\">\n {info.name}\n {info.badge && <VerificationBadge badge={info.badge} size=\"small\" />}\n </div>\n <ul className=\"account-type-features\">\n {info.features.map((feature, i) => (\n <li key={i}>✓ {feature}</li>\n ))}\n </ul>\n {info.requirements && (\n <div className=\"account-type-requirements\">\n 需要满足条件\n </div>\n )}\n </div>\n );\n}\n\n/**\n * 类型选择器\n */\nexport function AccountTypeSelector({\n currentType,\n selectedType,\n onSelect,\n types = Object.values(AccountType),\n}) {\n return (\n <div className=\"account-type-selector\">\n {types.map((type) => (\n <AccountTypeCard\n key={type}\n type={type}\n isCurrent={type === currentType}\n isSelected={type === selectedType}\n onSelect={onSelect}\n />\n ))}\n </div>\n );\n}\n\n/**\n * 申请状态卡片\n */\nexport function ApplicationStatusCard({\n application,\n onCancel,\n onSubmitDocs,\n}) {\n if (!application) return null;\n\n const statusConfig = {\n [ApplicationStatus.PENDING]: { label: '待审核', color: '#f59e0b', icon: '⏳' },\n [ApplicationStatus.REVIEWING]: { label: '审核中', color: '#3b82f6', icon: '🔍' },\n [ApplicationStatus.APPROVED]: { label: '已通过', color: '#22c55e', icon: '✅' },\n [ApplicationStatus.REJECTED]: { label: '已拒绝', color: '#ef4444', icon: '❌' },\n [ApplicationStatus.NEED_INFO]: { label: '需补充材料', color: '#f97316', icon: '📝' },\n };\n\n const config = statusConfig[application.status] || statusConfig[ApplicationStatus.PENDING];\n const targetInfo = getAccountTypeInfo(application.targetType);\n\n return (\n <div className=\"account-application-card\">\n <div className=\"account-application-header\">\n <span className=\"account-application-target\">\n {targetInfo.icon} 升级至 {targetInfo.name}\n </span>\n <span \n className=\"account-application-status\"\n style={{ backgroundColor: config.color }}\n >\n {config.icon} {config.label}\n </span>\n </div>\n \n <div className=\"account-application-info\">\n <div>申请时间: {new Date(application.createdAt).toLocaleDateString()}</div>\n {application.message && <div>备注: {application.message}</div>}\n </div>\n\n {application.status === ApplicationStatus.NEED_INFO && (\n <button \n className=\"account-btn primary\"\n onClick={() => onSubmitDocs?.(application.id)}\n >\n 补充材料\n </button>\n )}\n\n {[ApplicationStatus.PENDING, ApplicationStatus.REVIEWING].includes(application.status) && (\n <button \n className=\"account-btn secondary\"\n onClick={() => onCancel?.(application.id)}\n >\n 取消申请\n </button>\n )}\n </div>\n );\n}\n\n/**\n * 权益对比表\n */\nexport function BenefitsComparison({\n currentType,\n targetType,\n}) {\n const currentInfo = getAccountTypeInfo(currentType);\n const targetInfo = getAccountTypeInfo(targetType);\n\n return (\n <div className=\"account-comparison\">\n <div className=\"account-comparison-header\">\n <div className=\"account-comparison-col\">\n <span className=\"account-comparison-type current\">\n {currentInfo.icon} {currentInfo.name}\n </span>\n </div>\n <div className=\"account-comparison-arrow\">→</div>\n <div className=\"account-comparison-col\">\n <span className=\"account-comparison-type target\">\n {targetInfo.icon} {targetInfo.name}\n </span>\n </div>\n </div>\n <div className=\"account-comparison-body\">\n <div className=\"account-comparison-section\">\n <h4>新增权益</h4>\n {targetInfo.features\n .filter((f) => !currentInfo.features.includes(f))\n .map((feature, i) => (\n <div key={i} className=\"account-comparison-item new\">\n ✨ {feature}\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n}\n\n/**\n * 升级表单\n */\nexport function UpgradeForm({\n targetType,\n onSubmit,\n loading = false,\n}) {\n const [documents, setDocuments] = useState({});\n const info = getAccountTypeInfo(targetType);\n\n const handleSubmit = (e) => {\n e.preventDefault();\n onSubmit?.(documents);\n };\n\n return (\n <form className=\"account-upgrade-form\" onSubmit={handleSubmit}>\n <h3>申请升级至 {info.name}</h3>\n \n {targetType === AccountType.BUSINESS && (\n <div className=\"account-form-group\">\n <label>营业执照</label>\n <input \n type=\"file\" \n accept=\"image/*,.pdf\"\n onChange={(e) => setDocuments({ ...documents, businessLicense: e.target.files[0] })}\n />\n </div>\n )}\n\n {targetType === AccountType.CREATOR && (\n <div className=\"account-form-group\">\n <label>创作领域</label>\n <select \n value={documents.category || ''}\n onChange={(e) => setDocuments({ ...documents, category: e.target.value })}\n >\n <option value=\"\">请选择</option>\n <option value=\"tech\">科技</option>\n <option value=\"lifestyle\">生活</option>\n <option value=\"entertainment\">娱乐</option>\n <option value=\"education\">教育</option>\n </select>\n </div>\n )}\n\n <div className=\"account-form-group\">\n <label>申请说明(选填)</label>\n <textarea \n placeholder=\"请简要说明您的申请理由\"\n value={documents.description || ''}\n onChange={(e) => setDocuments({ ...documents, description: e.target.value })}\n />\n </div>\n\n <button \n type=\"submit\" \n className=\"account-btn primary large\"\n disabled={loading}\n >\n {loading ? '提交中...' : '提交申请'}\n </button>\n </form>\n );\n}\n\n/**\n * 账号类型页面\n */\nexport function AccountTypePage({\n currentType,\n application,\n onApply,\n onCancelApplication,\n loading = false,\n}) {\n const [selectedType, setSelectedType] = useState(null);\n const [showForm, setShowForm] = useState(false);\n\n const handleSelect = (type) => {\n if (type !== currentType) {\n setSelectedType(type);\n }\n };\n\n const handleApply = (documents) => {\n onApply?.(selectedType, documents);\n setShowForm(false);\n };\n\n return (\n <div className=\"account-type-page\">\n <h1>账号类型</h1>\n \n {application && (\n <ApplicationStatusCard\n application={application}\n onCancel={onCancelApplication}\n />\n )}\n\n <section>\n <h2>选择账号类型</h2>\n <AccountTypeSelector\n currentType={currentType}\n selectedType={selectedType}\n onSelect={handleSelect}\n />\n </section>\n\n {selectedType && selectedType !== currentType && (\n <section>\n <BenefitsComparison\n currentType={currentType}\n targetType={selectedType}\n />\n <button \n className=\"account-btn primary large\"\n onClick={() => setShowForm(true)}\n >\n 申请升级\n </button>\n </section>\n )}\n\n {showForm && (\n <div className=\"account-modal-overlay\" onClick={() => setShowForm(false)}>\n <div className=\"account-modal\" onClick={(e) => e.stopPropagation()}>\n <UpgradeForm\n targetType={selectedType}\n onSubmit={handleApply}\n loading={loading}\n />\n </div>\n </div>\n )}\n </div>\n );\n}\n"],"names":["AccountType","PERSONAL","CREATOR","BUSINESS","INSTITUTION","DEVELOPER","VerificationLevel","NONE","BASIC","VERIFIED","OFFICIAL","VerificationBadge","BLUE","YELLOW","RED","PURPLE","ApplicationStatus","PENDING","REVIEWING","APPROVED","REJECTED","NEED_INFO","ACCOUNT_TYPE_CONFIG","name","icon","badge","features","limits","dailyPosts","followers","requirements","posts","businessLicense","subAccounts","institutionLicense","apiCalls","email","getAccountTypeInfo","type","getVerificationBadgeIcon","icons","getVerificationColor","colors","checkUpgradeEligibility","currentType","targetType","userStats","config","eligible","missing","push","hasBusinessLicense","length","AccountTypeApiClient","BaseApiClient","constructor","getMyAccountType","get","getAvailableTypes","getTypeDetails","compareBenefits","type1","type2","checkEligibility","applyUpgrade","documents","post","getApplicationStatus","cancelApplication","applicationId","submitAdditionalDocs","getUpgradeHistory","applyBusinessVerification","data","applyCreatorVerification","applyOrganizationVerification","getVerificationStatus","accountTypeApi","messages","en","accountType","personal","creator","business","institution","developer","upgrade","downgrade","apply","cancel","verified","unverified","benefits","applicationPending","applicationApproved","applicationRejected","needMoreInfo","upgradeSuccess","applicationSubmitted","zh","ja","ko","SUPPORTED_LANGUAGES","currentLanguage","setLanguage","lang","includes","getLanguage","t","key","params","text","Object","keys","forEach","param","replace","useAccountType","setAccountType","useState","loading","setLoading","error","setError","refresh","useCallback","err","message","useEffect","useAvailableTypes","types","setTypes","then","catch","finally","useUpgradeApplication","status","setStatus","fetchStatus","result","submitDocs","useEligibilityCheck","eligibility","setEligibility","useBenefitsComparison","comparison","setComparison","size","color","sizeClass","small","medium","large","React","createElement","className","style","backgroundColor","AccountTypeCard","isCurrent","isSelected","onSelect","disabled","info","onClick","map","feature","i","AccountTypeSelector","selectedType","values","ApplicationStatusCard","application","onCancel","onSubmitDocs","statusConfig","label","targetInfo","Date","createdAt","toLocaleDateString","id","BenefitsComparison","currentInfo","filter","f","UpgradeForm","onSubmit","setDocuments","handleSubmit","e","preventDefault","accept","onChange","target","files","value","category","placeholder","description","AccountTypePage","onApply","onCancelApplication","setSelectedType","showForm","setShowForm","handleSelect","handleApply","stopPropagation"],"mappings":";;;EAAA;EACA;EACA;;EAEA;AACO,QAAMA,WAAW,GAAG;EACzBC,EAAAA,QAAQ,EAAE,UAAU;EAAQ;EAC5BC,EAAAA,OAAO,EAAE,SAAS;EAAU;EAC5BC,EAAAA,QAAQ,EAAE,UAAU;EAAQ;EAC5BC,EAAAA,WAAW,EAAE,aAAa;EAAE;IAC5BC,SAAS,EAAE,WAAW;EACxB;;EAEA;AACO,QAAMC,iBAAiB,GAAG;EAC/BC,EAAAA,IAAI,EAAE,MAAM;EACZC,EAAAA,KAAK,EAAE,OAAO;EACdC,EAAAA,QAAQ,EAAE,UAAU;EACpBC,EAAAA,QAAQ,EAAE;EACZ;;EAEA;AACO,QAAMC,mBAAiB,GAAG;EAC/BC,EAAAA,IAAI,EAAE,MAAM;EAAM;EAClBC,EAAAA,MAAM,EAAE,QAAQ;EAAE;EAClBC,EAAAA,GAAG,EAAE,KAAK;EAAQ;IAClBC,MAAM,EAAE,QAAQ;EAClB;;EAEA;AACO,QAAMC,iBAAiB,GAAG;EAC/BC,EAAAA,OAAO,EAAE,SAAS;EAClBC,EAAAA,SAAS,EAAE,WAAW;EACtBC,EAAAA,QAAQ,EAAE,UAAU;EACpBC,EAAAA,QAAQ,EAAE,UAAU;EACpBC,EAAAA,SAAS,EAAE;EACb;;EAEA;EACA;EACA;AACO,QAAMC,mBAAmB,GAAG;IACjC,CAACtB,WAAW,CAACC,QAAQ,GAAG;EACtBsB,IAAAA,IAAI,EAAE,MAAM;EACZC,IAAAA,IAAI,EAAE,IAAI;EACVC,IAAAA,KAAK,EAAE,IAAI;EACXC,IAAAA,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;EAClCC,IAAAA,MAAM,EAAE;EAAEC,MAAAA,UAAU,EAAE,EAAE;EAAEC,MAAAA,SAAS,EAAE;EAAK;KAC3C;IACD,CAAC7B,WAAW,CAACE,OAAO,GAAG;EACrBqB,IAAAA,IAAI,EAAE,OAAO;EACbC,IAAAA,IAAI,EAAE,GAAG;MACTC,KAAK,EAAEd,mBAAiB,CAACC,IAAI;MAC7Bc,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;EAC1CC,IAAAA,MAAM,EAAE;EAAEC,MAAAA,UAAU,EAAE,EAAE;EAAEC,MAAAA,SAAS,EAAE;OAAM;EAC3CC,IAAAA,YAAY,EAAE;EAAED,MAAAA,SAAS,EAAE,IAAI;EAAEE,MAAAA,KAAK,EAAE;EAAG;KAC5C;IACD,CAAC/B,WAAW,CAACG,QAAQ,GAAG;EACtBoB,IAAAA,IAAI,EAAE,MAAM;EACZC,IAAAA,IAAI,EAAE,IAAI;MACVC,KAAK,EAAEd,mBAAiB,CAACE,MAAM;MAC/Ba,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;EAC1CC,IAAAA,MAAM,EAAE;EAAEC,MAAAA,UAAU,EAAE,GAAG;EAAEC,MAAAA,SAAS,EAAE;OAAM;EAC5CC,IAAAA,YAAY,EAAE;EAAEE,MAAAA,eAAe,EAAE;EAAK;KACvC;IACD,CAAChC,WAAW,CAACI,WAAW,GAAG;EACzBmB,IAAAA,IAAI,EAAE,MAAM;EACZC,IAAAA,IAAI,EAAE,KAAK;MACXC,KAAK,EAAEd,mBAAiB,CAACI,MAAM;MAC/BW,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;EAC5CC,IAAAA,MAAM,EAAE;EAAEC,MAAAA,UAAU,EAAE,GAAG;EAAEK,MAAAA,WAAW,EAAE;OAAI;EAC5CH,IAAAA,YAAY,EAAE;EAAEI,MAAAA,kBAAkB,EAAE;EAAK;KAC1C;IACD,CAAClC,WAAW,CAACK,SAAS,GAAG;EACvBkB,IAAAA,IAAI,EAAE,OAAO;EACbC,IAAAA,IAAI,EAAE,OAAO;EACbC,IAAAA,KAAK,EAAE,IAAI;MACXC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;EAC3CC,IAAAA,MAAM,EAAE;EAAEQ,MAAAA,QAAQ,EAAE;OAAO;EAC3BL,IAAAA,YAAY,EAAE;EAAEM,MAAAA,KAAK,EAAE;EAAK;EAC9B;EACF;;EAEA;EACA;EACA;EACO,SAASC,kBAAkBA,CAACC,IAAI,EAAE;IACvC,OAAOhB,mBAAmB,CAACgB,IAAI,CAAC,IAAIhB,mBAAmB,CAACtB,WAAW,CAACC,QAAQ,CAAC;EAC/E;;EAEA;EACA;EACA;EACO,SAASsC,wBAAwBA,CAACd,KAAK,EAAE;EAC9C,EAAA,MAAMe,KAAK,GAAG;EACZ,IAAA,CAAC7B,mBAAiB,CAACC,IAAI,GAAG,GAAG;EAC7B,IAAA,CAACD,mBAAiB,CAACE,MAAM,GAAG,GAAG;EAC/B,IAAA,CAACF,mBAAiB,CAACG,GAAG,GAAG,GAAG;MAC5B,CAACH,mBAAiB,CAACI,MAAM,GAAG;KAC7B;EACD,EAAA,OAAOyB,KAAK,CAACf,KAAK,CAAC,IAAI,EAAE;EAC3B;;EAEA;EACA;EACA;EACO,SAASgB,oBAAoBA,CAAChB,KAAK,EAAE;EAC1C,EAAA,MAAMiB,MAAM,GAAG;EACb,IAAA,CAAC/B,mBAAiB,CAACC,IAAI,GAAG,SAAS;EACnC,IAAA,CAACD,mBAAiB,CAACE,MAAM,GAAG,SAAS;EACrC,IAAA,CAACF,mBAAiB,CAACG,GAAG,GAAG,SAAS;MAClC,CAACH,mBAAiB,CAACI,MAAM,GAAG;KAC7B;EACD,EAAA,OAAO2B,MAAM,CAACjB,KAAK,CAAC,IAAI,SAAS;EACnC;;EAEA;EACA;EACA;EACO,SAASkB,uBAAuBA,CAACC,WAAW,EAAEC,UAAU,EAAEC,SAAS,EAAE;EAC1E,EAAA,MAAMC,MAAM,GAAGzB,mBAAmB,CAACuB,UAAU,CAAC;EAC9C,EAAA,IAAI,CAACE,MAAM,EAAEjB,YAAY,EAAE,OAAO;EAAEkB,IAAAA,QAAQ,EAAE,IAAI;EAAEC,IAAAA,OAAO,EAAE;KAAI;IAEjE,MAAMA,OAAO,GAAG,EAAE;IAClB,MAAM;EAAEnB,IAAAA;EAAa,GAAC,GAAGiB,MAAM;IAE/B,IAAIjB,YAAY,CAACD,SAAS,IAAIiB,SAAS,CAACjB,SAAS,GAAGC,YAAY,CAACD,SAAS,EAAE;MAC1EoB,OAAO,CAACC,IAAI,CAAC,CAAA,OAAA,EAAUpB,YAAY,CAACD,SAAS,EAAE,CAAC;EAClD,EAAA;IACA,IAAIC,YAAY,CAACC,KAAK,IAAIe,SAAS,CAACf,KAAK,GAAGD,YAAY,CAACC,KAAK,EAAE;MAC9DkB,OAAO,CAACC,IAAI,CAAC,CAAA,QAAA,EAAWpB,YAAY,CAACC,KAAK,IAAI,CAAC;EACjD,EAAA;IACA,IAAID,YAAY,CAACE,eAAe,IAAI,CAACc,SAAS,CAACK,kBAAkB,EAAE;EACjEF,IAAAA,OAAO,CAACC,IAAI,CAAC,QAAQ,CAAC;EACxB,EAAA;IAEA,OAAO;EAAEF,IAAAA,QAAQ,EAAEC,OAAO,CAACG,MAAM,KAAK,CAAC;EAAEH,IAAAA;KAAS;EACpD;;ECzIA;EACA;EACA;EACA;EACA;EACA;;;EAIA;EACA;EACA;EACO,MAAMI,oBAAoB,SAASC,uBAAa,CAAC;EACtDC,EAAAA,WAAWA,CAACR,MAAM,GAAG,EAAE,EAAE;EACvB,IAAA,KAAK,CAAC,eAAe,EAAEA,MAAM,CAAC;EAChC,EAAA;;EAEA;;EAEA;EACF;EACA;IACE,MAAMS,gBAAgBA,GAAG;EACvB,IAAA,OAAO,IAAI,CAACC,GAAG,CAAC,KAAK,CAAC;EACxB,EAAA;;EAEA;EACF;EACA;IACE,MAAMC,iBAAiBA,GAAG;EACxB,IAAA,OAAO,IAAI,CAACD,GAAG,CAAC,QAAQ,CAAC;EAC3B,EAAA;;EAEA;EACF;EACA;EACA;IACE,MAAME,cAAcA,CAACrB,IAAI,EAAE;EACzB,IAAA,OAAO,IAAI,CAACmB,GAAG,CAAC,CAAA,OAAA,EAAUnB,IAAI,EAAE,CAAC;EACnC,EAAA;;EAEA;EACF;EACA;EACA;EACA;EACE,EAAA,MAAMsB,eAAeA,CAACC,KAAK,EAAEC,KAAK,EAAE;EAClC,IAAA,OAAO,IAAI,CAACL,GAAG,CAAC,UAAU,EAAE;QAAEI,KAAK;EAAEC,MAAAA;EAAM,KAAC,CAAC;EAC/C,EAAA;;EAEA;;EAEA;EACF;EACA;EACA;IACE,MAAMC,gBAAgBA,CAAClB,UAAU,EAAE;EACjC,IAAA,OAAO,IAAI,CAACY,GAAG,CAAC,gBAAgB,EAAE;EAAEnB,MAAAA,IAAI,EAAEO;EAAW,KAAC,CAAC;EACzD,EAAA;;EAEA;EACF;EACA;EACA;EACA;IACE,MAAMmB,YAAYA,CAACnB,UAAU,EAAEoB,SAAS,GAAG,EAAE,EAAE;EAC7C,IAAA,OAAO,IAAI,CAACC,IAAI,CAAC,gBAAgB,EAAE;QAAErB,UAAU;EAAEoB,MAAAA;EAAU,KAAC,CAAC;EAC/D,EAAA;;EAEA;EACF;EACA;IACE,MAAME,oBAAoBA,GAAG;EAC3B,IAAA,OAAO,IAAI,CAACV,GAAG,CAAC,iBAAiB,CAAC;EACpC,EAAA;;EAEA;EACF;EACA;EACA;IACE,MAAMW,iBAAiBA,CAACC,aAAa,EAAE;EACrC,IAAA,OAAO,IAAI,CAACH,IAAI,CAAC,CAAA,SAAA,EAAYG,aAAa,SAAS,CAAC;EACtD,EAAA;;EAEA;EACF;EACA;EACA;EACA;EACE,EAAA,MAAMC,oBAAoBA,CAACD,aAAa,EAAEJ,SAAS,EAAE;EACnD,IAAA,OAAO,IAAI,CAACC,IAAI,CAAC,CAAA,SAAA,EAAYG,aAAa,YAAY,EAAE;EAAEJ,MAAAA;EAAU,KAAC,CAAC;EACxE,EAAA;;EAEA;EACF;EACA;IACE,MAAMM,iBAAiBA,GAAG;EACxB,IAAA,OAAO,IAAI,CAACd,GAAG,CAAC,kBAAkB,CAAC;EACrC,EAAA;;EAEA;;EAEA;EACF;EACA;EACA;IACE,MAAMe,yBAAyBA,CAACC,IAAI,EAAE;EACpC,IAAA,OAAO,IAAI,CAACP,IAAI,CAAC,wBAAwB,EAAEO,IAAI,CAAC;EAClD,EAAA;;EAEA;EACF;EACA;EACA;IACE,MAAMC,wBAAwBA,CAACD,IAAI,EAAE;EACnC,IAAA,OAAO,IAAI,CAACP,IAAI,CAAC,uBAAuB,EAAEO,IAAI,CAAC;EACjD,EAAA;;EAEA;EACF;EACA;EACA;IACE,MAAME,6BAA6BA,CAACF,IAAI,EAAE;EACxC,IAAA,OAAO,IAAI,CAACP,IAAI,CAAC,4BAA4B,EAAEO,IAAI,CAAC;EACtD,EAAA;;EAEA;EACF;EACA;EACA;IACE,MAAMG,qBAAqBA,CAACtC,IAAI,EAAE;EAChC,IAAA,OAAO,IAAI,CAACmB,GAAG,CAAC,CAAA,cAAA,EAAiBnB,IAAI,SAAS,CAAC;EACjD,EAAA;EACF;;EAEA;QACauC,cAAc,GAAG,IAAIxB,oBAAoB;;ECxItD;EACA;EACA;;AAEA,QAAMyB,QAAQ,GAAG;EACfC,EAAAA,EAAE,EAAE;EACFC,IAAAA,WAAW,EAAE,cAAc;EAC3BC,IAAAA,QAAQ,EAAE,UAAU;EACpBC,IAAAA,OAAO,EAAE,SAAS;EAClBC,IAAAA,QAAQ,EAAE,UAAU;EACpBC,IAAAA,WAAW,EAAE,aAAa;EAC1BC,IAAAA,SAAS,EAAE,WAAW;EAEtBzC,IAAAA,WAAW,EAAE,cAAc;EAC3B0C,IAAAA,OAAO,EAAE,SAAS;EAClBC,IAAAA,SAAS,EAAE,WAAW;EACtBC,IAAAA,KAAK,EAAE,OAAO;EACdC,IAAAA,MAAM,EAAE,QAAQ;EAEhBC,IAAAA,QAAQ,EAAE,UAAU;EACpBC,IAAAA,UAAU,EAAE,YAAY;EAExBjE,IAAAA,QAAQ,EAAE,UAAU;EACpBkE,IAAAA,QAAQ,EAAE,UAAU;EACpB9D,IAAAA,YAAY,EAAE,cAAc;EAE5B+D,IAAAA,kBAAkB,EAAE,qBAAqB;EACzCC,IAAAA,mBAAmB,EAAE,UAAU;EAC/BC,IAAAA,mBAAmB,EAAE,UAAU;EAC/BC,IAAAA,YAAY,EAAE,gBAAgB;EAE9BnE,IAAAA,SAAS,EAAE,WAAW;EACtBE,IAAAA,KAAK,EAAE,OAAO;EACdC,IAAAA,eAAe,EAAE,kBAAkB;EAEnCiE,IAAAA,cAAc,EAAE,qBAAqB;EACrCC,IAAAA,oBAAoB,EAAE;KACvB;EAEDC,EAAAA,EAAE,EAAE;EACFnB,IAAAA,WAAW,EAAE,MAAM;EACnBC,IAAAA,QAAQ,EAAE,MAAM;EAChBC,IAAAA,OAAO,EAAE,KAAK;EACdC,IAAAA,QAAQ,EAAE,MAAM;EAChBC,IAAAA,WAAW,EAAE,MAAM;EACnBC,IAAAA,SAAS,EAAE,KAAK;EAEhBzC,IAAAA,WAAW,EAAE,MAAM;EACnB0C,IAAAA,OAAO,EAAE,IAAI;EACbC,IAAAA,SAAS,EAAE,IAAI;EACfC,IAAAA,KAAK,EAAE,IAAI;EACXC,IAAAA,MAAM,EAAE,IAAI;EAEZC,IAAAA,QAAQ,EAAE,KAAK;EACfC,IAAAA,UAAU,EAAE,KAAK;EAEjBjE,IAAAA,QAAQ,EAAE,MAAM;EAChBkE,IAAAA,QAAQ,EAAE,IAAI;EACd9D,IAAAA,YAAY,EAAE,MAAM;EAEpB+D,IAAAA,kBAAkB,EAAE,OAAO;EAC3BC,IAAAA,mBAAmB,EAAE,KAAK;EAC1BC,IAAAA,mBAAmB,EAAE,KAAK;EAC1BC,IAAAA,YAAY,EAAE,QAAQ;EAEtBnE,IAAAA,SAAS,EAAE,KAAK;EAChBE,IAAAA,KAAK,EAAE,MAAM;EACbC,IAAAA,eAAe,EAAE,MAAM;EAEvBiE,IAAAA,cAAc,EAAE,OAAO;EACvBC,IAAAA,oBAAoB,EAAE;KACvB;EAEDE,EAAAA,EAAE,EAAE;EACFpB,IAAAA,WAAW,EAAE,UAAU;EACvBC,IAAAA,QAAQ,EAAE,IAAI;EACdC,IAAAA,OAAO,EAAE,QAAQ;EACjBC,IAAAA,QAAQ,EAAE,MAAM;EAChBC,IAAAA,WAAW,EAAE,IAAI;EACjBC,IAAAA,SAAS,EAAE,KAAK;EAEhBzC,IAAAA,WAAW,EAAE,QAAQ;EACrB0C,IAAAA,OAAO,EAAE,SAAS;EAClBC,IAAAA,SAAS,EAAE,SAAS;EACpBC,IAAAA,KAAK,EAAE,IAAI;EACXC,IAAAA,MAAM,EAAE,OAAO;EAEfC,IAAAA,QAAQ,EAAE,MAAM;EAChBC,IAAAA,UAAU,EAAE,KAAK;EAEjBjE,IAAAA,QAAQ,EAAE,IAAI;EACdkE,IAAAA,QAAQ,EAAE,IAAI;EACd9D,IAAAA,YAAY,EAAE,MAAM;EAEpB+D,IAAAA,kBAAkB,EAAE,KAAK;EACzBC,IAAAA,mBAAmB,EAAE,MAAM;EAC3BC,IAAAA,mBAAmB,EAAE,IAAI;EACzBC,IAAAA,YAAY,EAAE,SAAS;EAEvBnE,IAAAA,SAAS,EAAE,OAAO;EAClBE,IAAAA,KAAK,EAAE,IAAI;EACXC,IAAAA,eAAe,EAAE,OAAO;EAExBiE,IAAAA,cAAc,EAAE,YAAY;EAC5BC,IAAAA,oBAAoB,EAAE;KACvB;EAEDG,EAAAA,EAAE,EAAE;EACFrB,IAAAA,WAAW,EAAE,OAAO;EACpBC,IAAAA,QAAQ,EAAE,IAAI;EACdC,IAAAA,OAAO,EAAE,OAAO;EAChBC,IAAAA,QAAQ,EAAE,MAAM;EAChBC,IAAAA,WAAW,EAAE,IAAI;EACjBC,IAAAA,SAAS,EAAE,KAAK;EAEhBzC,IAAAA,WAAW,EAAE,OAAO;EACpB0C,IAAAA,OAAO,EAAE,OAAO;EAChBC,IAAAA,SAAS,EAAE,QAAQ;EACnBC,IAAAA,KAAK,EAAE,IAAI;EACXC,IAAAA,MAAM,EAAE,IAAI;EAEZC,IAAAA,QAAQ,EAAE,KAAK;EACfC,IAAAA,UAAU,EAAE,KAAK;EAEjBjE,IAAAA,QAAQ,EAAE,IAAI;EACdkE,IAAAA,QAAQ,EAAE,IAAI;EACd9D,IAAAA,YAAY,EAAE,OAAO;EAErB+D,IAAAA,kBAAkB,EAAE,MAAM;EAC1BC,IAAAA,mBAAmB,EAAE,KAAK;EAC1BC,IAAAA,mBAAmB,EAAE,KAAK;EAC1BC,IAAAA,YAAY,EAAE,UAAU;EAExBnE,IAAAA,SAAS,EAAE,KAAK;EAChBE,IAAAA,KAAK,EAAE,KAAK;EACZC,IAAAA,eAAe,EAAE,QAAQ;EAEzBiE,IAAAA,cAAc,EAAE,WAAW;EAC3BC,IAAAA,oBAAoB,EAAE;EACxB;EACF;AAEA,QAAMI,mBAAmB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;EACnD,IAAIC,eAAe,GAAG,IAAI;EAEnB,SAASC,WAAWA,CAACC,IAAI,EAAE;EAChC,EAAA,IAAIH,mBAAmB,CAACI,QAAQ,CAACD,IAAI,CAAC,EAAE;EACtCF,IAAAA,eAAe,GAAGE,IAAI;EACxB,EAAA;EACF;EAEO,SAASE,WAAWA,GAAG;EAC5B,EAAA,OAAOJ,eAAe;EACxB;EAEO,SAASK,CAACA,CAACC,GAAG,EAAEC,MAAM,GAAG,EAAE,EAAE;EAClC,EAAA,IAAIC,IAAI,GAAGjC,QAAQ,CAACyB,eAAe,CAAC,GAAGM,GAAG,CAAC,IAAI/B,QAAQ,CAACC,EAAE,CAAC8B,GAAG,CAAC,IAAIA,GAAG;IACtEG,MAAM,CAACC,IAAI,CAACH,MAAM,CAAC,CAACI,OAAO,CAAEC,KAAK,IAAK;EACrCJ,IAAAA,IAAI,GAAGA,IAAI,CAACK,OAAO,CAAC,CAAA,CAAA,EAAID,KAAK,CAAA,CAAA,CAAG,EAAEL,MAAM,CAACK,KAAK,CAAC,CAAC;EAClD,EAAA,CAAC,CAAC;EACF,EAAA,OAAOJ,IAAI;EACb;;ECjKA;EACA;EACA;;;EAKA;EACO,SAASM,cAAcA,GAAG;IAC/B,MAAM,CAACrC,WAAW,EAAEsC,cAAc,CAAC,GAAGC,cAAQ,CAAC,IAAI,CAAC;IACpD,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAGF,cAAQ,CAAC,IAAI,CAAC;IAC5C,MAAM,CAACG,KAAK,EAAEC,QAAQ,CAAC,GAAGJ,cAAQ,CAAC,IAAI,CAAC;EAExC,EAAA,MAAMK,OAAO,GAAGC,iBAAW,CAAC,YAAY;MACtC,IAAI;QACFJ,UAAU,CAAC,IAAI,CAAC;EAChB,MAAA,MAAMhD,IAAI,GAAG,MAAMI,cAAc,CAACrB,gBAAgB,EAAE;QACpD8D,cAAc,CAAC7C,IAAI,CAAC;QACpBkD,QAAQ,CAAC,IAAI,CAAC;MAChB,CAAC,CAAC,OAAOG,GAAG,EAAE;EACZH,MAAAA,QAAQ,CAACG,GAAG,CAACC,OAAO,CAAC;EACvB,IAAA,CAAC,SAAS;QACRN,UAAU,CAAC,KAAK,CAAC;EACnB,IAAA;IACF,CAAC,EAAE,EAAE,CAAC;EAENO,EAAAA,eAAS,CAAC,MAAM;EACdJ,IAAAA,OAAO,EAAE;EACX,EAAA,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;IAEb,OAAO;MAAE5C,WAAW;MAAEwC,OAAO;MAAEE,KAAK;EAAEE,IAAAA;KAAS;EACjD;;EAEA;EACO,SAASK,iBAAiBA,GAAG;IAClC,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGZ,cAAQ,CAAC,EAAE,CAAC;IACtC,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAGF,cAAQ,CAAC,IAAI,CAAC;IAC5C,MAAM,CAACG,KAAK,EAAEC,QAAQ,CAAC,GAAGJ,cAAQ,CAAC,IAAI,CAAC;EAExCS,EAAAA,eAAS,CAAC,MAAM;EACdnD,IAAAA,cAAc,CAACnB,iBAAiB,EAAE,CAC/B0E,IAAI,CAACD,QAAQ,CAAC,CACdE,KAAK,CAAEP,GAAG,IAAKH,QAAQ,CAACG,GAAG,CAACC,OAAO,CAAC,CAAC,CACrCO,OAAO,CAAC,MAAMb,UAAU,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC,EAAE,EAAE,CAAC;IAEN,OAAO;MAAES,KAAK;MAAEV,OAAO;EAAEE,IAAAA;KAAO;EAClC;;EAEA;EACO,SAASa,qBAAqBA,GAAG;IACtC,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGlB,cAAQ,CAAC,IAAI,CAAC;IAC1C,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAGF,cAAQ,CAAC,KAAK,CAAC;IAC7C,MAAM,CAACG,KAAK,EAAEC,QAAQ,CAAC,GAAGJ,cAAQ,CAAC,IAAI,CAAC;EAExC,EAAA,MAAMmB,WAAW,GAAGb,iBAAW,CAAC,YAAY;MAC1C,IAAI;EACF,MAAA,MAAMpD,IAAI,GAAG,MAAMI,cAAc,CAACV,oBAAoB,EAAE;QACxDsE,SAAS,CAAChE,IAAI,CAAC;MACjB,CAAC,CAAC,OAAOqD,GAAG,EAAE;EACZ;QACAW,SAAS,CAAC,IAAI,CAAC;EACjB,IAAA;IACF,CAAC,EAAE,EAAE,CAAC;IAEN,MAAMjD,KAAK,GAAGqC,iBAAW,CAAC,OAAOhF,UAAU,EAAEoB,SAAS,GAAG,EAAE,KAAK;MAC9D,IAAI;QACFwD,UAAU,CAAC,IAAI,CAAC;QAChBE,QAAQ,CAAC,IAAI,CAAC;QACd,MAAMgB,MAAM,GAAG,MAAM9D,cAAc,CAACb,YAAY,CAACnB,UAAU,EAAEoB,SAAS,CAAC;QACvE,MAAMyE,WAAW,EAAE;EACnB,MAAA,OAAOC,MAAM;MACf,CAAC,CAAC,OAAOb,GAAG,EAAE;EACZH,MAAAA,QAAQ,CAACG,GAAG,CAACC,OAAO,CAAC;EACrB,MAAA,MAAMD,GAAG;EACX,IAAA,CAAC,SAAS;QACRL,UAAU,CAAC,KAAK,CAAC;EACnB,IAAA;EACF,EAAA,CAAC,EAAE,CAACiB,WAAW,CAAC,CAAC;EAEjB,EAAA,MAAMjD,MAAM,GAAGoC,iBAAW,CAAC,MAAOxD,aAAa,IAAK;MAClD,IAAI;QACFoD,UAAU,CAAC,IAAI,CAAC;EAChB,MAAA,MAAM5C,cAAc,CAACT,iBAAiB,CAACC,aAAa,CAAC;QACrD,MAAMqE,WAAW,EAAE;MACrB,CAAC,CAAC,OAAOZ,GAAG,EAAE;EACZH,MAAAA,QAAQ,CAACG,GAAG,CAACC,OAAO,CAAC;EACrB,MAAA,MAAMD,GAAG;EACX,IAAA,CAAC,SAAS;QACRL,UAAU,CAAC,KAAK,CAAC;EACnB,IAAA;EACF,EAAA,CAAC,EAAE,CAACiB,WAAW,CAAC,CAAC;IAEjB,MAAME,UAAU,GAAGf,iBAAW,CAAC,OAAOxD,aAAa,EAAEJ,SAAS,KAAK;MACjE,IAAI;QACFwD,UAAU,CAAC,IAAI,CAAC;EAChB,MAAA,MAAM5C,cAAc,CAACP,oBAAoB,CAACD,aAAa,EAAEJ,SAAS,CAAC;QACnE,MAAMyE,WAAW,EAAE;MACrB,CAAC,CAAC,OAAOZ,GAAG,EAAE;EACZH,MAAAA,QAAQ,CAACG,GAAG,CAACC,OAAO,CAAC;EACrB,MAAA,MAAMD,GAAG;EACX,IAAA,CAAC,SAAS;QACRL,UAAU,CAAC,KAAK,CAAC;EACnB,IAAA;EACF,EAAA,CAAC,EAAE,CAACiB,WAAW,CAAC,CAAC;EAEjBV,EAAAA,eAAS,CAAC,MAAM;EACdU,IAAAA,WAAW,EAAE;EACf,EAAA,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;IAEjB,OAAO;MAAEF,MAAM;MAAEhD,KAAK;MAAEC,MAAM;MAAEmD,UAAU;MAAEpB,OAAO;MAAEE,KAAK;EAAEE,IAAAA,OAAO,EAAEc;KAAa;EACpF;;EAEA;EACO,SAASG,mBAAmBA,CAAChG,UAAU,EAAE;IAC9C,MAAM,CAACiG,WAAW,EAAEC,cAAc,CAAC,GAAGxB,cAAQ,CAAC,IAAI,CAAC;IACpD,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAGF,cAAQ,CAAC,IAAI,CAAC;IAC5C,MAAM,CAACG,KAAK,EAAEC,QAAQ,CAAC,GAAGJ,cAAQ,CAAC,IAAI,CAAC;EAExCS,EAAAA,eAAS,CAAC,MAAM;MACd,IAAI,CAACnF,UAAU,EAAE;EAEjBgC,IAAAA,cAAc,CAACd,gBAAgB,CAAClB,UAAU,CAAC,CACxCuF,IAAI,CAACW,cAAc,CAAC,CACpBV,KAAK,CAAEP,GAAG,IAAKH,QAAQ,CAACG,GAAG,CAACC,OAAO,CAAC,CAAC,CACrCO,OAAO,CAAC,MAAMb,UAAU,CAAC,KAAK,CAAC,CAAC;EACrC,EAAA,CAAC,EAAE,CAAC5E,UAAU,CAAC,CAAC;IAEhB,OAAO;MAAEiG,WAAW;MAAEtB,OAAO;EAAEE,IAAAA;KAAO;EACxC;;EAEA;EACO,SAASsB,qBAAqBA,CAACnF,KAAK,EAAEC,KAAK,EAAE;IAClD,MAAM,CAACmF,UAAU,EAAEC,aAAa,CAAC,GAAG3B,cAAQ,CAAC,IAAI,CAAC;IAClD,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAGF,cAAQ,CAAC,IAAI,CAAC;IAC5C,MAAM,CAACG,KAAK,EAAEC,QAAQ,CAAC,GAAGJ,cAAQ,CAAC,IAAI,CAAC;EAExCS,EAAAA,eAAS,CAAC,MAAM;EACd,IAAA,IAAI,CAACnE,KAAK,IAAI,CAACC,KAAK,EAAE;EAEtBe,IAAAA,cAAc,CAACjB,eAAe,CAACC,KAAK,EAAEC,KAAK,CAAC,CACzCsE,IAAI,CAACc,aAAa,CAAC,CACnBb,KAAK,CAAEP,GAAG,IAAKH,QAAQ,CAACG,GAAG,CAACC,OAAO,CAAC,CAAC,CACrCO,OAAO,CAAC,MAAMb,UAAU,CAAC,KAAK,CAAC,CAAC;EACrC,EAAA,CAAC,EAAE,CAAC5D,KAAK,EAAEC,KAAK,CAAC,CAAC;IAElB,OAAO;MAAEmF,UAAU;MAAEzB,OAAO;EAAEE,IAAAA;KAAO;EACvC;;EChJA;EACA;EACA;EACO,SAAS/G,iBAAiBA,CAAC;IAAEc,KAAK;EAAE0H,EAAAA,IAAI,GAAG;EAAS,CAAC,EAAE;EAC5D,EAAA,IAAI,CAAC1H,KAAK,EAAE,OAAO,IAAI;EAEvB,EAAA,MAAM2H,KAAK,GAAG3G,oBAAoB,CAAChB,KAAK,CAAC;EACzC,EAAA,MAAMD,IAAI,GAAGe,wBAAwB,CAACd,KAAK,CAAC;EAC5C,EAAA,MAAM4H,SAAS,GAAG;EAAEC,IAAAA,KAAK,EAAE,UAAU;EAAEC,IAAAA,MAAM,EAAE,UAAU;EAAEC,IAAAA,KAAK,EAAE;KAAY;IAE9E,oBACEC,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;EACEC,IAAAA,SAAS,EAAE,CAAA,cAAA,EAAiBN,SAAS,CAACF,IAAI,CAAC,CAAA,CAAG;EAC9CS,IAAAA,KAAK,EAAE;EAAEC,MAAAA,eAAe,EAAET;EAAM;EAAE,GAAA,EAEjC5H,IACG,CAAC;EAEX;;EAEA;EACA;EACA;EACO,SAASsI,eAAeA,CAAC;IAC9BxH,IAAI;EACJyH,EAAAA,SAAS,GAAG,KAAK;EACjBC,EAAAA,UAAU,GAAG,KAAK;IAClBC,QAAQ;EACRC,EAAAA,QAAQ,GAAG;EACb,CAAC,EAAE;EACD,EAAA,MAAMC,IAAI,GAAG9H,kBAAkB,CAACC,IAAI,CAAC;IAErC,oBACEmH,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EACEC,IAAAA,SAAS,EAAE,CAAA,kBAAA,EAAqBI,SAAS,GAAG,SAAS,GAAG,EAAE,CAAA,CAAA,EAAIC,UAAU,GAAG,UAAU,GAAG,EAAE,CAAA,CAAA,EAAIE,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAA,CAAG;MAC3HE,OAAO,EAAEA,MAAM,CAACF,QAAQ,IAAID,QAAQ,GAAG3H,IAAI;EAAE,GAAA,EAE5CyH,SAAS,iBAAIN,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;EAAMC,IAAAA,SAAS,EAAC;EAAqB,GAAA,EAAC,cAAQ,CAAC,eAC7DF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;EAAmB,GAAA,EAAEQ,IAAI,CAAC3I,IAAU,CAAC,eACpDiI,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;EAAmB,GAAA,EAC/BQ,IAAI,CAAC5I,IAAI,EACT4I,IAAI,CAAC1I,KAAK,iBAAIgI,KAAA,CAAAC,aAAA,CAAC/I,iBAAiB,EAAA;MAACc,KAAK,EAAE0I,IAAI,CAAC1I,KAAM;EAAC0H,IAAAA,IAAI,EAAC;EAAO,GAAE,CAChE,CAAC,eACNM,KAAA,CAAAC,aAAA,CAAA,IAAA,EAAA;EAAIC,IAAAA,SAAS,EAAC;EAAuB,GAAA,EAClCQ,IAAI,CAACzI,QAAQ,CAAC2I,GAAG,CAAC,CAACC,OAAO,EAAEC,CAAC,kBAC5Bd,KAAA,CAAAC,aAAA,CAAA,IAAA,EAAA;EAAI7C,IAAAA,GAAG,EAAE0D;EAAE,GAAA,EAAC,SAAE,EAACD,OAAY,CAC5B,CACC,CAAC,EACJH,IAAI,CAACrI,YAAY,iBAChB2H,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAA2B,EAAC,sCAEtC,CAEJ,CAAC;EAEV;;EAEA;EACA;EACA;EACO,SAASa,mBAAmBA,CAAC;IAClC5H,WAAW;IACX6H,YAAY;IACZR,QAAQ;EACR/B,EAAAA,KAAK,GAAGlB,MAAM,CAAC0D,MAAM,CAAC1K,WAAW;EACnC,CAAC,EAAE;IACD,oBACEyJ,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAuB,EACnCzB,KAAK,CAACmC,GAAG,CAAE/H,IAAI,iBACdmH,KAAA,CAAAC,aAAA,CAACI,eAAe,EAAA;EACdjD,IAAAA,GAAG,EAAEvE,IAAK;EACVA,IAAAA,IAAI,EAAEA,IAAK;MACXyH,SAAS,EAAEzH,IAAI,KAAKM,WAAY;MAChCoH,UAAU,EAAE1H,IAAI,KAAKmI,YAAa;EAClCR,IAAAA,QAAQ,EAAEA;KACX,CACF,CACE,CAAC;EAEV;;EAEA;EACA;EACA;EACO,SAASU,qBAAqBA,CAAC;IACpCC,WAAW;IACXC,QAAQ;EACRC,EAAAA;EACF,CAAC,EAAE;EACD,EAAA,IAAI,CAACF,WAAW,EAAE,OAAO,IAAI;EAE7B,EAAA,MAAMG,YAAY,GAAG;MACnB,CAAC/J,iBAAiB,CAACC,OAAO,GAAG;EAAE+J,MAAAA,KAAK,EAAE,KAAK;EAAE5B,MAAAA,KAAK,EAAE,SAAS;EAAE5H,MAAAA,IAAI,EAAE;OAAK;MAC1E,CAACR,iBAAiB,CAACE,SAAS,GAAG;EAAE8J,MAAAA,KAAK,EAAE,KAAK;EAAE5B,MAAAA,KAAK,EAAE,SAAS;EAAE5H,MAAAA,IAAI,EAAE;OAAM;MAC7E,CAACR,iBAAiB,CAACG,QAAQ,GAAG;EAAE6J,MAAAA,KAAK,EAAE,KAAK;EAAE5B,MAAAA,KAAK,EAAE,SAAS;EAAE5H,MAAAA,IAAI,EAAE;OAAK;MAC3E,CAACR,iBAAiB,CAACI,QAAQ,GAAG;EAAE4J,MAAAA,KAAK,EAAE,KAAK;EAAE5B,MAAAA,KAAK,EAAE,SAAS;EAAE5H,MAAAA,IAAI,EAAE;OAAK;MAC3E,CAACR,iBAAiB,CAACK,SAAS,GAAG;EAAE2J,MAAAA,KAAK,EAAE,OAAO;EAAE5B,MAAAA,KAAK,EAAE,SAAS;EAAE5H,MAAAA,IAAI,EAAE;EAAK;KAC/E;EAED,EAAA,MAAMuB,MAAM,GAAGgI,YAAY,CAACH,WAAW,CAACpC,MAAM,CAAC,IAAIuC,YAAY,CAAC/J,iBAAiB,CAACC,OAAO,CAAC;EAC1F,EAAA,MAAMgK,UAAU,GAAG5I,kBAAkB,CAACuI,WAAW,CAAC/H,UAAU,CAAC;IAE7D,oBACE4G,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAA0B,eACvCF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAA4B,eACzCF,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;EAAMC,IAAAA,SAAS,EAAC;EAA4B,GAAA,EACzCsB,UAAU,CAACzJ,IAAI,EAAC,sBAAK,EAACyJ,UAAU,CAAC1J,IAC9B,CAAC,eACPkI,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;EACEC,IAAAA,SAAS,EAAC,4BAA4B;EACtCC,IAAAA,KAAK,EAAE;QAAEC,eAAe,EAAE9G,MAAM,CAACqG;EAAM;EAAE,GAAA,EAExCrG,MAAM,CAACvB,IAAI,EAAC,GAAC,EAACuB,MAAM,CAACiI,KAClB,CACH,CAAC,eAENvB,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAA0B,eACvCF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,IAAA,EAAK,4BAAM,EAAC,IAAIwB,IAAI,CAACN,WAAW,CAACO,SAAS,CAAC,CAACC,kBAAkB,EAAQ,CAAC,EACtER,WAAW,CAAC7C,OAAO,iBAAI0B,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,IAAA,EAAK,gBAAI,EAACkB,WAAW,CAAC7C,OAAa,CACxD,CAAC,EAEL6C,WAAW,CAACpC,MAAM,KAAKxH,iBAAiB,CAACK,SAAS,iBACjDoI,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EACEC,IAAAA,SAAS,EAAC,qBAAqB;EAC/BS,IAAAA,OAAO,EAAEA,MAAMU,YAAY,GAAGF,WAAW,CAACS,EAAE;KAAE,EAC/C,0BAEO,CACT,EAEA,CAACrK,iBAAiB,CAACC,OAAO,EAAED,iBAAiB,CAACE,SAAS,CAAC,CAACwF,QAAQ,CAACkE,WAAW,CAACpC,MAAM,CAAC,iBACpFiB,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EACEC,IAAAA,SAAS,EAAC,uBAAuB;EACjCS,IAAAA,OAAO,EAAEA,MAAMS,QAAQ,GAAGD,WAAW,CAACS,EAAE;KAAE,EAC3C,0BAEO,CAEP,CAAC;EAEV;;EAEA;EACA;EACA;EACO,SAASC,kBAAkBA,CAAC;IACjC1I,WAAW;EACXC,EAAAA;EACF,CAAC,EAAE;EACD,EAAA,MAAM0I,WAAW,GAAGlJ,kBAAkB,CAACO,WAAW,CAAC;EACnD,EAAA,MAAMqI,UAAU,GAAG5I,kBAAkB,CAACQ,UAAU,CAAC;IAEjD,oBACE4G,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAoB,eACjCF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAA2B,eACxCF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAwB,eACrCF,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;EAAMC,IAAAA,SAAS,EAAC;EAAiC,GAAA,EAC9C4B,WAAW,CAAC/J,IAAI,EAAC,GAAC,EAAC+J,WAAW,CAAChK,IAC5B,CACH,CAAC,eACNkI,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;EAA0B,GAAA,EAAC,QAAM,CAAC,eACjDF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAwB,eACrCF,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;EAAMC,IAAAA,SAAS,EAAC;EAAgC,GAAA,EAC7CsB,UAAU,CAACzJ,IAAI,EAAC,GAAC,EAACyJ,UAAU,CAAC1J,IAC1B,CACH,CACF,CAAC,eACNkI,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAyB,eACtCF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;EAA4B,GAAA,eACzCF,KAAA,CAAAC,aAAA,CAAA,IAAA,EAAA,IAAA,EAAI,0BAAQ,CAAC,EACZuB,UAAU,CAACvJ,QAAQ,CACjB8J,MAAM,CAAEC,CAAC,IAAK,CAACF,WAAW,CAAC7J,QAAQ,CAACgF,QAAQ,CAAC+E,CAAC,CAAC,CAAC,CAChDpB,GAAG,CAAC,CAACC,OAAO,EAAEC,CAAC,kBACdd,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAK7C,IAAAA,GAAG,EAAE0D,CAAE;EAACZ,IAAAA,SAAS,EAAC;EAA6B,GAAA,EAAC,SACjD,EAACW,OACA,CACN,CACA,CACF,CACF,CAAC;EAEV;;EAEA;EACA;EACA;EACO,SAASoB,WAAWA,CAAC;IAC1B7I,UAAU;IACV8I,QAAQ;EACRnE,EAAAA,OAAO,GAAG;EACZ,CAAC,EAAE;IACD,MAAM,CAACvD,SAAS,EAAE2H,YAAY,CAAC,GAAGrE,cAAQ,CAAC,EAAE,CAAC;EAC9C,EAAA,MAAM4C,IAAI,GAAG9H,kBAAkB,CAACQ,UAAU,CAAC;IAE3C,MAAMgJ,YAAY,GAAIC,CAAC,IAAK;MAC1BA,CAAC,CAACC,cAAc,EAAE;MAClBJ,QAAQ,GAAG1H,SAAS,CAAC;IACvB,CAAC;IAED,oBACEwF,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;EAAMC,IAAAA,SAAS,EAAC,sBAAsB;EAACgC,IAAAA,QAAQ,EAAEE;EAAa,GAAA,eAC5DpC,KAAA,CAAAC,aAAA,aAAI,iCAAM,EAACS,IAAI,CAAC5I,IAAS,CAAC,EAEzBsB,UAAU,KAAK7C,WAAW,CAACG,QAAQ,iBAClCsJ,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAoB,eACjCF,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAA,IAAA,EAAO,0BAAW,CAAC,eACnBD,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAA;EACEpH,IAAAA,IAAI,EAAC,MAAM;EACX0J,IAAAA,MAAM,EAAC,cAAc;EACrBC,IAAAA,QAAQ,EAAGH,CAAC,IAAKF,YAAY,CAAC;EAAE,MAAA,GAAG3H,SAAS;EAAEjC,MAAAA,eAAe,EAAE8J,CAAC,CAACI,MAAM,CAACC,KAAK,CAAC,CAAC;OAAG;KACnF,CACE,CACN,EAEAtJ,UAAU,KAAK7C,WAAW,CAACE,OAAO,iBACjCuJ,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAoB,eACjCF,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAA,IAAA,EAAO,0BAAW,CAAC,eACnBD,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EACE0C,IAAAA,KAAK,EAAEnI,SAAS,CAACoI,QAAQ,IAAI,EAAG;EAChCJ,IAAAA,QAAQ,EAAGH,CAAC,IAAKF,YAAY,CAAC;EAAE,MAAA,GAAG3H,SAAS;EAAEoI,MAAAA,QAAQ,EAAEP,CAAC,CAACI,MAAM,CAACE;OAAO;KAAE,eAE1E3C,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EAAQ0C,IAAAA,KAAK,EAAC;EAAE,GAAA,EAAC,oBAAW,CAAC,eAC7B3C,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EAAQ0C,IAAAA,KAAK,EAAC;EAAM,GAAA,EAAC,cAAU,CAAC,eAChC3C,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EAAQ0C,IAAAA,KAAK,EAAC;EAAW,GAAA,EAAC,cAAU,CAAC,eACrC3C,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EAAQ0C,IAAAA,KAAK,EAAC;EAAe,GAAA,EAAC,cAAU,CAAC,eACzC3C,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EAAQ0C,IAAAA,KAAK,EAAC;EAAW,GAAA,EAAC,cAAU,CAC9B,CACL,CACN,eAED3C,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;KAAoB,eACjCF,KAAA,CAAAC,aAAA,CAAA,OAAA,EAAA,IAAA,EAAO,kDAAe,CAAC,eACvBD,KAAA,CAAAC,aAAA,CAAA,UAAA,EAAA;EACE4C,IAAAA,WAAW,EAAC,oEAAa;EACzBF,IAAAA,KAAK,EAAEnI,SAAS,CAACsI,WAAW,IAAI,EAAG;EACnCN,IAAAA,QAAQ,EAAGH,CAAC,IAAKF,YAAY,CAAC;EAAE,MAAA,GAAG3H,SAAS;EAAEsI,MAAAA,WAAW,EAAET,CAAC,CAACI,MAAM,CAACE;OAAO;EAAE,GAC9E,CACE,CAAC,eAEN3C,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EACEpH,IAAAA,IAAI,EAAC,QAAQ;EACbqH,IAAAA,SAAS,EAAC,2BAA2B;EACrCO,IAAAA,QAAQ,EAAE1C;EAAQ,GAAA,EAEjBA,OAAO,GAAG,QAAQ,GAAG,MAChB,CACJ,CAAC;EAEX;;EAEA;EACA;EACA;EACO,SAASgF,eAAeA,CAAC;IAC9B5J,WAAW;IACXgI,WAAW;IACX6B,OAAO;IACPC,mBAAmB;EACnBlF,EAAAA,OAAO,GAAG;EACZ,CAAC,EAAE;IACD,MAAM,CAACiD,YAAY,EAAEkC,eAAe,CAAC,GAAGpF,cAAQ,CAAC,IAAI,CAAC;IACtD,MAAM,CAACqF,QAAQ,EAAEC,WAAW,CAAC,GAAGtF,cAAQ,CAAC,KAAK,CAAC;IAE/C,MAAMuF,YAAY,GAAIxK,IAAI,IAAK;MAC7B,IAAIA,IAAI,KAAKM,WAAW,EAAE;QACxB+J,eAAe,CAACrK,IAAI,CAAC;EACvB,IAAA;IACF,CAAC;IAED,MAAMyK,WAAW,GAAI9I,SAAS,IAAK;EACjCwI,IAAAA,OAAO,GAAGhC,YAAY,EAAExG,SAAS,CAAC;MAClC4I,WAAW,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,oBACEpD,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC;EAAmB,GAAA,eAChCF,KAAA,CAAAC,aAAA,CAAA,IAAA,EAAA,IAAA,EAAI,0BAAQ,CAAC,EAEZkB,WAAW,iBACVnB,KAAA,CAAAC,aAAA,CAACiB,qBAAqB,EAAA;EACpBC,IAAAA,WAAW,EAAEA,WAAY;EACzBC,IAAAA,QAAQ,EAAE6B;EAAoB,GAC/B,CACF,eAEDjD,KAAA,CAAAC,aAAA,+BACED,KAAA,CAAAC,aAAA,CAAA,IAAA,EAAA,IAAA,EAAI,sCAAU,CAAC,eACfD,KAAA,CAAAC,aAAA,CAACc,mBAAmB,EAAA;EAClB5H,IAAAA,WAAW,EAAEA,WAAY;EACzB6H,IAAAA,YAAY,EAAEA,YAAa;EAC3BR,IAAAA,QAAQ,EAAE6C;EAAa,GACxB,CACM,CAAC,EAETrC,YAAY,IAAIA,YAAY,KAAK7H,WAAW,iBAC3C6G,KAAA,CAAAC,aAAA,CAAA,SAAA,EAAA,IAAA,eACED,KAAA,CAAAC,aAAA,CAAC4B,kBAAkB,EAAA;EACjB1I,IAAAA,WAAW,EAAEA,WAAY;EACzBC,IAAAA,UAAU,EAAE4H;EAAa,GAC1B,CAAC,eACFhB,KAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;EACEC,IAAAA,SAAS,EAAC,2BAA2B;EACrCS,IAAAA,OAAO,EAAEA,MAAMyC,WAAW,CAAC,IAAI;KAAE,EAClC,0BAEO,CACD,CACV,EAEAD,QAAQ,iBACPnD,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC,uBAAuB;EAACS,IAAAA,OAAO,EAAEA,MAAMyC,WAAW,CAAC,KAAK;KAAE,eACvEpD,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;EAAKC,IAAAA,SAAS,EAAC,eAAe;EAACS,IAAAA,OAAO,EAAG0B,CAAC,IAAKA,CAAC,CAACkB,eAAe;EAAG,GAAA,eACjEvD,KAAA,CAAAC,aAAA,CAACgC,WAAW,EAAA;EACV7I,IAAAA,UAAU,EAAE4H,YAAa;EACzBkB,IAAAA,QAAQ,EAAEoB,WAAY;EACtBvF,IAAAA,OAAO,EAAEA;KACV,CACE,CACF,CAEJ,CAAC;EAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}