@veracity/vui 2.13.6 → 2.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/calendar/calendar.d.ts +5 -0
- package/dist/cjs/calendar/calendar.d.ts.map +1 -0
- package/dist/cjs/calendar/calendar.js +130 -0
- package/dist/cjs/calendar/calendar.styles.d.ts +14 -0
- package/dist/cjs/calendar/calendar.styles.d.ts.map +1 -0
- package/dist/cjs/calendar/calendar.styles.js +71 -0
- package/dist/cjs/calendar/calendar.types.d.ts +81 -0
- package/dist/cjs/calendar/calendar.types.d.ts.map +1 -0
- package/dist/cjs/calendar/calendar.types.js +2 -0
- package/dist/cjs/calendar/components/calendarHeader.d.ts +16 -0
- package/dist/cjs/calendar/components/calendarHeader.d.ts.map +1 -0
- package/dist/cjs/calendar/components/calendarHeader.js +22 -0
- package/dist/cjs/calendar/components/dayPicker.d.ts +9 -0
- package/dist/cjs/calendar/components/dayPicker.d.ts.map +1 -0
- package/dist/cjs/calendar/components/dayPicker.js +29 -0
- package/dist/cjs/calendar/components/index.d.ts +6 -0
- package/dist/cjs/calendar/components/index.d.ts.map +1 -0
- package/dist/cjs/calendar/components/index.js +21 -0
- package/dist/cjs/calendar/components/monthPicker.d.ts +9 -0
- package/dist/cjs/calendar/components/monthPicker.d.ts.map +1 -0
- package/dist/cjs/calendar/components/monthPicker.js +12 -0
- package/dist/cjs/calendar/components/timeUnitHeader.d.ts +13 -0
- package/dist/cjs/calendar/components/timeUnitHeader.d.ts.map +1 -0
- package/dist/cjs/calendar/components/timeUnitHeader.js +26 -0
- package/dist/cjs/calendar/components/yearPicker.d.ts +9 -0
- package/dist/cjs/calendar/components/yearPicker.d.ts.map +1 -0
- package/dist/cjs/calendar/components/yearPicker.js +10 -0
- package/dist/cjs/calendar/consts.d.ts +7 -0
- package/dist/cjs/calendar/consts.d.ts.map +1 -0
- package/dist/cjs/calendar/consts.js +22 -0
- package/dist/cjs/calendar/hooks/index.d.ts +5 -0
- package/dist/cjs/calendar/hooks/index.d.ts.map +1 -0
- package/dist/cjs/calendar/hooks/index.js +20 -0
- package/dist/cjs/calendar/hooks/useBoundaries.d.ts +12 -0
- package/dist/cjs/calendar/hooks/useBoundaries.d.ts.map +1 -0
- package/dist/cjs/calendar/hooks/useBoundaries.js +16 -0
- package/dist/cjs/calendar/hooks/useCalendar.d.ts +8 -0
- package/dist/cjs/calendar/hooks/useCalendar.d.ts.map +1 -0
- package/dist/cjs/calendar/hooks/useCalendar.js +143 -0
- package/dist/cjs/calendar/hooks/useDefaultViewMonth.d.ts +8 -0
- package/dist/cjs/calendar/hooks/useDefaultViewMonth.d.ts.map +1 -0
- package/dist/cjs/calendar/hooks/useDefaultViewMonth.js +21 -0
- package/dist/cjs/calendar/hooks/useSelectedDate.d.ts +15 -0
- package/dist/cjs/calendar/hooks/useSelectedDate.d.ts.map +1 -0
- package/dist/cjs/calendar/hooks/useSelectedDate.js +20 -0
- package/dist/cjs/calendar/index.d.ts +5 -0
- package/dist/cjs/calendar/index.d.ts.map +1 -0
- package/dist/cjs/calendar/index.js +25 -0
- package/dist/cjs/calendar/theme.d.ts +8 -0
- package/dist/cjs/calendar/theme.d.ts.map +1 -0
- package/dist/cjs/calendar/theme.js +12 -0
- package/dist/cjs/calendar/utils.d.ts +26 -0
- package/dist/cjs/calendar/utils.d.ts.map +1 -0
- package/dist/cjs/calendar/utils.js +95 -0
- package/dist/cjs/core/theme.d.ts.map +1 -1
- package/dist/cjs/core/theme.js +2 -4
- package/dist/cjs/datePicker/components/pickerPanel.d.ts +6 -0
- package/dist/cjs/datePicker/components/pickerPanel.d.ts.map +1 -0
- package/dist/cjs/datePicker/components/pickerPanel.js +25 -0
- package/dist/cjs/datePicker/dateInput.d.ts +11 -0
- package/dist/cjs/datePicker/dateInput.d.ts.map +1 -0
- package/dist/cjs/datePicker/dateInput.js +92 -0
- package/dist/cjs/datePicker/datePicker.d.ts +5 -0
- package/dist/cjs/datePicker/datePicker.d.ts.map +1 -0
- package/dist/cjs/datePicker/datePicker.js +138 -0
- package/dist/cjs/datePicker/datePicker.types.d.ts +22 -0
- package/dist/cjs/datePicker/datePicker.types.d.ts.map +1 -0
- package/dist/cjs/datePicker/datePicker.types.js +2 -0
- package/dist/cjs/datePicker/index.d.ts +4 -0
- package/dist/cjs/datePicker/index.d.ts.map +1 -0
- package/dist/cjs/datePicker/index.js +24 -0
- package/dist/cjs/datePicker/theme.d.ts +8 -0
- package/dist/cjs/datePicker/theme.d.ts.map +1 -0
- package/dist/cjs/datePicker/theme.js +12 -0
- package/dist/cjs/header/loggedInHeader.d.ts.map +1 -1
- package/dist/cjs/icons/baseIcons/conc/conAnalytics.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conAnalytics.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conAnalytics.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conCircularEconomy.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conCircularEconomy.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conCircularEconomy.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conCleanAir.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conCleanAir.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conCleanAir.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conCleanWater.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conCleanWater.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conCleanWater.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conDataFabric.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conDataFabric.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conDataFabric.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conDeepSearch.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conDeepSearch.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conDeepSearch.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conElectricCar.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conElectricCar.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conElectricCar.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conEnergyEfficiency.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conEnergyEfficiency.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conEnergyEfficiency.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conIdentitySafe.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conIdentitySafe.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conIdentitySafe.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conMarketplace.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conMarketplace.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conMarketplace.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conNetwork.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conNetwork.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conNetwork.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conNotifications.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conNotifications.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conNotifications.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conNotifications2.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conNotifications2.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conNotifications2.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conRecycling.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conRecycling.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conRecycling.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conRenewableCertificateWater.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conRenewableCertificateWater.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conRenewableCertificateWater.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conRenewableCertificateWind.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conRenewableCertificateWind.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conRenewableCertificateWind.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conServices.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conServices.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conServices.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conSmartPowerGrid.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conSmartPowerGrid.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conSmartPowerGrid.js +8 -0
- package/dist/cjs/icons/baseIcons/conc/conSustainableForestry.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conSustainableForestry.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conSustainableForestry.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conVeracityAdapter.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conVeracityAdapter.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conVeracityAdapter.js +7 -0
- package/dist/cjs/icons/baseIcons/conc/conWindmill.d.ts +4 -0
- package/dist/cjs/icons/baseIcons/conc/conWindmill.d.ts.map +1 -0
- package/dist/cjs/icons/baseIcons/conc/conWindmill.js +8 -0
- package/dist/cjs/icons/baseIcons/icons.d.ts +24 -3
- package/dist/cjs/icons/baseIcons/icons.d.ts.map +1 -1
- package/dist/cjs/icons/baseIcons/icons.js +57 -14
- package/dist/cjs/icons/baseIcons/types.d.ts +1 -1
- package/dist/cjs/icons/baseIcons/types.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/input/helpText.d.ts.map +1 -1
- package/dist/cjs/input/helpText.js +1 -1
- package/dist/cjs/tabs/tabs.d.ts.map +1 -1
- package/dist/cjs/tabs/tabs.js +8 -5
- package/dist/cjs/tabs/tabsNavBar.d.ts.map +1 -1
- package/dist/cjs/tabs/tabsNavBar.js +1 -1
- package/dist/cjs/tabs/theme.d.ts.map +1 -1
- package/dist/cjs/tabs/theme.js +0 -1
- package/dist/cjs/theme/components.d.ts +12 -0
- package/dist/cjs/theme/components.d.ts.map +1 -1
- package/dist/cjs/theme/components.js +78 -74
- package/dist/cjs/theme/defaultTheme.d.ts +12 -0
- package/dist/cjs/theme/defaultTheme.d.ts.map +1 -1
- package/dist/cjs/utils/dates.d.ts +20 -0
- package/dist/cjs/utils/dates.d.ts.map +1 -1
- package/dist/cjs/utils/dates.js +60 -1
- package/dist/cjs/utils/formatDate.d.ts +15 -0
- package/dist/cjs/utils/formatDate.d.ts.map +1 -0
- package/dist/cjs/utils/formatDate.js +51 -0
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +1 -0
- package/dist/esm/calendar/calendar.d.ts +5 -0
- package/dist/esm/calendar/calendar.d.ts.map +1 -0
- package/dist/esm/calendar/calendar.js +89 -0
- package/dist/esm/calendar/calendar.styles.d.ts +14 -0
- package/dist/esm/calendar/calendar.styles.d.ts.map +1 -0
- package/dist/esm/calendar/calendar.styles.js +65 -0
- package/dist/esm/calendar/calendar.types.d.ts +81 -0
- package/dist/esm/calendar/calendar.types.d.ts.map +1 -0
- package/dist/esm/calendar/calendar.types.js +1 -0
- package/dist/esm/calendar/components/calendarHeader.d.ts +16 -0
- package/dist/esm/calendar/components/calendarHeader.d.ts.map +1 -0
- package/dist/esm/calendar/components/calendarHeader.js +15 -0
- package/dist/esm/calendar/components/dayPicker.d.ts +9 -0
- package/dist/esm/calendar/components/dayPicker.d.ts.map +1 -0
- package/dist/esm/calendar/components/dayPicker.js +22 -0
- package/dist/esm/calendar/components/index.d.ts +6 -0
- package/dist/esm/calendar/components/index.d.ts.map +1 -0
- package/dist/esm/calendar/components/index.js +5 -0
- package/dist/esm/calendar/components/monthPicker.d.ts +9 -0
- package/dist/esm/calendar/components/monthPicker.d.ts.map +1 -0
- package/dist/esm/calendar/components/monthPicker.js +5 -0
- package/dist/esm/calendar/components/timeUnitHeader.d.ts +13 -0
- package/dist/esm/calendar/components/timeUnitHeader.d.ts.map +1 -0
- package/dist/esm/calendar/components/timeUnitHeader.js +19 -0
- package/dist/esm/calendar/components/yearPicker.d.ts +9 -0
- package/dist/esm/calendar/components/yearPicker.d.ts.map +1 -0
- package/dist/esm/calendar/components/yearPicker.js +3 -0
- package/dist/esm/calendar/consts.d.ts +7 -0
- package/dist/esm/calendar/consts.d.ts.map +1 -0
- package/dist/esm/calendar/consts.js +19 -0
- package/dist/esm/calendar/hooks/index.d.ts +5 -0
- package/dist/esm/calendar/hooks/index.d.ts.map +1 -0
- package/dist/esm/calendar/hooks/index.js +4 -0
- package/dist/esm/calendar/hooks/useBoundaries.d.ts +12 -0
- package/dist/esm/calendar/hooks/useBoundaries.d.ts.map +1 -0
- package/dist/esm/calendar/hooks/useBoundaries.js +12 -0
- package/dist/esm/calendar/hooks/useCalendar.d.ts +8 -0
- package/dist/esm/calendar/hooks/useCalendar.d.ts.map +1 -0
- package/dist/esm/calendar/hooks/useCalendar.js +139 -0
- package/dist/esm/calendar/hooks/useDefaultViewMonth.d.ts +8 -0
- package/dist/esm/calendar/hooks/useDefaultViewMonth.d.ts.map +1 -0
- package/dist/esm/calendar/hooks/useDefaultViewMonth.js +17 -0
- package/dist/esm/calendar/hooks/useSelectedDate.d.ts +15 -0
- package/dist/esm/calendar/hooks/useSelectedDate.d.ts.map +1 -0
- package/dist/esm/calendar/hooks/useSelectedDate.js +16 -0
- package/dist/esm/calendar/index.d.ts +5 -0
- package/dist/esm/calendar/index.d.ts.map +1 -0
- package/dist/esm/calendar/index.js +4 -0
- package/dist/esm/calendar/theme.d.ts +8 -0
- package/dist/esm/calendar/theme.d.ts.map +1 -0
- package/dist/esm/calendar/theme.js +10 -0
- package/dist/esm/calendar/utils.d.ts +26 -0
- package/dist/esm/calendar/utils.d.ts.map +1 -0
- package/dist/esm/calendar/utils.js +81 -0
- package/dist/esm/core/theme.d.ts.map +1 -1
- package/dist/esm/core/theme.js +2 -4
- package/dist/esm/datePicker/components/pickerPanel.d.ts +6 -0
- package/dist/esm/datePicker/components/pickerPanel.d.ts.map +1 -0
- package/dist/esm/datePicker/components/pickerPanel.js +19 -0
- package/dist/esm/datePicker/dateInput.d.ts +11 -0
- package/dist/esm/datePicker/dateInput.d.ts.map +1 -0
- package/dist/esm/datePicker/dateInput.js +53 -0
- package/dist/esm/datePicker/datePicker.d.ts +5 -0
- package/dist/esm/datePicker/datePicker.d.ts.map +1 -0
- package/dist/esm/datePicker/datePicker.js +98 -0
- package/dist/esm/datePicker/datePicker.types.d.ts +22 -0
- package/dist/esm/datePicker/datePicker.types.d.ts.map +1 -0
- package/dist/esm/datePicker/datePicker.types.js +1 -0
- package/dist/esm/datePicker/index.d.ts +4 -0
- package/dist/esm/datePicker/index.d.ts.map +1 -0
- package/dist/esm/datePicker/index.js +3 -0
- package/dist/esm/datePicker/theme.d.ts +8 -0
- package/dist/esm/datePicker/theme.d.ts.map +1 -0
- package/dist/esm/datePicker/theme.js +10 -0
- package/dist/esm/header/loggedInHeader.d.ts.map +1 -1
- package/dist/esm/icons/baseIcons/conc/conAnalytics.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conAnalytics.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conAnalytics.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conCircularEconomy.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conCircularEconomy.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conCircularEconomy.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conCleanAir.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conCleanAir.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conCleanAir.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conCleanWater.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conCleanWater.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conCleanWater.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conDataFabric.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conDataFabric.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conDataFabric.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conDeepSearch.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conDeepSearch.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conDeepSearch.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conElectricCar.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conElectricCar.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conElectricCar.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conEnergyEfficiency.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conEnergyEfficiency.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conEnergyEfficiency.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conIdentitySafe.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conIdentitySafe.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conIdentitySafe.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conMarketplace.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conMarketplace.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conMarketplace.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conNetwork.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conNetwork.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conNetwork.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conNotifications.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conNotifications.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conNotifications.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conNotifications2.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conNotifications2.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conNotifications2.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conRecycling.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conRecycling.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conRecycling.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conRenewableCertificateWater.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conRenewableCertificateWater.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conRenewableCertificateWater.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conRenewableCertificateWind.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conRenewableCertificateWind.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conRenewableCertificateWind.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conServices.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conServices.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conServices.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conSmartPowerGrid.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conSmartPowerGrid.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conSmartPowerGrid.js +6 -0
- package/dist/esm/icons/baseIcons/conc/conSustainableForestry.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conSustainableForestry.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conSustainableForestry.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conVeracityAdapter.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conVeracityAdapter.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conVeracityAdapter.js +5 -0
- package/dist/esm/icons/baseIcons/conc/conWindmill.d.ts +4 -0
- package/dist/esm/icons/baseIcons/conc/conWindmill.d.ts.map +1 -0
- package/dist/esm/icons/baseIcons/conc/conWindmill.js +6 -0
- package/dist/esm/icons/baseIcons/icons.d.ts +24 -3
- package/dist/esm/icons/baseIcons/icons.d.ts.map +1 -1
- package/dist/esm/icons/baseIcons/icons.js +24 -3
- package/dist/esm/icons/baseIcons/types.d.ts +1 -1
- package/dist/esm/icons/baseIcons/types.d.ts.map +1 -1
- package/dist/esm/index.d.ts +2 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/input/helpText.d.ts.map +1 -1
- package/dist/esm/input/helpText.js +1 -1
- package/dist/esm/tabs/tabs.d.ts.map +1 -1
- package/dist/esm/tabs/tabs.js +7 -4
- package/dist/esm/tabs/tabsNavBar.d.ts.map +1 -1
- package/dist/esm/tabs/tabsNavBar.js +1 -1
- package/dist/esm/tabs/theme.d.ts.map +1 -1
- package/dist/esm/tabs/theme.js +0 -1
- package/dist/esm/theme/components.d.ts +12 -0
- package/dist/esm/theme/components.d.ts.map +1 -1
- package/dist/esm/theme/components.js +4 -0
- package/dist/esm/theme/defaultTheme.d.ts +12 -0
- package/dist/esm/theme/defaultTheme.d.ts.map +1 -1
- package/dist/esm/utils/dates.d.ts +20 -0
- package/dist/esm/utils/dates.d.ts.map +1 -1
- package/dist/esm/utils/dates.js +51 -0
- package/dist/esm/utils/formatDate.d.ts +15 -0
- package/dist/esm/utils/formatDate.d.ts.map +1 -0
- package/dist/esm/utils/formatDate.js +36 -0
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +1 -0
- package/package.json +1 -1
- package/src/calendar/calendar.styles.ts +75 -0
- package/src/calendar/calendar.tsx +145 -0
- package/src/calendar/calendar.types.ts +91 -0
- package/src/calendar/components/calendarHeader.tsx +56 -0
- package/src/calendar/components/dayPicker.tsx +55 -0
- package/src/calendar/components/index.ts +5 -0
- package/src/calendar/components/monthPicker.tsx +26 -0
- package/src/calendar/components/timeUnitHeader.tsx +47 -0
- package/src/calendar/components/yearPicker.tsx +24 -0
- package/src/calendar/consts.ts +24 -0
- package/src/calendar/hooks/index.ts +4 -0
- package/src/calendar/hooks/useBoundaries.ts +16 -0
- package/src/calendar/hooks/useCalendar.ts +181 -0
- package/src/calendar/hooks/useDefaultViewMonth.ts +18 -0
- package/src/calendar/hooks/useSelectedDate.ts +20 -0
- package/src/calendar/index.ts +4 -0
- package/src/calendar/theme.ts +14 -0
- package/src/calendar/utils.ts +100 -0
- package/src/core/theme.ts +2 -4
- package/src/datePicker/components/pickerPanel.tsx +22 -0
- package/src/datePicker/dateInput.tsx +77 -0
- package/src/datePicker/datePicker.tsx +172 -0
- package/src/datePicker/datePicker.types.ts +25 -0
- package/src/datePicker/index.ts +3 -0
- package/src/datePicker/theme.ts +14 -0
- package/src/header/loggedInHeader.tsx +0 -1
- package/src/icons/baseIcons/conc/conAnalytics.ts +9 -0
- package/src/icons/baseIcons/conc/conCircularEconomy.ts +9 -0
- package/src/icons/baseIcons/conc/conCleanAir.ts +8 -0
- package/src/icons/baseIcons/conc/conCleanWater.ts +8 -0
- package/src/icons/baseIcons/conc/conDataFabric.ts +8 -0
- package/src/icons/baseIcons/conc/conDeepSearch.ts +9 -0
- package/src/icons/baseIcons/conc/conElectricCar.ts +9 -0
- package/src/icons/baseIcons/conc/conEnergyEfficiency.ts +8 -0
- package/src/icons/baseIcons/conc/conIdentitySafe.ts +8 -0
- package/src/icons/baseIcons/conc/conMarketplace.ts +8 -0
- package/src/icons/baseIcons/conc/conNetwork.ts +8 -0
- package/src/icons/baseIcons/conc/conNotifications.ts +8 -0
- package/src/icons/baseIcons/conc/conNotifications2.ts +8 -0
- package/src/icons/baseIcons/conc/conRecycling.ts +9 -0
- package/src/icons/baseIcons/conc/conRenewableCertificateWater.ts +9 -0
- package/src/icons/baseIcons/conc/conRenewableCertificateWind.ts +9 -0
- package/src/icons/baseIcons/conc/conServices.ts +8 -0
- package/src/icons/baseIcons/conc/conSmartPowerGrid.ts +9 -0
- package/src/icons/baseIcons/conc/conSustainableForestry.ts +8 -0
- package/src/icons/baseIcons/conc/conVeracityAdapter.ts +8 -0
- package/src/icons/baseIcons/conc/conWindmill.ts +9 -0
- package/src/icons/baseIcons/icons.ts +24 -3
- package/src/icons/baseIcons/types.ts +24 -3
- package/src/index.ts +2 -0
- package/src/input/helpText.tsx +1 -0
- package/src/tabs/tabs.tsx +7 -4
- package/src/tabs/tabsNavBar.tsx +3 -1
- package/src/tabs/theme.ts +0 -1
- package/src/theme/components.ts +4 -0
- package/src/utils/dates.ts +60 -0
- package/src/utils/formatDate.ts +63 -0
- package/src/utils/index.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpText.d.ts","sourceRoot":"","sources":["../../../src/input/helpText.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,6CAA6C;AAC7C,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"helpText.d.ts","sourceRoot":"","sources":["../../../src/input/helpText.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,6CAA6C;AAC7C,eAAO,MAAM,QAAQ,sDAuBnB,CAAA;AAGF,eAAe,QAAQ,CAAA"}
|
|
@@ -12,7 +12,7 @@ export const HelpText = vui((props, ref) => {
|
|
|
12
12
|
const mergedProps = { ...inputProps, ...props };
|
|
13
13
|
const styles = useStyleConfig('Input', mergedProps);
|
|
14
14
|
const color = isError ? inputColors.error : inputColors.helpText;
|
|
15
|
-
return (React.createElement(P, { className: cs('vui-inputHelpText', className), color: color, display: "flex", py: 1, ref: ref, ...styles.helpText, ...rest },
|
|
15
|
+
return (React.createElement(P, { alignItems: "center", className: cs('vui-inputHelpText', className), color: color, display: "flex", py: 1, ref: ref, ...styles.helpText, ...rest },
|
|
16
16
|
isError && React.createElement(Icon, { mr: 1, name: "falExclamationTriangle", pathFill: inputColors.error, size: "sm" }),
|
|
17
17
|
children));
|
|
18
18
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/tabs/tabs.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAY,SAAS,EAAE,MAAM,cAAc,CAAA;AAIlD,eAAO,MAAM,QAAQ;;;;SAEpB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../src/tabs/tabs.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAY,SAAS,EAAE,MAAM,cAAc,CAAA;AAIlD,eAAO,MAAM,QAAQ;;;;SAEpB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,IAAI,kDA+Df,CAAA;AAIF,eAAe,IAAI,CAAA"}
|
package/dist/esm/tabs/tabs.js
CHANGED
|
@@ -38,10 +38,13 @@ export const Tabs = vui((props, ref) => {
|
|
|
38
38
|
}
|
|
39
39
|
}, [children, activeTabId]);
|
|
40
40
|
const onNavItemClick = (id, e) => {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
41
|
+
const tab = tabs.find(t => t.id === id);
|
|
42
|
+
if (tab?.children !== undefined) {
|
|
43
|
+
setAnimationDirection(id < activeTabIndex ? 'fadeLeft' : 'fadeRight');
|
|
44
|
+
setActiveTabIndex(id);
|
|
45
|
+
onTabClick?.(id);
|
|
46
|
+
}
|
|
47
|
+
tab?.onClick?.(e);
|
|
45
48
|
};
|
|
46
49
|
const activeTab = tabs?.[activeTabIndex];
|
|
47
50
|
return (React.createElement(TabsBase, { className: cs('vui-tabs', className), ref: ref, ...styles.container, ...rest },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabsNavBar.d.ts","sourceRoot":"","sources":["../../../src/tabs/tabsNavBar.tsx"],"names":[],"mappings":"AASA,OAAO,EAAkB,cAAc,EAAY,MAAM,cAAc,CAAA;AAKvE,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"tabsNavBar.d.ts","sourceRoot":"","sources":["../../../src/tabs/tabsNavBar.tsx"],"names":[],"mappings":"AASA,OAAO,EAAkB,cAAc,EAAY,MAAM,cAAc,CAAA;AAKvE,eAAO,MAAM,UAAU,uDA0ErB,CAAA;AAIF,eAAe,UAAU,CAAA"}
|
|
@@ -22,7 +22,7 @@ export const TabsNavBar = vui((props, ref) => {
|
|
|
22
22
|
React.createElement(Box, { alignItems: "center" },
|
|
23
23
|
!!tab.icon && React.createElement(Icon, { mr: iconMarginRight, name: tab.icon, size: iconSize }),
|
|
24
24
|
tab.title),
|
|
25
|
-
!!tab.onDelete && (React.createElement(TagButton, { disabled: tab.disabled, hoverColor: "
|
|
25
|
+
!!tab.onDelete && (React.createElement(TagButton, { disabled: tab.disabled, hoverBg: "skyBlue.80", hoverColor: "seaBlue.main", isRound: false, ml: 1, onClick: e => tab?.onDelete?.(e), title: "Delete" })),
|
|
26
26
|
isActive(tab) && (React.createElement(Box, { animation: animationDirection, bg: main, bottom: "-1px", h: borderWidth, left: 0, position: "absolute", w: 1 }, "\u00A0")))))));
|
|
27
27
|
});
|
|
28
28
|
TabsNavBar.displayName = 'TabsNavBar';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/tabs/theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/tabs/theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA,wBAMC"}
|
package/dist/esm/tabs/theme.js
CHANGED
|
@@ -708,6 +708,12 @@ declare const _default: {
|
|
|
708
708
|
};
|
|
709
709
|
};
|
|
710
710
|
};
|
|
711
|
+
Calendar: {
|
|
712
|
+
baseStyle: {};
|
|
713
|
+
defaultProps: {};
|
|
714
|
+
sizes: {};
|
|
715
|
+
variants: {};
|
|
716
|
+
};
|
|
711
717
|
Card: {
|
|
712
718
|
baseStyle: {
|
|
713
719
|
bg: string;
|
|
@@ -762,6 +768,12 @@ declare const _default: {
|
|
|
762
768
|
};
|
|
763
769
|
variants: {};
|
|
764
770
|
};
|
|
771
|
+
DatePicker: {
|
|
772
|
+
baseStyle: {};
|
|
773
|
+
defaultProps: {};
|
|
774
|
+
sizes: {};
|
|
775
|
+
variants: {};
|
|
776
|
+
};
|
|
765
777
|
Dialog: {
|
|
766
778
|
baseStyle: {};
|
|
767
779
|
defaultProps: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/theme/components.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/theme/components.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDA,wBAgDC"}
|
|
@@ -5,8 +5,10 @@ import Badge from '../badge/theme';
|
|
|
5
5
|
import Box from '../box/theme';
|
|
6
6
|
import Breadcrumbs from '../breadcrumbs/theme';
|
|
7
7
|
import Button from '../button/theme';
|
|
8
|
+
import Calendar from '../calendar/theme';
|
|
8
9
|
import Card from '../card/theme';
|
|
9
10
|
import Checkbox from '../checkbox/theme';
|
|
11
|
+
import DatePicker from '../datePicker/theme';
|
|
10
12
|
import Definition from '../definition/theme';
|
|
11
13
|
import Dialog from '../dialog/theme';
|
|
12
14
|
import Divider from '../divider/theme';
|
|
@@ -53,8 +55,10 @@ export default {
|
|
|
53
55
|
Box,
|
|
54
56
|
Breadcrumbs,
|
|
55
57
|
Button,
|
|
58
|
+
Calendar,
|
|
56
59
|
Card,
|
|
57
60
|
Checkbox,
|
|
61
|
+
DatePicker,
|
|
58
62
|
Dialog,
|
|
59
63
|
Divider,
|
|
60
64
|
DragAndDrop,
|
|
@@ -1214,6 +1214,12 @@ declare const defaultTheme: {
|
|
|
1214
1214
|
};
|
|
1215
1215
|
};
|
|
1216
1216
|
};
|
|
1217
|
+
Calendar: {
|
|
1218
|
+
baseStyle: {};
|
|
1219
|
+
defaultProps: {};
|
|
1220
|
+
sizes: {};
|
|
1221
|
+
variants: {};
|
|
1222
|
+
};
|
|
1217
1223
|
Card: {
|
|
1218
1224
|
baseStyle: {
|
|
1219
1225
|
bg: string;
|
|
@@ -1268,6 +1274,12 @@ declare const defaultTheme: {
|
|
|
1268
1274
|
};
|
|
1269
1275
|
variants: {};
|
|
1270
1276
|
};
|
|
1277
|
+
DatePicker: {
|
|
1278
|
+
baseStyle: {};
|
|
1279
|
+
defaultProps: {};
|
|
1280
|
+
sizes: {};
|
|
1281
|
+
variants: {};
|
|
1282
|
+
};
|
|
1271
1283
|
Dialog: {
|
|
1272
1284
|
baseStyle: {};
|
|
1273
1285
|
defaultProps: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/defaultTheme.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,YAAY
|
|
1
|
+
{"version":3,"file":"defaultTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/defaultTheme.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGjB,CAAA;AAED,eAAe,YAAY,CAAA"}
|
|
@@ -2,4 +2,24 @@
|
|
|
2
2
|
export declare function isValidDate(value: Date | string | number): boolean;
|
|
3
3
|
/** Formats the date to ISO format: 'yyyy-mm-dd' */
|
|
4
4
|
export declare function formatIsoDate(date: Date | string | number): string | undefined;
|
|
5
|
+
/**
|
|
6
|
+
* Parses string date with the iso format of YYYY-mm-dd
|
|
7
|
+
* @param input string
|
|
8
|
+
* @returns Date | undefined
|
|
9
|
+
*/
|
|
10
|
+
export declare function parseIsoDate(input?: string): Date | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* Validation for 'YYYY-MM-DD' format
|
|
13
|
+
*/
|
|
14
|
+
export declare function validateDateFormat(dateString: string): RegExpMatchArray | null;
|
|
15
|
+
export declare const getDateUTCValue: (date: Date) => {
|
|
16
|
+
utcYear: number;
|
|
17
|
+
utcMonth: number;
|
|
18
|
+
utcDate: number;
|
|
19
|
+
};
|
|
20
|
+
export declare const generateDateByUTCValue: (year: number, month: number, day?: number) => Date;
|
|
21
|
+
export declare const sameYearSameMonth: (a?: Date, b?: Date) => boolean;
|
|
22
|
+
export declare const sameYear: (a?: Date, b?: Date) => boolean;
|
|
23
|
+
export declare const sameDate: (a?: Date, b?: Date) => boolean;
|
|
24
|
+
export declare const utcDateToLocale: (utcDate?: Date) => string | undefined;
|
|
5
25
|
//# sourceMappingURL=dates.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../../src/utils/dates.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,WAExD;AAED,mDAAmD;AACnD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,sBAOzD"}
|
|
1
|
+
{"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../../src/utils/dates.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,wBAAgB,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,WAExD;AAED,mDAAmD;AACnD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,sBAOzD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,oBAM1C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,2BAGpD;AAGD,eAAO,MAAM,eAAe,SAAU,IAAI;;;;CAIxC,CAAA;AAGF,eAAO,MAAM,sBAAsB,SAAU,MAAM,SAAS,MAAM,QAAQ,MAAM,SAE/E,CAAA;AAED,eAAO,MAAM,iBAAiB,OAAQ,IAAI,MAAM,IAAI,YAInD,CAAA;AAED,eAAO,MAAM,QAAQ,OAAQ,IAAI,MAAM,IAAI,YAG1C,CAAA;AAED,eAAO,MAAM,QAAQ,OAAQ,IAAI,MAAM,IAAI,YAQ1C,CAAA;AAED,eAAO,MAAM,eAAe,aAAc,IAAI,uBAI7C,CAAA"}
|
package/dist/esm/utils/dates.js
CHANGED
|
@@ -12,3 +12,54 @@ export function formatIsoDate(date) {
|
|
|
12
12
|
const dd = d.getDate().toString().padStart(2, '0');
|
|
13
13
|
return `${yyyy}-${mm}-${dd}`;
|
|
14
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* Parses string date with the iso format of YYYY-mm-dd
|
|
17
|
+
* @param input string
|
|
18
|
+
* @returns Date | undefined
|
|
19
|
+
*/
|
|
20
|
+
export function parseIsoDate(input) {
|
|
21
|
+
if (!input)
|
|
22
|
+
return;
|
|
23
|
+
const ticks = Date.parse(input);
|
|
24
|
+
return isNaN(ticks) ? undefined : new Date(ticks);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Validation for 'YYYY-MM-DD' format
|
|
28
|
+
*/
|
|
29
|
+
export function validateDateFormat(dateString) {
|
|
30
|
+
const regEx = /^\d{4}-\d{2}-\d{2}$/;
|
|
31
|
+
return dateString.match(regEx);
|
|
32
|
+
}
|
|
33
|
+
// Get current time's UTC year, month, date
|
|
34
|
+
export const getDateUTCValue = (date) => ({
|
|
35
|
+
utcYear: date.getUTCFullYear(),
|
|
36
|
+
utcMonth: date.getUTCMonth(),
|
|
37
|
+
utcDate: date.getUTCDate()
|
|
38
|
+
});
|
|
39
|
+
// Generate a date by set its utc value
|
|
40
|
+
export const generateDateByUTCValue = (year, month, day) => {
|
|
41
|
+
return day ? new Date(Date.UTC(year, month, day)) : new Date(Date.UTC(year, month));
|
|
42
|
+
};
|
|
43
|
+
export const sameYearSameMonth = (a, b) => {
|
|
44
|
+
if (!a || !b)
|
|
45
|
+
return false;
|
|
46
|
+
return a.getUTCFullYear() === b.getUTCFullYear() && a.getUTCMonth() === b.getUTCMonth();
|
|
47
|
+
};
|
|
48
|
+
export const sameYear = (a, b) => {
|
|
49
|
+
if (!a || !b)
|
|
50
|
+
return false;
|
|
51
|
+
return a.getUTCFullYear() === b.getUTCFullYear() ? true : false;
|
|
52
|
+
};
|
|
53
|
+
export const sameDate = (a, b) => {
|
|
54
|
+
if (!a || !b)
|
|
55
|
+
return false;
|
|
56
|
+
return (a.getUTCFullYear() === b.getUTCFullYear() &&
|
|
57
|
+
a.getUTCMonth() === b.getUTCMonth() &&
|
|
58
|
+
a.getUTCDate() === b.getUTCDate());
|
|
59
|
+
};
|
|
60
|
+
export const utcDateToLocale = (utcDate) => {
|
|
61
|
+
if (!utcDate)
|
|
62
|
+
return undefined;
|
|
63
|
+
const localDateSameDay = new Date(utcDate.getUTCFullYear(), utcDate.getUTCMonth(), utcDate.getUTCDate());
|
|
64
|
+
return localDateSameDay.toLocaleDateString();
|
|
65
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type DateFormat = 'DD MM YYYY' | 'DD MM YYYY, HH:MM' | 'DD MMM' | 'DD MMM YYYY' | 'DD MMM YYYY, HH:MM' | 'DD MMM, HH:MM' | 'HH:MM' | 'MMM D, YYYY' | 'YYYY/MM/DD' | 'YYYY-MM-DD' | 'YYYY/MM/DD, HH:MM' | 'YYYY-MM-DD, HH:MM' | 'YYYY-MM-DD, HH:MM:SS';
|
|
2
|
+
export type FormatDateOptions = Intl.DateTimeFormatOptions & {
|
|
3
|
+
locales?: string | string[];
|
|
4
|
+
};
|
|
5
|
+
/** Predefined selection of date formats using DateTimeFormatOptions. */
|
|
6
|
+
export declare const dateFormats: Record<DateFormat, FormatDateOptions>;
|
|
7
|
+
/**
|
|
8
|
+
* Structures given date string, milliseconds number or Date object according to the chosen format.
|
|
9
|
+
* Uses toLocalDateString internally. Predefined formats specify initial options, which can be overwritten.
|
|
10
|
+
* @param date - string, number or Date object accepted by Date() constructor
|
|
11
|
+
* @param format - predefined configuration of DateTimeFormatOptions
|
|
12
|
+
* @param options - configuration of toLocaleDateString method
|
|
13
|
+
*/
|
|
14
|
+
export declare function formatDate(date?: string | number | Date, format?: DateFormat, options?: FormatDateOptions): string;
|
|
15
|
+
//# sourceMappingURL=formatDate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatDate.d.ts","sourceRoot":"","sources":["../../../src/utils/formatDate.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAClB,YAAY,GACZ,mBAAmB,GACnB,QAAQ,GACR,aAAa,GACb,oBAAoB,GACpB,eAAe,GACf,OAAO,GACP,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,mBAAmB,GACnB,mBAAmB,GACnB,sBAAsB,CAAA;AAE1B,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,GAAG;IAC3D,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CAC5B,CAAA;AAED,wEAAwE;AACxE,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,UAAU,EAAE,iBAAiB,CAc7D,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC7B,MAAM,GAAE,UAAyB,EACjC,OAAO,CAAC,EAAE,iBAAiB,UAgB5B"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** Predefined selection of date formats using DateTimeFormatOptions. */
|
|
2
|
+
export const dateFormats = {
|
|
3
|
+
'DD MM YYYY': { year: 'numeric', month: '2-digit', day: '2-digit' },
|
|
4
|
+
'DD MM YYYY, HH:MM': { year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit' },
|
|
5
|
+
'DD MMM': { month: 'short', day: '2-digit' },
|
|
6
|
+
'DD MMM YYYY': { year: 'numeric', month: 'short', day: '2-digit' },
|
|
7
|
+
'DD MMM YYYY, HH:MM': { year: 'numeric', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' },
|
|
8
|
+
'DD MMM, HH:MM': { month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' },
|
|
9
|
+
'HH:MM': { locales: 'en-GB', hour: '2-digit', minute: '2-digit', hourCycle: 'h23' },
|
|
10
|
+
'MMM D, YYYY': { locales: 'en-US', year: 'numeric', month: 'short', day: 'numeric' },
|
|
11
|
+
'YYYY/MM/DD': { locales: 'en-ZA' },
|
|
12
|
+
'YYYY-MM-DD': { locales: 'fr-CA' },
|
|
13
|
+
'YYYY/MM/DD, HH:MM': { locales: 'en-ZA', hour: '2-digit', minute: '2-digit' },
|
|
14
|
+
'YYYY-MM-DD, HH:MM': { locales: 'fr-CA', timeStyle: 'short' },
|
|
15
|
+
'YYYY-MM-DD, HH:MM:SS': { locales: 'fr-CA' }
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Structures given date string, milliseconds number or Date object according to the chosen format.
|
|
19
|
+
* Uses toLocalDateString internally. Predefined formats specify initial options, which can be overwritten.
|
|
20
|
+
* @param date - string, number or Date object accepted by Date() constructor
|
|
21
|
+
* @param format - predefined configuration of DateTimeFormatOptions
|
|
22
|
+
* @param options - configuration of toLocaleDateString method
|
|
23
|
+
*/
|
|
24
|
+
export function formatDate(date, format = 'DD MM YYYY', options) {
|
|
25
|
+
const formatOptions = dateFormats[format];
|
|
26
|
+
const { locales, ...mergedOptions } = { ...formatOptions, ...options };
|
|
27
|
+
if (format === 'YYYY-MM-DD, HH:MM:SS' || format === 'YYYY-MM-DD, HH:MM') {
|
|
28
|
+
return date
|
|
29
|
+
? new Date(date).toLocaleDateString(locales) + ', ' + new Date(date).toLocaleTimeString(undefined, mergedOptions)
|
|
30
|
+
: '';
|
|
31
|
+
}
|
|
32
|
+
if (format === 'HH:MM') {
|
|
33
|
+
return date ? new Date(date).toLocaleTimeString(locales, mergedOptions) : '';
|
|
34
|
+
}
|
|
35
|
+
return date ? new Date(date).toLocaleDateString(locales, mergedOptions) : '';
|
|
36
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA"}
|
package/dist/esm/utils/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@veracity/vui",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.14.0",
|
|
4
4
|
"description": "Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.",
|
|
5
5
|
"module": "./dist/esm/index.js",
|
|
6
6
|
"main": "./dist/cjs/index.js",
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import Box from '../box'
|
|
2
|
+
import { css, styled, th } from '../core'
|
|
3
|
+
import Link from '../link'
|
|
4
|
+
import { ItemProps } from './calendar.types'
|
|
5
|
+
|
|
6
|
+
export const boundary = css`
|
|
7
|
+
background-color: ${th.color('seaBlue.main')};
|
|
8
|
+
color: white !important;
|
|
9
|
+
border-radius: 0;
|
|
10
|
+
`
|
|
11
|
+
|
|
12
|
+
export const current = css`
|
|
13
|
+
background-color: ${th.color('seaBlue.main')};
|
|
14
|
+
color: white !important;
|
|
15
|
+
border-radius: 0;
|
|
16
|
+
`
|
|
17
|
+
|
|
18
|
+
export const isDisabled = css`
|
|
19
|
+
color: ${th.color('sandstone.main')} !important;
|
|
20
|
+
cursor: not-allowed;
|
|
21
|
+
`
|
|
22
|
+
|
|
23
|
+
export const isHidden = css`
|
|
24
|
+
color: ${th.color('darkBlue.75')} !important;
|
|
25
|
+
`
|
|
26
|
+
|
|
27
|
+
export const isToday = css`
|
|
28
|
+
border: 1px solid ${th.color('seaBlue.main')};
|
|
29
|
+
`
|
|
30
|
+
|
|
31
|
+
export const hover = css`
|
|
32
|
+
background-color: ${th.color('skyBlue.85')};
|
|
33
|
+
color: ${th.color('seaBlue.main')};
|
|
34
|
+
border-radius: 0;
|
|
35
|
+
`
|
|
36
|
+
|
|
37
|
+
export const isSelected = css`
|
|
38
|
+
background-color: ${th.color('skyBlue.85')};
|
|
39
|
+
border-radius: 0;
|
|
40
|
+
color: white;
|
|
41
|
+
`
|
|
42
|
+
|
|
43
|
+
export const CalendarItem = styled(Link)<ItemProps>`
|
|
44
|
+
aspect-ratio: 1;
|
|
45
|
+
border: 0;
|
|
46
|
+
cursor: pointer;
|
|
47
|
+
height: 100%;
|
|
48
|
+
justify-content: center;
|
|
49
|
+
text-decoration: none;
|
|
50
|
+
width: 100%;
|
|
51
|
+
|
|
52
|
+
${p => p.isHidden && isHidden}
|
|
53
|
+
${p => p.isToday && isToday}
|
|
54
|
+
${p => p.isDisabled && isDisabled}
|
|
55
|
+
${p => p.isSelected && isSelected}
|
|
56
|
+
${p => p.boundary && boundary}
|
|
57
|
+
${p => p.current && current}
|
|
58
|
+
|
|
59
|
+
&:hover {
|
|
60
|
+
color: inherit;
|
|
61
|
+
text-decoration: none;
|
|
62
|
+
|
|
63
|
+
${p => !p.isDisabled && hover}
|
|
64
|
+
}
|
|
65
|
+
`
|
|
66
|
+
|
|
67
|
+
export const CalendarItemsContainer = styled(Box)`
|
|
68
|
+
align-items: center;
|
|
69
|
+
column-gap: 0;
|
|
70
|
+
display: grid;
|
|
71
|
+
grid-template-columns: repeat(3, 1fr);
|
|
72
|
+
grid-template-rows: repeat(4, 62px);
|
|
73
|
+
justify-items: center;
|
|
74
|
+
row-gap: 0;
|
|
75
|
+
`
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import React, { useEffect, useRef, useState } from 'react'
|
|
2
|
+
|
|
3
|
+
import Box from '../box'
|
|
4
|
+
import { omitThemingProps, useStyleConfig, vui } from '../core'
|
|
5
|
+
import { cs } from '../utils'
|
|
6
|
+
import { CalendarProps, DateRange, FlowDirection, TimeResult, TimeUnitMode } from './calendar.types'
|
|
7
|
+
import { CalendarHeader, DayPicker, MonthPicker, YearPicker } from './components'
|
|
8
|
+
import { useCalendar, useDefaultViewMonth } from './hooks'
|
|
9
|
+
import {
|
|
10
|
+
isDay,
|
|
11
|
+
isExact,
|
|
12
|
+
isFrom,
|
|
13
|
+
isMonth,
|
|
14
|
+
isTo,
|
|
15
|
+
isYear,
|
|
16
|
+
processSelectMonth,
|
|
17
|
+
processSelectYear,
|
|
18
|
+
processViewDate
|
|
19
|
+
} from './utils'
|
|
20
|
+
|
|
21
|
+
/** [Beta] Displays calendar. */
|
|
22
|
+
export const Calendar = vui<'div', CalendarProps>((props, ref) => {
|
|
23
|
+
const {
|
|
24
|
+
boundaries,
|
|
25
|
+
className,
|
|
26
|
+
fixedNumberOfWeeks = false,
|
|
27
|
+
disabled,
|
|
28
|
+
isStartDate,
|
|
29
|
+
mode,
|
|
30
|
+
onSelectDates,
|
|
31
|
+
selectedDates,
|
|
32
|
+
...rest
|
|
33
|
+
} = omitThemingProps(props)
|
|
34
|
+
const styles = useStyleConfig('Calendar', props)
|
|
35
|
+
|
|
36
|
+
const currentDateRef = useRef(isFrom(mode) || isExact(mode) ? selectedDates?.startDate : selectedDates?.endDate)
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Effect to reset viewDate when selectedDates changes (onReset)
|
|
40
|
+
*/
|
|
41
|
+
useEffect(() => {
|
|
42
|
+
currentDateRef.current = isFrom(mode) || isExact(mode) ? selectedDates?.startDate : selectedDates?.endDate
|
|
43
|
+
currentDateRef.current && setViewDate(currentDateRef.current)
|
|
44
|
+
}, [selectedDates])
|
|
45
|
+
|
|
46
|
+
const calendarRef = useRef<TimeResult | null>(null)
|
|
47
|
+
|
|
48
|
+
const defaultViewMonth = useDefaultViewMonth({
|
|
49
|
+
boundaries,
|
|
50
|
+
selectedDate: currentDateRef.current,
|
|
51
|
+
isStartDate
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
const [timeUnitMode, setTimeUnitMode] = useState<TimeUnitMode>('day')
|
|
55
|
+
const [viewDate, setViewDate] = useState<Date>(defaultViewMonth)
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Handles clicking next/prev in header
|
|
59
|
+
*/
|
|
60
|
+
const onChangeViewItem = (direction: FlowDirection) => {
|
|
61
|
+
const newViewMonth = processViewDate(viewDate, direction, timeUnitMode, calendarRef?.current?.items)
|
|
62
|
+
newViewMonth && setViewDate(newViewMonth)
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Handles clicking on a day
|
|
67
|
+
*/
|
|
68
|
+
const onSelectDay = (clickedDate: Date) => () => {
|
|
69
|
+
updateDateState(clickedDate)
|
|
70
|
+
setViewDate(clickedDate)
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Handles clicking on a month
|
|
75
|
+
*/
|
|
76
|
+
const onSelectMonth = (clickedDate: Date) => () => {
|
|
77
|
+
const processedNewDate = processSelectMonth(clickedDate, mode, boundaries)
|
|
78
|
+
updateDateState(processedNewDate)
|
|
79
|
+
setViewDate(processedNewDate)
|
|
80
|
+
setTimeUnitMode('day')
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Handles clicking on a year
|
|
85
|
+
*/
|
|
86
|
+
const onSelectYear = (clickedDate: Date) => () => {
|
|
87
|
+
const processedNewDate = processSelectYear(clickedDate, mode, boundaries)
|
|
88
|
+
updateDateState(processedNewDate)
|
|
89
|
+
setViewDate(processedNewDate)
|
|
90
|
+
setTimeUnitMode('month')
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Send update date to parent component
|
|
95
|
+
*/
|
|
96
|
+
const updateDateState = (newDate: Date) => {
|
|
97
|
+
const dateRange: DateRange = { ...selectedDates }
|
|
98
|
+
|
|
99
|
+
if (dateRange) {
|
|
100
|
+
if (isTo(mode)) dateRange.endDate = newDate
|
|
101
|
+
else dateRange.startDate = newDate
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
if (newDate && !disabled) onSelectDates && onSelectDates(dateRange)
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
const calendar = (calendarRef.current = useCalendar({
|
|
108
|
+
boundaries,
|
|
109
|
+
mode,
|
|
110
|
+
selectedDates,
|
|
111
|
+
timeUnitMode,
|
|
112
|
+
viewDate,
|
|
113
|
+
fixedNumberOfWeeks
|
|
114
|
+
}))
|
|
115
|
+
|
|
116
|
+
return (
|
|
117
|
+
<Box
|
|
118
|
+
className={cs('vui-calendar', className)}
|
|
119
|
+
column
|
|
120
|
+
cursor="default"
|
|
121
|
+
minW={280}
|
|
122
|
+
position="relative"
|
|
123
|
+
ref={ref}
|
|
124
|
+
w="fit-content"
|
|
125
|
+
{...styles}
|
|
126
|
+
{...rest}
|
|
127
|
+
>
|
|
128
|
+
<CalendarHeader
|
|
129
|
+
nextDisabled={calendar.nextDisabled}
|
|
130
|
+
onChangeViewItem={onChangeViewItem}
|
|
131
|
+
onSetTimeUnitMode={(mode: TimeUnitMode) => setTimeUnitMode(mode)}
|
|
132
|
+
prevDisabled={calendar.prevDisabled}
|
|
133
|
+
timeUnitMode={timeUnitMode}
|
|
134
|
+
viewMonth={viewDate}
|
|
135
|
+
/>
|
|
136
|
+
{isDay(timeUnitMode) && <DayPicker calendar={calendar} onSelectDay={onSelectDay} />}
|
|
137
|
+
{isMonth(timeUnitMode) && <MonthPicker calendar={calendar} onSelectMonth={onSelectMonth} />}
|
|
138
|
+
{isYear(timeUnitMode) && <YearPicker calendar={calendar} onSelectYear={onSelectYear} />}
|
|
139
|
+
</Box>
|
|
140
|
+
)
|
|
141
|
+
})
|
|
142
|
+
|
|
143
|
+
Calendar.displayName = 'Calendar'
|
|
144
|
+
|
|
145
|
+
export default Calendar
|