18 lines
694 B
TypeScript
18 lines
694 B
TypeScript
/** کدهای نامعتبر که پرگار/تهحساب گاهی بهجای کد واقعی میفرستند */
|
|
const INVALID_ACCOUNTING_CODES = new Set(['', '0', '-1', 'null', 'undefined'])
|
|
|
|
export function normalizeAccountingCode(value: unknown): string | null {
|
|
if (value === null || value === undefined) return null
|
|
const trimmed = String(value).trim()
|
|
if (INVALID_ACCOUNTING_CODES.has(trimmed.toLowerCase())) return null
|
|
return trimmed
|
|
}
|
|
|
|
export function isValidAccountingCode(value: unknown): boolean {
|
|
return normalizeAccountingCode(value) !== null
|
|
}
|
|
|
|
export function displayAccountingCode(value: unknown): string {
|
|
return normalizeAccountingCode(value) ?? '-'
|
|
}
|