import { Injectable } from '@nestjs/common'; import { HiboutikClient } from './hiboutik.client'; import { StockHiboutikDto } from '../models/hiboutikDTO/stock.hiboutik.dto'; /** Reads available stocks from the Hiboutik API. */ @Injectable() export class StockHiboutikRepository { constructor(private readonly hiboutikClient: HiboutikClient) {} /** Stock of every product and size, all warehouses combined. Not paginated. */ async getStocks(): Promise { const stocks = await this.hiboutikClient.getList('/stock_available/all_wh', {}); // Hiboutik may return ids as strings: normalize them so strict comparisons work downstream return stocks.map((stock) => ({ ...stock, product_id: Number(stock.product_id), product_size: Number(stock.product_size), })); } }