{"version":3,"sources":["../../../src/shared/lib/find-closest-quality.ts"],"sourcesContent":["import type { NextConfig } from '../../server/config-shared'\n\n/**\n * Find the closest matching `quality` in the list of `config.qualities`\n * @param quality the quality prop passed to the image component\n * @param config the \"images\" configuration from next.config.js\n * @returns the closest matching quality value\n */\nexport function findClosestQuality(\n  quality: number | undefined,\n  config: NextConfig['images'] | undefined\n): number {\n  const q = quality || 75\n  if (!config?.qualities?.length) {\n    return q\n  }\n  return config.qualities.reduce(\n    (prev, cur) => (Math.abs(cur - q) < Math.abs(prev - q) ? cur : prev),\n    config.qualities[0]\n  )\n}\n"],"names":["findClosestQuality","quality","config","q","qualities","length","reduce","prev","cur","Math","abs"],"mappings":";;;;+BAQgBA;;;eAAAA;;;AAAT,SAASA,mBACdC,OAA2B,EAC3BC,MAAwC;IAExC,MAAMC,IAAIF,WAAW;IACrB,IAAI,CAACC,QAAQE,WAAWC,QAAQ;QAC9B,OAAOF;IACT;IACA,OAAOD,OAAOE,SAAS,CAACE,MAAM,CAC5B,CAACC,MAAMC,MAASC,KAAKC,GAAG,CAACF,MAAML,KAAKM,KAAKC,GAAG,CAACH,OAAOJ,KAAKK,MAAMD,MAC/DL,OAAOE,SAAS,CAAC,EAAE;AAEvB","ignoreList":[0]}