26 lines
960 B
TypeScript
26 lines
960 B
TypeScript
import React from 'react'
|
|
|
|
type CommonProps = {
|
|
value: string | number | '';
|
|
format: string;
|
|
}
|
|
|
|
export default function TransValueFormat({value='', format=''}: CommonProps) {
|
|
return (
|
|
format === 'yyyyMMdd' ?
|
|
<>{value.toString().substring(0,4)+'-'+value.toString().substring(4,6)+'-'+value.toString().substring(6,8)}</>
|
|
: format === 'number' ?
|
|
<>{String(value ?? '').includes('.')
|
|
? String(value).split('.').map((part, index) =>
|
|
index === 0 ? part.replace(/\B(?=(\d{3})+(?!\d))/g, ",") : part
|
|
).join('.')
|
|
: String(value ?? '').replace(/\B(?=(\d{3})+(?!\d))/g, ",")}</>
|
|
: format === 'float1' ?
|
|
<>{String(value ?? '').includes('.')
|
|
? String(value).split('.').map((part, index) =>
|
|
index === 0 ? part.replace(/\B(?=(\d{3})+(?!\d))/g, ",") : part
|
|
).join('.')
|
|
: String(value ?? '').replace(/\B(?=(\d{3})+(?!\d))/g, ",")}</>
|
|
: <>{value}</>
|
|
)
|
|
} |