Skip to content

Commit 92df3a6

Browse files
committed
fix(exd): fix string columns handling in StringsExporter
1 parent 3e5aedf commit 92df3a6

1 file changed

Lines changed: 20 additions & 4 deletions

File tree

packages/exd/src/strings.ts

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -205,21 +205,37 @@ export class StringsExporter {
205205
}
206206

207207
let hasValue = false
208-
const formattedValues: Record<string, string> = {}
208+
const filteredRecord: Record<string, string[]> = {}
209+
for (const language of languages) {
210+
filteredRecord[language] = []
211+
}
212+
209213
for (let i = 0; i < columnCount; i++) {
210214
const values = languages.map((language) => record[language][i])
211-
if (values.every((value) => value === values[0])) {
215+
if (
216+
(values.length === 1 && !values[0]) ||
217+
(values.length > 1 && values.every((value) => value === values[0]))
218+
) {
212219
continue
213220
}
214221

215222
hasValue = true
216223
for (let j = 0; j < languages.length; j++) {
217224
if (typeof values[j] === 'string') {
218-
formattedValues[languages[j]] = values[j]
225+
filteredRecord[languages[j]].push(values[j])
219226
}
220227
}
221228
}
222229

223-
return hasValue ? formattedValues : null
230+
if (!hasValue) {
231+
return null
232+
}
233+
234+
const formattedValues: Record<string, string> = {}
235+
for (const language of languages) {
236+
formattedValues[language] = filteredRecord[language].join('\n')
237+
}
238+
239+
return formattedValues
224240
}
225241
}

0 commit comments

Comments
 (0)