|
1 | 1 | import { mkdirSync, writeFileSync } from 'node:fs' |
2 | 2 | import { dirname, join } from 'node:path' |
3 | 3 | import { ExcelColumnDataType, type SqPackReader } from '@ffcafe/ixion-sqpack' |
4 | | -import { Language, languageToCodeMap } from '@ffcafe/ixion-utils' |
| 4 | +import { formatLanguage, Language } from '@ffcafe/ixion-utils' |
5 | 5 | import { SingleBar } from 'cli-progress' |
6 | 6 | import { formatSeString, parseSeString } from './sestring' |
7 | 7 | import { |
@@ -97,28 +97,24 @@ export class StringsExporter { |
97 | 97 | const stringMap: Record<string, Map<string, any[]>> = {} |
98 | 98 | const idSet = new Set<string>() |
99 | 99 | for (const [language, reader] of readers.entries()) { |
| 100 | + const code = formatLanguage(language) |
100 | 101 | try { |
101 | 102 | const header = await readExhHeaderFromReader(reader, sheet) |
102 | 103 | const columnIndexes = getStringColumnIndexes(header) |
103 | 104 | columnCount = Math.max(columnCount, columnIndexes.length) |
104 | 105 |
|
105 | | - stringMap[languageToCodeMap[language]] = await readColumnsFromSheet( |
106 | | - reader, |
107 | | - { |
108 | | - sheetName: sheet, |
109 | | - header, |
110 | | - language, |
111 | | - columnIndexes, |
112 | | - }, |
113 | | - ) |
114 | | - |
115 | | - for (const id of stringMap[languageToCodeMap[language]].keys()) { |
| 106 | + stringMap[code] = await readColumnsFromSheet(reader, { |
| 107 | + sheetName: sheet, |
| 108 | + header, |
| 109 | + language, |
| 110 | + columnIndexes, |
| 111 | + }) |
| 112 | + |
| 113 | + for (const id of stringMap[code].keys()) { |
116 | 114 | idSet.add(id) |
117 | 115 | } |
118 | 116 | } catch { |
119 | | - console.error( |
120 | | - `${sheet}: Failed reading language ${languageToCodeMap[language]}`, |
121 | | - ) |
| 117 | + console.error(`${sheet}: Failed reading language ${code}`) |
122 | 118 | } |
123 | 119 | } |
124 | 120 |
|
|
0 commit comments