{"version":3,"file":"tabs-computed.mjs","sources":["../../../../../src/components/ivue-tabs/tabs-computed.ts"],"sourcesContent":["import { computed } from 'vue';\r\n\r\n// type\r\nimport { Props, Data } from './types/tabs';\r\n\r\nexport default (props: Props, data: Data) => {\r\n  // 是否有箭头\r\n  const hasArrows = computed((): boolean => {\r\n    return props.showArrows && data.isOverflowing;\r\n  });\r\n\r\n  // 导航样式\r\n  const containerStyles = computed(() => {\r\n    const height = props.height;\r\n\r\n    const regexp = new RegExp(/[a-zA-Z]/g);\r\n\r\n    // 是否有单位\r\n    const isUnit = regexp.test(`${height}`);\r\n\r\n    return {\r\n      height: !isUnit ? `${height}px` : height,\r\n      transform: `translate3d(-${data.scrollOffset}px, 0,0)`,\r\n    };\r\n  });\r\n\r\n  // 没有找到可以激活的tab\r\n  const noFindActiveTab = computed(() => {\r\n    return data.tabs.findIndex((tab, index: number) => {\r\n      return tab.tabName === props.modelValue || index === props.modelValue;\r\n    });\r\n  });\r\n\r\n  // 激活的Index\r\n  const activeIndex = computed(() => {\r\n    return data.tabs.findIndex((tab, index: number) => {\r\n      if (!props.modelValue) {\r\n        return index === 0;\r\n      }\r\n\r\n      // 没有找到可以激活的tab 默认激活第一项\r\n      if (noFindActiveTab.value === -1) {\r\n        return index === 0;\r\n      }\r\n\r\n      return tab.tabName === props.modelValue || index === props.modelValue;\r\n    });\r\n  });\r\n\r\n  // 激活的tab\r\n  const activeTab = computed(() => {\r\n    if (!data.tabs.length) {\r\n      return undefined;\r\n    }\r\n\r\n    return data.tabs[activeIndex.value];\r\n  });\r\n\r\n  return {\r\n    hasArrows,\r\n    activeTab,\r\n    activeIndex,\r\n    containerStyles,\r\n  };\r\n};\r\n"],"names":[],"mappings":";;AAKA,mBAAe,CAAC,OAAc,IAAe,KAAA;AAE3C,EAAM,MAAA,SAAA,GAAY,SAAS,MAAe;AACxC,IAAO,OAAA,KAAA,CAAM,cAAc,IAAK,CAAA,aAAA,CAAA;AAAA,GACjC,CAAA,CAAA;AAGD,EAAM,MAAA,eAAA,GAAkB,SAAS,MAAM;AACrC,IAAA,MAAM,SAAS,KAAM,CAAA,MAAA,CAAA;AAErB,IAAM,MAAA,MAAA,GAAS,IAAI,MAAA,CAAO,WAAW,CAAA,CAAA;AAGrC,IAAA,MAAM,MAAS,GAAA,MAAA,CAAO,IAAK,CAAA,CAAA,EAAG,MAAQ,CAAA,CAAA,CAAA,CAAA;AAEtC,IAAO,OAAA;AAAA,MACL,MAAQ,EAAA,CAAC,MAAS,GAAA,CAAA,EAAG,MAAa,CAAA,EAAA,CAAA,GAAA,MAAA;AAAA,MAClC,SAAA,EAAW,gBAAgB,IAAK,CAAA,YAAA,CAAA,QAAA,CAAA;AAAA,KAClC,CAAA;AAAA,GACD,CAAA,CAAA;AAGD,EAAM,MAAA,eAAA,GAAkB,SAAS,MAAM;AACrC,IAAA,OAAO,IAAK,CAAA,IAAA,CAAK,SAAU,CAAA,CAAC,KAAK,KAAkB,KAAA;AACjD,MAAA,OAAO,GAAI,CAAA,OAAA,KAAY,KAAM,CAAA,UAAA,IAAc,UAAU,KAAM,CAAA,UAAA,CAAA;AAAA,KAC5D,CAAA,CAAA;AAAA,GACF,CAAA,CAAA;AAGD,EAAM,MAAA,WAAA,GAAc,SAAS,MAAM;AACjC,IAAA,OAAO,IAAK,CAAA,IAAA,CAAK,SAAU,CAAA,CAAC,KAAK,KAAkB,KAAA;AACjD,MAAI,IAAA,CAAC,MAAM,UAAY,EAAA;AACrB,QAAA,OAAO,KAAU,KAAA,CAAA,CAAA;AAAA,OACnB;AAGA,MAAI,IAAA,eAAA,CAAgB,UAAU,CAAI,CAAA,EAAA;AAChC,QAAA,OAAO,KAAU,KAAA,CAAA,CAAA;AAAA,OACnB;AAEA,MAAA,OAAO,GAAI,CAAA,OAAA,KAAY,KAAM,CAAA,UAAA,IAAc,UAAU,KAAM,CAAA,UAAA,CAAA;AAAA,KAC5D,CAAA,CAAA;AAAA,GACF,CAAA,CAAA;AAGD,EAAM,MAAA,SAAA,GAAY,SAAS,MAAM;AAC/B,IAAI,IAAA,CAAC,IAAK,CAAA,IAAA,CAAK,MAAQ,EAAA;AACrB,MAAO,OAAA,KAAA,CAAA,CAAA;AAAA,KACT;AAEA,IAAO,OAAA,IAAA,CAAK,KAAK,WAAY,CAAA,KAAA,CAAA,CAAA;AAAA,GAC9B,CAAA,CAAA;AAED,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,SAAA;AAAA,IACA,WAAA;AAAA,IACA,eAAA;AAAA,GACF,CAAA;AACF,CAAA;;;;"}