fix(number-fields): избегаем потери точности длинных чисел

- number-поля теперь рендерятся как text + inputMode=numeric,
  чтобы браузер не округлял значения через input type=number
- пробелы при вставке в number-поля удаляются
- бэкенд нормализует значения number-полей в строку перед сохранением
- добавлен хелпер normalizeFieldValueForStorage

Closes: искажение расчётного счёта и других длинных числовых полей
This commit is contained in:
2026-07-07 21:03:40 +03:00
commit 1f5ecb6da4
1089 changed files with 237546 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
import { convertHtmlToPdf, type PDFOptions } from "./external-pdf.service";
export { PDFOptions };
/**
* @deprecated Используйте напрямую convertHtmlToPdf из external-pdf.service.
* Этот класс оставлен для обратной совместимости.
*/
export class PDFConverterService {
async initialize(): Promise<void> {
// Не требуется — worker работает вне процесса
}
async close(): Promise<void> {
// Не требуется
}
async convert(html: string, options: PDFOptions = {}): Promise<Buffer> {
const pdf = await convertHtmlToPdf(html, options);
if (!pdf) {
throw new Error("Сервис генерации PDF временно недоступен. Попробуйте позже.");
}
return pdf;
}
}