@skbkontur/react-ui 4.0.0-beta.2 → 4.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/Button/Button.d.ts +1 -1
- package/cjs/components/Button/Button.js +4 -3
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.d.ts +1 -0
- package/cjs/components/Button/Button.styles.js +41 -31
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/DropdownMenu/DropdownMenu.d.ts +2 -2
- package/cjs/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/cjs/components/FileUploader/FileUploader.d.ts +31 -0
- package/cjs/components/FileUploader/FileUploader.js +266 -0
- package/cjs/components/FileUploader/FileUploader.js.map +1 -0
- package/cjs/components/FileUploader/FileUploader.md +67 -0
- package/cjs/components/FileUploader/FileUploader.styles.d.ts +20 -0
- package/cjs/components/FileUploader/FileUploader.styles.js +161 -0
- package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -0
- package/cjs/components/FileUploader/index.d.ts +4 -0
- package/cjs/components/FileUploader/index.js +4 -0
- package/cjs/components/FileUploader/index.js.map +1 -0
- package/cjs/components/FileUploader/locale/index.d.ts +4 -0
- package/cjs/components/FileUploader/locale/index.js +11 -0
- package/cjs/components/FileUploader/locale/index.js.map +1 -0
- package/cjs/components/FileUploader/locale/locales/en.d.ts +2 -0
- package/cjs/components/FileUploader/locale/locales/en.js +7 -0
- package/cjs/components/FileUploader/locale/locales/en.js.map +1 -0
- package/cjs/components/FileUploader/locale/locales/ru.d.ts +2 -0
- package/cjs/components/FileUploader/locale/locales/ru.js +7 -0
- package/cjs/components/FileUploader/locale/locales/ru.js.map +1 -0
- package/cjs/components/FileUploader/locale/types.d.ts +6 -0
- package/cjs/components/FileUploader/locale/types.js +1 -0
- package/cjs/components/FileUploader/locale/types.js.map +1 -0
- package/cjs/components/GlobalLoader/GlabalLoaderView.d.ts +8 -0
- package/cjs/components/GlobalLoader/GlabalLoaderView.js +44 -0
- package/cjs/components/GlobalLoader/GlabalLoaderView.js.map +1 -0
- package/cjs/components/GlobalLoader/GlobalLoader.d.ts +102 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js +260 -0
- package/cjs/components/GlobalLoader/GlobalLoader.js.map +1 -0
- package/cjs/components/GlobalLoader/GlobalLoader.md +92 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.d.ts +13 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js +130 -0
- package/cjs/components/GlobalLoader/GlobalLoaderView.styles.js.map +1 -0
- package/cjs/components/GlobalLoader/index.d.ts +1 -0
- package/cjs/components/GlobalLoader/index.js +1 -0
- package/cjs/components/GlobalLoader/index.js.map +1 -0
- package/cjs/components/Hint/Hint.d.ts +2 -1
- package/cjs/components/Hint/Hint.js +0 -16
- package/cjs/components/Hint/Hint.js.map +1 -1
- package/cjs/components/Kebab/Kebab.d.ts +2 -2
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/Link/Link.js +1 -1
- package/cjs/components/Link/Link.js.map +1 -1
- package/cjs/components/Link/Link.styles.d.ts +1 -1
- package/cjs/components/Link/Link.styles.js +3 -3
- package/cjs/components/Link/Link.styles.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.d.ts +1 -1
- package/cjs/components/MenuItem/MenuItem.js +1 -4
- package/cjs/components/MenuItem/MenuItem.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +1 -0
- package/cjs/components/Modal/Modal.styles.js +16 -8
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalFooter.js +1 -0
- package/cjs/components/Modal/ModalFooter.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +1 -0
- package/cjs/components/SidePage/SidePage.styles.js +14 -6
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageFooter.js +2 -1
- package/cjs/components/SidePage/SidePageFooter.js.map +1 -1
- package/cjs/components/Spinner/Spinner.d.ts +8 -0
- package/cjs/components/Spinner/Spinner.js +22 -3
- package/cjs/components/Spinner/Spinner.js.map +1 -1
- package/cjs/components/Spinner/Spinner.md +1 -0
- package/cjs/components/Spinner/Spinner.styles.d.ts +2 -1
- package/cjs/components/Spinner/Spinner.styles.js +14 -11
- package/cjs/components/Spinner/Spinner.styles.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.js +4 -2
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.d.ts +8 -21
- package/cjs/components/Tooltip/Tooltip.js +15 -28
- package/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/cjs/components/TooltipMenu/TooltipMenu.d.ts +2 -2
- package/cjs/components/TooltipMenu/TooltipMenu.js.map +1 -1
- package/cjs/hooks/useDrop.d.ts +11 -0
- package/cjs/hooks/useDrop.js +75 -0
- package/cjs/hooks/useDrop.js.map +1 -0
- package/cjs/hooks/useEffectWithoutInitCall.d.ts +2 -0
- package/cjs/hooks/useEffectWithoutInitCall.js +13 -0
- package/cjs/hooks/useEffectWithoutInitCall.js.map +1 -0
- package/cjs/hooks/useMemoObject.d.ts +1 -0
- package/cjs/hooks/useMemoObject.js +5 -0
- package/cjs/hooks/useMemoObject.js.map +1 -0
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +3 -1
- package/cjs/index.js.map +1 -1
- package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js +16 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js.map +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +106 -0
- package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +10 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +183 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +68 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +4 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +24 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +4 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +17 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.js +16 -0
- package/cjs/internal/FileUploaderControl/FileUploaderFileValidationResult.js.map +1 -0
- package/cjs/internal/FileUploaderControl/fileUtils.d.ts +14 -0
- package/cjs/internal/FileUploaderControl/fileUtils.js +26 -0
- package/cjs/internal/FileUploaderControl/fileUtils.js.map +1 -0
- package/cjs/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -0
- package/cjs/internal/FileUploaderControl/hooks/useControlLocale.js +4 -0
- package/cjs/internal/FileUploaderControl/hooks/useControlLocale.js.map +1 -0
- package/cjs/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -0
- package/cjs/internal/FileUploaderControl/hooks/useUpload.js +51 -0
- package/cjs/internal/FileUploaderControl/hooks/useUpload.js.map +1 -0
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -0
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js +19 -0
- package/cjs/internal/FileUploaderControl/withFileUploaderControlProvider.js.map +1 -0
- package/cjs/internal/Popup/Popup.d.ts +5 -4
- package/cjs/internal/Popup/Popup.js +13 -24
- package/cjs/internal/Popup/Popup.js.map +1 -1
- package/cjs/internal/Popup/PopupHelper.d.ts +2 -2
- package/cjs/internal/Popup/PopupHelper.js.map +1 -1
- package/cjs/internal/Popup/types.d.ts +1 -0
- package/cjs/internal/Popup/types.js +1 -0
- package/cjs/internal/Popup/types.js.map +1 -0
- package/cjs/internal/PopupMenu/PopupMenu.d.ts +3 -3
- package/cjs/internal/PopupMenu/PopupMenu.js +18 -4
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/PopupMenu/validatePositions.d.ts +2 -2
- package/cjs/internal/PopupMenu/validatePositions.js +2 -4
- package/cjs/internal/PopupMenu/validatePositions.js.map +1 -1
- package/cjs/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -0
- package/cjs/internal/TextWidthHelper/TextWidthHelper.js +34 -0
- package/cjs/internal/TextWidthHelper/TextWidthHelper.js.map +1 -0
- package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -0
- package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js +23 -0
- package/cjs/internal/TextWidthHelper/TextWidthHelper.styles.js.map +1 -0
- package/cjs/internal/ThemePlayground/Playground.d.ts +1 -0
- package/cjs/internal/ThemePlayground/Playground.js +11 -4
- package/cjs/internal/ThemePlayground/Playground.js.map +1 -1
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.d.ts +0 -2
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js +2 -8
- package/cjs/internal/ThemePlayground/ThemeContextPlayground.js.map +1 -1
- package/cjs/internal/ThemePlayground/constants.d.ts +1 -2
- package/cjs/internal/ThemePlayground/constants.js +3 -3
- package/cjs/internal/ThemePlayground/constants.js.map +1 -1
- package/cjs/internal/ThemePlayground/darkTheme.d.ts +14 -0
- package/cjs/internal/ThemePlayground/darkTheme.js +14 -0
- package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js +9 -6
- package/cjs/internal/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +4 -2
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js +37 -22
- package/cjs/internal/ThemeShowcase/ThemeShowcase.styles.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/ZIndex/ZIndexStorage.d.ts +1 -0
- package/cjs/internal/ZIndex/ZIndexStorage.js +1 -0
- package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
- package/cjs/internal/icons/16px/index.d.ts +3 -0
- package/cjs/internal/icons/16px/index.js +44 -2
- package/cjs/internal/icons/16px/index.js.map +1 -1
- package/cjs/internal/icons/SpinnerIcon.d.ts +4 -1
- package/cjs/internal/icons/SpinnerIcon.js +5 -2
- package/cjs/internal/icons/SpinnerIcon.js.map +1 -1
- package/cjs/internal/themes/DarkTheme.d.ts +34 -0
- package/cjs/internal/themes/DarkTheme.js +55 -3
- package/cjs/internal/themes/DarkTheme.js.map +1 -1
- package/cjs/internal/themes/DefaultTheme.d.ts +39 -3
- package/cjs/internal/themes/DefaultTheme.js +76 -15
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/OldColors.d.ts +6 -0
- package/cjs/internal/themes/OldColors.js +35 -17
- package/cjs/internal/themes/OldColors.js.map +1 -1
- package/cjs/lib/ModalStack.js +16 -17
- package/cjs/lib/ModalStack.js.map +1 -1
- package/cjs/lib/locale/types.d.ts +2 -0
- package/cjs/lib/locale/types.js +2 -0
- package/cjs/lib/locale/types.js.map +1 -1
- package/cjs/lib/locale/useLocaleForControl.d.ts +3 -0
- package/cjs/lib/locale/useLocaleForControl.js +14 -0
- package/cjs/lib/locale/useLocaleForControl.js.map +1 -0
- package/cjs/lib/stringUtils.d.ts +1 -0
- package/cjs/lib/stringUtils.js +13 -0
- package/cjs/lib/stringUtils.js.map +1 -0
- package/cjs/lib/theming/AnimationKeyframes.js +1 -1
- package/cjs/lib/theming/AnimationKeyframes.js.map +1 -1
- package/cjs/lib/theming/useTheme.d.ts +1 -0
- package/cjs/lib/theming/useTheme.js +7 -0
- package/cjs/lib/theming/useTheme.js.map +1 -0
- package/cjs/lib/uidUtils.d.ts +1 -0
- package/cjs/lib/uidUtils.js +5 -0
- package/cjs/lib/uidUtils.js.map +1 -0
- package/cjs/lib/utils.d.ts +33 -0
- package/cjs/lib/utils.js +81 -3
- package/cjs/lib/utils.js.map +1 -1
- package/cjs/typings/html-props.d.ts +123 -0
- package/components/Button/Button/Button.js +3 -7
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +1 -1
- package/components/Button/Button.styles/Button.styles.js +34 -31
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Button/Button.styles.d.ts +1 -0
- package/components/DropdownMenu/DropdownMenu/DropdownMenu.js.map +1 -1
- package/components/DropdownMenu/DropdownMenu.d.ts +2 -2
- package/components/FileUploader/FileUploader/FileUploader.js +258 -0
- package/components/FileUploader/FileUploader/FileUploader.js.map +1 -0
- package/components/FileUploader/FileUploader/package.json +6 -0
- package/components/FileUploader/FileUploader.d.ts +31 -0
- package/components/FileUploader/FileUploader.md +67 -0
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +59 -0
- package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -0
- package/components/FileUploader/FileUploader.styles/package.json +6 -0
- package/components/FileUploader/FileUploader.styles.d.ts +20 -0
- package/components/FileUploader/index/index.js +3 -0
- package/components/FileUploader/index/index.js.map +1 -0
- package/components/FileUploader/index/package.json +6 -0
- package/components/FileUploader/index.d.ts +4 -0
- package/components/FileUploader/locale/index/index.js +8 -0
- package/components/FileUploader/locale/index/index.js.map +1 -0
- package/components/FileUploader/locale/index/package.json +6 -0
- package/components/FileUploader/locale/index.d.ts +4 -0
- package/components/FileUploader/locale/locales/en/en.js +6 -0
- package/components/FileUploader/locale/locales/en/en.js.map +1 -0
- package/components/FileUploader/locale/locales/en/package.json +6 -0
- package/components/FileUploader/locale/locales/en.d.ts +2 -0
- package/components/FileUploader/locale/locales/ru/package.json +6 -0
- package/components/FileUploader/locale/locales/ru/ru.js +6 -0
- package/components/FileUploader/locale/locales/ru/ru.js.map +1 -0
- package/components/FileUploader/locale/locales/ru.d.ts +2 -0
- package/components/FileUploader/locale/package.json +6 -0
- package/components/FileUploader/locale/types/package.json +6 -0
- package/components/FileUploader/locale/types/types.js +1 -0
- package/components/FileUploader/locale/types/types.js.map +1 -0
- package/components/FileUploader/locale/types.d.ts +6 -0
- package/components/FileUploader/package.json +6 -0
- package/components/GlobalLoader/GlabalLoaderView/GlabalLoaderView.js +30 -0
- package/components/GlobalLoader/GlabalLoaderView/GlabalLoaderView.js.map +1 -0
- package/components/GlobalLoader/GlabalLoaderView/package.json +6 -0
- package/components/GlobalLoader/GlabalLoaderView.d.ts +8 -0
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js +225 -0
- package/components/GlobalLoader/GlobalLoader/GlobalLoader.js.map +1 -0
- package/components/GlobalLoader/GlobalLoader/package.json +6 -0
- package/components/GlobalLoader/GlobalLoader.d.ts +102 -0
- package/components/GlobalLoader/GlobalLoader.md +92 -0
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js +40 -0
- package/components/GlobalLoader/GlobalLoaderView.styles/GlobalLoaderView.styles.js.map +1 -0
- package/components/GlobalLoader/GlobalLoaderView.styles/package.json +6 -0
- package/components/GlobalLoader/GlobalLoaderView.styles.d.ts +13 -0
- package/components/GlobalLoader/index/index.js +1 -0
- package/components/GlobalLoader/index/index.js.map +1 -0
- package/components/GlobalLoader/index/package.json +6 -0
- package/components/GlobalLoader/index.d.ts +1 -0
- package/components/GlobalLoader/package.json +6 -0
- package/components/Hint/Hint/Hint.js.map +1 -1
- package/components/Hint/Hint.d.ts +2 -1
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/Kebab/Kebab.d.ts +2 -2
- package/components/Link/Link/Link.js +1 -1
- package/components/Link/Link/Link.js.map +1 -1
- package/components/Link/Link.styles/Link.styles.js +2 -2
- package/components/Link/Link.styles/Link.styles.js.map +1 -1
- package/components/Link/Link.styles.d.ts +1 -1
- package/components/MenuItem/MenuItem/MenuItem.js +2 -7
- package/components/MenuItem/MenuItem/MenuItem.js.map +1 -1
- package/components/MenuItem/MenuItem.d.ts +1 -1
- package/components/Modal/Modal.styles/Modal.styles.js +11 -8
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +1 -0
- package/components/Modal/ModalFooter/ModalFooter.js +1 -1
- package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/components/SidePage/SidePage.styles/SidePage.styles.js +9 -6
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +1 -0
- package/components/SidePage/SidePageFooter/SidePageFooter.js +1 -1
- package/components/SidePage/SidePageFooter/SidePageFooter.js.map +1 -1
- package/components/Spinner/Spinner/Spinner.js +5 -2
- package/components/Spinner/Spinner/Spinner.js.map +1 -1
- package/components/Spinner/Spinner.d.ts +8 -0
- package/components/Spinner/Spinner.md +1 -0
- package/components/Spinner/Spinner.styles/Spinner.styles.js +13 -10
- package/components/Spinner/Spinner.styles/Spinner.styles.js.map +1 -1
- package/components/Spinner/Spinner.styles.d.ts +2 -1
- package/components/Switcher/Switcher.styles/Switcher.styles.js +3 -1
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Tooltip/Tooltip/Tooltip.js +3 -3
- package/components/Tooltip/Tooltip/Tooltip.js.map +1 -1
- package/components/Tooltip/Tooltip.d.ts +8 -21
- package/components/TooltipMenu/TooltipMenu/TooltipMenu.js.map +1 -1
- package/components/TooltipMenu/TooltipMenu.d.ts +2 -2
- package/hooks/useDrop/package.json +6 -0
- package/hooks/useDrop/useDrop.js +57 -0
- package/hooks/useDrop/useDrop.js.map +1 -0
- package/hooks/useDrop.d.ts +11 -0
- package/hooks/useEffectWithoutInitCall/package.json +6 -0
- package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js +11 -0
- package/hooks/useEffectWithoutInitCall/useEffectWithoutInitCall.js.map +1 -0
- package/hooks/useEffectWithoutInitCall.d.ts +2 -0
- package/hooks/useMemoObject/package.json +6 -0
- package/hooks/useMemoObject/useMemoObject.js +6 -0
- package/hooks/useMemoObject/useMemoObject.js.map +1 -0
- package/hooks/useMemoObject.d.ts +1 -0
- package/index.d.ts +2 -0
- package/index.js +3 -1
- package/index.js.map +1 -1
- package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js +2 -0
- package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js.map +1 -0
- package/internal/FileUploaderControl/FileUploaderControlContext/package.json +6 -0
- package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +12 -0
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +85 -0
- package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -0
- package/internal/FileUploaderControl/FileUploaderControlProvider/package.json +6 -0
- package/internal/FileUploaderControl/FileUploaderControlProvider.d.ts +14 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +177 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/package.json +6 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +10 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +32 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/package.json +6 -0
- package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +11 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +23 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/package.json +6 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +4 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +11 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/package.json +6 -0
- package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +4 -0
- package/internal/FileUploaderControl/FileUploaderFileValidationResult/FileUploaderFileValidationResult.js +16 -0
- package/internal/FileUploaderControl/FileUploaderFileValidationResult/FileUploaderFileValidationResult.js.map +1 -0
- package/internal/FileUploaderControl/FileUploaderFileValidationResult/package.json +6 -0
- package/internal/FileUploaderControl/FileUploaderFileValidationResult.d.ts +7 -0
- package/internal/FileUploaderControl/fileUtils/fileUtils.js +19 -0
- package/internal/FileUploaderControl/fileUtils/fileUtils.js.map +1 -0
- package/internal/FileUploaderControl/fileUtils/package.json +6 -0
- package/internal/FileUploaderControl/fileUtils.d.ts +14 -0
- package/internal/FileUploaderControl/hooks/useControlLocale/package.json +6 -0
- package/internal/FileUploaderControl/hooks/useControlLocale/useControlLocale.js +5 -0
- package/internal/FileUploaderControl/hooks/useControlLocale/useControlLocale.js.map +1 -0
- package/internal/FileUploaderControl/hooks/useControlLocale.d.ts +1 -0
- package/internal/FileUploaderControl/hooks/useUpload/package.json +6 -0
- package/internal/FileUploaderControl/hooks/useUpload/useUpload.js +56 -0
- package/internal/FileUploaderControl/hooks/useUpload/useUpload.js.map +1 -0
- package/internal/FileUploaderControl/hooks/useUpload.d.ts +3 -0
- package/internal/FileUploaderControl/withFileUploaderControlProvider/package.json +6 -0
- package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js +17 -0
- package/internal/FileUploaderControl/withFileUploaderControlProvider/withFileUploaderControlProvider.js.map +1 -0
- package/internal/FileUploaderControl/withFileUploaderControlProvider.d.ts +3 -0
- package/internal/Popup/Popup/Popup.js +3 -2
- package/internal/Popup/Popup/Popup.js.map +1 -1
- package/internal/Popup/Popup.d.ts +5 -4
- package/internal/Popup/PopupHelper/PopupHelper.js.map +1 -1
- package/internal/Popup/PopupHelper.d.ts +2 -2
- package/internal/Popup/types/package.json +6 -0
- package/internal/Popup/types/types.js +1 -0
- package/internal/Popup/types/types.js.map +1 -0
- package/internal/Popup/types.d.ts +1 -0
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +4 -4
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/PopupMenu/PopupMenu.d.ts +3 -3
- package/internal/PopupMenu/validatePositions/validatePositions.js +2 -2
- package/internal/PopupMenu/validatePositions/validatePositions.js.map +1 -1
- package/internal/PopupMenu/validatePositions.d.ts +2 -2
- package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js +51 -0
- package/internal/TextWidthHelper/TextWidthHelper/TextWidthHelper.js.map +1 -0
- package/internal/TextWidthHelper/TextWidthHelper/package.json +6 -0
- package/internal/TextWidthHelper/TextWidthHelper.d.ts +15 -0
- package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js +14 -0
- package/internal/TextWidthHelper/TextWidthHelper.styles/TextWidthHelper.styles.js.map +1 -0
- package/internal/TextWidthHelper/TextWidthHelper.styles/package.json +6 -0
- package/internal/TextWidthHelper/TextWidthHelper.styles.d.ts +4 -0
- package/internal/ThemePlayground/Playground/Playground.js +13 -8
- package/internal/ThemePlayground/Playground/Playground.js.map +1 -1
- package/internal/ThemePlayground/Playground.d.ts +1 -0
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js +0 -6
- package/internal/ThemePlayground/ThemeContextPlayground/ThemeContextPlayground.js.map +1 -1
- package/internal/ThemePlayground/ThemeContextPlayground.d.ts +0 -2
- package/internal/ThemePlayground/constants/constants.js +3 -1
- package/internal/ThemePlayground/constants/constants.js.map +1 -1
- package/internal/ThemePlayground/constants.d.ts +1 -2
- package/internal/ThemePlayground/darkTheme/darkTheme.js +14 -0
- package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
- package/internal/ThemePlayground/darkTheme.d.ts +14 -0
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js +7 -5
- package/internal/ThemeShowcase/ThemeShowcase/ThemeShowcase.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js +26 -20
- package/internal/ThemeShowcase/ThemeShowcase.styles/ThemeShowcase.styles.js.map +1 -1
- package/internal/ThemeShowcase/ThemeShowcase.styles.d.ts +4 -2
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +1 -0
- package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
- package/internal/ZIndex/ZIndexStorage.d.ts +1 -0
- package/internal/icons/16px/index/index.js +42 -0
- package/internal/icons/16px/index/index.js.map +1 -1
- package/internal/icons/16px/index.d.ts +3 -0
- package/internal/icons/SpinnerIcon/SpinnerIcon.js +5 -2
- package/internal/icons/SpinnerIcon/SpinnerIcon.js.map +1 -1
- package/internal/icons/SpinnerIcon.d.ts +4 -1
- package/internal/themes/DarkTheme/DarkTheme.js +65 -3
- package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
- package/internal/themes/DarkTheme.d.ts +34 -0
- package/internal/themes/DefaultTheme/DefaultTheme.js +104 -20
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +39 -3
- package/internal/themes/OldColors/OldColors.js +31 -19
- package/internal/themes/OldColors/OldColors.js.map +1 -1
- package/internal/themes/OldColors.d.ts +6 -0
- package/lib/ModalStack/ModalStack.js +9 -13
- package/lib/ModalStack/ModalStack.js.map +1 -1
- package/lib/locale/types/types.js.map +1 -1
- package/lib/locale/types.d.ts +2 -0
- package/lib/locale/useLocaleForControl/package.json +6 -0
- package/lib/locale/useLocaleForControl/useLocaleForControl.js +12 -0
- package/lib/locale/useLocaleForControl/useLocaleForControl.js.map +1 -0
- package/lib/locale/useLocaleForControl.d.ts +3 -0
- package/lib/stringUtils/package.json +6 -0
- package/lib/stringUtils/stringUtils.js +12 -0
- package/lib/stringUtils/stringUtils.js.map +1 -0
- package/lib/stringUtils.d.ts +1 -0
- package/lib/theming/AnimationKeyframes/AnimationKeyframes.js +1 -1
- package/lib/theming/AnimationKeyframes/AnimationKeyframes.js.map +1 -1
- package/lib/theming/useTheme/package.json +6 -0
- package/lib/theming/useTheme/useTheme.js +5 -0
- package/lib/theming/useTheme/useTheme.js.map +1 -0
- package/lib/theming/useTheme.d.ts +1 -0
- package/lib/uidUtils/package.json +6 -0
- package/lib/uidUtils/uidUtils.js +4 -0
- package/lib/uidUtils/uidUtils.js.map +1 -0
- package/lib/uidUtils.d.ts +1 -0
- package/lib/utils/utils.js +84 -0
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +33 -0
- package/package.json +4 -1
- package/typings/html-props.d.ts +123 -0
- package/cjs/internal/PopupMenu/PopupMenuPositions.d.ts +0 -2
- package/cjs/internal/PopupMenu/PopupMenuPositions.js +0 -15
- package/cjs/internal/PopupMenu/PopupMenuPositions.js.map +0 -1
- package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js +0 -1
- package/internal/PopupMenu/PopupMenuPositions/PopupMenuPositions.js.map +0 -1
- package/internal/PopupMenu/PopupMenuPositions/package.json +0 -6
- package/internal/PopupMenu/PopupMenuPositions.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Button.styles.ts"],"names":["globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","caption","innerShadow","styles","root","t","css","btnBackgroundClip","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","btnBorderWidth","btnDisabledBorderColor","btnDisabledBg","btnDisabledTextColor","arrowWarning","arrowError","arrowFocus","arrow","isFirefox","arrowLeft","default","btnDefaultBg","btnDefaultBgStart","btnDefaultBgEnd","btnDefaultTextColor","btnDefaultBorderColor","btnDefaultBorderBottomColor","btnDefaultHoverBg","btnDefaultHoverBgStart","btnDefaultHoverBgEnd","btnDefaultHoverBorderColor","btnDefaultHoverBorderBottomColor","primary","btnPrimaryBg","btnPrimaryBgStart","btnPrimaryBgEnd","btnPrimaryTextColor","btnPrimaryBorderColor","btnPrimaryBorderBottomColor","btnPrimaryHoverBg","btnPrimaryHoverBgStart","btnPrimaryHoverBgEnd","btnPrimaryHoverBorderColor","btnPrimaryHoverBorderBottomColor","success","btnSuccessBg","btnSuccessBgStart","btnSuccessBgEnd","btnSuccessTextColor","btnSuccessBorderColor","btnSuccessBorderBottomColor","btnSuccessHoverBg","btnSuccessHoverBgStart","btnSuccessHoverBgEnd","btnSuccessHoverBorderColor","btnSuccessHoverBorderBottomColor","danger","btnDangerBg","btnDangerBgStart","btnDangerBgEnd","btnDangerTextColor","btnDangerBorderColor","btnDangerBorderBottomColor","btnDangerHoverBg","btnDangerHoverBgStart","btnDangerHoverBgEnd","btnDangerHoverBorderColor","btnDangerHoverBorderBottomColor","pay","btnPayBg","btnPayBgStart","btnPayBgEnd","btnPayTextColor","btnPayBorderColor","btnPayBorderBottomColor","btnPayHoverBg","btnPayHoverBgStart","btnPayHoverBgEnd","btnPayHoverBorderColor","btnPayHoverBorderBottomColor","checked","checkedStyles","btnDefaultCheckedBorderColor","btnCheckedBg","btnCheckedTextColor","btnCheckedShadow","btnArrowBgImageChecked","checkedDisabled","btnCheckedDisabledBorderColor","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledShadow","captionLink","captionTranslated","captionDisabled","wrap","wrapSmall","btnHeightSmall","wrapMedium","btnHeightMedium","wrapLarge","btnHeightLarge","narrow","noPadding","noRightPadding","iconNoRightPadding","iconLink","btnLinkIconMarginRight","wrapLink","wrapArrow","wrapArrowLeft","icon","iconSmall","btnIconSizeSmall","btnIconGapSmall","iconMedium","btnIconSizeMedium","btnIconGapMedium","iconLarge","btnIconSizeLarge","btnIconGapLarge","borderless","loading","visibilityHidden","btnDefaultActiveBg","btnDefaultActiveShadow","btnDefaultActiveBorderColor","btnDefaultActiveBorderTopColor","btnArrowBgImageActive","btnPrimaryActiveBg","btnPrimaryActiveShadow","btnPrimaryActiveBorderColor","btnPrimaryActiveBorderTopColor","btnSuccessActiveBg","btnSuccessActiveShadow","btnSuccessActiveBorderColor","btnSuccessActiveBorderTopColor","btnDangerActiveBg","btnDangerActiveShadow","btnDangerActiveBorderColor","btnDangerActiveBorderTopColor","btnPayActiveBg","btnPayActiveShadow","btnPayActiveBorderColor","btnPayActiveBorderTopColor","linkActiveColor"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\nimport { resetButton, resetText } from '../../lib/styles/Mixins';\nimport { isFirefox } from '../../lib/client';\n\nimport {\n buttonUseMixin,\n buttonHoverMixin,\n buttonActiveMixin,\n buttonSizeMixin,\n arrowOutlineMixin,\n buttonSizeMixinIE11,\n} from './Button.mixins';\n\nexport const globalClasses = prefix('button')({\n arrowHelper: 'arrow-helper',\n arrowHelperTop: 'arrow-helper-top',\n arrowHelperBottom: 'arrow-helper-bottom',\n caption: 'caption',\n innerShadow: 'inner-shadow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n ${resetButton()};\n ${resetText()};\n\n background-clip: ${t.btnBackgroundClip};\n background-position: center;\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n display: inline-block;\n position: relative;\n text-align: center;\n width: 100%;\n height: 100%; // fix height in ie11\n\n .${globalClasses.innerShadow} {\n content: '';\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n &::after {\n content: '';\n display: inline-block;\n vertical-align: baseline;\n width: 0;\n }\n\n &:active .${globalClasses.caption} {\n transform: translateY(1px);\n }\n `;\n },\n\n outline() {\n return css`\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n `;\n },\n\n outlineWarning(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorWarning},\n inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineError(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorError}, inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineLink() {\n return css`\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n `;\n },\n\n outlineLinkWarning(t: Theme) {\n return css`\n background-color: ${t.btnWarningSecondary};\n `;\n },\n\n outlineLinkError(t: Theme) {\n return css`\n background-color: ${t.btnErrorSecondary};\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusSmall};\n\n ${buttonSizeMixin(\n t.btnFontSizeSmall,\n t.btnLineHeightSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeSmallIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusMedium};\n\n ${buttonSizeMixin(\n t.btnFontSizeMedium,\n t.btnLineHeightMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMediumIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusLarge};\n\n ${buttonSizeMixin(\n t.btnFontSizeLarge,\n t.btnLineHeightLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLargeIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n link(t: Theme) {\n return css`\n background: none;\n border-radius: ${t.btnLinkBorderRadius};\n border: none;\n box-shadow: none;\n white-space: nowrap;\n color: ${t.btnLinkColor};\n display: inline;\n line-height: inherit !important; // override size mixin\n margin: 0;\n padding: 0 !important; // override size mixin\n height: auto !important; // override size mixin\n\n &:hover {\n color: ${t.btnLinkHoverColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n }\n &:active {\n ${activeStyles.link(t)}\n }\n `;\n },\n\n linkFocus(t: Theme) {\n return css`\n color: ${t.btnLinkColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n `;\n },\n\n linkDisabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n\n &,\n &:hover,\n &:active {\n color: ${t.btnLinkDisabledColor};\n }\n `;\n },\n\n focus(t: Theme) {\n return css`\n position: relative;\n z-index: 2;\n\n &,\n &:hover,\n &:active,\n &:active:hover {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 0 ${t.btnDisabledBorderColor};\n }\n `;\n },\n\n arrowWarning(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorWarning, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowError(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorError, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowFocus(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorFocus, t.btnOutlineWidth, t.btnOutlineColorFocus)}\n `;\n },\n\n arrow() {\n return css`\n background: inherit;\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n\n .${globalClasses.arrowHelper} {\n width: 100%;\n height: 50%;\n position: absolute;\n left: 0;\n background: inherit;\n background-size: 200% 200%;\n border-radius: inherit;\n background-clip: padding-box;\n\n // fix ugly arrow edge\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background: inherit;\n border-radius: inherit;\n transform: translateX(${isFirefox ? `0.2px` : `0.3px`});\n }\n }\n\n .${globalClasses.arrowHelperTop} {\n top: 0;\n transform: skewX(30deg);\n transform-origin: top;\n background-position-y: top;\n border-bottom-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n bottom: -1px;\n }\n }\n\n .${globalClasses.arrowHelperBottom} {\n bottom: 0;\n transform: skewX(-30deg);\n transform-origin: bottom;\n background-position-y: bottom;\n border-top-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n top: -1px;\n }\n }\n `;\n },\n\n arrowLeft() {\n return css`\n transform: scaleX(-1);\n `;\n },\n\n default(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDefaultBg,\n t.btnDefaultBgStart,\n t.btnDefaultBgEnd,\n t.btnDefaultTextColor,\n t.btnDefaultBorderColor,\n t.btnDefaultBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDefaultHoverBg,\n t.btnDefaultHoverBgStart,\n t.btnDefaultHoverBgEnd,\n t.btnDefaultHoverBorderColor,\n t.btnDefaultHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.default(t)}\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPrimaryBg,\n t.btnPrimaryBgStart,\n t.btnPrimaryBgEnd,\n t.btnPrimaryTextColor,\n t.btnPrimaryBorderColor,\n t.btnPrimaryBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPrimaryHoverBg,\n t.btnPrimaryHoverBgStart,\n t.btnPrimaryHoverBgEnd,\n t.btnPrimaryHoverBorderColor,\n t.btnPrimaryHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.primary(t)}\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnSuccessBg,\n t.btnSuccessBgStart,\n t.btnSuccessBgEnd,\n t.btnSuccessTextColor,\n t.btnSuccessBorderColor,\n t.btnSuccessBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnSuccessHoverBg,\n t.btnSuccessHoverBgStart,\n t.btnSuccessHoverBgEnd,\n t.btnSuccessHoverBorderColor,\n t.btnSuccessHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.success(t)}\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDangerBg,\n t.btnDangerBgStart,\n t.btnDangerBgEnd,\n t.btnDangerTextColor,\n t.btnDangerBorderColor,\n t.btnDangerBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDangerHoverBg,\n t.btnDangerHoverBgStart,\n t.btnDangerHoverBgEnd,\n t.btnDangerHoverBorderColor,\n t.btnDangerHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.danger(t)}\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPayBg,\n t.btnPayBgStart,\n t.btnPayBgEnd,\n t.btnPayTextColor,\n t.btnPayBorderColor,\n t.btnPayBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPayHoverBg,\n t.btnPayHoverBgStart,\n t.btnPayHoverBgEnd,\n t.btnPayHoverBorderColor,\n t.btnPayHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.pay(t)}\n }\n `;\n },\n\n checked(t: Theme) {\n const checkedStyles = `\n background-image: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDefaultCheckedBorderColor};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnDefaultCheckedBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: ${t.btnArrowBgImageChecked};\n }\n }\n `;\n\n return css`\n ${checkedStyles}\n\n &:hover,\n &:active,\n &:hover:active {\n ${checkedStyles}\n }\n `;\n },\n\n checkedDisabled(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnCheckedDisabledBorderColor};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedDisabledShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnCheckedDisabledBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: none;\n }\n }\n `;\n },\n\n caption() {\n return css`\n position: relative;\n white-space: nowrap;\n display: inline-block;\n width: 100%;\n vertical-align: top;\n `;\n },\n\n captionLink() {\n return css`\n display: inline;\n transform: none !important; // override root:active style\n `;\n },\n\n captionTranslated() {\n return css`\n transform: translateY(1px);\n `;\n },\n\n captionDisabled() {\n return css`\n transform: none !important; // override root:active style\n `;\n },\n\n wrap(t: Theme) {\n return css`\n box-sizing: border-box;\n display: inline-block;\n line-height: normal;\n padding: ${t.btnBorderWidth};\n `;\n },\n\n wrapSmall(t: Theme) {\n return css`\n height: ${t.btnHeightSmall};\n `;\n },\n\n wrapMedium(t: Theme) {\n return css`\n height: ${t.btnHeightMedium};\n `;\n },\n\n wrapLarge(t: Theme) {\n return css`\n height: ${t.btnHeightLarge};\n `;\n },\n\n narrow() {\n return css`\n padding-left: 5px;\n padding-right: 5px;\n `;\n },\n\n noPadding() {\n return css`\n padding-left: 0;\n padding-right: 0;\n `;\n },\n\n noRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconNoRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconLink(t: Theme) {\n return css`\n padding-right: ${t.btnLinkIconMarginRight};\n `;\n },\n\n wrapLink() {\n return css`\n padding: 0;\n `;\n },\n\n wrapArrow() {\n return css`\n margin-right: 10px;\n `;\n },\n\n wrapArrowLeft() {\n return css`\n margin-right: 0;\n margin-left: 10px;\n `;\n },\n\n icon() {\n return css`\n display: inline-block;\n `;\n },\n iconSmall(t: Theme) {\n return css`\n width: ${t.btnIconSizeSmall};\n padding-right: ${t.btnIconGapSmall};\n `;\n },\n iconMedium(t: Theme) {\n return css`\n width: ${t.btnIconSizeMedium};\n padding-right: ${t.btnIconGapMedium};\n `;\n },\n iconLarge(t: Theme) {\n return css`\n width: ${t.btnIconSizeLarge};\n padding-right: ${t.btnIconGapLarge};\n `;\n },\n\n borderless() {\n return css`\n &,\n &:hover,\n &:active {\n box-shadow: none;\n .${globalClasses.arrowHelperTop}, .${globalClasses.arrowHelperBottom} {\n box-shadow: none;\n }\n }\n `;\n },\n\n loading() {\n return css`\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: inherit;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10;\n `;\n },\n\n visibilityHidden() {\n return css`\n visibility: hidden;\n `;\n },\n});\n\nexport const activeStyles = memoizeStyle({\n default(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDefaultActiveBg,\n t.btnDefaultActiveShadow,\n t.btnDefaultActiveBorderColor,\n t.btnDefaultActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPrimaryActiveBg,\n t.btnPrimaryActiveShadow,\n t.btnPrimaryActiveBorderColor,\n t.btnPrimaryActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnSuccessActiveBg,\n t.btnSuccessActiveShadow,\n t.btnSuccessActiveBorderColor,\n t.btnSuccessActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDangerActiveBg,\n t.btnDangerActiveShadow,\n t.btnDangerActiveBorderColor,\n t.btnDangerActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPayActiveBg,\n t.btnPayActiveShadow,\n t.btnPayActiveBorderColor,\n t.btnPayActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n link(t: Theme) {\n return css`\n &,\n &:hover {\n color: ${t.linkActiveColor};\n }\n `;\n },\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["Button.styles.ts"],"names":["globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","caption","innerShadow","styles","root","t","css","btnBackgroundClip","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","btnBorderWidth","btnDisabledBorderColor","btnDisabledBg","btnDisabledTextColor","arrowWarning","arrowError","arrowFocus","arrow","isFirefox","arrowLeft","default","btnDefaultBg","btnDefaultBgStart","btnDefaultBgEnd","btnDefaultTextColor","btnDefaultBorderColor","btnDefaultBorderBottomColor","btnDefaultHoverBg","btnDefaultHoverBgStart","btnDefaultHoverBgEnd","btnDefaultHoverBorderColor","btnDefaultHoverBorderBottomColor","primary","btnPrimaryBg","btnPrimaryBgStart","btnPrimaryBgEnd","btnPrimaryTextColor","btnPrimaryBorderColor","btnPrimaryBorderBottomColor","btnPrimaryHoverBg","btnPrimaryHoverBgStart","btnPrimaryHoverBgEnd","btnPrimaryHoverBorderColor","btnPrimaryHoverBorderBottomColor","success","btnSuccessBg","btnSuccessBgStart","btnSuccessBgEnd","btnSuccessTextColor","btnSuccessBorderColor","btnSuccessBorderBottomColor","btnSuccessHoverBg","btnSuccessHoverBgStart","btnSuccessHoverBgEnd","btnSuccessHoverBorderColor","btnSuccessHoverBorderBottomColor","danger","btnDangerBg","btnDangerBgStart","btnDangerBgEnd","btnDangerTextColor","btnDangerBorderColor","btnDangerBorderBottomColor","btnDangerHoverBg","btnDangerHoverBgStart","btnDangerHoverBgEnd","btnDangerHoverBorderColor","btnDangerHoverBorderBottomColor","pay","btnPayBg","btnPayBgStart","btnPayBgEnd","btnPayTextColor","btnPayBorderColor","btnPayBorderBottomColor","btnPayHoverBg","btnPayHoverBgStart","btnPayHoverBgEnd","btnPayHoverBorderColor","btnPayHoverBorderBottomColor","checked","checkedStyles","btnDefaultCheckedBorderColor","btnCheckedBg","btnCheckedTextColor","btnCheckedShadow","btnArrowBgImageChecked","checkedFocused","checkedDisabled","btnCheckedDisabledBorderColor","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledShadow","captionLink","captionTranslated","captionDisabled","wrap","wrapSmall","btnHeightSmall","wrapMedium","btnHeightMedium","wrapLarge","btnHeightLarge","narrow","noPadding","noRightPadding","iconNoRightPadding","iconLink","btnLinkIconMarginRight","wrapLink","wrapArrow","wrapArrowLeft","icon","iconSmall","btnIconSizeSmall","btnIconGapSmall","iconMedium","btnIconSizeMedium","btnIconGapMedium","iconLarge","btnIconSizeLarge","btnIconGapLarge","borderless","loading","visibilityHidden","btnDefaultActiveBg","btnDefaultActiveShadow","btnDefaultActiveBorderColor","btnDefaultActiveBorderTopColor","btnArrowBgImageActive","btnPrimaryActiveBg","btnPrimaryActiveShadow","btnPrimaryActiveBorderColor","btnPrimaryActiveBorderTopColor","btnSuccessActiveBg","btnSuccessActiveShadow","btnSuccessActiveBorderColor","btnSuccessActiveBorderTopColor","btnDangerActiveBg","btnDangerActiveShadow","btnDangerActiveBorderColor","btnDangerActiveBorderTopColor","btnPayActiveBg","btnPayActiveShadow","btnPayActiveBorderColor","btnPayActiveBorderTopColor","linkActiveColor"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\nimport { resetButton, resetText } from '../../lib/styles/Mixins';\nimport { isFirefox } from '../../lib/client';\n\nimport {\n buttonUseMixin,\n buttonHoverMixin,\n buttonActiveMixin,\n buttonSizeMixin,\n arrowOutlineMixin,\n buttonSizeMixinIE11,\n} from './Button.mixins';\n\nexport const globalClasses = prefix('button')({\n arrowHelper: 'arrow-helper',\n arrowHelperTop: 'arrow-helper-top',\n arrowHelperBottom: 'arrow-helper-bottom',\n caption: 'caption',\n innerShadow: 'inner-shadow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n ${resetButton()};\n ${resetText()};\n\n background-clip: ${t.btnBackgroundClip};\n background-position: center;\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n display: inline-block;\n position: relative;\n text-align: center;\n width: 100%;\n height: 100%; // fix height in ie11\n\n .${globalClasses.innerShadow} {\n content: '';\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n &::after {\n content: '';\n display: inline-block;\n vertical-align: baseline;\n width: 0;\n }\n\n &:active .${globalClasses.caption} {\n transform: translateY(1px);\n }\n `;\n },\n\n outline() {\n return css`\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n `;\n },\n\n outlineWarning(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorWarning},\n inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineError(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorError}, inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineLink() {\n return css`\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n `;\n },\n\n outlineLinkWarning(t: Theme) {\n return css`\n background-color: ${t.btnWarningSecondary};\n `;\n },\n\n outlineLinkError(t: Theme) {\n return css`\n background-color: ${t.btnErrorSecondary};\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusSmall};\n\n ${buttonSizeMixin(\n t.btnFontSizeSmall,\n t.btnLineHeightSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeSmallIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusMedium};\n\n ${buttonSizeMixin(\n t.btnFontSizeMedium,\n t.btnLineHeightMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMediumIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusLarge};\n\n ${buttonSizeMixin(\n t.btnFontSizeLarge,\n t.btnLineHeightLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLargeIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n link(t: Theme) {\n return css`\n background: none;\n border-radius: ${t.btnLinkBorderRadius};\n border: none;\n box-shadow: none;\n white-space: nowrap;\n color: ${t.btnLinkColor};\n display: inline;\n line-height: inherit !important; // override size mixin\n margin: 0;\n padding: 0 !important; // override size mixin\n height: auto !important; // override size mixin\n\n &:hover {\n color: ${t.btnLinkHoverColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n }\n &:active {\n ${activeStyles.link(t)}\n }\n `;\n },\n\n linkFocus(t: Theme) {\n return css`\n color: ${t.btnLinkColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n `;\n },\n\n linkDisabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n\n &,\n &:hover,\n &:active {\n color: ${t.btnLinkDisabledColor};\n }\n `;\n },\n\n focus(t: Theme) {\n return css`\n position: relative;\n z-index: 2;\n\n &,\n &:hover,\n &:active,\n &:active:hover {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 0 ${t.btnDisabledBorderColor};\n }\n `;\n },\n\n arrowWarning(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorWarning, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowError(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorError, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowFocus(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorFocus, t.btnOutlineWidth, t.btnOutlineColorFocus)}\n `;\n },\n\n arrow() {\n return css`\n background: inherit;\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n\n .${globalClasses.arrowHelper} {\n width: 100%;\n height: 50%;\n position: absolute;\n left: 0;\n background: inherit;\n background-size: 200% 200%;\n border-radius: inherit;\n background-clip: padding-box;\n\n // fix ugly arrow edge\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background: inherit;\n border-radius: inherit;\n transform: translateX(${isFirefox ? `0.2px` : `0.3px`});\n }\n }\n\n .${globalClasses.arrowHelperTop} {\n top: 0;\n transform: skewX(30deg);\n transform-origin: top;\n background-position-y: top;\n border-bottom-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n bottom: -1px;\n }\n }\n\n .${globalClasses.arrowHelperBottom} {\n bottom: 0;\n transform: skewX(-30deg);\n transform-origin: bottom;\n background-position-y: bottom;\n border-top-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n top: -1px;\n }\n }\n `;\n },\n\n arrowLeft() {\n return css`\n transform: scaleX(-1);\n `;\n },\n\n default(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDefaultBg,\n t.btnDefaultBgStart,\n t.btnDefaultBgEnd,\n t.btnDefaultTextColor,\n t.btnDefaultBorderColor,\n t.btnDefaultBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDefaultHoverBg,\n t.btnDefaultHoverBgStart,\n t.btnDefaultHoverBgEnd,\n t.btnDefaultHoverBorderColor,\n t.btnDefaultHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.default(t)}\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPrimaryBg,\n t.btnPrimaryBgStart,\n t.btnPrimaryBgEnd,\n t.btnPrimaryTextColor,\n t.btnPrimaryBorderColor,\n t.btnPrimaryBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPrimaryHoverBg,\n t.btnPrimaryHoverBgStart,\n t.btnPrimaryHoverBgEnd,\n t.btnPrimaryHoverBorderColor,\n t.btnPrimaryHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.primary(t)}\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnSuccessBg,\n t.btnSuccessBgStart,\n t.btnSuccessBgEnd,\n t.btnSuccessTextColor,\n t.btnSuccessBorderColor,\n t.btnSuccessBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnSuccessHoverBg,\n t.btnSuccessHoverBgStart,\n t.btnSuccessHoverBgEnd,\n t.btnSuccessHoverBorderColor,\n t.btnSuccessHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.success(t)}\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDangerBg,\n t.btnDangerBgStart,\n t.btnDangerBgEnd,\n t.btnDangerTextColor,\n t.btnDangerBorderColor,\n t.btnDangerBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDangerHoverBg,\n t.btnDangerHoverBgStart,\n t.btnDangerHoverBgEnd,\n t.btnDangerHoverBorderColor,\n t.btnDangerHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.danger(t)}\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPayBg,\n t.btnPayBgStart,\n t.btnPayBgEnd,\n t.btnPayTextColor,\n t.btnPayBorderColor,\n t.btnPayBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPayHoverBg,\n t.btnPayHoverBgStart,\n t.btnPayHoverBgEnd,\n t.btnPayHoverBorderColor,\n t.btnPayHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active {\n ${activeStyles.pay(t)}\n }\n `;\n },\n\n checked(t: Theme) {\n const checkedStyles = `\n background-image: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDefaultCheckedBorderColor};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnDefaultCheckedBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: ${t.btnArrowBgImageChecked};\n }\n }\n `;\n\n return css`\n ${checkedStyles}\n\n &:hover,\n &:active,\n &:hover:active {\n ${checkedStyles}\n }\n `;\n },\n\n checkedFocused(t: Theme) {\n return css`\n &:hover {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n border-color: ${t.btnBorderColorFocus};\n }\n `;\n },\n\n checkedDisabled(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnCheckedDisabledBorderColor};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedDisabledShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnCheckedDisabledBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: none;\n }\n }\n `;\n },\n\n caption() {\n return css`\n position: relative;\n white-space: nowrap;\n display: inline-block;\n width: 100%;\n vertical-align: top;\n `;\n },\n\n captionLink() {\n return css`\n display: inline;\n transform: none !important; // override root:active style\n `;\n },\n\n captionTranslated() {\n return css`\n transform: translateY(1px);\n `;\n },\n\n captionDisabled() {\n return css`\n transform: none !important; // override root:active style\n `;\n },\n\n wrap(t: Theme) {\n return css`\n box-sizing: border-box;\n display: inline-block;\n line-height: normal;\n padding: ${t.btnBorderWidth};\n `;\n },\n\n wrapSmall(t: Theme) {\n return css`\n height: ${t.btnHeightSmall};\n `;\n },\n\n wrapMedium(t: Theme) {\n return css`\n height: ${t.btnHeightMedium};\n `;\n },\n\n wrapLarge(t: Theme) {\n return css`\n height: ${t.btnHeightLarge};\n `;\n },\n\n narrow() {\n return css`\n padding-left: 5px;\n padding-right: 5px;\n `;\n },\n\n noPadding() {\n return css`\n padding-left: 0;\n padding-right: 0;\n `;\n },\n\n noRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconNoRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconLink(t: Theme) {\n return css`\n padding-right: ${t.btnLinkIconMarginRight};\n `;\n },\n\n wrapLink() {\n return css`\n padding: 0;\n `;\n },\n\n wrapArrow() {\n return css`\n margin-right: 10px;\n `;\n },\n\n wrapArrowLeft() {\n return css`\n margin-right: 0;\n margin-left: 10px;\n `;\n },\n\n icon() {\n return css`\n display: inline-block;\n `;\n },\n iconSmall(t: Theme) {\n return css`\n width: ${t.btnIconSizeSmall};\n padding-right: ${t.btnIconGapSmall};\n `;\n },\n iconMedium(t: Theme) {\n return css`\n width: ${t.btnIconSizeMedium};\n padding-right: ${t.btnIconGapMedium};\n `;\n },\n iconLarge(t: Theme) {\n return css`\n width: ${t.btnIconSizeLarge};\n padding-right: ${t.btnIconGapLarge};\n `;\n },\n\n borderless() {\n return css`\n &,\n &:hover,\n &:active {\n box-shadow: none;\n .${globalClasses.arrowHelperTop}, .${globalClasses.arrowHelperBottom} {\n box-shadow: none;\n }\n }\n `;\n },\n\n loading() {\n return css`\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: inherit;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10;\n `;\n },\n\n visibilityHidden() {\n return css`\n visibility: hidden;\n `;\n },\n});\n\nexport const activeStyles = memoizeStyle({\n default(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDefaultActiveBg,\n t.btnDefaultActiveShadow,\n t.btnDefaultActiveBorderColor,\n t.btnDefaultActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPrimaryActiveBg,\n t.btnPrimaryActiveShadow,\n t.btnPrimaryActiveBorderColor,\n t.btnPrimaryActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnSuccessActiveBg,\n t.btnSuccessActiveShadow,\n t.btnSuccessActiveBorderColor,\n t.btnSuccessActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnDangerActiveBg,\n t.btnDangerActiveShadow,\n t.btnDangerActiveBorderColor,\n t.btnDangerActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n &,\n &:hover {\n ${buttonActiveMixin(\n t.btnPayActiveBg,\n t.btnPayActiveShadow,\n t.btnPayActiveBorderColor,\n t.btnPayActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n link(t: Theme) {\n return css`\n &,\n &:hover {\n color: ${t.linkActiveColor};\n }\n `;\n },\n});\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { PopupMenuProps } from '../../internal/PopupMenu';
|
|
3
|
-
import {
|
|
3
|
+
import { PopupPositionsType } from '../../internal/Popup';
|
|
4
4
|
import { CommonProps } from '../../internal/CommonWrapper';
|
|
5
5
|
export interface DropdownMenuProps extends CommonProps {
|
|
6
6
|
/** Максимальная высота меню */
|
|
@@ -36,7 +36,7 @@ export interface DropdownMenuProps extends CommonProps {
|
|
|
36
36
|
* **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`
|
|
37
37
|
* @default ['bottom left', 'bottom right', 'top left', 'top right']
|
|
38
38
|
*/
|
|
39
|
-
positions?:
|
|
39
|
+
positions?: PopupPositionsType[];
|
|
40
40
|
onOpen?: () => void;
|
|
41
41
|
onClose?: () => void;
|
|
42
42
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["DropdownMenu.tsx"],"names":["DropdownMenu","rootNode","props","popupMenu","open","close","refPopupMenu","ref","handleChangeMenuState","menuVisible","onOpen","onClose","caption","isProductionEnv","Error","render","theme","ThemeFactory","create","popupMargin","renderMain","setRootNode","menuMaxHeight","menuWidth","positions","disableAnimations","header","footer","width","children","React","Component","__KONTUR_REACT_UI__","defaultProps","isTestEnv"],"mappings":"0UAAA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiDA;AACA;AACA,G;;AAEaA,Y,OADZC,kB;;;;;;;;;;;AAYC,wBAAYC,KAAZ,EAAsC;AACpC,wCAAMA,KAAN,UADoC,MAH9BC,SAG8B,GAHG,IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsD/BC,IAAAA,IAtD+B,GAsDxB,YAAY;AACxB,UAAI,MAAKD,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeC,IAAf;AACD;AACF,KA1DqC;;AA4D/BC,IAAAA,KA5D+B,GA4DvB,YAAY;AACzB,UAAI,MAAKF,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeE,KAAf;AACD;AACF,KAhEqC;;AAkE9BC,IAAAA,YAlE8B,GAkEf,UAACC,GAAD,UAA+B,MAAKJ,SAAL,GAAiBI,GAAhD,EAlEe;;AAoE9BC,IAAAA,qBApE8B,GAoEN,UAACC,WAAD,EAA0B;AACxD,UAAIA,WAAW,IAAI,MAAKP,KAAL,CAAWQ,MAA9B,EAAsC;AACpC,cAAKR,KAAL,CAAWQ,MAAX;AACA;AACD;;AAED,UAAI,CAACD,WAAD,IAAgB,MAAKP,KAAL,CAAWS,OAA/B,EAAwC;AACtC,cAAKT,KAAL,CAAWS,OAAX;AACA;AACD;AACF,KA9EqC,CAGpC,IAAI,CAACT,KAAK,CAACU,OAAP,IAAkB,CAACC,mCAAvB,EAAwC,CACtC,MAAM,IAAIC,KAAJ,CAAU,+BAAV,CAAN,CACD,CALmC,aAMrC,C,2CAEMC,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAACC,KAAD,EAAW,CACV,oBACE,6BAAC,0BAAD,CAAc,QAAd,IACE,KAAK,EAAEC,2BAAaC,MAAb,CACL,EACEC,WAAW,EAAE,KADf,EADK,EAILH,KAJK,CADT,IAQG,MAAI,CAACI,UAAL,EARH,CADF,CAYD,CAdH,CADF,CAkBD,C,QAEMA,U,GAAP,sBAAoB,CAClB,IAAI,CAAC,KAAKlB,KAAL,CAAWU,OAAhB,EAAyB,CACvB,OAAO,IAAP,CACD,CACD,oBACE,6BAAC,4BAAD,2BAAe,WAAW,EAAE,KAAKS,WAAjC,IAAkD,KAAKnB,KAAvD,gBACE,6BAAC,oBAAD,IACE,GAAG,EAAE,KAAKI,YADZ,EAEE,OAAO,EAAE,KAAKJ,KAAL,CAAWU,OAFtB,EAGE,aAAa,EAAE,KAAKV,KAAL,CAAWoB,aAH5B,EAIE,SAAS,EAAE,KAAKpB,KAAL,CAAWqB,SAJxB,EAKE,iBAAiB,EAAE,KAAKf,qBAL1B,EAME,WAAW,EAAE,KANf,EAOE,SAAS,EAAE,KAAKN,KAAL,CAAWsB,SAPxB,EAQE,iBAAiB,EAAE,KAAKtB,KAAL,CAAWuB,iBARhC,EASE,MAAM,EAAE,KAAKvB,KAAL,CAAWwB,MATrB,EAUE,MAAM,EAAE,KAAKxB,KAAL,CAAWyB,MAVrB,EAWE,KAAK,EAAE,KAAKzB,KAAL,CAAW0B,KAXpB,IAaG,KAAK1B,KAAL,CAAW2B,QAbd,CADF,CADF,CAmBD,C,uBA/D+BC,eAAMC,S,WACxBC,mB,GAAsB,c,UAEtBC,Y,GAAe,EAC3BR,iBAAiB,EAAES,6BADQ,EAE3BV,SAAS,EAAE,CAAC,aAAD,EAAgB,cAAhB,EAAgC,UAAhC,EAA4C,WAA5C,CAFgB,E","sourcesContent":["import React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupMenu, PopupMenuProps } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport {
|
|
1
|
+
{"version":3,"sources":["DropdownMenu.tsx"],"names":["DropdownMenu","rootNode","props","popupMenu","open","close","refPopupMenu","ref","handleChangeMenuState","menuVisible","onOpen","onClose","caption","isProductionEnv","Error","render","theme","ThemeFactory","create","popupMargin","renderMain","setRootNode","menuMaxHeight","menuWidth","positions","disableAnimations","header","footer","width","children","React","Component","__KONTUR_REACT_UI__","defaultProps","isTestEnv"],"mappings":"0UAAA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiDA;AACA;AACA,G;;AAEaA,Y,OADZC,kB;;;;;;;;;;;AAYC,wBAAYC,KAAZ,EAAsC;AACpC,wCAAMA,KAAN,UADoC,MAH9BC,SAG8B,GAHG,IAGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsD/BC,IAAAA,IAtD+B,GAsDxB,YAAY;AACxB,UAAI,MAAKD,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeC,IAAf;AACD;AACF,KA1DqC;;AA4D/BC,IAAAA,KA5D+B,GA4DvB,YAAY;AACzB,UAAI,MAAKF,SAAT,EAAoB;AAClB,cAAKA,SAAL,CAAeE,KAAf;AACD;AACF,KAhEqC;;AAkE9BC,IAAAA,YAlE8B,GAkEf,UAACC,GAAD,UAA+B,MAAKJ,SAAL,GAAiBI,GAAhD,EAlEe;;AAoE9BC,IAAAA,qBApE8B,GAoEN,UAACC,WAAD,EAA0B;AACxD,UAAIA,WAAW,IAAI,MAAKP,KAAL,CAAWQ,MAA9B,EAAsC;AACpC,cAAKR,KAAL,CAAWQ,MAAX;AACA;AACD;;AAED,UAAI,CAACD,WAAD,IAAgB,MAAKP,KAAL,CAAWS,OAA/B,EAAwC;AACtC,cAAKT,KAAL,CAAWS,OAAX;AACA;AACD;AACF,KA9EqC,CAGpC,IAAI,CAACT,KAAK,CAACU,OAAP,IAAkB,CAACC,mCAAvB,EAAwC,CACtC,MAAM,IAAIC,KAAJ,CAAU,+BAAV,CAAN,CACD,CALmC,aAMrC,C,2CAEMC,M,GAAP,kBAAgB,mBACd,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAACC,KAAD,EAAW,CACV,oBACE,6BAAC,0BAAD,CAAc,QAAd,IACE,KAAK,EAAEC,2BAAaC,MAAb,CACL,EACEC,WAAW,EAAE,KADf,EADK,EAILH,KAJK,CADT,IAQG,MAAI,CAACI,UAAL,EARH,CADF,CAYD,CAdH,CADF,CAkBD,C,QAEMA,U,GAAP,sBAAoB,CAClB,IAAI,CAAC,KAAKlB,KAAL,CAAWU,OAAhB,EAAyB,CACvB,OAAO,IAAP,CACD,CACD,oBACE,6BAAC,4BAAD,2BAAe,WAAW,EAAE,KAAKS,WAAjC,IAAkD,KAAKnB,KAAvD,gBACE,6BAAC,oBAAD,IACE,GAAG,EAAE,KAAKI,YADZ,EAEE,OAAO,EAAE,KAAKJ,KAAL,CAAWU,OAFtB,EAGE,aAAa,EAAE,KAAKV,KAAL,CAAWoB,aAH5B,EAIE,SAAS,EAAE,KAAKpB,KAAL,CAAWqB,SAJxB,EAKE,iBAAiB,EAAE,KAAKf,qBAL1B,EAME,WAAW,EAAE,KANf,EAOE,SAAS,EAAE,KAAKN,KAAL,CAAWsB,SAPxB,EAQE,iBAAiB,EAAE,KAAKtB,KAAL,CAAWuB,iBARhC,EASE,MAAM,EAAE,KAAKvB,KAAL,CAAWwB,MATrB,EAUE,MAAM,EAAE,KAAKxB,KAAL,CAAWyB,MAVrB,EAWE,KAAK,EAAE,KAAKzB,KAAL,CAAW0B,KAXpB,IAaG,KAAK1B,KAAL,CAAW2B,QAbd,CADF,CADF,CAmBD,C,uBA/D+BC,eAAMC,S,WACxBC,mB,GAAsB,c,UAEtBC,Y,GAAe,EAC3BR,iBAAiB,EAAES,6BADQ,EAE3BV,SAAS,EAAE,CAAC,aAAD,EAAgB,cAAhB,EAAgC,UAAhC,EAA4C,WAA5C,CAFgB,E","sourcesContent":["import React from 'react';\n\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { Nullable } from '../../typings/utility-types';\nimport { PopupMenu, PopupMenuProps } from '../../internal/PopupMenu';\nimport { isProductionEnv, isTestEnv } from '../../lib/currentEnvironment';\nimport { PopupPositionsType } from '../../internal/Popup';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\n\nexport interface DropdownMenuProps extends CommonProps {\n /** Максимальная высота меню */\n menuMaxHeight?: React.CSSProperties['maxWidth'];\n /** Ширина меню */\n menuWidth?: React.CSSProperties['width'];\n /** Ширина caption */\n width?: React.CSSProperties['width'];\n\n /**\n * Элемент или функция возвращающая элемент,\n * если передана, используется вместо `caption`,\n * в таком случае управлять открытием и закрытием меню\n * придется в этой функции\n */\n caption: PopupMenuProps['caption'];\n\n /**\n * Произвольный элемент, который будет отрендерен в шапке меню.\n *\n * _Примечание_: контрол [`MenuHeader`](#/Components/MenuHeader) передаётся только в `children` меню-контролов. Не стоит передавать `MenuHeader` в `header`.\n */\n header?: React.ReactNode;\n /**\n * Произвольный элемент, который будет отрендерен в подвале меню.\n *\n * Перед элементом переданным в `footer` будет отрендерен [`MenuSeparator`](#/Components/MenuSeparator).\n */\n footer?: React.ReactNode;\n /**\n * Список позиций доступных для расположения выпадашки относительно `caption`.\n *\n * Если во всех позициях выпадашка вылезает за пределы `viewport`, будет использована первая из этого списка.\n *\n * **Возможные значения**: `top left`, `top center`, `top right`, `right top`, `right middle`, `right bottom`, `bottom left`, `bottom center`, `bottom right`, `left top`, `left middle`, `left bottom`\n * @default ['bottom left', 'bottom right', 'top left', 'top right']\n */\n positions?: PopupPositionsType[];\n\n onOpen?: () => void;\n onClose?: () => void;\n\n /**\n * Не показывать анимацию\n */\n disableAnimations: boolean;\n}\n\n/**\n * Меню, раскрывающееся по клику на переданный в `caption` элемент\n */\n@rootNode\nexport class DropdownMenu extends React.Component<DropdownMenuProps> {\n public static __KONTUR_REACT_UI__ = 'DropdownMenu';\n\n public static defaultProps = {\n disableAnimations: isTestEnv,\n positions: ['bottom left', 'bottom right', 'top left', 'top right'],\n };\n\n private popupMenu: Nullable<PopupMenu> = null;\n private setRootNode!: TSetRootNode;\n\n constructor(props: DropdownMenuProps) {\n super(props);\n\n if (!props.caption && !isProductionEnv) {\n throw new Error('Prop \"caption\" is required!!!');\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n return (\n <ThemeContext.Provider\n value={ThemeFactory.create(\n {\n popupMargin: '0px',\n },\n theme,\n )}\n >\n {this.renderMain()}\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain() {\n if (!this.props.caption) {\n return null;\n }\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n <PopupMenu\n ref={this.refPopupMenu}\n caption={this.props.caption}\n menuMaxHeight={this.props.menuMaxHeight}\n menuWidth={this.props.menuWidth}\n onChangeMenuState={this.handleChangeMenuState}\n popupHasPin={false}\n positions={this.props.positions}\n disableAnimations={this.props.disableAnimations}\n header={this.props.header}\n footer={this.props.footer}\n width={this.props.width}\n >\n {this.props.children}\n </PopupMenu>\n </CommonWrapper>\n );\n }\n\n public open = (): void => {\n if (this.popupMenu) {\n this.popupMenu.open();\n }\n };\n\n public close = (): void => {\n if (this.popupMenu) {\n this.popupMenu.close();\n }\n };\n\n private refPopupMenu = (ref: Nullable<PopupMenu>) => (this.popupMenu = ref);\n\n private handleChangeMenuState = (menuVisible: boolean) => {\n if (menuVisible && this.props.onOpen) {\n this.props.onOpen();\n return;\n }\n\n if (!menuVisible && this.props.onClose) {\n this.props.onClose();\n return;\n }\n };\n}\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FileUploaderAttachedFile } from '../../internal/FileUploaderControl/fileUtils';
|
|
3
|
+
import { Nullable } from '../../typings/utility-types';
|
|
4
|
+
import { FileUploaderControlProviderProps } from '../../internal/FileUploaderControl/FileUploaderControlProvider';
|
|
5
|
+
import { CommonProps } from '../../internal/CommonWrapper';
|
|
6
|
+
interface _FileUploaderProps extends CommonProps, React.InputHTMLAttributes<HTMLInputElement> {
|
|
7
|
+
/** Состояние ошибки всего контрола */
|
|
8
|
+
error?: boolean;
|
|
9
|
+
/** Состояние предупреждения всего контрола */
|
|
10
|
+
warning?: boolean;
|
|
11
|
+
/** Свойство ширины. */
|
|
12
|
+
width?: React.CSSProperties['width'];
|
|
13
|
+
/** Функция, через которую отправляем файлы. Используется для отслеживания статуса загрузки файла. */
|
|
14
|
+
request?: (file: FileUploaderAttachedFile) => Promise<void>;
|
|
15
|
+
/** Срабатывает при удачной попытке отправки через request */
|
|
16
|
+
onRequestSuccess?: (fileId: string) => void;
|
|
17
|
+
/** Срабатывает при неудачной попытке отправки через request */
|
|
18
|
+
onRequestError?: (fileId: string) => void;
|
|
19
|
+
/** Функция валидации каждого файла. Срабатывает после выбора файлов и перед попыткой отправить в request. */
|
|
20
|
+
getFileValidationText?: (file: FileUploaderAttachedFile) => Promise<Nullable<string>>;
|
|
21
|
+
}
|
|
22
|
+
export interface FileUploaderRef {
|
|
23
|
+
focus: () => void;
|
|
24
|
+
blur: () => void;
|
|
25
|
+
/** Сбрасывает выбранные файлы */
|
|
26
|
+
reset: () => void;
|
|
27
|
+
}
|
|
28
|
+
export interface FileUploaderProps extends _FileUploaderProps, FileUploaderControlProviderProps {
|
|
29
|
+
}
|
|
30
|
+
export declare const FileUploader: React.MemoExoticComponent<React.ForwardRefExoticComponent<FileUploaderProps & FileUploaderControlProviderProps & React.RefAttributes<FileUploaderRef>>>;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
"use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.FileUploader = void 0;var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));var _react = _interopRequireWildcard(require("react"));
|
|
2
|
+
|
|
3
|
+
var _fileUtils = require("../../internal/FileUploaderControl/fileUtils");
|
|
4
|
+
var _Emotion = require("../../lib/theming/Emotion");
|
|
5
|
+
var _useMemoObject = require("../../hooks/useMemoObject");
|
|
6
|
+
var _FileUploaderControlContext = require("../../internal/FileUploaderControl/FileUploaderControlContext");
|
|
7
|
+
var _FileUploaderFileValidationResult = require("../../internal/FileUploaderControl/FileUploaderFileValidationResult");
|
|
8
|
+
var _useControlLocale = require("../../internal/FileUploaderControl/hooks/useControlLocale");
|
|
9
|
+
var _useUpload = require("../../internal/FileUploaderControl/hooks/useUpload");
|
|
10
|
+
var _useDrop3 = require("../../hooks/useDrop");
|
|
11
|
+
|
|
12
|
+
var _ThemeContext = require("../../lib/theming/ThemeContext");
|
|
13
|
+
var _px = require("../../internal/icons/16px");
|
|
14
|
+
|
|
15
|
+
var _withFileUploaderControlProvider = require("../../internal/FileUploaderControl/withFileUploaderControlProvider");
|
|
16
|
+
var _keyListener = require("../../lib/events/keyListener");
|
|
17
|
+
var _FileUploaderFile = require("../../internal/FileUploaderControl/FileUploaderFile/FileUploaderFile");
|
|
18
|
+
var _FileUploaderFileList = require("../../internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList");
|
|
19
|
+
var _client = require("../../lib/client");
|
|
20
|
+
var _CommonWrapper = require("../../internal/CommonWrapper");
|
|
21
|
+
|
|
22
|
+
var _FileUploader2 = require("./FileUploader.styles");var _excluded = ["disabled", "error", "warning", "multiple", "width", "onBlur", "onFocus", "onChange", "request", "getFileValidationText", "onRequestSuccess", "onRequestError"];function _getRequireWildcardCache(nodeInterop) {if (typeof WeakMap !== "function") return null;var cacheBabelInterop = new WeakMap();var cacheNodeInterop = new WeakMap();return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {return nodeInterop ? cacheNodeInterop : cacheBabelInterop;})(nodeInterop);}function _interopRequireWildcard(obj, nodeInterop) {if (!nodeInterop && obj && obj.__esModule) {return obj;}if (obj === null || typeof obj !== "object" && typeof obj !== "function") {return { default: obj };}var cache = _getRequireWildcardCache(nodeInterop);if (cache && cache.has(obj)) {return cache.get(obj);}var newObj = {};var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;for (var key in obj) {if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;if (desc && (desc.get || desc.set)) {Object.defineProperty(newObj, key, desc);} else {newObj[key] = obj[key];}}}newObj.default = obj;if (cache) {cache.set(obj, newObj);}return newObj;}
|
|
23
|
+
|
|
24
|
+
var stopPropagation = function stopPropagation(e) {return e.stopPropagation();};
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
var _FileUploader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {var _cx, _cx2, _cx3, _cx4;
|
|
54
|
+
var theme = (0, _react.useContext)(_ThemeContext.ThemeContext);
|
|
55
|
+
|
|
56
|
+
var
|
|
57
|
+
disabled =
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
props.disabled,error = props.error,warning = props.warning,_props$multiple = props.multiple,multiple = _props$multiple === void 0 ? false : _props$multiple,_props$width = props.width,width = _props$width === void 0 ? theme.fileUploaderWidth : _props$width,onBlur = props.onBlur,onFocus = props.onFocus,onChange = props.onChange,request = props.request,getFileValidationText = props.getFileValidationText,onRequestSuccess = props.onRequestSuccess,onRequestError = props.onRequestError,inputProps = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
71
|
+
|
|
72
|
+
var _useContext = (0, _react.useContext)(_FileUploaderControlContext.FileUploaderControlContext),files = _useContext.files,setFiles = _useContext.setFiles,removeFile = _useContext.removeFile,setFileValidationResult = _useContext.setFileValidationResult,reset = _useContext.reset;
|
|
73
|
+
|
|
74
|
+
var locale = (0, _useControlLocale.useControlLocale)();
|
|
75
|
+
|
|
76
|
+
var inputRef = (0, _react.useRef)(null);
|
|
77
|
+
|
|
78
|
+
var isAsync = !!request;
|
|
79
|
+
var isSingleMode = !multiple;
|
|
80
|
+
|
|
81
|
+
var upload = (0, _useUpload.useUpload)(request, onRequestSuccess, onRequestError);
|
|
82
|
+
|
|
83
|
+
var tryValidateAndUpload = (0, _react.useCallback)(
|
|
84
|
+
function (files) {
|
|
85
|
+
files.forEach( /*#__PURE__*/function () {var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(file) {var validationMessage;return _regenerator.default.wrap(function _callee$(_context) {while (1) {switch (_context.prev = _context.next) {case 0:_context.t0 =
|
|
86
|
+
getFileValidationText;if (!_context.t0) {_context.next = 5;break;}_context.next = 4;return getFileValidationText(file);case 4:_context.t0 = _context.sent;case 5:validationMessage = _context.t0;
|
|
87
|
+
|
|
88
|
+
if (!validationMessage) {
|
|
89
|
+
isAsync && upload(file);
|
|
90
|
+
} else {
|
|
91
|
+
setFileValidationResult(file.id, _FileUploaderFileValidationResult.FileUploaderFileValidationResult.error(validationMessage));
|
|
92
|
+
}case 7:case "end":return _context.stop();}}}, _callee);}));return function (_x) {return _ref.apply(this, arguments);};}());
|
|
93
|
+
|
|
94
|
+
},
|
|
95
|
+
[upload, error, getFileValidationText, isAsync]);
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
/** common part **/
|
|
99
|
+
var handleChange = (0, _react.useCallback)(
|
|
100
|
+
function (newFiles) {
|
|
101
|
+
if (!newFiles) return;
|
|
102
|
+
|
|
103
|
+
var filesArray = Array.from(newFiles);
|
|
104
|
+
|
|
105
|
+
if (isSingleMode) {
|
|
106
|
+
filesArray = [filesArray[0]];
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
var attachedFiles = filesArray.map(_fileUtils.getAttachedFile);
|
|
110
|
+
|
|
111
|
+
if (isSingleMode && attachedFiles.length && files.length) {
|
|
112
|
+
removeFile(files[0].id);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
if (attachedFiles.length) {
|
|
116
|
+
setFiles(attachedFiles);
|
|
117
|
+
tryValidateAndUpload(attachedFiles);
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
[tryValidateAndUpload, setFiles, isSingleMode, files, removeFile]);
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
var handleDrop = (0, _react.useCallback)(
|
|
124
|
+
function (event) {
|
|
125
|
+
if (disabled) {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
var dataTransfer = event.dataTransfer;
|
|
130
|
+
var files = dataTransfer.files;
|
|
131
|
+
|
|
132
|
+
if ((files == null ? void 0 : files.length) > 0) {
|
|
133
|
+
handleChange(files);
|
|
134
|
+
dataTransfer.clearData();
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
[handleChange, disabled]);
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
var _useDrop = (0, _useDrop3.useDrop)({ onDrop: handleDrop }),isDraggable = _useDrop.isDraggable,labelRef = _useDrop.ref;
|
|
141
|
+
var _useDrop2 = (0, _useDrop3.useDrop)(),isWindowDraggable = _useDrop2.isDraggable,windowRef = _useDrop2.ref;
|
|
142
|
+
|
|
143
|
+
if (_client.isBrowser) {
|
|
144
|
+
windowRef.current = window.document;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
var focus = (0, _react.useCallback)(function () {var _inputRef$current;
|
|
148
|
+
_keyListener.keyListener.isTabPressed = true;
|
|
149
|
+
(_inputRef$current = inputRef.current) == null ? void 0 : _inputRef$current.focus();
|
|
150
|
+
}, []);
|
|
151
|
+
|
|
152
|
+
var blur = (0, _react.useCallback)(function () {var _inputRef$current2;
|
|
153
|
+
(_inputRef$current2 = inputRef.current) == null ? void 0 : _inputRef$current2.blur();
|
|
154
|
+
}, []);
|
|
155
|
+
|
|
156
|
+
(0, _react.useImperativeHandle)(ref, function () {return { focus: focus, blur: blur, reset: reset };}, [ref]);
|
|
157
|
+
|
|
158
|
+
var _useState = (0, _react.useState)(false),focusedByTab = _useState[0],setFocusedByTab = _useState[1];
|
|
159
|
+
var handleInputChange = function handleInputChange(event) {
|
|
160
|
+
onChange == null ? void 0 : onChange(event);
|
|
161
|
+
handleChange(event.target.files);
|
|
162
|
+
};
|
|
163
|
+
|
|
164
|
+
var handleFocus = function handleFocus(e) {
|
|
165
|
+
if (!disabled) {
|
|
166
|
+
// focus event fires before keyDown eventlistener
|
|
167
|
+
// so we should check tabPressed in async way
|
|
168
|
+
requestAnimationFrame(function () {
|
|
169
|
+
if (_keyListener.keyListener.isTabPressed) {
|
|
170
|
+
setFocusedByTab(true);
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
onFocus == null ? void 0 : onFocus(e);
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
|
|
177
|
+
var handleBlur = function handleBlur(e) {
|
|
178
|
+
setFocusedByTab(false);
|
|
179
|
+
if (!disabled) {
|
|
180
|
+
onBlur == null ? void 0 : onBlur(e);
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
var uploadButtonClassNames = (0, _Emotion.cx)(_FileUploader2.jsStyles.uploadButton(theme), (_cx = {}, _cx[
|
|
185
|
+
_FileUploader2.jsStyles.uploadButtonFocus(theme)] = focusedByTab, _cx[
|
|
186
|
+
_FileUploader2.jsStyles.disabled(theme)] = disabled, _cx[
|
|
187
|
+
_FileUploader2.jsStyles.warning(theme)] = !!warning, _cx[
|
|
188
|
+
_FileUploader2.jsStyles.error(theme)] = !!error, _cx[
|
|
189
|
+
_FileUploader2.jsStyles.dragOver()] = isDraggable && !disabled, _cx));
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
var uploadButtonWrapperClassNames = (0, _Emotion.cx)((_cx2 = {}, _cx2[
|
|
193
|
+
_FileUploader2.jsStyles.windowDragOver()] = isWindowDraggable && !disabled, _cx2));
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
var uploadButtonIconClassNames = (0, _Emotion.cx)(_FileUploader2.jsStyles.icon(theme), (_cx3 = {}, _cx3[
|
|
197
|
+
_FileUploader2.jsStyles.iconDisabled(theme)] = disabled, _cx3));
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
var hasOneFile = files.length === 1;
|
|
201
|
+
var hasOneFileForSingle = isSingleMode && hasOneFile;
|
|
202
|
+
|
|
203
|
+
var _useState2 = (0, _react.useState)(false),hovered = _useState2[0],setHovered = _useState2[1];
|
|
204
|
+
|
|
205
|
+
var linkClassNames = (0, _Emotion.cx)(_FileUploader2.jsStyles.link(theme), (_cx4 = {}, _cx4[
|
|
206
|
+
_FileUploader2.jsStyles.linkHovered(theme)] = !disabled && hovered, _cx4[
|
|
207
|
+
_FileUploader2.jsStyles.linkDisabled(theme)] = disabled, _cx4));
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
return /*#__PURE__*/(
|
|
211
|
+
_react.default.createElement(_CommonWrapper.CommonWrapper, props, /*#__PURE__*/
|
|
212
|
+
_react.default.createElement("div", { className: _FileUploader2.jsStyles.root(theme), style: (0, _useMemoObject.useMemoObject)({ width: width }) },
|
|
213
|
+
!isSingleMode && !!files.length && /*#__PURE__*/_react.default.createElement(_FileUploaderFileList.FileUploaderFileList, null), /*#__PURE__*/
|
|
214
|
+
_react.default.createElement("div", { className: uploadButtonWrapperClassNames }, /*#__PURE__*/
|
|
215
|
+
_react.default.createElement("label", {
|
|
216
|
+
onMouseEnter: function onMouseEnter() {return setHovered(true);},
|
|
217
|
+
onMouseLeave: function onMouseLeave() {return setHovered(false);},
|
|
218
|
+
ref: labelRef,
|
|
219
|
+
className: uploadButtonClassNames }, /*#__PURE__*/
|
|
220
|
+
|
|
221
|
+
_react.default.createElement("div", { className: _FileUploader2.jsStyles.content() }, /*#__PURE__*/
|
|
222
|
+
_react.default.createElement("span", { "data-tid": 'FileUploader__link', className: linkClassNames },
|
|
223
|
+
hasOneFileForSingle ? locale.choosedFile : locale.chooseFile), "\xA0", /*#__PURE__*/
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
_react.default.createElement("div", { className: _FileUploader2.jsStyles.afterLinkText() },
|
|
227
|
+
hasOneFileForSingle ? /*#__PURE__*/
|
|
228
|
+
_react.default.createElement(_FileUploaderFile.FileUploaderFile, { file: files[0] }) : /*#__PURE__*/
|
|
229
|
+
|
|
230
|
+
_react.default.createElement(_react.default.Fragment, null,
|
|
231
|
+
locale.orDragHere, "\xA0", /*#__PURE__*/
|
|
232
|
+
_react.default.createElement("div", { className: uploadButtonIconClassNames }, /*#__PURE__*/
|
|
233
|
+
_react.default.createElement(_px.UploadIcon, null))))), /*#__PURE__*/
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
_react.default.createElement("input", (0, _extends2.default)({},
|
|
240
|
+
inputProps, {
|
|
241
|
+
ref: inputRef,
|
|
242
|
+
tabIndex: disabled ? -1 : 0,
|
|
243
|
+
type: "file",
|
|
244
|
+
disabled: disabled,
|
|
245
|
+
multiple: multiple,
|
|
246
|
+
className: _FileUploader2.jsStyles.fileInput(),
|
|
247
|
+
onClick: stopPropagation,
|
|
248
|
+
onChange: handleInputChange,
|
|
249
|
+
onFocus: handleFocus,
|
|
250
|
+
onBlur: handleBlur
|
|
251
|
+
// для того, чтобы срабатывало событие change при выборе одного и того же файла подряд
|
|
252
|
+
, value: '' })))))));
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
});
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
var FileUploader = (0, _withFileUploaderControlProvider.withFileUploaderControlProvider)( /*#__PURE__*/
|
|
264
|
+
_react.default.memo(_FileUploader));exports.FileUploader = FileUploader;
|
|
265
|
+
|
|
266
|
+
FileUploader.displayName = 'FileUploader';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["FileUploader.tsx"],"names":["stopPropagation","e","_FileUploader","React","forwardRef","props","ref","theme","ThemeContext","disabled","error","warning","multiple","width","fileUploaderWidth","onBlur","onFocus","onChange","request","getFileValidationText","onRequestSuccess","onRequestError","inputProps","FileUploaderControlContext","files","setFiles","removeFile","setFileValidationResult","reset","locale","inputRef","isAsync","isSingleMode","upload","tryValidateAndUpload","forEach","file","validationMessage","id","FileUploaderFileValidationResult","handleChange","newFiles","filesArray","Array","from","attachedFiles","map","getAttachedFile","length","handleDrop","event","dataTransfer","clearData","onDrop","isDraggable","labelRef","isWindowDraggable","windowRef","isBrowser","current","window","document","focus","keyListener","isTabPressed","blur","focusedByTab","setFocusedByTab","handleInputChange","target","handleFocus","requestAnimationFrame","handleBlur","uploadButtonClassNames","jsStyles","uploadButton","uploadButtonFocus","dragOver","uploadButtonWrapperClassNames","windowDragOver","uploadButtonIconClassNames","icon","iconDisabled","hasOneFile","hasOneFileForSingle","hovered","setHovered","linkClassNames","link","linkHovered","linkDisabled","root","content","choosedFile","chooseFile","afterLinkText","orDragHere","fileInput","FileUploader","memo","displayName"],"mappings":"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","sourcesContent":["import React, { useCallback, useContext, useImperativeHandle, useRef, useState } from 'react';\n\nimport { FileUploaderAttachedFile, getAttachedFile } from '../../internal/FileUploaderControl/fileUtils';\nimport { cx } from '../../lib/theming/Emotion';\nimport { useMemoObject } from '../../hooks/useMemoObject';\nimport { FileUploaderControlContext } from '../../internal/FileUploaderControl/FileUploaderControlContext';\nimport { FileUploaderFileValidationResult } from '../../internal/FileUploaderControl/FileUploaderFileValidationResult';\nimport { useControlLocale } from '../../internal/FileUploaderControl/hooks/useControlLocale';\nimport { useUpload } from '../../internal/FileUploaderControl/hooks/useUpload';\nimport { useDrop } from '../../hooks/useDrop';\nimport { Nullable } from '../../typings/utility-types';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { UploadIcon } from '../../internal/icons/16px';\nimport { FileUploaderControlProviderProps } from '../../internal/FileUploaderControl/FileUploaderControlProvider';\nimport { withFileUploaderControlProvider } from '../../internal/FileUploaderControl/withFileUploaderControlProvider';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { FileUploaderFile } from '../../internal/FileUploaderControl/FileUploaderFile/FileUploaderFile';\nimport { FileUploaderFileList } from '../../internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList';\nimport { isBrowser } from '../../lib/client';\nimport { CommonProps, CommonWrapper } from '../../internal/CommonWrapper';\n\nimport { jsStyles } from './FileUploader.styles';\n\nconst stopPropagation: React.ReactEventHandler = (e) => e.stopPropagation();\n\ninterface _FileUploaderProps extends CommonProps, React.InputHTMLAttributes<HTMLInputElement> {\n /** Состояние ошибки всего контрола */\n error?: boolean;\n /** Состояние предупреждения всего контрола */\n warning?: boolean;\n\n /** Свойство ширины. */\n width?: React.CSSProperties['width'];\n\n /** Функция, через которую отправляем файлы. Используется для отслеживания статуса загрузки файла. */\n request?: (file: FileUploaderAttachedFile) => Promise<void>;\n /** Срабатывает при удачной попытке отправки через request */\n onRequestSuccess?: (fileId: string) => void;\n /** Срабатывает при неудачной попытке отправки через request */\n onRequestError?: (fileId: string) => void;\n\n /** Функция валидации каждого файла. Срабатывает после выбора файлов и перед попыткой отправить в request. */\n getFileValidationText?: (file: FileUploaderAttachedFile) => Promise<Nullable<string>>;\n}\n\nexport interface FileUploaderRef {\n focus: () => void;\n blur: () => void;\n /** Сбрасывает выбранные файлы */\n reset: () => void;\n}\n\nconst _FileUploader = React.forwardRef<FileUploaderRef, _FileUploaderProps>((props: _FileUploaderProps, ref) => {\n const theme = useContext(ThemeContext);\n\n const {\n disabled,\n error,\n warning,\n multiple = false,\n width = theme.fileUploaderWidth,\n onBlur,\n onFocus,\n onChange,\n request,\n getFileValidationText,\n onRequestSuccess,\n onRequestError,\n ...inputProps\n } = props;\n\n const { files, setFiles, removeFile, setFileValidationResult, reset } = useContext(FileUploaderControlContext);\n\n const locale = useControlLocale();\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const isAsync = !!request;\n const isSingleMode = !multiple;\n\n const upload = useUpload(request, onRequestSuccess, onRequestError);\n\n const tryValidateAndUpload = useCallback(\n (files: FileUploaderAttachedFile[]) => {\n files.forEach(async (file) => {\n const validationMessage = getFileValidationText && (await getFileValidationText(file));\n\n if (!validationMessage) {\n isAsync && upload(file);\n } else {\n setFileValidationResult(file.id, FileUploaderFileValidationResult.error(validationMessage));\n }\n });\n },\n [upload, error, getFileValidationText, isAsync],\n );\n\n /** common part **/\n const handleChange = useCallback(\n (newFiles: FileList | null) => {\n if (!newFiles) return;\n\n let filesArray = Array.from(newFiles);\n\n if (isSingleMode) {\n filesArray = [filesArray[0]];\n }\n\n const attachedFiles = filesArray.map(getAttachedFile);\n\n if (isSingleMode && attachedFiles.length && files.length) {\n removeFile(files[0].id);\n }\n\n if (attachedFiles.length) {\n setFiles(attachedFiles);\n tryValidateAndUpload(attachedFiles);\n }\n },\n [tryValidateAndUpload, setFiles, isSingleMode, files, removeFile],\n );\n\n const handleDrop = useCallback(\n (event) => {\n if (disabled) {\n return;\n }\n\n const { dataTransfer } = event;\n const { files } = dataTransfer;\n\n if (files?.length > 0) {\n handleChange(files);\n dataTransfer.clearData();\n }\n },\n [handleChange, disabled],\n );\n\n const { isDraggable, ref: labelRef } = useDrop<HTMLLabelElement>({ onDrop: handleDrop });\n const { isDraggable: isWindowDraggable, ref: windowRef } = useDrop<Document>();\n\n if (isBrowser) {\n windowRef.current = window.document;\n }\n\n const focus = useCallback(() => {\n keyListener.isTabPressed = true;\n inputRef.current?.focus();\n }, []);\n\n const blur = useCallback(() => {\n inputRef.current?.blur();\n }, []);\n\n useImperativeHandle(ref, () => ({ focus, blur, reset }), [ref]);\n\n const [focusedByTab, setFocusedByTab] = useState(false);\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange?.(event);\n handleChange(event.target.files);\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (!disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n setFocusedByTab(true);\n }\n });\n onFocus?.(e);\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocusedByTab(false);\n if (!disabled) {\n onBlur?.(e);\n }\n };\n\n const uploadButtonClassNames = cx(jsStyles.uploadButton(theme), {\n [jsStyles.uploadButtonFocus(theme)]: focusedByTab,\n [jsStyles.disabled(theme)]: disabled,\n [jsStyles.warning(theme)]: !!warning,\n [jsStyles.error(theme)]: !!error,\n [jsStyles.dragOver()]: isDraggable && !disabled,\n });\n\n const uploadButtonWrapperClassNames = cx({\n [jsStyles.windowDragOver()]: isWindowDraggable && !disabled,\n });\n\n const uploadButtonIconClassNames = cx(jsStyles.icon(theme), {\n [jsStyles.iconDisabled(theme)]: disabled,\n });\n\n const hasOneFile = files.length === 1;\n const hasOneFileForSingle = isSingleMode && hasOneFile;\n\n const [hovered, setHovered] = useState(false);\n\n const linkClassNames = cx(jsStyles.link(theme), {\n [jsStyles.linkHovered(theme)]: !disabled && hovered,\n [jsStyles.linkDisabled(theme)]: disabled,\n });\n\n return (\n <CommonWrapper {...props}>\n <div className={jsStyles.root(theme)} style={useMemoObject({ width })}>\n {!isSingleMode && !!files.length && <FileUploaderFileList />}\n <div className={uploadButtonWrapperClassNames}>\n <label\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n ref={labelRef}\n className={uploadButtonClassNames}\n >\n <div className={jsStyles.content()}>\n <span data-tid={'FileUploader__link'} className={linkClassNames}>\n {hasOneFileForSingle ? locale.choosedFile : locale.chooseFile}\n </span>\n \n <div className={jsStyles.afterLinkText()}>\n {hasOneFileForSingle ? (\n <FileUploaderFile file={files[0]} />\n ) : (\n <>\n {locale.orDragHere} \n <div className={uploadButtonIconClassNames}>\n <UploadIcon />\n </div>\n </>\n )}\n </div>\n </div>\n <input\n {...inputProps}\n ref={inputRef}\n tabIndex={disabled ? -1 : 0}\n type=\"file\"\n disabled={disabled}\n multiple={multiple}\n className={jsStyles.fileInput()}\n onClick={stopPropagation}\n onChange={handleInputChange}\n onFocus={handleFocus}\n onBlur={handleBlur}\n // для того, чтобы срабатывало событие change при выборе одного и того же файла подряд\n value={''}\n />\n </label>\n </div>\n </div>\n </CommonWrapper>\n );\n});\n\nexport interface FileUploaderProps extends _FileUploaderProps, FileUploaderControlProviderProps {}\n\nexport const FileUploader = withFileUploaderControlProvider<FileUploaderProps, FileUploaderRef>(\n React.memo(_FileUploader),\n);\nFileUploader.displayName = 'FileUploader';\n"]}
|