@vuesax-alpha/nightly
Version:
A Component Library for Vue 3
1 lines • 992 B
Source Map (JSON)
{"version":3,"file":"refs.mjs","sources":["../../../../../packages/utils/vue/refs.ts"],"sourcesContent":["import { isFunction } from '../types'\n\nimport type { ComponentPublicInstance, Ref } from 'vue'\n\nexport type RefSetter = (\n el: Element | ComponentPublicInstance | undefined\n) => void\n\nexport const composeRefs = (\n ...refs: (Ref<HTMLElement | undefined> | RefSetter)[]\n) => {\n return (el: Element | ComponentPublicInstance | null) => {\n refs.forEach((ref) => {\n if (isFunction(ref)) {\n ref(el as Element | ComponentPublicInstance)\n } else {\n ref.value = el as HTMLElement | undefined\n }\n })\n }\n}\n"],"names":[],"mappings":";;;AAQa,MAAA,WAAA,GAAc,IACtB,IACA,KAAA;AACH,EAAA,OAAO,CAAC,EAAiD,KAAA;AACvD,IAAK,IAAA,CAAA,OAAA,CAAQ,CAAC,GAAQ,KAAA;AACpB,MAAI,IAAA,UAAA,CAAW,GAAG,CAAG,EAAA;AACnB,QAAA,GAAA,CAAI,EAAuC,CAAA,CAAA;AAAA,OACtC,MAAA;AACL,QAAA,GAAA,CAAI,KAAQ,GAAA,EAAA,CAAA;AAAA,OACd;AAAA,KACD,CAAA,CAAA;AAAA,GACH,CAAA;AACF;;;;"}