{"version":3,"file":"random.cjs","names":[],"sources":["../../src/number/random.ts"],"sourcesContent":["/**\n * Produces a random number between the inclusive lower and upper bounds.\n * If only one argument is provided, a number between 0 and the given number is returned.\n *\n * @param lower - The lower bound or upper bound if upper is not provided\n * @param upper - The upper bound\n * @param floating - Specify returning a floating-point number\n * @returns Returns the random number\n *\n * @example\n * random(5) // => random number between 0 and 5\n * random(5, 10) // => random number between 5 and 10\n * random(5, 10, true) // => random floating-point number between 5 and 10\n */\nexport function random(lower: number, upper?: number, floating?: boolean): number {\n  let min = lower;\n  let max: number;\n\n  if (upper === undefined) {\n    max = min;\n    min = 0;\n  } else {\n    max = upper;\n  }\n\n  if (min > max) {\n    [min, max] = [max, min];\n  }\n\n  const result = Math.random() * (max - min) + min;\n  return floating ? result : Math.floor(result);\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAcA,SAAgB,OAAO,OAAe,OAAgB,UAA4B;CAChF,IAAI,MAAM;CACV,IAAI;CAEJ,IAAI,UAAU,KAAA,GAAW;EACvB,MAAM;EACN,MAAM;CACR,OACE,MAAM;CAGR,IAAI,MAAM,KACR,CAAC,KAAK,OAAO,CAAC,KAAK,GAAG;CAGxB,MAAM,SAAS,KAAK,OAAO,KAAK,MAAM,OAAO;CAC7C,OAAO,WAAW,SAAS,KAAK,MAAM,MAAM;AAC9C"}