2024-03-21 02:39:29 +00:00
|
|
|
export const formatPercent = (
|
|
|
|
value: any,
|
|
|
|
floatingPoint: number = 1,
|
|
|
|
maskZero: boolean = false,
|
|
|
|
) => {
|
2024-03-07 09:08:44 +00:00
|
|
|
if (value === null || value === undefined || (value === 0 && maskZero)) {
|
2024-02-15 08:51:54 +00:00
|
|
|
return '-';
|
|
|
|
}
|
|
|
|
if (value < 100.0) {
|
|
|
|
value = value * 100;
|
|
|
|
}
|
|
|
|
return value.toFixed(floatingPoint);
|
|
|
|
};
|
2024-02-06 09:25:49 +00:00
|
|
|
|
2024-03-21 02:39:29 +00:00
|
|
|
export const formatNumber = (
|
|
|
|
value: any,
|
|
|
|
floatingPoint: number = 1,
|
|
|
|
maskZero: boolean = false,
|
|
|
|
) => {
|
2024-03-07 09:18:06 +00:00
|
|
|
if (value === null || value === undefined || (value === 0 && maskZero)) {
|
|
|
|
return '-';
|
|
|
|
}
|
|
|
|
return value.toFixed(floatingPoint);
|
|
|
|
};
|
|
|
|
|
2024-02-15 08:51:54 +00:00
|
|
|
export const ensureMin = (
|
|
|
|
value: number,
|
|
|
|
min: number,
|
|
|
|
skipZero: boolean = true,
|
|
|
|
) => {
|
2024-03-07 09:08:44 +00:00
|
|
|
if (formatPercent(value) == '-') return false;
|
2024-02-15 08:51:54 +00:00
|
|
|
if (skipZero && value === 0) {
|
2024-02-06 09:25:49 +00:00
|
|
|
return false;
|
2024-02-15 08:51:54 +00:00
|
|
|
}
|
|
|
|
if (value < min) {
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
};
|
2024-02-06 09:25:49 +00:00
|
|
|
|
2024-02-15 08:51:54 +00:00
|
|
|
export const ensureMax = (
|
|
|
|
value: number,
|
|
|
|
max: number,
|
|
|
|
skipZero: boolean = true,
|
|
|
|
) => {
|
2024-03-07 09:08:44 +00:00
|
|
|
if (formatPercent(value) == '-') return false;
|
2024-02-15 08:51:54 +00:00
|
|
|
if (skipZero && value === 0) {
|
2024-02-06 09:25:49 +00:00
|
|
|
return false;
|
2024-02-15 08:51:54 +00:00
|
|
|
}
|
|
|
|
if (value > max) {
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
};
|
2024-03-21 02:39:29 +00:00
|
|
|
|
|
|
|
export const numberWithCommas = (x: number) => {
|
|
|
|
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
|
|
|
};
|