@via-profit/ui-kit 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Accordion/AccordionContainer.js +11 -11
- package/Accordion/AccordionContent.js +16 -7
- package/Accordion/AccordionHeader.d.ts +22 -0
- package/Accordion/AccordionHeader.js +35 -18
- package/Accordion/Chevron.js +3 -3
- package/Accordion/index.d.ts +12 -8
- package/Accordion/index.js +21 -6
- package/Autocomplete/AutocompleteContainer.d.ts +5 -9
- package/Autocomplete/AutocompleteContainer.js +91 -35
- package/Autocomplete/AutocompleteTagsInput.d.ts +15 -0
- package/Autocomplete/AutocompleteTagsInput.js +65 -0
- package/Autocomplete/context.d.ts +1 -0
- package/Autocomplete/context.js +5 -5
- package/Autocomplete/index.js +1 -0
- package/Avatar/AvatarBase.js +1 -1
- package/Avatar/AvatarContainer.js +6 -11
- package/Avatar/AvatarPicture.d.ts +9 -1
- package/Avatar/AvatarPicture.js +4 -3
- package/Avatar/index.js +10 -10
- package/Badge/BadgeBase.d.ts +9 -0
- package/Badge/BadgeBase.js +21 -3
- package/Badge/BadgeContainer.js +2 -1
- package/Badge/BadgeDeleteButton.d.ts +1 -1
- package/Badge/BadgeOutlined.d.ts +1 -1
- package/Badge/BadgeOutlined.js +5 -80
- package/Badge/BadgeStandard.d.ts +1 -1
- package/Badge/BadgeStandard.js +5 -91
- package/Badge/BadgeStyled.d.ts +5 -0
- package/Badge/BadgeStyled.js +125 -0
- package/Badge/index.d.ts +2 -2
- package/Badge/index.js +3 -20
- package/Button/ButtonBase.js +8 -4
- package/Button/ButtonContainer.js +2 -0
- package/Button/ButtonIconWrapper.d.ts +1 -1
- package/Button/ButtonOutlined.d.ts +1 -1
- package/Button/ButtonOutlined.js +5 -80
- package/Button/ButtonPlain.d.ts +1 -1
- package/Button/ButtonPlain.js +5 -85
- package/Button/ButtonStandard.d.ts +1 -1
- package/Button/ButtonStandard.js +5 -97
- package/Button/ButtonStyled.d.ts +10 -0
- package/Button/ButtonStyled.js +205 -0
- package/Button/index.d.ts +5 -5
- package/Button/index.js +3 -24
- package/ButtonGroup/ButtonGroupContext.d.ts +21 -0
- package/ButtonGroup/ButtonGroupContext.js +11 -0
- package/ButtonGroup/index.d.ts +76 -0
- package/ButtonGroup/index.js +132 -0
- package/CHANGELOG.md +122 -0
- package/Calendar/CalendarCell.js +11 -4
- package/Calendar/CalendarComponent.d.ts +15 -4
- package/Calendar/CalendarComponent.js +150 -55
- package/Calendar/CalendarDayBadge.d.ts +1 -1
- package/Calendar/CalendarMonthCell.js +1 -11
- package/Calendar/CalendarWeekDayLabel.js +3 -1
- package/Calendar/CalendarWeekDaysBar.js +6 -1
- package/Calendar/CalendarYearCell.js +1 -16
- package/Calendar/CalendarYearsSelector.d.ts +0 -1
- package/Calendar/CalendarYearsSelector.js +33 -35
- package/Calendar/use-calendar.d.ts +1 -1
- package/Checkbox/CheckboxAsterisk.d.ts +13 -0
- package/{Autocomplete2/Autocomplete2TextField.js → Checkbox/CheckboxAsterisk.js} +24 -10
- package/Checkbox/CheckboxBox.d.ts +22 -0
- package/Checkbox/CheckboxBox.js +88 -0
- package/Checkbox/CheckboxContainer.d.ts +27 -0
- package/Checkbox/CheckboxContainer.js +38 -0
- package/Checkbox/CheckboxErrorText.d.ts +6 -0
- package/Checkbox/CheckboxErrorText.js +76 -0
- package/Checkbox/CheckboxIcon.d.ts +10 -0
- package/Checkbox/CheckboxIcon.js +57 -0
- package/Checkbox/CheckboxTextWrapper.d.ts +4 -0
- package/Checkbox/CheckboxTextWrapper.js +29 -0
- package/Checkbox/CheckboxWrapper.d.ts +4 -0
- package/Checkbox/CheckboxWrapper.js +29 -0
- package/Checkbox/index.d.ts +144 -0
- package/Checkbox/index.js +71 -0
- package/Checkbox/useCheckboxColor.d.ts +6 -0
- package/Checkbox/useCheckboxColor.js +33 -0
- package/ClickOutside/index.d.ts +6 -0
- package/ClickOutside/index.js +7 -2
- package/Color/Color.d.ts +4 -4
- package/Color/Color.js +9 -5
- package/Color/ColorGenerator.d.ts +5 -1
- package/CountryFlags/AC.js +5 -1
- package/CountryFlags/AD.js +5 -1
- package/CountryFlags/AE.js +5 -1
- package/CountryFlags/AF.js +5 -1
- package/CountryFlags/AG.js +5 -1
- package/CountryFlags/AI.js +5 -1
- package/CountryFlags/AL.js +5 -1
- package/CountryFlags/AM.js +5 -1
- package/CountryFlags/AO.js +5 -1
- package/CountryFlags/AQ.js +5 -1
- package/CountryFlags/AR.js +5 -1
- package/CountryFlags/AS.js +5 -1
- package/CountryFlags/AT.js +5 -1
- package/CountryFlags/AU.js +5 -1
- package/CountryFlags/AW.js +5 -1
- package/CountryFlags/AX.js +5 -1
- package/CountryFlags/AZ.js +5 -1
- package/CountryFlags/BA.js +5 -1
- package/CountryFlags/BB.js +5 -1
- package/CountryFlags/BD.js +5 -1
- package/CountryFlags/BE.js +5 -1
- package/CountryFlags/BF.js +5 -1
- package/CountryFlags/BG.js +5 -1
- package/CountryFlags/BH.js +5 -1
- package/CountryFlags/BI.js +5 -1
- package/CountryFlags/BJ.js +5 -1
- package/CountryFlags/BL.js +5 -1
- package/CountryFlags/BM.js +5 -1
- package/CountryFlags/BN.js +5 -1
- package/CountryFlags/BO.js +5 -1
- package/CountryFlags/BQ.js +5 -1
- package/CountryFlags/BR.js +5 -1
- package/CountryFlags/BS.js +5 -1
- package/CountryFlags/BT.js +5 -1
- package/CountryFlags/BV.js +5 -1
- package/CountryFlags/BW.js +5 -1
- package/CountryFlags/BY.js +5 -1
- package/CountryFlags/BZ.js +5 -1
- package/CountryFlags/CA.js +5 -1
- package/CountryFlags/CC.js +5 -1
- package/CountryFlags/CD.js +5 -1
- package/CountryFlags/CF.js +5 -1
- package/CountryFlags/CG.js +5 -1
- package/CountryFlags/CH.js +5 -1
- package/CountryFlags/CI.js +5 -1
- package/CountryFlags/CK.js +5 -1
- package/CountryFlags/CL.js +5 -1
- package/CountryFlags/CM.js +5 -1
- package/CountryFlags/CN.js +5 -1
- package/CountryFlags/CO.js +5 -1
- package/CountryFlags/CR.js +5 -1
- package/CountryFlags/CU.js +5 -1
- package/CountryFlags/CV.js +5 -1
- package/CountryFlags/CW.js +5 -1
- package/CountryFlags/CX.js +5 -1
- package/CountryFlags/CY.js +5 -1
- package/CountryFlags/CZ.js +5 -1
- package/CountryFlags/DE.js +5 -1
- package/CountryFlags/DJ.js +5 -1
- package/CountryFlags/DK.js +5 -1
- package/CountryFlags/DM.js +5 -1
- package/CountryFlags/DO.js +5 -1
- package/CountryFlags/DZ.js +5 -1
- package/CountryFlags/EC.js +5 -1
- package/CountryFlags/EE.js +5 -1
- package/CountryFlags/EG.js +5 -1
- package/CountryFlags/EH.js +5 -1
- package/CountryFlags/ER.js +5 -1
- package/CountryFlags/ES.js +5 -1
- package/CountryFlags/ET.js +5 -1
- package/CountryFlags/EU.js +5 -1
- package/CountryFlags/FI.js +5 -1
- package/CountryFlags/FJ.js +5 -1
- package/CountryFlags/FK.js +5 -1
- package/CountryFlags/FM.js +5 -1
- package/CountryFlags/FO.js +5 -1
- package/CountryFlags/FR.js +5 -1
- package/CountryFlags/GA.js +5 -1
- package/CountryFlags/GB.js +5 -1
- package/CountryFlags/GD.js +5 -1
- package/CountryFlags/GE.js +5 -1
- package/CountryFlags/GEAB.js +5 -1
- package/CountryFlags/GEOS.js +5 -1
- package/CountryFlags/GF.js +5 -1
- package/CountryFlags/GG.js +5 -1
- package/CountryFlags/GH.js +5 -1
- package/CountryFlags/GI.js +5 -1
- package/CountryFlags/GL.js +5 -1
- package/CountryFlags/GM.js +5 -1
- package/CountryFlags/GN.js +5 -1
- package/CountryFlags/GP.js +5 -1
- package/CountryFlags/GQ.js +5 -1
- package/CountryFlags/GR.js +5 -1
- package/CountryFlags/GS.js +5 -1
- package/CountryFlags/GT.js +5 -1
- package/CountryFlags/GU.js +5 -1
- package/CountryFlags/GW.js +5 -1
- package/CountryFlags/GY.js +5 -1
- package/CountryFlags/HK.js +5 -1
- package/CountryFlags/HM.js +5 -1
- package/CountryFlags/HN.js +5 -1
- package/CountryFlags/HR.js +5 -1
- package/CountryFlags/HT.js +5 -1
- package/CountryFlags/HU.js +5 -1
- package/CountryFlags/IC.js +5 -1
- package/CountryFlags/ID.js +5 -1
- package/CountryFlags/IE.js +5 -1
- package/CountryFlags/IL.js +5 -1
- package/CountryFlags/IM.js +5 -1
- package/CountryFlags/IN.js +5 -1
- package/CountryFlags/IO.js +5 -1
- package/CountryFlags/IQ.js +5 -1
- package/CountryFlags/IR.js +5 -1
- package/CountryFlags/IS.js +5 -1
- package/CountryFlags/IT.js +5 -1
- package/CountryFlags/JE.js +5 -1
- package/CountryFlags/JM.js +5 -1
- package/CountryFlags/JO.js +5 -1
- package/CountryFlags/JP.js +5 -1
- package/CountryFlags/KE.js +5 -1
- package/CountryFlags/KG.js +5 -1
- package/CountryFlags/KH.js +5 -1
- package/CountryFlags/KI.js +5 -1
- package/CountryFlags/KM.js +5 -1
- package/CountryFlags/KN.js +5 -1
- package/CountryFlags/KP.js +5 -1
- package/CountryFlags/KR.js +5 -1
- package/CountryFlags/KW.js +5 -1
- package/CountryFlags/KY.js +5 -1
- package/CountryFlags/KZ.js +5 -1
- package/CountryFlags/LA.js +5 -1
- package/CountryFlags/LB.js +5 -1
- package/CountryFlags/LC.js +5 -1
- package/CountryFlags/LI.js +5 -1
- package/CountryFlags/LK.js +5 -1
- package/CountryFlags/LR.js +5 -1
- package/CountryFlags/LS.js +5 -1
- package/CountryFlags/LT.js +5 -1
- package/CountryFlags/LU.js +5 -1
- package/CountryFlags/LV.js +5 -1
- package/CountryFlags/LY.js +5 -1
- package/CountryFlags/MA.js +5 -1
- package/CountryFlags/MC.js +5 -1
- package/CountryFlags/MD.js +5 -1
- package/CountryFlags/ME.js +5 -1
- package/CountryFlags/MF.js +5 -1
- package/CountryFlags/MG.js +5 -1
- package/CountryFlags/MH.js +5 -1
- package/CountryFlags/MK.js +5 -1
- package/CountryFlags/ML.js +5 -1
- package/CountryFlags/MM.js +5 -1
- package/CountryFlags/MN.js +5 -1
- package/CountryFlags/MO.js +5 -1
- package/CountryFlags/MP.js +5 -1
- package/CountryFlags/MQ.js +5 -1
- package/CountryFlags/MR.js +5 -1
- package/CountryFlags/MS.js +5 -1
- package/CountryFlags/MT.js +5 -1
- package/CountryFlags/MU.js +5 -1
- package/CountryFlags/MV.js +5 -1
- package/CountryFlags/MW.js +5 -1
- package/CountryFlags/MX.js +5 -1
- package/CountryFlags/MY.js +5 -1
- package/CountryFlags/MZ.js +5 -1
- package/CountryFlags/NA.js +5 -1
- package/CountryFlags/NC.js +5 -1
- package/CountryFlags/NE.js +5 -1
- package/CountryFlags/NF.js +5 -1
- package/CountryFlags/NG.js +5 -1
- package/CountryFlags/NI.js +5 -1
- package/CountryFlags/NL.js +5 -1
- package/CountryFlags/NO.js +5 -1
- package/CountryFlags/NP.js +5 -1
- package/CountryFlags/NR.js +5 -1
- package/CountryFlags/NU.js +5 -1
- package/CountryFlags/NZ.js +5 -1
- package/CountryFlags/OM.js +5 -1
- package/CountryFlags/PA.js +5 -1
- package/CountryFlags/PE.js +5 -1
- package/CountryFlags/PF.js +5 -1
- package/CountryFlags/PG.js +5 -1
- package/CountryFlags/PH.js +5 -1
- package/CountryFlags/PK.js +5 -1
- package/CountryFlags/PL.js +5 -1
- package/CountryFlags/PM.js +5 -1
- package/CountryFlags/PN.js +5 -1
- package/CountryFlags/PR.js +5 -1
- package/CountryFlags/PS.js +5 -1
- package/CountryFlags/PT.js +5 -1
- package/CountryFlags/PW.js +5 -1
- package/CountryFlags/PY.js +5 -1
- package/CountryFlags/QA.js +5 -1
- package/CountryFlags/RE.js +5 -1
- package/CountryFlags/RO.js +5 -1
- package/CountryFlags/RS.js +5 -1
- package/CountryFlags/RU.js +5 -1
- package/CountryFlags/RW.js +5 -1
- package/CountryFlags/SA.js +5 -1
- package/CountryFlags/SB.js +5 -1
- package/CountryFlags/SC.js +5 -1
- package/CountryFlags/SD.js +5 -1
- package/CountryFlags/SE.js +5 -1
- package/CountryFlags/SG.js +5 -1
- package/CountryFlags/SH.js +5 -1
- package/CountryFlags/SI.js +5 -1
- package/CountryFlags/SJ.js +5 -1
- package/CountryFlags/SK.js +5 -1
- package/CountryFlags/SL.js +5 -1
- package/CountryFlags/SM.js +5 -1
- package/CountryFlags/SN.js +5 -1
- package/CountryFlags/SO.js +5 -1
- package/CountryFlags/SR.js +5 -1
- package/CountryFlags/SS.js +5 -1
- package/CountryFlags/ST.js +5 -1
- package/CountryFlags/SV.js +5 -1
- package/CountryFlags/SX.js +5 -1
- package/CountryFlags/SY.js +5 -1
- package/CountryFlags/SZ.js +5 -1
- package/CountryFlags/TA.js +5 -1
- package/CountryFlags/TC.js +5 -1
- package/CountryFlags/TD.js +5 -1
- package/CountryFlags/TF.js +5 -1
- package/CountryFlags/TG.js +5 -1
- package/CountryFlags/TH.js +5 -1
- package/CountryFlags/TJ.js +5 -1
- package/CountryFlags/TK.js +5 -1
- package/CountryFlags/TL.js +5 -1
- package/CountryFlags/TM.js +5 -1
- package/CountryFlags/TN.js +5 -1
- package/CountryFlags/TO.js +5 -1
- package/CountryFlags/TR.js +5 -1
- package/CountryFlags/TT.js +5 -1
- package/CountryFlags/TV.js +5 -1
- package/CountryFlags/TW.js +5 -1
- package/CountryFlags/TZ.js +5 -1
- package/CountryFlags/UA.js +5 -1
- package/CountryFlags/UG.js +5 -1
- package/CountryFlags/UM.js +5 -1
- package/CountryFlags/US.js +5 -1
- package/CountryFlags/UY.js +5 -1
- package/CountryFlags/UZ.js +5 -1
- package/CountryFlags/Uknown.d.ts +7 -3
- package/CountryFlags/Uknown.js +9 -31
- package/CountryFlags/Unknown.d.ts +3 -0
- package/CountryFlags/Unknown.js +42 -0
- package/CountryFlags/VA.js +5 -1
- package/CountryFlags/VC.js +5 -1
- package/CountryFlags/VE.js +5 -1
- package/CountryFlags/VG.js +5 -1
- package/CountryFlags/VI.js +5 -1
- package/CountryFlags/VN.js +5 -1
- package/CountryFlags/VU.js +5 -1
- package/CountryFlags/WF.js +5 -1
- package/CountryFlags/WS.js +5 -1
- package/CountryFlags/XK.js +5 -1
- package/CountryFlags/YE.js +5 -1
- package/CountryFlags/YT.js +5 -1
- package/CountryFlags/ZA.js +5 -1
- package/CountryFlags/ZM.js +5 -1
- package/CountryFlags/ZW.js +5 -1
- package/CountryFlags/index.d.ts +2 -1
- package/CountryFlags/index.js +3 -1
- package/CountryFlags/isLabelled.d.ts +6 -0
- package/CountryFlags/isLabelled.js +7 -0
- package/DatePicker/index.d.ts +19 -6
- package/DatePicker/index.js +59 -12
- package/Grid/index.d.ts +60 -0
- package/Grid/index.js +43 -0
- package/Highlighted/index.d.ts +1 -1
- package/Highlighted/index.js +14 -10
- package/LoadingIndicator/LoadingOverlay.d.ts +11 -0
- package/LoadingIndicator/LoadingOverlay.js +63 -0
- package/LoadingIndicator/Spinner.d.ts +34 -5
- package/LoadingIndicator/Spinner.js +48 -37
- package/LoadingIndicator/SpinnerCircle.d.ts +14 -0
- package/LoadingIndicator/SpinnerCircle.js +34 -0
- package/LoadingIndicator/index.d.ts +8 -3
- package/LoadingIndicator/index.js +9 -15
- package/MaskedField/index.d.ts +3 -2
- package/MaskedField/index.js +7 -2
- package/MaskedField/templates.js +2 -0
- package/MaskedField/useMasked.js +9 -6
- package/Menu/MenuContainer.d.ts +8 -0
- package/Menu/MenuContainer.js +101 -30
- package/Menu/MenuItem.js +1 -1
- package/Menu/context.js +5 -0
- package/Modal/BaseModal/useDialogID.d.ts +6 -0
- package/Modal/BaseModal/useDialogID.js +12 -0
- package/Modal/ConfirmBox/ConfirmBoxContainer.js +5 -1
- package/Modal/ConfirmBox/index.js +2 -1
- package/Modal/Dialog/DialogInner.js +1 -1
- package/Modal/Dialog/index.js +12 -7
- package/Modal/Drawer/DrawerHeader.d.ts +20 -0
- package/Modal/Drawer/DrawerHeader.js +3 -3
- package/Modal/Drawer/DrawerInner.js +9 -1
- package/Modal/Drawer/index.d.ts +7 -0
- package/Modal/Drawer/index.js +12 -10
- package/Modal/MessageBox/MessageBoxContainer.js +1 -1
- package/Modal/MessageBox/index.js +2 -1
- package/PhoneField/CountryFlagComponent.js +2 -2
- package/PhoneField/UnknownFlag.d.ts +6 -3
- package/PhoneField/UnknownFlag.js +8 -31
- package/PhoneField/index.js +45 -55
- package/PhoneField/templates.js +13 -14
- package/PhoneField/usePhoneUtils.d.ts +15 -0
- package/PhoneField/usePhoneUtils.js +30 -37
- package/Popper/Popper.d.ts +28 -8
- package/Popper/usePopper.d.ts +21 -31
- package/README.md +27 -10
- package/Radio/RadioBox.d.ts +14 -0
- package/Radio/RadioBox.js +100 -0
- package/Radio/RadioContainer.d.ts +27 -0
- package/Radio/RadioContainer.js +38 -0
- package/Radio/RadioTextWrapper.d.ts +4 -0
- package/Radio/RadioTextWrapper.js +29 -0
- package/Radio/index.d.ts +64 -0
- package/Radio/index.js +49 -0
- package/Radio/useRadioColor.d.ts +6 -0
- package/Radio/useRadioColor.js +33 -0
- package/RadioGroup/RadioGroupAsterisk.d.ts +13 -0
- package/RadioGroup/RadioGroupAsterisk.js +53 -0
- package/RadioGroup/RadioGroupContainer.d.ts +4 -0
- package/RadioGroup/RadioGroupContainer.js +36 -0
- package/RadioGroup/RadioGroupContext.d.ts +20 -0
- package/RadioGroup/RadioGroupContext.js +11 -0
- package/RadioGroup/RadioGroupErrorText.d.ts +6 -0
- package/RadioGroup/RadioGroupErrorText.js +76 -0
- package/RadioGroup/RadioGroupItems.d.ts +9 -0
- package/RadioGroup/RadioGroupItems.js +30 -0
- package/RadioGroup/RadioGroupLegend.d.ts +4 -0
- package/RadioGroup/RadioGroupLegend.js +37 -0
- package/RadioGroup/index.d.ts +134 -0
- package/RadioGroup/index.js +62 -0
- package/Selectbox/index.d.ts +18 -2
- package/Selectbox/index.js +23 -7
- package/Stack/index.d.ts +62 -0
- package/Stack/index.js +38 -0
- package/Surface/SurfaceContainer.js +6 -0
- package/Surface/index.js +7 -3
- package/Swiper/Swiper.d.ts +28 -2
- package/Swiper/Swiper.js +233 -90
- package/Swiper/SwiperContainer.js +0 -2
- package/Swiper/SwiperSlidesRenderer.d.ts +8 -0
- package/Swiper/SwiperSlidesRenderer.js +17 -14
- package/Swiper/SwiperTrack.d.ts +8 -0
- package/Swiper/SwiperTrack.js +8 -3
- package/Swiper/SwiperWrapper.js +9 -1
- package/Switch/SwitchContainer.d.ts +1 -1
- package/Switch/SwitchContainer.js +5 -5
- package/Switch/SwitchDot.js +13 -53
- package/Switch/SwitchToggleWrapper.d.ts +1 -1
- package/Switch/SwitchToggleWrapper.js +5 -6
- package/Switch/SwitchTrack.js +5 -41
- package/Switch/index.d.ts +4 -4
- package/Switch/index.js +21 -11
- package/Switch/useSwitchColor.d.ts +7 -0
- package/Switch/useSwitchColor.js +33 -0
- package/Table/Table.d.ts +6 -0
- package/Table/Table.js +7 -62
- package/Table/TableBody.d.ts +1 -1
- package/Table/TableBody.js +4 -2
- package/Table/TableCaption.d.ts +2 -2
- package/Table/TableCaption.js +2 -3
- package/Table/TableCell.js +2 -5
- package/Table/TableFooter.js +8 -7
- package/Table/TableHeader.js +6 -2
- package/Table/TableHeaderCell.js +8 -9
- package/Table/TableRow.js +1 -5
- package/TextArea/TextAreaIconWrapper.d.ts +1 -1
- package/TextArea/TextAreaInput.js +2 -0
- package/TextArea/index.js +1 -1
- package/TextField/TextFieldInput.js +2 -0
- package/TextField/TextFieldInputWrapper.d.ts +2 -0
- package/TextField/TextFieldInputWrapper.js +12 -2
- package/TextField/index.js +1 -1
- package/ThemeProvider/createTheme.js +2 -3
- package/ThemeProvider/index.d.ts +19 -2
- package/Typography/Base.d.ts +1 -1
- package/Typography/Base.js +1 -1
- package/Typography/Blockquote.js +1 -1
- package/Typography/Del.js +2 -2
- package/Typography/H4.js +1 -1
- package/Typography/H5.js +2 -2
- package/Typography/H6.d.ts +4 -0
- package/Typography/H6.js +28 -0
- package/Typography/SectionDescription.js +0 -1
- package/Typography/SectionTitle.d.ts +4 -7
- package/Typography/SectionTitle.js +26 -8
- package/Typography/index.d.ts +27 -0
- package/Typography/index.js +35 -0
- package/package.json +2 -4
- package/utils/spacing.d.ts +11 -0
- package/utils/spacing.js +14 -0
- package/Autocomplete/OverrideMenuList.d.ts +0 -4
- package/Autocomplete/OverrideMenuList.js +0 -39
- package/Autocomplete2/Autocomplete2.d.ts +0 -12
- package/Autocomplete2/Autocomplete2.js +0 -83
- package/Autocomplete2/Autocomplete2TextField.d.ts +0 -7
- package/Autocomplete2/index.d.ts +0 -2
- package/Autocomplete2/index.js +0 -7
- package/CountryFlags/SwiperOverview.d.ts +0 -257
- package/CountryFlags/SwiperOverview.js +0 -524
package/Button/ButtonBase.js
CHANGED
|
@@ -25,11 +25,15 @@ const ButtonBase = (props, ref) => {
|
|
|
25
25
|
IconWrapper: (overrides === null || overrides === void 0 ? void 0 : overrides.IconWrapper) || ButtonIconWrapper_1.default,
|
|
26
26
|
Container: (overrides === null || overrides === void 0 ? void 0 : overrides.Container) || ButtonContainer_1.default,
|
|
27
27
|
}), [overrides]);
|
|
28
|
-
|
|
28
|
+
// Warn once when the combination appears, not on every render
|
|
29
|
+
const isIconOnlyWithIcons = Boolean(iconOnly) &&
|
|
29
30
|
((typeof startIcon !== 'undefined' && startIcon !== null) ||
|
|
30
|
-
(typeof endIcon !== 'undefined' && endIcon !== null))
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
(typeof endIcon !== 'undefined' && endIcon !== null));
|
|
32
|
+
react_1.default.useEffect(() => {
|
|
33
|
+
if (isIconOnlyWithIcons) {
|
|
34
|
+
console.warn('The «iconOnly» property should not be used simultaneously with «startIcon» and/or «endIcon»');
|
|
35
|
+
}
|
|
36
|
+
}, [isIconOnlyWithIcons]);
|
|
33
37
|
return (react_1.default.createElement(overridesMap.Container, Object.assign({ type: typeof type === 'undefined' ? 'button' : type }, nativeProps, { color: color, iconOnly: iconOnly, ref: ref }),
|
|
34
38
|
typeof startIcon !== 'undefined' && startIcon !== null && (react_1.default.createElement(overridesMap.IconWrapper, { position: "start" }, startIcon)),
|
|
35
39
|
react_1.default.createElement(overridesMap.TextWrapper, { iconOnly: iconOnly }, children),
|
|
@@ -22,6 +22,8 @@ const StyledButton = styled_1.default.button `
|
|
|
22
22
|
padding: 0.8em 1em;
|
|
23
23
|
cursor: ${({ disabled }) => (disabled ? 'default' : 'pointer')};
|
|
24
24
|
font-size: 1em;
|
|
25
|
+
/* Buttons do not inherit the font by default */
|
|
26
|
+
font-family: inherit;
|
|
25
27
|
border-width: 0;
|
|
26
28
|
outline-style: solid;
|
|
27
29
|
outline-color: transparent;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ButtonBaseProps } from './ButtonBase';
|
|
2
|
+
import type { ButtonBaseProps } from './ButtonBase';
|
|
3
3
|
export type ButtonOutlinedProps = ButtonBaseProps;
|
|
4
4
|
declare const _default: React.ForwardRefExoticComponent<ButtonBaseProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
5
|
export default _default;
|
package/Button/ButtonOutlined.js
CHANGED
|
@@ -1,87 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
16
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
6
|
const react_1 = __importDefault(require("react"));
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const
|
|
23
|
-
color: ${({ theme, disabled, $color }) => {
|
|
24
|
-
switch (true) {
|
|
25
|
-
case disabled:
|
|
26
|
-
return theme.color.textPrimary.alpha(0.4).toString();
|
|
27
|
-
default:
|
|
28
|
-
return $color.darken(30).toString();
|
|
29
|
-
}
|
|
30
|
-
}};
|
|
31
|
-
border-color: ${({ theme, disabled, $color }) => {
|
|
32
|
-
switch (true) {
|
|
33
|
-
case disabled:
|
|
34
|
-
return theme.color.surface.darken(80).alpha(0.4).toString();
|
|
35
|
-
default:
|
|
36
|
-
return $color.toString();
|
|
37
|
-
}
|
|
38
|
-
}};
|
|
39
|
-
background-color: transparent;
|
|
40
|
-
border-style: solid;
|
|
41
|
-
border-width: 0.14em;
|
|
42
|
-
${({ disabled, $color, theme }) => !disabled &&
|
|
43
|
-
(0, react_2.css) `
|
|
44
|
-
&:hover {
|
|
45
|
-
background-color: ${$color.darken(20).alpha(0.1).toString()};
|
|
46
|
-
}
|
|
47
|
-
&:active {
|
|
48
|
-
background-color: ${$color.darken(50).alpha(0.3).toString()};
|
|
49
|
-
}
|
|
50
|
-
&:focus-visible {
|
|
51
|
-
outline-color: ${$color.rgbString() === theme.color.accentPrimary.rgbString()
|
|
52
|
-
? theme.color.textPrimary.toString()
|
|
53
|
-
: theme.color.accentPrimary.toString()};
|
|
54
|
-
}
|
|
55
|
-
`};
|
|
56
|
-
`;
|
|
57
|
-
const ButtonOutlined = (props, ref) => {
|
|
58
|
-
const { children, disabled, color } = props, restProps = __rest(props, ["children", "disabled", "color"]);
|
|
59
|
-
const theme = (0, react_2.useTheme)();
|
|
60
|
-
const $color = react_1.default.useMemo(() => {
|
|
61
|
-
switch (true) {
|
|
62
|
-
case color === 'primary':
|
|
63
|
-
return theme.color.accentPrimary;
|
|
64
|
-
case color === 'secondary':
|
|
65
|
-
return theme.color.accentSecondary;
|
|
66
|
-
case typeof color === 'undefined':
|
|
67
|
-
case color === 'default':
|
|
68
|
-
return theme.color.textPrimary;
|
|
69
|
-
case typeof color === 'string': {
|
|
70
|
-
let c = theme.color.textPrimary;
|
|
71
|
-
try {
|
|
72
|
-
if (color) {
|
|
73
|
-
c = Color_1.default.fromString(color);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
catch (err) {
|
|
77
|
-
console.error(`invalid color value «${color}»`);
|
|
78
|
-
}
|
|
79
|
-
return c;
|
|
80
|
-
}
|
|
81
|
-
default:
|
|
82
|
-
return theme.color.textPrimary;
|
|
83
|
-
}
|
|
84
|
-
}, [color, theme.color]);
|
|
85
|
-
return (react_1.default.createElement(StyledOutlinedButton, Object.assign({ disabled: disabled, "$color": $color }, restProps, { ref: ref }), children));
|
|
86
|
-
};
|
|
7
|
+
const ButtonStyled_1 = __importDefault(require("./ButtonStyled"));
|
|
8
|
+
/**
|
|
9
|
+
* The button with the `outlined` variant. Prefer `<Button variant="outlined">`
|
|
10
|
+
*/
|
|
11
|
+
const ButtonOutlined = (props, ref) => react_1.default.createElement(ButtonStyled_1.default, Object.assign({}, props, { variant: "outlined", ref: ref }));
|
|
87
12
|
exports.default = react_1.default.forwardRef(ButtonOutlined);
|
package/Button/ButtonPlain.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ButtonBaseProps } from './ButtonBase';
|
|
2
|
+
import type { ButtonBaseProps } from './ButtonBase';
|
|
3
3
|
export type ButtonPlainProps = ButtonBaseProps;
|
|
4
4
|
declare const _default: React.ForwardRefExoticComponent<ButtonBaseProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
5
|
export default _default;
|
package/Button/ButtonPlain.js
CHANGED
|
@@ -1,92 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
16
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
6
|
const react_1 = __importDefault(require("react"));
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const
|
|
23
|
-
box-shadow: none;
|
|
24
|
-
color: ${({ $color, disabled }) => {
|
|
25
|
-
switch (true) {
|
|
26
|
-
case disabled:
|
|
27
|
-
return $color.alpha(0.4).toString();
|
|
28
|
-
default:
|
|
29
|
-
return $color.toString();
|
|
30
|
-
}
|
|
31
|
-
}};
|
|
32
|
-
background: none;
|
|
33
|
-
${({ disabled, theme, $color }) => !disabled &&
|
|
34
|
-
(0, react_2.css) `
|
|
35
|
-
&:hover {
|
|
36
|
-
color: ${$color.darken(30).toString()};
|
|
37
|
-
background-color: ${$color.alpha(0.1).toString()};
|
|
38
|
-
}
|
|
39
|
-
&:active {
|
|
40
|
-
color: ${$color.darken(80).toString()};
|
|
41
|
-
background-color: ${$color.alpha(0.3).toString()};
|
|
42
|
-
}
|
|
43
|
-
&:focus-visible {
|
|
44
|
-
outline-style: solid;
|
|
45
|
-
outline-width: 0.14em;
|
|
46
|
-
outline-color: ${$color.rgbString() === theme.color.accentPrimary.rgbString()
|
|
47
|
-
? theme.color.textPrimary.toString()
|
|
48
|
-
: theme.color.accentPrimary.toString()};
|
|
49
|
-
}
|
|
50
|
-
`}
|
|
51
|
-
`;
|
|
52
|
-
const ButtonPlain = (props, ref) => {
|
|
53
|
-
const { children, disabled, color } = props, restProps = __rest(props, ["children", "disabled", "color"]);
|
|
54
|
-
const theme = (0, react_2.useTheme)();
|
|
55
|
-
const { $color } = react_1.default.useMemo(() => {
|
|
56
|
-
switch (true) {
|
|
57
|
-
case color === 'primary':
|
|
58
|
-
return {
|
|
59
|
-
$color: theme.color.accentPrimary,
|
|
60
|
-
};
|
|
61
|
-
case color === 'secondary':
|
|
62
|
-
return {
|
|
63
|
-
$color: theme.color.accentSecondary,
|
|
64
|
-
};
|
|
65
|
-
case typeof color === 'undefined':
|
|
66
|
-
case color === 'default':
|
|
67
|
-
return {
|
|
68
|
-
$color: theme.color.textPrimary,
|
|
69
|
-
};
|
|
70
|
-
case typeof color === 'string': {
|
|
71
|
-
let $color = theme.color.textPrimary;
|
|
72
|
-
try {
|
|
73
|
-
if (color) {
|
|
74
|
-
$color = Color_1.default.fromString(color);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
catch (err) {
|
|
78
|
-
console.error(`invalid color value «${color}»`);
|
|
79
|
-
}
|
|
80
|
-
return {
|
|
81
|
-
$color,
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
default:
|
|
85
|
-
return {
|
|
86
|
-
$color: theme.color.textPrimary,
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
}, [color, theme.color]);
|
|
90
|
-
return (react_1.default.createElement(StyledPlainButton, Object.assign({ "$color": $color, disabled: disabled }, restProps, { ref: ref }), children));
|
|
91
|
-
};
|
|
7
|
+
const ButtonStyled_1 = __importDefault(require("./ButtonStyled"));
|
|
8
|
+
/**
|
|
9
|
+
* The button with the `plain` variant. Prefer `<Button variant="plain">`
|
|
10
|
+
*/
|
|
11
|
+
const ButtonPlain = (props, ref) => react_1.default.createElement(ButtonStyled_1.default, Object.assign({}, props, { variant: "plain", ref: ref }));
|
|
92
12
|
exports.default = react_1.default.forwardRef(ButtonPlain);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ButtonBaseProps } from './ButtonBase';
|
|
2
|
+
import type { ButtonBaseProps } from './ButtonBase';
|
|
3
3
|
export type ButtonStandardProps = ButtonBaseProps;
|
|
4
4
|
declare const _default: React.ForwardRefExoticComponent<ButtonBaseProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
5
|
export default _default;
|
package/Button/ButtonStandard.js
CHANGED
|
@@ -1,104 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
16
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
6
|
const react_1 = __importDefault(require("react"));
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const
|
|
23
|
-
color: ${({ $color, disabled }) => {
|
|
24
|
-
switch (true) {
|
|
25
|
-
case disabled:
|
|
26
|
-
return $color.alpha(0.4).toString();
|
|
27
|
-
default:
|
|
28
|
-
return $color.toString();
|
|
29
|
-
}
|
|
30
|
-
}};
|
|
31
|
-
background-color: ${({ $background, disabled }) => {
|
|
32
|
-
switch (true) {
|
|
33
|
-
case disabled:
|
|
34
|
-
return $background.darken(40).toString();
|
|
35
|
-
default:
|
|
36
|
-
return $background.darken(10).toString();
|
|
37
|
-
}
|
|
38
|
-
}};
|
|
39
|
-
|
|
40
|
-
${({ disabled, $background, theme }) => !disabled &&
|
|
41
|
-
(0, react_2.css) `
|
|
42
|
-
&:hover {
|
|
43
|
-
background-color: ${$background.darken(30).toString()};
|
|
44
|
-
}
|
|
45
|
-
&:active {
|
|
46
|
-
background-color: ${$background.darken(80).toString()};
|
|
47
|
-
}
|
|
48
|
-
&:focus-visible {
|
|
49
|
-
outline-style: solid;
|
|
50
|
-
outline-width: 0.14em;
|
|
51
|
-
outline-color: ${$background.rgbString() === theme.color.accentPrimary.rgbString()
|
|
52
|
-
? theme.color.textPrimary.toString()
|
|
53
|
-
: theme.color.accentPrimary.toString()};
|
|
54
|
-
}
|
|
55
|
-
`}
|
|
56
|
-
`;
|
|
57
|
-
const ButtonStandard = (props, ref) => {
|
|
58
|
-
const { children, disabled, color } = props, restProps = __rest(props, ["children", "disabled", "color"]);
|
|
59
|
-
const theme = (0, react_2.useTheme)();
|
|
60
|
-
const { $background, $color } = react_1.default.useMemo(() => {
|
|
61
|
-
switch (true) {
|
|
62
|
-
case color === 'primary':
|
|
63
|
-
return {
|
|
64
|
-
$color: theme.color.accentPrimaryContrast,
|
|
65
|
-
$background: theme.color.accentPrimary,
|
|
66
|
-
};
|
|
67
|
-
case color === 'secondary':
|
|
68
|
-
return {
|
|
69
|
-
$color: theme.color.accentSecondaryContrast,
|
|
70
|
-
$background: theme.color.accentSecondary,
|
|
71
|
-
};
|
|
72
|
-
case typeof color === 'undefined':
|
|
73
|
-
case color === 'default':
|
|
74
|
-
return {
|
|
75
|
-
$background: theme.color.surface,
|
|
76
|
-
$color: theme.color.textPrimary,
|
|
77
|
-
};
|
|
78
|
-
case typeof color === 'string': {
|
|
79
|
-
let $background = theme.color.surface;
|
|
80
|
-
try {
|
|
81
|
-
if (color) {
|
|
82
|
-
$background = Color_1.default.fromString(color);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
catch (err) {
|
|
86
|
-
console.error(`invalid color value «${color}»`);
|
|
87
|
-
}
|
|
88
|
-
return {
|
|
89
|
-
$background,
|
|
90
|
-
$color: ($background === null || $background === void 0 ? void 0 : $background.getContrast(theme.color.textPrimary.rgbString())) > 5
|
|
91
|
-
? theme.color.textPrimary
|
|
92
|
-
: theme.color.surface,
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
default:
|
|
96
|
-
return {
|
|
97
|
-
$background: theme.color.surface,
|
|
98
|
-
$color: theme.color.textPrimary,
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
}, [color, theme.color]);
|
|
102
|
-
return (react_1.default.createElement(StyledStandardButton, Object.assign({ "$color": $color, "$background": $background, disabled: disabled }, restProps, { ref: ref }), children));
|
|
103
|
-
};
|
|
7
|
+
const ButtonStyled_1 = __importDefault(require("./ButtonStyled"));
|
|
8
|
+
/**
|
|
9
|
+
* The button with the `standard` variant. Prefer `<Button variant="standard">`
|
|
10
|
+
*/
|
|
11
|
+
const ButtonStandard = (props, ref) => react_1.default.createElement(ButtonStyled_1.default, Object.assign({}, props, { variant: "standard", ref: ref }));
|
|
104
12
|
exports.default = react_1.default.forwardRef(ButtonStandard);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ButtonBaseProps } from './ButtonBase';
|
|
3
|
+
export type ButtonVariant = 'standard' | 'outlined' | 'plain';
|
|
4
|
+
export type ButtonStyledProps = ButtonBaseProps & {
|
|
5
|
+
readonly variant?: ButtonVariant;
|
|
6
|
+
};
|
|
7
|
+
declare const _default: React.ForwardRefExoticComponent<ButtonBaseProps & {
|
|
8
|
+
readonly variant?: ButtonVariant | undefined;
|
|
9
|
+
} & React.RefAttributes<HTMLButtonElement>>;
|
|
10
|
+
export default _default;
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
+
var t = {};
|
|
4
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
+
t[p] = s[p];
|
|
6
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
+
t[p[i]] = s[p[i]];
|
|
10
|
+
}
|
|
11
|
+
return t;
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
const react_1 = __importDefault(require("react"));
|
|
18
|
+
const styled_1 = __importDefault(require("@emotion/styled"));
|
|
19
|
+
const react_2 = require("@emotion/react");
|
|
20
|
+
const Color_1 = __importDefault(require("../Color"));
|
|
21
|
+
const ButtonBase_1 = __importDefault(require("./ButtonBase"));
|
|
22
|
+
const ButtonGroupContext_1 = __importDefault(require("../ButtonGroup/ButtonGroupContext"));
|
|
23
|
+
const parseColor = (color, fallback) => {
|
|
24
|
+
try {
|
|
25
|
+
return Color_1.default.fromString(color);
|
|
26
|
+
}
|
|
27
|
+
catch (err) {
|
|
28
|
+
console.error(`invalid color value «${color}»`);
|
|
29
|
+
return fallback;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Text and background colors of the standard variant
|
|
34
|
+
*/
|
|
35
|
+
const getStandardColors = (color, theme) => {
|
|
36
|
+
switch (true) {
|
|
37
|
+
case color === 'primary':
|
|
38
|
+
return { $color: theme.color.accentPrimaryContrast, $background: theme.color.accentPrimary };
|
|
39
|
+
case color === 'secondary':
|
|
40
|
+
return {
|
|
41
|
+
$color: theme.color.accentSecondaryContrast,
|
|
42
|
+
$background: theme.color.accentSecondary,
|
|
43
|
+
};
|
|
44
|
+
case typeof color === 'undefined':
|
|
45
|
+
case color === 'default':
|
|
46
|
+
return { $background: theme.color.surface, $color: theme.color.textPrimary };
|
|
47
|
+
default: {
|
|
48
|
+
const $background = parseColor(String(color), theme.color.surface);
|
|
49
|
+
return {
|
|
50
|
+
$background,
|
|
51
|
+
$color: $background.getContrast(theme.color.textPrimary) > 5
|
|
52
|
+
? theme.color.textPrimary
|
|
53
|
+
: theme.color.surface,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* The main color of the outlined and plain variants (text and border)
|
|
60
|
+
*/
|
|
61
|
+
const getAccentColor = (color, theme) => {
|
|
62
|
+
switch (true) {
|
|
63
|
+
case color === 'primary':
|
|
64
|
+
return theme.color.accentPrimary;
|
|
65
|
+
case color === 'secondary':
|
|
66
|
+
return theme.color.accentSecondary;
|
|
67
|
+
case typeof color === 'undefined':
|
|
68
|
+
case color === 'default':
|
|
69
|
+
return theme.color.textPrimary;
|
|
70
|
+
default:
|
|
71
|
+
return parseColor(String(color), theme.color.textPrimary);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
const focusOutlineColor = (color, theme) => color.rgbString() === theme.color.accentPrimary.rgbString()
|
|
75
|
+
? theme.color.textPrimary.toString()
|
|
76
|
+
: theme.color.accentPrimary.toString();
|
|
77
|
+
const standardStyles = ({ $color, $background, disabled, theme }) => (0, react_2.css) `
|
|
78
|
+
color: ${disabled ? $color.alpha(0.4).toString() : $color.toString()};
|
|
79
|
+
background-color: ${disabled
|
|
80
|
+
? $background.darken(40).toString()
|
|
81
|
+
: $background.darken(10).toString()};
|
|
82
|
+
|
|
83
|
+
${!disabled &&
|
|
84
|
+
(0, react_2.css) `
|
|
85
|
+
&:hover {
|
|
86
|
+
background-color: ${$background.darken(30).toString()};
|
|
87
|
+
}
|
|
88
|
+
&:active {
|
|
89
|
+
background-color: ${$background.darken(80).toString()};
|
|
90
|
+
}
|
|
91
|
+
&:focus-visible {
|
|
92
|
+
outline-style: solid;
|
|
93
|
+
outline-width: 0.14em;
|
|
94
|
+
outline-color: ${focusOutlineColor($background, theme)};
|
|
95
|
+
}
|
|
96
|
+
`}
|
|
97
|
+
`;
|
|
98
|
+
const outlinedStyles = ({ $color, disabled, theme }) => (0, react_2.css) `
|
|
99
|
+
color: ${disabled ? theme.color.textPrimary.alpha(0.4).toString() : $color.darken(30).toString()};
|
|
100
|
+
border-color: ${disabled
|
|
101
|
+
? theme.color.surface.darken(80).alpha(0.4).toString()
|
|
102
|
+
: $color.toString()};
|
|
103
|
+
background-color: transparent;
|
|
104
|
+
border-style: solid;
|
|
105
|
+
border-width: 0.14em;
|
|
106
|
+
|
|
107
|
+
${!disabled &&
|
|
108
|
+
(0, react_2.css) `
|
|
109
|
+
&:hover {
|
|
110
|
+
background-color: ${$color.darken(20).alpha(0.1).toString()};
|
|
111
|
+
}
|
|
112
|
+
&:active {
|
|
113
|
+
background-color: ${$color.darken(50).alpha(0.3).toString()};
|
|
114
|
+
}
|
|
115
|
+
&:focus-visible {
|
|
116
|
+
outline-color: ${focusOutlineColor($color, theme)};
|
|
117
|
+
}
|
|
118
|
+
`}
|
|
119
|
+
`;
|
|
120
|
+
const plainStyles = ({ $color, disabled, theme }) => (0, react_2.css) `
|
|
121
|
+
box-shadow: none;
|
|
122
|
+
color: ${disabled ? $color.alpha(0.4).toString() : $color.toString()};
|
|
123
|
+
background: none;
|
|
124
|
+
|
|
125
|
+
${!disabled &&
|
|
126
|
+
(0, react_2.css) `
|
|
127
|
+
&:hover {
|
|
128
|
+
color: ${$color.darken(30).toString()};
|
|
129
|
+
background-color: ${$color.alpha(0.1).toString()};
|
|
130
|
+
}
|
|
131
|
+
&:active {
|
|
132
|
+
color: ${$color.darken(80).toString()};
|
|
133
|
+
background-color: ${$color.alpha(0.3).toString()};
|
|
134
|
+
}
|
|
135
|
+
&:focus-visible {
|
|
136
|
+
outline-style: solid;
|
|
137
|
+
outline-width: 0.14em;
|
|
138
|
+
outline-color: ${focusOutlineColor($color, theme)};
|
|
139
|
+
}
|
|
140
|
+
`}
|
|
141
|
+
`;
|
|
142
|
+
/**
|
|
143
|
+
* Inside the ButtonGroup all the variants have the same border width, so the buttons have the same size
|
|
144
|
+
* and the selected (standard) button does not shrink. Two adjacent standard buttons are separated by a thin line
|
|
145
|
+
*/
|
|
146
|
+
const groupStyles = ({ $group, $variant, $color }) => $group &&
|
|
147
|
+
(0, react_2.css) `
|
|
148
|
+
border-style: solid;
|
|
149
|
+
border-width: 0.14em;
|
|
150
|
+
${$variant !== 'outlined' &&
|
|
151
|
+
(0, react_2.css) `
|
|
152
|
+
border-color: transparent;
|
|
153
|
+
`}
|
|
154
|
+
${$variant === 'standard' &&
|
|
155
|
+
(0, react_2.css) `
|
|
156
|
+
[data-group-variant='standard'] + & {
|
|
157
|
+
${$group === 'vertical' ? 'border-top-color' : 'border-left-color'}: ${$color
|
|
158
|
+
.alpha(0.25)
|
|
159
|
+
.toString()};
|
|
160
|
+
}
|
|
161
|
+
`}
|
|
162
|
+
`;
|
|
163
|
+
/**
|
|
164
|
+
* All the variants are one styled component: switching the variant (e.g. a toggle button)
|
|
165
|
+
* must not remount the element, otherwise the focused button loses the focus
|
|
166
|
+
*/
|
|
167
|
+
const StyledButton = (0, styled_1.default)(ButtonBase_1.default) `
|
|
168
|
+
${props => {
|
|
169
|
+
switch (props.$variant) {
|
|
170
|
+
case 'outlined':
|
|
171
|
+
return outlinedStyles(props);
|
|
172
|
+
case 'plain':
|
|
173
|
+
return plainStyles(props);
|
|
174
|
+
case 'standard':
|
|
175
|
+
default:
|
|
176
|
+
return standardStyles(props);
|
|
177
|
+
}
|
|
178
|
+
}}
|
|
179
|
+
${groupStyles}
|
|
180
|
+
`;
|
|
181
|
+
const ButtonStyled = (props, ref) => {
|
|
182
|
+
const group = react_1.default.useContext(ButtonGroupContext_1.default);
|
|
183
|
+
const { children, onClick } = props, buttonProps = __rest(props, ["children", "onClick"]);
|
|
184
|
+
const buttonValue = typeof buttonProps.value !== 'undefined' ? String(buttonProps.value) : undefined;
|
|
185
|
+
const isSelectable = Boolean((group === null || group === void 0 ? void 0 : group.selectable) && typeof buttonValue !== 'undefined');
|
|
186
|
+
const isSelected = isSelectable && Boolean(group === null || group === void 0 ? void 0 : group.isSelected(String(buttonValue)));
|
|
187
|
+
// Inside the ButtonGroup the own props of the button win over the props of the group
|
|
188
|
+
const { disabled = group === null || group === void 0 ? void 0 : group.disabled, color = isSelected ? group === null || group === void 0 ? void 0 : group.selectedColor : group === null || group === void 0 ? void 0 : group.color, variant = group ? (isSelected ? 'standard' : group.variant) : 'standard' } = buttonProps, restProps = __rest(buttonProps, ["disabled", "color", "variant"]);
|
|
189
|
+
const theme = (0, react_2.useTheme)();
|
|
190
|
+
const handleClick = event => {
|
|
191
|
+
onClick === null || onClick === void 0 ? void 0 : onClick(event);
|
|
192
|
+
if (isSelectable && !event.defaultPrevented && group) {
|
|
193
|
+
group.toggle(String(buttonValue));
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
const { $color, $background } = react_1.default.useMemo(() => {
|
|
197
|
+
if (variant === 'standard') {
|
|
198
|
+
return getStandardColors(color, theme);
|
|
199
|
+
}
|
|
200
|
+
const accent = getAccentColor(color, theme);
|
|
201
|
+
return { $color: accent, $background: accent };
|
|
202
|
+
}, [color, variant, theme]);
|
|
203
|
+
return (react_1.default.createElement(StyledButton, Object.assign({ "$variant": variant, "$color": $color, "$background": $background, "$group": group === null || group === void 0 ? void 0 : group.orientation, "data-group-variant": group ? variant : undefined, disabled: disabled, "aria-pressed": isSelectable ? isSelected : undefined }, restProps, { onClick: handleClick, ref: ref }), children));
|
|
204
|
+
};
|
|
205
|
+
exports.default = react_1.default.forwardRef(ButtonStyled);
|
package/Button/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ButtonStandardProps } from './ButtonStandard';
|
|
3
|
-
import { ButtonOutlinedProps } from './ButtonOutlined';
|
|
4
|
-
import { ButtonPlainProps } from './ButtonPlain';
|
|
2
|
+
import type { ButtonStandardProps } from './ButtonStandard';
|
|
3
|
+
import type { ButtonOutlinedProps } from './ButtonOutlined';
|
|
4
|
+
import type { ButtonPlainProps } from './ButtonPlain';
|
|
5
5
|
export type ButtonProps = (ButtonStandardProps | ButtonOutlinedProps | ButtonPlainProps) & {
|
|
6
6
|
/**
|
|
7
7
|
* Button style variant\
|
|
8
|
-
* Allowed variants: `standard`
|
|
8
|
+
* Allowed variants: `standard`, `outlined` or `plain`\
|
|
9
9
|
* \
|
|
10
10
|
* **Default**: `standard`
|
|
11
11
|
*/
|
|
@@ -14,7 +14,7 @@ export type ButtonProps = (ButtonStandardProps | ButtonOutlinedProps | ButtonPla
|
|
|
14
14
|
declare const _default: React.ForwardRefExoticComponent<import("./ButtonBase").ButtonBaseProps & {
|
|
15
15
|
/**
|
|
16
16
|
* Button style variant\
|
|
17
|
-
* Allowed variants: `standard`
|
|
17
|
+
* Allowed variants: `standard`, `outlined` or `plain`\
|
|
18
18
|
* \
|
|
19
19
|
* **Default**: `standard`
|
|
20
20
|
*/
|
package/Button/index.js
CHANGED
|
@@ -1,31 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
|
-
var t = {};
|
|
4
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
5
|
-
t[p] = s[p];
|
|
6
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
7
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
8
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
9
|
-
t[p[i]] = s[p[i]];
|
|
10
|
-
}
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
4
|
};
|
|
16
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
6
|
const react_1 = __importDefault(require("react"));
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
const
|
|
21
|
-
const Button = (props, ref) => {
|
|
22
|
-
const { variant } = props, buttonProps = __rest(props, ["variant"]);
|
|
23
|
-
if (variant === 'outlined') {
|
|
24
|
-
return react_1.default.createElement(ButtonOutlined_1.default, Object.assign({}, buttonProps, { ref: ref }));
|
|
25
|
-
}
|
|
26
|
-
if (variant === 'plain') {
|
|
27
|
-
return react_1.default.createElement(ButtonPlain_1.default, Object.assign({}, buttonProps, { ref: ref }));
|
|
28
|
-
}
|
|
29
|
-
return react_1.default.createElement(ButtonStandard_1.default, Object.assign({}, buttonProps, { ref: ref }));
|
|
30
|
-
};
|
|
7
|
+
const ButtonStyled_1 = __importDefault(require("./ButtonStyled"));
|
|
8
|
+
// One component for all the variants, so changing the variant does not remount the button
|
|
9
|
+
const Button = (props, ref) => (react_1.default.createElement(ButtonStyled_1.default, Object.assign({}, props, { ref: ref })));
|
|
31
10
|
exports.default = react_1.default.forwardRef(Button);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ButtonVariant } from '../Button/ButtonStyled';
|
|
3
|
+
export type ButtonGroupOrientation = 'horizontal' | 'vertical';
|
|
4
|
+
export type ButtonGroupContextValue = {
|
|
5
|
+
readonly variant: ButtonVariant;
|
|
6
|
+
readonly color?: string;
|
|
7
|
+
readonly selectedColor: string;
|
|
8
|
+
readonly disabled?: boolean;
|
|
9
|
+
readonly orientation: ButtonGroupOrientation;
|
|
10
|
+
/**
|
|
11
|
+
* `true` when the group has the selection (value, defaultValue or onChange is passed)
|
|
12
|
+
*/
|
|
13
|
+
readonly selectable: boolean;
|
|
14
|
+
readonly isSelected: (value: string) => boolean;
|
|
15
|
+
readonly toggle: (value: string) => void;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Buttons inside the ButtonGroup read the common props and the selection from this context
|
|
19
|
+
*/
|
|
20
|
+
declare const ButtonGroupContext: React.Context<ButtonGroupContextValue | null>;
|
|
21
|
+
export default ButtonGroupContext;
|