minhnt-dev: make UI

This commit is contained in:
MoreStrive
2024-05-30 21:32:51 +07:00
parent 2aa5607c48
commit b52352660d
16 changed files with 315 additions and 169 deletions
+26
View File
@@ -0,0 +1,26 @@
import { type UseEventBusReturn } from '@vueuse/core'
type InputProps = {
group?: string;
}
export const useFormGroup = (inputProps?: InputProps) =>{
const profileFormEvent = inject<UseEventBusReturn<any, any>|undefined>('profile-form-event', undefined)
const profileFormStatus = inject('profile-form-status', {} as any)
const status = computed(()=>profileFormStatus?.value[inputProps?.group||''])
const emitFieldUpdate = (data:any)=>{
profileFormEvent?.emit({type:'update',field:inputProps?.group, data})
}
const changeStatus = (status:string)=>{
profileFormEvent?.emit({type:'status',field:inputProps?.group, data:status})
}
return {
status,
emitFieldUpdate,
changeStatus
}
}