refactor: implement toCamelCase utility function and update quotation stats mapping

This commit is contained in:
puriphatt 2025-02-20 09:28:42 +07:00
parent 5e3c04be8e
commit 4f085e068a
2 changed files with 10 additions and 1 deletions

View file

@ -12,6 +12,7 @@ import useMyBranch from 'stores/my-branch';
import { useQuotationForm } from './form';
import { hslaColors } from './constants';
import { pageTabs, columnQuotation } from './constants';
import { toCamelCase } from 'stores/utils';
// NOTE Import Types
import { CustomerBranchCreate, CustomerType } from 'stores/customer/types';
@ -393,7 +394,9 @@ async function storeDataLocal(id: string) {
quotationStats[
pageState.currentTab === 'Invoice'
? 'paymentInProcess'
: (pageState.currentTab.toLowerCase() as keyof typeof quotationStats)
: (toCamelCase(
pageState.currentTab,
) as keyof typeof quotationStats)
]
}}
</q-badge>

View file

@ -609,3 +609,9 @@ export function getEmployeeName(
['tha']: `${typeof employee.namePrefix === 'string' ? useOptionStore().mapOption(employee.namePrefix) : ''} ${employee.firstName} ${employee.lastName}`,
}[opts?.locale || 'eng'];
}
export function toCamelCase(text: string): string {
return text
.replace(/[^a-zA-Z0-9]+(.)/g, (match, chr) => chr.toUpperCase())
.replace(/^[A-Z]/, (match) => match.toLowerCase());
}