{"version":3,"file":"use-item.mjs","sources":["../../../../../../packages/components/dropdown-v2/src/use-item.ts"],"sourcesContent":["import { computed } from 'vue'\nimport type { ComponentInternalInstance, Ref } from 'vue'\nimport type { DropdownOption, DropdownValue } from './types'\n\nexport default function useItem(\n  instance: ComponentInternalInstance,\n  currentValue: Ref<DropdownValue>\n) {\n  const valuePath = computed(() => {\n    let parent = instance.parent!\n    const path = [currentValue.value]\n    while (parent.type.name !== 'ElDropdownV2Panel') {\n      const option = parent.props.option\n      if (option) {\n        path.unshift((option as DropdownOption).value)\n      }\n      parent = parent.parent!\n    }\n    return path\n  })\n\n  const parentItem = computed(() => {\n    let parent = instance.parent\n    while (\n      parent &&\n      !['ElDropdownV2Panel', 'ElDropdownV2SubItem'].includes(parent.type.name!)\n    ) {\n      parent = parent.parent\n    }\n    return parent!\n  })\n\n  return {\n    parentItem,\n    valuePath,\n  }\n}\n"],"names":[],"mappings":";;AAIwB,SAAA,OAAA,CACtB,UACA,YACA,EAAA;AACA,EAAM,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,IAAA,IAAI,SAAS,QAAS,CAAA,MAAA,CAAA;AACtB,IAAM,MAAA,IAAA,GAAO,CAAC,YAAA,CAAa,KAAK,CAAA,CAAA;AAChC,IAAO,OAAA,MAAA,CAAO,IAAK,CAAA,IAAA,KAAS,mBAAqB,EAAA;AAC/C,MAAM,MAAA,MAAA,GAAS,OAAO,KAAM,CAAA,MAAA,CAAA;AAC5B,MAAA,IAAI,MAAQ,EAAA;AACV,QAAK,IAAA,CAAA,OAAA,CAAS,OAA0B,KAAK,CAAA,CAAA;AAAA,OAC/C;AACA,MAAA,MAAA,GAAS,MAAO,CAAA,MAAA,CAAA;AAAA,KAClB;AACA,IAAO,OAAA,IAAA,CAAA;AAAA,GACR,CAAA,CAAA;AAED,EAAM,MAAA,UAAA,GAAa,SAAS,MAAM;AAChC,IAAA,IAAI,SAAS,QAAS,CAAA,MAAA,CAAA;AACtB,IACE,OAAA,MAAA,IACA,CAAC,CAAC,mBAAqB,EAAA,qBAAqB,EAAE,QAAS,CAAA,MAAA,CAAO,IAAK,CAAA,IAAK,CACxE,EAAA;AACA,MAAA,MAAA,GAAS,MAAO,CAAA,MAAA,CAAA;AAAA,KAClB;AACA,IAAO,OAAA,MAAA,CAAA;AAAA,GACR,CAAA,CAAA;AAED,EAAO,OAAA;AAAA,IACL,UAAA;AAAA,IACA,SAAA;AAAA,GACF,CAAA;AACF;;;;"}