{"version":3,"file":"get-year-in-tab-order.cjs","names":["isYearDisabled"],"sources":["../../../../src/components/YearsList/get-year-in-tab-order/get-year-in-tab-order.ts"],"sourcesContent":["import dayjs from 'dayjs';\nimport { DateStringValue } from '../../../types';\nimport { PickerControlProps } from '../../PickerControl';\nimport { isYearDisabled } from '../is-year-disabled/is-year-disabled';\n\ninterface GetYearInTabOrderInput {\n  years: DateStringValue[][];\n  minDate: DateStringValue | Date | undefined;\n  maxDate: DateStringValue | Date | undefined;\n  getYearControlProps: ((year: DateStringValue) => Partial<PickerControlProps>) | undefined;\n}\n\nexport function getYearInTabOrder({\n  years,\n  minDate,\n  maxDate,\n  getYearControlProps,\n}: GetYearInTabOrderInput) {\n  const enabledYears = years\n    .flat()\n    .filter(\n      (year) =>\n        !isYearDisabled({ year, minDate, maxDate }) && !getYearControlProps?.(year)?.disabled\n    );\n\n  const selectedYear = enabledYears.find((year) => getYearControlProps?.(year)?.selected);\n\n  if (selectedYear) {\n    return selectedYear;\n  }\n\n  const currentYear = enabledYears.find((year) => dayjs().isSame(year, 'year'));\n\n  if (currentYear) {\n    return currentYear;\n  }\n\n  return enabledYears[0];\n}\n"],"mappings":";;;;;;AAYA,SAAgB,kBAAkB,EAChC,OACA,SACA,SACA,uBACyB;CACzB,MAAM,eAAe,MAClB,KAAK,CAAC,CACN,QACE,SACC,CAACA,yBAAAA,eAAe;EAAE;EAAM;EAAS;CAAQ,CAAC,KAAK,CAAC,sBAAsB,IAAI,CAAC,EAAE,QACjF;CAEF,MAAM,eAAe,aAAa,MAAM,SAAS,sBAAsB,IAAI,CAAC,EAAE,QAAQ;CAEtF,IAAI,cACF,OAAO;CAGT,MAAM,cAAc,aAAa,MAAM,UAAA,GAAA,MAAA,QAAA,CAAe,CAAC,CAAC,OAAO,MAAM,MAAM,CAAC;CAE5E,IAAI,aACF,OAAO;CAGT,OAAO,aAAa;AACtB"}