SizeContext.js 582 B

123456789101112131415161718
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.useProviderSize = exports.useInjectSize = void 0;
  6. var _vue = require("vue");
  7. const SizeContextKey = Symbol('SizeContextKey');
  8. const useInjectSize = () => {
  9. return (0, _vue.inject)(SizeContextKey, (0, _vue.ref)(undefined));
  10. };
  11. exports.useInjectSize = useInjectSize;
  12. const useProviderSize = size => {
  13. const parentSize = useInjectSize();
  14. (0, _vue.provide)(SizeContextKey, (0, _vue.computed)(() => size.value || parentSize.value));
  15. return size;
  16. };
  17. exports.useProviderSize = useProviderSize;