@particle-network/connectkit
Version:
8 lines (7 loc) • 4.18 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../../src/locales/index.tsx"],
"sourcesContent": ["import { default as enUS } from './en-US.json';\nimport { default as jaJP } from './ja-JP.json';\nimport { default as koKR } from './ko-KR.json';\nimport { default as zhCN } from './zh-CN.json';\nimport { default as zhTW } from './zh-TW.json';\n\ndeclare global {\n interface String {\n format(...values: (string | number)[]): string;\n }\n}\n\nexport type Languages = 'en-US' | 'ja-JP' | 'zh-CN' | 'zh-TW' | 'ko-KR';\n\nexport type Translations = {\n btnContinueWithPasskey?: string;\n btnCreatePasskeyWallet?: string;\n btnLoginWithPasskey?: string;\n usePasskeyToLoginSmartAccount?: string;\n};\n\nexport type TransactionType = typeof enUS;\n\nexport type TransactionKey = keyof TransactionType;\n\nexport type Locales = {\n 'en-US'?: Partial<TransactionType>;\n 'ja-JP'?: Partial<TransactionType>;\n 'zh-CN'?: Partial<TransactionType>;\n 'zh-TW'?: Partial<TransactionType>;\n 'ko-KR'?: Partial<TransactionType>;\n};\n\nexport const getLocale = (lang: Languages): TransactionType => {\n switch (lang) {\n case 'ja-JP':\n return jaJP;\n case 'zh-CN':\n return zhCN;\n case 'zh-TW':\n return zhTW;\n case 'ko-KR':\n return koKR;\n default:\n return enUS;\n }\n};\n\nString.prototype.format = function (...values: (string | number)[]) {\n const formatValue = this.replace(/\\{\\d+\\}/g, (match) => {\n const index = parseInt(match.slice(1, -1), 10);\n return values[index]?.toString() ?? match; // Use the provided value or keep the placeholder if not provided\n });\n return formatValue;\n};\n\nexport function formatLocale(txt: string, ...values: (string | number | React.ReactNode)[]) {\n const nodePlacer = '<></>';\n const nodes: React.ReactNode[] = [];\n const formatValue = txt.replace(/\\{\\d+\\}/g, (match) => {\n const index = parseInt(match.slice(1, -1), 10);\n const value = values[index];\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean' || !value) {\n return values[index]?.toString() ?? match; // Use the provided value or keep the placeholder if not provided\n }\n nodes.push(value);\n return nodePlacer;\n });\n if (nodes.length > 0) {\n const strs = formatValue.split(nodePlacer);\n const elements: React.ReactNode[] = [];\n for (let i = 0; i < strs.length; i++) {\n elements.push(strs[i]);\n if (nodes[i]) {\n elements.push(nodes[i]);\n }\n }\n return elements.map((item) => item);\n }\n return formatValue;\n}\n"],
"mappings": ";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCO,IAAM,YAAY,CAAC,SAAqC;AAC7D,UAAQ,MAAM;AAAA,IACZ,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAEA,OAAO,UAAU,SAAS,YAAa,QAA6B;AAClE,QAAM,cAAc,KAAK,QAAQ,YAAY,CAAC,UAAU;AACtD,UAAM,QAAQ,SAAS,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE;AAC7C,WAAO,OAAO,QAAQ,SAAS,KAAK;AAAA,EACtC,CAAC;AACD,SAAO;AACT;AAEO,SAAS,aAAa,QAAgB,QAA+C;AAC1F,QAAM,aAAa;AACnB,QAAM,QAA2B,CAAC;AAClC,QAAM,cAAc,IAAI,QAAQ,YAAY,CAAC,UAAU;AACrD,UAAM,QAAQ,SAAS,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE;AAC7C,UAAM,QAAQ,OAAO;AACrB,QAAI,OAAO,UAAU,YAAY,OAAO,UAAU,YAAY,OAAO,UAAU,aAAa,CAAC,OAAO;AAClG,aAAO,OAAO,QAAQ,SAAS,KAAK;AAAA,IACtC;AACA,UAAM,KAAK,KAAK;AAChB,WAAO;AAAA,EACT,CAAC;AACD,MAAI,MAAM,SAAS,GAAG;AACpB,UAAM,OAAO,YAAY,MAAM,UAAU;AACzC,UAAM,WAA8B,CAAC;AACrC,aAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AACpC,eAAS,KAAK,KAAK,EAAE;AACrB,UAAI,MAAM,IAAI;AACZ,iBAAS,KAAK,MAAM,EAAE;AAAA,MACxB;AAAA,IACF;AACA,WAAO,SAAS,IAAI,CAAC,SAAS,IAAI;AAAA,EACpC;AACA,SAAO;AACT;",
"names": []
}