flowbite-react
Version:
Official React components built for Flowbite and Tailwind CSS
1 lines • 3.21 kB
Source Map (JSON)
{"version":3,"file":"Years.cjs","sources":["../../../../src/components/Datepicker/Views/Years.tsx"],"sourcesContent":["\"use client\";\n\nimport { twMerge } from \"../../../helpers/tailwind-merge\";\nimport { useDatePickerContext } from \"../DatepickerContext\";\nimport { isDateEqual, isDateInRange, startOfYearPeriod, Views } from \"../helpers\";\n\nexport interface DatepickerViewsYearsTheme {\n items: {\n base: string;\n item: {\n base: string;\n disabled: string;\n selected: string;\n };\n };\n}\n\nexport function DatepickerViewsYears() {\n const { theme: rootTheme, selectedDate, minDate, maxDate, viewDate, setViewDate, setView } = useDatePickerContext();\n\n const theme = rootTheme.views.years;\n\n return (\n <div className={theme.items.base}>\n {[...Array(12)].map((_year, index) => {\n const first = startOfYearPeriod(viewDate, 10);\n const year = first + index;\n const newDate = new Date(viewDate.getTime());\n newDate.setFullYear(year);\n\n const isSelected = selectedDate && isDateEqual(selectedDate, newDate);\n const isDisabled = !isDateInRange(newDate, minDate, maxDate);\n\n return (\n <button\n disabled={isDisabled}\n key={index}\n type=\"button\"\n className={twMerge(\n theme.items.item.base,\n isSelected && theme.items.item.selected,\n isDisabled && theme.items.item.disabled,\n )}\n onClick={() => {\n if (isDisabled) return;\n\n setViewDate(newDate);\n setView(Views.Months);\n }}\n >\n {year}\n </button>\n );\n })}\n </div>\n );\n}\n\nDatepickerViewsYears.displayName = \"DatepickerViewsYears\";\n"],"names":["useDatePickerContext","jsx","startOfYearPeriod","isDateEqual","isDateInRange","twMerge","Views"],"mappings":";;;;;;;AAMO,SAAS,oBAAoB,GAAG;AACvC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,GAAGA,sCAAoB,EAAE;AACrH,EAAE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK;AACrC,EAAE,uBAAuBC,cAAG,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK;AAClH,IAAI,MAAM,KAAK,GAAGC,yBAAiB,CAAC,QAAQ,EAAE,EAAE,CAAC;AACjD,IAAI,MAAM,IAAI,GAAG,KAAK,GAAG,KAAK;AAC9B,IAAI,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AAChD,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;AAC7B,IAAI,MAAM,UAAU,GAAG,YAAY,IAAIC,mBAAW,CAAC,YAAY,EAAE,OAAO,CAAC;AACzE,IAAI,MAAM,UAAU,GAAG,CAACC,qBAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;AAChE,IAAI,uBAAuBH,cAAG;AAC9B,MAAM,QAAQ;AACd,MAAM;AACN,QAAQ,QAAQ,EAAE,UAAU;AAC5B,QAAQ,IAAI,EAAE,QAAQ;AACtB,QAAQ,SAAS,EAAEI,qBAAO;AAC1B,UAAU,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;AAC/B,UAAU,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ;AACjD,UAAU,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;AACzC,SAAS;AACT,QAAQ,OAAO,EAAE,MAAM;AACvB,UAAU,IAAI,UAAU,EAAE;AAC1B,UAAU,WAAW,CAAC,OAAO,CAAC;AAC9B,UAAU,OAAO,CAACC,aAAK,CAAC,MAAM,CAAC;AAC/B,SAAS;AACT,QAAQ,QAAQ,EAAE;AAClB,OAAO;AACP,MAAM;AACN,KAAK;AACL,GAAG,CAAC,EAAE,CAAC;AACP;AACA,oBAAoB,CAAC,WAAW,GAAG,sBAAsB;;;;"}