import {computed, inject, InjectionKey, ref, unref} from 'vue' import {componentSizes, componentTypes} from '@moui/constants' /*import { useProp } from '../use-prop' import { useGlobalConfig } from '../use-global-config' import type { ComponentSize } from '@moui/constants' import type { MaybeRef } from '@vueuse/core'*/ export const formContextKey: InjectionKey = Symbol('formContextKey') export const formItemContextKey: InjectionKey = Symbol('formItemContextKey') // 尺寸 export const useSizeProp = { type: String, values: componentSizes, required: false, default: '' } as const // 类型 export const useTypeProp = { type: String, values: componentTypes, required: false, default: '' } as const /*export const useSize = ( fallback?: MaybeRef, ignore: Partial> = {} ) => { const emptyRef = ref(undefined) const size = ignore.prop ? emptyRef : useProp('size') const globalConfig = ignore.global ? emptyRef : '' const form = ignore.form ? { size: undefined } : inject(formContextKey, undefined) const formItem = ignore.formItem ? { size: undefined } : inject(formItemContextKey, undefined) return computed( (): ComponentSize => size.value || unref(fallback) || formItem?.size || form?.size || globalConfig || '' ) }*/ /*export const useDisabled = (fallback?: MaybeRef) => { const disabled = useProp('disabled') const form = inject(formContextKey, undefined) return computed( () => disabled.value || unref(fallback) || form?.disabled || false ) }*/