/**
 * 获取随机字符串
 * @param {number} length 字符串长度，默认 32
 * @returns {string} 字符串
 * @example
 * ```ts
 * randomString()
 *
 * randomString(16)
 * ```
 */
function randomString() {
  var e = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 32;
  var t = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';
  var a = t.length;
  var n = '';
  for (var i = 0; i < e; i++) n += t.charAt(Math.floor(Math.random() * a));
  return n;
}
/**
 * 获取随机字符串
 * @param {number} length 字符串长度，默认 32
 * @returns {string} 字符串
 * @example
 * ```ts
 * randomString()
 *
 * randomString(16)
 * ```
 */
var getRandomString = randomString;
/**
 * 创建唯一 ID 生成器工厂函数
 * 返回一个函数，每次调用时生成递增的唯一 ID
 * @param compName - 组件名称，用于生成 ID 的一部分
 * @param prefix - ID 前缀，默认为 't'
 * @returns 返回一个生成唯一 ID 的函数
 * @example
 * ```ts
 * const getUniqueId = uniqueFactory('button', 'my');
 * getUniqueId(); // 'my_button_0'
 * getUniqueId(); // 'my_button_1'
 * getUniqueId(); // 'my_button_2'
 * ```
 */
var uniqueFactory = function uniqueFactory(compName) {
  var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 't';
  var number = 0;
  return function () {
    var uniqueId = "".concat(prefix, "_").concat(compName, "_").concat(number);
    number += 1;
    return uniqueId;
  };
};

export { getRandomString, randomString, uniqueFactory };
