{"version":3,"file":"useHTMLElement.mjs","sources":["../../../../src/composables/useHTMLElement.ts"],"sourcesContent":["import { computed, isRef, Ref, shallowRef, DefineComponent, Component } from 'vue'\n\nimport { useTemplateRef } from './'\nimport { unwrapEl } from '../utils/unwrapEl'\n\nexport const useHTMLElement = (key?: string | Ref<HTMLElement | DefineComponent | undefined | Component>): Ref<HTMLElement | undefined> => {\n  if (isRef(key)) {\n    return computed({\n      get () { return unwrapEl(key.value) },\n      set (value) { key.value = value },\n    })\n  }\n\n  if (key) {\n    const el = useTemplateRef(key)\n    return computed({\n      get () { return unwrapEl(el.value) },\n      set (value) { el.value = value },\n    })\n  }\n\n  const el = shallowRef()\n  return computed({\n    set (value) {\n      el.value = unwrapEl(value)\n    },\n    get () { return el.value },\n  })\n}\n"],"names":["el"],"mappings":";;;AAKa,MAAA,iBAAiB,CAAC,QAA4G;AACrI,MAAA,MAAM,GAAG,GAAG;AACd,WAAO,SAAS;AAAA,MACd,MAAO;AAAS,eAAA,SAAS,IAAI,KAAK;AAAA,MAAE;AAAA,MACpC,IAAK,OAAO;AAAE,YAAI,QAAQ;AAAA,MAAM;AAAA,IAAA,CACjC;AAAA,EACH;AAEA,MAAI,KAAK;AACDA,UAAAA,MAAK,eAAe,GAAG;AAC7B,WAAO,SAAS;AAAA,MACd,MAAO;AAAS,eAAA,SAASA,IAAG,KAAK;AAAA,MAAE;AAAA,MACnC,IAAK,OAAO;AAAEA,YAAG,QAAQ;AAAA,MAAM;AAAA,IAAA,CAChC;AAAA,EACH;AAEA,QAAM,KAAK;AACX,SAAO,SAAS;AAAA,IACd,IAAK,OAAO;AACP,SAAA,QAAQ,SAAS,KAAK;AAAA,IAC3B;AAAA,IACA,MAAO;AAAE,aAAO,GAAG;AAAA,IAAM;AAAA,EAAA,CAC1B;AACH;"}