Skip to content

Commit a121713

Browse files
committed
Fix for whitespace in label
1 parent 1861bae commit a121713

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

src/views/results/codegen.test.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,12 @@ test('Column to RPG symbol', () => {
1111
name = columnToRpgFieldName({display_size: 0, label: 'änderungs- benutzer ', name: 'ANDBEN', type: 'CHAR', precision: 10, scale: 0}, 'Name');
1212
expect(name).toBe('andben');
1313

14-
name = columnToRpgFieldName({display_size: 0, label: 'Cust.number....:', name: 'ANDBEN', type: 'CHAR', precision: 10, scale: 0}, 'Label');
14+
name = columnToRpgFieldName({display_size: 0, label: 'Cust.number....:', name: 'CUSNUM', type: 'CHAR', precision: 10, scale: 0}, 'Label');
1515
expect(name).toBe('cust_number');
1616

17+
name = columnToRpgFieldName({display_size: 0, label: 'Cust. name.... : ', name: 'CUSNAM', type: 'CHAR', precision: 10, scale: 0}, 'Label');
18+
expect(name).toBe('cust_name');
19+
1720
name = columnToRpgFieldName({display_size: 0, label: 'Country:', name: 'C1', type: 'CHAR', precision: 10, scale: 0}, 'Label');
1821
expect(name).toBe('country');
1922

src/views/results/codegen.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@ export function columnToRpgFieldName(column: ColumnMetaData, source: string = 'N
1919
.replace(/\u00e6/g, "ae") // æ -> ae
2020
.replace(/\u00f8/g, "oe") // ø -> oe
2121
.replace(/\u00e5/g, "aa") // å -> aa
22-
.replace(/[.:]+$/g, "") // remove trailing "." and ":"
22+
.replace(/[ .:]+$/g, "") // remove trailing space, "." and ":"
2323
.replace(/[.]/g, "_") // "." between words to underscore
2424
.replace(/\s+/g, "_") // remaining whitespaces to underscore
25-
.replace(/[^a-zA-Z0-9_]/g, '') // remove non-alphanumeric chars
25+
.replace(/[^a-zA-Z0-9_]/g, "") // remove non-alphanumeric chars
26+
.replace(/\_+/i, "_") // replace multiple underscores with single underscore
2627
.trim();
2728
if (!isNaN(+name.charAt(0))) {
2829
name = `col` + name;

0 commit comments

Comments
 (0)