Files
klz-cables.com/.pnpm-store/v10/files/41/f579b20c143a4e6e69dbdc008187808a6fd064fcca3f5961cd6d5a2938bd4b8f08b2ef47c11116eaee8b6b49b4e3130d3b9192575b377b53b0260698c5107a
Marc Mintel 5397309103
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
fix(products): fix breadcrumbs and product filtering (backport from main)
2026-02-24 16:04:21 +01:00

26 lines
587 B
Plaintext

/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Sean Larkin @thelarkinn
*/
"use strict";
/**
* @param {number=} size the size in bytes
* @returns {string} the formatted size
*/
module.exports.formatSize = (size) => {
if (typeof size !== "number" || Number.isNaN(size) === true) {
return "unknown size";
}
if (size <= 0) {
return "0 bytes";
}
const abbreviations = ["bytes", "KiB", "MiB", "GiB"];
const index = Math.floor(Math.log(size) / Math.log(1024));
return `${Number((size / 1024 ** index).toPrecision(3))} ${abbreviations[index]}`;
};