@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/DatePicker/index.d.ts
CHANGED
|
@@ -8,19 +8,32 @@ export type DatePickerProps = Omit<TextFieldProps, 'value' | 'onChange' | 'overr
|
|
|
8
8
|
*/
|
|
9
9
|
readonly value: Date | null;
|
|
10
10
|
/**
|
|
11
|
-
* Will be invoked when date would be changed
|
|
11
|
+
* Will be invoked when date would be changed.\
|
|
12
|
+
* Receives `null` when the field was cleared
|
|
12
13
|
*/
|
|
13
|
-
readonly onChange: (date: Date) => void;
|
|
14
|
+
readonly onChange: (date: Date | null) => void;
|
|
14
15
|
/**
|
|
15
|
-
* Date template
|
|
16
|
-
*
|
|
17
|
-
*
|
|
16
|
+
* Date template, e.g. `dd.mm.yyyy` or `yyyy-mm-dd`.\
|
|
17
|
+
* Every char of the template is one char of the field, so use the fixed width parts:
|
|
18
|
+
* `dd` — day, `mm` — month, `yyyy` — year (`yy` — two digits of the year)
|
|
18
19
|
*/
|
|
19
20
|
readonly template: string;
|
|
20
21
|
/**
|
|
21
|
-
*
|
|
22
|
+
* The label of the calendar button for screen readers and the tooltip.
|
|
23
|
+
* Also the label of the calendar popup\
|
|
24
|
+
* **Default:** `Choose date`
|
|
22
25
|
*/
|
|
23
26
|
readonly calendarButtonTooltip?: string;
|
|
27
|
+
/**
|
|
28
|
+
* The label of the «previous» button of the calendar\
|
|
29
|
+
* **Default:** `Previous`
|
|
30
|
+
*/
|
|
31
|
+
readonly prevButtonLabel?: string;
|
|
32
|
+
/**
|
|
33
|
+
* The label of the «next» button of the calendar\
|
|
34
|
+
* **Default:** `Next`
|
|
35
|
+
*/
|
|
36
|
+
readonly nextButtonLabel?: string;
|
|
24
37
|
/**
|
|
25
38
|
* Minimum date limit
|
|
26
39
|
*/
|
package/DatePicker/index.js
CHANGED
|
@@ -49,7 +49,23 @@ const StyledMaskedField = (0, styled_1.default)(MaskedField_1.default) `
|
|
|
49
49
|
`}
|
|
50
50
|
`;
|
|
51
51
|
const DatePicker = props => {
|
|
52
|
-
const { value, template, onChange, calendarButtonTooltip, readOnly, disabled, minDate
|
|
52
|
+
const { value, template, onChange, calendarButtonTooltip, readOnly, disabled, minDate: inputMinDate, maxDate: inputMaxDate, weekStartDay = 'monday', locale = 'ru-RU', badges = [], displayLeadingZero = false, resetButtonLabel, todayButtonLabel: todayButtonLabelProp, toodayButtonLabel, markToday, weekDayLabelFormat, heading, subheading, view, views, footer, overrides, prevButtonLabel, nextButtonLabel, inputRef: userInputRef } = props, restInputProps = __rest(props, ["value", "template", "onChange", "calendarButtonTooltip", "readOnly", "disabled", "minDate", "maxDate", "weekStartDay", "locale", "badges", "displayLeadingZero", "resetButtonLabel", "todayButtonLabel", "toodayButtonLabel", "markToday", "weekDayLabelFormat", "heading", "subheading", "view", "views", "footer", "overrides", "prevButtonLabel", "nextButtonLabel", "inputRef"]);
|
|
53
|
+
const calendarLabel = calendarButtonTooltip !== null && calendarButtonTooltip !== void 0 ? calendarButtonTooltip : 'Choose date';
|
|
54
|
+
// The default limits are created once, otherwise every render invalidates the memoized values
|
|
55
|
+
const minDate = react_1.default.useMemo(() => inputMinDate !== null && inputMinDate !== void 0 ? inputMinDate : new Date(new Date().getFullYear() - 100, 0, 1, 0, 0, 0), [inputMinDate]);
|
|
56
|
+
const maxDate = react_1.default.useMemo(() => inputMaxDate !== null && inputMaxDate !== void 0 ? inputMaxDate : new Date(new Date().getFullYear() + 100, 0, 1, 0, 0, 0), [inputMaxDate]);
|
|
57
|
+
const inputRef = react_1.default.useRef(null);
|
|
58
|
+
const buttonRef = react_1.default.useRef(null);
|
|
59
|
+
const popperRef = react_1.default.useRef(null);
|
|
60
|
+
const setInputRef = react_1.default.useCallback((el) => {
|
|
61
|
+
inputRef.current = el;
|
|
62
|
+
if (typeof userInputRef === 'function') {
|
|
63
|
+
userInputRef(el);
|
|
64
|
+
}
|
|
65
|
+
else if (userInputRef) {
|
|
66
|
+
userInputRef.current = el;
|
|
67
|
+
}
|
|
68
|
+
}, [userInputRef]);
|
|
53
69
|
const todayButtonLabel = todayButtonLabelProp !== null && todayButtonLabelProp !== void 0 ? todayButtonLabelProp : toodayButtonLabel;
|
|
54
70
|
const calendarOverrides = react_1.default.useMemo(() => {
|
|
55
71
|
if (!overrides) {
|
|
@@ -97,12 +113,41 @@ const DatePicker = props => {
|
|
|
97
113
|
}, [maxDate]);
|
|
98
114
|
const handleClick = react_1.default.useCallback(() => {
|
|
99
115
|
if (readOnly) {
|
|
100
|
-
setOpenSate(!
|
|
116
|
+
setOpenSate(open => !open);
|
|
101
117
|
}
|
|
102
|
-
}, [
|
|
103
|
-
|
|
104
|
-
|
|
118
|
+
}, [readOnly]);
|
|
119
|
+
// The keyboard focus goes to the calendar when it is opened: the selected day, today or the first one
|
|
120
|
+
react_1.default.useEffect(() => {
|
|
121
|
+
if (!isOpen)
|
|
122
|
+
return undefined;
|
|
123
|
+
const frame = requestAnimationFrame(() => {
|
|
124
|
+
var _a, _b;
|
|
125
|
+
(_b = (_a = popperRef.current) === null || _a === void 0 ? void 0 : _a.querySelector('[data-date][tabindex="0"]')) === null || _b === void 0 ? void 0 : _b.focus();
|
|
126
|
+
});
|
|
127
|
+
return () => cancelAnimationFrame(frame);
|
|
128
|
+
}, [isOpen]);
|
|
129
|
+
const close = react_1.default.useCallback(() => {
|
|
130
|
+
var _a, _b;
|
|
131
|
+
setOpenSate(false);
|
|
132
|
+
// Back to the field, so the keyboard user continues from the same place
|
|
133
|
+
(_b = (readOnly ? inputRef.current : ((_a = buttonRef.current) !== null && _a !== void 0 ? _a : inputRef.current))) === null || _b === void 0 ? void 0 : _b.focus();
|
|
134
|
+
}, [readOnly]);
|
|
135
|
+
const handlePopperKeyDown = react_1.default.useCallback((event) => {
|
|
136
|
+
if (event.key === 'Escape') {
|
|
137
|
+
event.stopPropagation();
|
|
138
|
+
close();
|
|
139
|
+
}
|
|
140
|
+
}, [close]);
|
|
141
|
+
const endIcon = react_1.default.useMemo(() => (react_1.default.createElement(Button_1.default, { ref: buttonRef, disabled: disabled, iconOnly: true, variant: "plain", type: "button", onClick: () => setOpenSate(open => !open), title: calendarLabel, "aria-label": calendarLabel, "aria-haspopup": "dialog", "aria-expanded": isOpen },
|
|
142
|
+
react_1.default.createElement(DatePickerIcon_1.default, null))), [calendarLabel, disabled, isOpen]);
|
|
105
143
|
const handleChange = react_1.default.useCallback(({ isValid, text }) => {
|
|
144
|
+
// The field was cleared: the date is reset
|
|
145
|
+
if (text.trim() === '') {
|
|
146
|
+
if (currentValue !== null) {
|
|
147
|
+
onChange(null);
|
|
148
|
+
}
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
106
151
|
if (isValid) {
|
|
107
152
|
const parsedDate = parseInputByTemplate(text, template);
|
|
108
153
|
// Trying to parse the input date value
|
|
@@ -125,6 +170,7 @@ const DatePicker = props => {
|
|
|
125
170
|
}
|
|
126
171
|
}
|
|
127
172
|
}, [
|
|
173
|
+
currentValue,
|
|
128
174
|
isGreatherThenMinDate,
|
|
129
175
|
isLessThenMaxDate,
|
|
130
176
|
maxDate,
|
|
@@ -134,15 +180,16 @@ const DatePicker = props => {
|
|
|
134
180
|
template,
|
|
135
181
|
]);
|
|
136
182
|
const calendarChange = react_1.default.useCallback(date => {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
183
|
+
var _a;
|
|
184
|
+
// null comes from the «Reset» button of the calendar
|
|
185
|
+
onChange(date !== null && date !== void 0 ? date : null);
|
|
140
186
|
setOpenSate(false);
|
|
187
|
+
(_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
141
188
|
}, [onChange]);
|
|
142
189
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
143
|
-
react_1.default.createElement(StyledMaskedField, Object.assign({ onClick: handleClick, disabled: disabled, mask: getMaskByTemplate(template), ref: setTextFieldRef, readOnly: readOnly, endIcon: endIcon }, restInputProps, { value: currentValue ? formatInputByTemplate(currentValue, template) : '', onChange: handleChange, overrides: textFieldOverrides })),
|
|
144
|
-
react_1.default.createElement(ClickOutside_1.default, { onOutsideClick: () => setOpenSate(false), mouseEvent: "onMouseDown" },
|
|
145
|
-
react_1.default.createElement(Popper_1.default, { isOpen: isOpen, anchorElement: textFieldRef },
|
|
146
|
-
react_1.default.createElement(Calendar_1.default, { minDate: minDate, maxDate: maxDate, weekStartDay: weekStartDay, locale: locale, badges: badges, displayLeadingZero: displayLeadingZero, resetButtonLabel: resetButtonLabel, todayButtonLabel: todayButtonLabel, markToday: markToday, weekDayLabelFormat: weekDayLabelFormat, heading: heading, subheading: subheading, view: view, views: views, footer: footer, value: currentValue, onChange: calendarChange, overrides: calendarOverrides })))));
|
|
190
|
+
react_1.default.createElement(StyledMaskedField, Object.assign({ onClick: handleClick, disabled: disabled, mask: getMaskByTemplate(template), ref: setTextFieldRef, readOnly: readOnly, endIcon: endIcon }, restInputProps, { inputRef: setInputRef, value: currentValue ? formatInputByTemplate(currentValue, template) : '', onChange: handleChange, overrides: textFieldOverrides })),
|
|
191
|
+
react_1.default.createElement(ClickOutside_1.default, { onOutsideClick: () => setOpenSate(false), mouseEvent: "onMouseDown", ignoreElements: [textFieldRef] },
|
|
192
|
+
react_1.default.createElement(Popper_1.default, { ref: popperRef, isOpen: isOpen, anchorElement: textFieldRef, role: "dialog", "aria-label": calendarLabel, onKeyDown: handlePopperKeyDown },
|
|
193
|
+
react_1.default.createElement(Calendar_1.default, { minDate: minDate, maxDate: maxDate, weekStartDay: weekStartDay, locale: locale, badges: badges, displayLeadingZero: displayLeadingZero, resetButtonLabel: resetButtonLabel, todayButtonLabel: todayButtonLabel, markToday: markToday, weekDayLabelFormat: weekDayLabelFormat, heading: heading, subheading: subheading, view: view, views: views, footer: footer, prevButtonLabel: prevButtonLabel, nextButtonLabel: nextButtonLabel, value: currentValue, onChange: calendarChange, overrides: calendarOverrides })))));
|
|
147
194
|
};
|
|
148
195
|
exports.default = DatePicker;
|
package/Grid/index.d.ts
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Spacing } from '../utils/spacing';
|
|
3
|
+
export type { Spacing };
|
|
4
|
+
export type GridProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
5
|
+
/**
|
|
6
|
+
* The adaptive grid: as many columns as fit, every column is not narrower than this width.
|
|
7
|
+
* On a narrow screen the columns become one column by themselves, without breakpoints.\
|
|
8
|
+
* Wins over `columns`
|
|
9
|
+
*/
|
|
10
|
+
readonly minColumnWidth?: string;
|
|
11
|
+
/**
|
|
12
|
+
* A number — that many equal columns, a string — the `grid-template-columns` value
|
|
13
|
+
* (e.g. `'2fr 1fr'` or `'auto 1fr'`)\
|
|
14
|
+
* **Default:** `1`
|
|
15
|
+
*/
|
|
16
|
+
readonly columns?: number | string;
|
|
17
|
+
/**
|
|
18
|
+
* The gap between the cells: a step of the theme spacing scale or any CSS length\
|
|
19
|
+
* **Default:** `md`
|
|
20
|
+
*/
|
|
21
|
+
readonly gap?: Spacing;
|
|
22
|
+
/**
|
|
23
|
+
* The gap between the rows, if it differs from `gap`
|
|
24
|
+
*/
|
|
25
|
+
readonly rowGap?: Spacing;
|
|
26
|
+
/**
|
|
27
|
+
* The vertical alignment of the cells in a row (`align-items`)\
|
|
28
|
+
* **Default:** `stretch`
|
|
29
|
+
*/
|
|
30
|
+
readonly align?: React.CSSProperties['alignItems'];
|
|
31
|
+
};
|
|
32
|
+
declare const _default: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
33
|
+
/**
|
|
34
|
+
* The adaptive grid: as many columns as fit, every column is not narrower than this width.
|
|
35
|
+
* On a narrow screen the columns become one column by themselves, without breakpoints.\
|
|
36
|
+
* Wins over `columns`
|
|
37
|
+
*/
|
|
38
|
+
readonly minColumnWidth?: string | undefined;
|
|
39
|
+
/**
|
|
40
|
+
* A number — that many equal columns, a string — the `grid-template-columns` value
|
|
41
|
+
* (e.g. `'2fr 1fr'` or `'auto 1fr'`)\
|
|
42
|
+
* **Default:** `1`
|
|
43
|
+
*/
|
|
44
|
+
readonly columns?: string | number | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* The gap between the cells: a step of the theme spacing scale or any CSS length\
|
|
47
|
+
* **Default:** `md`
|
|
48
|
+
*/
|
|
49
|
+
readonly gap?: Spacing | undefined;
|
|
50
|
+
/**
|
|
51
|
+
* The gap between the rows, if it differs from `gap`
|
|
52
|
+
*/
|
|
53
|
+
readonly rowGap?: Spacing | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* The vertical alignment of the cells in a row (`align-items`)\
|
|
56
|
+
* **Default:** `stretch`
|
|
57
|
+
*/
|
|
58
|
+
readonly align?: import("csstype").Property.AlignItems | undefined;
|
|
59
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
60
|
+
export default _default;
|
package/Grid/index.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
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 spacing_1 = require("../utils/spacing");
|
|
20
|
+
const StyledGrid = styled_1.default.div `
|
|
21
|
+
display: grid;
|
|
22
|
+
grid-template-columns: ${({ $template }) => $template};
|
|
23
|
+
gap: ${({ theme, $gap }) => (0, spacing_1.resolveSpacing)(theme, $gap)};
|
|
24
|
+
${({ theme, $rowGap }) => typeof $rowGap !== 'undefined' ? `row-gap: ${(0, spacing_1.resolveSpacing)(theme, $rowGap)};` : ''}
|
|
25
|
+
align-items: ${({ $align }) => $align !== null && $align !== void 0 ? $align : 'stretch'};
|
|
26
|
+
min-width: 0;
|
|
27
|
+
`;
|
|
28
|
+
const getTemplate = (minColumnWidth, columns) => {
|
|
29
|
+
if (minColumnWidth) {
|
|
30
|
+
// min(…, 100%): a column wider than the container does not overflow it
|
|
31
|
+
return `repeat(auto-fit, minmax(min(${minColumnWidth}, 100%), 1fr))`;
|
|
32
|
+
}
|
|
33
|
+
// minmax(0, 1fr): a long word or a wide child does not stretch its column
|
|
34
|
+
return typeof columns === 'number' ? `repeat(${columns}, minmax(0, 1fr))` : columns;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* The grid of cells with the same gap. The children are the cells: no wrappers for the items
|
|
38
|
+
*/
|
|
39
|
+
const Grid = (props, ref) => {
|
|
40
|
+
const { children, minColumnWidth, columns = 1, gap = 'md', rowGap, align } = props, nativeProps = __rest(props, ["children", "minColumnWidth", "columns", "gap", "rowGap", "align"]);
|
|
41
|
+
return (react_1.default.createElement(StyledGrid, Object.assign({}, nativeProps, { "$template": getTemplate(minColumnWidth, columns), "$gap": gap, "$rowGap": rowGap, "$align": align, ref: ref }), children));
|
|
42
|
+
};
|
|
43
|
+
exports.default = react_1.default.forwardRef(Grid);
|
package/Highlighted/index.d.ts
CHANGED
|
@@ -48,7 +48,7 @@ export interface HighlightedOverrides {
|
|
|
48
48
|
*/
|
|
49
49
|
readonly Mark?: React.ComponentType<HighlightedMarkProps & React.RefAttributes<HTMLElement>>;
|
|
50
50
|
/**
|
|
51
|
-
* Text element (HTML <span>)
|
|
51
|
+
* Text element (HTML <span>)
|
|
52
52
|
*/
|
|
53
53
|
readonly Text?: React.ComponentType<HighlightedTextProps & React.RefAttributes<HTMLSpanElement>>;
|
|
54
54
|
}
|
package/Highlighted/index.js
CHANGED
|
@@ -29,6 +29,10 @@ const Highlighted = (props, ref) => {
|
|
|
29
29
|
const { text, highlight, overrides, disabledHighlighting = false, caseSensitive = false } = props, nativeProps = __rest(props, ["text", "highlight", "overrides", "disabledHighlighting", "caseSensitive"]);
|
|
30
30
|
const patterns = react_1.default.useMemo(() => (typeof highlight === 'string' ? [highlight] : highlight)
|
|
31
31
|
.filter(h => h.trim() !== '')
|
|
32
|
+
// Longest first: the alternation takes the first matching pattern,
|
|
33
|
+
// so «star» must not win over «starfish»
|
|
34
|
+
.slice()
|
|
35
|
+
.sort((a, b) => b.length - a.length)
|
|
32
36
|
.map(exports.escapeRegex), [highlight]);
|
|
33
37
|
const regex = react_1.default.useMemo(() => new RegExp(`(${patterns.join('|')})`, caseSensitive ? 'g' : 'gi'), [patterns, caseSensitive]);
|
|
34
38
|
const overridesMap = react_1.default.useMemo(() => ({
|
|
@@ -36,18 +40,18 @@ const Highlighted = (props, ref) => {
|
|
|
36
40
|
Mark: (overrides === null || overrides === void 0 ? void 0 : overrides.Mark) || HighlightedMark_1.default,
|
|
37
41
|
Text: (overrides === null || overrides === void 0 ? void 0 : overrides.Text) || HighlightedText_1.default,
|
|
38
42
|
}), [overrides]);
|
|
39
|
-
const
|
|
43
|
+
const parts = react_1.default.useMemo(() => {
|
|
40
44
|
if (disabledHighlighting || patterns.length === 0) {
|
|
45
|
+
return [text];
|
|
46
|
+
}
|
|
47
|
+
// With the capturing group, split puts the matches at the odd indexes
|
|
48
|
+
return text.split(regex);
|
|
49
|
+
}, [disabledHighlighting, patterns.length, regex, text]);
|
|
50
|
+
return (react_1.default.createElement(overridesMap.Container, Object.assign({}, nativeProps, { ref: ref }), parts.map((part, i) => {
|
|
51
|
+
if (part === '') {
|
|
41
52
|
return null;
|
|
42
53
|
}
|
|
43
|
-
return
|
|
44
|
-
|
|
45
|
-
return isMatch ? (react_1.default.createElement(overridesMap.Mark, { key: i }, part)) : (react_1.default.createElement(overridesMap.Text, { key: i }, part));
|
|
46
|
-
});
|
|
47
|
-
}, [disabledHighlighting, patterns.length, regex, text, overridesMap]);
|
|
48
|
-
return (react_1.default.createElement(overridesMap.Container, Object.assign({}, nativeProps, { ref: ref }),
|
|
49
|
-
disabledHighlighting && react_1.default.createElement(overridesMap.Text, null, text),
|
|
50
|
-
!disabledHighlighting && patterns.length === 0 && (react_1.default.createElement(overridesMap.Text, null, text)),
|
|
51
|
-
renderParts()));
|
|
54
|
+
return i % 2 === 1 ? (react_1.default.createElement(overridesMap.Mark, { key: i }, part)) : (react_1.default.createElement(overridesMap.Text, { key: i }, part));
|
|
55
|
+
})));
|
|
52
56
|
};
|
|
53
57
|
exports.default = react_1.default.forwardRef(Highlighted);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface LoadingOverlayProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
/**
|
|
4
|
+
* Spinner diameter: a number is in pixels, a string is any CSS length (`'1em'`, `'3rem'`)\
|
|
5
|
+
* \
|
|
6
|
+
* **Default**: `'2.4em'`
|
|
7
|
+
*/
|
|
8
|
+
readonly size?: number | string;
|
|
9
|
+
}
|
|
10
|
+
declare const _default: React.ForwardRefExoticComponent<LoadingOverlayProps & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
export default _default;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
26
|
+
var t = {};
|
|
27
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
28
|
+
t[p] = s[p];
|
|
29
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
30
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
31
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
32
|
+
t[p[i]] = s[p[i]];
|
|
33
|
+
}
|
|
34
|
+
return t;
|
|
35
|
+
};
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
const React = __importStar(require("react"));
|
|
41
|
+
const styled_1 = __importDefault(require("@emotion/styled"));
|
|
42
|
+
const SpinnerCircle_1 = __importStar(require("./SpinnerCircle"));
|
|
43
|
+
const Container = styled_1.default.div `
|
|
44
|
+
position: absolute;
|
|
45
|
+
left: 0;
|
|
46
|
+
right: 0;
|
|
47
|
+
top: 0;
|
|
48
|
+
bottom: 0;
|
|
49
|
+
display: flex;
|
|
50
|
+
justify-content: center;
|
|
51
|
+
align-items: center;
|
|
52
|
+
`;
|
|
53
|
+
/**
|
|
54
|
+
* Covers the nearest positioned ancestor (`position: relative` etc.) and centers the spinner in it
|
|
55
|
+
*/
|
|
56
|
+
const LoadingOverlay = (props, ref) => {
|
|
57
|
+
const { size = SpinnerCircle_1.DEFAULT_SIZE } = props, nativeProps = __rest(props, ["size"]);
|
|
58
|
+
return (
|
|
59
|
+
// Announced by screen readers; the label can be replaced by the props
|
|
60
|
+
React.createElement(Container, Object.assign({ role: "status", "aria-label": "Loading" }, nativeProps, { ref: ref }),
|
|
61
|
+
React.createElement(SpinnerCircle_1.default, { "$size": (0, SpinnerCircle_1.toCssSize)(size) })));
|
|
62
|
+
};
|
|
63
|
+
exports.default = React.forwardRef(LoadingOverlay);
|
|
@@ -1,6 +1,35 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
|
|
3
|
-
export
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
import { LoadingOverlayProps } from './LoadingOverlay';
|
|
3
|
+
export interface SpinnerProps extends React.HTMLAttributes<HTMLSpanElement> {
|
|
4
|
+
/**
|
|
5
|
+
* Spinner diameter: a number is in pixels, a string is any CSS length (`'1em'`, `'3rem'`)\
|
|
6
|
+
* \
|
|
7
|
+
* **Default**: `'2.4em'`
|
|
8
|
+
*/
|
|
9
|
+
readonly size?: number | string;
|
|
10
|
+
/**
|
|
11
|
+
* If `true`, the spinner takes all the free space of a flex parent and is centered in it
|
|
12
|
+
* (e.g. in place of an empty list). If `false`, it takes only its own size\
|
|
13
|
+
* \
|
|
14
|
+
* **Default**: `true`
|
|
15
|
+
*/
|
|
16
|
+
readonly fill?: boolean;
|
|
17
|
+
}
|
|
18
|
+
declare const SpinnerWithRef: React.ForwardRefExoticComponent<SpinnerProps & React.RefAttributes<HTMLSpanElement>>;
|
|
19
|
+
/**
|
|
20
|
+
* @deprecated Use `Spinner` instead
|
|
21
|
+
*/
|
|
22
|
+
export declare const StaticLoadingIndicator: React.ForwardRefExoticComponent<SpinnerProps & React.RefAttributes<HTMLSpanElement>>;
|
|
23
|
+
/**
|
|
24
|
+
* @deprecated Use `SpinnerProps` instead
|
|
25
|
+
*/
|
|
26
|
+
export type StaticLoadingIndicatorProps = SpinnerProps;
|
|
27
|
+
/**
|
|
28
|
+
* @deprecated Use `LoadingOverlay` from `@via-profit/ui-kit/LoadingIndicator` instead
|
|
29
|
+
*/
|
|
30
|
+
export declare const LoadingIndicator: React.ForwardRefExoticComponent<LoadingOverlayProps & React.RefAttributes<HTMLDivElement>>;
|
|
31
|
+
/**
|
|
32
|
+
* @deprecated Use `LoadingOverlayProps` instead
|
|
33
|
+
*/
|
|
34
|
+
export type LoadingIndicatorProps = LoadingOverlayProps;
|
|
35
|
+
export default SpinnerWithRef;
|
|
@@ -22,50 +22,61 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
26
|
+
var t = {};
|
|
27
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
28
|
+
t[p] = s[p];
|
|
29
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
30
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
31
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
32
|
+
t[p[i]] = s[p[i]];
|
|
33
|
+
}
|
|
34
|
+
return t;
|
|
35
|
+
};
|
|
25
36
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
38
|
};
|
|
28
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.
|
|
40
|
+
exports.LoadingIndicator = exports.StaticLoadingIndicator = void 0;
|
|
30
41
|
const React = __importStar(require("react"));
|
|
31
42
|
const styled_1 = __importDefault(require("@emotion/styled"));
|
|
32
43
|
const react_1 = require("@emotion/react");
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
right: 0;
|
|
37
|
-
top: 0;
|
|
38
|
-
bottom: 0;
|
|
39
|
-
display: flex;
|
|
40
|
-
justify-content: center;
|
|
41
|
-
align-items: center;
|
|
42
|
-
`;
|
|
43
|
-
const spin = (0, react_1.keyframes) `
|
|
44
|
-
to {
|
|
45
|
-
transform: rotate(360deg);
|
|
46
|
-
}
|
|
47
|
-
`;
|
|
48
|
-
const SpinLoader = styled_1.default.div `
|
|
49
|
-
width: 2em;
|
|
50
|
-
height: 2em;
|
|
51
|
-
border: 0.187em solid ${({ theme }) => theme.color.surface.darken(30).toString()};
|
|
52
|
-
border-top-color: ${({ theme }) => theme.color.accentPrimary.toString()};
|
|
53
|
-
border-radius: 50%;
|
|
54
|
-
animation: ${spin} 0.8s linear infinite;
|
|
55
|
-
`;
|
|
56
|
-
const LoadingIndicator = (props, ref) => (React.createElement(Container, Object.assign({}, props, { ref: ref }),
|
|
57
|
-
React.createElement(SpinLoader, null)));
|
|
58
|
-
exports.LoadingIndicator = LoadingIndicator;
|
|
59
|
-
const StaticLoadingIndicatorContainer = styled_1.default.span `
|
|
60
|
-
height: 100%;
|
|
61
|
-
flex: 1;
|
|
62
|
-
display: flex;
|
|
63
|
-
flex-direction: column;
|
|
64
|
-
text-align: center;
|
|
44
|
+
const SpinnerCircle_1 = __importStar(require("./SpinnerCircle"));
|
|
45
|
+
const LoadingOverlay_1 = __importDefault(require("./LoadingOverlay"));
|
|
46
|
+
const Container = styled_1.default.span `
|
|
65
47
|
justify-content: center;
|
|
66
48
|
align-items: center;
|
|
49
|
+
${({ $fill }) => $fill
|
|
50
|
+
? (0, react_1.css) `
|
|
51
|
+
height: 100%;
|
|
52
|
+
flex: 1;
|
|
53
|
+
display: flex;
|
|
54
|
+
flex-direction: column;
|
|
55
|
+
text-align: center;
|
|
56
|
+
`
|
|
57
|
+
: (0, react_1.css) `
|
|
58
|
+
display: inline-flex;
|
|
59
|
+
vertical-align: middle;
|
|
60
|
+
`}
|
|
67
61
|
`;
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
62
|
+
/**
|
|
63
|
+
* Inline loading spinner: takes place in the layout, e.g. inside a button, a field or a list
|
|
64
|
+
*/
|
|
65
|
+
const Spinner = (props, ref) => {
|
|
66
|
+
const { size = SpinnerCircle_1.DEFAULT_SIZE, fill = true } = props, nativeProps = __rest(props, ["size", "fill"]);
|
|
67
|
+
return (
|
|
68
|
+
// Announced by screen readers; the label can be replaced by the props
|
|
69
|
+
React.createElement(Container, Object.assign({ role: "status", "aria-label": "Loading" }, nativeProps, { "$fill": fill, ref: ref }),
|
|
70
|
+
React.createElement(SpinnerCircle_1.default, { "$size": (0, SpinnerCircle_1.toCssSize)(size) })));
|
|
71
|
+
};
|
|
72
|
+
const SpinnerWithRef = React.forwardRef(Spinner);
|
|
73
|
+
SpinnerWithRef.displayName = 'Spinner';
|
|
74
|
+
/**
|
|
75
|
+
* @deprecated Use `Spinner` instead
|
|
76
|
+
*/
|
|
77
|
+
exports.StaticLoadingIndicator = SpinnerWithRef;
|
|
78
|
+
/**
|
|
79
|
+
* @deprecated Use `LoadingOverlay` from `@via-profit/ui-kit/LoadingIndicator` instead
|
|
80
|
+
*/
|
|
81
|
+
exports.LoadingIndicator = LoadingOverlay_1.default;
|
|
82
|
+
exports.default = SpinnerWithRef;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const DEFAULT_SIZE = "2.4em";
|
|
3
|
+
export declare const toCssSize: (size: number | string) => string;
|
|
4
|
+
/**
|
|
5
|
+
* The rotating circle shared by <Spinner> and <LoadingOverlay>.
|
|
6
|
+
* A span, so the spinner can be placed inside phrasing content (e.g. a button)
|
|
7
|
+
*/
|
|
8
|
+
declare const SpinnerCircle: import("@emotion/styled").StyledComponent<{
|
|
9
|
+
theme?: import("@emotion/react").Theme | undefined;
|
|
10
|
+
as?: import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> | undefined;
|
|
11
|
+
} & {
|
|
12
|
+
readonly $size: string;
|
|
13
|
+
}, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, {}>;
|
|
14
|
+
export default SpinnerCircle;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.toCssSize = exports.DEFAULT_SIZE = void 0;
|
|
7
|
+
const styled_1 = __importDefault(require("@emotion/styled"));
|
|
8
|
+
const react_1 = require("@emotion/react");
|
|
9
|
+
// The size of the spinner before the `size` property (2em plus the ring), so nothing changes
|
|
10
|
+
exports.DEFAULT_SIZE = '2.4em';
|
|
11
|
+
const toCssSize = (size) => (typeof size === 'number' ? `${size}px` : size);
|
|
12
|
+
exports.toCssSize = toCssSize;
|
|
13
|
+
const spin = (0, react_1.keyframes) `
|
|
14
|
+
to {
|
|
15
|
+
transform: rotate(360deg);
|
|
16
|
+
}
|
|
17
|
+
`;
|
|
18
|
+
/**
|
|
19
|
+
* The rotating circle shared by <Spinner> and <LoadingOverlay>.
|
|
20
|
+
* A span, so the spinner can be placed inside phrasing content (e.g. a button)
|
|
21
|
+
*/
|
|
22
|
+
const SpinnerCircle = styled_1.default.span `
|
|
23
|
+
display: block;
|
|
24
|
+
box-sizing: border-box;
|
|
25
|
+
width: ${({ $size }) => $size};
|
|
26
|
+
height: ${({ $size }) => $size};
|
|
27
|
+
/* The ring width follows the size, so the proportions stay the same */
|
|
28
|
+
border: calc(${({ $size }) => $size} * 0.08) solid
|
|
29
|
+
${({ theme }) => theme.color.surface.darken(30).toString()};
|
|
30
|
+
border-top-color: ${({ theme }) => theme.color.accentPrimary.toString()};
|
|
31
|
+
border-radius: 50%;
|
|
32
|
+
animation: ${spin} 0.8s linear infinite;
|
|
33
|
+
`;
|
|
34
|
+
exports.default = SpinnerCircle;
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
export
|
|
3
|
-
export
|
|
1
|
+
import Spinner from './Spinner';
|
|
2
|
+
export { default as Spinner } from './Spinner';
|
|
3
|
+
export type { SpinnerProps } from './Spinner';
|
|
4
|
+
export { default as LoadingOverlay } from './LoadingOverlay';
|
|
5
|
+
export type { LoadingOverlayProps } from './LoadingOverlay';
|
|
6
|
+
export { StaticLoadingIndicator, LoadingIndicator } from './Spinner';
|
|
7
|
+
export type { StaticLoadingIndicatorProps, LoadingIndicatorProps } from './Spinner';
|
|
8
|
+
export default Spinner;
|
|
@@ -1,22 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
4
|
};
|
|
19
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.LoadingIndicator = exports.StaticLoadingIndicator = exports.LoadingOverlay = exports.Spinner = void 0;
|
|
20
7
|
const Spinner_1 = __importDefault(require("./Spinner"));
|
|
21
|
-
|
|
8
|
+
var Spinner_2 = require("./Spinner");
|
|
9
|
+
Object.defineProperty(exports, "Spinner", { enumerable: true, get: function () { return __importDefault(Spinner_2).default; } });
|
|
10
|
+
var LoadingOverlay_1 = require("./LoadingOverlay");
|
|
11
|
+
Object.defineProperty(exports, "LoadingOverlay", { enumerable: true, get: function () { return __importDefault(LoadingOverlay_1).default; } });
|
|
12
|
+
// Deprecated aliases of the previous names
|
|
13
|
+
var Spinner_3 = require("./Spinner");
|
|
14
|
+
Object.defineProperty(exports, "StaticLoadingIndicator", { enumerable: true, get: function () { return Spinner_3.StaticLoadingIndicator; } });
|
|
15
|
+
Object.defineProperty(exports, "LoadingIndicator", { enumerable: true, get: function () { return Spinner_3.LoadingIndicator; } });
|
|
22
16
|
exports.default = Spinner_1.default;
|
package/MaskedField/index.d.ts
CHANGED
|
@@ -13,9 +13,10 @@ export interface MaskedFieldProps extends Omit<TextFieldProps, 'value' | 'onChan
|
|
|
13
13
|
*/
|
|
14
14
|
readonly mask: Mask | GetMask;
|
|
15
15
|
/**
|
|
16
|
-
* Function will be called when field value was changed
|
|
16
|
+
* Function will be called when field value was changed.\
|
|
17
|
+
* `event.currentTarget.value` already contains the formatted text
|
|
17
18
|
*/
|
|
18
|
-
readonly onChange: (payload: FormatParsedPayload) => void;
|
|
19
|
+
readonly onChange: (payload: FormatParsedPayload, event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
19
20
|
/**
|
|
20
21
|
* If you are not using a simple mask, you can provide a function to analyze the input value
|
|
21
22
|
*/
|