[v10.0.x] Templating: Fix cell macro date formatting (#75173)
Templating: Fix cell macro date formatting (#75159)
Closes #70301
(cherry picked from commit 0884f78110)
Co-authored-by: kay delaney <45561153+kaydelaney@users.noreply.github.com>
This commit is contained in:
co-authored by
kay delaney
parent
de6e27e262
commit
86a6ebd700
@@ -541,4 +541,12 @@ describe('fixCellTemplateExpressions', () => {
|
||||
'${__data.fields[10]} asd ${__data.fields[15]} asd ${__data.fields[20]}'
|
||||
);
|
||||
});
|
||||
|
||||
it('Should handle date formatting', () => {
|
||||
expect(
|
||||
fixCellTemplateExpressions('$__cell_10:date:iso asd ${__cell_15:date:seconds} asd [[__cell_20:date:YYYY-MM]]')
|
||||
).toEqual(
|
||||
'${__data.fields[10]:date:iso} asd ${__data.fields[15]:date:seconds} asd ${__data.fields[20]:date:YYYY-MM}'
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -373,9 +373,12 @@ function getDisplayText(display: DisplayValue, fallback: string): string {
|
||||
}
|
||||
|
||||
export function fixCellTemplateExpressions(str: string) {
|
||||
return str.replace(/\${__cell_(\d+)}|\[\[__cell_(\d+)\]\]|\$__cell_(\d+)/g, (match, fmt1, fmt2, fmt3) => {
|
||||
return `\${__data.fields[${fmt1 ?? fmt2 ?? fmt3}]}`;
|
||||
});
|
||||
return str.replace(
|
||||
/\${__cell_(\d+)(.*?)}|\[\[__cell_(\d+)(.*?)\]\]|\$__cell_(\d+)(\S*)/g,
|
||||
(match, cellNum1, fmt1, cellNum2, fmt2, cellNum3, fmt3) => {
|
||||
return `\${__data.fields[${cellNum1 ?? cellNum2 ?? cellNum3}]${fmt1 ?? fmt2 ?? fmt3}}`;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user