mirror of
https://gitee.com/element-plus/element-plus.git
synced 2024-11-30 02:08:12 +08:00
dab6b73040
* refactor: replace typeof string with the built-in isString * refactor: replace typeof boolean with the built-in isBoolean * refactor: replace typeof undefined with the built-in isUndefined * chore: style * chore: style
41 lines
1.1 KiB
TypeScript
41 lines
1.1 KiB
TypeScript
import { isArray, isObject, isString } from '@vue/shared'
|
|
import { isNil } from 'lodash-unified'
|
|
|
|
export {
|
|
isArray,
|
|
isFunction,
|
|
isObject,
|
|
isString,
|
|
isDate,
|
|
isPromise,
|
|
isSymbol,
|
|
isPlainObject,
|
|
} from '@vue/shared'
|
|
export { isVNode } from 'vue'
|
|
|
|
export const isUndefined = (val: any): val is undefined => val === undefined
|
|
export const isBoolean = (val: any): val is boolean => typeof val === 'boolean'
|
|
export const isNumber = (val: any): val is number => typeof val === 'number'
|
|
|
|
export const isEmpty = (val: unknown) =>
|
|
(!val && val !== 0) ||
|
|
(isArray(val) && val.length === 0) ||
|
|
(isObject(val) && !Object.keys(val).length)
|
|
|
|
export const isElement = (e: unknown): e is Element => {
|
|
if (typeof Element === 'undefined') return false
|
|
return e instanceof Element
|
|
}
|
|
|
|
export const isPropAbsent = (prop: unknown): prop is null | undefined =>
|
|
isNil(prop)
|
|
|
|
export const isStringNumber = (val: string): boolean => {
|
|
if (!isString(val)) {
|
|
return false
|
|
}
|
|
return !Number.isNaN(Number(val))
|
|
}
|
|
|
|
export const isWindow = (val: unknown): val is Window => val === window
|