index.mjs 633 B

123456789101112131415161718192021222324252627
  1. import { provide } from "vue";
  2. //#region ../../packages/hooks/use-forward-ref/index.ts
  3. const FORWARD_REF_INJECTION_KEY = Symbol("elForwardRef");
  4. const useForwardRef = (forwardRef) => {
  5. const setForwardRef = ((el) => {
  6. forwardRef.value = el;
  7. });
  8. provide(FORWARD_REF_INJECTION_KEY, { setForwardRef });
  9. };
  10. const useForwardRefDirective = (setForwardRef) => {
  11. return {
  12. mounted(el) {
  13. setForwardRef(el);
  14. },
  15. updated(el) {
  16. setForwardRef(el);
  17. },
  18. unmounted() {
  19. setForwardRef(null);
  20. }
  21. };
  22. };
  23. //#endregion
  24. export { FORWARD_REF_INJECTION_KEY, useForwardRef, useForwardRefDirective };
  25. //# sourceMappingURL=index.mjs.map