"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.useInjectOverflowContext = exports.OverflowContextProvider = void 0;
var _vueDemi = require("vue-demi");
const OverflowContextProviderKey = Symbol('OverflowContextProviderKey');
const OverflowContextProvider = exports.OverflowContextProvider = (0, _vueDemi.defineComponent)({
  compatConfig: {
    MODE: 3
  },
  name: 'OverflowContextProvider',
  inheritAttrs: false,
  props: {
    value: {
      type: Object
    }
  },
  setup(props, _ref) {
    let {
      slots
    } = _ref;
    (0, _vueDemi.provide)(OverflowContextProviderKey, (0, _vueDemi.computed)(() => props.value));
    return () => {
      var _a;
      return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);
    };
  }
});
const useInjectOverflowContext = () => {
  return (0, _vueDemi.inject)(OverflowContextProviderKey, (0, _vueDemi.computed)(() => null));
};
exports.useInjectOverflowContext = useInjectOverflowContext;