Source: lib/util/transformers/percentTransformer.js

/**
 * Transforms numbers into percentages and leaves strings as they are.
 *
 * Numbers below 1 are multiplied by 100.
 *
 * @example
 * const percentage = percent(0.5)    // 50%
 * @example
 * const percentage = percent(50)     // 50%
 *
 * @param {(string|number|bigint)} value - The value to be transformed
 * @returns {(string|Array.<string>)} The transformed value as a string or an array
 * @name percent
 * @memberOf util
 */
export default value => {
  switch (typeof value) {
    case 'number':
    case 'bigint':
      if (value <= 1) {
        return [value * 100, '%']
      }
      return [value, '%']
    case 'string':
      return value
    default:
      throw new TypeError('Value has to be of type string, number or bigint')
  }
}