{"version":3,"file":"tab-pane2.mjs","sources":["../../../../../../packages/components/tabs/src/tab-pane.vue"],"sourcesContent":["<template>\n  <div\n    v-if=\"shouldBeRender\"\n    v-show=\"active\"\n    :id=\"`pane-${paneName}`\"\n    :class=\"ns.b()\"\n    role=\"tabpanel\"\n    :aria-hidden=\"!active\"\n    :aria-labelledby=\"`tab-${paneName}`\"\n    data-test-name=\"tab-pane\"\n    data-test-variant=\"\"\n    data-test-state=\"\"\n  >\n    <slot />\n  </div>\n</template>\n<script lang=\"ts\" setup>\nimport {\n  computed,\n  getCurrentInstance,\n  inject,\n  onMounted,\n  onUnmounted,\n  reactive,\n  ref,\n  useSlots,\n  watch,\n} from 'vue'\nimport { eagerComputed } from '@vueuse/core'\nimport { tabsRootContextKey } from '@bigin/tokens'\nimport { throwError } from '@bigin/utils'\nimport { useNamespace } from '@bigin/hooks'\nimport { tabPaneProps } from './tab-pane'\n\nconst COMPONENT_NAME = 'BTabPane'\ndefineOptions({\n  name: COMPONENT_NAME,\n})\nconst props = defineProps(tabPaneProps)\n\nconst instance = getCurrentInstance()!\nconst slots = useSlots()\n\nconst tabsRoot = inject(tabsRootContextKey)\nif (!tabsRoot)\n  throwError(COMPONENT_NAME, 'usage: <b-tabs><b-tab-pane /></b-tabs/>')\n\nconst ns = useNamespace('tab-pane')\n\nconst index = ref<string>()\nconst isClosable = computed(() => props.closable || tabsRoot.props.closable)\nconst active = eagerComputed(\n  () => tabsRoot.currentName.value === (props.name ?? index.value)\n)\nconst loaded = ref(active.value)\nconst paneName = computed(() => props.name ?? index.value)\nconst shouldBeRender = eagerComputed(\n  () => !props.lazy || loaded.value || active.value\n)\n\nwatch(active, (val) => {\n  if (val) loaded.value = true\n})\n\nconst pane = reactive({\n  uid: instance.uid,\n  slots,\n  props,\n  paneName,\n  active,\n  index,\n  isClosable,\n})\n\nonMounted(() => {\n  tabsRoot.registerPane(pane)\n})\n\nonUnmounted(() => {\n  tabsRoot.unregisterPane(pane.uid)\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;mCAmCc,CAAA;AAAA,EACZ,IAAM,EAAA,cAAA;AACR;;;;;;AAGA,IAAA,MAAM,WAAW,kBAAmB,EAAA,CAAA;AACpC,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AAEjB,IAAA,MAAA,QAAA,GAAW,OAAO,kBAAkB,CAAA,CAAA;AAC1C,IAAA,IAAI,CAAC,QAAA;AACH,MAAA,UAAA,CAAW,gBAAgB,yCAAyC,CAAA,CAAA;AAEhE,IAAA,MAAA,EAAA,GAAK,aAAa,UAAU,CAAA,CAAA;AAElC,IAAA,MAAM,QAAQ,GAAY,EAAA,CAAA;AAC1B,IAAA,MAAM,aAAa,QAAS,CAAA,MAAM,MAAM,QAAY,IAAA,QAAA,CAAS,MAAM,QAAQ,CAAA,CAAA;AAC3E,IAAA,MAAM,MAAS,GAAA,aAAA;AAAA,MACb,MAAM,QAAS,CAAA,WAAA,CAAY,KAAW,MAAA,KAAA,CAAM,QAAQ,KAAM,CAAA,KAAA,CAAA;AAAA,KAC5D,CAAA;AACM,IAAA,MAAA,MAAA,GAAS,GAAI,CAAA,MAAA,CAAO,KAAK,CAAA,CAAA;AAC/B,IAAA,MAAM,WAAW,QAAS,CAAA,MAAM,KAAM,CAAA,IAAA,IAAQ,MAAM,KAAK,CAAA,CAAA;AACzD,IAAA,MAAM,cAAiB,GAAA,aAAA;AAAA,MACrB,MAAM,CAAC,KAAA,CAAM,IAAQ,IAAA,MAAA,CAAO,SAAS,MAAO,CAAA,KAAA;AAAA,KAC9C,CAAA;AAEM,IAAA,KAAA,CAAA,MAAA,EAAQ,CAAC,GAAQ,KAAA;AACjB,MAAA,IAAA,GAAA;AAAK,QAAA,MAAA,CAAO,KAAQ,GAAA,IAAA,CAAA;AAAA,KACzB,CAAA,CAAA;AAED,IAAA,MAAM,OAAO,QAAS,CAAA;AAAA,MACpB,KAAK,QAAS,CAAA,GAAA;AAAA,MACd,KAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,KAAA;AAAA,MACA,UAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,QAAA,CAAS,aAAa,IAAI,CAAA,CAAA;AAAA,KAC3B,CAAA,CAAA;AAED,IAAA,WAAA,CAAY,MAAM;AACP,MAAA,QAAA,CAAA,cAAA,CAAe,KAAK,GAAG,CAAA,CAAA;AAAA,KACjC,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;"}