{"version":3,"file":"context.cjs","sources":["../../../../../../packages/vue-components/vc-overflow/src/context.ts"],"sourcesContent":["import type { Key } from '@antdv/types';\nimport type { ComputedRef, InjectionKey, PropType } from 'vue';\nimport { computed, defineComponent, inject, provide } from 'vue';\n\nexport interface OverflowContextProviderValueType {\n  prefixCls: string;\n  responsive: boolean;\n  order: number;\n  registerSize: (key: Key, width: number | null) => void;\n  display: boolean;\n\n  invalidate: boolean;\n\n  // Item Usage\n  item?: any;\n  itemKey?: Key;\n\n  // Rest Usage\n  className?: string;\n}\n\nconst OverflowContextProviderKey: InjectionKey<\n  ComputedRef<OverflowContextProviderValueType | null>\n> = Symbol('OverflowContextProviderKey');\n\nexport const OverflowContextProvider = defineComponent({\n  compatConfig: { MODE: 3 },\n  name: 'OverflowContextProvider',\n  inheritAttrs: false,\n  props: {\n    value: { type: Object as PropType<OverflowContextProviderValueType> },\n  },\n  setup(props, { slots }) {\n    provide(\n      OverflowContextProviderKey,\n      computed(() => props.value),\n    );\n    return () => slots.default?.();\n  },\n});\n\nexport function useInjectOverflowContext(): ComputedRef<OverflowContextProviderValueType | null> {\n  return inject(\n    OverflowContextProviderKey,\n    computed(() => null),\n  );\n}\n"],"names":["defineComponent","provide","computed","inject"],"mappings":";;;;AAqBA,MAAM,0BAAA,GAEF,OAAO,4BAA4B,CAAA,CAAA;AAEhC,MAAM,0BAA0BA,mBAAgB,CAAA;AAAA,EACrD,YAAA,EAAc,EAAE,IAAA,EAAM,CAAE,EAAA;AAAA,EACxB,IAAM,EAAA,yBAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAAA,EACd,KAAO,EAAA;AAAA,IACL,KAAA,EAAO,EAAE,IAAA,EAAM,MAAqD,EAAA;AAAA,GACtE;AAAA,EACA,KAAM,CAAA,KAAA,EAAO,EAAE,KAAA,EAAS,EAAA;AACtB,IAAAC,WAAA;AAAA,MACE,0BAAA;AAAA,MACAC,YAAA,CAAS,MAAM,KAAA,CAAM,KAAK,CAAA;AAAA,KAC5B,CAAA;AACA,IAAA,OAAO,MAAG;AArCd,MAAA,IAAA,EAAA,CAAA;AAqCiB,MAAA,OAAA,CAAA,EAAA,GAAA,KAAA,CAAM,OAAN,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GACf;AACF,CAAC,EAAA;AAEM,SAAS,wBAAiF,GAAA;AAC/F,EAAO,OAAAC,UAAA;AAAA,IACL,0BAAA;AAAA,IACAD,YAAA,CAAS,MAAM,IAAI,CAAA;AAAA,GACrB,CAAA;AACF;;;;;"}