@drivy/cobalt 1.5.0 → 2.0.0-beta.1
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/cjs/tokens/index.js +0 -3
- package/cjs/tokens/index.js.map +1 -1
- package/cjs/tokens/palette.js +279 -148
- package/cjs/tokens/palette.js.map +1 -1
- package/cjs/tokens/theme.js +186 -336
- package/cjs/tokens/theme.js.map +1 -1
- package/components/Accordion/ToggleIcon.js +1 -1
- package/components/Accordion/ToggleIcon.js.map +1 -1
- package/components/Alerter/index.js +1 -1
- package/components/Alerter/index.js.map +1 -1
- package/components/Calendar/CalendarRangePicker/DayTooltip.js +1 -1
- package/components/Calendar/CalendarRangePicker/DayTooltip.js.map +1 -1
- package/components/Callout/index.js +1 -1
- package/components/Callout/index.js.map +1 -1
- package/components/ContainedIcon/index.js +1 -1
- package/components/ContainedIcon/index.js.map +1 -1
- package/components/Form/Autocomplete/index.js +2 -2
- package/components/Form/Autocomplete/index.js.map +1 -1
- package/components/Form/Hint.js +6 -9
- package/components/Form/Hint.js.map +1 -1
- package/components/Icon/__generated__/AccountDetailsIcon.js +2 -2
- package/components/Icon/__generated__/AccountDetailsIcon.js.map +1 -1
- package/components/Icon/__generated__/AddPictureIcon.js +2 -2
- package/components/Icon/__generated__/AddPictureIcon.js.map +1 -1
- package/components/Icon/__generated__/AirConditioningIcon.js +2 -2
- package/components/Icon/__generated__/AirConditioningIcon.js.map +1 -1
- package/components/Icon/__generated__/AirportIcon.js +2 -2
- package/components/Icon/__generated__/AirportIcon.js.map +1 -1
- package/components/Icon/__generated__/AndroidIcon.js +2 -2
- package/components/Icon/__generated__/AndroidIcon.js.map +1 -1
- package/components/Icon/__generated__/AntiqueIcon.js +2 -2
- package/components/Icon/__generated__/AntiqueIcon.js.map +1 -1
- package/components/Icon/__generated__/ArrowLeftCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/ArrowLeftCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/ArrowLeftIcon.js +2 -2
- package/components/Icon/__generated__/ArrowLeftIcon.js.map +1 -1
- package/components/Icon/__generated__/ArrowRightCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/ArrowRightCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/ArrowRightCircleIcon.js +2 -2
- package/components/Icon/__generated__/ArrowRightCircleIcon.js.map +1 -1
- package/components/Icon/__generated__/ArrowRightIcon.js +2 -2
- package/components/Icon/__generated__/ArrowRightIcon.js.map +1 -1
- package/components/Icon/__generated__/AudioInputIcon.js +2 -2
- package/components/Icon/__generated__/AudioInputIcon.js.map +1 -1
- package/components/Icon/__generated__/BabySeatIcon.js +2 -2
- package/components/Icon/__generated__/BabySeatIcon.js.map +1 -1
- package/components/Icon/__generated__/BankIcon.js +2 -2
- package/components/Icon/__generated__/BankIcon.js.map +1 -1
- package/components/Icon/__generated__/BatteryIcon.js +2 -2
- package/components/Icon/__generated__/BatteryIcon.js.map +1 -1
- package/components/Icon/__generated__/BellIcon.js +2 -2
- package/components/Icon/__generated__/BellIcon.js.map +1 -1
- package/components/Icon/__generated__/BikeRackIcon.js +2 -2
- package/components/Icon/__generated__/BikeRackIcon.js.map +1 -1
- package/components/Icon/__generated__/BinIcon.js +2 -2
- package/components/Icon/__generated__/BinIcon.js.map +1 -1
- package/components/Icon/__generated__/BluetoothIcon.js +2 -2
- package/components/Icon/__generated__/BluetoothIcon.js.map +1 -1
- package/components/Icon/__generated__/BriefcaseIcon.js +2 -2
- package/components/Icon/__generated__/BriefcaseIcon.js.map +1 -1
- package/components/Icon/__generated__/BulbIcon.js +2 -2
- package/components/Icon/__generated__/BulbIcon.js.map +1 -1
- package/components/Icon/__generated__/CableIcon.js +2 -2
- package/components/Icon/__generated__/CableIcon.js.map +1 -1
- package/components/Icon/__generated__/CabrioletIcon.js +2 -2
- package/components/Icon/__generated__/CabrioletIcon.js.map +1 -1
- package/components/Icon/__generated__/CalendarCheckIcon.js +2 -2
- package/components/Icon/__generated__/CalendarCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/CalendarClockIcon.js +2 -2
- package/components/Icon/__generated__/CalendarClockIcon.js.map +1 -1
- package/components/Icon/__generated__/CalendarEndIcon.js +2 -2
- package/components/Icon/__generated__/CalendarEndIcon.js.map +1 -1
- package/components/Icon/__generated__/CalendarIcon.js +2 -2
- package/components/Icon/__generated__/CalendarIcon.js.map +1 -1
- package/components/Icon/__generated__/CalendarStartIcon.js +2 -2
- package/components/Icon/__generated__/CalendarStartIcon.js.map +1 -1
- package/components/Icon/__generated__/CameraAddIcon.js +2 -2
- package/components/Icon/__generated__/CameraAddIcon.js.map +1 -1
- package/components/Icon/__generated__/CameraIcon.js +2 -2
- package/components/Icon/__generated__/CameraIcon.js.map +1 -1
- package/components/Icon/__generated__/CampervanIcon.js +2 -2
- package/components/Icon/__generated__/CampervanIcon.js.map +1 -1
- package/components/Icon/__generated__/CarAddIcon.js +2 -2
- package/components/Icon/__generated__/CarAddIcon.js.map +1 -1
- package/components/Icon/__generated__/CarCheckIcon.js +2 -2
- package/components/Icon/__generated__/CarCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/CarDamagesIcon.js +2 -2
- package/components/Icon/__generated__/CarDamagesIcon.js.map +1 -1
- package/components/Icon/__generated__/CarDrivyOpenIcon.js +2 -2
- package/components/Icon/__generated__/CarDrivyOpenIcon.js.map +1 -1
- package/components/Icon/__generated__/CarGroupIcon.js +2 -2
- package/components/Icon/__generated__/CarGroupIcon.js.map +1 -1
- package/components/Icon/__generated__/CarIcon.js +2 -2
- package/components/Icon/__generated__/CarIcon.js.map +1 -1
- package/components/Icon/__generated__/CarLockIcon.js +2 -2
- package/components/Icon/__generated__/CarLockIcon.js.map +1 -1
- package/components/Icon/__generated__/CarPlayIcon.js +2 -2
- package/components/Icon/__generated__/CarPlayIcon.js.map +1 -1
- package/components/Icon/__generated__/CarReturnIcon.js +2 -2
- package/components/Icon/__generated__/CarReturnIcon.js.map +1 -1
- package/components/Icon/__generated__/CarSearchIcon.js +2 -2
- package/components/Icon/__generated__/CarSearchIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeAntiqueIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeAntiqueIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeCabrioletIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeCabrioletIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeCampervanIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeCampervanIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeCityIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeCityIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeConvertibleIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeConvertibleIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeCoupeIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeCoupeIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeFamilyIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeFamilyIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeFourFourIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeFourFourIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeMinibusIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeMinibusIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeSedanIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeSedanIcon.js.map +1 -1
- package/components/Icon/__generated__/CarTypeUtilityIcon.js +2 -2
- package/components/Icon/__generated__/CarTypeUtilityIcon.js.map +1 -1
- package/components/Icon/__generated__/CardIcon.js +2 -2
- package/components/Icon/__generated__/CardIcon.js.map +1 -1
- package/components/Icon/__generated__/CdPlayerIcon.js +2 -2
- package/components/Icon/__generated__/CdPlayerIcon.js.map +1 -1
- package/components/Icon/__generated__/CertificateIcon.js +2 -2
- package/components/Icon/__generated__/CertificateIcon.js.map +1 -1
- package/components/Icon/__generated__/ChainsIcon.js +2 -2
- package/components/Icon/__generated__/ChainsIcon.js.map +1 -1
- package/components/Icon/__generated__/CheckCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/CheckCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/CheckCircleIcon.js +2 -2
- package/components/Icon/__generated__/CheckCircleIcon.js.map +1 -1
- package/components/Icon/__generated__/CheckIcon.js +2 -2
- package/components/Icon/__generated__/CheckIcon.js.map +1 -1
- package/components/Icon/__generated__/ChecklistIcon.js +2 -2
- package/components/Icon/__generated__/ChecklistIcon.js.map +1 -1
- package/components/Icon/__generated__/ChevronDownIcon.js +2 -2
- package/components/Icon/__generated__/ChevronDownIcon.js.map +1 -1
- package/components/Icon/__generated__/ChevronLeftIcon.js +2 -2
- package/components/Icon/__generated__/ChevronLeftIcon.js.map +1 -1
- package/components/Icon/__generated__/ChevronRightIcon.js +2 -2
- package/components/Icon/__generated__/ChevronRightIcon.js.map +1 -1
- package/components/Icon/__generated__/ChevronUpIcon.js +2 -2
- package/components/Icon/__generated__/ChevronUpIcon.js.map +1 -1
- package/components/Icon/__generated__/CircledArrowLeftIcon.js +2 -2
- package/components/Icon/__generated__/CircledArrowLeftIcon.js.map +1 -1
- package/components/Icon/__generated__/CircledArrowRightIcon.js +2 -2
- package/components/Icon/__generated__/CircledArrowRightIcon.js.map +1 -1
- package/components/Icon/__generated__/CityIcon.js +2 -2
- package/components/Icon/__generated__/CityIcon.js.map +1 -1
- package/components/Icon/__generated__/CleaningIcon.js +2 -2
- package/components/Icon/__generated__/CleaningIcon.js.map +1 -1
- package/components/Icon/__generated__/ClockAlertIcon.js +2 -2
- package/components/Icon/__generated__/ClockAlertIcon.js.map +1 -1
- package/components/Icon/__generated__/ClockBackwardsIcon.js +2 -2
- package/components/Icon/__generated__/ClockBackwardsIcon.js.map +1 -1
- package/components/Icon/__generated__/ClockForwardsIcon.js +2 -2
- package/components/Icon/__generated__/ClockForwardsIcon.js.map +1 -1
- package/components/Icon/__generated__/ClockIcon.js +2 -2
- package/components/Icon/__generated__/ClockIcon.js.map +1 -1
- package/components/Icon/__generated__/CloseCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/CloseCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/CloseIcon.js +2 -2
- package/components/Icon/__generated__/CloseIcon.js.map +1 -1
- package/components/Icon/__generated__/CollapseIcon.js +2 -2
- package/components/Icon/__generated__/CollapseIcon.js.map +1 -1
- package/components/Icon/__generated__/ConnectCarIcon.js +2 -2
- package/components/Icon/__generated__/ConnectCarIcon.js.map +1 -1
- package/components/Icon/__generated__/ContactMailIcon.js +2 -2
- package/components/Icon/__generated__/ContactMailIcon.js.map +1 -1
- package/components/Icon/__generated__/ContactPhoneIcon.js +2 -2
- package/components/Icon/__generated__/ContactPhoneIcon.js.map +1 -1
- package/components/Icon/__generated__/ContextualPaperclipIcon.js +2 -2
- package/components/Icon/__generated__/ContextualPaperclipIcon.js.map +1 -1
- package/components/Icon/__generated__/ContextualQuestionIcon.js +2 -2
- package/components/Icon/__generated__/ContextualQuestionIcon.js.map +1 -1
- package/components/Icon/__generated__/ContextualWarningCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/ContextualWarningCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/ContextualWarningCircleIcon.js +2 -2
- package/components/Icon/__generated__/ContextualWarningCircleIcon.js.map +1 -1
- package/components/Icon/__generated__/ContractIcon.js +2 -2
- package/components/Icon/__generated__/ContractIcon.js.map +1 -1
- package/components/Icon/__generated__/ConvertibleIcon.js +2 -2
- package/components/Icon/__generated__/ConvertibleIcon.js.map +1 -1
- package/components/Icon/__generated__/CopyIcon.js +2 -2
- package/components/Icon/__generated__/CopyIcon.js.map +1 -1
- package/components/Icon/__generated__/CoupeIcon.js +2 -2
- package/components/Icon/__generated__/CoupeIcon.js.map +1 -1
- package/components/Icon/__generated__/CreditCardAddIcon.js +2 -2
- package/components/Icon/__generated__/CreditCardAddIcon.js.map +1 -1
- package/components/Icon/__generated__/CreditCardErrorIcon.js +2 -2
- package/components/Icon/__generated__/CreditCardErrorIcon.js.map +1 -1
- package/components/Icon/__generated__/CreditCardIcon.js +2 -2
- package/components/Icon/__generated__/CreditCardIcon.js.map +1 -1
- package/components/Icon/__generated__/CruiseControlIcon.js +2 -2
- package/components/Icon/__generated__/CruiseControlIcon.js.map +1 -1
- package/components/Icon/__generated__/DashcamIcon.js +2 -2
- package/components/Icon/__generated__/DashcamIcon.js.map +1 -1
- package/components/Icon/__generated__/DirectionsIcon.js +2 -2
- package/components/Icon/__generated__/DirectionsIcon.js.map +1 -1
- package/components/Icon/__generated__/DocumentIcon.js +2 -2
- package/components/Icon/__generated__/DocumentIcon.js.map +1 -1
- package/components/Icon/__generated__/DotHorizontalIcon.js +2 -2
- package/components/Icon/__generated__/DotHorizontalIcon.js.map +1 -1
- package/components/Icon/__generated__/DotVerticalIcon.js +2 -2
- package/components/Icon/__generated__/DotVerticalIcon.js.map +1 -1
- package/components/Icon/__generated__/DotsHorizontalIcon.js +2 -2
- package/components/Icon/__generated__/DotsHorizontalIcon.js.map +1 -1
- package/components/Icon/__generated__/DotsVerticalIcon.js +2 -2
- package/components/Icon/__generated__/DotsVerticalIcon.js.map +1 -1
- package/components/Icon/__generated__/DownloadIcon.js +2 -2
- package/components/Icon/__generated__/DownloadIcon.js.map +1 -1
- package/components/Icon/__generated__/EarningIcon.js +2 -2
- package/components/Icon/__generated__/EarningIcon.js.map +1 -1
- package/components/Icon/__generated__/EarthIcon.js +2 -2
- package/components/Icon/__generated__/EarthIcon.js.map +1 -1
- package/components/Icon/__generated__/EditIcon.js +2 -2
- package/components/Icon/__generated__/EditIcon.js.map +1 -1
- package/components/Icon/__generated__/ElectricIcon.js +2 -2
- package/components/Icon/__generated__/ElectricIcon.js.map +1 -1
- package/components/Icon/__generated__/EvBatteryIcon.js +2 -2
- package/components/Icon/__generated__/EvBatteryIcon.js.map +1 -1
- package/components/Icon/__generated__/EvCableIcon.js +2 -2
- package/components/Icon/__generated__/EvCableIcon.js.map +1 -1
- package/components/Icon/__generated__/EvChargerIcon.js +2 -2
- package/components/Icon/__generated__/EvChargerIcon.js.map +1 -1
- package/components/Icon/__generated__/ExpandIcon.js +2 -2
- package/components/Icon/__generated__/ExpandIcon.js.map +1 -1
- package/components/Icon/__generated__/ExternalLinkIcon.js +2 -2
- package/components/Icon/__generated__/ExternalLinkIcon.js.map +1 -1
- package/components/Icon/__generated__/EyeClosedIcon.js +2 -2
- package/components/Icon/__generated__/EyeClosedIcon.js.map +1 -1
- package/components/Icon/__generated__/EyeIcon.js +2 -2
- package/components/Icon/__generated__/EyeIcon.js.map +1 -1
- package/components/Icon/__generated__/EyeOpenedIcon.js +2 -2
- package/components/Icon/__generated__/EyeOpenedIcon.js.map +1 -1
- package/components/Icon/__generated__/FaceRecognitionIcon.js +2 -2
- package/components/Icon/__generated__/FaceRecognitionIcon.js.map +1 -1
- package/components/Icon/__generated__/FacebookIcon.js +2 -2
- package/components/Icon/__generated__/FacebookIcon.js.map +1 -1
- package/components/Icon/__generated__/FamilyIcon.js +2 -2
- package/components/Icon/__generated__/FamilyIcon.js.map +1 -1
- package/components/Icon/__generated__/FileFilledIcon.js +2 -2
- package/components/Icon/__generated__/FileFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/FilepdfIcon.js +2 -2
- package/components/Icon/__generated__/FilepdfIcon.js.map +1 -1
- package/components/Icon/__generated__/FilexlsIcon.js +2 -2
- package/components/Icon/__generated__/FilexlsIcon.js.map +1 -1
- package/components/Icon/__generated__/FilterIcon.js +2 -2
- package/components/Icon/__generated__/FilterIcon.js.map +1 -1
- package/components/Icon/__generated__/FiltersIcon.js +2 -2
- package/components/Icon/__generated__/FiltersIcon.js.map +1 -1
- package/components/Icon/__generated__/FlagIcon.js +2 -2
- package/components/Icon/__generated__/FlagIcon.js.map +1 -1
- package/components/Icon/__generated__/FourByFourIcon.js +2 -2
- package/components/Icon/__generated__/FourByFourIcon.js.map +1 -1
- package/components/Icon/__generated__/FourWheelDriveIcon.js +2 -2
- package/components/Icon/__generated__/FourWheelDriveIcon.js.map +1 -1
- package/components/Icon/__generated__/FuelTankIcon.js +2 -2
- package/components/Icon/__generated__/FuelTankIcon.js.map +1 -1
- package/components/Icon/__generated__/GeolocationIcon.js +2 -2
- package/components/Icon/__generated__/GeolocationIcon.js.map +1 -1
- package/components/Icon/__generated__/GiftIcon.js +2 -2
- package/components/Icon/__generated__/GiftIcon.js.map +1 -1
- package/components/Icon/__generated__/GpsIcon.js +2 -2
- package/components/Icon/__generated__/GpsIcon.js.map +1 -1
- package/components/Icon/__generated__/GraphUpIcon.js +2 -2
- package/components/Icon/__generated__/GraphUpIcon.js.map +1 -1
- package/components/Icon/__generated__/HealingIcon.js +2 -2
- package/components/Icon/__generated__/HealingIcon.js.map +1 -1
- package/components/Icon/__generated__/HeartIcon.js +2 -2
- package/components/Icon/__generated__/HeartIcon.js.map +1 -1
- package/components/Icon/__generated__/HitchIcon.js +2 -2
- package/components/Icon/__generated__/HitchIcon.js.map +1 -1
- package/components/Icon/__generated__/HomeIcon.js +2 -2
- package/components/Icon/__generated__/HomeIcon.js.map +1 -1
- package/components/Icon/__generated__/IdCardIcon.js +2 -2
- package/components/Icon/__generated__/IdCardIcon.js.map +1 -1
- package/components/Icon/__generated__/IncidentIcon.js +2 -2
- package/components/Icon/__generated__/IncidentIcon.js.map +1 -1
- package/components/Icon/__generated__/InfoCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/InfoCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/InfoCircleIcon.js +2 -2
- package/components/Icon/__generated__/InfoCircleIcon.js.map +1 -1
- package/components/Icon/__generated__/InfoFilledIcon.js +2 -2
- package/components/Icon/__generated__/InfoFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/InfoIcon.js +2 -2
- package/components/Icon/__generated__/InfoIcon.js.map +1 -1
- package/components/Icon/__generated__/InstantIcon.js +2 -2
- package/components/Icon/__generated__/InstantIcon.js.map +1 -1
- package/components/Icon/__generated__/InvoiceIcon.js +2 -2
- package/components/Icon/__generated__/InvoiceIcon.js.map +1 -1
- package/components/Icon/__generated__/KeyConnectIcon.js +2 -2
- package/components/Icon/__generated__/KeyConnectIcon.js.map +1 -1
- package/components/Icon/__generated__/KeyIcon.js +2 -2
- package/components/Icon/__generated__/KeyIcon.js.map +1 -1
- package/components/Icon/__generated__/LicenceCheckIcon.js +2 -2
- package/components/Icon/__generated__/LicenceCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/LicenceIcon.js +2 -2
- package/components/Icon/__generated__/LicenceIcon.js.map +1 -1
- package/components/Icon/__generated__/LicencePaperIcon.js +2 -2
- package/components/Icon/__generated__/LicencePaperIcon.js.map +1 -1
- package/components/Icon/__generated__/LifeBuoyIcon.js +2 -2
- package/components/Icon/__generated__/LifeBuoyIcon.js.map +1 -1
- package/components/Icon/__generated__/LinkedinIcon.js +2 -2
- package/components/Icon/__generated__/LinkedinIcon.js.map +1 -1
- package/components/Icon/__generated__/LoadingIcon.js +2 -2
- package/components/Icon/__generated__/LoadingIcon.js.map +1 -1
- package/components/Icon/__generated__/LocalityIcon.js +2 -2
- package/components/Icon/__generated__/LocalityIcon.js.map +1 -1
- package/components/Icon/__generated__/LocationIcon.js +2 -2
- package/components/Icon/__generated__/LocationIcon.js.map +1 -1
- package/components/Icon/__generated__/LocationMapIcon.js +2 -2
- package/components/Icon/__generated__/LocationMapIcon.js.map +1 -1
- package/components/Icon/__generated__/LocationParkingIcon.js +2 -2
- package/components/Icon/__generated__/LocationParkingIcon.js.map +1 -1
- package/components/Icon/__generated__/LocationPinIcon.js +2 -2
- package/components/Icon/__generated__/LocationPinIcon.js.map +1 -1
- package/components/Icon/__generated__/LockCheckIcon.js +2 -2
- package/components/Icon/__generated__/LockCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/LockedIcon.js +2 -2
- package/components/Icon/__generated__/LockedIcon.js.map +1 -1
- package/components/Icon/__generated__/LoginIcon.js +2 -2
- package/components/Icon/__generated__/LoginIcon.js.map +1 -1
- package/components/Icon/__generated__/LogoutIcon.js +2 -2
- package/components/Icon/__generated__/LogoutIcon.js.map +1 -1
- package/components/Icon/__generated__/MailCheckIcon.js +2 -2
- package/components/Icon/__generated__/MailCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/MailIcon.js +2 -2
- package/components/Icon/__generated__/MailIcon.js.map +1 -1
- package/components/Icon/__generated__/MapAltIcon.js +2 -2
- package/components/Icon/__generated__/MapAltIcon.js.map +1 -1
- package/components/Icon/__generated__/MapIcon.js +2 -2
- package/components/Icon/__generated__/MapIcon.js.map +1 -1
- package/components/Icon/__generated__/MeetDriverIcon.js +2 -2
- package/components/Icon/__generated__/MeetDriverIcon.js.map +1 -1
- package/components/Icon/__generated__/MeetOwnerIcon.js +2 -2
- package/components/Icon/__generated__/MeetOwnerIcon.js.map +1 -1
- package/components/Icon/__generated__/MenuListIcon.js +2 -2
- package/components/Icon/__generated__/MenuListIcon.js.map +1 -1
- package/components/Icon/__generated__/MessagesIcon.js +2 -2
- package/components/Icon/__generated__/MessagesIcon.js.map +1 -1
- package/components/Icon/__generated__/MileageIcon.js +2 -2
- package/components/Icon/__generated__/MileageIcon.js.map +1 -1
- package/components/Icon/__generated__/MinibusIcon.js +2 -2
- package/components/Icon/__generated__/MinibusIcon.js.map +1 -1
- package/components/Icon/__generated__/MinusCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/MinusCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/MinusIcon.js +2 -2
- package/components/Icon/__generated__/MinusIcon.js.map +1 -1
- package/components/Icon/__generated__/MiscGiftIcon.js +2 -2
- package/components/Icon/__generated__/MiscGiftIcon.js.map +1 -1
- package/components/Icon/__generated__/NearbyDeviceIcon.js +2 -2
- package/components/Icon/__generated__/NearbyDeviceIcon.js.map +1 -1
- package/components/Icon/__generated__/NotificationIcon.js +2 -2
- package/components/Icon/__generated__/NotificationIcon.js.map +1 -1
- package/components/Icon/__generated__/Number1CircleIcon.js +2 -2
- package/components/Icon/__generated__/Number1CircleIcon.js.map +1 -1
- package/components/Icon/__generated__/Number2CircleIcon.js +2 -2
- package/components/Icon/__generated__/Number2CircleIcon.js.map +1 -1
- package/components/Icon/__generated__/Number3CircleIcon.js +2 -2
- package/components/Icon/__generated__/Number3CircleIcon.js.map +1 -1
- package/components/Icon/__generated__/Number4CircleIcon.js +2 -2
- package/components/Icon/__generated__/Number4CircleIcon.js.map +1 -1
- package/components/Icon/__generated__/Number5CircleIcon.js +2 -2
- package/components/Icon/__generated__/Number5CircleIcon.js.map +1 -1
- package/components/Icon/__generated__/OkHandIcon.js +2 -2
- package/components/Icon/__generated__/OkHandIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionAirConditioningIcon.js +2 -2
- package/components/Icon/__generated__/OptionAirConditioningIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionAndroidAutoIcon.js +2 -2
- package/components/Icon/__generated__/OptionAndroidAutoIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionAppleCarplayIcon.js +2 -2
- package/components/Icon/__generated__/OptionAppleCarplayIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionAudioInputIcon.js +2 -2
- package/components/Icon/__generated__/OptionAudioInputIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionBabySeatIcon.js +2 -2
- package/components/Icon/__generated__/OptionBabySeatIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionBikeRackIcon.js +2 -2
- package/components/Icon/__generated__/OptionBikeRackIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionBluetoothAudioIcon.js +2 -2
- package/components/Icon/__generated__/OptionBluetoothAudioIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionCdPlayerIcon.js +2 -2
- package/components/Icon/__generated__/OptionCdPlayerIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionChainsIcon.js +2 -2
- package/components/Icon/__generated__/OptionChainsIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionCruiseControlIcon.js +2 -2
- package/components/Icon/__generated__/OptionCruiseControlIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionDashcamIcon.js +2 -2
- package/components/Icon/__generated__/OptionDashcamIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionGpsIcon.js +2 -2
- package/components/Icon/__generated__/OptionGpsIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionHasTrailerIcon.js +2 -2
- package/components/Icon/__generated__/OptionHasTrailerIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionHitchIcon.js +2 -2
- package/components/Icon/__generated__/OptionHitchIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionRoofBoxIcon.js +2 -2
- package/components/Icon/__generated__/OptionRoofBoxIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionSkiRackIcon.js +2 -2
- package/components/Icon/__generated__/OptionSkiRackIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionSnowTireIcon.js +2 -2
- package/components/Icon/__generated__/OptionSnowTireIcon.js.map +1 -1
- package/components/Icon/__generated__/OptionWheelchairAccessibleIcon.js +2 -2
- package/components/Icon/__generated__/OptionWheelchairAccessibleIcon.js.map +1 -1
- package/components/Icon/__generated__/PaperclipIcon.js +2 -2
- package/components/Icon/__generated__/PaperclipIcon.js.map +1 -1
- package/components/Icon/__generated__/ParkingIcon.js +2 -2
- package/components/Icon/__generated__/ParkingIcon.js.map +1 -1
- package/components/Icon/__generated__/PassportIcon.js +2 -2
- package/components/Icon/__generated__/PassportIcon.js.map +1 -1
- package/components/Icon/__generated__/PaymentsIcon.js +2 -2
- package/components/Icon/__generated__/PaymentsIcon.js.map +1 -1
- package/components/Icon/__generated__/PencilIcon.js +2 -2
- package/components/Icon/__generated__/PencilIcon.js.map +1 -1
- package/components/Icon/__generated__/PeopleUserIcon.js +2 -2
- package/components/Icon/__generated__/PeopleUserIcon.js.map +1 -1
- package/components/Icon/__generated__/PercentageIcon.js +2 -2
- package/components/Icon/__generated__/PercentageIcon.js.map +1 -1
- package/components/Icon/__generated__/PerformanceIcon.js +2 -2
- package/components/Icon/__generated__/PerformanceIcon.js.map +1 -1
- package/components/Icon/__generated__/PhoneIcon.js +2 -2
- package/components/Icon/__generated__/PhoneIcon.js.map +1 -1
- package/components/Icon/__generated__/PhoneLinkIcon.js +2 -2
- package/components/Icon/__generated__/PhoneLinkIcon.js.map +1 -1
- package/components/Icon/__generated__/PhotosIcon.js +2 -2
- package/components/Icon/__generated__/PhotosIcon.js.map +1 -1
- package/components/Icon/__generated__/PickupTruckIcon.js +2 -2
- package/components/Icon/__generated__/PickupTruckIcon.js.map +1 -1
- package/components/Icon/__generated__/PigIcon.js +2 -2
- package/components/Icon/__generated__/PigIcon.js.map +1 -1
- package/components/Icon/__generated__/PinIcon.js +2 -2
- package/components/Icon/__generated__/PinIcon.js.map +1 -1
- package/components/Icon/__generated__/PlugIcon.js +2 -2
- package/components/Icon/__generated__/PlugIcon.js.map +1 -1
- package/components/Icon/__generated__/PlusCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/PlusCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/PlusIcon.js +2 -2
- package/components/Icon/__generated__/PlusIcon.js.map +1 -1
- package/components/Icon/__generated__/PositionIcon.js +2 -2
- package/components/Icon/__generated__/PositionIcon.js.map +1 -1
- package/components/Icon/__generated__/PricingFlatIcon.js +2 -2
- package/components/Icon/__generated__/PricingFlatIcon.js.map +1 -1
- package/components/Icon/__generated__/PricingVariableIcon.js +2 -2
- package/components/Icon/__generated__/PricingVariableIcon.js.map +1 -1
- package/components/Icon/__generated__/ProfilePictureIcon.js +2 -2
- package/components/Icon/__generated__/ProfilePictureIcon.js.map +1 -1
- package/components/Icon/__generated__/QuestionCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/QuestionCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/QuestionCircleIcon.js +2 -2
- package/components/Icon/__generated__/QuestionCircleIcon.js.map +1 -1
- package/components/Icon/__generated__/QuestionIcon.js +2 -2
- package/components/Icon/__generated__/QuestionIcon.js.map +1 -1
- package/components/Icon/__generated__/RaceFlagIcon.js +2 -2
- package/components/Icon/__generated__/RaceFlagIcon.js.map +1 -1
- package/components/Icon/__generated__/RecenterIcon.js +2 -2
- package/components/Icon/__generated__/RecenterIcon.js.map +1 -1
- package/components/Icon/__generated__/RefreshIcon.js +2 -2
- package/components/Icon/__generated__/RefreshIcon.js.map +1 -1
- package/components/Icon/__generated__/ReorderIcon.js +2 -2
- package/components/Icon/__generated__/ReorderIcon.js.map +1 -1
- package/components/Icon/__generated__/ReplacementCarIcon.js +2 -2
- package/components/Icon/__generated__/ReplacementCarIcon.js.map +1 -1
- package/components/Icon/__generated__/ReplyIcon.js +2 -2
- package/components/Icon/__generated__/ReplyIcon.js.map +1 -1
- package/components/Icon/__generated__/ResetIcon.js +2 -2
- package/components/Icon/__generated__/ResetIcon.js.map +1 -1
- package/components/Icon/__generated__/RideIcon.js +2 -2
- package/components/Icon/__generated__/RideIcon.js.map +1 -1
- package/components/Icon/__generated__/RoofBoxIcon.js +2 -2
- package/components/Icon/__generated__/RoofBoxIcon.js.map +1 -1
- package/components/Icon/__generated__/RotateIcon.js +2 -2
- package/components/Icon/__generated__/RotateIcon.js.map +1 -1
- package/components/Icon/__generated__/SealCheckIcon.js +2 -2
- package/components/Icon/__generated__/SealCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/SearchCarIcon.js +2 -2
- package/components/Icon/__generated__/SearchCarIcon.js.map +1 -1
- package/components/Icon/__generated__/SearchIcon.js +2 -2
- package/components/Icon/__generated__/SearchIcon.js.map +1 -1
- package/components/Icon/__generated__/SearchPeopleIcon.js +2 -2
- package/components/Icon/__generated__/SearchPeopleIcon.js.map +1 -1
- package/components/Icon/__generated__/SedanIcon.js +2 -2
- package/components/Icon/__generated__/SedanIcon.js.map +1 -1
- package/components/Icon/__generated__/ServiceBatteryIcon.js +2 -2
- package/components/Icon/__generated__/ServiceBatteryIcon.js.map +1 -1
- package/components/Icon/__generated__/ServiceCleaningIcon.js +2 -2
- package/components/Icon/__generated__/ServiceCleaningIcon.js.map +1 -1
- package/components/Icon/__generated__/ServiceFuelIcon.js +2 -2
- package/components/Icon/__generated__/ServiceFuelIcon.js.map +1 -1
- package/components/Icon/__generated__/ServiceHealingIcon.js +2 -2
- package/components/Icon/__generated__/ServiceHealingIcon.js.map +1 -1
- package/components/Icon/__generated__/ServiceLockedIcon.js +2 -2
- package/components/Icon/__generated__/ServiceLockedIcon.js.map +1 -1
- package/components/Icon/__generated__/ServiceTollsIcon.js +2 -2
- package/components/Icon/__generated__/ServiceTollsIcon.js.map +1 -1
- package/components/Icon/__generated__/ServiceUnlockedIcon.js +2 -2
- package/components/Icon/__generated__/ServiceUnlockedIcon.js.map +1 -1
- package/components/Icon/__generated__/SettingsIcon.js +2 -2
- package/components/Icon/__generated__/SettingsIcon.js.map +1 -1
- package/components/Icon/__generated__/ShareAndroidIcon.js +2 -2
- package/components/Icon/__generated__/ShareAndroidIcon.js.map +1 -1
- package/components/Icon/__generated__/ShareIcon.js +2 -2
- package/components/Icon/__generated__/ShareIcon.js.map +1 -1
- package/components/Icon/__generated__/ShareIosIcon.js +2 -2
- package/components/Icon/__generated__/ShareIosIcon.js.map +1 -1
- package/components/Icon/__generated__/ShieldCheckIcon.js +2 -2
- package/components/Icon/__generated__/ShieldCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/ShieldIcon.js +2 -2
- package/components/Icon/__generated__/ShieldIcon.js.map +1 -1
- package/components/Icon/__generated__/ShopIcon.js +2 -2
- package/components/Icon/__generated__/ShopIcon.js.map +1 -1
- package/components/Icon/__generated__/SkiRackIcon.js +2 -2
- package/components/Icon/__generated__/SkiRackIcon.js.map +1 -1
- package/components/Icon/__generated__/SliderIcon.js +2 -2
- package/components/Icon/__generated__/SliderIcon.js.map +1 -1
- package/components/Icon/__generated__/SmartphoneIcon.js +2 -2
- package/components/Icon/__generated__/SmartphoneIcon.js.map +1 -1
- package/components/Icon/__generated__/SmilingFaceIcon.js +2 -2
- package/components/Icon/__generated__/SmilingFaceIcon.js.map +1 -1
- package/components/Icon/__generated__/SnowTireIcon.js +2 -2
- package/components/Icon/__generated__/SnowTireIcon.js.map +1 -1
- package/components/Icon/__generated__/SocialFacebookIcon.js +2 -2
- package/components/Icon/__generated__/SocialFacebookIcon.js.map +1 -1
- package/components/Icon/__generated__/SocialLinkedinIcon.js +2 -2
- package/components/Icon/__generated__/SocialLinkedinIcon.js.map +1 -1
- package/components/Icon/__generated__/SocialTwitterIcon.js +2 -2
- package/components/Icon/__generated__/SocialTwitterIcon.js.map +1 -1
- package/components/Icon/__generated__/SocialWhatsappIcon.js +2 -2
- package/components/Icon/__generated__/SocialWhatsappIcon.js.map +1 -1
- package/components/Icon/__generated__/StarHalfIcon.js +2 -2
- package/components/Icon/__generated__/StarHalfIcon.js.map +1 -1
- package/components/Icon/__generated__/StarIcon.js +2 -2
- package/components/Icon/__generated__/StarIcon.js.map +1 -1
- package/components/Icon/__generated__/StarsIcon.js +2 -2
- package/components/Icon/__generated__/StarsIcon.js.map +1 -1
- package/components/Icon/__generated__/SubwayIcon.js +2 -2
- package/components/Icon/__generated__/SubwayIcon.js.map +1 -1
- package/components/Icon/__generated__/SuitcaseIcon.js +2 -2
- package/components/Icon/__generated__/SuitcaseIcon.js.map +1 -1
- package/components/Icon/__generated__/SupportIcon.js +2 -2
- package/components/Icon/__generated__/SupportIcon.js.map +1 -1
- package/components/Icon/__generated__/SuvIcon.js +2 -2
- package/components/Icon/__generated__/SuvIcon.js.map +1 -1
- package/components/Icon/__generated__/SynchIcon.js +2 -2
- package/components/Icon/__generated__/SynchIcon.js.map +1 -1
- package/components/Icon/__generated__/TagIcon.js +2 -2
- package/components/Icon/__generated__/TagIcon.js.map +1 -1
- package/components/Icon/__generated__/TimeAlertIcon.js +2 -2
- package/components/Icon/__generated__/TimeAlertIcon.js.map +1 -1
- package/components/Icon/__generated__/TimeBackwardsIcon.js +2 -2
- package/components/Icon/__generated__/TimeBackwardsIcon.js.map +1 -1
- package/components/Icon/__generated__/TimeCalendarIcon.js +2 -2
- package/components/Icon/__generated__/TimeCalendarIcon.js.map +1 -1
- package/components/Icon/__generated__/TimeForwardIcon.js +2 -2
- package/components/Icon/__generated__/TimeForwardIcon.js.map +1 -1
- package/components/Icon/__generated__/TollsIcon.js +2 -2
- package/components/Icon/__generated__/TollsIcon.js.map +1 -1
- package/components/Icon/__generated__/TrailerIcon.js +2 -2
- package/components/Icon/__generated__/TrailerIcon.js.map +1 -1
- package/components/Icon/__generated__/TrainIcon.js +2 -2
- package/components/Icon/__generated__/TrainIcon.js.map +1 -1
- package/components/Icon/__generated__/TriangleDownIcon.js +2 -2
- package/components/Icon/__generated__/TriangleDownIcon.js.map +1 -1
- package/components/Icon/__generated__/TriangleRightIcon.js +2 -2
- package/components/Icon/__generated__/TriangleRightIcon.js.map +1 -1
- package/components/Icon/__generated__/TriangleUpIcon.js +2 -2
- package/components/Icon/__generated__/TriangleUpIcon.js.map +1 -1
- package/components/Icon/__generated__/TwitterIcon.js +2 -2
- package/components/Icon/__generated__/TwitterIcon.js.map +1 -1
- package/components/Icon/__generated__/TwoPeopleIcon.js +2 -2
- package/components/Icon/__generated__/TwoPeopleIcon.js.map +1 -1
- package/components/Icon/__generated__/UberIcon.js +2 -2
- package/components/Icon/__generated__/UberIcon.js.map +1 -1
- package/components/Icon/__generated__/UnfoldIcon.js +2 -2
- package/components/Icon/__generated__/UnfoldIcon.js.map +1 -1
- package/components/Icon/__generated__/UnlockedIcon.js +2 -2
- package/components/Icon/__generated__/UnlockedIcon.js.map +1 -1
- package/components/Icon/__generated__/UserCheckIcon.js +2 -2
- package/components/Icon/__generated__/UserCheckIcon.js.map +1 -1
- package/components/Icon/__generated__/UserIcon.js +2 -2
- package/components/Icon/__generated__/UserIcon.js.map +1 -1
- package/components/Icon/__generated__/UserQuestionIcon.js +2 -2
- package/components/Icon/__generated__/UserQuestionIcon.js.map +1 -1
- package/components/Icon/__generated__/UserShieldIcon.js +2 -2
- package/components/Icon/__generated__/UserShieldIcon.js.map +1 -1
- package/components/Icon/__generated__/UserSwitchIcon.js +2 -2
- package/components/Icon/__generated__/UserSwitchIcon.js.map +1 -1
- package/components/Icon/__generated__/UtilityVanLargeIcon.js +2 -2
- package/components/Icon/__generated__/UtilityVanLargeIcon.js.map +1 -1
- package/components/Icon/__generated__/UtilityVanMediumIcon.js +2 -2
- package/components/Icon/__generated__/UtilityVanMediumIcon.js.map +1 -1
- package/components/Icon/__generated__/UtilityVanSmallIcon.js +2 -2
- package/components/Icon/__generated__/UtilityVanSmallIcon.js.map +1 -1
- package/components/Icon/__generated__/VerifiedSealIcon.js +2 -2
- package/components/Icon/__generated__/VerifiedSealIcon.js.map +1 -1
- package/components/Icon/__generated__/VideoIcon.js +2 -2
- package/components/Icon/__generated__/VideoIcon.js.map +1 -1
- package/components/Icon/__generated__/WalkIcon.js +2 -2
- package/components/Icon/__generated__/WalkIcon.js.map +1 -1
- package/components/Icon/__generated__/WalletIcon.js +2 -2
- package/components/Icon/__generated__/WalletIcon.js.map +1 -1
- package/components/Icon/__generated__/WarningCircleFilledIcon.js +2 -2
- package/components/Icon/__generated__/WarningCircleFilledIcon.js.map +1 -1
- package/components/Icon/__generated__/WarningCircleIcon.js +2 -2
- package/components/Icon/__generated__/WarningCircleIcon.js.map +1 -1
- package/components/Icon/__generated__/WarningIcon.js +2 -2
- package/components/Icon/__generated__/WarningIcon.js.map +1 -1
- package/components/Icon/__generated__/WhatsappIcon.js +2 -2
- package/components/Icon/__generated__/WhatsappIcon.js.map +1 -1
- package/components/Icon/__generated__/WheelIcon.js +2 -2
- package/components/Icon/__generated__/WheelIcon.js.map +1 -1
- package/components/Icon/__generated__/WheelchairIcon.js +2 -2
- package/components/Icon/__generated__/WheelchairIcon.js.map +1 -1
- package/components/Icon/__generated__/WrenchIcon.js +2 -2
- package/components/Icon/__generated__/WrenchIcon.js.map +1 -1
- package/components/Icon/__generated__/YingyangIcon.js +2 -2
- package/components/Icon/__generated__/YingyangIcon.js.map +1 -1
- package/components/Icon/index.js +3 -27
- package/components/Icon/index.js.map +1 -1
- package/components/Modal/ModalHeader.js +3 -2
- package/components/Modal/ModalHeader.js.map +1 -1
- package/components/Pagination/index.js +1 -1
- package/components/Pagination/index.js.map +1 -1
- package/components/PhotoDropzone/index.js +2 -2
- package/components/PhotoDropzone/index.js.map +1 -1
- package/components/Pill/index.js +2 -2
- package/components/Pill/index.js.map +1 -1
- package/components/Rating/RatingIcons.js +2 -2
- package/components/Rating/RatingIcons.js.map +1 -1
- package/components/Sidepanel/index.js +2 -2
- package/components/Sidepanel/index.js.map +1 -1
- package/components/utils/camelize.js +13 -0
- package/components/utils/camelize.js.map +1 -0
- package/package.json +1 -1
- package/src/tokens/palette.js +274 -145
- package/src/tokens/palette.js.map +1 -1
- package/src/tokens/theme.js +125 -328
- package/src/tokens/theme.js.map +1 -1
- package/src/tokens/zIndexes.js +2 -2
- package/styles/components/Accordion/index.scss +4 -4
- package/styles/components/Alerter/index.scss +3 -3
- package/styles/components/BasicCell/index.scss +3 -3
- package/styles/components/BulletList/index.scss +1 -1
- package/styles/components/Buttons/DefaultButton/index.scss +7 -18
- package/styles/components/Buttons/GhostButton/index.scss +4 -9
- package/styles/components/Buttons/InversedButton/index.scss +1 -2
- package/styles/components/Buttons/index.scss +2 -7
- package/styles/components/Calendar/CalendarDayPicker/index.scss +8 -8
- package/styles/components/Calendar/CalendarRangePicker/index.scss +18 -47
- package/styles/components/Calendar/CalendarView/index.scss +5 -5
- package/styles/components/Callout/index.scss +4 -4
- package/styles/components/Card/index.scss +5 -5
- package/styles/components/Cell/index.scss +2 -2
- package/styles/components/Chip/index.scss +3 -3
- package/styles/components/ContainedIcon/index.scss +30 -38
- package/styles/components/EmptyState/index.scss +1 -1
- package/styles/components/Form/Autocomplete/index.scss +10 -10
- package/styles/components/Form/CheckablePill.scss +10 -10
- package/styles/components/Form/Checkmark.scss +9 -9
- package/styles/components/Form/Fieldset.scss +1 -1
- package/styles/components/Form/Hint.scss +1 -1
- package/styles/components/Form/RadioWithDetails.scss +11 -13
- package/styles/components/Form/Select.scss +1 -1
- package/styles/components/Form/Slider.scss +9 -9
- package/styles/components/Form/Stepper.scss +3 -3
- package/styles/components/Form/TagsInput.scss +16 -11
- package/styles/components/Form/TextArea.scss +2 -2
- package/styles/components/Form/TextInput.scss +6 -6
- package/styles/components/Form/ToggleSwitch.scss +8 -8
- package/styles/components/Form/field.scss +1 -1
- package/styles/components/Form/form.scss +5 -5
- package/styles/components/Helper/index.scss +2 -2
- package/styles/components/Icon/index.scss +2 -35
- package/styles/components/Layout/Components/index.scss +7 -7
- package/styles/components/Modal/index.scss +4 -4
- package/styles/components/Note/index.scss +2 -2
- package/styles/components/PhotoDropzone/index.scss +9 -9
- package/styles/components/Pill/index.scss +3 -3
- package/styles/components/PlateNumber/index.scss +1 -1
- package/styles/components/Popover/index.scss +10 -10
- package/styles/components/PriceTable/index.scss +1 -1
- package/styles/components/ProgressBanner/index.scss +3 -3
- package/styles/components/ProgressBar/index.scss +6 -6
- package/styles/components/ProgressCircular/index.scss +8 -9
- package/styles/components/Rating/index.scss +2 -2
- package/styles/components/Sidepanel/index.scss +1 -1
- package/styles/components/TabBar/index.scss +4 -4
- package/styles/components/Tabs/index.scss +4 -4
- package/styles/components/Tag/index.scss +7 -7
- package/styles/core/border.scss +0 -47
- package/styles/core/palette.css +239 -116
- package/styles/core/text.scss +2 -2
- package/styles/core/theme.css +189 -476
- package/styles/core.scss +1 -2
- package/tokens/index.js +1 -3
- package/tokens/index.js.map +1 -1
- package/tokens/palette.js +274 -145
- package/tokens/palette.js.map +1 -1
- package/tokens/theme.js +125 -328
- package/tokens/theme.js.map +1 -1
- package/types/src/components/ContainedIcon/index.d.ts +1 -4
- package/types/src/components/Icon/index.d.ts +2 -2
- package/types/src/components/utils/index.d.ts +0 -1
- package/types/src/tokens/index.d.ts +215 -381
- package/utilities.css +1 -1
- package/utils/getCobaltTailwindcssConfig2.js +13 -125
- package/utils/getCobaltTailwindcssConfig2.js.map +1 -1
- package/utils/helpers.js +40 -69
- package/utils/helpers.js.map +1 -1
- package/cjs/tokens/colors.js +0 -78
- package/cjs/tokens/colors.js.map +0 -1
- package/src/tokens/colors.js +0 -57
- package/src/tokens/colors.js.map +0 -1
- package/styles/components/Icon/iconColors.scss +0 -167
- package/styles/core/_colors-map.scss +0 -324
- package/styles/core/color.scss +0 -124
- package/styles/core/default-theme.css +0 -244
- package/tokens/colors.js +0 -57
- package/tokens/colors.js.map +0 -1
- package/types/src/components/utils/getThemeColors.d.ts +0 -2
- package/types/src/components/utils/getThemeColors.spec.d.ts +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
2
|
+
import camelize from '../../utils/camelize.js';
|
|
3
3
|
import 'lodash.throttle';
|
|
4
4
|
import cx from 'classnames';
|
|
5
5
|
|
|
6
6
|
const iconSource = "yingyang";
|
|
7
7
|
const YingyangIcon = ({ color, size = 24, contained = false, className, }) => {
|
|
8
8
|
const computedClassName = cx(className, `cobalt-Icon cobalt-Icon--${iconSource}`, {
|
|
9
|
-
[`
|
|
9
|
+
[`c-fill-${camelize(color || "")}`]: color,
|
|
10
10
|
"cobalt-Icon--size16": size === 16,
|
|
11
11
|
"cobalt-Icon--size20": size === 20,
|
|
12
12
|
"cobalt-Icon--size32": size === 32,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YingyangIcon.js","sources":["../../../../src/components/Icon/__generated__/YingyangIcon.tsx"],"sourcesContent":["import React from \"react\"\nimport { IconColorsType } from \"../\"\nimport {
|
|
1
|
+
{"version":3,"file":"YingyangIcon.js","sources":["../../../../src/components/Icon/__generated__/YingyangIcon.tsx"],"sourcesContent":["import React from \"react\"\nimport { IconColorsType } from \"../\"\nimport { camelize } from \"../../utils\"\nimport cx from \"classnames\"\nexport type IconProps = {\n color?: IconColorsType\n size?: 16 | 20 | 24 | 32\n contained?: boolean\n className?: string\n}\nconst iconSource = \"yingyang\"\nconst YingyangIcon = ({\n color,\n size = 24,\n contained = false,\n className,\n}: IconProps) => {\n const computedClassName = cx(\n className,\n `cobalt-Icon cobalt-Icon--${iconSource}`,\n {\n [`c-fill-${camelize(color || \"\")}`]: color,\n \"cobalt-Icon--size16\": size === 16,\n \"cobalt-Icon--size20\": size === 20,\n \"cobalt-Icon--size32\": size === 32,\n \"cobalt-Icon--contained\": contained,\n }\n )\n const wrap = (content: React.ReactNode) => (\n <span className={computedClassName}>{content}</span>\n )\n return wrap(\n <svg viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M2 12c0 5.523 4.477 10 10 10s10-4.477 10-10S17.523 2 12 2 2 6.477 2 12Zm18.5 0a8.494 8.494 0 0 0-4.022-7.226A5 5 0 0 1 12 12a5 5 0 0 0-4.478 7.226A8.5 8.5 0 0 0 20.5 12Zm-8-3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm-1 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"\n />\n </svg>\n )\n}\nexport default YingyangIcon\n"],"names":[],"mappings":";;;;;AAUA,MAAM,UAAU,GAAG,UAAU,CAAA;AAC7B,MAAM,YAAY,GAAG,CAAC,EACpB,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,SAAS,GACC,KAAI;IACd,MAAM,iBAAiB,GAAG,EAAE,CAC1B,SAAS,EACT,CAAA,yBAAA,EAA4B,UAAU,CAAA,CAAE,EACxC;QACE,CAAC,CAAA,OAAA,EAAU,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA,CAAE,GAAG,KAAK;QAC1C,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;AAClC,QAAA,wBAAwB,EAAE,SAAS;AACpC,KAAA,CACF,CAAA;AACD,IAAA,MAAM,IAAI,GAAG,CAAC,OAAwB,MACpC,KAAM,CAAA,aAAA,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,iBAAiB,EAAA,EAAG,OAAO,CAAQ,CACrD,CAAA;IACD,OAAO,IAAI,CACT,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,4BAA4B,EAAA;AACzD,QAAA,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EACE,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,+PAA+P,EACjQ,CAAA,CACE,CACP,CAAA;AACH;;;;"}
|
package/components/Icon/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import cx from 'classnames';
|
|
3
3
|
import { icons, theme } from '../../tokens/index.js';
|
|
4
4
|
import * as index from '../../icons/index.js';
|
|
5
|
-
import
|
|
5
|
+
import camelize from '../utils/camelize.js';
|
|
6
6
|
import eqSet from '../utils/eqSet.js';
|
|
7
7
|
import 'lodash.throttle';
|
|
8
8
|
|
|
@@ -12,35 +12,11 @@ const BUNDLED_ICONS = Object.freeze(Object.keys(icons.icons).reduce((bundledIcon
|
|
|
12
12
|
...bundledIcons,
|
|
13
13
|
[name]: index[name],
|
|
14
14
|
}), {}));
|
|
15
|
-
const
|
|
16
|
-
"amber",
|
|
17
|
-
"blue",
|
|
18
|
-
"coral",
|
|
19
|
-
"graphite",
|
|
20
|
-
"graphiteLight",
|
|
21
|
-
"green",
|
|
22
|
-
"greenDark",
|
|
23
|
-
"greenLight",
|
|
24
|
-
"grey",
|
|
25
|
-
"greyDark",
|
|
26
|
-
"greyLight",
|
|
27
|
-
"greyLighter",
|
|
28
|
-
"indigo",
|
|
29
|
-
"indigoDark",
|
|
30
|
-
"purple",
|
|
31
|
-
"purpleLight",
|
|
32
|
-
"red",
|
|
33
|
-
"turquoise",
|
|
34
|
-
"white",
|
|
35
|
-
];
|
|
36
|
-
const iconColors = [
|
|
37
|
-
...Object.keys(theme.icon),
|
|
38
|
-
...iconLegacyColorsOptions,
|
|
39
|
-
];
|
|
15
|
+
const iconColors = [...Object.keys(theme)];
|
|
40
16
|
const isIconSource = (source) => Object.keys(icons.icons).includes(source);
|
|
41
17
|
const Icon = ({ source, color, size = 24, contained = false, className, }) => {
|
|
42
18
|
const computedClassName = cx(className, `cobalt-Icon cobalt-Icon--${source}`, {
|
|
43
|
-
[`
|
|
19
|
+
[`c-fill-${camelize(color || "")}`]: color,
|
|
44
20
|
"cobalt-Icon--size16": size === 16,
|
|
45
21
|
"cobalt-Icon--size20": size === 20,
|
|
46
22
|
"cobalt-Icon--size32": size === 32,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Icon/index.tsx"],"sourcesContent":["import React from \"react\"\nimport cx from \"classnames\"\nimport { icons as iconTokens, theme } from \"../../tokens\"\n\nimport * as icons from \"../../icons\"\nimport { eqSet,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Icon/index.tsx"],"sourcesContent":["import React from \"react\"\nimport cx from \"classnames\"\nimport { icons as iconTokens, theme } from \"../../tokens\"\n\nimport * as icons from \"../../icons\"\nimport { eqSet, camelize } from \"../utils\"\n\nif (\n !eqSet<string>(\n new Set(Object.keys(icons)),\n new Set(Object.keys(iconTokens.icons))\n )\n)\n throw new Error(\n \"Icon sources and tokens are not consistent. Did you add the source, export it and run 'pnpm run icons:update'\"\n )\n\ninterface IconsMap {\n [name: string]: string | undefined\n}\n\nexport const BUNDLED_ICONS: IconsMap = Object.freeze(\n Object.keys(iconTokens.icons).reduce(\n (bundledIcons, name) => ({\n ...bundledIcons,\n [name]: (icons as IconsMap)[name],\n }),\n {}\n )\n)\n\nexport type IconSources = keyof typeof iconTokens.icons\n\nexport const iconColors = [...(Object.keys(theme) as Array<keyof typeof theme>)]\n\nexport type IconColorsType = (typeof iconColors)[number]\nexport interface IconProps {\n source: IconSources\n /**\n * Available colors\n * @default base\n */\n color?: IconColorsType\n /**\n * Available size in px\n * @default 24\n */\n size?: 16 | 20 | 24 | 32\n contained?: boolean\n className?: string\n}\n\nexport const isIconSource = (source: string): source is IconSources =>\n Object.keys(iconTokens.icons).includes(source)\n\nexport const Icon = ({\n source,\n color,\n size = 24,\n contained = false,\n className,\n}: IconProps) => {\n const computedClassName = cx(\n className,\n `cobalt-Icon cobalt-Icon--${source}`,\n {\n [`c-fill-${camelize(color || \"\")}`]: color,\n \"cobalt-Icon--size16\": size === 16,\n \"cobalt-Icon--size20\": size === 20,\n \"cobalt-Icon--size32\": size === 32,\n \"cobalt-Icon--contained\": contained,\n }\n )\n\n const iconSource = BUNDLED_ICONS[source]\n\n if (iconSource == null)\n throw new Error(\n `Icon '${source}' can not be found. Did you add the source, export it and run 'pnpm run icons:update'?`\n )\n\n return (\n <span\n className={computedClassName}\n dangerouslySetInnerHTML={{ __html: iconSource }}\n />\n )\n}\n\nexport * from \"./__generated__/index\"\n\nexport default Icon\n"],"names":["icons","iconTokens"],"mappings":";;;;;;;;AAOA,IACE,CAAC,KAAK,CACJ,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAACA,KAAK,CAAC,CAAC,EAC3B,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAACC,KAAU,CAAC,KAAK,CAAC,CAAC,CACvC;AAED,IAAA,MAAM,IAAI,KAAK,CACb,+GAA+G,CAChH,CAAA;AAMU,MAAA,aAAa,GAAa,MAAM,CAAC,MAAM,CAClD,MAAM,CAAC,IAAI,CAACA,KAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAClC,CAAC,YAAY,EAAE,IAAI,MAAM;AACvB,IAAA,GAAG,YAAY;AACf,IAAA,CAAC,IAAI,GAAID,KAAkB,CAAC,IAAI,CAAC;AAClC,CAAA,CAAC,EACF,EAAE,CACH,EACF;AAIM,MAAM,UAAU,GAAG,CAAC,GAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAA+B,EAAC;MAmBnE,YAAY,GAAG,CAAC,MAAc,KACzC,MAAM,CAAC,IAAI,CAACC,KAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAC;MAEnC,IAAI,GAAG,CAAC,EACnB,MAAM,EACN,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,SAAS,GACC,KAAI;IACd,MAAM,iBAAiB,GAAG,EAAE,CAC1B,SAAS,EACT,CAAA,yBAAA,EAA4B,MAAM,CAAA,CAAE,EACpC;QACE,CAAC,CAAA,OAAA,EAAU,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA,CAAE,GAAG,KAAK;QAC1C,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;AAClC,QAAA,wBAAwB,EAAE,SAAS;AACpC,KAAA,CACF,CAAA;AAED,IAAA,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IAExC,IAAI,UAAU,IAAI,IAAI;AACpB,QAAA,MAAM,IAAI,KAAK,CACb,SAAS,MAAM,CAAA,sFAAA,CAAwF,CACxG,CAAA;AAEH,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAE,iBAAiB,EAC5B,uBAAuB,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,EAAA,CAC/C,EACH;AACH;;;;"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Dialog } from '@ark-ui/react';
|
|
3
|
-
import
|
|
3
|
+
import '../Icon/index.js';
|
|
4
|
+
import CloseIcon from '../Icon/__generated__/CloseIcon.js';
|
|
4
5
|
|
|
5
6
|
const ModalHeader = ({ title, close, }) => {
|
|
6
7
|
if (!title && !close)
|
|
@@ -9,7 +10,7 @@ const ModalHeader = ({ title, close, }) => {
|
|
|
9
10
|
React.createElement(Dialog.Title, { className: "cobalt-modal-header__title" }, title),
|
|
10
11
|
close && (React.createElement(Dialog.CloseTrigger, { className: "cobalt-modal-header__close-button" },
|
|
11
12
|
React.createElement("span", { "aria-hidden": true },
|
|
12
|
-
React.createElement(
|
|
13
|
+
React.createElement(CloseIcon, { color: "onSurfaceVariant" }))))));
|
|
13
14
|
};
|
|
14
15
|
|
|
15
16
|
export { ModalHeader as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.js","sources":["../../../src/components/Modal/ModalHeader.tsx"],"sourcesContent":["import React from \"react\"\nimport { Dialog } from \"@ark-ui/react\"\n\nimport {
|
|
1
|
+
{"version":3,"file":"ModalHeader.js","sources":["../../../src/components/Modal/ModalHeader.tsx"],"sourcesContent":["import React from \"react\"\nimport { Dialog } from \"@ark-ui/react\"\n\nimport { CloseIcon } from \"../Icon\"\n\nconst ModalHeader = ({\n title,\n close,\n}: {\n title?: React.ReactNode\n close?: () => void\n}) => {\n if (!title && !close) return null\n\n return (\n <div className=\"cobalt-modal-header\">\n <Dialog.Title className=\"cobalt-modal-header__title\">\n {title}\n </Dialog.Title>\n {close && (\n <Dialog.CloseTrigger className=\"cobalt-modal-header__close-button\">\n <span aria-hidden>\n <CloseIcon color=\"onSurfaceVariant\" />\n </span>\n </Dialog.CloseTrigger>\n )}\n </div>\n )\n}\n\nexport default ModalHeader\n"],"names":[],"mappings":";;;;;AAKM,MAAA,WAAW,GAAG,CAAC,EACnB,KAAK,EACL,KAAK,GAIN,KAAI;AACH,IAAA,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;AAAE,QAAA,OAAO,IAAI,CAAA;AAEjC,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,qBAAqB,EAAA;QAClC,KAAC,CAAA,aAAA,CAAA,MAAM,CAAC,KAAK,EAAA,EAAC,SAAS,EAAC,4BAA4B,EACjD,EAAA,KAAK,CACO;QACd,KAAK,KACJ,KAAC,CAAA,aAAA,CAAA,MAAM,CAAC,YAAY,EAAA,EAAC,SAAS,EAAC,mCAAmC,EAAA;AAChE,YAAA,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA;gBACE,KAAC,CAAA,aAAA,CAAA,SAAS,EAAC,EAAA,KAAK,EAAC,kBAAkB,EAAG,CAAA,CACjC,CACa,CACvB,CACG,EACP;AACH;;;;"}
|
|
@@ -61,7 +61,7 @@ const Pagination = ({ onPageChange, currentPage, totalPages, options = {
|
|
|
61
61
|
const pages = generatePages(currentPage, totalPages, options);
|
|
62
62
|
return (React.createElement("div", { className: "cobalt-pagination" },
|
|
63
63
|
React.createElement(DefaultButton, { className: cx("cobalt-pagination__DefaultButton"), disabled: currentPage === 1, onClick: () => onPageChange(currentPage - 1), icon: "chevronLeft" }),
|
|
64
|
-
pages.map((page, index) => page === PAGE_DOTS_VALUE ? (React.createElement(DotsHorizontalIcon, { key: `dots-${index}`, className: "cobalt-pagination__threeDots", color: "
|
|
64
|
+
pages.map((page, index) => page === PAGE_DOTS_VALUE ? (React.createElement(DotsHorizontalIcon, { key: `dots-${index}`, className: "cobalt-pagination__threeDots", color: "primary" })) : (React.createElement(PaginationButton, { key: page, currentPage: currentPage, pageNumber: page, onPageChange: onPageChange }))),
|
|
65
65
|
React.createElement(DefaultButton, { className: cx("cobalt-pagination__DefaultButton"), disabled: currentPage === totalPages, onClick: () => onPageChange(currentPage + 1), icon: "chevronRight" })));
|
|
66
66
|
};
|
|
67
67
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Pagination/index.tsx"],"sourcesContent":["import React from \"react\"\nimport cx from \"classnames\"\nimport DefaultButton from \"../Buttons/DefaultButton\"\nimport { DotsHorizontalIcon } from \"../Icon\"\n\nconst PaginationButton = ({\n currentPage,\n pageNumber,\n onPageChange,\n}: {\n currentPage: number\n pageNumber: number\n onPageChange: (page: number) => void\n}) => {\n const isActive = currentPage === pageNumber\n return (\n <DefaultButton\n className={cx(\"cobalt-pagination__DefaultButton\")}\n selected={isActive}\n onClick={() => !isActive && onPageChange(pageNumber)}\n >\n {pageNumber}\n </DefaultButton>\n )\n}\n\nconst PAGE_DOTS_VALUE = -1 // Unrevelant value only used to represent dots in the pages array\n\nconst generatePages = (\n currentPage: number,\n totalPages: number,\n options: {\n maxVisibleLength: number\n edgeVisibleLength: number\n }\n) => {\n const pages: number[] = []\n const maxVisiblePages = options.maxVisibleLength // Max visible pages (excluding dots)\n const edgeButtons = options.edgeVisibleLength // Number of fixed edge buttons\n\n if (totalPages <= maxVisiblePages) {\n // Show all pages\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i)\n }\n return pages\n }\n\n // Calculate dynamic range for middle pages\n const middlePagesCount = maxVisiblePages - 2 * edgeButtons // Remaining pages for the middle\n let startMiddlePage = Math.max(\n currentPage - Math.floor(middlePagesCount / 2),\n edgeButtons + 1\n )\n let endMiddlePage = Math.min(\n currentPage + Math.floor(middlePagesCount / 2),\n totalPages - edgeButtons\n )\n\n // Adjust start and end pages if they exceed boundaries\n if (startMiddlePage === edgeButtons + 1) {\n endMiddlePage = startMiddlePage + middlePagesCount - 1\n } else if (endMiddlePage === totalPages - edgeButtons) {\n startMiddlePage = endMiddlePage - middlePagesCount + 1\n }\n\n // Add leading edge buttons\n for (let i = 1; i <= edgeButtons; i++) {\n pages.push(i)\n }\n if (startMiddlePage > edgeButtons + 1) {\n pages.push(PAGE_DOTS_VALUE)\n }\n\n // Add middle pages\n for (let i = startMiddlePage; i <= endMiddlePage; i++) {\n pages.push(i)\n }\n\n // Add trailing edge buttons\n if (endMiddlePage < totalPages - edgeButtons) {\n pages.push(PAGE_DOTS_VALUE)\n }\n for (let i = totalPages - edgeButtons + 1; i <= totalPages; i++) {\n pages.push(i)\n }\n\n return pages\n}\n\n// eslint-disable-next-line complexity\nconst Pagination = ({\n onPageChange,\n currentPage,\n totalPages,\n options = {\n maxVisibleLength: 11,\n edgeVisibleLength: 3,\n },\n}: {\n currentPage: number\n totalPages: number\n onPageChange: (page: number) => void\n options?: {\n maxVisibleLength: number\n edgeVisibleLength: number\n }\n}) => {\n if (totalPages <= 1) return null\n const pages = generatePages(currentPage, totalPages, options)\n\n return (\n <div className=\"cobalt-pagination\">\n <DefaultButton\n className={cx(\"cobalt-pagination__DefaultButton\")}\n disabled={currentPage === 1}\n onClick={() => onPageChange(currentPage - 1)}\n icon=\"chevronLeft\"\n />\n {pages.map((page, index) =>\n page === PAGE_DOTS_VALUE ? (\n <DotsHorizontalIcon\n key={`dots-${index}`}\n className=\"cobalt-pagination__threeDots\"\n color=\"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Pagination/index.tsx"],"sourcesContent":["import React from \"react\"\nimport cx from \"classnames\"\nimport DefaultButton from \"../Buttons/DefaultButton\"\nimport { DotsHorizontalIcon } from \"../Icon\"\n\nconst PaginationButton = ({\n currentPage,\n pageNumber,\n onPageChange,\n}: {\n currentPage: number\n pageNumber: number\n onPageChange: (page: number) => void\n}) => {\n const isActive = currentPage === pageNumber\n return (\n <DefaultButton\n className={cx(\"cobalt-pagination__DefaultButton\")}\n selected={isActive}\n onClick={() => !isActive && onPageChange(pageNumber)}\n >\n {pageNumber}\n </DefaultButton>\n )\n}\n\nconst PAGE_DOTS_VALUE = -1 // Unrevelant value only used to represent dots in the pages array\n\nconst generatePages = (\n currentPage: number,\n totalPages: number,\n options: {\n maxVisibleLength: number\n edgeVisibleLength: number\n }\n) => {\n const pages: number[] = []\n const maxVisiblePages = options.maxVisibleLength // Max visible pages (excluding dots)\n const edgeButtons = options.edgeVisibleLength // Number of fixed edge buttons\n\n if (totalPages <= maxVisiblePages) {\n // Show all pages\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i)\n }\n return pages\n }\n\n // Calculate dynamic range for middle pages\n const middlePagesCount = maxVisiblePages - 2 * edgeButtons // Remaining pages for the middle\n let startMiddlePage = Math.max(\n currentPage - Math.floor(middlePagesCount / 2),\n edgeButtons + 1\n )\n let endMiddlePage = Math.min(\n currentPage + Math.floor(middlePagesCount / 2),\n totalPages - edgeButtons\n )\n\n // Adjust start and end pages if they exceed boundaries\n if (startMiddlePage === edgeButtons + 1) {\n endMiddlePage = startMiddlePage + middlePagesCount - 1\n } else if (endMiddlePage === totalPages - edgeButtons) {\n startMiddlePage = endMiddlePage - middlePagesCount + 1\n }\n\n // Add leading edge buttons\n for (let i = 1; i <= edgeButtons; i++) {\n pages.push(i)\n }\n if (startMiddlePage > edgeButtons + 1) {\n pages.push(PAGE_DOTS_VALUE)\n }\n\n // Add middle pages\n for (let i = startMiddlePage; i <= endMiddlePage; i++) {\n pages.push(i)\n }\n\n // Add trailing edge buttons\n if (endMiddlePage < totalPages - edgeButtons) {\n pages.push(PAGE_DOTS_VALUE)\n }\n for (let i = totalPages - edgeButtons + 1; i <= totalPages; i++) {\n pages.push(i)\n }\n\n return pages\n}\n\n// eslint-disable-next-line complexity\nconst Pagination = ({\n onPageChange,\n currentPage,\n totalPages,\n options = {\n maxVisibleLength: 11,\n edgeVisibleLength: 3,\n },\n}: {\n currentPage: number\n totalPages: number\n onPageChange: (page: number) => void\n options?: {\n maxVisibleLength: number\n edgeVisibleLength: number\n }\n}) => {\n if (totalPages <= 1) return null\n const pages = generatePages(currentPage, totalPages, options)\n\n return (\n <div className=\"cobalt-pagination\">\n <DefaultButton\n className={cx(\"cobalt-pagination__DefaultButton\")}\n disabled={currentPage === 1}\n onClick={() => onPageChange(currentPage - 1)}\n icon=\"chevronLeft\"\n />\n {pages.map((page, index) =>\n page === PAGE_DOTS_VALUE ? (\n <DotsHorizontalIcon\n key={`dots-${index}`}\n className=\"cobalt-pagination__threeDots\"\n color=\"primary\"\n />\n ) : (\n <PaginationButton\n key={page}\n currentPage={currentPage}\n pageNumber={page}\n onPageChange={onPageChange}\n />\n )\n )}\n <DefaultButton\n className={cx(\"cobalt-pagination__DefaultButton\")}\n disabled={currentPage === totalPages}\n onClick={() => onPageChange(currentPage + 1)}\n icon=\"chevronRight\"\n />\n </div>\n )\n}\n\nexport default Pagination\n"],"names":[],"mappings":";;;;;;AAKA,MAAM,gBAAgB,GAAG,CAAC,EACxB,WAAW,EACX,UAAU,EACV,YAAY,GAKb,KAAI;AACH,IAAA,MAAM,QAAQ,GAAG,WAAW,KAAK,UAAU,CAAA;AAC3C,IAAA,QACE,KAAA,CAAA,aAAA,CAAC,aAAa,EAAA,EACZ,SAAS,EAAE,EAAE,CAAC,kCAAkC,CAAC,EACjD,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,CAAC,QAAQ,IAAI,YAAY,CAAC,UAAU,CAAC,EAAA,EAEnD,UAAU,CACG,EACjB;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,CAAC,CAAA;AAE1B,MAAM,aAAa,GAAG,CACpB,WAAmB,EACnB,UAAkB,EAClB,OAGC,KACC;IACF,MAAM,KAAK,GAAa,EAAE,CAAA;AAC1B,IAAA,MAAM,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAA;AAChD,IAAA,MAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAA;AAE7C,IAAA,IAAI,UAAU,IAAI,eAAe,EAAE;;AAEjC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,EAAE;AACpC,YAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SACd;AACD,QAAA,OAAO,KAAK,CAAA;KACb;;IAGD,MAAM,gBAAgB,GAAG,eAAe,GAAG,CAAC,GAAG,WAAW,CAAA;IAC1D,IAAI,eAAe,GAAG,IAAI,CAAC,GAAG,CAC5B,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,EAC9C,WAAW,GAAG,CAAC,CAChB,CAAA;IACD,IAAI,aAAa,GAAG,IAAI,CAAC,GAAG,CAC1B,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,EAC9C,UAAU,GAAG,WAAW,CACzB,CAAA;;AAGD,IAAA,IAAI,eAAe,KAAK,WAAW,GAAG,CAAC,EAAE;AACvC,QAAA,aAAa,GAAG,eAAe,GAAG,gBAAgB,GAAG,CAAC,CAAA;KACvD;AAAM,SAAA,IAAI,aAAa,KAAK,UAAU,GAAG,WAAW,EAAE;AACrD,QAAA,eAAe,GAAG,aAAa,GAAG,gBAAgB,GAAG,CAAC,CAAA;KACvD;;AAGD,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,EAAE,EAAE;AACrC,QAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KACd;AACD,IAAA,IAAI,eAAe,GAAG,WAAW,GAAG,CAAC,EAAE;AACrC,QAAA,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;KAC5B;;AAGD,IAAA,KAAK,IAAI,CAAC,GAAG,eAAe,EAAE,CAAC,IAAI,aAAa,EAAE,CAAC,EAAE,EAAE;AACrD,QAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KACd;;AAGD,IAAA,IAAI,aAAa,GAAG,UAAU,GAAG,WAAW,EAAE;AAC5C,QAAA,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;KAC5B;AACD,IAAA,KAAK,IAAI,CAAC,GAAG,UAAU,GAAG,WAAW,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,EAAE;AAC/D,QAAA,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KACd;AAED,IAAA,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED;AACM,MAAA,UAAU,GAAG,CAAC,EAClB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,OAAO,GAAG;AACR,IAAA,gBAAgB,EAAE,EAAE;AACpB,IAAA,iBAAiB,EAAE,CAAC;AACrB,CAAA,GASF,KAAI;IACH,IAAI,UAAU,IAAI,CAAC;AAAE,QAAA,OAAO,IAAI,CAAA;IAChC,MAAM,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;AAE7D,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,mBAAmB,EAAA;AAChC,QAAA,KAAA,CAAA,aAAA,CAAC,aAAa,EAAA,EACZ,SAAS,EAAE,EAAE,CAAC,kCAAkC,CAAC,EACjD,QAAQ,EAAE,WAAW,KAAK,CAAC,EAC3B,OAAO,EAAE,MAAM,YAAY,CAAC,WAAW,GAAG,CAAC,CAAC,EAC5C,IAAI,EAAC,aAAa,EAClB,CAAA;QACD,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KACrB,IAAI,KAAK,eAAe,IACtB,KAAC,CAAA,aAAA,CAAA,kBAAkB,EACjB,EAAA,GAAG,EAAE,CAAA,KAAA,EAAQ,KAAK,CAAA,CAAE,EACpB,SAAS,EAAC,8BAA8B,EACxC,KAAK,EAAC,SAAS,EACf,CAAA,KAEF,KAAC,CAAA,aAAA,CAAA,gBAAgB,EACf,EAAA,GAAG,EAAE,IAAI,EACT,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,IAAI,EAChB,YAAY,EAAE,YAAY,EAC1B,CAAA,CACH,CACF;AACD,QAAA,KAAA,CAAA,aAAA,CAAC,aAAa,EAAA,EACZ,SAAS,EAAE,EAAE,CAAC,kCAAkC,CAAC,EACjD,QAAQ,EAAE,WAAW,KAAK,UAAU,EACpC,OAAO,EAAE,MAAM,YAAY,CAAC,WAAW,GAAG,CAAC,CAAC,EAC5C,IAAI,EAAC,cAAc,EACnB,CAAA,CACE,EACP;AACH;;;;"}
|
|
@@ -155,7 +155,7 @@ const PhotoDropzone = ({ className, description, deleteContent, errorContent, on
|
|
|
155
155
|
// Need to reset those listeners to avoid default browser behaviour
|
|
156
156
|
onDragStart: preventEventDefaults, onDragEnd: preventEventDefaults, onDragOver: preventEventDefaults },
|
|
157
157
|
isErrored && (React.createElement("div", { className: "cobalt-photo-dropzone__description" },
|
|
158
|
-
React.createElement(ContextualWarningCircleFilledIcon, { color: "
|
|
158
|
+
React.createElement(ContextualWarningCircleFilledIcon, { color: "error" }),
|
|
159
159
|
errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB))),
|
|
160
160
|
isLoading && (React.createElement("div", { className: "cobalt-photo-dropzone__description" },
|
|
161
161
|
React.createElement(LoadingIcon, null))),
|
|
@@ -172,7 +172,7 @@ const PhotoDropzone = ({ className, description, deleteContent, errorContent, on
|
|
|
172
172
|
// Must follow the click listeners on the dropzone,
|
|
173
173
|
// in order to have the correct events bubbling
|
|
174
174
|
onTouchEnd: onDeleteButtonClick, onMouseUp: onDeleteButtonClick, onKeyUp: onDeleteKey },
|
|
175
|
-
React.createElement(BinIcon, { color: "
|
|
175
|
+
React.createElement(BinIcon, { color: "onSurface" })),
|
|
176
176
|
deleteContentMode === "modal" && (React.createElement(Modal, { isOpen: showDeletePopover, "aria-label": "delete", bodySpacing: false }, deleteContent(onDelete, closeDeletePopover))),
|
|
177
177
|
deleteContentMode === "popover" && (React.createElement(Popover, { targetRef: deleteButtonRef, isOpen: showDeletePopover, close: closeDeletePopover, placement: "left-start", distance: 12, bodySpacing: false, arrow: true }, deleteContent(onDelete, closeDeletePopover)))))) : (React.createElement("div", { className: "cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong" },
|
|
178
178
|
description && React.createElement("div", null, description),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/PhotoDropzone/index.tsx"],"sourcesContent":["import React, {\n useState,\n DragEvent as ReactDragEvent,\n useRef,\n TouchEvent as ReactTouchEvent,\n ChangeEvent as ReactChangeEvent,\n MouseEvent as ReactMouseEvent,\n KeyboardEvent as ReactKeyboardEvent,\n ReactNode,\n useEffect,\n} from \"react\"\nimport cx from \"classnames\"\nimport {\n PlusIcon,\n BinIcon,\n LoadingIcon,\n ContextualWarningCircleFilledIcon,\n} from \"../Icon\"\nimport { validateFile } from \"../utils/validateFile\"\nimport Popover from \"../Popover\"\nimport Modal from \"../Modal\"\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\n\nconst ACCEPTED_MAX_SIZE_MB = 10\nconst ACCEPTED_PHOTOS_TYPES = [\"jpg\", \"jpeg\", \"png\", \"gif\"]\nconst ERROR_DISPLAY_TIME = 6000\nconst ACCEPTED_TYPES_LOCALE_STRING = ACCEPTED_PHOTOS_TYPES.join(\", \")\n\nexport type PhotoDropzonePropsType = {\n className?: string\n description?: string\n deleteContent: (onDelete: () => void, close: () => void) => ReactNode\n deleteContentMode?: \"popover\" | \"modal\"\n errorContent: (acceptedTypes: string, maxFileSize: number) => ReactNode\n onDropped: (file: File) => Promise<void> | void\n onPhotoDelete?: () => void\n initialImageUrl?: string\n}\n\nconst preventEventDefaults = (\n e: ReactDragEvent | ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent\n) => {\n e.preventDefault && e.preventDefault()\n e.stopPropagation && e.stopPropagation()\n}\n\nconst isEnterOrSpaceKey = (event: ReactKeyboardEvent) =>\n event.key === \"Enter\" || event.key === \" \"\n\nconst PhotoDropzone = ({\n className,\n description,\n deleteContent,\n errorContent,\n onDropped,\n onPhotoDelete,\n deleteContentMode = \"popover\",\n initialImageUrl = \"\",\n}: PhotoDropzonePropsType) => {\n const { isMobile } = useBreakpoint()\n const fileInputRef = useRef<HTMLInputElement>(null)\n const deleteButtonRef = useRef<HTMLButtonElement>(null)\n const [isDragging, setIsDragging] = useState(false)\n const [isLoading, setIsLoading] = useState(false)\n const [isErrored, setIsErrored] = useState(false)\n const [imagePreviewUrl, setImagePreviewUrl] = useState(initialImageUrl)\n const [displayDeletion, setDisplayDeletion] = useState(false)\n const [showDeletePopover, setShowDeletePopover] = useState(false)\n const [isImageLoaded, setIsImageLoaded] = useState(false)\n\n const openDeletePopover = (\n event?: ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent\n ) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(true)\n }\n const closeDeletePopover = (event?: ReactMouseEvent | ReactTouchEvent) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(false)\n }\n\n const onDropzoneMouseEnter = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (imagePreviewUrl) setDisplayDeletion(true)\n }\n\n const onDropzoneMouseLeave = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (displayDeletion && !showDeletePopover) setDisplayDeletion(false)\n }\n\n const onDropzoneClick = (event?: ReactMouseEvent | ReactTouchEvent) => {\n if (isMobile && showDeletePopover) return\n event && preventEventDefaults(event)\n if (isLoading) return\n if (isErrored) setIsErrored(false)\n if (imagePreviewUrl) {\n if (showDeletePopover) closeDeletePopover()\n return setDisplayDeletion(!displayDeletion)\n }\n fileInputRef.current?.click()\n }\n\n const onDropzoneKey = (event: ReactKeyboardEvent) => {\n if (showDeletePopover) return\n if (isEnterOrSpaceKey(event)) {\n onDropzoneClick()\n }\n }\n\n const onDeleteKey = (event: ReactKeyboardEvent) => {\n if (isEnterOrSpaceKey(event)) {\n openDeletePopover(event)\n }\n }\n\n const onDelete = () => {\n if (fileInputRef.current) fileInputRef.current.value = \"\"\n closeDeletePopover()\n setImagePreviewUrl(\"\")\n onPhotoDelete && onPhotoDelete()\n }\n\n const onDragEnter = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n if (isErrored) setIsErrored(false)\n !imagePreviewUrl && setIsDragging(true)\n }\n\n const onDragLeave = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n setIsDragging(false)\n }\n\n const processFile = async (fileToProcess: File) => {\n setIsDragging(false)\n setIsErrored(false)\n setIsLoading(true)\n\n const isValidFile = await validateFile(\n fileToProcess,\n (fileToValidate, extension) => {\n const maxFileSize = ACCEPTED_MAX_SIZE_MB * 1000 * 1000\n const acceptedFileTypes = ACCEPTED_PHOTOS_TYPES\n\n if (fileToValidate.size > maxFileSize) {\n return false\n } else if (!extension || !acceptedFileTypes.includes(extension)) {\n return false\n } else {\n return true\n }\n }\n )\n\n if (isValidFile) {\n const imageSrc = URL.createObjectURL(fileToProcess)\n setImagePreviewUrl(imageSrc)\n await onDropped(fileToProcess)\n setIsLoading(false)\n } else {\n setIsLoading(false)\n setIsErrored(true)\n setTimeout(() => {\n setIsErrored(false)\n }, ERROR_DISPLAY_TIME)\n }\n }\n\n const onFileInputChanged = (event: ReactChangeEvent<HTMLInputElement>) => {\n if (event.target.files?.length) {\n processFile(event.target.files[0])\n }\n }\n\n const onDrop = (event: ReactDragEvent<HTMLDivElement>) => {\n preventEventDefaults(event)\n if (event.dataTransfer?.files?.length && !imagePreviewUrl) {\n processFile(event.dataTransfer.files[0])\n }\n }\n\n useEffect(() => {\n setIsImageLoaded(false)\n }, [imagePreviewUrl])\n\n const onDeleteButtonClick = showDeletePopover\n ? closeDeletePopover\n : openDeletePopover\n\n return (\n <div\n tabIndex={0}\n className={cx(\"cobalt-photo-dropzone\", className, {\n \"cobalt-photo-dropzone--filled\": imagePreviewUrl,\n \"cobalt-photo-dropzone--dragging\": isDragging,\n \"cobalt-photo-dropzone--loading\": isLoading,\n \"cobalt-photo-dropzone--errored\": isErrored,\n \"cobalt-photo-dropzone--imageVisible\": isImageLoaded,\n })}\n onMouseEnter={onDropzoneMouseEnter}\n onMouseLeave={onDropzoneMouseLeave}\n onDragEnter={onDragEnter}\n onDragLeave={onDragLeave}\n // Not on click because we also use mouseEnter listener\n onMouseUp={onDropzoneClick}\n onTouchEnd={onDropzoneClick}\n onKeyUp={onDropzoneKey}\n onDrop={onDrop}\n // Need to reset those listeners to avoid default browser behaviour\n onDragStart={preventEventDefaults}\n onDragEnd={preventEventDefaults}\n onDragOver={preventEventDefaults}\n >\n {isErrored && (\n <div className=\"cobalt-photo-dropzone__description\">\n <ContextualWarningCircleFilledIcon color=\"red\" />\n {errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB)}\n </div>\n )}\n {isLoading && (\n <div className=\"cobalt-photo-dropzone__description\">\n <LoadingIcon />\n </div>\n )}\n {!isLoading &&\n !isErrored &&\n (imagePreviewUrl ? (\n <>\n <img\n className=\"cobalt-photo-dropzone__preview\"\n src={imagePreviewUrl}\n onLoad={() => {\n setIsImageLoaded(true)\n }}\n />\n <div>\n <button\n className={cx(\"cobalt-photo-dropzone__delete-button\", {\n \"cobalt-photo-dropzone__delete-button--triggered\":\n displayDeletion,\n })}\n ref={deleteButtonRef}\n // Must follow the click listeners on the dropzone,\n // in order to have the correct events bubbling\n onTouchEnd={onDeleteButtonClick}\n onMouseUp={onDeleteButtonClick}\n onKeyUp={onDeleteKey}\n >\n <BinIcon color=\"indigo\" />\n </button>\n {deleteContentMode === \"modal\" && (\n <Modal\n isOpen={showDeletePopover}\n aria-label=\"delete\"\n bodySpacing={false}\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Modal>\n )}\n\n {deleteContentMode === \"popover\" && (\n <Popover\n targetRef={deleteButtonRef}\n isOpen={showDeletePopover}\n close={closeDeletePopover}\n placement=\"left-start\"\n distance={12}\n bodySpacing={false}\n arrow\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Popover>\n )}\n </div>\n </>\n ) : (\n <div className=\"cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong\">\n {description && <div>{description}</div>}\n <PlusIcon />\n </div>\n ))}\n <input\n ref={fileInputRef}\n className=\"cobalt-photo-dropzone__hidden-input\"\n type=\"file\"\n onChange={onFileInputChanged}\n accept={ACCEPTED_PHOTOS_TYPES.map((ext) => `.${ext}`).join(\",\")}\n multiple={false}\n />\n </div>\n )\n}\n\nexport default PhotoDropzone\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/PhotoDropzone/index.tsx"],"sourcesContent":["import React, {\n useState,\n DragEvent as ReactDragEvent,\n useRef,\n TouchEvent as ReactTouchEvent,\n ChangeEvent as ReactChangeEvent,\n MouseEvent as ReactMouseEvent,\n KeyboardEvent as ReactKeyboardEvent,\n ReactNode,\n useEffect,\n} from \"react\"\nimport cx from \"classnames\"\nimport {\n PlusIcon,\n BinIcon,\n LoadingIcon,\n ContextualWarningCircleFilledIcon,\n} from \"../Icon\"\nimport { validateFile } from \"../utils/validateFile\"\nimport Popover from \"../Popover\"\nimport Modal from \"../Modal\"\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\n\nconst ACCEPTED_MAX_SIZE_MB = 10\nconst ACCEPTED_PHOTOS_TYPES = [\"jpg\", \"jpeg\", \"png\", \"gif\"]\nconst ERROR_DISPLAY_TIME = 6000\nconst ACCEPTED_TYPES_LOCALE_STRING = ACCEPTED_PHOTOS_TYPES.join(\", \")\n\nexport type PhotoDropzonePropsType = {\n className?: string\n description?: string\n deleteContent: (onDelete: () => void, close: () => void) => ReactNode\n deleteContentMode?: \"popover\" | \"modal\"\n errorContent: (acceptedTypes: string, maxFileSize: number) => ReactNode\n onDropped: (file: File) => Promise<void> | void\n onPhotoDelete?: () => void\n initialImageUrl?: string\n}\n\nconst preventEventDefaults = (\n e: ReactDragEvent | ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent\n) => {\n e.preventDefault && e.preventDefault()\n e.stopPropagation && e.stopPropagation()\n}\n\nconst isEnterOrSpaceKey = (event: ReactKeyboardEvent) =>\n event.key === \"Enter\" || event.key === \" \"\n\nconst PhotoDropzone = ({\n className,\n description,\n deleteContent,\n errorContent,\n onDropped,\n onPhotoDelete,\n deleteContentMode = \"popover\",\n initialImageUrl = \"\",\n}: PhotoDropzonePropsType) => {\n const { isMobile } = useBreakpoint()\n const fileInputRef = useRef<HTMLInputElement>(null)\n const deleteButtonRef = useRef<HTMLButtonElement>(null)\n const [isDragging, setIsDragging] = useState(false)\n const [isLoading, setIsLoading] = useState(false)\n const [isErrored, setIsErrored] = useState(false)\n const [imagePreviewUrl, setImagePreviewUrl] = useState(initialImageUrl)\n const [displayDeletion, setDisplayDeletion] = useState(false)\n const [showDeletePopover, setShowDeletePopover] = useState(false)\n const [isImageLoaded, setIsImageLoaded] = useState(false)\n\n const openDeletePopover = (\n event?: ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent\n ) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(true)\n }\n const closeDeletePopover = (event?: ReactMouseEvent | ReactTouchEvent) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(false)\n }\n\n const onDropzoneMouseEnter = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (imagePreviewUrl) setDisplayDeletion(true)\n }\n\n const onDropzoneMouseLeave = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (displayDeletion && !showDeletePopover) setDisplayDeletion(false)\n }\n\n const onDropzoneClick = (event?: ReactMouseEvent | ReactTouchEvent) => {\n if (isMobile && showDeletePopover) return\n event && preventEventDefaults(event)\n if (isLoading) return\n if (isErrored) setIsErrored(false)\n if (imagePreviewUrl) {\n if (showDeletePopover) closeDeletePopover()\n return setDisplayDeletion(!displayDeletion)\n }\n fileInputRef.current?.click()\n }\n\n const onDropzoneKey = (event: ReactKeyboardEvent) => {\n if (showDeletePopover) return\n if (isEnterOrSpaceKey(event)) {\n onDropzoneClick()\n }\n }\n\n const onDeleteKey = (event: ReactKeyboardEvent) => {\n if (isEnterOrSpaceKey(event)) {\n openDeletePopover(event)\n }\n }\n\n const onDelete = () => {\n if (fileInputRef.current) fileInputRef.current.value = \"\"\n closeDeletePopover()\n setImagePreviewUrl(\"\")\n onPhotoDelete && onPhotoDelete()\n }\n\n const onDragEnter = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n if (isErrored) setIsErrored(false)\n !imagePreviewUrl && setIsDragging(true)\n }\n\n const onDragLeave = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n setIsDragging(false)\n }\n\n const processFile = async (fileToProcess: File) => {\n setIsDragging(false)\n setIsErrored(false)\n setIsLoading(true)\n\n const isValidFile = await validateFile(\n fileToProcess,\n (fileToValidate, extension) => {\n const maxFileSize = ACCEPTED_MAX_SIZE_MB * 1000 * 1000\n const acceptedFileTypes = ACCEPTED_PHOTOS_TYPES\n\n if (fileToValidate.size > maxFileSize) {\n return false\n } else if (!extension || !acceptedFileTypes.includes(extension)) {\n return false\n } else {\n return true\n }\n }\n )\n\n if (isValidFile) {\n const imageSrc = URL.createObjectURL(fileToProcess)\n setImagePreviewUrl(imageSrc)\n await onDropped(fileToProcess)\n setIsLoading(false)\n } else {\n setIsLoading(false)\n setIsErrored(true)\n setTimeout(() => {\n setIsErrored(false)\n }, ERROR_DISPLAY_TIME)\n }\n }\n\n const onFileInputChanged = (event: ReactChangeEvent<HTMLInputElement>) => {\n if (event.target.files?.length) {\n processFile(event.target.files[0])\n }\n }\n\n const onDrop = (event: ReactDragEvent<HTMLDivElement>) => {\n preventEventDefaults(event)\n if (event.dataTransfer?.files?.length && !imagePreviewUrl) {\n processFile(event.dataTransfer.files[0])\n }\n }\n\n useEffect(() => {\n setIsImageLoaded(false)\n }, [imagePreviewUrl])\n\n const onDeleteButtonClick = showDeletePopover\n ? closeDeletePopover\n : openDeletePopover\n\n return (\n <div\n tabIndex={0}\n className={cx(\"cobalt-photo-dropzone\", className, {\n \"cobalt-photo-dropzone--filled\": imagePreviewUrl,\n \"cobalt-photo-dropzone--dragging\": isDragging,\n \"cobalt-photo-dropzone--loading\": isLoading,\n \"cobalt-photo-dropzone--errored\": isErrored,\n \"cobalt-photo-dropzone--imageVisible\": isImageLoaded,\n })}\n onMouseEnter={onDropzoneMouseEnter}\n onMouseLeave={onDropzoneMouseLeave}\n onDragEnter={onDragEnter}\n onDragLeave={onDragLeave}\n // Not on click because we also use mouseEnter listener\n onMouseUp={onDropzoneClick}\n onTouchEnd={onDropzoneClick}\n onKeyUp={onDropzoneKey}\n onDrop={onDrop}\n // Need to reset those listeners to avoid default browser behaviour\n onDragStart={preventEventDefaults}\n onDragEnd={preventEventDefaults}\n onDragOver={preventEventDefaults}\n >\n {isErrored && (\n <div className=\"cobalt-photo-dropzone__description\">\n <ContextualWarningCircleFilledIcon color=\"error\" />\n {errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB)}\n </div>\n )}\n {isLoading && (\n <div className=\"cobalt-photo-dropzone__description\">\n <LoadingIcon />\n </div>\n )}\n {!isLoading &&\n !isErrored &&\n (imagePreviewUrl ? (\n <>\n <img\n className=\"cobalt-photo-dropzone__preview\"\n src={imagePreviewUrl}\n onLoad={() => {\n setIsImageLoaded(true)\n }}\n />\n <div>\n <button\n className={cx(\"cobalt-photo-dropzone__delete-button\", {\n \"cobalt-photo-dropzone__delete-button--triggered\":\n displayDeletion,\n })}\n ref={deleteButtonRef}\n // Must follow the click listeners on the dropzone,\n // in order to have the correct events bubbling\n onTouchEnd={onDeleteButtonClick}\n onMouseUp={onDeleteButtonClick}\n onKeyUp={onDeleteKey}\n >\n <BinIcon color=\"onSurface\" />\n </button>\n {deleteContentMode === \"modal\" && (\n <Modal\n isOpen={showDeletePopover}\n aria-label=\"delete\"\n bodySpacing={false}\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Modal>\n )}\n\n {deleteContentMode === \"popover\" && (\n <Popover\n targetRef={deleteButtonRef}\n isOpen={showDeletePopover}\n close={closeDeletePopover}\n placement=\"left-start\"\n distance={12}\n bodySpacing={false}\n arrow\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Popover>\n )}\n </div>\n </>\n ) : (\n <div className=\"cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong\">\n {description && <div>{description}</div>}\n <PlusIcon />\n </div>\n ))}\n <input\n ref={fileInputRef}\n className=\"cobalt-photo-dropzone__hidden-input\"\n type=\"file\"\n onChange={onFileInputChanged}\n accept={ACCEPTED_PHOTOS_TYPES.map((ext) => `.${ext}`).join(\",\")}\n multiple={false}\n />\n </div>\n )\n}\n\nexport default PhotoDropzone\n"],"names":[],"mappings":"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"}
|
package/components/Pill/index.js
CHANGED
|
@@ -3,9 +3,9 @@ import cx from 'classnames';
|
|
|
3
3
|
import { Icon } from '../Icon/index.js';
|
|
4
4
|
|
|
5
5
|
const ICON_SIZE = 20;
|
|
6
|
-
const Pill = ({ icon, color = "
|
|
6
|
+
const Pill = ({ icon, color = "onSurface", children, overlayed, className, size, }) => {
|
|
7
7
|
const iconMarkup = icon ? (React.createElement("span", { className: "cobalt-Pill__Icon" },
|
|
8
|
-
React.createElement(Icon, { source: icon, size: ICON_SIZE, color: overlayed ? "
|
|
8
|
+
React.createElement(Icon, { source: icon, size: ICON_SIZE, color: overlayed ? "surfaceFixed" : color }))) : null;
|
|
9
9
|
return (React.createElement("div", { className: cx(className, "cobalt-Pill", {
|
|
10
10
|
"cobalt-Pill--colorConnect": color === "connect",
|
|
11
11
|
"cobalt-Pill--overlayed": overlayed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Pill/index.tsx"],"sourcesContent":["import React, { Children } from \"react\"\nimport cx from \"classnames\"\nimport { Icon, IconColorsType, IconSources } from \"../Icon\"\n\nconst ICON_SIZE = 20\nexport interface PillPropsType {\n children: React.ReactNode\n icon?: IconSources\n color?: IconColorsType\n size?: \"large\"\n overlayed?: boolean\n className?: string\n}\n\nexport const Pill = ({\n icon,\n color = \"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Pill/index.tsx"],"sourcesContent":["import React, { Children } from \"react\"\nimport cx from \"classnames\"\nimport { Icon, IconColorsType, IconSources } from \"../Icon\"\n\nconst ICON_SIZE = 20\nexport interface PillPropsType {\n children: React.ReactNode\n icon?: IconSources\n color?: IconColorsType\n size?: \"large\"\n overlayed?: boolean\n className?: string\n}\n\nexport const Pill = ({\n icon,\n color = \"onSurface\",\n children,\n overlayed,\n className,\n size,\n}: PillPropsType) => {\n const iconMarkup = icon ? (\n <span className=\"cobalt-Pill__Icon\">\n <Icon\n source={icon}\n size={ICON_SIZE}\n color={overlayed ? \"surfaceFixed\" : color}\n />\n </span>\n ) : null\n\n return (\n <div\n className={cx(className, \"cobalt-Pill\", {\n \"cobalt-Pill--colorConnect\": color === \"connect\",\n \"cobalt-Pill--overlayed\": overlayed,\n \"cobalt-Pill--large\": size === \"large\",\n })}\n >\n {iconMarkup} {children}\n </div>\n )\n}\n\nexport interface PillGroupPropsType {\n children: React.ReactNode\n}\n\nexport const PillGroup = ({ children }: PillGroupPropsType) => {\n return (\n <div className=\"cobalt-PillGroup\">\n {Children.toArray(children).map((child, index) => (\n <div className=\"cobalt-PillGroup__Item\" key={index}>\n {child}\n </div>\n ))}\n </div>\n )\n}\n\nexport default Pill\n"],"names":[],"mappings":";;;;AAIA,MAAM,SAAS,GAAG,EAAE,CAAA;MAUP,IAAI,GAAG,CAAC,EACnB,IAAI,EACJ,KAAK,GAAG,WAAW,EACnB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,IAAI,GACU,KAAI;IAClB,MAAM,UAAU,GAAG,IAAI,IACrB,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,mBAAmB,EAAA;AACjC,QAAA,KAAA,CAAA,aAAA,CAAC,IAAI,EAAA,EACH,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,SAAS,GAAG,cAAc,GAAG,KAAK,EAAA,CACzC,CACG,IACL,IAAI,CAAA;IAER,QACE,6BACE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE;YACtC,2BAA2B,EAAE,KAAK,KAAK,SAAS;AAChD,YAAA,wBAAwB,EAAE,SAAS;YACnC,oBAAoB,EAAE,IAAI,KAAK,OAAO;SACvC,CAAC,EAAA;QAED,UAAU;;QAAG,QAAQ,CAClB,EACP;AACH,EAAC;MAMY,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAsB,KAAI;AAC5D,IAAA,QACE,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,kBAAkB,IAC9B,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,MAC3C,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,wBAAwB,EAAC,GAAG,EAAE,KAAK,IAC/C,KAAK,CACF,CACP,CAAC,CACE,EACP;AACH;;;;"}
|
|
@@ -4,8 +4,8 @@ import cx from 'classnames';
|
|
|
4
4
|
import '../Icon/index.js';
|
|
5
5
|
import StarIcon from '../Icon/__generated__/StarIcon.js';
|
|
6
6
|
|
|
7
|
-
const defaultRatingIcon = React.createElement(StarIcon, { color: "
|
|
8
|
-
const itemEmptyColor = "
|
|
7
|
+
const defaultRatingIcon = React.createElement(StarIcon, { color: "primary" });
|
|
8
|
+
const itemEmptyColor = "onSurfaceDisabled";
|
|
9
9
|
function roundHalf(num) {
|
|
10
10
|
const temp = num * 2;
|
|
11
11
|
return temp % 1 === 0.5 ? Math.floor(temp) / 2 : Math.round(temp) / 2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RatingIcons.js","sources":["../../../src/components/Rating/RatingIcons.tsx"],"sourcesContent":["import React, { useState, useRef, useCallback } from \"react\"\nimport { nanoid } from \"nanoid\"\nimport cx from \"classnames\"\nimport { IconProps, StarIcon } from \"../Icon\"\n\nexport type RatingIconsPropsType = {\n className?: string\n max?: 5 | 10\n value: number\n size?: IconProps[\"size\"] | 48\n editable?: boolean\n disabled?: boolean\n onChange?: (newValue: number) => void\n icon?: JSX.Element | JSX.Element[]\n}\n\nexport type RatingIconPropsType = {\n icon: JSX.Element\n status?: \"full\" | \"half\" | \"empty\"\n size?: RatingIconsPropsType[\"size\"]\n}\n\nexport const defaultRatingIcon = <StarIcon color=\"
|
|
1
|
+
{"version":3,"file":"RatingIcons.js","sources":["../../../src/components/Rating/RatingIcons.tsx"],"sourcesContent":["import React, { useState, useRef, useCallback } from \"react\"\nimport { nanoid } from \"nanoid\"\nimport cx from \"classnames\"\nimport { IconProps, StarIcon } from \"../Icon\"\n\nexport type RatingIconsPropsType = {\n className?: string\n max?: 5 | 10\n value: number\n size?: IconProps[\"size\"] | 48\n editable?: boolean\n disabled?: boolean\n onChange?: (newValue: number) => void\n icon?: JSX.Element | JSX.Element[]\n}\n\nexport type RatingIconPropsType = {\n icon: JSX.Element\n status?: \"full\" | \"half\" | \"empty\"\n size?: RatingIconsPropsType[\"size\"]\n}\n\nexport const defaultRatingIcon = <StarIcon color=\"primary\" />\nconst itemEmptyColor: IconProps[\"color\"] = \"onSurfaceDisabled\"\n\nexport function roundHalf(num: number) {\n const temp = num * 2\n return temp % 1 === 0.5 ? Math.floor(temp) / 2 : Math.round(temp) / 2\n}\n\nexport function computeItemStatus(\n ratingValue: number,\n itemValue: number,\n icon: RatingIconsPropsType[\"icon\"]\n): RatingIconPropsType[\"status\"] {\n let itemStatus: RatingIconPropsType[\"status\"] = \"empty\"\n if (!Array.isArray(icon)) {\n // gauge\n const isHalfItem = itemValue > ratingValue && ratingValue > itemValue - 1\n if (isHalfItem) {\n itemStatus = \"half\"\n } else if (itemValue <= ratingValue) {\n itemStatus = \"full\"\n }\n } else if (itemValue === ratingValue) {\n // radio\n itemStatus = \"full\"\n }\n\n return itemStatus\n}\n\nexport const RatingIcon = ({\n icon,\n status = \"full\",\n size = 24,\n}: RatingIconPropsType) => {\n if (status === \"half\") {\n return (\n <>\n {React.cloneElement(icon, {\n color: itemEmptyColor,\n size,\n })}\n <div className=\"cobalt-rating-icons__icon-half-container\">\n {React.cloneElement(icon, { size })}\n </div>\n </>\n )\n } else {\n const iconColor: IconProps[\"color\"] =\n status === \"empty\" ? itemEmptyColor : icon.props.color\n\n return React.cloneElement(icon, {\n color: iconColor,\n size,\n })\n }\n}\n\nexport const RatingIcons = ({\n className,\n max = 5,\n value,\n size = 24,\n editable = false,\n onChange,\n icon = defaultRatingIcon,\n}: RatingIconsPropsType) => {\n const name = useRef(nanoid())\n\n const items = useRef(\n Array.from(new Array(Array.isArray(icon) ? icon.length : max))\n )\n\n const [ratingValue, setRatingValue] = useState(() =>\n editable ? Math.floor(value) : roundHalf(value)\n )\n const [selectedIndex, setSelectedIndex] = useState(-1) // used to enforce selection effect (icon scale reset)\n\n const resetSelection = useCallback(() => {\n setSelectedIndex(-1)\n }, [])\n\n const itemSize = size === 48 ? 16 : size\n\n // input element is used for a11y purpose ( focus feedback and keyboard selection )\n return (\n <div\n className={cx(\"cobalt-rating-icons\", className, {\n \"cobalt-rating-icons--icon-size-48\": size === 48,\n })}\n onPointerLeave={() => {\n if (editable) {\n ;(document.activeElement as HTMLInputElement).blur()\n }\n }}\n >\n {items.current.map((_value, idx) => {\n const itemValue = idx + 1\n\n const itemStatus = computeItemStatus(ratingValue, itemValue, icon)\n\n return (\n <label\n className={cx(\"cobalt-rating-icons__icon-wrapper\", {\n \"cobalt-rating-icons__icon-wrapper--selected\":\n selectedIndex === idx,\n })}\n key={idx}\n onClick={() => {\n if (editable) {\n setRatingValue(itemValue)\n setSelectedIndex(idx)\n }\n }}\n onMouseEnter={(e) => {\n if (editable) {\n ;(e.target as HTMLElement).focus()\n\n resetSelection()\n }\n }}\n >\n <input\n tabIndex={\n editable &&\n (ratingValue === itemValue ||\n (ratingValue === 0 && itemValue === 1))\n ? 0\n : -1\n }\n name={name.current}\n type=\"radio\"\n value={itemValue}\n onChange={() => {\n onChange && onChange(itemValue)\n }}\n disabled={!editable}\n />\n {\n <RatingIcon\n icon={Array.isArray(icon) ? icon[idx] : icon}\n status={itemStatus}\n size={itemSize}\n />\n }\n </label>\n )\n })}\n </div>\n )\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,12 @@ import { Fixed } from '../Layout/Surfaces/index.js';
|
|
|
8
8
|
import CloseIcon from '../Icon/__generated__/CloseIcon.js';
|
|
9
9
|
|
|
10
10
|
const SidepanelFooter = ({ children, className }) => {
|
|
11
|
-
return (React.createElement("div", { className: cx("c-p-sm c-border-t c-border-
|
|
11
|
+
return (React.createElement("div", { className: cx("c-p-sm c-border-t c-border-outline", className) }, children));
|
|
12
12
|
};
|
|
13
13
|
// Memoized component to not render content when the panel is collapsing
|
|
14
14
|
function _SidepanelContent({ title, close, children }) {
|
|
15
15
|
return (React.createElement(React.Fragment, null,
|
|
16
|
-
title && (React.createElement("div", { className: "c-flex c-gap-sm c-items-center c-px-sm c-py-md c-border-b c-border-
|
|
16
|
+
title && (React.createElement("div", { className: "c-flex c-gap-sm c-items-center c-px-sm c-py-md c-border-b c-border-outline" },
|
|
17
17
|
React.createElement("div", { className: "c-text-title-md c-flex-1" }, title),
|
|
18
18
|
close && (React.createElement("div", { className: "c-w-md c-cursor-pointer", onClick: close },
|
|
19
19
|
React.createElement(CloseIcon, { size: 24 }))))),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/Sidepanel/index.tsx"],"sourcesContent":["import React, { ComponentProps, useEffect, useState } from \"react\"\nimport cx from \"classnames\"\nimport Modal from \"../Modal\"\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\nimport { CloseIcon } from \"../Icon\"\nimport ReactDOM from \"react-dom\"\nimport { Fixed } from \"../Layout/Surfaces\"\n\ntype SidepanelFooterPropsType = React.PropsWithChildren<{\n className?: string\n}>\n\nconst SidepanelFooter = ({ children, className }: SidepanelFooterPropsType) => {\n return (\n <div className={cx(\"c-p-sm c-border-t c-border-
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/Sidepanel/index.tsx"],"sourcesContent":["import React, { ComponentProps, useEffect, useState } from \"react\"\nimport cx from \"classnames\"\nimport Modal from \"../Modal\"\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\nimport { CloseIcon } from \"../Icon\"\nimport ReactDOM from \"react-dom\"\nimport { Fixed } from \"../Layout/Surfaces\"\n\ntype SidepanelFooterPropsType = React.PropsWithChildren<{\n className?: string\n}>\n\nconst SidepanelFooter = ({ children, className }: SidepanelFooterPropsType) => {\n return (\n <div className={cx(\"c-p-sm c-border-t c-border-outline\", className)}>\n {children}\n </div>\n )\n}\n\ntype SidepanelPropsType = React.PropsWithChildren<{\n isOpen: boolean\n title?: string\n close?: () => void\n width?: ComponentProps<typeof Fixed>[\"width\"]\n withDesktopOverlay?: boolean\n}>\n\n// Memoized component to not render content when the panel is collapsing\nfunction _SidepanelContent({ title, close, children }: SidepanelPropsType) {\n return (\n <>\n {title && (\n <div className=\"c-flex c-gap-sm c-items-center c-px-sm c-py-md c-border-b c-border-outline\">\n <div className=\"c-text-title-md c-flex-1\">{title}</div>\n {close && (\n <div className=\"c-w-md c-cursor-pointer\" onClick={close}>\n <CloseIcon size={24} />\n </div>\n )}\n </div>\n )}\n {children}\n </>\n )\n}\n\nfunction areSidepanelContentEqual(\n _prevProps: SidepanelPropsType,\n nextProps: SidepanelPropsType\n) {\n return !nextProps.isOpen\n}\n\nconst SidepanelContent = React.memo(_SidepanelContent, areSidepanelContentEqual)\nSidepanelContent.displayName = \"SidepanelContent\"\n\n// Only for the API, render nothing\nconst SidepanelFooterAPI = (_props: SidepanelFooterPropsType) => null\n\nconst isSidepanelFooterAPIComponent = (\n component: React.ReactNode\n): component is React.ReactElement<SidepanelFooterPropsType> =>\n React.isValidElement(component) && component.type === SidepanelFooterAPI\n\nconst _Sidepanel = ({\n isOpen,\n title,\n close,\n withDesktopOverlay,\n width = 420,\n children,\n}: SidepanelPropsType) => {\n const { isMobile } = useBreakpoint()\n\n // To display box-shadow when visible. We can't rely on isOpen because it triggers the collapse animation and so the box shadow would not be set during the transition\n const [isPanelVisible, setIsPanelVisible] = useState(false)\n\n useEffect(() => {\n isOpen && setIsPanelVisible(true)\n }, [isOpen])\n\n const sidepanelFooter = React.Children.toArray(children).find((c) =>\n isSidepanelFooterAPIComponent(c)\n )\n\n let footer: React.ReactNode = null\n if (React.isValidElement(sidepanelFooter)) {\n footer = isMobile ? (\n <Modal.Footer {...sidepanelFooter.props}></Modal.Footer>\n ) : (\n <SidepanelFooter {...sidepanelFooter.props} />\n )\n }\n\n return isMobile ? (\n <Modal\n aria-label={\"Sidepanel\"}\n isOpen={isOpen}\n bodySpacing={false}\n close={close}\n title={title}\n >\n {children}\n {footer}\n </Modal>\n ) : (\n ReactDOM.createPortal(\n <>\n <div\n className={cx(\"cobalt-sidepanel\", {\n \"cobalt-sidepanel--show\": isOpen,\n \"cobalt-sidepanel--visible\": isPanelVisible,\n })}\n onTransitionEnd={() => {\n !isOpen && setIsPanelVisible(false)\n }}\n >\n <Fixed width={width} isFullHeight>\n <SidepanelContent isOpen={isOpen} title={title} close={close}>\n {children}\n {footer}\n </SidepanelContent>\n </Fixed>\n </div>\n {withDesktopOverlay && <div className=\"cobalt-sidepanel-overlay\"></div>}\n </>,\n document.body\n )\n )\n}\n\n_Sidepanel.displayName = \"Sidepanel\"\n\nexport const Sidepanel = Object.assign(_Sidepanel, {\n Footer: SidepanelFooterAPI,\n})\n"],"names":[],"mappings":";;;;;;;;;AAYA,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAA4B,KAAI;AAC5E,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,EAAE,CAAC,oCAAoC,EAAE,SAAS,CAAC,EAAA,EAChE,QAAQ,CACL,EACP;AACH,CAAC,CAAA;AAUD;AACA,SAAS,iBAAiB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAsB,EAAA;AACvE,IAAA,QACE,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA;AACG,QAAA,KAAK,KACJ,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,4EAA4E,EAAA;AACzF,YAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,0BAA0B,EAAA,EAAE,KAAK,CAAO;YACtD,KAAK,KACJ,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAC,yBAAyB,EAAC,OAAO,EAAE,KAAK,EAAA;gBACrD,KAAC,CAAA,aAAA,CAAA,SAAS,IAAC,IAAI,EAAE,EAAE,EAAI,CAAA,CACnB,CACP,CACG,CACP;QACA,QAAQ,CACR,EACJ;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,UAA8B,EAC9B,SAA6B,EAAA;AAE7B,IAAA,OAAO,CAAC,SAAS,CAAC,MAAM,CAAA;AAC1B,CAAC;AAED,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,wBAAwB,CAAC,CAAA;AAChF,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAA;AAEjD;AACA,MAAM,kBAAkB,GAAG,CAAC,MAAgC,KAAK,IAAI,CAAA;AAErE,MAAM,6BAA6B,GAAG,CACpC,SAA0B,KAE1B,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,IAAI,KAAK,kBAAkB,CAAA;AAE1E,MAAM,UAAU,GAAG,CAAC,EAClB,MAAM,EACN,KAAK,EACL,KAAK,EACL,kBAAkB,EAClB,KAAK,GAAG,GAAG,EACX,QAAQ,GACW,KAAI;AACvB,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,aAAa,EAAE,CAAA;;IAGpC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE3D,SAAS,CAAC,MAAK;AACb,QAAA,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAA;AACnC,KAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAC9D,6BAA6B,CAAC,CAAC,CAAC,CACjC,CAAA;IAED,IAAI,MAAM,GAAoB,IAAI,CAAA;AAClC,IAAA,IAAI,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE;AACzC,QAAA,MAAM,GAAG,QAAQ,IACf,KAAC,CAAA,aAAA,CAAA,KAAK,CAAC,MAAM,EAAK,EAAA,GAAA,eAAe,CAAC,KAAK,EAAiB,CAAA,KAExD,KAAC,CAAA,aAAA,CAAA,eAAe,EAAK,EAAA,GAAA,eAAe,CAAC,KAAK,EAAI,CAAA,CAC/C,CAAA;KACF;IAED,OAAO,QAAQ,IACb,oBAAC,KAAK,EAAA,EAAA,YAAA,EACQ,WAAW,EACvB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,KAAK,EAClB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EAAA;QAEX,QAAQ;QACR,MAAM,CACD,KAER,QAAQ,CAAC,YAAY,CACnB,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA;AACE,QAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE;AAChC,gBAAA,wBAAwB,EAAE,MAAM;AAChC,gBAAA,2BAA2B,EAAE,cAAc;AAC5C,aAAA,CAAC,EACF,eAAe,EAAE,MAAK;AACpB,gBAAA,CAAC,MAAM,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAA;aACpC,EAAA;AAED,YAAA,KAAA,CAAA,aAAA,CAAC,KAAK,EAAC,EAAA,KAAK,EAAE,KAAK,EAAE,YAAY,EAAA,IAAA,EAAA;AAC/B,gBAAA,KAAA,CAAA,aAAA,CAAC,gBAAgB,EAAA,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAA;oBACzD,QAAQ;oBACR,MAAM,CACU,CACb,CACJ;AACL,QAAA,kBAAkB,IAAI,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,0BAA0B,EAAA,CAAO,CACtE,EACH,QAAQ,CAAC,IAAI,CACd,CACF,CAAA;AACH,CAAC,CAAA;AAED,UAAU,CAAC,WAAW,GAAG,WAAW,CAAA;MAEvB,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;AACjD,IAAA,MAAM,EAAE,kBAAkB;AAC3B,CAAA;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function camelize(s) {
|
|
2
|
+
return s
|
|
3
|
+
.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function (match, index) {
|
|
4
|
+
if (+match === 0)
|
|
5
|
+
return ""; // or if (/\s+/.test(match)) for white spaces
|
|
6
|
+
return index === 0 ? match.toLowerCase() : match.toUpperCase();
|
|
7
|
+
})
|
|
8
|
+
.replace(/-/g, "")
|
|
9
|
+
.replace(/_/g, "");
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { camelize as default };
|
|
13
|
+
//# sourceMappingURL=camelize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"camelize.js","sources":["../../../src/components/utils/camelize.ts"],"sourcesContent":["function camelize(s: string) {\n return s\n .replace(/(?:^\\w|[A-Z]|\\b\\w|\\s+)/g, function (match, index) {\n if (+match === 0) return \"\" // or if (/\\s+/.test(match)) for white spaces\n return index === 0 ? match.toLowerCase() : match.toUpperCase()\n })\n .replace(/-/g, \"\")\n .replace(/_/g, \"\")\n}\n\nexport default camelize\n"],"names":[],"mappings":"AAAA,SAAS,QAAQ,CAAC,CAAS,EAAA;AACzB,IAAA,OAAO,CAAC;AACL,SAAA,OAAO,CAAC,yBAAyB,EAAE,UAAU,KAAK,EAAE,KAAK,EAAA;QACxD,IAAI,CAAC,KAAK,KAAK,CAAC;YAAE,OAAO,EAAE,CAAA;AAC3B,QAAA,OAAO,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;AAChE,KAAC,CAAC;AACD,SAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AACjB,SAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;AACtB;;;;"}
|