refactor(api): extrair montagem e paginação da busca para lib/offSearch

GET /api/search passa de CC 41 para <= 10. Testes de caracterização
(sem rede: fetch e cache JSON temporário) cobrem validação, filtros,
ordenação, paginação, modo cache-only e erros.

Também: parameter property de NutriScanError virou campo explícito e
imports só de tipo usam import type, para o type stripping nativo do
Node; o script de teste não usa mais --experimental-transform-types
(removida no Node 26).
This commit is contained in:
evandro committed 2026-10-10 04:14:48 -03:00
1 parent fc7243e5f8
commit bf688257ef
9 files changed
+752 -357

No files matched your search

+2 -2
View File
@@ -6,8 +6,8 @@
import { promises as fs } from "fs";
import fsSync from "fs";
import path from "path";
import { Product } from "./openFoodFactsApi";
import { CachedProduct, StorageStats } from "./types";
import type { Product } from "./openFoodFactsApi";
import type { CachedProduct, StorageStats } from "./types";
interface JsonCacheData {
products: { [key: string]: CachedProduct };