flowbite-react
Version:
Official React components built for Flowbite and Tailwind CSS
1 lines • 3.79 kB
Source Map (JSON)
{"version":3,"file":"Decades.cjs","sources":["../../../../src/components/Datepicker/Views/Decades.tsx"],"sourcesContent":["\"use client\";\n\nimport { twMerge } from \"../../../helpers/tailwind-merge\";\nimport { useDatePickerContext } from \"../DatepickerContext\";\nimport { addYears, isDateInDecade, isDateInRange, startOfYearPeriod, Views } from \"../helpers\";\n\nexport interface DatepickerViewsDecadesTheme {\n items: {\n base: string;\n item: {\n base: string;\n selected: string;\n disabled: string;\n };\n };\n}\n\nexport function DatepickerViewsDecades() {\n const { theme: rootTheme, viewDate, selectedDate, minDate, maxDate, setViewDate, setView } = useDatePickerContext();\n\n const theme = rootTheme.views.decades;\n const first = startOfYearPeriod(viewDate, 100);\n\n return (\n <div className={theme.items.base}>\n {[...Array(12)].map((_year, index) => {\n const year = first - 10 + index * 10;\n const newDate = new Date(viewDate.getTime());\n newDate.setFullYear(year + (viewDate.getFullYear() % 10));\n const firstDate = new Date(year, 0, 1);\n const lastDate = addYears(firstDate, 9);\n\n const isSelected = selectedDate && isDateInDecade(selectedDate, year);\n const isDisabled = !isDateInRange(firstDate, minDate, maxDate) && !isDateInRange(lastDate, 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 selectedDate && setViewDate(addYears(viewDate, year - selectedDate.getFullYear()));\n setView(Views.Years);\n }}\n >\n {year}\n </button>\n );\n })}\n </div>\n );\n}\n\nDatepickerViewsDecades.displayName = \"DatepickerViewsDecades\";\n"],"names":["useDatePickerContext","startOfYearPeriod","jsx","addYears","isDateInDecade","isDateInRange","twMerge","Views"],"mappings":";;;;;;;AAMO,SAAS,sBAAsB,GAAG;AACzC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,GAAGA,sCAAoB,EAAE;AACrH,EAAE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO;AACvC,EAAE,MAAM,KAAK,GAAGC,yBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC;AAChD,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,IAAI,GAAG,KAAK,GAAG,EAAE,GAAG,KAAK,GAAG,EAAE;AACxC,IAAI,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AAChD,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC;AAC3D,IAAI,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AAC1C,IAAI,MAAM,QAAQ,GAAGC,gBAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;AAC3C,IAAI,MAAM,UAAU,GAAG,YAAY,IAAIC,sBAAc,CAAC,YAAY,EAAE,IAAI,CAAC;AACzE,IAAI,MAAM,UAAU,GAAG,CAACC,qBAAa,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAACA,qBAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC;AAChH,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,YAAY,IAAI,WAAW,CAACH,gBAAQ,CAAC,QAAQ,EAAE,IAAI,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;AAC5F,UAAU,OAAO,CAACI,aAAK,CAAC,KAAK,CAAC;AAC9B,SAAS;AACT,QAAQ,QAAQ,EAAE;AAClB,OAAO;AACP,MAAM;AACN,KAAK;AACL,GAAG,CAAC,EAAE,CAAC;AACP;AACA,sBAAsB,CAAC,WAAW,GAAG,wBAAwB;;;;"}