{"version":3,"file":"is.mjs","sources":["../../src/utils/is.ts"],"sourcesContent":["const toString = Object.prototype.toString;\n\nexport function is(val: unknown, type: string) {\n  return toString.call(val) === `[object ${type}]`;\n}\n\nexport function isDef<T = unknown>(val?: T): val is T {\n  return typeof val !== 'undefined';\n}\n\nexport function isUnDef<T = unknown>(val?: T): val is T {\n  return !isDef(val);\n}\n\nexport function isObject(val: any): val is Record<any, any> {\n  return val !== null && is(val, 'Object');\n}\n\nexport function isEmpty<T = unknown>(val: T): val is T {\n  if (isArray(val) || isString(val)) {\n    return val.length === 0;\n  }\n\n  if (val instanceof Map || val instanceof Set) {\n    return val.size === 0;\n  }\n\n  if (isObject(val)) {\n    return Object.keys(val).length === 0;\n  }\n\n  return false;\n}\n\nexport function isDate(val: unknown): val is Date {\n  return is(val, 'Date');\n}\n\nexport function isNull(val: unknown): val is null {\n  return val === null;\n}\n\nexport function isNullAndUnDef(val: unknown): val is null | undefined {\n  return isUnDef(val) && isNull(val);\n}\n\nexport function isNullOrUnDef(val: unknown): val is null | undefined {\n  return isUnDef(val) || isNull(val);\n}\n\nexport function isNumber(val: unknown): val is number {\n  return is(val, 'Number');\n}\n\nexport function isPromise<T = any>(val: unknown): val is Promise<T> {\n  return is(val, 'Promise') && isObject(val) && isFunction(val.then) && isFunction(val.catch);\n}\n\nexport function isString(val: unknown): val is string {\n  return is(val, 'String');\n}\n\nexport function isFunction(val: unknown): val is Function {\n  return typeof val === 'function';\n}\n\nexport function isBoolean(val: unknown): val is boolean {\n  return is(val, 'Boolean');\n}\n\nexport function isRegExp(val: unknown): val is RegExp {\n  return is(val, 'RegExp');\n}\n\nexport function isArray(val: any): val is Array<any> {\n  return val && Array.isArray(val);\n}\n\nexport function isWindow(val: any): val is Window {\n  return typeof window !== 'undefined' && is(val, 'Window');\n}\n\nexport function isElement(val: unknown): val is Element {\n  return isObject(val) && !!val.tagName;\n}\n\nexport function isMap(val: unknown): val is Map<any, any> {\n  return is(val, 'Map');\n}\n\nexport const isServer = typeof window === 'undefined';\n\nexport const isClient = !isServer;\n\nexport function isUrl(path: string): boolean {\n  const reg = /^http(s)?:\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- .\\/?%&=]*)?/;\n  return reg.test(path);\n}\n"],"names":[],"mappings":"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"}