Files
medreport_mrb2b/packages/shared/src/utils.ts
Helena 195af1db3d MED-137: add doctor other jobs view (#55)
* add doctor jobs view

* change translation

* another translation change

* clean up

* add analaysis detail view to paths config

* translation

* merge fix

* fix path

* move components to shared

* refactor

* imports

* clean up
2025-08-25 11:12:57 +03:00

60 lines
1.3 KiB
TypeScript

import { format } from 'date-fns';
import Isikukood, { Gender } from 'isikukood';
/**
* Check if the code is running in a browser environment.
*/
export function isBrowser() {
return typeof window !== 'undefined';
}
/**
* @name formatCurrency
* @description Format the currency based on the currency code
*/
export function formatCurrency(params: {
currencyCode: string;
locale: string;
value: string | number;
}) {
const [lang, region] = (params.locale ?? 'et-ET').split('-');
return new Intl.NumberFormat(region ?? lang, {
style: 'currency',
currency: params.currencyCode,
}).format(Number(params.value));
}
export function formatDateAndTime(date?: string) {
if (!date) return '-';
return format(date, 'dd.MM.yyyy HH:mm');
}
export function formatDate(date?: string) {
if (!date) return '-';
return format(date, 'dd.MM.yyyy');
}
export function getFullName(
firstName?: string | null,
lastName?: string | null,
) {
return [firstName ?? '', lastName ?? ''].join(' ');
}
export const getPersonParameters = (personalCode: string) => {
try {
const person = new Isikukood(personalCode);
return {
gender: person.getGender(),
dob: person.getBirthday(),
age: person.getAge(),
};
} catch (error) {
console.error(error);
return null;
}
};