shadcn-vue/apps/www/src/lib/utils.ts
zernonia d49126ecc8
feat: implement utilities from radix vue (#89)
* refactor: change all popper related element to use useForwardPropsEmits

* refactor: use useEmitAsProps from radix-vue
2023-09-28 16:51:31 +08:00

16 lines
491 B
TypeScript

import type { Updater } from '@tanstack/vue-table'
import { type ClassValue, clsx } from 'clsx'
import { twMerge } from 'tailwind-merge'
import { type Ref, camelize, getCurrentInstance, toHandlerKey } from 'vue'
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs))
}
export function valueUpdater<T extends Updater<any>>(updaterOrValue: T, ref: Ref) {
ref.value
= typeof updaterOrValue === 'function'
? updaterOrValue(ref.value)
: updaterOrValue
}