import type { CreateUnitOfMeasureData, UnitOfMeasure, UnitOfMeasureApi, UpdateUnitOfMeasureData, } from '../types/unit-measure.interfaces'; const toBoolean = (value: boolean | number | undefined): boolean => { if (typeof value === 'boolean') { return value; } return value === 1; }; export const mapUnitFromApi = (apiUnit: UnitOfMeasureApi): UnitOfMeasure => ({ id: apiUnit.id, name: apiUnit.name, abbreviation: apiUnit.abbreviation, is_active: toBoolean(apiUnit.is_active), created_at: apiUnit.created_at, updated_at: apiUnit.updated_at, deleted_at: apiUnit.deleted_at, code_sat: apiUnit.code_sat, sat_unit: apiUnit.sat_unit, }); export const mapCreatePayload = (data: CreateUnitOfMeasureData): CreateUnitOfMeasureData => ({ name: data.name.trim(), abbreviation: data.abbreviation?.trim() || undefined, code_sat: data.code_sat ?? null, is_active: data.is_active ?? true, }); export const mapUpdatePayload = (data: UpdateUnitOfMeasureData): UpdateUnitOfMeasureData => ({ name: data.name?.trim(), abbreviation: data.abbreviation?.trim() || undefined, code_sat: data.code_sat ?? null, is_active: data.is_active, });