import {
  cartLocalStorageKey,
  parseStoredCartLines,
  type CartLine,
} from "@/data/cart";

/** Reads persisted cart lines in the browser (empty array on server or invalid data). */
export function readCartLinesFromStorage(): CartLine[] {
  if (typeof globalThis.window === "undefined") return [];
  try {
    const raw = globalThis.localStorage.getItem(cartLocalStorageKey);
    if (raw === null || raw === "") return [];
    const parsed = parseStoredCartLines(JSON.parse(raw) as unknown);
    return parsed ?? [];
  } catch {
    return [];
  }
}
