@shopplus/membership-i18n 0.2.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.
- package/dist/chunks/ar-SA-DP_snBx2.js +209 -0
- package/dist/chunks/ar-SA-DP_snBx2.js.map +1 -0
- package/dist/chunks/ar-SA-SmRmmy-C.js +178 -0
- package/dist/chunks/ar-SA-SmRmmy-C.js.map +1 -0
- package/dist/chunks/ar-SA-YCCR2p9M.js +286 -0
- package/dist/chunks/ar-SA-YCCR2p9M.js.map +1 -0
- package/dist/chunks/de-DE-2rfmd0jH.js +209 -0
- package/dist/chunks/de-DE-2rfmd0jH.js.map +1 -0
- package/dist/chunks/de-DE-Bg1hwcvH.js +286 -0
- package/dist/chunks/de-DE-Bg1hwcvH.js.map +1 -0
- package/dist/chunks/de-DE-QF5eB9ic.js +178 -0
- package/dist/chunks/de-DE-QF5eB9ic.js.map +1 -0
- package/dist/chunks/en-US-BuxQK5r7.js +178 -0
- package/dist/chunks/en-US-BuxQK5r7.js.map +1 -0
- package/dist/chunks/en-US-BzF4xPel.js +209 -0
- package/dist/chunks/en-US-BzF4xPel.js.map +1 -0
- package/dist/chunks/en-US-CT01P3P9.js +291 -0
- package/dist/chunks/en-US-CT01P3P9.js.map +1 -0
- package/dist/chunks/es-ES-BACY-LxM.js +286 -0
- package/dist/chunks/es-ES-BACY-LxM.js.map +1 -0
- package/dist/chunks/es-ES-BC62zi_S.js +209 -0
- package/dist/chunks/es-ES-BC62zi_S.js.map +1 -0
- package/dist/chunks/es-ES-ChEUG7Kd.js +178 -0
- package/dist/chunks/es-ES-ChEUG7Kd.js.map +1 -0
- package/dist/chunks/fr-FR-CM-doHjn.js +286 -0
- package/dist/chunks/fr-FR-CM-doHjn.js.map +1 -0
- package/dist/chunks/fr-FR-DUoWmG1m.js +209 -0
- package/dist/chunks/fr-FR-DUoWmG1m.js.map +1 -0
- package/dist/chunks/fr-FR-XVBHWWmQ.js +178 -0
- package/dist/chunks/fr-FR-XVBHWWmQ.js.map +1 -0
- package/dist/chunks/he-IL-ChkePFhZ.js +286 -0
- package/dist/chunks/he-IL-ChkePFhZ.js.map +1 -0
- package/dist/chunks/he-IL-DWYROb2e.js +209 -0
- package/dist/chunks/he-IL-DWYROb2e.js.map +1 -0
- package/dist/chunks/he-IL-DoEVi3Vi.js +178 -0
- package/dist/chunks/he-IL-DoEVi3Vi.js.map +1 -0
- package/dist/chunks/ja-JP-B2ugel-u.js +178 -0
- package/dist/chunks/ja-JP-B2ugel-u.js.map +1 -0
- package/dist/chunks/ja-JP-DdBIYhrR.js +286 -0
- package/dist/chunks/ja-JP-DdBIYhrR.js.map +1 -0
- package/dist/chunks/ja-JP-UaYvu-oE.js +209 -0
- package/dist/chunks/ja-JP-UaYvu-oE.js.map +1 -0
- package/dist/chunks/ko-KR-BO83ri35.js +286 -0
- package/dist/chunks/ko-KR-BO83ri35.js.map +1 -0
- package/dist/chunks/ko-KR-Csgr80qJ.js +178 -0
- package/dist/chunks/ko-KR-Csgr80qJ.js.map +1 -0
- package/dist/chunks/ko-KR-QxhuPYWJ.js +209 -0
- package/dist/chunks/ko-KR-QxhuPYWJ.js.map +1 -0
- package/dist/chunks/pt-BR-B7g_XkZG.js +286 -0
- package/dist/chunks/pt-BR-B7g_XkZG.js.map +1 -0
- package/dist/chunks/pt-BR-Bek1YZad.js +178 -0
- package/dist/chunks/pt-BR-Bek1YZad.js.map +1 -0
- package/dist/chunks/pt-BR-KKKjAxDs.js +209 -0
- package/dist/chunks/pt-BR-KKKjAxDs.js.map +1 -0
- package/dist/chunks/th-TH-Coz065G4.js +286 -0
- package/dist/chunks/th-TH-Coz065G4.js.map +1 -0
- package/dist/chunks/th-TH-DLgzYE9r.js +209 -0
- package/dist/chunks/th-TH-DLgzYE9r.js.map +1 -0
- package/dist/chunks/th-TH-DXU76_EA.js +178 -0
- package/dist/chunks/th-TH-DXU76_EA.js.map +1 -0
- package/dist/chunks/zh-CN-CIUcShXd.js +209 -0
- package/dist/chunks/zh-CN-CIUcShXd.js.map +1 -0
- package/dist/chunks/zh-CN-CLJswy78.js +291 -0
- package/dist/chunks/zh-CN-CLJswy78.js.map +1 -0
- package/dist/chunks/zh-CN-DJ7HSPdL.js +178 -0
- package/dist/chunks/zh-CN-DJ7HSPdL.js.map +1 -0
- package/dist/chunks/zh-TW-6MdWLPwV.js +286 -0
- package/dist/chunks/zh-TW-6MdWLPwV.js.map +1 -0
- package/dist/chunks/zh-TW-BkMcexaX.js +178 -0
- package/dist/chunks/zh-TW-BkMcexaX.js.map +1 -0
- package/dist/chunks/zh-TW-mGlSHp00.js +209 -0
- package/dist/chunks/zh-TW-mGlSHp00.js.map +1 -0
- package/dist/format/currency.d.ts +33 -0
- package/dist/format/currency.d.ts.map +1 -0
- package/dist/format/date.d.ts +42 -0
- package/dist/format/date.d.ts.map +1 -0
- package/dist/format/number.d.ts +38 -0
- package/dist/format/number.d.ts.map +1 -0
- package/dist/index.d.ts +47 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.es.js +139 -0
- package/dist/index.es.js.map +1 -0
- package/dist/index.umd.js +3 -0
- package/dist/index.umd.js.map +1 -0
- package/dist/rtl.d.ts +14 -0
- package/dist/rtl.d.ts.map +1 -0
- package/package.json +67 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.umd.js","names":[],"sources":["../src/format/currency.ts","../src/format/date.ts","../src/format/number.ts","../src/rtl.ts","../src/locales/zh-CN.json","../src/locales/zh-TW.json","../src/locales/en-US.json","../src/locales/ja-JP.json","../src/locales/ko-KR.json","../src/locales/fr-FR.json","../src/locales/de-DE.json","../src/locales/es-ES.json","../src/locales/pt-BR.json","../src/locales/ar-SA.json","../src/locales/he-IL.json","../src/locales/th-TH.json","../src/index.ts"],"sourcesContent":["/**\n * 货币格式化 - 基于 Intl.NumberFormat\n *\n * 禁止使用 toFixed,禁止硬编码货币符号\n * 必须接收 currency 参数,由调用方决定币种\n */\n\nexport interface FormatCurrencyOptions {\n /** ISO 4217 货币代码,如 'USD', 'CNY', 'EUR' */\n currency: string;\n /** BCP 47 语言标签,默认从浏览器读取 */\n locale?: string;\n /** 小数位数(可选,默认由币种决定) */\n minimumFractionDigits?: number;\n maximumFractionDigits?: number;\n}\n\n/**\n * 格式化货币金额\n *\n * @param amount - 金额数值\n * @param optionsOrCurrency - 格式化选项对象,或直接传 ISO 4217 货币代码字符串\n * @returns 格式化后的货币字符串\n *\n * @example\n * ```typescript\n * formatCurrency(1234.5, { currency: 'USD' });\n * // => \"$1,234.50\"\n *\n * formatCurrency(1234.5, 'CNY');\n * // => \"¥1,234.50\"\n * ```\n */\nexport function formatCurrency(amount: number, optionsOrCurrency: FormatCurrencyOptions | string): string {\n const options: FormatCurrencyOptions = typeof optionsOrCurrency === 'string'\n ? { currency: optionsOrCurrency }\n : optionsOrCurrency;\n\n const { currency, locale, minimumFractionDigits, maximumFractionDigits } = options;\n\n const formatter = new Intl.NumberFormat(locale, {\n style: 'currency',\n currency,\n minimumFractionDigits,\n maximumFractionDigits,\n });\n\n return formatter.format(amount);\n}\n","/**\n * 日期格式化 - 基于 Intl.DateTimeFormat\n *\n * 禁止硬编码 'YYYY-MM-DD' 等格式模板\n * 完全依赖 Intl API 做本地化日期展示\n */\n\nexport interface FormatDateOptions {\n /** BCP 47 语言标签,默认从浏览器读取 */\n locale?: string;\n /** 日期风格:'full' | 'long' | 'medium' | 'short' */\n dateStyle?: 'full' | 'long' | 'medium' | 'short';\n /** 时间风格:'full' | 'long' | 'medium' | 'short' */\n timeStyle?: 'full' | 'long' | 'medium' | 'short';\n /** 时区 */\n timeZone?: string;\n}\n\n/**\n * 格式化日期\n *\n * @param date - Date 对象或时间戳\n * @param options - 格式化选项\n * @returns 格式化后的日期字符串\n *\n * @example\n * ```typescript\n * formatDate(new Date(), { dateStyle: 'medium', locale: 'zh-CN' });\n * // => \"2024年3月15日\"\n *\n * formatDate(new Date(), { dateStyle: 'short', locale: 'en-US' });\n * // => \"3/15/24\"\n * ```\n */\nexport function formatDate(date: Date | number | string, options?: FormatDateOptions): string {\n const { locale, dateStyle, timeStyle, timeZone } = options ?? {};\n\n const formatter = new Intl.DateTimeFormat(locale, {\n dateStyle: dateStyle ?? 'medium',\n timeStyle,\n timeZone,\n });\n\n let dateObj: Date;\n if (typeof date === 'string') {\n dateObj = new Date(date);\n } else if (typeof date === 'number') {\n dateObj = new Date(date);\n } else {\n dateObj = date;\n }\n\n return formatter.format(dateObj);\n}\n\n/**\n * 格式化相对时间(如 \"3 分钟前\")\n *\n * @param date - Date 对象或时间戳\n * @param locale - BCP 47 语言标签\n * @returns 相对时间字符串\n */\nexport function formatRelativeTime(date: Date | number, locale?: string): string {\n const dateObj = typeof date === 'number' ? new Date(date) : date;\n const now = Date.now();\n const diffMs = dateObj.getTime() - now;\n const diffSec = Math.round(diffMs / 1000);\n const diffMin = Math.round(diffSec / 60);\n const diffHour = Math.round(diffMin / 60);\n const diffDay = Math.round(diffHour / 24);\n\n const rtf = new Intl.RelativeTimeFormat(locale, { numeric: 'auto' });\n\n if (Math.abs(diffSec) < 60) {\n return rtf.format(diffSec, 'second');\n } else if (Math.abs(diffMin) < 60) {\n return rtf.format(diffMin, 'minute');\n } else if (Math.abs(diffHour) < 24) {\n return rtf.format(diffHour, 'hour');\n } else {\n return rtf.format(diffDay, 'day');\n }\n}\n","/**\n * 数字格式化 - 基于 Intl.NumberFormat\n *\n * 禁止使用 toFixed\n * 完全依赖 Intl API 做本地化数字展示\n */\n\nexport interface FormatNumberOptions {\n /** BCP 47 语言标签,默认从浏览器读取 */\n locale?: string;\n /** 最小小数位数 */\n minimumFractionDigits?: number;\n /** 最大小数位数 */\n maximumFractionDigits?: number;\n /** 是否使用分组分隔符(如千位分隔符) */\n useGrouping?: boolean;\n /** 表示法 */\n notation?: 'standard' | 'scientific' | 'engineering' | 'compact';\n /** 紧凑表示法的显示风格 */\n compactDisplay?: 'short' | 'long';\n}\n\n/**\n * 格式化数字\n *\n * @param value - 数值\n * @param options - 格式化选项(兼容 Intl.NumberFormatOptions 超集)\n * @returns 格式化后的数字字符串\n *\n * @example\n * ```typescript\n * formatNumber(12345.678, { locale: 'zh-CN', maximumFractionDigits: 2 });\n * // => \"12,345.68\"\n *\n * formatNumber(1234567, { notation: 'compact', locale: 'en-US' });\n * // => \"1.2M\"\n * ```\n */\nexport function formatNumber(value: number, options?: FormatNumberOptions & Intl.NumberFormatOptions): string {\n const { locale, ...intlOptions } = options ?? {};\n\n const formatter = new Intl.NumberFormat(locale, intlOptions);\n\n return formatter.format(value);\n}\n","/**\n * RTL(从右到左)语言支持\n * 用于判断语言是否需要 RTL 布局方向\n */\n\n/** RTL 语言列表 */\nconst RTL_LOCALES: ReadonlySet<string> = new Set([\n 'ar-SA',\n 'he-IL',\n 'fa-IR',\n]);\n\n/**\n * 判断指定 locale 是否为 RTL 语言\n *\n * @param locale - 语言标识(如 'ar-SA')\n * @returns 是否为 RTL 语言\n */\nexport function isRtl(locale: string): boolean {\n return RTL_LOCALES.has(locale);\n}\n\n/** 获取所有 RTL locale 列表(只读) */\nexport function getRtlLocales(): readonly string[] {\n return [...RTL_LOCALES];\n}\n","{\n \"common\": {\n \"memberCenter\": \"会员中心\",\n \"points\": \"积分\",\n \"level\": \"等级\",\n \"coupons\": \"优惠券\",\n \"checkin\": \"签到\",\n \"history\": \"历史记录\",\n \"balance\": \"余额\",\n \"expire\": \"过期\",\n \"confirm\": \"确认\",\n \"cancel\": \"取消\",\n \"loading\": \"加载中...\",\n \"noData\": \"暂无数据\",\n \"retry\": \"重试\",\n \"success\": \"成功\",\n \"failed\": \"失败\"\n },\n \"points\": {\n \"earn\": \"获得 {amount} 积分\",\n \"spend\": \"消费 {amount} 积分\",\n \"balance\": \"当前余额:{amount} 积分\",\n \"expired\": \"{amount} 积分已过期\",\n \"estimated\": \"预估中(待确认入账)\"\n },\n \"level\": {\n \"current\": \"当前等级:{name}\",\n \"nextLevel\": \"下一等级:{name}\",\n \"progress\": \"距下一等级还需 {current}/{target}\",\n \"upgraded\": \"恭喜!已升级到 {name}\"\n },\n \"coupon\": {\n \"claim\": \"领取\",\n \"claimed\": \"已领取\",\n \"expired\": \"已过期\",\n \"used\": \"已使用\",\n \"validUntil\": \"有效期至 {date}\"\n },\n \"checkin\": {\n \"today\": \"今日签到\",\n \"done\": \"已签到\",\n \"streak\": \"连续签到 {days} 天\",\n \"reward\": \"+{amount} 积分\"\n },\n \"errors\": {\n \"network\": \"网络错误,请重试\",\n \"unauthorized\": \"请先登录\",\n \"serverError\": \"服务器异常,请稍后再试\",\n \"timeout\": \"请求超时\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"加载中...\",\n \"avatarAlt\": \"会员头像\",\n \"pointsBalance\": \"我的积分\",\n \"menuLabel\": \"会员功能导航\",\n \"menu\": {\n \"pointsDetail\": \"积分明细\",\n \"levelDetail\": \"等级权益\",\n \"coupons\": \"我的优惠券\",\n \"referral\": \"邀请好友\",\n \"checkin\": \"每日签到\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"积分明细\",\n \"empty\": \"暂无积分流水\",\n \"loading\": \"加载中...\",\n \"noMore\": \"已经到底啦\",\n \"listLabel\": \"积分流水列表\",\n \"status\": {\n \"pending\": \"待确认\",\n \"active\": \"已生效\",\n \"used\": \"已使用\",\n \"expired\": \"已过期\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"加载中...\",\n \"maxLevel\": \"已是最高等级\",\n \"progressLabel\": \"等级进度\",\n \"noBenefits\": \"暂无权益\",\n \"nextLevel\": \"下一等级:{name}\",\n \"benefitsTitle\": \"我的权益\"\n },\n \"couponList\": {\n \"title\": \"我的优惠券\",\n \"tabsLabel\": \"优惠券分类\",\n \"listLabel\": \"优惠券列表\",\n \"empty\": \"暂无优惠券\",\n \"freeShipping\": \"免邮\",\n \"giftValue\": \"赠品\",\n \"discountValue\": \"{value} 折\",\n \"type\": {\n \"discount\": \"折扣券\",\n \"cash\": \"现金券\",\n \"shipping\": \"运费券\",\n \"gift\": \"赠品券\"\n },\n \"tab\": {\n \"available\": \"可使用\",\n \"used\": \"已使用\",\n \"expired\": \"已过期\"\n }\n },\n \"referralShare\": {\n \"loading\": \"加载中...\",\n \"title\": \"邀请好友\",\n \"shareTitle\": \"邀请好友赢积分\",\n \"shareText\": \"快来加入会员,注册即送好礼!\",\n \"invitedCount\": \"已邀请\",\n \"rewardPoints\": \"已获积分\",\n \"codeLabel\": \"我的邀请码\",\n \"linkLabel\": \"邀请链接\",\n \"copy\": \"复制\",\n \"copyCode\": \"复制邀请码\",\n \"share\": \"立即分享\",\n \"rewardHint\": \"每邀请一位好友奖励 {points} 积分\"\n },\n \"checkinCalendar\": {\n \"loading\": \"加载中...\",\n \"checking\": \"签到中...\",\n \"checkin\": \"立即签到\",\n \"alreadyChecked\": \"今日已签到\",\n \"day\": \"{count} 天\",\n \"title\": \"每日签到\",\n \"streak\": \"连续签到 {days} 天\",\n \"calendarLabel\": \"签到日历\",\n \"rewardsTitle\": \"连续签到奖励\",\n \"rewardsLabel\": \"签到奖励列表\",\n \"weekday\": {\n \"sun\": \"日\",\n \"mon\": \"一\",\n \"tue\": \"二\",\n \"wed\": \"三\",\n \"thu\": \"四\",\n \"fri\": \"五\",\n \"sat\": \"六\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"邮箱\",\n \"passwordLabel\": \"密码\",\n \"submit\": \"登录\",\n \"createAccount\": \"创建账号\",\n \"forgotPassword\": \"忘记密码?\",\n \"orDivider\": \"或\"\n },\n \"register\": {\n \"emailLabel\": \"邮箱\",\n \"passwordLabel\": \"密码\",\n \"confirmPasswordLabel\": \"确认密码\",\n \"passwordHint\": \"至少 8 个字符,包含字母和数字\",\n \"submit\": \"创建账号\",\n \"submitting\": \"创建中...\",\n \"hasAccount\": \"已有账号?立即登录\",\n \"passwordMismatch\": \"两次输入的密码不一致\"\n },\n \"oauth\": {\n \"continueWith\": \"通过 {provider} 继续\"\n },\n \"verify\": {\n \"title\": \"验证您的邮箱\",\n \"description\": \"我们已向您的邮箱发送了验证码\",\n \"digitLabel\": \"第 {index} 位\",\n \"resend\": \"重新发送验证码\",\n \"resendCountdown\": \"重新发送({countdown}秒)\",\n \"backToRegister\": \"返回注册\"\n },\n \"forgot\": {\n \"title\": \"重置密码\",\n \"description\": \"输入您的邮箱,我们将向您发送验证码。\",\n \"emailLabel\": \"邮箱\",\n \"submit\": \"发送验证码\",\n \"backToLogin\": \"返回登录\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"参数错误\",\n \"210901\": \"租户ID不能为空\",\n \"210902\": \"请求频率超限,请稍后再试\",\n \"210903\": \"未授权\",\n \"210904\": \"Token 已过期\",\n \"210905\": \"Token 无效\",\n \"210906\": \"Token 刷新失败\",\n \"210907\": \"平台 Token 交换失败\",\n \"210908\": \"Refresh Token 无效\",\n \"210909\": \"Refresh Token 已过期\",\n \"210911\": \"会员不存在\",\n \"210912\": \"会员等级信息不存在\",\n \"210920\": \"该邮箱已注册\",\n \"210921\": \"密码强度不足:至少8位,包含字母和数字\",\n \"210922\": \"验证码发送过于频繁,请稍后再试\",\n \"210923\": \"验证码错误或已过期\",\n \"210924\": \"注册信息已过期,请重新注册\",\n \"210925\": \"邮箱或密码错误\",\n \"210926\": \"邮箱未验证,请先完成验证\",\n \"210927\": \"OAuth 认证失败\",\n \"210928\": \"OAuth state 无效或已过期\",\n \"210929\": \"不支持的登录方式\",\n \"210930\": \"用户创建失败\",\n \"210931\": \"折扣计算失败\",\n \"210951\": \"积分余额查询失败\",\n \"210952\": \"积分流水查询失败\",\n \"210953\": \"积分获取失败\",\n \"210954\": \"积分激活失败\",\n \"210955\": \"积分消耗失败\",\n \"210956\": \"积分余额不足\",\n \"210957\": \"积分记录不存在\",\n \"210958\": \"积分状态不允许该操作\",\n \"210971\": \"优惠券已抢完\",\n \"210972\": \"已领过该券\",\n \"210981\": \"消息队列写入失败\",\n \"210982\": \"内部服务同步失败\",\n \"210983\": \"兑换商品不存在\",\n \"210984\": \"兑换失败\",\n \"210985\": \"邀请码不存在\",\n \"210986\": \"绑定邀请人失败\",\n \"210987\": \"邀请人不存在\",\n \"210988\": \"不能邀请自己\",\n \"210989\": \"优惠券领取失败\",\n \"210990\": \"今日已签到\",\n \"210991\": \"签到失败\",\n \"211900\": \"操作失败,请稍后重试\",\n \"211901\": \"认证失败\",\n \"211902\": \"该账号未绑定管理权限\",\n \"211903\": \"无权限操作\",\n \"211904\": \"配置项不存在\",\n \"211905\": \"配置作用域非法\",\n \"211906\": \"角色不存在\",\n \"211907\": \"系统角色不可删除\",\n \"211908\": \"管理员无权访问该租户\",\n \"211909\": \"参数校验失败\",\n \"211910\": \"资源不存在\",\n \"211911\": \"未找到对应的会员信息\",\n \"211912\": \"身份关联冲突,请联系客服\",\n \"211913\": \"影子账号激活失败\",\n \"211914\": \"审核记录不存在\",\n \"211915\": \"审核记录状态非待审核\",\n \"211916\": \"OneID 不存在\",\n \"211917\": \"OneID 解除关联失败\",\n \"211931\": \"等级配置不存在\",\n \"211932\": \"等级有关联会员,禁止删除\",\n \"211933\": \"升级条件校验失败\",\n \"211934\": \"等级序列必须连续\",\n \"211951\": \"积分状态迁移非法\",\n \"211952\": \"积分余额不足\",\n \"211953\": \"积分记录不存在\",\n \"211954\": \"积分流水重复落账\",\n \"211955\": \"积分消耗数量无效\",\n \"211956\": \"积分抵扣超过最大比例\",\n \"211957\": \"积分未达最低消耗门槛\",\n \"211958\": \"积分获取规则未配置\",\n \"211959\": \"积分激活失败:状态非待确认\",\n \"211960\": \"积分流水查询越权\",\n \"211961\": \"积分过期已处理\",\n \"211962\": \"成长值规则未配置\",\n \"211971\": \"优惠券模板不存在\",\n \"211972\": \"优惠券模板状态非可发放\",\n \"211973\": \"优惠券超出每用户领取上限\",\n \"211974\": \"优惠券超出总发放量\",\n \"211975\": \"优惠券核销状态非可用\",\n \"211976\": \"优惠券已过期\",\n \"211977\": \"优惠券模板已发放,禁止删除\",\n \"211981\": \"推送任务不存在\",\n \"211982\": \"推送任务状态不允许编辑\",\n \"211983\": \"推送任务状态不允许取消\",\n \"211984\": \"推送模板不存在\",\n \"211985\": \"推送目标人群为空\",\n \"211991\": \"服务繁忙,请稍后重试\",\n \"211992\": \"消息发布失败\",\n \"211993\": \"消息已进入死信队列\",\n \"211001\": \"回调签名校验失败\",\n \"211002\": \"不支持的回调平台\",\n \"211003\": \"回调请求重复\",\n \"211004\": \"Webhook Secret 未配置\",\n \"211005\": \"回调时间戳超时\",\n \"network\": \"网络异常,请检查连接后重试\",\n \"timeout\": \"请求超时,请稍后重试\",\n \"aborted\": \"请求已被取消\",\n \"parse\": \"数据解析异常\",\n \"unauthorized\": \"请先登录\",\n \"config\": \"SDK 初始化参数错误\",\n \"unknown\": \"发生未知错误,请稍后重试\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"會員中心\",\n \"points\": \"積分\",\n \"level\": \"等級\",\n \"coupons\": \"優惠券\",\n \"checkin\": \"簽到\",\n \"history\": \"歷史記錄\",\n \"balance\": \"餘額\",\n \"expire\": \"過期\",\n \"confirm\": \"確認\",\n \"cancel\": \"取消\",\n \"loading\": \"載入中...\",\n \"noData\": \"暫無資料\",\n \"retry\": \"重試\",\n \"success\": \"成功\",\n \"failed\": \"失敗\"\n },\n \"points\": {\n \"earn\": \"獲得 {amount} 積分\",\n \"spend\": \"消費 {amount} 積分\",\n \"balance\": \"目前餘額:{amount} 積分\",\n \"expired\": \"{amount} 積分已過期\",\n \"estimated\": \"預估中(待確認入帳)\"\n },\n \"level\": {\n \"current\": \"目前等級:{name}\",\n \"nextLevel\": \"下一等級:{name}\",\n \"progress\": \"距下一等級還需 {current}/{target}\",\n \"upgraded\": \"恭喜!已升級至 {name}\"\n },\n \"coupon\": {\n \"claim\": \"領取\",\n \"claimed\": \"已領取\",\n \"expired\": \"已過期\",\n \"used\": \"已使用\",\n \"validUntil\": \"有效期至 {date}\"\n },\n \"checkin\": {\n \"today\": \"今日簽到\",\n \"done\": \"已簽到\",\n \"streak\": \"連續簽到 {days} 天\",\n \"reward\": \"+{amount} 積分\"\n },\n \"errors\": {\n \"network\": \"網路錯誤,請重試\",\n \"unauthorized\": \"請先登入\",\n \"serverError\": \"伺服器異常,請稍後再試\",\n \"timeout\": \"請求逾時\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"載入中...\",\n \"avatarAlt\": \"會員頭像\",\n \"pointsBalance\": \"我的積分\",\n \"menuLabel\": \"會員功能導覽\",\n \"menu\": {\n \"pointsDetail\": \"積分明細\",\n \"levelDetail\": \"等級權益\",\n \"coupons\": \"我的優惠券\",\n \"referral\": \"邀請好友\",\n \"checkin\": \"每日簽到\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"積分明細\",\n \"empty\": \"暫無積分流水\",\n \"loading\": \"載入中...\",\n \"noMore\": \"已經到底囉\",\n \"listLabel\": \"積分流水列表\",\n \"status\": {\n \"pending\": \"待確認\",\n \"active\": \"已生效\",\n \"used\": \"已使用\",\n \"expired\": \"已過期\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"載入中...\",\n \"maxLevel\": \"已是最高等級\",\n \"progressLabel\": \"等級進度\",\n \"noBenefits\": \"暫無權益\",\n \"nextLevel\": \"下一等級:{name}\",\n \"benefitsTitle\": \"我的權益\"\n },\n \"couponList\": {\n \"title\": \"我的優惠券\",\n \"tabsLabel\": \"優惠券分類\",\n \"listLabel\": \"優惠券列表\",\n \"empty\": \"暫無優惠券\",\n \"freeShipping\": \"免運\",\n \"giftValue\": \"贈品\",\n \"discountValue\": \"{value} 折\",\n \"type\": {\n \"discount\": \"折扣券\",\n \"cash\": \"現金券\",\n \"shipping\": \"運費券\",\n \"gift\": \"贈品券\"\n },\n \"tab\": {\n \"available\": \"可使用\",\n \"used\": \"已使用\",\n \"expired\": \"已過期\"\n }\n },\n \"referralShare\": {\n \"loading\": \"載入中...\",\n \"title\": \"邀請好友\",\n \"shareTitle\": \"邀請好友贏積分\",\n \"shareText\": \"快來加入會員,註冊即送好禮!\",\n \"invitedCount\": \"已邀請\",\n \"rewardPoints\": \"已獲積分\",\n \"codeLabel\": \"我的邀請碼\",\n \"linkLabel\": \"邀請連結\",\n \"copy\": \"複製\",\n \"copyCode\": \"複製邀請碼\",\n \"share\": \"立即分享\",\n \"rewardHint\": \"每邀請一位好友獎勵 {points} 積分\"\n },\n \"checkinCalendar\": {\n \"loading\": \"載入中...\",\n \"checking\": \"簽到中...\",\n \"checkin\": \"立即簽到\",\n \"alreadyChecked\": \"今日已簽到\",\n \"day\": \"{count} 天\",\n \"title\": \"每日簽到\",\n \"streak\": \"連續簽到 {days} 天\",\n \"calendarLabel\": \"簽到日曆\",\n \"rewardsTitle\": \"連續簽到獎勵\",\n \"rewardsLabel\": \"簽到獎勵列表\",\n \"weekday\": {\n \"sun\": \"日\",\n \"mon\": \"一\",\n \"tue\": \"二\",\n \"wed\": \"三\",\n \"thu\": \"四\",\n \"fri\": \"五\",\n \"sat\": \"六\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"電子郵件\",\n \"passwordLabel\": \"密碼\",\n \"submit\": \"登入\",\n \"createAccount\": \"建立帳號\",\n \"forgotPassword\": \"忘記密碼?\",\n \"orDivider\": \"或\"\n },\n \"register\": {\n \"emailLabel\": \"電子郵件\",\n \"passwordLabel\": \"密碼\",\n \"confirmPasswordLabel\": \"確認密碼\",\n \"passwordHint\": \"至少 8 個字元,包含字母和數字\",\n \"submit\": \"建立帳號\",\n \"hasAccount\": \"已有帳號?立即登入\",\n \"passwordMismatch\": \"兩次輸入的密碼不一致\"\n },\n \"oauth\": {\n \"continueWith\": \"透過 {provider} 繼續\"\n },\n \"verify\": {\n \"resend\": \"重新傳送驗證碼\",\n \"resendCountdown\": \"重新傳送({countdown}秒)\"\n },\n \"forgot\": {\n \"title\": \"重設密碼\",\n \"description\": \"輸入您的電子郵件,我們將傳送驗證碼給您。\",\n \"emailLabel\": \"電子郵件\",\n \"submit\": \"傳送驗證碼\",\n \"backToLogin\": \"返回登入\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"參數錯誤\",\n \"210901\": \"租戶ID不能為空\",\n \"210902\": \"請求頻率超限,請稍後再試\",\n \"210903\": \"未授權\",\n \"210904\": \"Token 已過期\",\n \"210905\": \"Token 無效\",\n \"210906\": \"Token 重新整理失敗\",\n \"210907\": \"平台 Token 交換失敗\",\n \"210908\": \"Refresh Token 無效\",\n \"210909\": \"Refresh Token 已過期\",\n \"210911\": \"會員不存在\",\n \"210912\": \"會員等級資訊不存在\",\n \"210920\": \"該信箱已註冊\",\n \"210921\": \"密碼強度不足:至少8位,包含字母和數字\",\n \"210922\": \"驗證碼傳送過於頻繁,請稍後再試\",\n \"210923\": \"驗證碼錯誤或已過期\",\n \"210924\": \"註冊資訊已過期,請重新註冊\",\n \"210925\": \"信箱或密碼錯誤\",\n \"210926\": \"信箱未驗證,請先完成驗證\",\n \"210927\": \"OAuth 認證失敗\",\n \"210928\": \"OAuth state 無效或已過期\",\n \"210929\": \"不支援的登入方式\",\n \"210930\": \"使用者建立失敗\",\n \"210931\": \"折扣計算失敗\",\n \"210951\": \"積分餘額查詢失敗\",\n \"210952\": \"積分流水查詢失敗\",\n \"210953\": \"積分獲取失敗\",\n \"210954\": \"積分啟用失敗\",\n \"210955\": \"積分消耗失敗\",\n \"210956\": \"積分餘額不足\",\n \"210957\": \"積分記錄不存在\",\n \"210958\": \"積分狀態不允許該操作\",\n \"210971\": \"優惠券已搶完\",\n \"210972\": \"已領過該券\",\n \"210981\": \"訊息佇列寫入失敗\",\n \"210982\": \"內部服務同步失敗\",\n \"210983\": \"兌換商品不存在\",\n \"210984\": \"兌換失敗\",\n \"210985\": \"邀請碼不存在\",\n \"210986\": \"綁定邀請人失敗\",\n \"210987\": \"邀請人不存在\",\n \"210988\": \"不能邀請自己\",\n \"210989\": \"優惠券領取失敗\",\n \"210990\": \"今日已簽到\",\n \"210991\": \"簽到失敗\",\n \"211900\": \"操作失敗,請稍後重試\",\n \"211901\": \"認證失敗\",\n \"211902\": \"該帳號未綁定管理權限\",\n \"211903\": \"無權限操作\",\n \"211904\": \"設定項不存在\",\n \"211905\": \"設定作用域非法\",\n \"211906\": \"角色不存在\",\n \"211907\": \"系統角色不可刪除\",\n \"211908\": \"管理員無權存取該租戶\",\n \"211909\": \"參數校驗失敗\",\n \"211910\": \"資源不存在\",\n \"211911\": \"找不到對應的會員資訊\",\n \"211912\": \"身份關聯衝突,請聯絡客服\",\n \"211913\": \"影子帳號啟用失敗\",\n \"211914\": \"審核記錄不存在\",\n \"211915\": \"審核記錄狀態非待審核\",\n \"211916\": \"OneID 不存在\",\n \"211917\": \"OneID 解除關聯失敗\",\n \"211931\": \"等級設定不存在\",\n \"211932\": \"等級有關聯會員,禁止刪除\",\n \"211933\": \"升級條件校驗失敗\",\n \"211934\": \"等級序列必須連續\",\n \"211951\": \"積分狀態遷移非法\",\n \"211952\": \"積分餘額不足\",\n \"211953\": \"積分記錄不存在\",\n \"211954\": \"積分流水重複入帳\",\n \"211955\": \"積分消耗數量無效\",\n \"211956\": \"積分抵扣超過最大比例\",\n \"211957\": \"積分未達最低消耗門檻\",\n \"211958\": \"積分獲取規則未設定\",\n \"211959\": \"積分啟用失敗:狀態非待確認\",\n \"211960\": \"積分流水查詢越權\",\n \"211961\": \"積分過期已處理\",\n \"211962\": \"成長值規則未設定\",\n \"211971\": \"優惠券範本不存在\",\n \"211972\": \"優惠券範本狀態非可發放\",\n \"211973\": \"優惠券超出每使用者領取上限\",\n \"211974\": \"優惠券超出總發放量\",\n \"211975\": \"優惠券核銷狀態非可用\",\n \"211976\": \"優惠券已過期\",\n \"211977\": \"優惠券範本已發放,禁止刪除\",\n \"211981\": \"推送任務不存在\",\n \"211982\": \"推送任務狀態不允許編輯\",\n \"211983\": \"推送任務狀態不允許取消\",\n \"211984\": \"推送範本不存在\",\n \"211985\": \"推送目標人群為空\",\n \"211991\": \"服務忙碌,請稍後重試\",\n \"211992\": \"訊息發佈失敗\",\n \"211993\": \"訊息已進入死信佇列\",\n \"211001\": \"回呼簽章驗證失敗\",\n \"211002\": \"不支援的回呼平台\",\n \"211003\": \"回呼請求重複\",\n \"211004\": \"Webhook Secret 未設定\",\n \"211005\": \"回呼時間戳逾時\",\n \"network\": \"網路異常,請檢查連線後重試\",\n \"timeout\": \"請求逾時,請稍後重試\",\n \"aborted\": \"請求已被取消\",\n \"parse\": \"資料解析異常\",\n \"unauthorized\": \"請先登入\",\n \"config\": \"SDK 初始化參數錯誤\",\n \"unknown\": \"發生未知錯誤,請稍後重試\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"Member Center\",\n \"points\": \"Points\",\n \"level\": \"Level\",\n \"coupons\": \"Coupons\",\n \"checkin\": \"Check In\",\n \"history\": \"History\",\n \"balance\": \"Balance\",\n \"expire\": \"Expire\",\n \"confirm\": \"Confirm\",\n \"cancel\": \"Cancel\",\n \"loading\": \"Loading...\",\n \"noData\": \"No data\",\n \"retry\": \"Retry\",\n \"success\": \"Success\",\n \"failed\": \"Failed\"\n },\n \"points\": {\n \"earn\": \"Earn {amount} points\",\n \"spend\": \"Spend {amount} points\",\n \"balance\": \"Current balance: {amount} points\",\n \"expired\": \"{amount} points expired\",\n \"estimated\": \"Estimated (pending confirmation)\"\n },\n \"level\": {\n \"current\": \"Current level: {name}\",\n \"nextLevel\": \"Next level: {name}\",\n \"progress\": \"{current}/{target} to next level\",\n \"upgraded\": \"Congratulations! Upgraded to {name}\"\n },\n \"coupon\": {\n \"claim\": \"Claim\",\n \"claimed\": \"Claimed\",\n \"expired\": \"Expired\",\n \"used\": \"Used\",\n \"validUntil\": \"Valid until {date}\"\n },\n \"checkin\": {\n \"today\": \"Check in today\",\n \"done\": \"Checked in\",\n \"streak\": \"{days} day streak\",\n \"reward\": \"+{amount} points\"\n },\n \"errors\": {\n \"network\": \"Network error, please try again\",\n \"unauthorized\": \"Please login first\",\n \"serverError\": \"Server error, please try later\",\n \"timeout\": \"Request timeout\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"Loading...\",\n \"avatarAlt\": \"Member avatar\",\n \"pointsBalance\": \"My Points\",\n \"menuLabel\": \"Member navigation\",\n \"menu\": {\n \"pointsDetail\": \"Points History\",\n \"levelDetail\": \"Level Benefits\",\n \"coupons\": \"My Coupons\",\n \"referral\": \"Invite Friends\",\n \"checkin\": \"Daily Check-in\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"Points History\",\n \"empty\": \"No points transactions yet\",\n \"loading\": \"Loading...\",\n \"noMore\": \"No more records\",\n \"listLabel\": \"Points transactions\",\n \"status\": {\n \"pending\": \"Pending\",\n \"active\": \"Active\",\n \"used\": \"Used\",\n \"expired\": \"Expired\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"Loading...\",\n \"maxLevel\": \"Max level reached\",\n \"progressLabel\": \"Level progress\",\n \"noBenefits\": \"No benefits yet\",\n \"nextLevel\": \"Next level: {name}\",\n \"benefitsTitle\": \"My Benefits\"\n },\n \"couponList\": {\n \"title\": \"My Coupons\",\n \"tabsLabel\": \"Coupon categories\",\n \"listLabel\": \"Coupon list\",\n \"empty\": \"No coupons available\",\n \"freeShipping\": \"Free Shipping\",\n \"giftValue\": \"Gift\",\n \"discountValue\": \"{value}% OFF\",\n \"type\": {\n \"discount\": \"Discount\",\n \"cash\": \"Cash\",\n \"shipping\": \"Shipping\",\n \"gift\": \"Gift\"\n },\n \"tab\": {\n \"available\": \"Available\",\n \"used\": \"Used\",\n \"expired\": \"Expired\"\n }\n },\n \"referralShare\": {\n \"loading\": \"Loading...\",\n \"title\": \"Invite Friends\",\n \"shareTitle\": \"Invite friends to earn points\",\n \"shareText\": \"Join now and get a reward on signup!\",\n \"invitedCount\": \"Invited\",\n \"rewardPoints\": \"Points Earned\",\n \"codeLabel\": \"My Referral Code\",\n \"linkLabel\": \"Referral Link\",\n \"copy\": \"Copy\",\n \"copyCode\": \"Copy referral code\",\n \"share\": \"Share\",\n \"rewardHint\": \"Earn {points} points per friend invited\"\n },\n \"checkinCalendar\": {\n \"loading\": \"Loading...\",\n \"checking\": \"Checking in...\",\n \"checkin\": \"Check In\",\n \"alreadyChecked\": \"Checked in\",\n \"day\": \"{count} days\",\n \"title\": \"Daily Check-in\",\n \"streak\": \"{days} day streak\",\n \"calendarLabel\": \"Check-in calendar\",\n \"rewardsTitle\": \"Streak Rewards\",\n \"rewardsLabel\": \"Streak rewards list\",\n \"weekday\": {\n \"sun\": \"Sun\",\n \"mon\": \"Mon\",\n \"tue\": \"Tue\",\n \"wed\": \"Wed\",\n \"thu\": \"Thu\",\n \"fri\": \"Fri\",\n \"sat\": \"Sat\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"Email\",\n \"passwordLabel\": \"Password\",\n \"submit\": \"Log In\",\n \"createAccount\": \"Create Account\",\n \"forgotPassword\": \"Forgot Password?\",\n \"orDivider\": \"or\"\n },\n \"register\": {\n \"emailLabel\": \"Email\",\n \"passwordLabel\": \"Password\",\n \"confirmPasswordLabel\": \"Confirm Password\",\n \"passwordHint\": \"At least 8 characters, with letters and numbers\",\n \"submit\": \"Create Account\",\n \"submitting\": \"Creating...\",\n \"hasAccount\": \"Already have an account? Log In\",\n \"passwordMismatch\": \"Passwords do not match\"\n },\n \"oauth\": {\n \"continueWith\": \"Continue with {provider}\"\n },\n \"verify\": {\n \"title\": \"Verify Your Email\",\n \"description\": \"We've sent a verification code to your email\",\n \"digitLabel\": \"Digit {index}\",\n \"resend\": \"Resend Code\",\n \"resendCountdown\": \"Resend ({countdown}s)\",\n \"backToRegister\": \"Back to Register\"\n },\n \"forgot\": {\n \"title\": \"Reset Password\",\n \"description\": \"Enter your email and we'll send you a verification code.\",\n \"emailLabel\": \"Email\",\n \"submit\": \"Send Code\",\n \"backToLogin\": \"Back to Login\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"Invalid parameters\",\n \"210901\": \"Tenant ID is required\",\n \"210902\": \"Too many requests, please try later\",\n \"210903\": \"Unauthorized\",\n \"210904\": \"Token expired\",\n \"210905\": \"Invalid token\",\n \"210906\": \"Token refresh failed\",\n \"210907\": \"Platform token exchange failed\",\n \"210908\": \"Invalid refresh token\",\n \"210909\": \"Refresh token expired\",\n \"210911\": \"Member not found\",\n \"210912\": \"Level info not found\",\n \"210920\": \"This email is already registered\",\n \"210921\": \"Password too weak: at least 8 characters with letters and numbers\",\n \"210922\": \"Verification code sent too frequently, please try later\",\n \"210923\": \"Invalid or expired verification code\",\n \"210924\": \"Registration info expired, please register again\",\n \"210925\": \"Incorrect email or password\",\n \"210926\": \"Email not verified, please verify first\",\n \"210927\": \"OAuth authentication failed\",\n \"210928\": \"OAuth state invalid or expired\",\n \"210929\": \"Unsupported login method\",\n \"210930\": \"User creation failed\",\n \"210931\": \"Discount calculation failed\",\n \"210951\": \"Points balance query failed\",\n \"210952\": \"Points transactions query failed\",\n \"210953\": \"Points earning failed\",\n \"210954\": \"Points activation failed\",\n \"210955\": \"Points spending failed\",\n \"210956\": \"Insufficient points balance\",\n \"210957\": \"Points ledger not found\",\n \"210958\": \"Points status does not allow this operation\",\n \"210971\": \"Coupon out of stock\",\n \"210972\": \"Coupon already claimed\",\n \"210981\": \"Message queue write failed\",\n \"210982\": \"Internal service sync failed\",\n \"210983\": \"Exchange product not found\",\n \"210984\": \"Redemption failed\",\n \"210985\": \"Referral code not found\",\n \"210986\": \"Referral binding failed\",\n \"210987\": \"Referrer not found\",\n \"210988\": \"Cannot invite yourself\",\n \"210989\": \"Coupon claim failed\",\n \"210990\": \"Already checked in today\",\n \"210991\": \"Check-in failed\",\n \"211900\": \"Operation failed, please try again\",\n \"211901\": \"Authentication failed\",\n \"211902\": \"Account not bound\",\n \"211903\": \"Access denied\",\n \"211904\": \"Configuration not found\",\n \"211905\": \"Invalid configuration scope\",\n \"211906\": \"Role not found\",\n \"211907\": \"System role cannot be deleted\",\n \"211908\": \"No access to this tenant\",\n \"211909\": \"Validation failed\",\n \"211910\": \"Resource not found\",\n \"211911\": \"Member not found\",\n \"211912\": \"Identity conflict, please contact support\",\n \"211913\": \"Shadow account activation failed\",\n \"211914\": \"Review record not found\",\n \"211915\": \"Review record status is not pending\",\n \"211916\": \"OneID not found\",\n \"211917\": \"OneID unlink failed\",\n \"211931\": \"Level configuration not found\",\n \"211932\": \"Level has associated members, cannot delete\",\n \"211933\": \"Level upgrade condition validation failed\",\n \"211934\": \"Level sequence must be continuous\",\n \"211951\": \"Ledger status transition invalid\",\n \"211952\": \"Insufficient points balance\",\n \"211953\": \"Ledger record not found\",\n \"211954\": \"Duplicate points transaction\",\n \"211955\": \"Invalid points amount\",\n \"211956\": \"Points deduction exceeds max ratio\",\n \"211957\": \"Points below minimum threshold\",\n \"211958\": \"Points earning rule not configured\",\n \"211959\": \"Points activation failed: status is not pending\",\n \"211960\": \"Points transaction access denied\",\n \"211961\": \"Points already expired\",\n \"211962\": \"Growth rule not configured\",\n \"211971\": \"Coupon template not found\",\n \"211972\": \"Coupon template status invalid\",\n \"211973\": \"Coupon per-user limit exceeded\",\n \"211974\": \"Coupon total quota exceeded\",\n \"211975\": \"Coupon redemption status invalid\",\n \"211976\": \"Coupon expired\",\n \"211977\": \"Coupon template has issued coupons, cannot delete\",\n \"211981\": \"Push task not found\",\n \"211982\": \"Push task status does not allow editing\",\n \"211983\": \"Push task status does not allow cancellation\",\n \"211984\": \"Push template not found\",\n \"211985\": \"Push target audience is empty\",\n \"211991\": \"Service busy, please try again later\",\n \"211992\": \"Message publish failed\",\n \"211993\": \"Message entered dead letter queue\",\n \"211001\": \"Webhook signature verification failed\",\n \"211002\": \"Unsupported webhook platform\",\n \"211003\": \"Duplicate webhook request\",\n \"211004\": \"Webhook secret not configured\",\n \"211005\": \"Webhook timestamp expired\",\n \"network\": \"Network error, please check your connection\",\n \"timeout\": \"Request timeout, please try again\",\n \"aborted\": \"Request was cancelled\",\n \"parse\": \"Response parse error\",\n \"unauthorized\": \"Please login first\",\n \"config\": \"SDK initialization error\",\n \"unknown\": \"An unknown error occurred\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"会員センター\",\n \"points\": \"ポイント\",\n \"level\": \"ランク\",\n \"coupons\": \"クーポン\",\n \"checkin\": \"チェックイン\",\n \"history\": \"履歴\",\n \"balance\": \"残高\",\n \"expire\": \"期限切れ\",\n \"confirm\": \"確認\",\n \"cancel\": \"キャンセル\",\n \"loading\": \"読み込み中...\",\n \"noData\": \"データがありません\",\n \"retry\": \"再試行\",\n \"success\": \"成功\",\n \"failed\": \"失敗\"\n },\n \"points\": {\n \"earn\": \"{amount} ポイント獲得\",\n \"spend\": \"{amount} ポイント消費\",\n \"balance\": \"現在の残高:{amount} ポイント\",\n \"expired\": \"{amount} ポイントが期限切れになりました\",\n \"estimated\": \"見積もり中(確認待ち)\"\n },\n \"level\": {\n \"current\": \"現在のランク:{name}\",\n \"nextLevel\": \"次のランク:{name}\",\n \"progress\": \"次のランクまで {current}/{target}\",\n \"upgraded\": \"おめでとうございます!{name} にランクアップしました\"\n },\n \"coupon\": {\n \"claim\": \"受け取る\",\n \"claimed\": \"受取済み\",\n \"expired\": \"期限切れ\",\n \"used\": \"使用済み\",\n \"validUntil\": \"有効期限:{date}\"\n },\n \"checkin\": {\n \"today\": \"今日のチェックイン\",\n \"done\": \"チェックイン済み\",\n \"streak\": \"{days} 日連続チェックイン\",\n \"reward\": \"+{amount} ポイント\"\n },\n \"errors\": {\n \"network\": \"ネットワークエラー、再試行してください\",\n \"unauthorized\": \"ログインしてください\",\n \"serverError\": \"サーバーエラー、しばらくしてからお試しください\",\n \"timeout\": \"リクエストタイムアウト\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"読み込み中...\",\n \"avatarAlt\": \"会員アバター\",\n \"pointsBalance\": \"マイポイント\",\n \"menuLabel\": \"会員機能ナビゲーション\",\n \"menu\": {\n \"pointsDetail\": \"ポイント明細\",\n \"levelDetail\": \"ランク特典\",\n \"coupons\": \"マイクーポン\",\n \"referral\": \"友達招待\",\n \"checkin\": \"毎日チェックイン\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"ポイント明細\",\n \"empty\": \"ポイント履歴がありません\",\n \"loading\": \"読み込み中...\",\n \"noMore\": \"これ以上ありません\",\n \"listLabel\": \"ポイント履歴\",\n \"status\": {\n \"pending\": \"確認待ち\",\n \"active\": \"有効\",\n \"used\": \"使用済み\",\n \"expired\": \"期限切れ\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"読み込み中...\",\n \"maxLevel\": \"最高ランク達成\",\n \"progressLabel\": \"ランク進捗\",\n \"noBenefits\": \"特典がありません\",\n \"nextLevel\": \"次のランク:{name}\",\n \"benefitsTitle\": \"マイ特典\"\n },\n \"couponList\": {\n \"title\": \"マイクーポン\",\n \"tabsLabel\": \"クーポン分類\",\n \"listLabel\": \"クーポン一覧\",\n \"empty\": \"クーポンがありません\",\n \"freeShipping\": \"送料無料\",\n \"giftValue\": \"ギフト\",\n \"discountValue\": \"{value}% 割引\",\n \"type\": {\n \"discount\": \"割引券\",\n \"cash\": \"現金券\",\n \"shipping\": \"送料券\",\n \"gift\": \"ギフト券\"\n },\n \"tab\": {\n \"available\": \"利用可能\",\n \"used\": \"使用済み\",\n \"expired\": \"期限切れ\"\n }\n },\n \"referralShare\": {\n \"loading\": \"読み込み中...\",\n \"title\": \"友達招待\",\n \"shareTitle\": \"友達招待でポイントゲット\",\n \"shareText\": \"今すぐ会員登録してプレゼントをゲット!\",\n \"invitedCount\": \"招待済み\",\n \"rewardPoints\": \"獲得ポイント\",\n \"codeLabel\": \"招待コード\",\n \"linkLabel\": \"招待リンク\",\n \"copy\": \"コピー\",\n \"copyCode\": \"招待コードをコピー\",\n \"share\": \"シェア\",\n \"rewardHint\": \"1人招待で {points} ポイント獲得\"\n },\n \"checkinCalendar\": {\n \"loading\": \"読み込み中...\",\n \"checking\": \"チェックイン中...\",\n \"checkin\": \"チェックイン\",\n \"alreadyChecked\": \"本日チェックイン済み\",\n \"day\": \"{count} 日\",\n \"title\": \"毎日チェックイン\",\n \"streak\": \"{days} 日連続\",\n \"calendarLabel\": \"チェックインカレンダー\",\n \"rewardsTitle\": \"連続チェックイン特典\",\n \"rewardsLabel\": \"特典一覧\",\n \"weekday\": {\n \"sun\": \"日\",\n \"mon\": \"月\",\n \"tue\": \"火\",\n \"wed\": \"水\",\n \"thu\": \"木\",\n \"fri\": \"金\",\n \"sat\": \"土\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"メールアドレス\",\n \"passwordLabel\": \"パスワード\",\n \"submit\": \"ログイン\",\n \"createAccount\": \"アカウント作成\",\n \"forgotPassword\": \"パスワードをお忘れですか?\",\n \"orDivider\": \"または\"\n },\n \"register\": {\n \"emailLabel\": \"メールアドレス\",\n \"passwordLabel\": \"パスワード\",\n \"confirmPasswordLabel\": \"パスワード確認\",\n \"passwordHint\": \"8文字以上、英字と数字を含む\",\n \"submit\": \"アカウント作成\",\n \"hasAccount\": \"アカウントをお持ちですか?ログイン\",\n \"passwordMismatch\": \"パスワードが一致しません\"\n },\n \"oauth\": {\n \"continueWith\": \"{provider} で続ける\"\n },\n \"verify\": {\n \"resend\": \"コードを再送信\",\n \"resendCountdown\": \"再送信({countdown}秒)\"\n },\n \"forgot\": {\n \"title\": \"パスワードリセット\",\n \"description\": \"メールアドレスを入力してください。確認コードをお送りします。\",\n \"emailLabel\": \"メールアドレス\",\n \"submit\": \"コードを送信\",\n \"backToLogin\": \"ログインに戻る\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"パラメータエラー\",\n \"210901\": \"テナントIDが必要です\",\n \"210902\": \"リクエスト頻度超過、しばらくしてから再試行してください\",\n \"210903\": \"未認証\",\n \"210904\": \"トークンが期限切れです\",\n \"210905\": \"無効なトークン\",\n \"210906\": \"トークンの更新に失敗しました\",\n \"210907\": \"プラットフォームトークンの交換に失敗しました\",\n \"210908\": \"リフレッシュトークンが無効です\",\n \"210909\": \"リフレッシュトークンが期限切れです\",\n \"210911\": \"会員が見つかりません\",\n \"210912\": \"会員ランク情報が見つかりません\",\n \"210920\": \"このメールアドレスは既に登録されています\",\n \"210921\": \"パスワード強度不足:8文字以上、英数字を含む必要があります\",\n \"210922\": \"認証コードの送信が頻繁すぎます、しばらくしてから再試行してください\",\n \"210923\": \"認証コードが無効または期限切れです\",\n \"210924\": \"登録情報が期限切れです、再度登録してください\",\n \"210925\": \"メールアドレスまたはパスワードが正しくありません\",\n \"210926\": \"メール未認証です、先に認証を完了してください\",\n \"210927\": \"OAuth 認証に失敗しました\",\n \"210928\": \"OAuth state が無効または期限切れです\",\n \"210929\": \"サポートされていないログイン方法です\",\n \"210930\": \"ユーザー作成に失敗しました\",\n \"210931\": \"割引計算に失敗しました\",\n \"210951\": \"ポイント残高の照会に失敗しました\",\n \"210952\": \"ポイント取引の照会に失敗しました\",\n \"210953\": \"ポイント獲得に失敗しました\",\n \"210954\": \"ポイント有効化に失敗しました\",\n \"210955\": \"ポイント消費に失敗しました\",\n \"210956\": \"ポイント残高不足\",\n \"210957\": \"ポイント記録が見つかりません\",\n \"210958\": \"ポイントのステータスがこの操作を許可していません\",\n \"210971\": \"クーポンが売り切れです\",\n \"210972\": \"このクーポンは既に取得済みです\",\n \"210981\": \"メッセージキュー書き込みに失敗しました\",\n \"210982\": \"内部サービス同期に失敗しました\",\n \"210983\": \"交換商品が見つかりません\",\n \"210984\": \"交換に失敗しました\",\n \"210985\": \"招待コードが見つかりません\",\n \"210986\": \"招待者のバインドに失敗しました\",\n \"210987\": \"招待者が見つかりません\",\n \"210988\": \"自分自身を招待できません\",\n \"210989\": \"クーポン取得に失敗しました\",\n \"210990\": \"本日は既にチェックイン済みです\",\n \"210991\": \"チェックインに失敗しました\",\n \"211900\": \"操作に失敗しました。しばらくしてから再試行してください\",\n \"211901\": \"認証に失敗しました\",\n \"211902\": \"このアカウントは管理権限にバインドされていません\",\n \"211903\": \"操作権限がありません\",\n \"211904\": \"設定項目が見つかりません\",\n \"211905\": \"設定スコープが不正です\",\n \"211906\": \"ロールが見つかりません\",\n \"211907\": \"システムロールは削除できません\",\n \"211908\": \"管理者にはこのテナントへのアクセス権がありません\",\n \"211909\": \"パラメータ検証に失敗しました\",\n \"211910\": \"リソースが見つかりません\",\n \"211911\": \"会員情報が見つかりません\",\n \"211912\": \"アイデンティティの競合、サポートにお問い合わせください\",\n \"211913\": \"シャドウアカウントの有効化に失敗しました\",\n \"211914\": \"審査レコードが見つかりません\",\n \"211915\": \"審査レコードのステータスが保留中ではありません\",\n \"211916\": \"OneID が見つかりません\",\n \"211917\": \"OneID の関連解除に失敗しました\",\n \"211931\": \"ランク設定が見つかりません\",\n \"211932\": \"ランクに関連会員があり、削除できません\",\n \"211933\": \"アップグレード条件の検証に失敗しました\",\n \"211934\": \"ランク順序は連続である必要があります\",\n \"211951\": \"ポイントステータス遷移が不正です\",\n \"211952\": \"ポイント残高不足\",\n \"211953\": \"ポイント記録が見つかりません\",\n \"211954\": \"ポイント取引の重複\",\n \"211955\": \"ポイント消費数量が無効です\",\n \"211956\": \"ポイント差引が最大比率を超えています\",\n \"211957\": \"ポイントが最低消費閾値に達していません\",\n \"211958\": \"ポイント獲得ルールが未設定\",\n \"211959\": \"ポイント有効化に失敗:ステータスが保留中ではありません\",\n \"211960\": \"ポイント取引の照会権限がありません\",\n \"211961\": \"ポイント期限切れは処理済みです\",\n \"211962\": \"成長値ルールが未設定\",\n \"211971\": \"クーポンテンプレートが見つかりません\",\n \"211972\": \"クーポンテンプレートのステータスが発行可能ではありません\",\n \"211973\": \"クーポンのユーザーごとの取得上限を超えました\",\n \"211974\": \"クーポンの総発行量を超えました\",\n \"211975\": \"クーポンの利用ステータスが無効です\",\n \"211976\": \"クーポンが期限切れです\",\n \"211977\": \"クーポンテンプレートは発行済みのため削除できません\",\n \"211981\": \"プッシュタスクが見つかりません\",\n \"211982\": \"プッシュタスクのステータスが編集を許可していません\",\n \"211983\": \"プッシュタスクのステータスがキャンセルを許可していません\",\n \"211984\": \"プッシュテンプレートが見つかりません\",\n \"211985\": \"プッシュ対象が空です\",\n \"211991\": \"サービスが混雑しています、しばらくしてから再試行してください\",\n \"211992\": \"メッセージの発行に失敗しました\",\n \"211993\": \"メッセージがデッドレターキューに入りました\",\n \"211001\": \"Webhook 署名検証失敗\",\n \"211002\": \"サポートされていない Webhook プラットフォーム\",\n \"211003\": \"Webhook リクエスト重複\",\n \"211004\": \"Webhook Secret が未設定\",\n \"211005\": \"Webhook タイムスタンプが期限切れ\",\n \"network\": \"ネットワークエラー、接続を確認してください\",\n \"timeout\": \"リクエストタイムアウト、再試行してください\",\n \"aborted\": \"リクエストはキャンセルされました\",\n \"parse\": \"レスポンス解析エラー\",\n \"unauthorized\": \"ログインしてください\",\n \"config\": \"SDK 初期化エラー\",\n \"unknown\": \"不明なエラーが発生しました\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"회원센터\",\n \"points\": \"포인트\",\n \"level\": \"등급\",\n \"coupons\": \"쿠폰\",\n \"checkin\": \"출석체크\",\n \"history\": \"이력\",\n \"balance\": \"잔액\",\n \"expire\": \"만료\",\n \"confirm\": \"확인\",\n \"cancel\": \"취소\",\n \"loading\": \"로딩 중...\",\n \"noData\": \"데이터가 없습니다\",\n \"retry\": \"재시도\",\n \"success\": \"성공\",\n \"failed\": \"실패\"\n },\n \"points\": {\n \"earn\": \"{amount} 포인트 적립\",\n \"spend\": \"{amount} 포인트 사용\",\n \"balance\": \"현재 잔액: {amount} 포인트\",\n \"expired\": \"{amount} 포인트가 만료되었습니다\",\n \"estimated\": \"예상 (확인 대기 중)\"\n },\n \"level\": {\n \"current\": \"현재 등급: {name}\",\n \"nextLevel\": \"다음 등급: {name}\",\n \"progress\": \"다음 등급까지 {current}/{target}\",\n \"upgraded\": \"축하합니다! {name}(으)로 승급했습니다\"\n },\n \"coupon\": {\n \"claim\": \"받기\",\n \"claimed\": \"수령 완료\",\n \"expired\": \"만료됨\",\n \"used\": \"사용됨\",\n \"validUntil\": \"유효기간: {date}\"\n },\n \"checkin\": {\n \"today\": \"오늘 출석체크\",\n \"done\": \"출석 완료\",\n \"streak\": \"{days}일 연속 출석\",\n \"reward\": \"+{amount} 포인트\"\n },\n \"errors\": {\n \"network\": \"네트워크 오류, 다시 시도해주세요\",\n \"unauthorized\": \"로그인이 필요합니다\",\n \"serverError\": \"서버 오류, 잠시 후 다시 시도해주세요\",\n \"timeout\": \"요청 시간 초과\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"로딩 중...\",\n \"avatarAlt\": \"회원 아바타\",\n \"pointsBalance\": \"내 포인트\",\n \"menuLabel\": \"회원 기능 메뉴\",\n \"menu\": {\n \"pointsDetail\": \"포인트 내역\",\n \"levelDetail\": \"등급 혜택\",\n \"coupons\": \"내 쿠폰\",\n \"referral\": \"친구 초대\",\n \"checkin\": \"매일 출석\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"포인트 내역\",\n \"empty\": \"포인트 내역이 없습니다\",\n \"loading\": \"로딩 중...\",\n \"noMore\": \"더 이상 내역이 없습니다\",\n \"listLabel\": \"포인트 내역\",\n \"status\": {\n \"pending\": \"확인 대기\",\n \"active\": \"사용 가능\",\n \"used\": \"사용됨\",\n \"expired\": \"만료됨\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"로딩 중...\",\n \"maxLevel\": \"최고 등급 도달\",\n \"progressLabel\": \"등급 진행도\",\n \"noBenefits\": \"혜택이 없습니다\",\n \"nextLevel\": \"다음 등급: {name}\",\n \"benefitsTitle\": \"내 혜택\"\n },\n \"couponList\": {\n \"title\": \"내 쿠폰\",\n \"tabsLabel\": \"쿠폰 분류\",\n \"listLabel\": \"쿠폰 목록\",\n \"empty\": \"쿠폰이 없습니다\",\n \"freeShipping\": \"무료 배송\",\n \"giftValue\": \"선물\",\n \"discountValue\": \"{value}% 할인\",\n \"type\": {\n \"discount\": \"할인 쿠폰\",\n \"cash\": \"캐시 쿠폰\",\n \"shipping\": \"배송 쿠폰\",\n \"gift\": \"선물 쿠폰\"\n },\n \"tab\": {\n \"available\": \"사용 가능\",\n \"used\": \"사용됨\",\n \"expired\": \"만료됨\"\n }\n },\n \"referralShare\": {\n \"loading\": \"로딩 중...\",\n \"title\": \"친구 초대\",\n \"shareTitle\": \"친구 초대하고 포인트 받기\",\n \"shareText\": \"지금 가입하고 선물을 받아보세요!\",\n \"invitedCount\": \"초대 완료\",\n \"rewardPoints\": \"획득 포인트\",\n \"codeLabel\": \"내 초대 코드\",\n \"linkLabel\": \"초대 링크\",\n \"copy\": \"복사\",\n \"copyCode\": \"초대 코드 복사\",\n \"share\": \"공유\",\n \"rewardHint\": \"친구 1명 초대 시 {points} 포인트\"\n },\n \"checkinCalendar\": {\n \"loading\": \"로딩 중...\",\n \"checking\": \"출석체크 중...\",\n \"checkin\": \"출석체크\",\n \"alreadyChecked\": \"오늘 출석 완료\",\n \"day\": \"{count}일\",\n \"title\": \"매일 출석\",\n \"streak\": \"{days}일 연속\",\n \"calendarLabel\": \"출석 달력\",\n \"rewardsTitle\": \"연속 출석 보상\",\n \"rewardsLabel\": \"보상 목록\",\n \"weekday\": {\n \"sun\": \"일\",\n \"mon\": \"월\",\n \"tue\": \"화\",\n \"wed\": \"수\",\n \"thu\": \"목\",\n \"fri\": \"금\",\n \"sat\": \"토\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"이메일\",\n \"passwordLabel\": \"비밀번호\",\n \"submit\": \"로그인\",\n \"createAccount\": \"계정 만들기\",\n \"forgotPassword\": \"비밀번호를 잊으셨나요?\",\n \"orDivider\": \"또는\"\n },\n \"register\": {\n \"emailLabel\": \"이메일\",\n \"passwordLabel\": \"비밀번호\",\n \"confirmPasswordLabel\": \"비밀번호 확인\",\n \"passwordHint\": \"8자 이상, 영문과 숫자 포함\",\n \"submit\": \"계정 만들기\",\n \"hasAccount\": \"이미 계정이 있으신가요? 로그인\",\n \"passwordMismatch\": \"비밀번호가 일치하지 않습니다\"\n },\n \"oauth\": {\n \"continueWith\": \"{provider}로 계속하기\"\n },\n \"verify\": {\n \"resend\": \"인증코드 재전송\",\n \"resendCountdown\": \"재전송 ({countdown}초)\"\n },\n \"forgot\": {\n \"title\": \"비밀번호 재설정\",\n \"description\": \"이메일을 입력하시면 인증코드를 보내드립니다.\",\n \"emailLabel\": \"이메일\",\n \"submit\": \"코드 전송\",\n \"backToLogin\": \"로그인으로 돌아가기\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"매개변수 오류\",\n \"210901\": \"테넌트 ID가 필요합니다\",\n \"210902\": \"요청 빈도 초과, 잠시 후 다시 시도해주세요\",\n \"210903\": \"미인증\",\n \"210904\": \"토큰이 만료되었습니다\",\n \"210905\": \"유효하지 않은 토큰\",\n \"210906\": \"토큰 갱신 실패\",\n \"210907\": \"플랫폼 토큰 교환 실패\",\n \"210908\": \"유효하지 않은 리프레시 토큰\",\n \"210909\": \"리프레시 토큰이 만료되었습니다\",\n \"210911\": \"회원을 찾을 수 없습니다\",\n \"210912\": \"회원 등급 정보를 찾을 수 없습니다\",\n \"210920\": \"이 이메일은 이미 등록되어 있습니다\",\n \"210921\": \"비밀번호 강도 부족: 8자 이상, 영문과 숫자 포함 필요\",\n \"210922\": \"인증 코드 전송이 너무 빈번합니다, 잠시 후 다시 시도해주세요\",\n \"210923\": \"인증 코드가 잘못되었거나 만료되었습니다\",\n \"210924\": \"등록 정보가 만료되었습니다, 다시 등록해주세요\",\n \"210925\": \"이메일 또는 비밀번호가 올바르지 않습니다\",\n \"210926\": \"이메일 미인증, 먼저 인증을 완료해주세요\",\n \"210927\": \"OAuth 인증 실패\",\n \"210928\": \"OAuth state가 유효하지 않거나 만료되었습니다\",\n \"210929\": \"지원하지 않는 로그인 방식입니다\",\n \"210930\": \"사용자 생성 실패\",\n \"210931\": \"할인 계산 실패\",\n \"210951\": \"포인트 잔액 조회 실패\",\n \"210952\": \"포인트 거래 조회 실패\",\n \"210953\": \"포인트 획득 실패\",\n \"210954\": \"포인트 활성화 실패\",\n \"210955\": \"포인트 소비 실패\",\n \"210956\": \"포인트 잔액 부족\",\n \"210957\": \"포인트 기록을 찾을 수 없습니다\",\n \"210958\": \"포인트 상태가 이 작업을 허용하지 않습니다\",\n \"210971\": \"쿠폰이 소진되었습니다\",\n \"210972\": \"이미 받은 쿠폰입니다\",\n \"210981\": \"메시지 큐 쓰기 실패\",\n \"210982\": \"내부 서비스 동기화 실패\",\n \"210983\": \"교환 상품을 찾을 수 없습니다\",\n \"210984\": \"교환 실패\",\n \"210985\": \"초대 코드를 찾을 수 없습니다\",\n \"210986\": \"초대자 바인딩 실패\",\n \"210987\": \"초대자를 찾을 수 없습니다\",\n \"210988\": \"자신을 초대할 수 없습니다\",\n \"210989\": \"쿠폰 받기 실패\",\n \"210990\": \"오늘 이미 출석했습니다\",\n \"210991\": \"출석 실패\",\n \"211900\": \"작업에 실패했습니다. 다시 시도해주세요\",\n \"211901\": \"인증에 실패했습니다\",\n \"211902\": \"이 계정은 관리 권한에 바인딩되지 않았습니다\",\n \"211903\": \"작업 권한이 없습니다\",\n \"211904\": \"설정 항목을 찾을 수 없습니다\",\n \"211905\": \"설정 범위가 잘못되었���니다\",\n \"211906\": \"역할을 찾을 수 없습니다\",\n \"211907\": \"시스템 역할은 삭제할 수 없습니다\",\n \"211908\": \"관리자에게 이 테넌트에 대한 접근 권한이 없습니다\",\n \"211909\": \"매개변수 검증 실패\",\n \"211910\": \"리소스를 찾을 수 없습니다\",\n \"211911\": \"회원 정보를 찾을 수 없습니다\",\n \"211912\": \"신원 충돌, 고객센터로 문의해주세요\",\n \"211913\": \"섀도우 계정 활성화 실패\",\n \"211914\": \"심사 기록을 찾을 수 없습니다\",\n \"211915\": \"심사 기록 상태가 대기 중이 아닙니다\",\n \"211916\": \"OneID를 찾을 수 없습니다\",\n \"211917\": \"OneID 연결 해제 실패\",\n \"211931\": \"등급 설정을 찾을 수 없습니다\",\n \"211932\": \"등급에 연결된 회원이 있어 삭제할 수 없습니다\",\n \"211933\": \"승급 조건 검증 실패\",\n \"211934\": \"등급 순서는 연속적이어야 합니다\",\n \"211951\": \"포인트 상태 전환이 잘못되었습니다\",\n \"211952\": \"포인트 잔액 부족\",\n \"211953\": \"포인트 기록을 찾을 수 없습니다\",\n \"211954\": \"포인트 거래 중복\",\n \"211955\": \"포인트 소비 수량이 유효하지 않습니다\",\n \"211956\": \"포인트 차감이 최대 비율을 초과했습니다\",\n \"211957\": \"포인트가 최소 소비 임계값에 도달하지 않았습니다\",\n \"211958\": \"포인트 획득 규칙이 설정되지 않음\",\n \"211959\": \"포인트 활성화 실패: 상태가 대기 중이 아닙니다\",\n \"211960\": \"포인트 거래 조회 권한 없음\",\n \"211961\": \"포인트 만료 처리 완료\",\n \"211962\": \"성장값 규칙이 설정되지 않음\",\n \"211971\": \"쿠폰 템플릿을 찾을 수 없습니다\",\n \"211972\": \"쿠폰 템플릿 상태가 발급 가능하지 않습니다\",\n \"211973\": \"쿠폰 사용자별 수령 한도 초과\",\n \"211974\": \"쿠폰 총 발급량 초과\",\n \"211975\": \"쿠폰 사용 상태가 유효하지 않습니다\",\n \"211976\": \"쿠폰이 만료되었습니다\",\n \"211977\": \"쿠폰 템플릿이 발급되어 삭제할 수 없습니다\",\n \"211981\": \"푸시 작업을 찾을 수 없습니다\",\n \"211982\": \"푸시 작업 상태가 편집을 허용하지 않습니다\",\n \"211983\": \"푸시 작업 상태가 취소를 허용하지 않습니다\",\n \"211984\": \"푸시 템플릿을 찾을 수 없습니다\",\n \"211985\": \"푸시 대상이 비어 있습니다\",\n \"211991\": \"서비스 혼잡, 잠시 후 다시 시도해주세요\",\n \"211992\": \"메시지 발행 실패\",\n \"211993\": \"메시지가 데드레터 큐에 들어갔습니다\",\n \"211001\": \"Webhook 서명 검증 실패\",\n \"211002\": \"지원하지 않는 Webhook 플랫폼\",\n \"211003\": \"Webhook 요청 중복\",\n \"211004\": \"Webhook Secret 미설정\",\n \"211005\": \"Webhook 타임스탬프 만료\",\n \"network\": \"네트워크 오류, 연결을 확인해주세요\",\n \"timeout\": \"요청 시간 초과, 다시 시도해주세요\",\n \"aborted\": \"요청이 취소되었습니다\",\n \"parse\": \"응답 파싱 오류\",\n \"unauthorized\": \"로그인이 필요합니다\",\n \"config\": \"SDK 초기화 오류\",\n \"unknown\": \"알 수 없는 오류가 발생했습니다\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"Espace membre\",\n \"points\": \"Points\",\n \"level\": \"Niveau\",\n \"coupons\": \"Coupons\",\n \"checkin\": \"Connexion quotidienne\",\n \"history\": \"Historique\",\n \"balance\": \"Solde\",\n \"expire\": \"Expirer\",\n \"confirm\": \"Confirmer\",\n \"cancel\": \"Annuler\",\n \"loading\": \"Chargement...\",\n \"noData\": \"Aucune donnée\",\n \"retry\": \"Réessayer\",\n \"success\": \"Succès\",\n \"failed\": \"Échec\"\n },\n \"points\": {\n \"earn\": \"{amount} points gagnés\",\n \"spend\": \"{amount} points dépensés\",\n \"balance\": \"Solde actuel : {amount} points\",\n \"expired\": \"{amount} points expirés\",\n \"estimated\": \"Estimation (en attente de confirmation)\"\n },\n \"level\": {\n \"current\": \"Niveau actuel : {name}\",\n \"nextLevel\": \"Niveau suivant : {name}\",\n \"progress\": \"{current}/{target} pour le niveau suivant\",\n \"upgraded\": \"Félicitations ! Niveau {name} atteint\"\n },\n \"coupon\": {\n \"claim\": \"Récupérer\",\n \"claimed\": \"Récupéré\",\n \"expired\": \"Expiré\",\n \"used\": \"Utilisé\",\n \"validUntil\": \"Valable jusqu'au {date}\"\n },\n \"checkin\": {\n \"today\": \"Connexion du jour\",\n \"done\": \"Déjà connecté\",\n \"streak\": \"{days} jours consécutifs\",\n \"reward\": \"+{amount} points\"\n },\n \"errors\": {\n \"network\": \"Erreur réseau, veuillez réessayer\",\n \"unauthorized\": \"Veuillez vous connecter\",\n \"serverError\": \"Erreur serveur, veuillez réessayer plus tard\",\n \"timeout\": \"Délai d'attente dépassé\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"Chargement...\",\n \"avatarAlt\": \"Avatar du membre\",\n \"pointsBalance\": \"Mes points\",\n \"menuLabel\": \"Navigation membre\",\n \"menu\": {\n \"pointsDetail\": \"Historique des points\",\n \"levelDetail\": \"Avantages du niveau\",\n \"coupons\": \"Mes coupons\",\n \"referral\": \"Inviter des amis\",\n \"checkin\": \"Connexion quotidienne\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"Historique des points\",\n \"empty\": \"Aucun historique de points\",\n \"loading\": \"Chargement...\",\n \"noMore\": \"Plus aucun enregistrement\",\n \"listLabel\": \"Transactions de points\",\n \"status\": {\n \"pending\": \"En attente\",\n \"active\": \"Actif\",\n \"used\": \"Utilisé\",\n \"expired\": \"Expiré\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"Chargement...\",\n \"maxLevel\": \"Niveau maximum atteint\",\n \"progressLabel\": \"Progression du niveau\",\n \"noBenefits\": \"Aucun avantage\",\n \"nextLevel\": \"Niveau suivant : {name}\",\n \"benefitsTitle\": \"Mes avantages\"\n },\n \"couponList\": {\n \"title\": \"Mes coupons\",\n \"tabsLabel\": \"Catégories de coupons\",\n \"listLabel\": \"Liste des coupons\",\n \"empty\": \"Aucun coupon disponible\",\n \"freeShipping\": \"Livraison gratuite\",\n \"giftValue\": \"Cadeau\",\n \"discountValue\": \"{value}% de réduction\",\n \"type\": {\n \"discount\": \"Réduction\",\n \"cash\": \"Espèces\",\n \"shipping\": \"Livraison\",\n \"gift\": \"Cadeau\"\n },\n \"tab\": {\n \"available\": \"Disponible\",\n \"used\": \"Utilisé\",\n \"expired\": \"Expiré\"\n }\n },\n \"referralShare\": {\n \"loading\": \"Chargement...\",\n \"title\": \"Inviter des amis\",\n \"shareTitle\": \"Invitez vos amis et gagnez des points\",\n \"shareText\": \"Inscrivez-vous et recevez un cadeau !\",\n \"invitedCount\": \"Invités\",\n \"rewardPoints\": \"Points gagnés\",\n \"codeLabel\": \"Mon code de parrainage\",\n \"linkLabel\": \"Lien de parrainage\",\n \"copy\": \"Copier\",\n \"copyCode\": \"Copier le code de parrainage\",\n \"share\": \"Partager\",\n \"rewardHint\": \"Gagnez {points} points par ami invité\"\n },\n \"checkinCalendar\": {\n \"loading\": \"Chargement...\",\n \"checking\": \"Connexion en cours...\",\n \"checkin\": \"Se connecter\",\n \"alreadyChecked\": \"Déjà connecté\",\n \"day\": \"{count} jours\",\n \"title\": \"Connexion quotidienne\",\n \"streak\": \"{days} jours consécutifs\",\n \"calendarLabel\": \"Calendrier de connexion\",\n \"rewardsTitle\": \"Récompenses de série\",\n \"rewardsLabel\": \"Liste des récompenses\",\n \"weekday\": {\n \"sun\": \"Dim\",\n \"mon\": \"Lun\",\n \"tue\": \"Mar\",\n \"wed\": \"Mer\",\n \"thu\": \"Jeu\",\n \"fri\": \"Ven\",\n \"sat\": \"Sam\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"E-mail\",\n \"passwordLabel\": \"Mot de passe\",\n \"submit\": \"Se connecter\",\n \"createAccount\": \"Créer un compte\",\n \"forgotPassword\": \"Mot de passe oublié ?\",\n \"orDivider\": \"ou\"\n },\n \"register\": {\n \"emailLabel\": \"E-mail\",\n \"passwordLabel\": \"Mot de passe\",\n \"confirmPasswordLabel\": \"Confirmer le mot de passe\",\n \"passwordHint\": \"Au moins 8 caractères, avec des lettres et des chiffres\",\n \"submit\": \"Créer un compte\",\n \"hasAccount\": \"Vous avez déjà un compte ? Se connecter\",\n \"passwordMismatch\": \"Les mots de passe ne correspondent pas\"\n },\n \"oauth\": {\n \"continueWith\": \"Continuer avec {provider}\"\n },\n \"verify\": {\n \"resend\": \"Renvoyer le code\",\n \"resendCountdown\": \"Renvoyer ({countdown}s)\"\n },\n \"forgot\": {\n \"title\": \"Réinitialiser le mot de passe\",\n \"description\": \"Entrez votre e-mail et nous vous enverrons un code de vérification.\",\n \"emailLabel\": \"E-mail\",\n \"submit\": \"Envoyer le code\",\n \"backToLogin\": \"Retour à la connexion\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"Paramètres invalides\",\n \"210901\": \"L'identifiant du locataire est requis\",\n \"210902\": \"Trop de requêtes, veuillez réessayer plus tard\",\n \"210903\": \"Non autorisé\",\n \"210904\": \"Jeton expiré\",\n \"210905\": \"Jeton invalide\",\n \"210906\": \"Échec du rafraîchissement du jeton\",\n \"210907\": \"Échec de l'échange de jeton de la plateforme\",\n \"210908\": \"Jeton de rafraîchissement invalide\",\n \"210909\": \"Jeton de rafraîchissement expiré\",\n \"210911\": \"Membre introuvable\",\n \"210912\": \"Informations de niveau introuvables\",\n \"210920\": \"Cet e-mail est déjà enregistré\",\n \"210921\": \"Mot de passe trop faible : au moins 8 caractères avec des lettres et des chiffres\",\n \"210922\": \"Code de vérification envoyé trop fréquemment, veuillez réessayer plus tard\",\n \"210923\": \"Code de vérification invalide ou expiré\",\n \"210924\": \"Informations d'inscription expirées, veuillez vous réinscrire\",\n \"210925\": \"E-mail ou mot de passe incorrect\",\n \"210926\": \"E-mail non vérifié, veuillez d'abord le vérifier\",\n \"210927\": \"Échec de l'authentification OAuth\",\n \"210928\": \"État OAuth invalide ou expiré\",\n \"210929\": \"Méthode de connexion non prise en charge\",\n \"210930\": \"Échec de la création de l'utilisateur\",\n \"210931\": \"Échec du calcul de la remise\",\n \"210951\": \"Échec de la requête du solde de points\",\n \"210952\": \"Échec de la requête des transactions de points\",\n \"210953\": \"Échec de l'accumulation de points\",\n \"210954\": \"Échec de l'activation des points\",\n \"210955\": \"Échec de la dépense de points\",\n \"210956\": \"Solde de points insuffisant\",\n \"210957\": \"Registre de points introuvable\",\n \"210958\": \"Le statut des points ne permet pas cette opération\",\n \"210971\": \"Coupon en rupture de stock\",\n \"210972\": \"Coupon déjà réclamé\",\n \"210981\": \"Échec de l'écriture dans la file de messages\",\n \"210982\": \"Échec de la synchronisation du service interne\",\n \"210983\": \"Produit d'échange introuvable\",\n \"210984\": \"Échec de l'échange\",\n \"210985\": \"Code de parrainage introuvable\",\n \"210986\": \"Échec de la liaison de parrainage\",\n \"210987\": \"Parrain introuvable\",\n \"210988\": \"Vous ne pouvez pas vous inviter vous-même\",\n \"210989\": \"Échec de la réclamation du coupon\",\n \"210990\": \"Déjà enregistré aujourd'hui\",\n \"210991\": \"Échec de l'enregistrement\",\n \"211900\": \"Opération échouée, veuillez réessayer\",\n \"211901\": \"Échec de l'authentification\",\n \"211902\": \"Compte non lié\",\n \"211903\": \"Accès refusé\",\n \"211904\": \"Configuration introuvable\",\n \"211905\": \"Portée de configuration invalide\",\n \"211906\": \"Rôle introuvable\",\n \"211907\": \"Le rôle système ne peut pas être supprimé\",\n \"211908\": \"Pas d'accès à ce locataire\",\n \"211909\": \"Échec de la validation\",\n \"211910\": \"Ressource introuvable\",\n \"211911\": \"Membre introuvable\",\n \"211912\": \"Conflit d'identité, veuillez contacter le support\",\n \"211913\": \"Échec de l'activation du compte fantôme\",\n \"211914\": \"Enregistrement de révision introuvable\",\n \"211915\": \"Le statut de l'enregistrement de révision n'est pas en attente\",\n \"211916\": \"OneID introuvable\",\n \"211917\": \"Échec de la dissociation OneID\",\n \"211931\": \"Configuration de niveau introuvable\",\n \"211932\": \"Le niveau a des membres associés, suppression impossible\",\n \"211933\": \"Échec de la validation de la condition de mise à niveau\",\n \"211934\": \"La séquence des niveaux doit être continue\",\n \"211951\": \"Transition de statut du registre invalide\",\n \"211952\": \"Solde de points insuffisant\",\n \"211953\": \"Enregistrement du registre introuvable\",\n \"211954\": \"Transaction de points en double\",\n \"211955\": \"Montant de points invalide\",\n \"211956\": \"La déduction de points dépasse le ratio maximum\",\n \"211957\": \"Points en dessous du seuil minimum\",\n \"211958\": \"Règle d'accumulation de points non configurée\",\n \"211959\": \"Échec de l'activation des points : le statut n'est pas en attente\",\n \"211960\": \"Accès refusé à la transaction de points\",\n \"211961\": \"Points déjà expirés\",\n \"211962\": \"Règle de croissance non configurée\",\n \"211971\": \"Modèle de coupon introuvable\",\n \"211972\": \"Statut du modèle de coupon invalide\",\n \"211973\": \"Limite de coupons par utilisateur dépassée\",\n \"211974\": \"Quota total de coupons dépassé\",\n \"211975\": \"Statut d'utilisation du coupon invalide\",\n \"211976\": \"Coupon expiré\",\n \"211977\": \"Le modèle de coupon a des coupons émis, suppression impossible\",\n \"211981\": \"Tâche de notification introuvable\",\n \"211982\": \"Le statut de la tâche de notification ne permet pas la modification\",\n \"211983\": \"Le statut de la tâche de notification ne permet pas l'annulation\",\n \"211984\": \"Modèle de notification introuvable\",\n \"211985\": \"L'audience cible de la notification est vide\",\n \"211991\": \"Service occupé, veuillez réessayer plus tard\",\n \"211992\": \"Échec de la publication du message\",\n \"211993\": \"Message entré dans la file des lettres mortes\",\n \"211001\": \"Échec de la vérification de la signature webhook\",\n \"211002\": \"Plateforme webhook non prise en charge\",\n \"211003\": \"Requête webhook en double\",\n \"211004\": \"Secret webhook non configuré\",\n \"211005\": \"Horodatage webhook expiré\",\n \"network\": \"Erreur réseau, veuillez vérifier votre connexion\",\n \"timeout\": \"Délai d'attente dépassé, veuillez réessayer\",\n \"aborted\": \"Requête annulée\",\n \"parse\": \"Erreur d'analyse de la réponse\",\n \"unauthorized\": \"Veuillez d'abord vous connecter\",\n \"config\": \"Erreur d'initialisation du SDK\",\n \"unknown\": \"Une erreur inconnue s'est produite\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"Mitgliederzentrum\",\n \"points\": \"Punkte\",\n \"level\": \"Stufe\",\n \"coupons\": \"Gutscheine\",\n \"checkin\": \"Tägliches Einchecken\",\n \"history\": \"Verlauf\",\n \"balance\": \"Guthaben\",\n \"expire\": \"Ablaufen\",\n \"confirm\": \"Bestätigen\",\n \"cancel\": \"Abbrechen\",\n \"loading\": \"Laden...\",\n \"noData\": \"Keine Daten\",\n \"retry\": \"Erneut versuchen\",\n \"success\": \"Erfolg\",\n \"failed\": \"Fehlgeschlagen\"\n },\n \"points\": {\n \"earn\": \"{amount} Punkte verdient\",\n \"spend\": \"{amount} Punkte ausgegeben\",\n \"balance\": \"Aktuelles Guthaben: {amount} Punkte\",\n \"expired\": \"{amount} Punkte abgelaufen\",\n \"estimated\": \"Geschätzt (Bestätigung ausstehend)\"\n },\n \"level\": {\n \"current\": \"Aktuelle Stufe: {name}\",\n \"nextLevel\": \"Nächste Stufe: {name}\",\n \"progress\": \"{current}/{target} bis zur nächsten Stufe\",\n \"upgraded\": \"Glückwunsch! Aufstieg zu {name}\"\n },\n \"coupon\": {\n \"claim\": \"Einlösen\",\n \"claimed\": \"Eingelöst\",\n \"expired\": \"Abgelaufen\",\n \"used\": \"Verwendet\",\n \"validUntil\": \"Gültig bis {date}\"\n },\n \"checkin\": {\n \"today\": \"Heute einchecken\",\n \"done\": \"Eingecheckt\",\n \"streak\": \"{days} Tage in Folge\",\n \"reward\": \"+{amount} Punkte\"\n },\n \"errors\": {\n \"network\": \"Netzwerkfehler, bitte erneut versuchen\",\n \"unauthorized\": \"Bitte melden Sie sich an\",\n \"serverError\": \"Serverfehler, bitte später erneut versuchen\",\n \"timeout\": \"Zeitüberschreitung\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"Laden...\",\n \"avatarAlt\": \"Mitgliederavatar\",\n \"pointsBalance\": \"Meine Punkte\",\n \"menuLabel\": \"Mitgliedernavigation\",\n \"menu\": {\n \"pointsDetail\": \"Punkteverlauf\",\n \"levelDetail\": \"Stufenvorteile\",\n \"coupons\": \"Meine Gutscheine\",\n \"referral\": \"Freunde einladen\",\n \"checkin\": \"Tägliches Einchecken\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"Punkteverlauf\",\n \"empty\": \"Keine Punkteeinträge\",\n \"loading\": \"Laden...\",\n \"noMore\": \"Keine weiteren Einträge\",\n \"listLabel\": \"Punktetransaktionen\",\n \"status\": {\n \"pending\": \"Ausstehend\",\n \"active\": \"Aktiv\",\n \"used\": \"Verwendet\",\n \"expired\": \"Abgelaufen\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"Laden...\",\n \"maxLevel\": \"Höchste Stufe erreicht\",\n \"progressLabel\": \"Stufenfortschritt\",\n \"noBenefits\": \"Keine Vorteile\",\n \"nextLevel\": \"Nächste Stufe: {name}\",\n \"benefitsTitle\": \"Meine Vorteile\"\n },\n \"couponList\": {\n \"title\": \"Meine Gutscheine\",\n \"tabsLabel\": \"Gutscheinkategorien\",\n \"listLabel\": \"Gutscheinliste\",\n \"empty\": \"Keine Gutscheine verfügbar\",\n \"freeShipping\": \"Kostenloser Versand\",\n \"giftValue\": \"Geschenk\",\n \"discountValue\": \"{value}% Rabatt\",\n \"type\": {\n \"discount\": \"Rabatt\",\n \"cash\": \"Bargeld\",\n \"shipping\": \"Versand\",\n \"gift\": \"Geschenk\"\n },\n \"tab\": {\n \"available\": \"Verfügbar\",\n \"used\": \"Verwendet\",\n \"expired\": \"Abgelaufen\"\n }\n },\n \"referralShare\": {\n \"loading\": \"Laden...\",\n \"title\": \"Freunde einladen\",\n \"shareTitle\": \"Freunde einladen und Punkte verdienen\",\n \"shareText\": \"Jetzt registrieren und ein Geschenk erhalten!\",\n \"invitedCount\": \"Eingeladen\",\n \"rewardPoints\": \"Verdiente Punkte\",\n \"codeLabel\": \"Mein Empfehlungscode\",\n \"linkLabel\": \"Empfehlungslink\",\n \"copy\": \"Kopieren\",\n \"copyCode\": \"Empfehlungscode kopieren\",\n \"share\": \"Teilen\",\n \"rewardHint\": \"{points} Punkte pro eingeladenem Freund\"\n },\n \"checkinCalendar\": {\n \"loading\": \"Laden...\",\n \"checking\": \"Einchecken...\",\n \"checkin\": \"Einchecken\",\n \"alreadyChecked\": \"Heute eingecheckt\",\n \"day\": \"{count} Tage\",\n \"title\": \"Tägliches Einchecken\",\n \"streak\": \"{days} Tage in Folge\",\n \"calendarLabel\": \"Einchecken-Kalender\",\n \"rewardsTitle\": \"Serien-Belohnungen\",\n \"rewardsLabel\": \"Belohnungsliste\",\n \"weekday\": {\n \"sun\": \"So\",\n \"mon\": \"Mo\",\n \"tue\": \"Di\",\n \"wed\": \"Mi\",\n \"thu\": \"Do\",\n \"fri\": \"Fr\",\n \"sat\": \"Sa\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"E-Mail\",\n \"passwordLabel\": \"Passwort\",\n \"submit\": \"Anmelden\",\n \"createAccount\": \"Konto erstellen\",\n \"forgotPassword\": \"Passwort vergessen?\",\n \"orDivider\": \"oder\"\n },\n \"register\": {\n \"emailLabel\": \"E-Mail\",\n \"passwordLabel\": \"Passwort\",\n \"confirmPasswordLabel\": \"Passwort bestätigen\",\n \"passwordHint\": \"Mindestens 8 Zeichen, mit Buchstaben und Zahlen\",\n \"submit\": \"Konto erstellen\",\n \"hasAccount\": \"Bereits ein Konto? Anmelden\",\n \"passwordMismatch\": \"Die Passwörter stimmen nicht überein\"\n },\n \"oauth\": {\n \"continueWith\": \"Weiter mit {provider}\"\n },\n \"verify\": {\n \"resend\": \"Code erneut senden\",\n \"resendCountdown\": \"Erneut senden ({countdown}s)\"\n },\n \"forgot\": {\n \"title\": \"Passwort zurücksetzen\",\n \"description\": \"Geben Sie Ihre E-Mail ein und wir senden Ihnen einen Bestätigungscode.\",\n \"emailLabel\": \"E-Mail\",\n \"submit\": \"Code senden\",\n \"backToLogin\": \"Zurück zur Anmeldung\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"Ungültige Parameter\",\n \"210901\": \"Mandanten-ID ist erforderlich\",\n \"210902\": \"Zu viele Anfragen, bitte versuchen Sie es später erneut\",\n \"210903\": \"Nicht autorisiert\",\n \"210904\": \"Token abgelaufen\",\n \"210905\": \"Ungültiges Token\",\n \"210906\": \"Token-Aktualisierung fehlgeschlagen\",\n \"210907\": \"Plattform-Token-Austausch fehlgeschlagen\",\n \"210908\": \"Ungültiges Aktualisierungstoken\",\n \"210909\": \"Aktualisierungstoken abgelaufen\",\n \"210911\": \"Mitglied nicht gefunden\",\n \"210912\": \"Stufeninformationen nicht gefunden\",\n \"210920\": \"Diese E-Mail ist bereits registriert\",\n \"210921\": \"Passwort zu schwach: mindestens 8 Zeichen mit Buchstaben und Zahlen\",\n \"210922\": \"Bestätigungscode zu häufig gesendet, bitte versuchen Sie es später erneut\",\n \"210923\": \"Ungültiger oder abgelaufener Bestätigungscode\",\n \"210924\": \"Registrierungsinformationen abgelaufen, bitte erneut registrieren\",\n \"210925\": \"Falsche E-Mail oder falsches Passwort\",\n \"210926\": \"E-Mail nicht verifiziert, bitte zuerst verifizieren\",\n \"210927\": \"OAuth-Authentifizierung fehlgeschlagen\",\n \"210928\": \"OAuth-Status ungültig oder abgelaufen\",\n \"210929\": \"Nicht unterstützte Anmeldemethode\",\n \"210930\": \"Benutzererstellung fehlgeschlagen\",\n \"210931\": \"Rabattberechnung fehlgeschlagen\",\n \"210951\": \"Punktestand-Abfrage fehlgeschlagen\",\n \"210952\": \"Punktetransaktions-Abfrage fehlgeschlagen\",\n \"210953\": \"Punkte-Sammlung fehlgeschlagen\",\n \"210954\": \"Punkte-Aktivierung fehlgeschlagen\",\n \"210955\": \"Punkte-Ausgabe fehlgeschlagen\",\n \"210956\": \"Unzureichender Punktestand\",\n \"210957\": \"Punkte-Hauptbuch nicht gefunden\",\n \"210958\": \"Der Punktestatus erlaubt diese Operation nicht\",\n \"210971\": \"Coupon nicht vorrätig\",\n \"210972\": \"Coupon bereits eingelöst\",\n \"210981\": \"Nachrichtenwarteschlange-Schreibfehler\",\n \"210982\": \"Interne Servicesynchronisierung fehlgeschlagen\",\n \"210983\": \"Austauschprodukt nicht gefunden\",\n \"210984\": \"Einlösung fehlgeschlagen\",\n \"210985\": \"Empfehlungscode nicht gefunden\",\n \"210986\": \"Empfehlungsbindung fehlgeschlagen\",\n \"210987\": \"Empfehlungsgeber nicht gefunden\",\n \"210988\": \"Sie können sich nicht selbst einladen\",\n \"210989\": \"Coupon-Einlösung fehlgeschlagen\",\n \"210990\": \"Heute bereits eingecheckt\",\n \"210991\": \"Check-in fehlgeschlagen\",\n \"211900\": \"Operation fehlgeschlagen, bitte versuchen Sie es erneut\",\n \"211901\": \"Authentifizierung fehlgeschlagen\",\n \"211902\": \"Konto nicht verknüpft\",\n \"211903\": \"Zugriff verweigert\",\n \"211904\": \"Konfiguration nicht gefunden\",\n \"211905\": \"Ungültiger Konfigurationsbereich\",\n \"211906\": \"Rolle nicht gefunden\",\n \"211907\": \"Systemrolle kann nicht gelöscht werden\",\n \"211908\": \"Kein Zugriff auf diesen Mandanten\",\n \"211909\": \"Validierung fehlgeschlagen\",\n \"211910\": \"Ressource nicht gefunden\",\n \"211911\": \"Mitglied nicht gefunden\",\n \"211912\": \"Identitätskonflikt, bitte kontaktieren Sie den Support\",\n \"211913\": \"Schattenkontoaktivierung fehlgeschlagen\",\n \"211914\": \"Überprüfungsdatensatz nicht gefunden\",\n \"211915\": \"Überprüfungsdatensatz-Status ist nicht ausstehend\",\n \"211916\": \"OneID nicht gefunden\",\n \"211917\": \"OneID-Verknüpfung aufheben fehlgeschlagen\",\n \"211931\": \"Stufenkonfiguration nicht gefunden\",\n \"211932\": \"Stufe hat zugeordnete Mitglieder, Löschen nicht möglich\",\n \"211933\": \"Validierung der Stufen-Upgrade-Bedingung fehlgeschlagen\",\n \"211934\": \"Stufenreihenfolge muss fortlaufend sein\",\n \"211951\": \"Ungültiger Hauptbuch-Statusübergang\",\n \"211952\": \"Unzureichender Punktestand\",\n \"211953\": \"Hauptbucheintrag nicht gefunden\",\n \"211954\": \"Doppelte Punktetransaktion\",\n \"211955\": \"Ungültiger Punktebetrag\",\n \"211956\": \"Punkteabzug überschreitet maximales Verhältnis\",\n \"211957\": \"Punkte unter Mindestschwelle\",\n \"211958\": \"Punkte-Sammelregel nicht konfiguriert\",\n \"211959\": \"Punkte-Aktivierung fehlgeschlagen: Status ist nicht ausstehend\",\n \"211960\": \"Zugriff auf Punktetransaktion verweigert\",\n \"211961\": \"Punkte bereits abgelaufen\",\n \"211962\": \"Wachstumsregel nicht konfiguriert\",\n \"211971\": \"Coupon-Vorlage nicht gefunden\",\n \"211972\": \"Ungültiger Coupon-Vorlagenstatus\",\n \"211973\": \"Coupon-Limit pro Benutzer überschritten\",\n \"211974\": \"Coupon-Gesamtkontingent überschritten\",\n \"211975\": \"Ungültiger Coupon-Einlösungsstatus\",\n \"211976\": \"Coupon abgelaufen\",\n \"211977\": \"Coupon-Vorlage hat ausgegebene Coupons, Löschen nicht möglich\",\n \"211981\": \"Push-Aufgabe nicht gefunden\",\n \"211982\": \"Push-Aufgabenstatus erlaubt keine Bearbeitung\",\n \"211983\": \"Push-Aufgabenstatus erlaubt keine Stornierung\",\n \"211984\": \"Push-Vorlage nicht gefunden\",\n \"211985\": \"Push-Zielgruppe ist leer\",\n \"211991\": \"Service beschäftigt, bitte versuchen Sie es später erneut\",\n \"211992\": \"Nachrichtenveröffentlichung fehlgeschlagen\",\n \"211993\": \"Nachricht in Warteschlange für unzustellbare Nachrichten eingereiht\",\n \"211001\": \"Webhook-Signaturüberprüfung fehlgeschlagen\",\n \"211002\": \"Nicht unterstützte Webhook-Plattform\",\n \"211003\": \"Doppelte Webhook-Anfrage\",\n \"211004\": \"Webhook-Secret nicht konfiguriert\",\n \"211005\": \"Webhook-Zeitstempel abgelaufen\",\n \"network\": \"Netzwerkfehler, bitte überprüfen Sie Ihre Verbindung\",\n \"timeout\": \"Zeitüberschreitung, bitte versuchen Sie es erneut\",\n \"aborted\": \"Anfrage wurde abgebrochen\",\n \"parse\": \"Fehler beim Parsen der Antwort\",\n \"unauthorized\": \"Bitte melden Sie sich zuerst an\",\n \"config\": \"SDK-Initialisierungsfehler\",\n \"unknown\": \"Ein unbekannter Fehler ist aufgetreten\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"Centro de miembros\",\n \"points\": \"Puntos\",\n \"level\": \"Nivel\",\n \"coupons\": \"Cupones\",\n \"checkin\": \"Registro diario\",\n \"history\": \"Historial\",\n \"balance\": \"Saldo\",\n \"expire\": \"Expirar\",\n \"confirm\": \"Confirmar\",\n \"cancel\": \"Cancelar\",\n \"loading\": \"Cargando...\",\n \"noData\": \"Sin datos\",\n \"retry\": \"Reintentar\",\n \"success\": \"Éxito\",\n \"failed\": \"Fallido\"\n },\n \"points\": {\n \"earn\": \"{amount} puntos ganados\",\n \"spend\": \"{amount} puntos gastados\",\n \"balance\": \"Saldo actual: {amount} puntos\",\n \"expired\": \"{amount} puntos expirados\",\n \"estimated\": \"Estimado (pendiente de confirmación)\"\n },\n \"level\": {\n \"current\": \"Nivel actual: {name}\",\n \"nextLevel\": \"Siguiente nivel: {name}\",\n \"progress\": \"{current}/{target} para el siguiente nivel\",\n \"upgraded\": \"¡Felicitaciones! Ascendido a {name}\"\n },\n \"coupon\": {\n \"claim\": \"Reclamar\",\n \"claimed\": \"Reclamado\",\n \"expired\": \"Expirado\",\n \"used\": \"Usado\",\n \"validUntil\": \"Válido hasta {date}\"\n },\n \"checkin\": {\n \"today\": \"Registro de hoy\",\n \"done\": \"Registrado\",\n \"streak\": \"{days} días consecutivos\",\n \"reward\": \"+{amount} puntos\"\n },\n \"errors\": {\n \"network\": \"Error de red, por favor reintente\",\n \"unauthorized\": \"Por favor inicie sesión\",\n \"serverError\": \"Error del servidor, por favor intente más tarde\",\n \"timeout\": \"Tiempo de espera agotado\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"Cargando...\",\n \"avatarAlt\": \"Avatar de miembro\",\n \"pointsBalance\": \"Mis puntos\",\n \"menuLabel\": \"Navegación de miembro\",\n \"menu\": {\n \"pointsDetail\": \"Historial de puntos\",\n \"levelDetail\": \"Beneficios de nivel\",\n \"coupons\": \"Mis cupones\",\n \"referral\": \"Invitar amigos\",\n \"checkin\": \"Registro diario\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"Historial de puntos\",\n \"empty\": \"Sin historial de puntos\",\n \"loading\": \"Cargando...\",\n \"noMore\": \"No hay más registros\",\n \"listLabel\": \"Transacciones de puntos\",\n \"status\": {\n \"pending\": \"Pendiente\",\n \"active\": \"Activo\",\n \"used\": \"Usado\",\n \"expired\": \"Expirado\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"Cargando...\",\n \"maxLevel\": \"Nivel máximo alcanzado\",\n \"progressLabel\": \"Progreso de nivel\",\n \"noBenefits\": \"Sin beneficios\",\n \"nextLevel\": \"Siguiente nivel: {name}\",\n \"benefitsTitle\": \"Mis beneficios\"\n },\n \"couponList\": {\n \"title\": \"Mis cupones\",\n \"tabsLabel\": \"Categorías de cupones\",\n \"listLabel\": \"Lista de cupones\",\n \"empty\": \"Sin cupones disponibles\",\n \"freeShipping\": \"Envío gratis\",\n \"giftValue\": \"Regalo\",\n \"discountValue\": \"{value}% de descuento\",\n \"type\": {\n \"discount\": \"Descuento\",\n \"cash\": \"Efectivo\",\n \"shipping\": \"Envío\",\n \"gift\": \"Regalo\"\n },\n \"tab\": {\n \"available\": \"Disponible\",\n \"used\": \"Usado\",\n \"expired\": \"Expirado\"\n }\n },\n \"referralShare\": {\n \"loading\": \"Cargando...\",\n \"title\": \"Invitar amigos\",\n \"shareTitle\": \"Invita amigos y gana puntos\",\n \"shareText\": \"¡Regístrate ahora y recibe un regalo!\",\n \"invitedCount\": \"Invitados\",\n \"rewardPoints\": \"Puntos ganados\",\n \"codeLabel\": \"Mi código de referido\",\n \"linkLabel\": \"Enlace de referido\",\n \"copy\": \"Copiar\",\n \"copyCode\": \"Copiar código\",\n \"share\": \"Compartir\",\n \"rewardHint\": \"Gana {points} puntos por amigo invitado\"\n },\n \"checkinCalendar\": {\n \"loading\": \"Cargando...\",\n \"checking\": \"Registrando...\",\n \"checkin\": \"Registrar\",\n \"alreadyChecked\": \"Ya registrado hoy\",\n \"day\": \"{count} días\",\n \"title\": \"Registro diario\",\n \"streak\": \"{days} días consecutivos\",\n \"calendarLabel\": \"Calendario de registro\",\n \"rewardsTitle\": \"Recompensas por racha\",\n \"rewardsLabel\": \"Lista de recompensas\",\n \"weekday\": {\n \"sun\": \"Dom\",\n \"mon\": \"Lun\",\n \"tue\": \"Mar\",\n \"wed\": \"Mié\",\n \"thu\": \"Jue\",\n \"fri\": \"Vie\",\n \"sat\": \"Sáb\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"Correo electrónico\",\n \"passwordLabel\": \"Contraseña\",\n \"submit\": \"Iniciar sesión\",\n \"createAccount\": \"Crear cuenta\",\n \"forgotPassword\": \"¿Olvidaste tu contraseña?\",\n \"orDivider\": \"o\"\n },\n \"register\": {\n \"emailLabel\": \"Correo electrónico\",\n \"passwordLabel\": \"Contraseña\",\n \"confirmPasswordLabel\": \"Confirmar contraseña\",\n \"passwordHint\": \"Al menos 8 caracteres, con letras y números\",\n \"submit\": \"Crear cuenta\",\n \"hasAccount\": \"¿Ya tienes cuenta? Iniciar sesión\",\n \"passwordMismatch\": \"Las contraseñas no coinciden\"\n },\n \"oauth\": {\n \"continueWith\": \"Continuar con {provider}\"\n },\n \"verify\": {\n \"resend\": \"Reenviar código\",\n \"resendCountdown\": \"Reenviar ({countdown}s)\"\n },\n \"forgot\": {\n \"title\": \"Restablecer contraseña\",\n \"description\": \"Ingresa tu correo y te enviaremos un código de verificación.\",\n \"emailLabel\": \"Correo electrónico\",\n \"submit\": \"Enviar código\",\n \"backToLogin\": \"Volver al inicio de sesión\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"Parámetros inválidos\",\n \"210901\": \"Se requiere el ID del inquilino\",\n \"210902\": \"Demasiadas solicitudes, por favor intente más tarde\",\n \"210903\": \"No autorizado\",\n \"210904\": \"Token expirado\",\n \"210905\": \"Token inválido\",\n \"210906\": \"Error al actualizar el token\",\n \"210907\": \"Error en el intercambio de token de la plataforma\",\n \"210908\": \"Token de actualización inválido\",\n \"210909\": \"Token de actualización expirado\",\n \"210911\": \"Miembro no encontrado\",\n \"210912\": \"Información de nivel no encontrada\",\n \"210920\": \"Este correo electrónico ya está registrado\",\n \"210921\": \"Contraseña demasiado débil: al menos 8 caracteres con letras y números\",\n \"210922\": \"Código de verificación enviado con demasiada frecuencia, por favor intente más tarde\",\n \"210923\": \"Código de verificación inválido o expirado\",\n \"210924\": \"Información de registro expirada, por favor regístrese nuevamente\",\n \"210925\": \"Correo electrónico o contraseña incorrectos\",\n \"210926\": \"Correo electrónico no verificado, por favor verifíquelo primero\",\n \"210927\": \"Error en la autenticación OAuth\",\n \"210928\": \"Estado OAuth inválido o expirado\",\n \"210929\": \"Método de inicio de sesión no compatible\",\n \"210930\": \"Error al crear el usuario\",\n \"210931\": \"Error en el cálculo del descuento\",\n \"210951\": \"Error en la consulta del saldo de puntos\",\n \"210952\": \"Error en la consulta de transacciones de puntos\",\n \"210953\": \"Error al acumular puntos\",\n \"210954\": \"Error en la activación de puntos\",\n \"210955\": \"Error al gastar puntos\",\n \"210956\": \"Saldo de puntos insuficiente\",\n \"210957\": \"Libro de puntos no encontrado\",\n \"210958\": \"El estado de los puntos no permite esta operación\",\n \"210971\": \"Cupón agotado\",\n \"210972\": \"Cupón ya reclamado\",\n \"210981\": \"Error de escritura en la cola de mensajes\",\n \"210982\": \"Error en la sincronización del servicio interno\",\n \"210983\": \"Producto de intercambio no encontrado\",\n \"210984\": \"Error en el canje\",\n \"210985\": \"Código de referido no encontrado\",\n \"210986\": \"Error en la vinculación de referido\",\n \"210987\": \"Referente no encontrado\",\n \"210988\": \"No puede invitarse a sí mismo\",\n \"210989\": \"Error al reclamar el cupón\",\n \"210990\": \"Ya se registró hoy\",\n \"210991\": \"Error en el registro\",\n \"211900\": \"Operación fallida, por favor intente de nuevo\",\n \"211901\": \"Error de autenticación\",\n \"211902\": \"Cuenta no vinculada\",\n \"211903\": \"Acceso denegado\",\n \"211904\": \"Configuración no encontrada\",\n \"211905\": \"Alcance de configuración inválido\",\n \"211906\": \"Rol no encontrado\",\n \"211907\": \"El rol del sistema no se puede eliminar\",\n \"211908\": \"Sin acceso a este inquilino\",\n \"211909\": \"Error de validación\",\n \"211910\": \"Recurso no encontrado\",\n \"211911\": \"Miembro no encontrado\",\n \"211912\": \"Conflicto de identidad, por favor contacte al soporte\",\n \"211913\": \"Error en la activación de la cuenta fantasma\",\n \"211914\": \"Registro de revisión no encontrado\",\n \"211915\": \"El estado del registro de revisión no es pendiente\",\n \"211916\": \"OneID no encontrado\",\n \"211917\": \"Error al desvincular OneID\",\n \"211931\": \"Configuración de nivel no encontrada\",\n \"211932\": \"El nivel tiene miembros asociados, no se puede eliminar\",\n \"211933\": \"Error en la validación de la condición de ascenso de nivel\",\n \"211934\": \"La secuencia de niveles debe ser continua\",\n \"211951\": \"Transición de estado del libro inválida\",\n \"211952\": \"Saldo de puntos insuficiente\",\n \"211953\": \"Registro del libro no encontrado\",\n \"211954\": \"Transacción de puntos duplicada\",\n \"211955\": \"Monto de puntos inválido\",\n \"211956\": \"La deducción de puntos excede el ratio máximo\",\n \"211957\": \"Puntos por debajo del umbral mínimo\",\n \"211958\": \"Regla de acumulación de puntos no configurada\",\n \"211959\": \"Error en la activación de puntos: el estado no es pendiente\",\n \"211960\": \"Acceso denegado a la transacción de puntos\",\n \"211961\": \"Puntos ya expirados\",\n \"211962\": \"Regla de crecimiento no configurada\",\n \"211971\": \"Plantilla de cupón no encontrada\",\n \"211972\": \"Estado de la plantilla de cupón inválido\",\n \"211973\": \"Límite de cupones por usuario excedido\",\n \"211974\": \"Cuota total de cupones excedida\",\n \"211975\": \"Estado de canje del cupón inválido\",\n \"211976\": \"Cupón expirado\",\n \"211977\": \"La plantilla de cupón tiene cupones emitidos, no se puede eliminar\",\n \"211981\": \"Tarea de notificación no encontrada\",\n \"211982\": \"El estado de la tarea de notificación no permite la edición\",\n \"211983\": \"El estado de la tarea de notificación no permite la cancelación\",\n \"211984\": \"Plantilla de notificación no encontrada\",\n \"211985\": \"La audiencia objetivo de la notificación está vacía\",\n \"211991\": \"Servicio ocupado, por favor intente más tarde\",\n \"211992\": \"Error en la publicación del mensaje\",\n \"211993\": \"Mensaje ingresó a la cola de mensajes muertos\",\n \"211001\": \"Error en la verificación de firma webhook\",\n \"211002\": \"Plataforma webhook no compatible\",\n \"211003\": \"Solicitud webhook duplicada\",\n \"211004\": \"Secreto webhook no configurado\",\n \"211005\": \"Marca de tiempo webhook expirada\",\n \"network\": \"Error de red, por favor verifique su conexión\",\n \"timeout\": \"Tiempo de espera agotado, por favor intente de nuevo\",\n \"aborted\": \"Solicitud cancelada\",\n \"parse\": \"Error al analizar la respuesta\",\n \"unauthorized\": \"Por favor inicie sesión primero\",\n \"config\": \"Error de inicialización del SDK\",\n \"unknown\": \"Ocurrió un error desconocido\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"Central do membro\",\n \"points\": \"Pontos\",\n \"level\": \"Nível\",\n \"coupons\": \"Cupons\",\n \"checkin\": \"Check-in diário\",\n \"history\": \"Histórico\",\n \"balance\": \"Saldo\",\n \"expire\": \"Expirar\",\n \"confirm\": \"Confirmar\",\n \"cancel\": \"Cancelar\",\n \"loading\": \"Carregando...\",\n \"noData\": \"Sem dados\",\n \"retry\": \"Tentar novamente\",\n \"success\": \"Sucesso\",\n \"failed\": \"Falhou\"\n },\n \"points\": {\n \"earn\": \"{amount} pontos ganhos\",\n \"spend\": \"{amount} pontos gastos\",\n \"balance\": \"Saldo atual: {amount} pontos\",\n \"expired\": \"{amount} pontos expirados\",\n \"estimated\": \"Estimado (aguardando confirmação)\"\n },\n \"level\": {\n \"current\": \"Nível atual: {name}\",\n \"nextLevel\": \"Próximo nível: {name}\",\n \"progress\": \"{current}/{target} para o próximo nível\",\n \"upgraded\": \"Parabéns! Promovido para {name}\"\n },\n \"coupon\": {\n \"claim\": \"Resgatar\",\n \"claimed\": \"Resgatado\",\n \"expired\": \"Expirado\",\n \"used\": \"Usado\",\n \"validUntil\": \"Válido até {date}\"\n },\n \"checkin\": {\n \"today\": \"Check-in de hoje\",\n \"done\": \"Check-in feito\",\n \"streak\": \"{days} dias consecutivos\",\n \"reward\": \"+{amount} pontos\"\n },\n \"errors\": {\n \"network\": \"Erro de rede, tente novamente\",\n \"unauthorized\": \"Por favor, faça login\",\n \"serverError\": \"Erro do servidor, tente novamente mais tarde\",\n \"timeout\": \"Tempo esgotado\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"Carregando...\",\n \"avatarAlt\": \"Avatar do membro\",\n \"pointsBalance\": \"Meus pontos\",\n \"menuLabel\": \"Navegação do membro\",\n \"menu\": {\n \"pointsDetail\": \"Histórico de pontos\",\n \"levelDetail\": \"Benefícios do nível\",\n \"coupons\": \"Meus cupons\",\n \"referral\": \"Convidar amigos\",\n \"checkin\": \"Check-in diário\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"Histórico de pontos\",\n \"empty\": \"Sem histórico de pontos\",\n \"loading\": \"Carregando...\",\n \"noMore\": \"Sem mais registros\",\n \"listLabel\": \"Transações de pontos\",\n \"status\": {\n \"pending\": \"Pendente\",\n \"active\": \"Ativo\",\n \"used\": \"Usado\",\n \"expired\": \"Expirado\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"Carregando...\",\n \"maxLevel\": \"Nível máximo atingido\",\n \"progressLabel\": \"Progresso do nível\",\n \"noBenefits\": \"Sem benefícios\",\n \"nextLevel\": \"Próximo nível: {name}\",\n \"benefitsTitle\": \"Meus benefícios\"\n },\n \"couponList\": {\n \"title\": \"Meus cupons\",\n \"tabsLabel\": \"Categorias de cupons\",\n \"listLabel\": \"Lista de cupons\",\n \"empty\": \"Sem cupons disponíveis\",\n \"freeShipping\": \"Frete grátis\",\n \"giftValue\": \"Presente\",\n \"discountValue\": \"{value}% de desconto\",\n \"type\": {\n \"discount\": \"Desconto\",\n \"cash\": \"Dinheiro\",\n \"shipping\": \"Frete\",\n \"gift\": \"Presente\"\n },\n \"tab\": {\n \"available\": \"Disponível\",\n \"used\": \"Usado\",\n \"expired\": \"Expirado\"\n }\n },\n \"referralShare\": {\n \"loading\": \"Carregando...\",\n \"title\": \"Convidar amigos\",\n \"shareTitle\": \"Convide amigos e ganhe pontos\",\n \"shareText\": \"Cadastre-se agora e receba um presente!\",\n \"invitedCount\": \"Convidados\",\n \"rewardPoints\": \"Pontos ganhos\",\n \"codeLabel\": \"Meu código de indicação\",\n \"linkLabel\": \"Link de indicação\",\n \"copy\": \"Copiar\",\n \"copyCode\": \"Copiar código\",\n \"share\": \"Compartilhar\",\n \"rewardHint\": \"Ganhe {points} pontos por amigo convidado\"\n },\n \"checkinCalendar\": {\n \"loading\": \"Carregando...\",\n \"checking\": \"Fazendo check-in...\",\n \"checkin\": \"Fazer check-in\",\n \"alreadyChecked\": \"Já fez check-in hoje\",\n \"day\": \"{count} dias\",\n \"title\": \"Check-in diário\",\n \"streak\": \"{days} dias consecutivos\",\n \"calendarLabel\": \"Calendário de check-in\",\n \"rewardsTitle\": \"Recompensas de sequência\",\n \"rewardsLabel\": \"Lista de recompensas\",\n \"weekday\": {\n \"sun\": \"Dom\",\n \"mon\": \"Seg\",\n \"tue\": \"Ter\",\n \"wed\": \"Qua\",\n \"thu\": \"Qui\",\n \"fri\": \"Sex\",\n \"sat\": \"Sáb\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"E-mail\",\n \"passwordLabel\": \"Senha\",\n \"submit\": \"Entrar\",\n \"createAccount\": \"Criar conta\",\n \"forgotPassword\": \"Esqueceu a senha?\",\n \"orDivider\": \"ou\"\n },\n \"register\": {\n \"emailLabel\": \"E-mail\",\n \"passwordLabel\": \"Senha\",\n \"confirmPasswordLabel\": \"Confirmar senha\",\n \"passwordHint\": \"No mínimo 8 caracteres, com letras e números\",\n \"submit\": \"Criar conta\",\n \"hasAccount\": \"Já tem uma conta? Entrar\",\n \"passwordMismatch\": \"As senhas não coincidem\"\n },\n \"oauth\": {\n \"continueWith\": \"Continuar com {provider}\"\n },\n \"verify\": {\n \"resend\": \"Reenviar código\",\n \"resendCountdown\": \"Reenviar ({countdown}s)\"\n },\n \"forgot\": {\n \"title\": \"Redefinir senha\",\n \"description\": \"Digite seu e-mail e enviaremos um código de verificação.\",\n \"emailLabel\": \"E-mail\",\n \"submit\": \"Enviar código\",\n \"backToLogin\": \"Voltar ao login\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"Parâmetros inválidos\",\n \"210901\": \"ID do inquilino é obrigatório\",\n \"210902\": \"Muitas solicitações, por favor tente mais tarde\",\n \"210903\": \"Não autorizado\",\n \"210904\": \"Token expirado\",\n \"210905\": \"Token inválido\",\n \"210906\": \"Falha na atualização do token\",\n \"210907\": \"Falha na troca de token da plataforma\",\n \"210908\": \"Token de atualização inválido\",\n \"210909\": \"Token de atualização expirado\",\n \"210911\": \"Membro não encontrado\",\n \"210912\": \"Informações de nível não encontradas\",\n \"210920\": \"Este e-mail já está registrado\",\n \"210921\": \"Senha muito fraca: pelo menos 8 caracteres com letras e números\",\n \"210922\": \"Código de verificação enviado com muita frequência, por favor tente mais tarde\",\n \"210923\": \"Código de verificação inválido ou expirado\",\n \"210924\": \"Informações de registro expiradas, por favor registre-se novamente\",\n \"210925\": \"E-mail ou senha incorretos\",\n \"210926\": \"E-mail não verificado, por favor verifique primeiro\",\n \"210927\": \"Falha na autenticação OAuth\",\n \"210928\": \"Estado OAuth inválido ou expirado\",\n \"210929\": \"Método de login não suportado\",\n \"210930\": \"Falha na criação do usuário\",\n \"210931\": \"Falha no cálculo do desconto\",\n \"210951\": \"Falha na consulta do saldo de pontos\",\n \"210952\": \"Falha na consulta de transações de pontos\",\n \"210953\": \"Falha no acúmulo de pontos\",\n \"210954\": \"Falha na ativação de pontos\",\n \"210955\": \"Falha no gasto de pontos\",\n \"210956\": \"Saldo de pontos insuficiente\",\n \"210957\": \"Livro de pontos não encontrado\",\n \"210958\": \"O status dos pontos não permite esta operação\",\n \"210971\": \"Cupom esgotado\",\n \"210972\": \"Cupom já resgatado\",\n \"210981\": \"Falha na escrita da fila de mensagens\",\n \"210982\": \"Falha na sincronização do serviço interno\",\n \"210983\": \"Produto de troca não encontrado\",\n \"210984\": \"Falha no resgate\",\n \"210985\": \"Código de indicação não encontrado\",\n \"210986\": \"Falha na vinculação de indicação\",\n \"210987\": \"Indicador não encontrado\",\n \"210988\": \"Não é possível convidar a si mesmo\",\n \"210989\": \"Falha ao resgatar o cupom\",\n \"210990\": \"Já fez check-in hoje\",\n \"210991\": \"Falha no check-in\",\n \"211900\": \"Operação falhou, por favor tente novamente\",\n \"211901\": \"Falha na autenticação\",\n \"211902\": \"Conta não vinculada\",\n \"211903\": \"Acesso negado\",\n \"211904\": \"Configuração não encontrada\",\n \"211905\": \"Escopo de configuração inválido\",\n \"211906\": \"Função não encontrada\",\n \"211907\": \"Função do sistema não pode ser excluída\",\n \"211908\": \"Sem acesso a este inquilino\",\n \"211909\": \"Falha na validação\",\n \"211910\": \"Recurso não encontrado\",\n \"211911\": \"Membro não encontrado\",\n \"211912\": \"Conflito de identidade, por favor entre em contato com o suporte\",\n \"211913\": \"Falha na ativação da conta sombra\",\n \"211914\": \"Registro de revisão não encontrado\",\n \"211915\": \"O status do registro de revisão não é pendente\",\n \"211916\": \"OneID não encontrado\",\n \"211917\": \"Falha ao desvincular OneID\",\n \"211931\": \"Configuração de nível não encontrada\",\n \"211932\": \"Nível possui membros associados, não é possível excluir\",\n \"211933\": \"Falha na validação da condição de upgrade de nível\",\n \"211934\": \"A sequência de níveis deve ser contínua\",\n \"211951\": \"Transição de status do livro inválida\",\n \"211952\": \"Saldo de pontos insuficiente\",\n \"211953\": \"Registro do livro não encontrado\",\n \"211954\": \"Transação de pontos duplicada\",\n \"211955\": \"Valor de pontos inválido\",\n \"211956\": \"Dedução de pontos excede o limite máximo\",\n \"211957\": \"Pontos abaixo do limite mínimo\",\n \"211958\": \"Regra de acúmulo de pontos não configurada\",\n \"211959\": \"Falha na ativação de pontos: status não é pendente\",\n \"211960\": \"Acesso negado à transação de pontos\",\n \"211961\": \"Pontos já expirados\",\n \"211962\": \"Regra de crescimento não configurada\",\n \"211971\": \"Modelo de cupom não encontrado\",\n \"211972\": \"Status do modelo de cupom inválido\",\n \"211973\": \"Limite de cupons por usuário excedido\",\n \"211974\": \"Cota total de cupons excedida\",\n \"211975\": \"Status de resgate do cupom inválido\",\n \"211976\": \"Cupom expirado\",\n \"211977\": \"Modelo de cupom possui cupons emitidos, não é possível excluir\",\n \"211981\": \"Tarefa de push não encontrada\",\n \"211982\": \"O status da tarefa de push não permite edição\",\n \"211983\": \"O status da tarefa de push não permite cancelamento\",\n \"211984\": \"Modelo de push não encontrado\",\n \"211985\": \"O público-alvo do push está vazio\",\n \"211991\": \"Serviço ocupado, por favor tente mais tarde\",\n \"211992\": \"Falha na publicação da mensagem\",\n \"211993\": \"Mensagem entrou na fila de mensagens mortas\",\n \"211001\": \"Falha na verificação de assinatura do webhook\",\n \"211002\": \"Plataforma webhook não suportada\",\n \"211003\": \"Solicitação webhook duplicada\",\n \"211004\": \"Segredo webhook não configurado\",\n \"211005\": \"Carimbo de data/hora do webhook expirado\",\n \"network\": \"Erro de rede, por favor verifique sua conexão\",\n \"timeout\": \"Tempo limite excedido, por favor tente novamente\",\n \"aborted\": \"Solicitação cancelada\",\n \"parse\": \"Erro ao analisar a resposta\",\n \"unauthorized\": \"Por favor faça login primeiro\",\n \"config\": \"Erro de inicialização do SDK\",\n \"unknown\": \"Ocorreu um erro desconhecido\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"مركز العضوية\",\n \"points\": \"النقاط\",\n \"level\": \"المستوى\",\n \"coupons\": \"القسائم\",\n \"checkin\": \"تسجيل الحضور\",\n \"history\": \"السجل\",\n \"balance\": \"الرصيد\",\n \"expire\": \"انتهاء الصلاحية\",\n \"confirm\": \"تأكيد\",\n \"cancel\": \"إلغاء\",\n \"loading\": \"جاري التحميل...\",\n \"noData\": \"لا توجد بيانات\",\n \"retry\": \"إعادة المحاولة\",\n \"success\": \"نجاح\",\n \"failed\": \"فشل\"\n },\n \"points\": {\n \"earn\": \"تم كسب {amount} نقطة\",\n \"spend\": \"تم إنفاق {amount} نقطة\",\n \"balance\": \"الرصيد الحالي: {amount} نقطة\",\n \"expired\": \"انتهت صلاحية {amount} نقطة\",\n \"estimated\": \"تقديري (في انتظار التأكيد)\"\n },\n \"level\": {\n \"current\": \"المستوى الحالي: {name}\",\n \"nextLevel\": \"المستوى التالي: {name}\",\n \"progress\": \"{current}/{target} للمستوى التالي\",\n \"upgraded\": \"تهانينا! تمت الترقية إلى {name}\"\n },\n \"coupon\": {\n \"claim\": \"استلام\",\n \"claimed\": \"تم الاستلام\",\n \"expired\": \"منتهي الصلاحية\",\n \"used\": \"مستخدم\",\n \"validUntil\": \"صالح حتى {date}\"\n },\n \"checkin\": {\n \"today\": \"تسجيل حضور اليوم\",\n \"done\": \"تم التسجيل\",\n \"streak\": \"{days} أيام متتالية\",\n \"reward\": \"+{amount} نقطة\"\n },\n \"errors\": {\n \"network\": \"خطأ في الشبكة، يرجى المحاولة مرة أخرى\",\n \"unauthorized\": \"يرجى تسجيل الدخول أولاً\",\n \"serverError\": \"خطأ في الخادم، يرجى المحاولة لاحقاً\",\n \"timeout\": \"انتهت مهلة الطلب\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"جاري التحميل...\",\n \"avatarAlt\": \"صورة العضو\",\n \"pointsBalance\": \"نقاطي\",\n \"menuLabel\": \"قائمة العضو\",\n \"menu\": {\n \"pointsDetail\": \"سجل النقاط\",\n \"levelDetail\": \"مزايا المستوى\",\n \"coupons\": \"قسائمي\",\n \"referral\": \"دعوة الأصدقاء\",\n \"checkin\": \"تسجيل الحضور اليومي\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"سجل النقاط\",\n \"empty\": \"لا يوجد سجل نقاط\",\n \"loading\": \"جاري التحميل...\",\n \"noMore\": \"لا توجد سجلات أخرى\",\n \"listLabel\": \"معاملات النقاط\",\n \"status\": {\n \"pending\": \"قيد الانتظار\",\n \"active\": \"نشط\",\n \"used\": \"مستخدم\",\n \"expired\": \"منتهي الصلاحية\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"جاري التحميل...\",\n \"maxLevel\": \"وصلت إلى أعلى مستوى\",\n \"progressLabel\": \"تقدم المستوى\",\n \"noBenefits\": \"لا توجد مزايا\",\n \"nextLevel\": \"المستوى التالي: {name}\",\n \"benefitsTitle\": \"مزاياي\"\n },\n \"couponList\": {\n \"title\": \"قسائمي\",\n \"tabsLabel\": \"فئات القسائم\",\n \"listLabel\": \"قائمة القسائم\",\n \"empty\": \"لا توجد قسائم متاحة\",\n \"freeShipping\": \"شحن مجاني\",\n \"giftValue\": \"هدية\",\n \"discountValue\": \"خصم {value}%\",\n \"type\": {\n \"discount\": \"خصم\",\n \"cash\": \"نقدي\",\n \"shipping\": \"شحن\",\n \"gift\": \"هدية\"\n },\n \"tab\": {\n \"available\": \"متاح\",\n \"used\": \"مستخدم\",\n \"expired\": \"منتهي الصلاحية\"\n }\n },\n \"referralShare\": {\n \"loading\": \"جاري التحميل...\",\n \"title\": \"دعوة الأصدقاء\",\n \"shareTitle\": \"ادعُ الأصدقاء واربح نقاطاً\",\n \"shareText\": \"سجل الآن واحصل على هدية!\",\n \"invitedCount\": \"المدعوون\",\n \"rewardPoints\": \"النقاط المكتسبة\",\n \"codeLabel\": \"رمز الدعوة الخاص بي\",\n \"linkLabel\": \"رابط الدعوة\",\n \"copy\": \"نسخ\",\n \"copyCode\": \"نسخ رمز الدعوة\",\n \"share\": \"مشاركة\",\n \"rewardHint\": \"اربح {points} نقطة لكل صديق مدعو\"\n },\n \"checkinCalendar\": {\n \"loading\": \"جاري التحميل...\",\n \"checking\": \"جاري تسجيل الحضور...\",\n \"checkin\": \"تسجيل الحضور\",\n \"alreadyChecked\": \"تم التسجيل اليوم\",\n \"day\": \"{count} أيام\",\n \"title\": \"تسجيل الحضور اليومي\",\n \"streak\": \"{days} أيام متتالية\",\n \"calendarLabel\": \"تقويم تسجيل الحضور\",\n \"rewardsTitle\": \"مكافآت السلسلة\",\n \"rewardsLabel\": \"قائمة المكافآت\",\n \"weekday\": {\n \"sun\": \"أحد\",\n \"mon\": \"إثن\",\n \"tue\": \"ثلا\",\n \"wed\": \"أرب\",\n \"thu\": \"خمي\",\n \"fri\": \"جمع\",\n \"sat\": \"سبت\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"البريد الإلكتروني\",\n \"passwordLabel\": \"كلمة المرور\",\n \"submit\": \"تسجيل الدخول\",\n \"createAccount\": \"إنشاء حساب\",\n \"forgotPassword\": \"نسيت كلمة المرور؟\",\n \"orDivider\": \"أو\"\n },\n \"register\": {\n \"emailLabel\": \"البريد الإلكتروني\",\n \"passwordLabel\": \"كلمة المرور\",\n \"confirmPasswordLabel\": \"تأكيد كلمة المرور\",\n \"passwordHint\": \"8 أحرف على الأقل، تحتوي على حروف وأرقام\",\n \"submit\": \"إنشاء حساب\",\n \"hasAccount\": \"لديك حساب بالفعل؟ تسجيل الدخول\",\n \"passwordMismatch\": \"كلمات المرور غير متطابقة\"\n },\n \"oauth\": {\n \"continueWith\": \"المتابعة باستخدام {provider}\"\n },\n \"verify\": {\n \"resend\": \"إعادة إرسال الرمز\",\n \"resendCountdown\": \"إعادة الإرسال ({countdown} ثانية)\"\n },\n \"forgot\": {\n \"title\": \"إعادة تعيين كلمة المرور\",\n \"description\": \"أدخل بريدك الإلكتروني وسنرسل لك رمز التحقق.\",\n \"emailLabel\": \"البريد الإلكتروني\",\n \"submit\": \"إرسال الرمز\",\n \"backToLogin\": \"العودة لتسجيل الدخول\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"معلمات غير صالحة\",\n \"210901\": \"معرف المستأجر مطلوب\",\n \"210902\": \"طلبات كثيرة جداً، يرجى المحاولة لاحقاً\",\n \"210903\": \"غير مصرح\",\n \"210904\": \"انتهت صلاحية الرمز\",\n \"210905\": \"رمز غير صالح\",\n \"210906\": \"فشل تحديث الرمز\",\n \"210907\": \"فشل تبادل رمز المنصة\",\n \"210908\": \"رمز التحديث غير صالح\",\n \"210909\": \"انتهت صلاحية رمز التحديث\",\n \"210911\": \"العضو غير موجود\",\n \"210912\": \"معلومات المستوى غير موجودة\",\n \"210920\": \"هذا البريد الإلكتروني مسجل بالفعل\",\n \"210921\": \"كلمة المرور ضعيفة جداً: 8 أحرف على الأقل تتضمن حروفاً وأرقاماً\",\n \"210922\": \"تم إرسال رمز التحقق بشكل متكرر، يرجى المحاولة لاحقاً\",\n \"210923\": \"رمز التحقق غير صالح أو منتهي الصلاحية\",\n \"210924\": \"انتهت صلاحية معلومات التسجيل، يرجى التسجيل مرة أخرى\",\n \"210925\": \"البريد الإلكتروني أو كلمة المرور غير صحيحة\",\n \"210926\": \"البريد الإلكتروني غير مؤكد، يرجى التحقق أولاً\",\n \"210927\": \"فشل مصادقة OAuth\",\n \"210928\": \"حالة OAuth غير صالحة أو منتهية الصلاحية\",\n \"210929\": \"طريقة تسجيل الدخول غير مدعومة\",\n \"210930\": \"فشل إنشاء المستخدم\",\n \"210931\": \"فشل حساب الخصم\",\n \"210951\": \"فشل استعلام رصيد النقاط\",\n \"210952\": \"فشل استعلام معاملات النقاط\",\n \"210953\": \"فشل كسب النقاط\",\n \"210954\": \"فشل تفعيل النقاط\",\n \"210955\": \"فشل إنفاق النقاط\",\n \"210956\": \"رصيد النقاط غير كافٍ\",\n \"210957\": \"سجل النقاط غير موجود\",\n \"210958\": \"حالة النقاط لا تسمح بهذه العملية\",\n \"210971\": \"القسيمة نفدت\",\n \"210972\": \"تم استلام القسيمة بالفعل\",\n \"210981\": \"فشل الكتابة في قائمة الرسائل\",\n \"210982\": \"فشل مزامنة الخدمة الداخلية\",\n \"210983\": \"منتج الاستبدال غير موجود\",\n \"210984\": \"فشل الاستبدال\",\n \"210985\": \"رمز الإحالة غير موجود\",\n \"210986\": \"فشل ربط الإحالة\",\n \"210987\": \"المُحيل غير موجود\",\n \"210988\": \"لا يمكنك دعوة نفسك\",\n \"210989\": \"فشل استلام القسيمة\",\n \"210990\": \"تم تسجيل الحضور اليوم بالفعل\",\n \"210991\": \"فشل تسجيل الحضور\",\n \"211900\": \"فشلت العملية، يرجى المحاولة مرة أخرى\",\n \"211901\": \"فشل المصادقة\",\n \"211902\": \"الحساب غير مرتبط\",\n \"211903\": \"تم رفض الوصول\",\n \"211904\": \"الإعدادات غير موجودة\",\n \"211905\": \"نطاق الإعدادات غير صالح\",\n \"211906\": \"الدور غير موجود\",\n \"211907\": \"لا يمكن حذف دور النظام\",\n \"211908\": \"لا يوجد وصول لهذا المستأجر\",\n \"211909\": \"فشل التحقق\",\n \"211910\": \"المورد غير موجود\",\n \"211911\": \"العضو غير موجود\",\n \"211912\": \"تعارض في الهوية، يرجى الاتصال بالدعم\",\n \"211913\": \"فشل تفعيل الحساب الظل\",\n \"211914\": \"سجل المراجعة غير موجود\",\n \"211915\": \"حالة سجل المراجعة ليست معلقة\",\n \"211916\": \"OneID غير موجود\",\n \"211917\": \"فشل إلغاء ربط OneID\",\n \"211931\": \"إعدادات المستوى غير موجودة\",\n \"211932\": \"المستوى يحتوي على أعضاء مرتبطين، لا يمكن الحذف\",\n \"211933\": \"فشل التحقق من شرط ترقية المستوى\",\n \"211934\": \"يجب أن يكون تسلسل المستويات متتابعاً\",\n \"211951\": \"انتقال حالة السجل غير صالح\",\n \"211952\": \"رصيد النقاط غير كافٍ\",\n \"211953\": \"سجل الدفتر غير موجود\",\n \"211954\": \"معاملة نقاط مكررة\",\n \"211955\": \"مبلغ النقاط غير صالح\",\n \"211956\": \"خصم النقاط يتجاوز النسبة القصوى\",\n \"211957\": \"النقاط أقل من الحد الأدنى\",\n \"211958\": \"قاعدة كسب النقاط غير مُعدة\",\n \"211959\": \"فشل تفعيل النقاط: الحالة ليست معلقة\",\n \"211960\": \"تم رفض الوصول لمعاملة النقاط\",\n \"211961\": \"النقاط منتهية الصلاحية بالفعل\",\n \"211962\": \"قاعدة النمو غير مُعدة\",\n \"211971\": \"قالب القسيمة غير موجود\",\n \"211972\": \"حالة قالب القسيمة غير صالحة\",\n \"211973\": \"تم تجاوز حد القسائم لكل مستخدم\",\n \"211974\": \"تم تجاوز الحصة الإجمالية للقسائم\",\n \"211975\": \"حالة استخدام القسيمة غير صالحة\",\n \"211976\": \"انتهت صلاحية القسيمة\",\n \"211977\": \"قالب القسيمة يحتوي على قسائم صادرة، لا يمكن الحذف\",\n \"211981\": \"مهمة الإشعار غير موجودة\",\n \"211982\": \"حالة مهمة الإشعار لا تسمح بالتعديل\",\n \"211983\": \"حالة مهمة الإشعار لا تسمح بالإلغاء\",\n \"211984\": \"قالب الإشعار غير موجود\",\n \"211985\": \"الجمهور المستهدف للإشعار فارغ\",\n \"211991\": \"الخدمة مشغولة، يرجى المحاولة لاحقاً\",\n \"211992\": \"فشل نشر الرسالة\",\n \"211993\": \"دخلت الرسالة قائمة الرسائل الميتة\",\n \"211001\": \"فشل التحقق من توقيع webhook\",\n \"211002\": \"منصة webhook غير مدعومة\",\n \"211003\": \"طلب webhook مكرر\",\n \"211004\": \"مفتاح webhook غير مُعد\",\n \"211005\": \"انتهت صلاحية طابع وقت webhook\",\n \"network\": \"خطأ في الشبكة، يرجى التحقق من اتصالك\",\n \"timeout\": \"انتهت مهلة الطلب، يرجى المحاولة مرة أخرى\",\n \"aborted\": \"تم إلغاء الطلب\",\n \"parse\": \"خطأ في تحليل الاستجابة\",\n \"unauthorized\": \"يرجى تسجيل الدخول أولاً\",\n \"config\": \"خطأ في تهيئة SDK\",\n \"unknown\": \"حدث خطأ غير معروف\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"מרכז חברים\",\n \"points\": \"נקודות\",\n \"level\": \"רמה\",\n \"coupons\": \"קופונים\",\n \"checkin\": \"צ'ק-אין יומי\",\n \"history\": \"היסטוריה\",\n \"balance\": \"יתרה\",\n \"expire\": \"תפוגה\",\n \"confirm\": \"אישור\",\n \"cancel\": \"ביטול\",\n \"loading\": \"טוען...\",\n \"noData\": \"אין נתונים\",\n \"retry\": \"נסה שוב\",\n \"success\": \"הצלחה\",\n \"failed\": \"נכשל\"\n },\n \"points\": {\n \"earn\": \"צבירה של {amount} נקודות\",\n \"spend\": \"ניצול של {amount} נקודות\",\n \"balance\": \"יתרה נוכחית: {amount} נקודות\",\n \"expired\": \"{amount} נקודות פגו תוקפן\",\n \"estimated\": \"מוערך (ממתין לאישור)\"\n },\n \"level\": {\n \"current\": \"רמה נוכחית: {name}\",\n \"nextLevel\": \"רמה הבאה: {name}\",\n \"progress\": \"{current}/{target} לרמה הבאה\",\n \"upgraded\": \"ברכותינו! עלית לרמה {name}\"\n },\n \"coupon\": {\n \"claim\": \"מימוש\",\n \"claimed\": \"מומש\",\n \"expired\": \"פג תוקף\",\n \"used\": \"נוצל\",\n \"validUntil\": \"בתוקף עד {date}\"\n },\n \"checkin\": {\n \"today\": \"צ'ק-אין יומי\",\n \"done\": \"כבר ביצעת צ'ק-אין\",\n \"streak\": \"{days} ימים רצוף\",\n \"reward\": \"+{amount} נקודות\"\n },\n \"errors\": {\n \"network\": \"שגיאת רשת, נסה שוב\",\n \"unauthorized\": \"יש להתחבר תחילה\",\n \"serverError\": \"שגיאת שרת, נסה שוב מאוחר יותר\",\n \"timeout\": \"תם זמן הבקשה\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"טוען...\",\n \"avatarAlt\": \"תמונת חבר\",\n \"pointsBalance\": \"הנקודות שלי\",\n \"menuLabel\": \"ניווט חבר\",\n \"menu\": {\n \"pointsDetail\": \"היסטוריית נקודות\",\n \"levelDetail\": \"הטבות רמה\",\n \"coupons\": \"הקופונים שלי\",\n \"referral\": \"הזמן חברים\",\n \"checkin\": \"צ'ק-אין יומי\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"היסטוריית נקודות\",\n \"empty\": \"אין היסטוריית נקודות\",\n \"loading\": \"טוען...\",\n \"noMore\": \"אין רשומות נוספות\",\n \"listLabel\": \"תנועות נקודות\",\n \"status\": {\n \"pending\": \"ממתין\",\n \"active\": \"פעיל\",\n \"used\": \"נוצל\",\n \"expired\": \"פג תוקף\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"טוען...\",\n \"maxLevel\": \"הגעת לרמה המקסימלית\",\n \"progressLabel\": \"התקדמות ברמה\",\n \"noBenefits\": \"אין הטבות\",\n \"nextLevel\": \"רמה הבאה: {name}\",\n \"benefitsTitle\": \"ההטבות שלי\"\n },\n \"couponList\": {\n \"title\": \"הקופונים שלי\",\n \"tabsLabel\": \"קטגוריות קופונים\",\n \"listLabel\": \"רשימת קופונים\",\n \"empty\": \"אין קופונים זמינים\",\n \"freeShipping\": \"משלוח חינם\",\n \"giftValue\": \"מתנה\",\n \"discountValue\": \"{value}% הנחה\",\n \"type\": {\n \"discount\": \"הנחה\",\n \"cash\": \"מזומן\",\n \"shipping\": \"משלוח\",\n \"gift\": \"מתנה\"\n },\n \"tab\": {\n \"available\": \"זמין\",\n \"used\": \"נוצל\",\n \"expired\": \"פג תוקף\"\n }\n },\n \"referralShare\": {\n \"loading\": \"טוען...\",\n \"title\": \"הזמן חברים\",\n \"shareTitle\": \"הזמן חברים והרוויח נקודות\",\n \"shareText\": \"הירשם עכשיו וקבל מתנה!\",\n \"invitedCount\": \"הוזמנו\",\n \"rewardPoints\": \"נקודות שנצברו\",\n \"codeLabel\": \"קוד ההזמנה שלי\",\n \"linkLabel\": \"קישור הזמנה\",\n \"copy\": \"העתק\",\n \"copyCode\": \"העתק קוד הזמנה\",\n \"share\": \"שתף\",\n \"rewardHint\": \"הרוויח {points} נקודות לכל חבר שהוזמן\"\n },\n \"checkinCalendar\": {\n \"loading\": \"טוען...\",\n \"checking\": \"מבצע צ'ק-אין...\",\n \"checkin\": \"צ'ק-אין\",\n \"alreadyChecked\": \"כבר ביצעת צ'ק-אין היום\",\n \"day\": \"{count} ימים\",\n \"title\": \"צ'ק-אין יומי\",\n \"streak\": \"{days} ימים רצוף\",\n \"calendarLabel\": \"לוח צ'ק-אין\",\n \"rewardsTitle\": \"פרסי רצף\",\n \"rewardsLabel\": \"רשימת פרסים\",\n \"weekday\": {\n \"sun\": \"א\",\n \"mon\": \"ב\",\n \"tue\": \"ג\",\n \"wed\": \"ד\",\n \"thu\": \"ה\",\n \"fri\": \"ו\",\n \"sat\": \"ש\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"אימייל\",\n \"passwordLabel\": \"סיסמה\",\n \"submit\": \"התחברות\",\n \"createAccount\": \"יצירת חשבון\",\n \"forgotPassword\": \"שכחת סיסמה?\",\n \"orDivider\": \"או\"\n },\n \"register\": {\n \"emailLabel\": \"אימייל\",\n \"passwordLabel\": \"סיסמה\",\n \"confirmPasswordLabel\": \"אימות סיסמה\",\n \"passwordHint\": \"לפחות 8 תווים, כולל אותיות ומספרים\",\n \"submit\": \"יצירת חשבון\",\n \"hasAccount\": \"כבר יש לך חשבון? התחברות\",\n \"passwordMismatch\": \"הסיסמאות אינן תואמות\"\n },\n \"oauth\": {\n \"continueWith\": \"המשך עם {provider}\"\n },\n \"verify\": {\n \"resend\": \"שלח קוד מחדש\",\n \"resendCountdown\": \"שליחה מחדש ({countdown} שניות)\"\n },\n \"forgot\": {\n \"title\": \"איפוס סיסמה\",\n \"description\": \"הזן את האימייל שלך ונשלח לך קוד אימות.\",\n \"emailLabel\": \"אימייל\",\n \"submit\": \"שלח קוד\",\n \"backToLogin\": \"חזרה להתחברות\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"פרמטרים לא תקינים\",\n \"210901\": \"נדרש מזהה דייר\",\n \"210902\": \"יותר מדי בקשות, נא לנסות מאוחר יותר\",\n \"210903\": \"לא מורשה\",\n \"210904\": \"פג תוקף הטוקן\",\n \"210905\": \"טוקן לא תקין\",\n \"210906\": \"רענון הטוקן נכשל\",\n \"210907\": \"החלפת טוקן הפלטפורמה נכשלה\",\n \"210908\": \"טוקן רענון לא תקין\",\n \"210909\": \"פג תוקף טוקן הרענון\",\n \"210911\": \"החבר לא נמצא\",\n \"210912\": \"מידע על הרמה לא נמצא\",\n \"210920\": \"כתובת אימייל זו כבר רשומה\",\n \"210921\": \"סיסמה חלשה מדי: לפחות 8 תווים הכוללים אותיות ומספרים\",\n \"210922\": \"קוד אימות נשלח בתדירות גבוהה מדי, נא לנסות מאוחר יותר\",\n \"210923\": \"קוד אימות לא תקין או שפג תוקפו\",\n \"210924\": \"פרטי ההרשמה פגו, נא להירשם מחדש\",\n \"210925\": \"אימייל או סיסמה שגויים\",\n \"210926\": \"האימייל לא אומת, נא לאמת תחילה\",\n \"210927\": \"אימות OAuth נכשל\",\n \"210928\": \"מצב OAuth לא תקין או שפג תוקפו\",\n \"210929\": \"שיטת התחברות לא נתמכת\",\n \"210930\": \"יצירת המשתמש נכשלה\",\n \"210931\": \"חישוב ההנחה נכשל\",\n \"210951\": \"שאילתת יתרת הנקודות נכשלה\",\n \"210952\": \"שאילתת עסקאות הנקודות נכשלה\",\n \"210953\": \"צבירת הנקודות נכשלה\",\n \"210954\": \"הפעלת הנקודות נכשלה\",\n \"210955\": \"הוצאת הנקודות נכשלה\",\n \"210956\": \"יתרת נקודות לא מספקת\",\n \"210957\": \"ספר הנקודות לא נמצא\",\n \"210958\": \"מצב הנקודות אינו מאפשר פעולה זו\",\n \"210971\": \"הקופון אזל מהמלאי\",\n \"210972\": \"הקופון כבר נדרש\",\n \"210981\": \"כתיבה לתור ההודעות נכשלה\",\n \"210982\": \"סנכרון השירות הפנימי נכשל\",\n \"210983\": \"מוצר ההחלפה לא נמצא\",\n \"210984\": \"המימוש נכשל\",\n \"210985\": \"קוד ההפניה לא נמצא\",\n \"210986\": \"קישור ההפניה נכשל\",\n \"210987\": \"המפנה לא נמצא\",\n \"210988\": \"לא ניתן להזמין את עצמך\",\n \"210989\": \"דרישת הקופון נכשלה\",\n \"210990\": \"כבר בוצע צ'ק-אין היום\",\n \"210991\": \"הצ'ק-אין נכשל\",\n \"211900\": \"הפעולה נכשלה, נא לנסות שוב\",\n \"211901\": \"האימות נכשל\",\n \"211902\": \"החשבון לא מקושר\",\n \"211903\": \"הגישה נדחתה\",\n \"211904\": \"ההגדרות לא נמצאו\",\n \"211905\": \"טווח הגדרות לא תקין\",\n \"211906\": \"התפקיד לא נמצא\",\n \"211907\": \"לא ניתן למחוק תפקיד מערכת\",\n \"211908\": \"אין גישה לדייר זה\",\n \"211909\": \"האימות נכשל\",\n \"211910\": \"המשאב לא נמצא\",\n \"211911\": \"החבר לא נמצא\",\n \"211912\": \"התנגשות זהויות, נא ליצור קשר עם התמיכה\",\n \"211913\": \"הפעלת חשבון הצל נכשלה\",\n \"211914\": \"רשומת הסקירה לא נמצאה\",\n \"211915\": \"מצב רשומת הסקירה אינו ממתין\",\n \"211916\": \"OneID לא נמצא\",\n \"211917\": \"ביטול קישור OneID נכשל\",\n \"211931\": \"הגדרת הרמה לא נמצאה\",\n \"211932\": \"לרמה יש חברים משויכים, לא ניתן למחוק\",\n \"211933\": \"אימות תנאי שדרוג הרמה נכשל\",\n \"211934\": \"רצף הרמות חייב להיות רציף\",\n \"211951\": \"מעבר מצב הספר לא תקין\",\n \"211952\": \"יתרת נקודות לא מספקת\",\n \"211953\": \"רשומת הספר לא נמצאה\",\n \"211954\": \"עסקת נקודות כפולה\",\n \"211955\": \"סכום נקודות לא תקין\",\n \"211956\": \"ניכוי הנקודות חורג מהיחס המרבי\",\n \"211957\": \"נקודות מתחת לסף המינימום\",\n \"211958\": \"כלל צבירת הנקודות לא הוגדר\",\n \"211959\": \"הפעלת הנקודות נכשלה: המצב אינו ממתין\",\n \"211960\": \"הגישה לעסקת הנקודות נדחתה\",\n \"211961\": \"הנקודות כבר פגו\",\n \"211962\": \"כלל הצמיחה לא הוגדר\",\n \"211971\": \"תבנית הקופון לא נמצאה\",\n \"211972\": \"מצב תבנית הקופון לא תקין\",\n \"211973\": \"חריגה ממגבלת הקופונים למשתמש\",\n \"211974\": \"חריגה ממכסת הקופונים הכוללת\",\n \"211975\": \"מצב מימוש הקופון לא תקין\",\n \"211976\": \"פג תוקף הקופון\",\n \"211977\": \"לתבנית הקופון יש קופונים שהונפקו, לא ניתן למחוק\",\n \"211981\": \"משימת ההתראה לא נמצאה\",\n \"211982\": \"מצב משימת ההתראה אינו מאפשר עריכה\",\n \"211983\": \"מצב משימת ההתראה אינו מאפשר ביטול\",\n \"211984\": \"תבנית ההתראה לא נמצאה\",\n \"211985\": \"קהל היעד של ההתראה ריק\",\n \"211991\": \"השירות עמוס, נא לנסות שוב מאוחר יותר\",\n \"211992\": \"פרסום ההודעה נכשל\",\n \"211993\": \"ההודעה נכנסה לתור ההודעות המתות\",\n \"211001\": \"אימות חתימת webhook נכשל\",\n \"211002\": \"פלטפורמת webhook לא נתמכת\",\n \"211003\": \"בקשת webhook כפולה\",\n \"211004\": \"סוד webhook לא הוגדר\",\n \"211005\": \"חותמת הזמן של webhook פגה\",\n \"network\": \"שגיאת רשת, נא לבדוק את החיבור\",\n \"timeout\": \"הבקשה חרגה מהזמן המוקצב, נא לנסות שוב\",\n \"aborted\": \"הבקשה בוטלה\",\n \"parse\": \"שגיאה בניתוח התגובה\",\n \"unauthorized\": \"נא להתחבר תחילה\",\n \"config\": \"שגיאת אתחול SDK\",\n \"unknown\": \"אירעה שגיאה לא ידועה\"\n }\n }\n}\n","{\n \"common\": {\n \"memberCenter\": \"ศูนย์สมาชิก\",\n \"points\": \"คะแนน\",\n \"level\": \"ระดับ\",\n \"coupons\": \"คูปอง\",\n \"checkin\": \"เช็คอิน\",\n \"history\": \"ประวัติ\",\n \"balance\": \"ยอดคงเหลือ\",\n \"expire\": \"หมดอายุ\",\n \"confirm\": \"ยืนยัน\",\n \"cancel\": \"ยกเลิก\",\n \"loading\": \"กำลังโหลด...\",\n \"noData\": \"ไม่มีข้อมูล\",\n \"retry\": \"ลองอีกครั้ง\",\n \"success\": \"สำเร็จ\",\n \"failed\": \"ล้มเหลว\"\n },\n \"points\": {\n \"earn\": \"ได้รับ {amount} คะแนน\",\n \"spend\": \"ใช้ {amount} คะแนน\",\n \"balance\": \"ยอดคงเหลือปัจจุบัน: {amount} คะแนน\",\n \"expired\": \"{amount} คะแนนหมดอายุแล้ว\",\n \"estimated\": \"ประมาณการ (รอการยืนยัน)\"\n },\n \"level\": {\n \"current\": \"ระดับปัจจุบัน: {name}\",\n \"nextLevel\": \"ระดับถัดไป: {name}\",\n \"progress\": \"{current}/{target} สู่ระดับถัดไป\",\n \"upgraded\": \"ยินดีด้วย! เลื่อนระดับเป็น {name}\"\n },\n \"coupon\": {\n \"claim\": \"รับ\",\n \"claimed\": \"รับแล้ว\",\n \"expired\": \"หมดอายุ\",\n \"used\": \"ใช้แล้ว\",\n \"validUntil\": \"ใช้ได้ถึง {date}\"\n },\n \"checkin\": {\n \"today\": \"เช็คอินวันนี้\",\n \"done\": \"เช็คอินแล้ว\",\n \"streak\": \"เช็คอินติดต่อกัน {days} วัน\",\n \"reward\": \"+{amount} คะแนน\"\n },\n \"errors\": {\n \"network\": \"เกิดข้อผิดพลาดเครือข่าย กรุณาลองอีกครั้ง\",\n \"unauthorized\": \"กรุณาเข้าสู่ระบบ\",\n \"serverError\": \"เกิดข้อผิดพลาดเซิร์ฟเวอร์ กรุณาลองอีกครั้งในภายหลัง\",\n \"timeout\": \"คำขอหมดเวลา\"\n },\n \"ui\": {\n \"memberCenter\": {\n \"loading\": \"กำลังโหลด...\",\n \"avatarAlt\": \"รูปสมาชิก\",\n \"pointsBalance\": \"คะแนนของฉัน\",\n \"menuLabel\": \"เมนูสมาชิก\",\n \"menu\": {\n \"pointsDetail\": \"ประวัติคะแนน\",\n \"levelDetail\": \"สิทธิประโยชน์ระดับ\",\n \"coupons\": \"คูปองของฉัน\",\n \"referral\": \"เชิญเพื่อน\",\n \"checkin\": \"เช็คอินรายวัน\"\n }\n },\n \"pointsDetail\": {\n \"title\": \"ประวัติคะแนน\",\n \"empty\": \"ไม่มีประวัติคะแนน\",\n \"loading\": \"กำลังโหลด...\",\n \"noMore\": \"ไม่มีรายการเพิ่มเติม\",\n \"listLabel\": \"รายการคะแนน\",\n \"status\": {\n \"pending\": \"รอดำเนินการ\",\n \"active\": \"ใช้งานได้\",\n \"used\": \"ใช้แล้ว\",\n \"expired\": \"หมดอายุ\"\n }\n },\n \"levelProgress\": {\n \"loading\": \"กำลังโหลด...\",\n \"maxLevel\": \"ระดับสูงสุดแล้ว\",\n \"progressLabel\": \"ความคืบหน้าระดับ\",\n \"noBenefits\": \"ยังไม่มีสิทธิประโยชน์\",\n \"nextLevel\": \"ระดับถัดไป: {name}\",\n \"benefitsTitle\": \"สิทธิประโยชน์ของฉัน\"\n },\n \"couponList\": {\n \"title\": \"คูปองของฉัน\",\n \"tabsLabel\": \"หมวดหมู่คูปอง\",\n \"listLabel\": \"รายการคูปอง\",\n \"empty\": \"ไม่มีคูปอง\",\n \"freeShipping\": \"ส่งฟรี\",\n \"giftValue\": \"ของขวัญ\",\n \"discountValue\": \"ลด {value}%\",\n \"type\": {\n \"discount\": \"ส่วนลด\",\n \"cash\": \"เงินสด\",\n \"shipping\": \"ค่าจัดส่ง\",\n \"gift\": \"ของขวัญ\"\n },\n \"tab\": {\n \"available\": \"ใช้ได้\",\n \"used\": \"ใช้แล้ว\",\n \"expired\": \"หมดอายุ\"\n }\n },\n \"referralShare\": {\n \"loading\": \"กำลังโหลด...\",\n \"title\": \"เชิญเพื่อน\",\n \"shareTitle\": \"เชิญบคะแนน\",\n \"shareText\": \"สมัครเลยและรับของขวัญฟรี!\",\n \"invitedCount\": \"เชิญแล้ว\",\n \"rewardPoints\": \"คะแนนที่ได้รับ\",\n \"codeLabel\": \"รหัสเชิญของฉัน\",\n \"linkLabel\": \"ลิงก์เชิญ\",\n \"copy\": \"คัดลอก\",\n \"copyCode\": \"คัดลอกรหัสเชิญ\",\n \"share\": \"แชร์\",\n \"rewardHint\": \"รับ {points} คะแนนต่อเพื่อนหนึ่งคน\"\n },\n \"checkinCalendar\": {\n \"loading\": \"กำลังโหลด...\",\n \"checking\": \"กำลังเช็คอิน...\",\n \"checkin\": \"เช็คอิน\",\n \"alreadyChecked\": \"เช็คอินแล้ววันนี้\",\n \"day\": \"{count} วัน\",\n \"title\": \"เช็คอินรายวัน\",\n \"streak\": \"เช็คอินติดต่อกัน {days} วัน\",\n \"calendarLabel\": \"ปฏิทินเช็คอิน\",\n \"rewardsTitle\": \"รางวัลต่อเนื่อง\",\n \"rewardsLabel\": \"รายการรางวัล\",\n \"weekday\": {\n \"sun\": \"อา\",\n \"mon\": \"จ\",\n \"tue\": \"อ\",\n \"wed\": \"พ\",\n \"thu\": \"พฤ\",\n \"fri\": \"ศ\",\n \"sat\": \"ส\"\n }\n },\n \"auth\": {\n \"login\": {\n \"emailLabel\": \"อีเมล\",\n \"passwordLabel\": \"รหัสผ่าน\",\n \"submit\": \"เข้าสู่ระบบ\",\n \"createAccount\": \"สร้างบัญชี\",\n \"forgotPassword\": \"ลืมรหัสผ่าน?\",\n \"orDivider\": \"หรือ\"\n },\n \"register\": {\n \"emailLabel\": \"อีเมล\",\n \"passwordLabel\": \"รหัสผ่าน\",\n \"confirmPasswordLabel\": \"ยืนยันรหัสผ่าน\",\n \"passwordHint\": \"อย่างน้อย 8 ตัวอักษร ประกอบด้วยตัวอักษรและตัวเลข\",\n \"submit\": \"สร้างบัญชี\",\n \"hasAccount\": \"มีบัญชีแล้ว? เข้าสู่ระบบ\",\n \"passwordMismatch\": \"รหัสผ่านไม่ตรงกัน\"\n },\n \"oauth\": {\n \"continueWith\": \"ดำเนินการต่อด้วย {provider}\"\n },\n \"verify\": {\n \"resend\": \"ส่งรหัสอีกครั้ง\",\n \"resendCountdown\": \"ส่งอีกครั้ง ({countdown} วินาที)\"\n },\n \"forgot\": {\n \"title\": \"รีเซ็ตรหัสผ่าน\",\n \"description\": \"กรอกอีเมลของคุณ แล้วเราจะส่งรหัสยืนยันให้คุณ\",\n \"emailLabel\": \"อีเมล\",\n \"submit\": \"ส่งรหัส\",\n \"backToLogin\": \"กลับไปเข้าสู่ระบบ\"\n }\n }\n },\n \"sdk\": {\n \"error\": {\n \"210900\": \"พารามิเตอร์ไม่ถูกต้อง\",\n \"210901\": \"ต้องระบุรหัสผู้เช่า\",\n \"210902\": \"คำขอมากเกินไป กรุณาลองใหม่ภายหลัง\",\n \"210903\": \"ไม่ได้รับอนุญาต\",\n \"210904\": \"โทเค็นหมดอายุ\",\n \"210905\": \"โทเค็นไม่ถูกต้อง\",\n \"210906\": \"การรีเฟรชโทเค็นล้มเหลว\",\n \"210907\": \"การแลกเปลี่ยนโทเค็นแพลตฟอร์มล้มเหลว\",\n \"210908\": \"รีเฟรชโทเค็นไม่ถูกต้อง\",\n \"210909\": \"รีเฟรชโทเค็นหมดอายุ\",\n \"210911\": \"ไม่พบสมาชิก\",\n \"210912\": \"ไม่พบข้อมูลระดับ\",\n \"210920\": \"อีเมลนี้ถูกลงทะเบียนแล้ว\",\n \"210921\": \"รหัสผ่านอ่อนแอเกินไป: ต้องมีอย่างน้อย 8 ตัวอักษร ประกอบด้วยตัวอักษรและตัวเลข\",\n \"210922\": \"ส่งรหัสยืนยันบ่อยเกินไป กรุณาลองใหม่ภายหลัง\",\n \"210923\": \"รหัสยืนยันไม่ถูกต้องหรือหมดอายุ\",\n \"210924\": \"ข้อมูลการลงทะเบียนหมดอายุ กรุณาลงทะเบียนใหม่\",\n \"210925\": \"อีเมลหรือรหัสผ่านไม่ถูกต้อง\",\n \"210926\": \"อีเมลยังไม่ได้ยืนยัน กรุณายืนยันก่อน\",\n \"210927\": \"การยืนยันตัวตน OAuth ล้มเหลว\",\n \"210928\": \"สถานะ OAuth ไม่ถูกต้องหรือหมดอายุ\",\n \"210929\": \"วิธีการเข้าสู่ระบบไม่รองรับ\",\n \"210930\": \"การสร้างผู้ใช้ล้มเหลว\",\n \"210931\": \"การคำนวณส่วนลดล้มเหลว\",\n \"210951\": \"การสอบถามยอดคะแนนล้มเหลว\",\n \"210952\": \"การสอบถามธุรกรรมคะแนนล้มเหลว\",\n \"210953\": \"การสะสมคะแนนล้มเหลว\",\n \"210954\": \"การเปิดใช้งานคะแนนล้มเหลว\",\n \"210955\": \"การใช้คะแนนล้มเหลว\",\n \"210956\": \"ยอดคะแนนไม่เพียงพอ\",\n \"210957\": \"ไม่พบบัญชีคะแนน\",\n \"210958\": \"สถานะคะแนนไม่อนุญาตให้ดำเนินการนี้\",\n \"210971\": \"คูปองหมด\",\n \"210972\": \"คูปองถูกรับไปแล้ว\",\n \"210981\": \"การเขียนคิวข้อความล้มเหลว\",\n \"210982\": \"การซิงค์บริการภายในล้มเหลว\",\n \"210983\": \"ไม่พบสินค้าแลกเปลี่ยน\",\n \"210984\": \"การแลกเปลี่ยนล้มเหลว\",\n \"210985\": \"ไม่พบรหัสแนะนำ\",\n \"210986\": \"การผูกการแนะนำล้มเหลว\",\n \"210987\": \"ไม่พบผู้แนะนำ\",\n \"210988\": \"ไม่สามารถเชิญตัวเองได้\",\n \"210989\": \"การรับคูปองล้มเหลว\",\n \"210990\": \"เช็คอินแล้ววันนี้\",\n \"210991\": \"การเช็คอินล้มเหลว\",\n \"211900\": \"ดำเนินการล้มเหลว กรุณาลองใหม่\",\n \"211901\": \"การยืนยันตัวตนล้มเหลว\",\n \"211902\": \"บัญชีไม่ได้ผูก\",\n \"211903\": \"การเข้าถึงถูกปฏิเสธ\",\n \"211904\": \"ไม่พบการกำหนดค่า\",\n \"211905\": \"ขอบเขตการกำหนดค่าไม่ถูกต้อง\",\n \"211906\": \"ไม่พบบทบาท\",\n \"211907\": \"บทบาทระบบไม่สามารถลบได้\",\n \"211908\": \"ไม่มีสิทธิ์เข้าถึงผู้เช่านี้\",\n \"211909\": \"การตรวจสอบล้มเหลว\",\n \"211910\": \"ไม่พบทรัพยากร\",\n \"211911\": \"ไม่พบสมาชิก\",\n \"211912\": \"ข้อมูลประจำตัวขัดแย้ง กรุณาติดต่อฝ่ายสนับสนุน\",\n \"211913\": \"การเปิดใช้งานบัญชีเงาล้มเหลว\",\n \"211914\": \"ไม่พบบันทึกการตรวจสอบ\",\n \"211915\": \"สถานะบันทึกการตรวจสอบไม่ใช่รอดำเนินการ\",\n \"211916\": \"ไม่พบ OneID\",\n \"211917\": \"การยกเลิกการเชื่อมโยง OneID ล้มเหลว\",\n \"211931\": \"ไม่พบการกำหนดค่าระดับ\",\n \"211932\": \"ระดับมีสมาชิกที่เกี่ยวข้อง ไม่สามารถลบได้\",\n \"211933\": \"การตรวจสอบเงื่อนไขการอัปเกรดระดับล้มเหลว\",\n \"211934\": \"ลำดับระดับต้องต่อเนื่อง\",\n \"211951\": \"การเปลี่ยนสถานะบัญชีไม่ถูกต้อง\",\n \"211952\": \"ยอดคะแนนไม่เพียงพอ\",\n \"211953\": \"ไม่พบบันทึกบัญชี\",\n \"211954\": \"ธุรกรรมคะแนนซ้ำ\",\n \"211955\": \"จำนวนคะแนนไม่ถูกต้อง\",\n \"211956\": \"การหักคะแนนเกินอัตราส่วนสูงสุด\",\n \"211957\": \"คะแนนต่ำกว่าเกณฑ์ขั้นต่ำ\",\n \"211958\": \"ยังไม่ได้กำหนดค่ากฎการสะสมคะแนน\",\n \"211959\": \"การเปิดใช้งานคะแนนล้มเหลว: สถานะไม่ใช่รอดำเนินการ\",\n \"211960\": \"การเข้าถึงธุรกรรมคะแนนถูกปฏิเสธ\",\n \"211961\": \"คะแนนหมดอายุแล้ว\",\n \"211962\": \"ยังไม่ได้กำหนดค่ากฎการเติบโต\",\n \"211971\": \"ไม่พบเทมเพลตคูปอง\",\n \"211972\": \"สถานะเทมเพลตคูปองไม่ถูกต้อง\",\n \"211973\": \"เกินขีดจำกัดคูปองต่อผู้ใช้\",\n \"211974\": \"เกินโควตาคูปองทั้งหมด\",\n \"211975\": \"สถานะการใช้คูปองไม่ถูกต้อง\",\n \"211976\": \"คูปองหมดอายุ\",\n \"211977\": \"เทมเพลตคูปองมีคูปองที่ออกแล้ว ไม่สามารถลบได้\",\n \"211981\": \"ไม่พบงานการแจ้งเตือน\",\n \"211982\": \"สถานะงานการแจ้งเตือนไม่อนุญาตให้แก้ไข\",\n \"211983\": \"สถานะงานการแจ้งเตือนไม่อนุญาตให้ยกเลิก\",\n \"211984\": \"ไม่พบเทมเพลตการแจ้งเตือน\",\n \"211985\": \"กลุ่มเป้าหมายการแจ้งเตือนว่างเปล่า\",\n \"211991\": \"บริการไม่ว่าง กรุณาลองใหม่ภายหลัง\",\n \"211992\": \"การเผยแพร่ข้อความล้มเหลว\",\n \"211993\": \"ข้อความเข้าคิวข้อความตาย\",\n \"211001\": \"การตรวจสอบลายเซ็น webhook ล้มเหลว\",\n \"211002\": \"แพลตฟอร์ม webhook ไม่รองรับ\",\n \"211003\": \"คำขอ webhook ซ้ำ\",\n \"211004\": \"ยังไม่ได้กำหนดค่า secret ของ webhook\",\n \"211005\": \"เวลา webhook หมดอายุ\",\n \"network\": \"เกิดข้อผิดพลาดของเครือข่าย กรุณาตรวจสอบการเชื่อมต่อ\",\n \"timeout\": \"หมดเวลาคำขอ กรุณาลองใหม่\",\n \"aborted\": \"คำขอถูกยกเลิก\",\n \"parse\": \"เกิดข้อผิดพลาดในการแยกวิเคราะห์การตอบกลับ\",\n \"unauthorized\": \"กรุณาเข้าสู่ระบบก่อน\",\n \"config\": \"เกิดข้อผิดพลาดในการเริ่มต้น SDK\",\n \"unknown\": \"เกิดข้อผิดพลาดที่ไม่ทราบสาเหตุ\"\n }\n }\n}\n","/**\n * @shopplus/membership-i18n 入口\n * 会员中台共享国际化 - 语言包 + 格式化函数 + RTL 支持\n */\n\n// 格式化函数导出\nexport { formatCurrency } from './format/currency';\nexport type { FormatCurrencyOptions } from './format/currency';\n\nexport { formatDate, formatRelativeTime } from './format/date';\nexport type { FormatDateOptions } from './format/date';\n\nexport { formatNumber } from './format/number';\nexport type { FormatNumberOptions } from './format/number';\n\n// RTL 支持\nexport { isRtl, getRtlLocales } from './rtl';\n\n// 类型定义\nimport type zhCN from './locales/zh-CN.json';\n\n/** 语言包类型(基于 zh-CN 推导) */\nexport type LocaleMessages = typeof zhCN;\n\n/** 支持的语言(12 种 = PRD §10.3 双 CN + 主流欧美亚 + 阿拉伯/希伯来 RTL + LATAM 葡 + 泰) */\nexport type SupportedLocale =\n | 'zh-CN'\n | 'zh-TW'\n | 'en-US'\n | 'ja-JP'\n | 'ko-KR'\n | 'fr-FR'\n | 'de-DE'\n | 'es-ES'\n | 'pt-BR'\n | 'ar-SA'\n | 'he-IL'\n | 'th-TH';\n\n/** 翻译函数参数 */\nexport interface TranslateParams {\n [key: string]: string | number;\n}\n\n// 语言包注册表\nconst localeMap = new Map<string, LocaleMessages>();\n\n/** 当前激活的语言 */\nlet currentLocale: string = 'zh-CN';\n\n/**\n * 注册语言包\n */\nexport function registerLocale(locale: string, messages: LocaleMessages): void {\n localeMap.set(locale, messages);\n}\n\n/**\n * 设置当前语言\n */\nexport function setLocale(locale: string): void {\n currentLocale = locale;\n}\n\n/**\n * 获取当前语言\n */\nexport function getLocale(): string {\n return currentLocale;\n}\n\n/**\n * 翻译函数\n * 支持插值:t('points.earn', { amount: 100 }) => \"获得 100 积分\"\n *\n * @param key - 翻译键(点分隔,如 'common.points')\n * @param params - 插值参数\n * @returns 翻译后的文本\n */\nexport function t(key: string, params?: TranslateParams): string {\n const messages = localeMap.get(currentLocale);\n if (!messages) return key;\n\n // 解析点分隔路径\n const parts = key.split('.');\n let result: unknown = messages;\n\n for (const part of parts) {\n if (result === null || result === undefined || typeof result !== 'object') {\n return key;\n }\n result = (result as Record<string, unknown>)[part];\n }\n\n if (typeof result !== 'string') return key;\n\n // 插值替换 {key} => value\n if (!params) return result;\n\n return result.replace(/\\{(\\w+)\\}/g, (_, paramKey: string) => {\n const value = params[paramKey];\n return value !== undefined ? String(value) : `{${paramKey}}`;\n });\n}\n\n/**\n * 初始化内置语言包\n * 延迟加载,避免打包体积过大\n */\nexport async function loadBuiltinLocale(locale: SupportedLocale): Promise<void> {\n let messages: LocaleMessages;\n\n switch (locale) {\n case 'zh-CN':\n messages = (await import('./locales/zh-CN.json')).default as LocaleMessages;\n break;\n case 'zh-TW':\n messages = (await import('./locales/zh-TW.json')).default as LocaleMessages;\n break;\n case 'en-US':\n messages = (await import('./locales/en-US.json')).default as LocaleMessages;\n break;\n case 'ja-JP':\n messages = (await import('./locales/ja-JP.json')).default as LocaleMessages;\n break;\n case 'ko-KR':\n messages = (await import('./locales/ko-KR.json')).default as LocaleMessages;\n break;\n case 'fr-FR':\n messages = (await import('./locales/fr-FR.json')).default as LocaleMessages;\n break;\n case 'de-DE':\n messages = (await import('./locales/de-DE.json')).default as LocaleMessages;\n break;\n case 'es-ES':\n messages = (await import('./locales/es-ES.json')).default as LocaleMessages;\n break;\n case 'pt-BR':\n messages = (await import('./locales/pt-BR.json')).default as LocaleMessages;\n break;\n case 'ar-SA':\n messages = (await import('./locales/ar-SA.json')).default as LocaleMessages;\n break;\n case 'he-IL':\n messages = (await import('./locales/he-IL.json')).default as LocaleMessages;\n break;\n case 'th-TH':\n messages = (await import('./locales/th-TH.json')).default as LocaleMessages;\n break;\n default:\n throw new Error(`Unsupported locale: ${locale}`);\n }\n\n registerLocale(locale, messages);\n setLocale(locale);\n}\n"],"mappings":"meAiCA,SAAgB,GAAe,EAAgB,EAA2D,CAKxG,KAAM,CAAE,SAAA,EAAU,OAAA,EAAQ,sBAAA,EAAuB,sBAAA,CAAA,EAJV,OAAO,GAAsB,SAChE,CAAE,SAAU,CAAkB,EAC9B,EAWJ,OAAO,IAPe,KAAK,aAAa,EAAQ,CAC9C,MAAO,WACP,SAAA,EACA,sBAAA,EACA,sBAAA,CACF,CAEO,EAAU,OAAO,CAAM,CAChC,CCdA,SAAgB,GAAW,EAA8B,EAAqC,CAC5F,KAAM,CAAE,OAAA,EAAQ,UAAA,EAAW,UAAA,EAAW,SAAA,CAAA,EAAa,GAAA,KAAA,EAAW,CAAC,EAEzD,EAAY,IAAI,KAAK,eAAe,EAAQ,CAChD,UAAW,GAAA,KAAA,EAAa,SACxB,UAAA,EACA,SAAA,CACF,CAAC,EAED,IAAI,EACJ,OAAI,OAAO,GAAS,SAClB,EAAU,IAAI,KAAK,CAAI,EACd,OAAO,GAAS,SACzB,EAAU,IAAI,KAAK,CAAI,EAEvB,EAAU,EAGL,EAAU,OAAO,CAAO,CACjC,CASA,SAAgB,GAAmB,EAAqB,EAAyB,CAC/E,MAAM,EAAU,OAAO,GAAS,SAAW,IAAI,KAAK,CAAI,EAAI,EACtD,EAAM,KAAK,IAAI,EACf,EAAS,EAAQ,QAAQ,EAAI,EAC7B,EAAU,KAAK,MAAM,EAAS,GAAI,EAClC,EAAU,KAAK,MAAM,EAAU,EAAE,EACjC,EAAW,KAAK,MAAM,EAAU,EAAE,EAClC,GAAU,KAAK,MAAM,EAAW,EAAE,EAElC,EAAM,IAAI,KAAK,mBAAmB,EAAQ,CAAE,QAAS,MAAO,CAAC,EAEnE,OAAI,KAAK,IAAI,CAAO,EAAI,GACf,EAAI,OAAO,EAAS,QAAQ,EAC1B,KAAK,IAAI,CAAO,EAAI,GACtB,EAAI,OAAO,EAAS,QAAQ,EAC1B,KAAK,IAAI,CAAQ,EAAI,GACvB,EAAI,OAAO,EAAU,MAAM,EAE3B,EAAI,OAAO,GAAS,KAAK,CAEpC,sXC3CU,QAAA,EADV,SAAgB,GAAa,EAAe,EAAkE,CAC5G,MAAA,EAAmC,GAAA,KAAA,EAAW,CAAC,EAAzC,CAAE,OAAA,CAAA,EAAA,EAAW,EAAA,GAAA,EAAA,EAAA,EAInB,OAAO,IAFe,KAAK,aAAa,EAAQ,CAEzC,EAAU,OAAO,CAAK,CAC/B,CCtCA,IAAM,GAAmC,IAAI,IAAI,CAC/C,QACA,QACA,OACF,CAAC,EAQD,SAAgB,GAAM,EAAyB,CAC7C,OAAO,GAAY,IAAI,CAAM,CAC/B,CAGA,SAAgB,IAAmC,CACjD,MAAO,CAAC,GAAG,EAAW,CACxB,43lFaoBM,GAAY,IAAI,IAGlB,GAAwB,QAK5B,SAAgB,GAAe,EAAgB,EAAgC,CAC7E,GAAU,IAAI,EAAQ,CAAQ,CAChC,CAKA,SAAgB,GAAU,EAAsB,CAC9C,GAAgB,CAClB,CAKA,SAAgB,IAAoB,CAClC,OAAO,EACT,CAUA,SAAgB,GAAE,EAAa,EAAkC,CAC/D,MAAM,EAAW,GAAU,IAAI,EAAa,EAC5C,GAAI,CAAC,EAAU,OAAO,EAGtB,MAAM,EAAQ,EAAI,MAAM,GAAG,EAC3B,IAAI,EAAkB,EAEtB,UAAW,KAAQ,EAAO,CACxB,GAAI,GAAW,MAAgC,OAAO,GAAW,SAC/D,OAAO,EAET,EAAU,EAAmC,CAAA,CAC/C,CAEA,OAAI,OAAO,GAAW,SAAiB,EAGlC,EAEE,EAAO,QAAQ,aAAA,CAAe,EAAG,IAAqB,CAC3D,MAAM,EAAQ,EAAO,CAAA,EACrB,OAAO,IAAU,OAAY,OAAO,CAAK,EAAI,IAAI,CAAA,GACnD,CAAC,EALmB,CAMtB,CAMA,eAAsB,GAAkB,EAAwC,CAC9E,IAAI,EAEJ,OAAQ,EAAR,CACE,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,IAAK,QACH,GAAY,MAAA,QAAA,QAAA,EAAA,KAAA,KAAA,GAAA,EAAA,GAAA,GAAsC,QAClD,MACF,QACE,MAAM,IAAI,MAAM,uBAAuB,CAAA,EAAQ,CACnD,CAEA,GAAe,EAAQ,CAAQ,EAC/B,GAAU,CAAM,CAClB"}
|
package/dist/rtl.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RTL(从右到左)语言支持
|
|
3
|
+
* 用于判断语言是否需要 RTL 布局方向
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* 判断指定 locale 是否为 RTL 语言
|
|
7
|
+
*
|
|
8
|
+
* @param locale - 语言标识(如 'ar-SA')
|
|
9
|
+
* @returns 是否为 RTL 语言
|
|
10
|
+
*/
|
|
11
|
+
export declare function isRtl(locale: string): boolean;
|
|
12
|
+
/** 获取所有 RTL locale 列表(只读) */
|
|
13
|
+
export declare function getRtlLocales(): readonly string[];
|
|
14
|
+
//# sourceMappingURL=rtl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rtl.d.ts","sourceRoot":"","sources":["../src/rtl.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE7C;AAED,6BAA6B;AAC7B,wBAAgB,aAAa,IAAI,SAAS,MAAM,EAAE,CAEjD"}
|