{"version":3,"file":"array-base.mjs","sources":["../../../../../../packages/components/array-base/src/array-base.ts"],"sourcesContent":["import { defineComponent, provide, renderSlot } from 'vue'\nimport { keyMapType, useField, useForm } from './hooks'\nimport { ArrayBaseSymbol } from './constant'\nimport type { PropType } from 'vue'\nimport type { FormContext, FormItemContext } from 'element-plus'\n\nexport interface IArrayBaseProps {\n  disabled?: boolean\n  keyMap?: keyMapType\n}\n\nexport type IFieldContext = FormItemContext | undefined\nexport type IFormContext = FormContext | undefined\n\nexport interface IArrayBaseContext {\n  field: IFieldContext\n  form: IFormContext\n  keyMap?: keyMapType\n}\n\nexport const ArrayBase = defineComponent<IArrayBaseProps>({\n  name: 'ArrayBase',\n  props: {\n    disabled: {\n      type: Boolean,\n      default: false,\n    },\n    keyMap: {\n      type: [Array] as PropType<keyMapType>,\n    },\n  },\n  setup(props, { slots }) {\n    const field = useField()\n    const form = useForm()\n\n    provide(ArrayBaseSymbol, {\n      field,\n      form,\n      keyMap: props.keyMap,\n    })\n\n    return () => renderSlot(slots, 'default')\n  },\n})\n"],"names":[],"mappings":";;;;AAoBO,MAAM,YAAY,eAAiC,CAAA;AAAA,EACxD,IAAM,EAAA,WAAA;AAAA,EACN,KAAO,EAAA;AAAA,IACL,QAAU,EAAA;AAAA,MACR,IAAM,EAAA,OAAA;AAAA,MACN,OAAS,EAAA,KAAA;AAAA,KACX;AAAA,IACA,MAAQ,EAAA;AAAA,MACN,IAAA,EAAM,CAAC,KAAK,CAAA;AAAA,KACd;AAAA,GACF;AAAA,EACA,KAAM,CAAA,KAAA,EAAO,EAAE,KAAA,EAAS,EAAA;AACtB,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,IAAA,MAAM,OAAO,OAAQ,EAAA,CAAA;AAErB,IAAA,OAAA,CAAQ,eAAiB,EAAA;AAAA,MACvB,KAAA;AAAA,MACA,IAAA;AAAA,MACA,QAAQ,KAAM,CAAA,MAAA;AAAA,KACf,CAAA,CAAA;AAED,IAAO,OAAA,MAAM,UAAW,CAAA,KAAA,EAAO,SAAS,CAAA,CAAA;AAAA,GAC1C;AACF,CAAC;;;;"}