context.js 724 B

123456789101112131415161718192021222324252627
  1. import { computed, defineComponent, inject, provide } from 'vue';
  2. const OverflowContextProviderKey = Symbol('OverflowContextProviderKey');
  3. export const OverflowContextProvider = defineComponent({
  4. compatConfig: {
  5. MODE: 3
  6. },
  7. name: 'OverflowContextProvider',
  8. inheritAttrs: false,
  9. props: {
  10. value: {
  11. type: Object
  12. }
  13. },
  14. setup(props, _ref) {
  15. let {
  16. slots
  17. } = _ref;
  18. provide(OverflowContextProviderKey, computed(() => props.value));
  19. return () => {
  20. var _a;
  21. return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);
  22. };
  23. }
  24. });
  25. export const useInjectOverflowContext = () => {
  26. return inject(OverflowContextProviderKey, computed(() => null));
  27. };