| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430 | var __defProp = Object.defineProperty;var __getOwnPropDesc = Object.getOwnPropertyDescriptor;var __getOwnPropNames = Object.getOwnPropertyNames;var __hasOwnProp = Object.prototype.hasOwnProperty;var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });var __export = (target, all) => {  for (var name in all)    __defProp(target, name, { get: all[name], enumerable: true });};var __reExport = (target, module2, copyDefault, desc) => {  if (module2 && typeof module2 === "object" || typeof module2 === "function") {    for (let key of __getOwnPropNames(module2))      if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))        __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });  }  return target;};var __toCommonJS = /* @__PURE__ */ ((cache) => {  return (module2, temp) => {    return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);  };})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);// src/index.tsvar src_exports = {};__export(src_exports, {  assert: () => assert,  at: () => at,  batchInvoke: () => batchInvoke,  clamp: () => clamp,  clampArrayRange: () => clampArrayRange,  clearUndefined: () => clearUndefined,  createPromiseLock: () => createPromiseLock,  createSingletonPromise: () => createSingletonPromise,  debounce: () => debounce,  deepMerge: () => deepMerge,  ensurePrefix: () => ensurePrefix,  flattenArrayable: () => flattenArrayable,  hasOwnProperty: () => hasOwnProperty,  invoke: () => invoke,  isBoolean: () => isBoolean,  isBrowser: () => isBrowser,  isDef: () => isDef,  isFunction: () => isFunction,  isKeyOf: () => isKeyOf,  isNumber: () => isNumber,  isObject: () => isObject,  isString: () => isString,  isTruthy: () => isTruthy,  isWindow: () => isWindow,  last: () => last,  mergeArrayable: () => mergeArrayable,  move: () => move,  noNull: () => noNull,  noop: () => noop,  notNullish: () => notNullish,  notUndefined: () => notUndefined,  objectEntries: () => objectEntries,  objectKeys: () => objectKeys,  objectMap: () => objectMap,  objectPick: () => objectPick,  partition: () => partition,  range: () => range,  remove: () => remove,  slash: () => slash,  sleep: () => sleep,  sum: () => sum,  tap: () => tap,  template: () => template,  throttle: () => throttle,  timestamp: () => timestamp,  toArray: () => toArray,  toString: () => toString,  uniq: () => uniq});// src/math.tsfunction clamp(n, min, max) {  return Math.min(max, Math.max(min, n));}function sum(...args) {  return flattenArrayable(args).reduce((a, b) => a + b, 0);}// src/array.tsfunction toArray(array) {  array = array || [];  if (Array.isArray(array))    return array;  return [array];}function flattenArrayable(array) {  return toArray(array).flat(1);}function mergeArrayable(...args) {  return args.flatMap((i) => toArray(i));}function partition(array, ...filters) {  const result = new Array(filters.length + 1).fill(null).map(() => []);  array.forEach((e, idx, arr) => {    let i = 0;    for (const filter of filters) {      if (filter(e, idx, arr)) {        result[i].push(e);        return;      }      i += 1;    }    result[i].push(e);  });  return result;}function uniq(array) {  return Array.from(new Set(array));}function last(array) {  return at(array, -1);}function remove(array, value) {  if (!array)    return false;  const index = array.indexOf(value);  if (index >= 0) {    array.splice(index, 1);    return true;  }  return false;}function at(array, index) {  const len = array.length;  if (!len)    return void 0;  if (index < 0)    index += len;  return array[index];}function range(...args) {  let start, stop, step;  if (args.length === 1) {    start = 0;    step = 1;    [stop] = args;  } else {    [start, stop, step = 1] = args;  }  const arr = [];  let current = start;  while (current < stop) {    arr.push(current);    current += step || 1;  }  return arr;}function move(arr, from, to) {  arr.splice(to, 0, arr.splice(from, 1)[0]);  return arr;}function clampArrayRange(n, arr) {  return clamp(n, 0, arr.length - 1);}// src/base.tsvar assert = (condition, message) => {  if (!condition)    throw new Error(message);};var toString = (v) => Object.prototype.toString.call(v);var noop = () => {};// src/guards.tsfunction notNullish(v) {  return v != null;}function noNull(v) {  return v !== null;}function notUndefined(v) {  return v !== void 0;}function isTruthy(v) {  return Boolean(v);}// src/is.tsvar isDef = (val) => typeof val !== "undefined";var isBoolean = (val) => typeof val === "boolean";var isFunction = (val) => typeof val === "function";var isNumber = (val) => typeof val === "number";var isString = (val) => typeof val === "string";var isObject = (val) => toString(val) === "[object Object]";var isWindow = (val) => typeof window !== "undefined" && toString(val) === "[object Window]";var isBrowser = typeof window !== "undefined";// src/string.tsfunction slash(str) {  return str.replace(/\\/g, "/");}function ensurePrefix(prefix, str) {  if (!str.startsWith(prefix))    return prefix + str;  return str;}function template(str, ...args) {  return str.replace(/{(\d+)}/g, (match, key) => {    const index = Number(key);    if (Number.isNaN(index))      return match;    return args[index];  });}// src/time.tsvar timestamp = () => +Date.now();// src/function.tsfunction batchInvoke(functions) {  functions.forEach((fn) => fn && fn());}function invoke(fn) {  return fn();}function tap(value, callback) {  callback(value);  return value;}// src/object.tsfunction objectMap(obj, fn) {  return Object.fromEntries(Object.entries(obj).map(([k, v]) => fn(k, v)).filter(notNullish));}function isKeyOf(obj, k) {  return k in obj;}function objectKeys(obj) {  return Object.keys(obj);}function objectEntries(obj) {  return Object.entries(obj);}function deepMerge(target, ...sources) {  if (!sources.length)    return target;  const source = sources.shift();  if (source === void 0)    return target;  if (isMergableObject(target) && isMergableObject(source)) {    objectKeys(source).forEach((key) => {      if (isMergableObject(source[key])) {        if (!target[key])          target[key] = {};        deepMerge(target[key], source[key]);      } else {        target[key] = source[key];      }    });  }  return deepMerge(target, ...sources);}function isMergableObject(item) {  return isObject(item) && !Array.isArray(item);}function objectPick(obj, keys, omitUndefined = false) {  return keys.reduce((n, k) => {    if (k in obj) {      if (!omitUndefined || !obj[k] === void 0)        n[k] = obj[k];    }    return n;  }, {});}function clearUndefined(obj) {  Object.keys(obj).forEach((key) => obj[key] === void 0 ? delete obj[key] : {});  return obj;}function hasOwnProperty(obj, v) {  if (obj == null)    return false;  return Object.prototype.hasOwnProperty.call(obj, v);}// src/promise.tsfunction createSingletonPromise(fn) {  let _promise;  function wrapper() {    if (!_promise)      _promise = fn();    return _promise;  }  wrapper.reset = async () => {    const _prev = _promise;    _promise = void 0;    if (_prev)      await _prev;  };  return wrapper;}function sleep(ms, callback) {  return new Promise((resolve) => setTimeout(async () => {    await (callback == null ? void 0 : callback());    resolve();  }, ms));}function createPromiseLock() {  const locks = [];  return {    async run(fn) {      const p = fn();      locks.push(p);      try {        return await p;      } finally {        remove(locks, p);      }    },    async wait() {      await Promise.allSettled(locks);    },    isWaiting() {      return Boolean(locks.length);    },    clear() {      locks.length = 0;    }  };}// node_modules/.pnpm/throttle-debounce@3.0.1/node_modules/throttle-debounce/esm/index.jsfunction throttle(delay, noTrailing, callback, debounceMode) {  var timeoutID;  var cancelled = false;  var lastExec = 0;  function clearExistingTimeout() {    if (timeoutID) {      clearTimeout(timeoutID);    }  }  function cancel() {    clearExistingTimeout();    cancelled = true;  }  if (typeof noTrailing !== "boolean") {    debounceMode = callback;    callback = noTrailing;    noTrailing = void 0;  }  function wrapper() {    for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {      arguments_[_key] = arguments[_key];    }    var self = this;    var elapsed = Date.now() - lastExec;    if (cancelled) {      return;    }    function exec() {      lastExec = Date.now();      callback.apply(self, arguments_);    }    function clear() {      timeoutID = void 0;    }    if (debounceMode && !timeoutID) {      exec();    }    clearExistingTimeout();    if (debounceMode === void 0 && elapsed > delay) {      exec();    } else if (noTrailing !== true) {      timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === void 0 ? delay - elapsed : delay);    }  }  wrapper.cancel = cancel;  return wrapper;}function debounce(delay, atBegin, callback) {  return callback === void 0 ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false);}module.exports = __toCommonJS(src_exports);// Annotate the CommonJS export names for ESM import in node:0 && (module.exports = {  assert,  at,  batchInvoke,  clamp,  clampArrayRange,  clearUndefined,  createPromiseLock,  createSingletonPromise,  debounce,  deepMerge,  ensurePrefix,  flattenArrayable,  hasOwnProperty,  invoke,  isBoolean,  isBrowser,  isDef,  isFunction,  isKeyOf,  isNumber,  isObject,  isString,  isTruthy,  isWindow,  last,  mergeArrayable,  move,  noNull,  noop,  notNullish,  notUndefined,  objectEntries,  objectKeys,  objectMap,  objectPick,  partition,  range,  remove,  slash,  sleep,  sum,  tap,  template,  throttle,  timestamp,  toArray,  toString,  uniq});
 |