element-plus/packages/utils/types.ts

31 lines
754 B
TypeScript
Raw Normal View History

import { isArray, isObject } from '@vue/shared'
import { isNil } from 'lodash-unified'
2020-09-03 21:19:12 +08:00
export {
isArray,
isFunction,
isObject,
isString,
isDate,
isPromise,
isSymbol,
} from '@vue/shared'
export { isBoolean, isNumber } from '@vueuse/core'
export { isVNode } from 'vue'
export const isUndefined = (val: any): val is undefined => val === undefined
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 => {
return isNil(prop)
}