@skbkontur/react-ui 3.7.0 → 3.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +64 -0
- package/README.md +1 -1
- package/cjs/components/Button/Button.d.ts +1 -0
- package/cjs/components/Button/Button.js +4 -1
- package/cjs/components/Button/Button.js.map +1 -1
- package/cjs/components/Button/Button.styles.js +2 -2
- package/cjs/components/Button/Button.styles.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.js +6 -5
- package/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/cjs/components/Checkbox/Checkbox.styles.js +3 -3
- package/cjs/components/Checkbox/Checkbox.styles.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.js +14 -5
- package/cjs/components/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/cjs/components/CurrencyLabel/CurrencyLabel.styles.d.ts +4 -0
- package/cjs/components/CurrencyLabel/CurrencyLabel.styles.js +9 -0
- package/cjs/components/CurrencyLabel/CurrencyLabel.styles.js.map +1 -0
- package/cjs/components/FxInput/FxInput.js +1 -1
- package/cjs/components/FxInput/FxInput.js.map +1 -1
- package/cjs/components/Kebab/Kebab.js +2 -1
- package/cjs/components/Kebab/Kebab.js.map +1 -1
- package/cjs/components/MenuItem/MenuItem.md +1 -1
- package/cjs/components/MenuItem/MenuItem.styles.js +3 -2
- package/cjs/components/MenuItem/MenuItem.styles.js.map +1 -1
- package/cjs/components/Modal/Modal.styles.d.ts +1 -0
- package/cjs/components/Modal/Modal.styles.js +24 -21
- package/cjs/components/Modal/Modal.styles.js.map +1 -1
- package/cjs/components/Modal/ModalClose.js +23 -3
- package/cjs/components/Modal/ModalClose.js.map +1 -1
- package/cjs/components/Paging/Paging.styles.js +2 -1
- package/cjs/components/Paging/Paging.styles.js.map +1 -1
- package/cjs/components/Radio/Radio.styles.js +3 -2
- package/cjs/components/Radio/Radio.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePage.d.ts +1 -2
- package/cjs/components/SidePage/SidePage.js +1 -5
- package/cjs/components/SidePage/SidePage.js.map +1 -1
- package/cjs/components/SidePage/SidePage.styles.d.ts +2 -1
- package/cjs/components/SidePage/SidePage.styles.js +44 -28
- package/cjs/components/SidePage/SidePage.styles.js.map +1 -1
- package/cjs/components/SidePage/SidePageHeader.d.ts +4 -1
- package/cjs/components/SidePage/SidePageHeader.js +33 -23
- package/cjs/components/SidePage/SidePageHeader.js.map +1 -1
- package/cjs/components/Switcher/Switcher.js +1 -1
- package/cjs/components/Switcher/Switcher.js.map +1 -1
- package/cjs/components/Switcher/Switcher.styles.d.ts +1 -1
- package/cjs/components/Switcher/Switcher.styles.js +3 -2
- package/cjs/components/Switcher/Switcher.styles.js.map +1 -1
- package/cjs/components/Tabs/Tab.styles.js +2 -2
- package/cjs/components/Tabs/Tab.styles.js.map +1 -1
- package/cjs/components/Textarea/Textarea.d.ts +0 -2
- package/cjs/components/Textarea/Textarea.js +6 -3
- package/cjs/components/Textarea/Textarea.js.map +1 -1
- package/cjs/components/Toggle/Toggle.d.ts +43 -1
- package/cjs/components/Toggle/Toggle.js +46 -2
- package/cjs/components/Toggle/Toggle.js.map +1 -1
- package/cjs/components/Toggle/Toggle.md +70 -9
- package/cjs/components/Toggle/Toggle.styles.d.ts +2 -0
- package/cjs/components/Toggle/Toggle.styles.js +32 -16
- package/cjs/components/Toggle/Toggle.styles.js.map +1 -1
- package/cjs/components/TokenInput/TokenInput.d.ts +8 -0
- package/cjs/components/TokenInput/TokenInput.js +24 -2
- package/cjs/components/TokenInput/TokenInput.js.map +1 -1
- package/cjs/components/Tooltip/Tooltip.styles.js +2 -1
- package/cjs/components/Tooltip/Tooltip.styles.js.map +1 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js +2 -1
- package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js +3 -2
- package/cjs/internal/CustomComboBox/CustomComboBoxReducer.js.map +1 -1
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js +5 -7
- package/cjs/internal/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/cjs/internal/InputLikeText/InputLikeText.js +2 -1
- package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.js +1 -1
- package/cjs/internal/PopupMenu/PopupMenu.js.map +1 -1
- package/cjs/internal/RenderContainer/RenderContainer.js +2 -1
- package/cjs/internal/RenderContainer/RenderContainer.js.map +1 -1
- package/cjs/internal/ThemePlayground/darkTheme.js +3 -3
- package/cjs/internal/ThemePlayground/darkTheme.js.map +1 -1
- package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/cjs/internal/icons/CrossIcon.js +8 -1
- package/cjs/internal/icons/CrossIcon.js.map +1 -1
- package/cjs/internal/themes/DefaultTheme.d.ts +16 -5
- package/cjs/internal/themes/DefaultTheme.js +63 -25
- package/cjs/internal/themes/DefaultTheme.js.map +1 -1
- package/cjs/internal/themes/FlatTheme.d.ts +0 -1
- package/cjs/internal/themes/FlatTheme.js +1 -2
- package/cjs/internal/themes/FlatTheme.js.map +1 -1
- package/cjs/internal/themes/Theme8px.js +1 -1
- package/cjs/internal/themes/Theme8px.js.map +1 -1
- package/cjs/lib/Upgrades.d.ts +2 -0
- package/cjs/lib/Upgrades.js +14 -0
- package/cjs/lib/Upgrades.js.map +1 -1
- package/cjs/lib/events/keyboard/identifiers.d.ts +1 -0
- package/cjs/lib/events/keyboard/identifiers.js +6 -1
- package/cjs/lib/events/keyboard/identifiers.js.map +1 -1
- package/cjs/lib/locale/LOCALECONTEXT.md +1 -1
- package/cjs/lib/styles/ColorFunctions.js +1 -1
- package/cjs/lib/styles/ColorFunctions.js.map +1 -1
- package/cjs/lib/theming/Emotion.js +1 -1
- package/cjs/lib/theming/Emotion.js.map +1 -1
- package/cjs/lib/theming/ThemeContext.md +1 -1
- package/cjs/lib/utils.d.ts +7 -0
- package/cjs/lib/utils.js +12 -2
- package/cjs/lib/utils.js.map +1 -1
- package/components/Button/Button/Button.js +2 -1
- package/components/Button/Button/Button.js.map +1 -1
- package/components/Button/Button.d.ts +1 -0
- package/components/Button/Button.styles/Button.styles.js +1 -1
- package/components/Button/Button.styles/Button.styles.js.map +1 -1
- package/components/Checkbox/Checkbox/Checkbox.js +2 -2
- package/components/Checkbox/Checkbox/Checkbox.js.map +1 -1
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js +2 -2
- package/components/Checkbox/Checkbox.styles/Checkbox.styles.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js +11 -5
- package/components/CurrencyLabel/CurrencyLabel/CurrencyLabel.js.map +1 -1
- package/components/CurrencyLabel/CurrencyLabel.styles/CurrencyLabel.styles.js +10 -0
- package/components/CurrencyLabel/CurrencyLabel.styles/CurrencyLabel.styles.js.map +1 -0
- package/components/CurrencyLabel/CurrencyLabel.styles/package.json +6 -0
- package/components/CurrencyLabel/CurrencyLabel.styles.d.ts +4 -0
- package/components/FxInput/FxInput/FxInput.js +2 -1
- package/components/FxInput/FxInput/FxInput.js.map +1 -1
- package/components/Kebab/Kebab/Kebab.js +2 -1
- package/components/Kebab/Kebab/Kebab.js.map +1 -1
- package/components/MenuItem/MenuItem.md +1 -1
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js +1 -1
- package/components/MenuItem/MenuItem.styles/MenuItem.styles.js.map +1 -1
- package/components/Modal/Modal.styles/Modal.styles.js +18 -15
- package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
- package/components/Modal/Modal.styles.d.ts +1 -0
- package/components/Modal/ModalClose/ModalClose.js +25 -2
- package/components/Modal/ModalClose/ModalClose.js.map +1 -1
- package/components/Paging/Paging.styles/Paging.styles.js +1 -1
- package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
- package/components/Radio/Radio.styles/Radio.styles.js +1 -1
- package/components/Radio/Radio.styles/Radio.styles.js.map +1 -1
- package/components/SidePage/SidePage/SidePage.js +2 -4
- package/components/SidePage/SidePage/SidePage.js.map +1 -1
- package/components/SidePage/SidePage.d.ts +1 -2
- package/components/SidePage/SidePage.styles/SidePage.styles.js +20 -16
- package/components/SidePage/SidePage.styles/SidePage.styles.js.map +1 -1
- package/components/SidePage/SidePage.styles.d.ts +2 -1
- package/components/SidePage/SidePageHeader/SidePageHeader.js +40 -22
- package/components/SidePage/SidePageHeader/SidePageHeader.js.map +1 -1
- package/components/SidePage/SidePageHeader.d.ts +4 -1
- package/components/Switcher/Switcher/Switcher.js +1 -1
- package/components/Switcher/Switcher/Switcher.js.map +1 -1
- package/components/Switcher/Switcher.styles/Switcher.styles.js +2 -2
- package/components/Switcher/Switcher.styles/Switcher.styles.js.map +1 -1
- package/components/Switcher/Switcher.styles.d.ts +1 -1
- package/components/Tabs/Tab.styles/Tab.styles.js +1 -1
- package/components/Tabs/Tab.styles/Tab.styles.js.map +1 -1
- package/components/Textarea/Textarea/Textarea.js +1 -2
- package/components/Textarea/Textarea/Textarea.js.map +1 -1
- package/components/Textarea/Textarea.d.ts +0 -2
- package/components/Toggle/Toggle/Toggle.js +6 -2
- package/components/Toggle/Toggle/Toggle.js.map +1 -1
- package/components/Toggle/Toggle.d.ts +43 -1
- package/components/Toggle/Toggle.md +70 -9
- package/components/Toggle/Toggle.styles/Toggle.styles.js +18 -12
- package/components/Toggle/Toggle.styles/Toggle.styles.js.map +1 -1
- package/components/Toggle/Toggle.styles.d.ts +2 -0
- package/components/TokenInput/TokenInput/TokenInput.js +24 -2
- package/components/TokenInput/TokenInput/TokenInput.js.map +1 -1
- package/components/TokenInput/TokenInput.d.ts +8 -0
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js +1 -1
- package/components/Tooltip/Tooltip.styles/Tooltip.styles.js.map +1 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +2 -1
- package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js +3 -2
- package/internal/CustomComboBox/CustomComboBoxReducer/CustomComboBoxReducer.js.map +1 -1
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js +4 -4
- package/internal/HideBodyVerticalScroll/HideBodyVerticalScroll/HideBodyVerticalScroll.js.map +1 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js +2 -1
- package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
- package/internal/PopupMenu/PopupMenu/PopupMenu.js +2 -2
- package/internal/PopupMenu/PopupMenu/PopupMenu.js.map +1 -1
- package/internal/RenderContainer/RenderContainer/RenderContainer.js +2 -1
- package/internal/RenderContainer/RenderContainer/RenderContainer.js.map +1 -1
- package/internal/ThemePlayground/darkTheme/darkTheme.js +3 -3
- package/internal/ThemePlayground/darkTheme/darkTheme.js.map +1 -1
- package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
- package/internal/icons/CrossIcon/CrossIcon.js +2 -1
- package/internal/icons/CrossIcon/CrossIcon.js.map +1 -1
- package/internal/themes/DefaultTheme/DefaultTheme.js +83 -9
- package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
- package/internal/themes/DefaultTheme.d.ts +16 -5
- package/internal/themes/FlatTheme/FlatTheme.js +0 -1
- package/internal/themes/FlatTheme/FlatTheme.js.map +1 -1
- package/internal/themes/FlatTheme.d.ts +0 -1
- package/internal/themes/Theme8px/Theme8px.js +1 -1
- package/internal/themes/Theme8px/Theme8px.js.map +1 -1
- package/lib/Upgrades/Upgrades.js +13 -0
- package/lib/Upgrades/Upgrades.js.map +1 -1
- package/lib/Upgrades.d.ts +2 -0
- package/lib/events/keyboard/identifiers/identifiers.js +10 -1
- package/lib/events/keyboard/identifiers/identifiers.js.map +1 -1
- package/lib/events/keyboard/identifiers.d.ts +1 -0
- package/lib/locale/LOCALECONTEXT.md +1 -1
- package/lib/styles/ColorFunctions/ColorFunctions.js +1 -1
- package/lib/styles/ColorFunctions/ColorFunctions.js.map +1 -1
- package/lib/theming/Emotion/Emotion.js +1 -1
- package/lib/theming/Emotion/Emotion.js.map +1 -1
- package/lib/theming/ThemeContext.md +1 -1
- package/lib/utils/utils.js +10 -0
- package/lib/utils/utils.js.map +1 -1
- package/lib/utils.d.ts +7 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,70 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [3.8.1](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@3.8.0...@skbkontur/react-ui@3.8.1) (2021-10-28)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **Checkbox:** remove user-select:none ([#2586](https://github.com/skbkontur/retail-ui/issues/2586)) ([4da5f0c](https://github.com/skbkontur/retail-ui/commit/4da5f0cdc09d8e01f7d4ab7a7b01e58fdbad56b3))
|
|
12
|
+
* **Kebab:** restore menuMaxHeight prop ([#2588](https://github.com/skbkontur/retail-ui/issues/2588)) ([20b82ce](https://github.com/skbkontur/retail-ui/commit/20b82ce8a4e7a411e42f6b2c848de1308617cbdb))
|
|
13
|
+
* **Textarea:** fix autoResize on rows/maxRows change ([#2562](https://github.com/skbkontur/retail-ui/issues/2562)) ([a0c06f8](https://github.com/skbkontur/retail-ui/commit/a0c06f839ebe8de9fcbddfe7e8cf0568d3921e72))
|
|
14
|
+
* **Toggle:** recover disabled caption styles ([#2582](https://github.com/skbkontur/retail-ui/issues/2582)) ([ef9fe96](https://github.com/skbkontur/retail-ui/commit/ef9fe969e0b59afe5ebe5c22827aa5bcdbd653f1))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
# [3.8.0](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@3.7.2...@skbkontur/react-ui@3.8.0) (2021-10-27)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Bug Fixes
|
|
24
|
+
|
|
25
|
+
* **ComboBox:** handle falsy values correctly ([#2563](https://github.com/skbkontur/retail-ui/issues/2563)) ([2df7e09](https://github.com/skbkontur/retail-ui/commit/2df7e09ec6fd8f4ab9e999654263acbe8d989803))
|
|
26
|
+
* **ModalClose:** don't s show focus outline if it's not focus by Tab ([#2565](https://github.com/skbkontur/retail-ui/issues/2565)) ([b589014](https://github.com/skbkontur/retail-ui/commit/b58901428b7bfdf52727de1345e44d1d0cd35b8e))
|
|
27
|
+
* **ThemePlayground:** computed vars are visible in the ThemeEditor ([62f191e](https://github.com/skbkontur/retail-ui/commit/62f191efa0234cc72175e05dcb543284fada7d7e))
|
|
28
|
+
* **Toggle:** add toggleBgDisabledChecked, toggleBorderColorDisabled, toggleBorderColorDisabledChecked theme variables ([#2584](https://github.com/skbkontur/retail-ui/issues/2584)) ([b953719](https://github.com/skbkontur/retail-ui/commit/b953719e4cd5b0d89babe1b72f5ae497a9567889))
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
### Features
|
|
32
|
+
|
|
33
|
+
* **Upgrades:** abillity to customize classNames prefix ([#2561](https://github.com/skbkontur/retail-ui/issues/2561)) ([fbc9ced](https://github.com/skbkontur/retail-ui/commit/fbc9ceda8d9cb9c2be7d69a7fa199cf7c9745cee))
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
## [3.7.2](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@3.7.1...@skbkontur/react-ui@3.7.2) (2021-10-25)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
### Bug Fixes
|
|
43
|
+
|
|
44
|
+
* **Button:** add btnBackgroundClip theme var ([72708f9](https://github.com/skbkontur/retail-ui/commit/72708f9c1f58f248bf53dd0f2e75088a100711d4))
|
|
45
|
+
* **Button:** add title prop ([#2569](https://github.com/skbkontur/retail-ui/issues/2569)) ([5140e96](https://github.com/skbkontur/retail-ui/commit/5140e96fbd33c57aa15a720935f6904e02b1f315))
|
|
46
|
+
* **Paging:** use default cursor style for disabled paging link ([788f70a](https://github.com/skbkontur/retail-ui/commit/788f70a3dd3385165f3ffa0de0eb02cca887e584))
|
|
47
|
+
* **TokenInput:** add public focus/blur methods ([0137266](https://github.com/skbkontur/retail-ui/commit/0137266810f09f139974a3480650587bb4b69d15))
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
## [3.7.1](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@3.7.0...@skbkontur/react-ui@3.7.1) (2021-10-06)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
### Bug Fixes
|
|
57
|
+
|
|
58
|
+
* **Checkbox:** revert to old focus behavior ([d0f80f7](https://github.com/skbkontur/retail-ui/commit/d0f80f73f44114ae9ed217729d6864e2f3f63d21)), closes [#2550](https://github.com/skbkontur/retail-ui/issues/2550)
|
|
59
|
+
* **FxInput:** remove refInput prop from spread ([c5f403d](https://github.com/skbkontur/retail-ui/commit/c5f403dec7342b8ce29bdb9571fba0569eefc6a6))
|
|
60
|
+
* **HideBodyVerticalScroll:** now scrollbar hiding always ([#2540](https://github.com/skbkontur/retail-ui/issues/2540)) ([c93db68](https://github.com/skbkontur/retail-ui/commit/c93db684f2954b075794c2ac26db761b72953614))
|
|
61
|
+
* **PopupMenu:** move width property from internalMenu to Popup ([20643a4](https://github.com/skbkontur/retail-ui/commit/20643a437cf302a3f017822c54320827f869932d))
|
|
62
|
+
* **SidePage:** replace icon close tag from link to button ([4458332](https://github.com/skbkontur/retail-ui/commit/4458332a79a143295e42ec9388ea27d0b94a7b21))
|
|
63
|
+
* **theme:** text color of components link to `textColorDefault` ([#2543](https://github.com/skbkontur/retail-ui/issues/2543)) ([b3a92c5](https://github.com/skbkontur/retail-ui/commit/b3a92c5e61eec509322194f419386839393da709))
|
|
64
|
+
* **TokenInput:** add delimiter comma support for IE ([#2539](https://github.com/skbkontur/retail-ui/issues/2539)) ([2bbf54a](https://github.com/skbkontur/retail-ui/commit/2bbf54a830de8966a7b2594bb6ac6fc9e185422d))
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
6
70
|
# [3.7.0](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@3.6.0...@skbkontur/react-ui@3.7.0) (2021-09-16)
|
|
7
71
|
|
|
8
72
|
|
package/README.md
CHANGED
|
@@ -102,6 +102,8 @@ var _Corners = require("./Corners");var
|
|
|
102
102
|
|
|
103
103
|
|
|
104
104
|
|
|
105
|
+
|
|
106
|
+
|
|
105
107
|
|
|
106
108
|
|
|
107
109
|
|
|
@@ -355,6 +357,7 @@ Button = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(
|
|
|
355
357
|
|
|
356
358
|
|
|
357
359
|
|
|
360
|
+
|
|
358
361
|
|
|
359
362
|
|
|
360
363
|
handleFocus = function (e) {
|
|
@@ -386,5 +389,5 @@ Button = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default)(
|
|
|
386
389
|
*/;_proto.blur = function blur() {var _this$node2;(_this$node2 = this.node) == null ? void 0 : _this$node2.blur();};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return _this2.renderMain();});};_proto.renderMain = function renderMain() {var _cx, _cx2, _cx7, _cx8;var _this$props = this.props,_this$props$corners = _this$props.corners,corners = _this$props$corners === void 0 ? 0 : _this$props$corners,active = _this$props.active,disabled = _this$props.disabled,borderless = _this$props.borderless,checked = _this$props.checked,error = _this$props.error,warning = _this$props.warning,loading = _this$props.loading,arrow = _this$props.arrow,narrow = _this$props.narrow,icon = _this$props.icon,_noPadding = _this$props._noPadding,_noRightPadding = _this$props._noRightPadding,_this$props$use = _this$props.use,use = _this$props$use === void 0 ? Button.defaultProps.use : _this$props$use,visuallyFocused = _this$props.visuallyFocused,align = _this$props.align,disableFocus = _this$props.disableFocus,onMouseEnter = _this$props.onMouseEnter,onMouseLeave = _this$props.onMouseLeave,onMouseOver = _this$props.onMouseOver,onKeyDown = _this$props.onKeyDown,onClick = _this$props.onClick,width = _this$props.width,children = _this$props.children;var sizeClass = this.getSizeClassName();var isFocused = this.state.focusedByTab || visuallyFocused;var isLink = use === 'link';var rootProps = { // By default the type attribute is 'submit'. IE8 will fire a click event
|
|
387
390
|
// on this button if somewhere on the page user presses Enter while some
|
|
388
391
|
// input is focused. So we set type to 'button' by default.
|
|
389
|
-
type: this.props.type, className: (0, _Emotion.cx)((_cx = {}, _cx[_Button.styles.root(this.theme)] = true, _cx[_Button.styles[use](this.theme)] = true, _cx[_Button.activeStyles[use](this.theme)] = active, _cx[sizeClass] = true, _cx[_Button.styles.focus(this.theme)] = isFocused && !checked, _cx[_Button.styles.checked(this.theme)] = checked, _cx[_Button.styles.disabled(this.theme)] = disabled || loading, _cx[_Button.styles.checkedDisabled(this.theme)] = checked && disabled, _cx[_Button.styles.borderless()] = borderless && !disabled && !loading && !checked && !isFocused && !active, _cx[_Button.styles.narrow()] = narrow, _cx[_Button.styles.noPadding()] = _noPadding, _cx[_Button.styles.noRightPadding()] = _noRightPadding, _cx)), style: { borderTopLeftRadius: corners & _Corners.Corners.TOP_LEFT ? 0 : undefined, borderTopRightRadius: corners & _Corners.Corners.TOP_RIGHT ? 0 : undefined, borderBottomRightRadius: corners & _Corners.Corners.BOTTOM_RIGHT ? 0 : undefined, borderBottomLeftRadius: corners & _Corners.Corners.BOTTOM_LEFT ? 0 : undefined, textAlign: align }, disabled: disabled || loading, onClick: onClick, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: onKeyDown, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onMouseOver: onMouseOver, tabIndex: disableFocus ? -1 : 0 };var wrapProps = { className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_Button.styles.wrap()] = true, _cx2[_Button.styles.wrapArrow()] = arrow === true, _cx2[_Button.styles.wrapArrowLeft()] = arrow === 'left', _cx2)), style: { width: width } };var outlineNode = null;if (!isFocused || isLink) {var _cx3;outlineNode = /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.styles.outline(), (_cx3 = {}, _cx3[_Button.styles.outlineWarning(this.theme)] = warning, _cx3[_Button.styles.outlineError(this.theme)] = error, _cx3[_Button.styles.outlineLink()] = isLink, _cx3[_Button.styles.outlineLinkWarning(this.theme)] = isLink && warning, _cx3[_Button.styles.outlineLinkError(this.theme)] = isLink && error, _cx3)) });}var loadingNode = null;if (loading && !icon) {loadingNode = /*#__PURE__*/_react.default.createElement("div", { className: _Button.styles.loading() }, this.getLoadingSpinner());}var iconNode = null;if (icon) {var _cx4;iconNode = /*#__PURE__*/_react.default.createElement("span", { className: (0, _Emotion.cx)(_Button.styles.icon(), this.getSizeIconClassName(), (_cx4 = {}, _cx4[_Button.styles.iconNoRightPadding()] = !children, _cx4[_Button.styles.iconLink(this.theme)] = isLink, _cx4)) }, loading ? this.getLoadingSpinner() : icon);}var arrowNode = null;if (arrow) {var _cx5;arrowNode = /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)((_cx5 = {}, _cx5[_Button.styles.arrow()] = true, _cx5[_Button.styles.arrowWarning(this.theme)] = !checked && warning, _cx5[_Button.styles.arrowError(this.theme)] = !checked && error, _cx5[_Button.styles.arrowFocus(this.theme)] = !checked && isFocused, _cx5[_Button.styles.arrowLeft()] = arrow === 'left', _cx5)) }, /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.globalClasses.arrowHelper, _Button.globalClasses.arrowHelperTop) }), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.globalClasses.arrowHelper, _Button.globalClasses.arrowHelperBottom) }));} // Force disable all props and features, that cannot be use with Link
|
|
392
|
+
type: this.props.type, className: (0, _Emotion.cx)((_cx = {}, _cx[_Button.styles.root(this.theme)] = true, _cx[_Button.styles[use](this.theme)] = true, _cx[_Button.activeStyles[use](this.theme)] = active, _cx[sizeClass] = true, _cx[_Button.styles.focus(this.theme)] = isFocused && !checked, _cx[_Button.styles.checked(this.theme)] = checked, _cx[_Button.styles.disabled(this.theme)] = disabled || loading, _cx[_Button.styles.checkedDisabled(this.theme)] = checked && disabled, _cx[_Button.styles.borderless()] = borderless && !disabled && !loading && !checked && !isFocused && !active, _cx[_Button.styles.narrow()] = narrow, _cx[_Button.styles.noPadding()] = _noPadding, _cx[_Button.styles.noRightPadding()] = _noRightPadding, _cx)), style: { borderTopLeftRadius: corners & _Corners.Corners.TOP_LEFT ? 0 : undefined, borderTopRightRadius: corners & _Corners.Corners.TOP_RIGHT ? 0 : undefined, borderBottomRightRadius: corners & _Corners.Corners.BOTTOM_RIGHT ? 0 : undefined, borderBottomLeftRadius: corners & _Corners.Corners.BOTTOM_LEFT ? 0 : undefined, textAlign: align }, disabled: disabled || loading, onClick: onClick, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: onKeyDown, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onMouseOver: onMouseOver, tabIndex: disableFocus ? -1 : 0, title: this.props.title };var wrapProps = { className: (0, _Emotion.cx)((_cx2 = {}, _cx2[_Button.styles.wrap()] = true, _cx2[_Button.styles.wrapArrow()] = arrow === true, _cx2[_Button.styles.wrapArrowLeft()] = arrow === 'left', _cx2)), style: { width: width } };var outlineNode = null;if (!isFocused || isLink) {var _cx3;outlineNode = /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.styles.outline(), (_cx3 = {}, _cx3[_Button.styles.outlineWarning(this.theme)] = warning, _cx3[_Button.styles.outlineError(this.theme)] = error, _cx3[_Button.styles.outlineLink()] = isLink, _cx3[_Button.styles.outlineLinkWarning(this.theme)] = isLink && warning, _cx3[_Button.styles.outlineLinkError(this.theme)] = isLink && error, _cx3)) });}var loadingNode = null;if (loading && !icon) {loadingNode = /*#__PURE__*/_react.default.createElement("div", { className: _Button.styles.loading() }, this.getLoadingSpinner());}var iconNode = null;if (icon) {var _cx4;iconNode = /*#__PURE__*/_react.default.createElement("span", { className: (0, _Emotion.cx)(_Button.styles.icon(), this.getSizeIconClassName(), (_cx4 = {}, _cx4[_Button.styles.iconNoRightPadding()] = !children, _cx4[_Button.styles.iconLink(this.theme)] = isLink, _cx4)) }, loading ? this.getLoadingSpinner() : icon);}var arrowNode = null;if (arrow) {var _cx5;arrowNode = /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)((_cx5 = {}, _cx5[_Button.styles.arrow()] = true, _cx5[_Button.styles.arrowWarning(this.theme)] = !checked && warning, _cx5[_Button.styles.arrowError(this.theme)] = !checked && error, _cx5[_Button.styles.arrowFocus(this.theme)] = !checked && isFocused, _cx5[_Button.styles.arrowLeft()] = arrow === 'left', _cx5)) }, /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.globalClasses.arrowHelper, _Button.globalClasses.arrowHelperTop) }), /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.globalClasses.arrowHelper, _Button.globalClasses.arrowHelperBottom) }));} // Force disable all props and features, that cannot be use with Link
|
|
390
393
|
if (isLink) {var _cx6;rootProps.className = (0, _Emotion.cx)((_cx6 = {}, _cx6[_Button.styles.root(this.theme)] = true, _cx6[sizeClass] = true, _cx6[_Button.styles.link(this.theme)] = true, _cx6[_Button.styles.linkFocus(this.theme)] = isFocused, _cx6[_Button.styles.linkDisabled(this.theme)] = disabled || loading, _cx6));Object.assign(wrapProps, { className: (0, _Emotion.cx)(_Button.styles.wrap(), _Button.styles.wrapLink()), style: { width: wrapProps.style.width } });rootProps.style.textAlign = undefined;arrowNode = null;}return /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, this.props, /*#__PURE__*/_react.default.createElement("span", wrapProps, /*#__PURE__*/_react.default.createElement("button", (0, _extends2.default)({ ref: this._ref }, rootProps), outlineNode, loadingNode, arrowNode, /*#__PURE__*/_react.default.createElement("div", { className: (0, _Emotion.cx)(_Button.styles.caption(), _Button.globalClasses.caption, (_cx7 = {}, _cx7[_Button.styles.captionTranslated()] = active || checked, _cx7[_Button.styles.captionLink()] = isLink, _cx7[_Button.styles.captionDisabled()] = !checked && disabled, _cx7)) }, iconNode, /*#__PURE__*/_react.default.createElement("span", { className: (0, _Emotion.cx)((_cx8 = {}, _cx8[_Button.styles.visibilityHidden()] = !!loadingNode, _cx8)) }, children)))));};_proto.getLoadingSpinner = function getLoadingSpinner() {return /*#__PURE__*/_react.default.createElement(_Spinner.Spinner, { caption: null, dimmed: true, type: "mini" });};_proto.getSizeClassName = function getSizeClassName() {var _cx9, _cx10, _cx11;switch (this.props.size) {case 'large':return (0, _Emotion.cx)(_Button.styles.sizeLarge(this.theme), (_cx9 = {}, _cx9[_Button.styles.sizeLargeIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx9));case 'medium':return (0, _Emotion.cx)(_Button.styles.sizeMedium(this.theme), (_cx10 = {}, _cx10[_Button.styles.sizeMediumIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx10));case 'small':default:return (0, _Emotion.cx)(_Button.styles.sizeSmall(this.theme), (_cx11 = {}, _cx11[_Button.styles.sizeSmallIE11(this.theme)] = _client.isIE11 || _client.isEdge, _cx11));}};_proto.getSizeIconClassName = function getSizeIconClassName() {switch (this.props.size) {case 'large':return _Button.styles.iconLarge(this.theme);case 'medium':return _Button.styles.iconMedium(this.theme);case 'small':default:return _Button.styles.iconSmall(this.theme);}};return Button;}(_react.default.Component);exports.Button = Button;Button.__KONTUR_REACT_UI__ = 'Button';Button.__BUTTON__ = true;Button.TOP_LEFT = _Corners.Corners.TOP_LEFT;Button.TOP_RIGHT = _Corners.Corners.TOP_RIGHT;Button.BOTTOM_RIGHT = _Corners.Corners.BOTTOM_RIGHT;Button.BOTTOM_LEFT = _Corners.Corners.BOTTOM_LEFT;Button.defaultProps = { use: 'default', size: 'small', type: 'button' };var isButton = function isButton(child) {return /*#__PURE__*/_react.default.isValidElement(child) ? Object.prototype.hasOwnProperty.call(child.type, '__BUTTON__') : false;};exports.isButton = isButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Button.tsx"],"names":["Button","state","focusedByTab","theme","node","handleFocus","e","props","disabled","disableFocus","requestAnimationFrame","keyListener","isTabPressed","setState","onFocus","handleBlur","onBlur","_ref","componentDidMount","autoFocus","focus","blur","render","renderMain","corners","active","borderless","checked","error","warning","loading","arrow","narrow","icon","_noPadding","_noRightPadding","use","defaultProps","visuallyFocused","align","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onClick","width","children","sizeClass","getSizeClassName","isFocused","isLink","rootProps","type","className","styles","root","activeStyles","checkedDisabled","noPadding","noRightPadding","style","borderTopLeftRadius","Corners","TOP_LEFT","undefined","borderTopRightRadius","TOP_RIGHT","borderBottomRightRadius","BOTTOM_RIGHT","borderBottomLeftRadius","BOTTOM_LEFT","textAlign","tabIndex","wrapProps","wrap","wrapArrow","wrapArrowLeft","outlineNode","outline","outlineWarning","outlineError","outlineLink","outlineLinkWarning","outlineLinkError","loadingNode","getLoadingSpinner","iconNode","getSizeIconClassName","iconNoRightPadding","iconLink","arrowNode","arrowWarning","arrowError","arrowFocus","arrowLeft","globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","link","linkFocus","linkDisabled","Object","assign","wrapLink","caption","captionTranslated","captionLink","captionDisabled","visibilityHidden","size","sizeLarge","sizeLargeIE11","isIE11","isEdge","sizeMedium","sizeMediumIE11","sizeSmall","sizeSmallIE11","iconLarge","iconMedium","iconSmall","React","Component","__KONTUR_REACT_UI__","__BUTTON__","isButton","child","isValidElement","prototype","hasOwnProperty","call"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport { isIE11, isEdge } from '../../lib/client';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Spinner } from '../Spinner';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles, activeStyles, globalClasses } from './Button.styles';\nimport { Corners } from './Corners';\n\nexport type ButtonSize = 'small' | 'medium' | 'large';\nexport type ButtonType = 'button' | 'submit' | 'reset';\nexport type ButtonUse = 'default' | 'primary' | 'success' | 'danger' | 'pay' | 'link';\n\nexport interface ButtonProps extends CommonProps {\n /** @ignore */\n _noPadding?: boolean;\n\n /** @ignore */\n _noRightPadding?: boolean;\n\n /**\n * Визуально нажатое состояние.\n */\n active?: boolean;\n\n /** `type TextAlignProperty = \"inherit\" | \"initial\" | \"unset\" | \"center\" | \"end\" | \"justify\" | \"left\" | \"match-parent\" | \"right\" | \"start\"` */\n align?: React.CSSProperties['textAlign'];\n\n /**\n * Кнопка со стрелкой.\n *\n * `type ButtonArrow = boolean | \"left\"`\n */\n arrow?: boolean | 'left';\n\n autoFocus?: boolean;\n\n borderless?: boolean;\n\n checked?: boolean;\n\n children?: React.ReactNode;\n\n /** @ignore */\n corners?: number;\n\n disabled?: boolean;\n\n /** @ignore */\n disableFocus?: boolean;\n\n error?: boolean;\n\n focused?: boolean;\n\n /**\n * Иконка слева от текста кнопки.\n */\n icon?: React.ReactElement<any>;\n\n loading?: boolean;\n\n narrow?: boolean;\n\n onBlur?: React.FocusEventHandler<HTMLButtonElement>;\n\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n\n onFocus?: React.FocusEventHandler<HTMLButtonElement>;\n\n onKeyDown?: React.KeyboardEventHandler<HTMLButtonElement>;\n\n onMouseEnter?: React.MouseEventHandler<HTMLButtonElement>;\n\n onMouseLeave?: React.MouseEventHandler<HTMLButtonElement>;\n\n onMouseOver?: React.MouseEventHandler<HTMLButtonElement>;\n\n /** `type ButtonSize = \"small\" | \"medium\" | \"large\"` */\n size?: ButtonSize;\n\n /** `type ButtonType = \"button\" | \"submit\" | \"reset\"` */\n type?: ButtonType;\n\n /**\n * Вариант использования. Влияет на цвет кнопки.\n *\n * `type ButtonUse = \"default\" | \"primary\" | \"success\" | \"danger\" | \"pay\" | \"link\"`\n */\n use?: ButtonUse;\n\n /** @ignore */\n visuallyFocused?: boolean;\n\n warning?: boolean;\n\n width?: number | string;\n}\n\nexport interface ButtonState {\n focusedByTab: boolean;\n}\n\nexport class Button extends React.Component<ButtonProps, ButtonState> {\n public static __KONTUR_REACT_UI__ = 'Button';\n public static __BUTTON__ = true;\n public static TOP_LEFT = Corners.TOP_LEFT;\n public static TOP_RIGHT = Corners.TOP_RIGHT;\n public static BOTTOM_RIGHT = Corners.BOTTOM_RIGHT;\n public static BOTTOM_LEFT = Corners.BOTTOM_LEFT;\n\n public static defaultProps = {\n use: 'default' as ButtonUse,\n size: 'small' as ButtonSize,\n type: 'button' as ButtonType,\n };\n\n public state = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private node: HTMLButtonElement | null = null;\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n /**\n * @public\n */\n public focus() {\n this.node?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.node?.blur();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n corners = 0,\n active,\n disabled,\n borderless,\n checked,\n error,\n warning,\n loading,\n arrow,\n narrow,\n icon,\n _noPadding,\n _noRightPadding,\n use = Button.defaultProps.use,\n visuallyFocused,\n align,\n disableFocus,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onClick,\n width,\n children,\n } = this.props;\n const sizeClass = this.getSizeClassName();\n\n const isFocused = this.state.focusedByTab || visuallyFocused;\n const isLink = use === 'link';\n const rootProps = {\n // By default the type attribute is 'submit'. IE8 will fire a click event\n // on this button if somewhere on the page user presses Enter while some\n // input is focused. So we set type to 'button' by default.\n type: this.props.type,\n className: cx({\n [styles.root(this.theme)]: true,\n [styles[use](this.theme)]: true,\n [activeStyles[use](this.theme)]: active,\n [sizeClass]: true,\n [styles.focus(this.theme)]: isFocused && !checked,\n [styles.checked(this.theme)]: checked,\n [styles.disabled(this.theme)]: disabled || loading,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n [styles.borderless()]: borderless && !disabled && !loading && !checked && !isFocused && !active,\n [styles.narrow()]: narrow,\n [styles.noPadding()]: _noPadding,\n [styles.noRightPadding()]: _noRightPadding,\n }),\n style: {\n borderTopLeftRadius: corners & Corners.TOP_LEFT ? 0 : undefined,\n borderTopRightRadius: corners & Corners.TOP_RIGHT ? 0 : undefined,\n borderBottomRightRadius: corners & Corners.BOTTOM_RIGHT ? 0 : undefined,\n borderBottomLeftRadius: corners & Corners.BOTTOM_LEFT ? 0 : undefined,\n textAlign: align,\n },\n disabled: disabled || loading,\n onClick: onClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onKeyDown: onKeyDown,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onMouseOver: onMouseOver,\n tabIndex: disableFocus ? -1 : 0,\n };\n\n const wrapProps = {\n className: cx({\n [styles.wrap()]: true,\n [styles.wrapArrow()]: arrow === true,\n [styles.wrapArrowLeft()]: arrow === 'left',\n }),\n style: {\n width: width,\n },\n };\n\n let outlineNode = null;\n if (!isFocused || isLink) {\n outlineNode = (\n <div\n className={cx(styles.outline(), {\n [styles.outlineWarning(this.theme)]: warning,\n [styles.outlineError(this.theme)]: error,\n [styles.outlineLink()]: isLink,\n [styles.outlineLinkWarning(this.theme)]: isLink && warning,\n [styles.outlineLinkError(this.theme)]: isLink && error,\n })}\n />\n );\n }\n\n let loadingNode = null;\n if (loading && !icon) {\n loadingNode = <div className={styles.loading()}>{this.getLoadingSpinner()}</div>;\n }\n\n let iconNode = null;\n if (icon) {\n iconNode = (\n <span\n className={cx(styles.icon(), this.getSizeIconClassName(), {\n [styles.iconNoRightPadding()]: !children,\n [styles.iconLink(this.theme)]: isLink,\n })}\n >\n {loading ? this.getLoadingSpinner() : icon}\n </span>\n );\n }\n\n let arrowNode = null;\n if (arrow) {\n arrowNode = (\n <div\n className={cx({\n [styles.arrow()]: true,\n [styles.arrowWarning(this.theme)]: !checked && warning,\n [styles.arrowError(this.theme)]: !checked && error,\n [styles.arrowFocus(this.theme)]: !checked && isFocused,\n [styles.arrowLeft()]: arrow === 'left',\n })}\n >\n <div className={cx(globalClasses.arrowHelper, globalClasses.arrowHelperTop)} />\n <div className={cx(globalClasses.arrowHelper, globalClasses.arrowHelperBottom)} />\n </div>\n );\n }\n\n // Force disable all props and features, that cannot be use with Link\n if (isLink) {\n rootProps.className = cx({\n [styles.root(this.theme)]: true,\n [sizeClass]: true,\n [styles.link(this.theme)]: true,\n [styles.linkFocus(this.theme)]: isFocused,\n [styles.linkDisabled(this.theme)]: disabled || loading,\n });\n Object.assign(wrapProps, {\n className: cx(styles.wrap(), styles.wrapLink()),\n style: { width: wrapProps.style.width },\n });\n rootProps.style.textAlign = undefined;\n arrowNode = null;\n }\n\n return (\n <CommonWrapper {...this.props}>\n <span {...wrapProps}>\n <button ref={this._ref} {...rootProps}>\n {outlineNode}\n {loadingNode}\n {arrowNode}\n <div\n className={cx(styles.caption(), globalClasses.caption, {\n [styles.captionTranslated()]: active || checked,\n [styles.captionLink()]: isLink,\n [styles.captionDisabled()]: !checked && disabled,\n })}\n >\n {iconNode}\n <span className={cx({ [styles.visibilityHidden()]: !!loadingNode })}>{children}</span>\n </div>\n </button>\n </span>\n </CommonWrapper>\n );\n }\n\n private getLoadingSpinner() {\n return <Spinner caption={null} dimmed type=\"mini\" />;\n }\n\n private getSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return cx(styles.sizeLarge(this.theme), { [styles.sizeLargeIE11(this.theme)]: isIE11 || isEdge });\n case 'medium':\n return cx(styles.sizeMedium(this.theme), { [styles.sizeMediumIE11(this.theme)]: isIE11 || isEdge });\n case 'small':\n default:\n return cx(styles.sizeSmall(this.theme), { [styles.sizeSmallIE11(this.theme)]: isIE11 || isEdge });\n }\n }\n\n private getSizeIconClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.iconLarge(this.theme);\n case 'medium':\n return styles.iconMedium(this.theme);\n case 'small':\n default:\n return styles.iconSmall(this.theme);\n }\n }\n\n private handleFocus = (e: React.FocusEvent<HTMLButtonElement>) => {\n if (!this.props.disabled && !this.props.disableFocus) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n this.props.onFocus?.(e);\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLButtonElement>) => {\n this.setState({ focusedByTab: false });\n if (!this.props.disabled && !this.props.disableFocus) {\n this.props.onBlur?.(e);\n }\n };\n\n private _ref = (node: HTMLButtonElement | null) => {\n this.node = node;\n };\n}\n\nexport const isButton = (child: React.ReactChild): child is React.ReactElement<ButtonProps> => {\n return React.isValidElement<ButtonProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__BUTTON__')\n : false;\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["Button.tsx"],"names":["Button","state","focusedByTab","theme","node","handleFocus","e","props","disabled","disableFocus","requestAnimationFrame","keyListener","isTabPressed","setState","onFocus","handleBlur","onBlur","_ref","componentDidMount","autoFocus","focus","blur","render","renderMain","corners","active","borderless","checked","error","warning","loading","arrow","narrow","icon","_noPadding","_noRightPadding","use","defaultProps","visuallyFocused","align","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onClick","width","children","sizeClass","getSizeClassName","isFocused","isLink","rootProps","type","className","styles","root","activeStyles","checkedDisabled","noPadding","noRightPadding","style","borderTopLeftRadius","Corners","TOP_LEFT","undefined","borderTopRightRadius","TOP_RIGHT","borderBottomRightRadius","BOTTOM_RIGHT","borderBottomLeftRadius","BOTTOM_LEFT","textAlign","tabIndex","title","wrapProps","wrap","wrapArrow","wrapArrowLeft","outlineNode","outline","outlineWarning","outlineError","outlineLink","outlineLinkWarning","outlineLinkError","loadingNode","getLoadingSpinner","iconNode","getSizeIconClassName","iconNoRightPadding","iconLink","arrowNode","arrowWarning","arrowError","arrowFocus","arrowLeft","globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","link","linkFocus","linkDisabled","Object","assign","wrapLink","caption","captionTranslated","captionLink","captionDisabled","visibilityHidden","size","sizeLarge","sizeLargeIE11","isIE11","isEdge","sizeMedium","sizeMediumIE11","sizeSmall","sizeSmallIE11","iconLarge","iconMedium","iconSmall","React","Component","__KONTUR_REACT_UI__","__BUTTON__","isButton","child","isValidElement","prototype","hasOwnProperty","call"],"mappings":"uVAAA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,oC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkGaA,M;;;;;;;;;;;;;;AAcJC,IAAAA,K,GAAQ;AACbC,MAAAA,YAAY,EAAE,KADD,E;;;AAIPC,IAAAA,K;AACAC,IAAAA,I,GAAiC,I;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0OjCC,IAAAA,W,GAAc,UAACC,CAAD,EAA4C;AAChE,UAAI,CAAC,MAAKC,KAAL,CAAWC,QAAZ,IAAwB,CAAC,MAAKD,KAAL,CAAWE,YAAxC,EAAsD;AACpD;AACA;AACAC,QAAAA,qBAAqB,CAAC,YAAM;AAC1B,cAAIC,yBAAYC,YAAhB,EAA8B;AAC5B,kBAAKC,QAAL,CAAc,EAAEX,YAAY,EAAE,IAAhB,EAAd;AACD;AACF,SAJoB,CAArB;AAKA,cAAKK,KAAL,CAAWO,OAAX,0BAAKP,KAAL,CAAWO,OAAX,CAAqBR,CAArB;AACD;AACF,K;;AAEOS,IAAAA,U,GAAa,UAACT,CAAD,EAA4C;AAC/D,YAAKO,QAAL,CAAc,EAAEX,YAAY,EAAE,KAAhB,EAAd;AACA,UAAI,CAAC,MAAKK,KAAL,CAAWC,QAAZ,IAAwB,CAAC,MAAKD,KAAL,CAAWE,YAAxC,EAAsD;AACpD,cAAKF,KAAL,CAAWS,MAAX,0BAAKT,KAAL,CAAWS,MAAX,CAAoBV,CAApB;AACD;AACF,K;;AAEOW,IAAAA,I,GAAO,UAACb,IAAD,EAAoC;AACjD,YAAKA,IAAL,GAAYA,IAAZ;AACD,K,oDA9PMc,iB,GAAP,6BAA2B,CACzB,IAAI,KAAKX,KAAL,CAAWY,SAAf,EAA0B,CACxBR,yBAAYC,YAAZ,GAA2B,IAA3B,CACA,KAAKQ,KAAL,GACD,CACF,C,CAED;AACF;AACA,K,QACSA,K,GAAP,iBAAe,gBACb,mBAAKhB,IAAL,gCAAWgB,KAAX,GACD,C,CAED;AACF;AACA,K,QACSC,I,GAAP,gBAAc,iBACZ,oBAAKjB,IAAL,iCAAWiB,IAAX,GACD,C,QAEMC,M,GAAP,kBAA6B,mBAC3B,oBACE,6BAAC,0BAAD,CAAc,QAAd,QACG,UAACnB,KAAD,EAAW,CACV,MAAI,CAACA,KAAL,GAAaA,KAAb,CACA,OAAO,MAAI,CAACoB,UAAL,EAAP,CACD,CAJH,CADF,CAQD,C,QAEOA,U,GAAR,sBAAqB,6CA0Bf,KAAKhB,KA1BU,mCAEjBiB,OAFiB,CAEjBA,OAFiB,oCAEP,CAFO,uBAGjBC,MAHiB,eAGjBA,MAHiB,CAIjBjB,QAJiB,eAIjBA,QAJiB,CAKjBkB,UALiB,eAKjBA,UALiB,CAMjBC,OANiB,eAMjBA,OANiB,CAOjBC,KAPiB,eAOjBA,KAPiB,CAQjBC,OARiB,eAQjBA,OARiB,CASjBC,OATiB,eASjBA,OATiB,CAUjBC,KAViB,eAUjBA,KAViB,CAWjBC,MAXiB,eAWjBA,MAXiB,CAYjBC,IAZiB,eAYjBA,IAZiB,CAajBC,UAbiB,eAajBA,UAbiB,CAcjBC,eAdiB,eAcjBA,eAdiB,+BAejBC,GAfiB,CAejBA,GAfiB,gCAeXpC,MAAM,CAACqC,YAAP,CAAoBD,GAfT,mBAgBjBE,eAhBiB,eAgBjBA,eAhBiB,CAiBjBC,KAjBiB,eAiBjBA,KAjBiB,CAkBjB9B,YAlBiB,eAkBjBA,YAlBiB,CAmBjB+B,YAnBiB,eAmBjBA,YAnBiB,CAoBjBC,YApBiB,eAoBjBA,YApBiB,CAqBjBC,WArBiB,eAqBjBA,WArBiB,CAsBjBC,SAtBiB,eAsBjBA,SAtBiB,CAuBjBC,OAvBiB,eAuBjBA,OAvBiB,CAwBjBC,KAxBiB,eAwBjBA,KAxBiB,CAyBjBC,QAzBiB,eAyBjBA,QAzBiB,CA2BnB,IAAMC,SAAS,GAAG,KAAKC,gBAAL,EAAlB,CAEA,IAAMC,SAAS,GAAG,KAAKhD,KAAL,CAAWC,YAAX,IAA2BoC,eAA7C,CACA,IAAMY,MAAM,GAAGd,GAAG,KAAK,MAAvB,CACA,IAAMe,SAAS,GAAG,EAChB;AACA;AACA;AACAC,MAAAA,IAAI,EAAE,KAAK7C,KAAL,CAAW6C,IAJD,EAKhBC,SAAS,EAAE,gCACRC,eAAOC,IAAP,CAAY,KAAKpD,KAAjB,CADQ,IACkB,IADlB,MAERmD,eAAOlB,GAAP,EAAY,KAAKjC,KAAjB,CAFQ,IAEkB,IAFlB,MAGRqD,qBAAapB,GAAb,EAAkB,KAAKjC,KAAvB,CAHQ,IAGwBsB,MAHxB,MAIRsB,SAJQ,IAII,IAJJ,MAKRO,eAAOlC,KAAP,CAAa,KAAKjB,KAAlB,CALQ,IAKmB8C,SAAS,IAAI,CAACtB,OALjC,MAMR2B,eAAO3B,OAAP,CAAe,KAAKxB,KAApB,CANQ,IAMqBwB,OANrB,MAOR2B,eAAO9C,QAAP,CAAgB,KAAKL,KAArB,CAPQ,IAOsBK,QAAQ,IAAIsB,OAPlC,MAQRwB,eAAOG,eAAP,CAAuB,KAAKtD,KAA5B,CARQ,IAQ6BwB,OAAO,IAAInB,QARxC,MASR8C,eAAO5B,UAAP,EATQ,IAScA,UAAU,IAAI,CAAClB,QAAf,IAA2B,CAACsB,OAA5B,IAAuC,CAACH,OAAxC,IAAmD,CAACsB,SAApD,IAAiE,CAACxB,MAThF,MAUR6B,eAAOtB,MAAP,EAVQ,IAUUA,MAVV,MAWRsB,eAAOI,SAAP,EAXQ,IAWaxB,UAXb,MAYRoB,eAAOK,cAAP,EAZQ,IAYkBxB,eAZlB,OALK,EAmBhByB,KAAK,EAAE,EACLC,mBAAmB,EAAErC,OAAO,GAAGsC,iBAAQC,QAAlB,GAA6B,CAA7B,GAAiCC,SADjD,EAELC,oBAAoB,EAAEzC,OAAO,GAAGsC,iBAAQI,SAAlB,GAA8B,CAA9B,GAAkCF,SAFnD,EAGLG,uBAAuB,EAAE3C,OAAO,GAAGsC,iBAAQM,YAAlB,GAAiC,CAAjC,GAAqCJ,SAHzD,EAILK,sBAAsB,EAAE7C,OAAO,GAAGsC,iBAAQQ,WAAlB,GAAgC,CAAhC,GAAoCN,SAJvD,EAKLO,SAAS,EAAEhC,KALN,EAnBS,EA0BhB/B,QAAQ,EAAEA,QAAQ,IAAIsB,OA1BN,EA2BhBc,OAAO,EAAEA,OA3BO,EA4BhB9B,OAAO,EAAE,KAAKT,WA5BE,EA6BhBW,MAAM,EAAE,KAAKD,UA7BG,EA8BhB4B,SAAS,EAAEA,SA9BK,EA+BhBH,YAAY,EAAEA,YA/BE,EAgChBC,YAAY,EAAEA,YAhCE,EAiChBC,WAAW,EAAEA,WAjCG,EAkChB8B,QAAQ,EAAE/D,YAAY,GAAG,CAAC,CAAJ,GAAQ,CAlCd,EAmChBgE,KAAK,EAAE,KAAKlE,KAAL,CAAWkE,KAnCF,EAAlB,CAsCA,IAAMC,SAAS,GAAG,EAChBrB,SAAS,EAAE,kCACRC,eAAOqB,IAAP,EADQ,IACQ,IADR,OAERrB,eAAOsB,SAAP,EAFQ,IAEa7C,KAAK,KAAK,IAFvB,OAGRuB,eAAOuB,aAAP,EAHQ,IAGiB9C,KAAK,KAAK,MAH3B,QADK,EAMhB6B,KAAK,EAAE,EACLf,KAAK,EAAEA,KADF,EANS,EAAlB,CAWA,IAAIiC,WAAW,GAAG,IAAlB,CACA,IAAI,CAAC7B,SAAD,IAAcC,MAAlB,EAA0B,UACxB4B,WAAW,gBACT,sCACE,SAAS,EAAE,iBAAGxB,eAAOyB,OAAP,EAAH,mBACRzB,eAAO0B,cAAP,CAAsB,KAAK7E,KAA3B,CADQ,IAC4B0B,OAD5B,OAERyB,eAAO2B,YAAP,CAAoB,KAAK9E,KAAzB,CAFQ,IAE0ByB,KAF1B,OAGR0B,eAAO4B,WAAP,EAHQ,IAGehC,MAHf,OAIRI,eAAO6B,kBAAP,CAA0B,KAAKhF,KAA/B,CAJQ,IAIgC+C,MAAM,IAAIrB,OAJ1C,OAKRyB,eAAO8B,gBAAP,CAAwB,KAAKjF,KAA7B,CALQ,IAK8B+C,MAAM,IAAItB,KALxC,QADb,GADF,CAWD,CAED,IAAIyD,WAAW,GAAG,IAAlB,CACA,IAAIvD,OAAO,IAAI,CAACG,IAAhB,EAAsB,CACpBoD,WAAW,gBAAG,sCAAK,SAAS,EAAE/B,eAAOxB,OAAP,EAAhB,IAAmC,KAAKwD,iBAAL,EAAnC,CAAd,CACD,CAED,IAAIC,QAAQ,GAAG,IAAf,CACA,IAAItD,IAAJ,EAAU,UACRsD,QAAQ,gBACN,uCACE,SAAS,EAAE,iBAAGjC,eAAOrB,IAAP,EAAH,EAAkB,KAAKuD,oBAAL,EAAlB,mBACRlC,eAAOmC,kBAAP,EADQ,IACsB,CAAC3C,QADvB,OAERQ,eAAOoC,QAAP,CAAgB,KAAKvF,KAArB,CAFQ,IAEsB+C,MAFtB,QADb,IAMGpB,OAAO,GAAG,KAAKwD,iBAAL,EAAH,GAA8BrD,IANxC,CADF,CAUD,CAED,IAAI0D,SAAS,GAAG,IAAhB,CACA,IAAI5D,KAAJ,EAAW,UACT4D,SAAS,gBACP,sCACE,SAAS,EAAE,kCACRrC,eAAOvB,KAAP,EADQ,IACS,IADT,OAERuB,eAAOsC,YAAP,CAAoB,KAAKzF,KAAzB,CAFQ,IAE0B,CAACwB,OAAD,IAAYE,OAFtC,OAGRyB,eAAOuC,UAAP,CAAkB,KAAK1F,KAAvB,CAHQ,IAGwB,CAACwB,OAAD,IAAYC,KAHpC,OAIR0B,eAAOwC,UAAP,CAAkB,KAAK3F,KAAvB,CAJQ,IAIwB,CAACwB,OAAD,IAAYsB,SAJpC,OAKRK,eAAOyC,SAAP,EALQ,IAKahE,KAAK,KAAK,MALvB,QADb,iBASE,sCAAK,SAAS,EAAE,iBAAGiE,sBAAcC,WAAjB,EAA8BD,sBAAcE,cAA5C,CAAhB,GATF,eAUE,sCAAK,SAAS,EAAE,iBAAGF,sBAAcC,WAAjB,EAA8BD,sBAAcG,iBAA5C,CAAhB,GAVF,CADF,CAcD,CAlIkB,CAoInB;AACA,QAAIjD,MAAJ,EAAY,UACVC,SAAS,CAACE,SAAV,GAAsB,kCACnBC,eAAOC,IAAP,CAAY,KAAKpD,KAAjB,CADmB,IACO,IADP,OAEnB4C,SAFmB,IAEP,IAFO,OAGnBO,eAAO8C,IAAP,CAAY,KAAKjG,KAAjB,CAHmB,IAGO,IAHP,OAInBmD,eAAO+C,SAAP,CAAiB,KAAKlG,KAAtB,CAJmB,IAIY8C,SAJZ,OAKnBK,eAAOgD,YAAP,CAAoB,KAAKnG,KAAzB,CALmB,IAKeK,QAAQ,IAAIsB,OAL3B,QAAtB,CAOAyE,MAAM,CAACC,MAAP,CAAc9B,SAAd,EAAyB,EACvBrB,SAAS,EAAE,iBAAGC,eAAOqB,IAAP,EAAH,EAAkBrB,eAAOmD,QAAP,EAAlB,CADY,EAEvB7C,KAAK,EAAE,EAAEf,KAAK,EAAE6B,SAAS,CAACd,KAAV,CAAgBf,KAAzB,EAFgB,EAAzB,EAIAM,SAAS,CAACS,KAAV,CAAgBW,SAAhB,GAA4BP,SAA5B,CACA2B,SAAS,GAAG,IAAZ,CACD,CAED,oBACE,6BAAC,4BAAD,EAAmB,KAAKpF,KAAxB,eACE,qCAAUmE,SAAV,eACE,gEAAQ,GAAG,EAAE,KAAKzD,IAAlB,IAA4BkC,SAA5B,GACG2B,WADH,EAEGO,WAFH,EAGGM,SAHH,eAIE,sCACE,SAAS,EAAE,iBAAGrC,eAAOoD,OAAP,EAAH,EAAqBV,sBAAcU,OAAnC,mBACRpD,eAAOqD,iBAAP,EADQ,IACqBlF,MAAM,IAAIE,OAD/B,OAER2B,eAAOsD,WAAP,EAFQ,IAEe1D,MAFf,OAGRI,eAAOuD,eAAP,EAHQ,IAGmB,CAAClF,OAAD,IAAYnB,QAH/B,QADb,IAOG+E,QAPH,eAQE,uCAAM,SAAS,EAAE,kCAAMjC,eAAOwD,gBAAP,EAAN,IAAkC,CAAC,CAACzB,WAApC,QAAjB,IAAsEvC,QAAtE,CARF,CAJF,CADF,CADF,CADF,CAqBD,C,QAEOwC,iB,GAAR,6BAA4B,CAC1B,oBAAO,6BAAC,gBAAD,IAAS,OAAO,EAAE,IAAlB,EAAwB,MAAM,MAA9B,EAA+B,IAAI,EAAC,MAApC,GAAP,CACD,C,QAEOtC,gB,GAAR,4BAA2B,wBACzB,QAAQ,KAAKzC,KAAL,CAAWwG,IAAnB,GACE,KAAK,OAAL,CACE,OAAO,iBAAGzD,eAAO0D,SAAP,CAAiB,KAAK7G,KAAtB,CAAH,mBAAoCmD,eAAO2D,aAAP,CAAqB,KAAK9G,KAA1B,CAApC,IAAuE+G,kBAAUC,cAAjF,QAAP,CACF,KAAK,QAAL,CACE,OAAO,iBAAG7D,eAAO8D,UAAP,CAAkB,KAAKjH,KAAvB,CAAH,qBAAqCmD,eAAO+D,cAAP,CAAsB,KAAKlH,KAA3B,CAArC,IAAyE+G,kBAAUC,cAAnF,SAAP,CACF,KAAK,OAAL,CACA,QACE,OAAO,iBAAG7D,eAAOgE,SAAP,CAAiB,KAAKnH,KAAtB,CAAH,qBAAoCmD,eAAOiE,aAAP,CAAqB,KAAKpH,KAA1B,CAApC,IAAuE+G,kBAAUC,cAAjF,SAAP,CAPJ,CASD,C,QAEO3B,oB,GAAR,gCAA+B,CAC7B,QAAQ,KAAKjF,KAAL,CAAWwG,IAAnB,GACE,KAAK,OAAL,CACE,OAAOzD,eAAOkE,SAAP,CAAiB,KAAKrH,KAAtB,CAAP,CACF,KAAK,QAAL,CACE,OAAOmD,eAAOmE,UAAP,CAAkB,KAAKtH,KAAvB,CAAP,CACF,KAAK,OAAL,CACA,QACE,OAAOmD,eAAOoE,SAAP,CAAiB,KAAKvH,KAAtB,CAAP,CAPJ,CASD,C,iBA3PyBwH,eAAMC,S,0BAArB5H,M,CACG6H,mB,GAAsB,Q,CADzB7H,M,CAEG8H,U,GAAa,I,CAFhB9H,M,CAGG+D,Q,GAAWD,iBAAQC,Q,CAHtB/D,M,CAIGkE,S,GAAYJ,iBAAQI,S,CAJvBlE,M,CAKGoE,Y,GAAeN,iBAAQM,Y,CAL1BpE,M,CAMGsE,W,GAAcR,iBAAQQ,W,CANzBtE,M,CAQGqC,Y,GAAe,EAC3BD,GAAG,EAAE,SADsB,EAE3B2E,IAAI,EAAE,OAFqB,EAG3B3D,IAAI,EAAE,QAHqB,E,CA8QxB,IAAM2E,QAAQ,GAAG,SAAXA,QAAW,CAACC,KAAD,EAAuE,CAC7F,OAAO,4BAAMC,cAAN,CAAkCD,KAAlC,IACHzB,MAAM,CAAC2B,SAAP,CAAiBC,cAAjB,CAAgCC,IAAhC,CAAqCJ,KAAK,CAAC5E,IAA3C,EAAiD,YAAjD,CADG,GAEH,KAFJ,CAGD,CAJM,C","sourcesContent":["import React from 'react';\n\nimport { isIE11, isEdge } from '../../lib/client';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Spinner } from '../Spinner';\nimport { CommonWrapper, CommonProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles, activeStyles, globalClasses } from './Button.styles';\nimport { Corners } from './Corners';\n\nexport type ButtonSize = 'small' | 'medium' | 'large';\nexport type ButtonType = 'button' | 'submit' | 'reset';\nexport type ButtonUse = 'default' | 'primary' | 'success' | 'danger' | 'pay' | 'link';\n\nexport interface ButtonProps extends CommonProps {\n /** @ignore */\n _noPadding?: boolean;\n\n /** @ignore */\n _noRightPadding?: boolean;\n\n /**\n * Визуально нажатое состояние.\n */\n active?: boolean;\n\n /** `type TextAlignProperty = \"inherit\" | \"initial\" | \"unset\" | \"center\" | \"end\" | \"justify\" | \"left\" | \"match-parent\" | \"right\" | \"start\"` */\n align?: React.CSSProperties['textAlign'];\n\n /**\n * Кнопка со стрелкой.\n *\n * `type ButtonArrow = boolean | \"left\"`\n */\n arrow?: boolean | 'left';\n\n autoFocus?: boolean;\n\n borderless?: boolean;\n\n checked?: boolean;\n\n children?: React.ReactNode;\n\n /** @ignore */\n corners?: number;\n\n disabled?: boolean;\n\n /** @ignore */\n disableFocus?: boolean;\n\n error?: boolean;\n\n focused?: boolean;\n\n /**\n * Иконка слева от текста кнопки.\n */\n icon?: React.ReactElement<any>;\n\n loading?: boolean;\n\n narrow?: boolean;\n\n onBlur?: React.FocusEventHandler<HTMLButtonElement>;\n\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n\n onFocus?: React.FocusEventHandler<HTMLButtonElement>;\n\n onKeyDown?: React.KeyboardEventHandler<HTMLButtonElement>;\n\n onMouseEnter?: React.MouseEventHandler<HTMLButtonElement>;\n\n onMouseLeave?: React.MouseEventHandler<HTMLButtonElement>;\n\n onMouseOver?: React.MouseEventHandler<HTMLButtonElement>;\n\n /** `type ButtonSize = \"small\" | \"medium\" | \"large\"` */\n size?: ButtonSize;\n\n /** `type ButtonType = \"button\" | \"submit\" | \"reset\"` */\n type?: ButtonType;\n\n title?: string;\n\n /**\n * Вариант использования. Влияет на цвет кнопки.\n *\n * `type ButtonUse = \"default\" | \"primary\" | \"success\" | \"danger\" | \"pay\" | \"link\"`\n */\n use?: ButtonUse;\n\n /** @ignore */\n visuallyFocused?: boolean;\n\n warning?: boolean;\n\n width?: number | string;\n}\n\nexport interface ButtonState {\n focusedByTab: boolean;\n}\n\nexport class Button extends React.Component<ButtonProps, ButtonState> {\n public static __KONTUR_REACT_UI__ = 'Button';\n public static __BUTTON__ = true;\n public static TOP_LEFT = Corners.TOP_LEFT;\n public static TOP_RIGHT = Corners.TOP_RIGHT;\n public static BOTTOM_RIGHT = Corners.BOTTOM_RIGHT;\n public static BOTTOM_LEFT = Corners.BOTTOM_LEFT;\n\n public static defaultProps = {\n use: 'default' as ButtonUse,\n size: 'small' as ButtonSize,\n type: 'button' as ButtonType,\n };\n\n public state = {\n focusedByTab: false,\n };\n\n private theme!: Theme;\n private node: HTMLButtonElement | null = null;\n\n public componentDidMount() {\n if (this.props.autoFocus) {\n keyListener.isTabPressed = true;\n this.focus();\n }\n }\n\n /**\n * @public\n */\n public focus() {\n this.node?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.node?.blur();\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMain() {\n const {\n corners = 0,\n active,\n disabled,\n borderless,\n checked,\n error,\n warning,\n loading,\n arrow,\n narrow,\n icon,\n _noPadding,\n _noRightPadding,\n use = Button.defaultProps.use,\n visuallyFocused,\n align,\n disableFocus,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onClick,\n width,\n children,\n } = this.props;\n const sizeClass = this.getSizeClassName();\n\n const isFocused = this.state.focusedByTab || visuallyFocused;\n const isLink = use === 'link';\n const rootProps = {\n // By default the type attribute is 'submit'. IE8 will fire a click event\n // on this button if somewhere on the page user presses Enter while some\n // input is focused. So we set type to 'button' by default.\n type: this.props.type,\n className: cx({\n [styles.root(this.theme)]: true,\n [styles[use](this.theme)]: true,\n [activeStyles[use](this.theme)]: active,\n [sizeClass]: true,\n [styles.focus(this.theme)]: isFocused && !checked,\n [styles.checked(this.theme)]: checked,\n [styles.disabled(this.theme)]: disabled || loading,\n [styles.checkedDisabled(this.theme)]: checked && disabled,\n [styles.borderless()]: borderless && !disabled && !loading && !checked && !isFocused && !active,\n [styles.narrow()]: narrow,\n [styles.noPadding()]: _noPadding,\n [styles.noRightPadding()]: _noRightPadding,\n }),\n style: {\n borderTopLeftRadius: corners & Corners.TOP_LEFT ? 0 : undefined,\n borderTopRightRadius: corners & Corners.TOP_RIGHT ? 0 : undefined,\n borderBottomRightRadius: corners & Corners.BOTTOM_RIGHT ? 0 : undefined,\n borderBottomLeftRadius: corners & Corners.BOTTOM_LEFT ? 0 : undefined,\n textAlign: align,\n },\n disabled: disabled || loading,\n onClick: onClick,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onKeyDown: onKeyDown,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onMouseOver: onMouseOver,\n tabIndex: disableFocus ? -1 : 0,\n title: this.props.title,\n };\n\n const wrapProps = {\n className: cx({\n [styles.wrap()]: true,\n [styles.wrapArrow()]: arrow === true,\n [styles.wrapArrowLeft()]: arrow === 'left',\n }),\n style: {\n width: width,\n },\n };\n\n let outlineNode = null;\n if (!isFocused || isLink) {\n outlineNode = (\n <div\n className={cx(styles.outline(), {\n [styles.outlineWarning(this.theme)]: warning,\n [styles.outlineError(this.theme)]: error,\n [styles.outlineLink()]: isLink,\n [styles.outlineLinkWarning(this.theme)]: isLink && warning,\n [styles.outlineLinkError(this.theme)]: isLink && error,\n })}\n />\n );\n }\n\n let loadingNode = null;\n if (loading && !icon) {\n loadingNode = <div className={styles.loading()}>{this.getLoadingSpinner()}</div>;\n }\n\n let iconNode = null;\n if (icon) {\n iconNode = (\n <span\n className={cx(styles.icon(), this.getSizeIconClassName(), {\n [styles.iconNoRightPadding()]: !children,\n [styles.iconLink(this.theme)]: isLink,\n })}\n >\n {loading ? this.getLoadingSpinner() : icon}\n </span>\n );\n }\n\n let arrowNode = null;\n if (arrow) {\n arrowNode = (\n <div\n className={cx({\n [styles.arrow()]: true,\n [styles.arrowWarning(this.theme)]: !checked && warning,\n [styles.arrowError(this.theme)]: !checked && error,\n [styles.arrowFocus(this.theme)]: !checked && isFocused,\n [styles.arrowLeft()]: arrow === 'left',\n })}\n >\n <div className={cx(globalClasses.arrowHelper, globalClasses.arrowHelperTop)} />\n <div className={cx(globalClasses.arrowHelper, globalClasses.arrowHelperBottom)} />\n </div>\n );\n }\n\n // Force disable all props and features, that cannot be use with Link\n if (isLink) {\n rootProps.className = cx({\n [styles.root(this.theme)]: true,\n [sizeClass]: true,\n [styles.link(this.theme)]: true,\n [styles.linkFocus(this.theme)]: isFocused,\n [styles.linkDisabled(this.theme)]: disabled || loading,\n });\n Object.assign(wrapProps, {\n className: cx(styles.wrap(), styles.wrapLink()),\n style: { width: wrapProps.style.width },\n });\n rootProps.style.textAlign = undefined;\n arrowNode = null;\n }\n\n return (\n <CommonWrapper {...this.props}>\n <span {...wrapProps}>\n <button ref={this._ref} {...rootProps}>\n {outlineNode}\n {loadingNode}\n {arrowNode}\n <div\n className={cx(styles.caption(), globalClasses.caption, {\n [styles.captionTranslated()]: active || checked,\n [styles.captionLink()]: isLink,\n [styles.captionDisabled()]: !checked && disabled,\n })}\n >\n {iconNode}\n <span className={cx({ [styles.visibilityHidden()]: !!loadingNode })}>{children}</span>\n </div>\n </button>\n </span>\n </CommonWrapper>\n );\n }\n\n private getLoadingSpinner() {\n return <Spinner caption={null} dimmed type=\"mini\" />;\n }\n\n private getSizeClassName() {\n switch (this.props.size) {\n case 'large':\n return cx(styles.sizeLarge(this.theme), { [styles.sizeLargeIE11(this.theme)]: isIE11 || isEdge });\n case 'medium':\n return cx(styles.sizeMedium(this.theme), { [styles.sizeMediumIE11(this.theme)]: isIE11 || isEdge });\n case 'small':\n default:\n return cx(styles.sizeSmall(this.theme), { [styles.sizeSmallIE11(this.theme)]: isIE11 || isEdge });\n }\n }\n\n private getSizeIconClassName() {\n switch (this.props.size) {\n case 'large':\n return styles.iconLarge(this.theme);\n case 'medium':\n return styles.iconMedium(this.theme);\n case 'small':\n default:\n return styles.iconSmall(this.theme);\n }\n }\n\n private handleFocus = (e: React.FocusEvent<HTMLButtonElement>) => {\n if (!this.props.disabled && !this.props.disableFocus) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n this.props.onFocus?.(e);\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLButtonElement>) => {\n this.setState({ focusedByTab: false });\n if (!this.props.disabled && !this.props.disableFocus) {\n this.props.onBlur?.(e);\n }\n };\n\n private _ref = (node: HTMLButtonElement | null) => {\n this.node = node;\n };\n}\n\nexport const isButton = (child: React.ReactChild): child is React.ReactElement<ButtonProps> => {\n return React.isValidElement<ButtonProps>(child)\n ? Object.prototype.hasOwnProperty.call(child.type, '__BUTTON__')\n : false;\n};\n"]}
|
|
@@ -21,11 +21,11 @@ var globalClasses = (0, _Emotion.prefix)('button')({
|
|
|
21
21
|
|
|
22
22
|
var styles = (0, _Emotion.memoizeStyle)({
|
|
23
23
|
root: function root(t) {
|
|
24
|
-
return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n ", ";\n ", ";\n\n background-clip:
|
|
24
|
+
return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n ", ";\n ", ";\n\n background-clip: ", ";\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 border: ", " solid transparent;\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 .", " {\n transform: translateY(1px);\n }\n "])),
|
|
25
25
|
(0, _Mixins.resetButton)(),
|
|
26
26
|
(0, _Mixins.resetText)(),
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
t.btnBackgroundClip,
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Button.styles.ts"],"names":["globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","caption","styles","root","t","css","btnBorderWidth","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnHeightSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnHeightMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnHeightLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","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","btnCheckedShadow","btnCheckedBg","btnCheckedTextColor","btnDefaultCheckedBorderColor","btnArrowBgImageChecked","checkedDisabled","btnCheckedDisabledShadow","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledBorderColor","captionLink","captionTranslated","captionDisabled","wrap","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":"2TAAA;;AAEA;AACA;;AAEA,yC;;;;;;;;;AASO,IAAMA,aAAa,GAAG,qBAAO,QAAP,EAAiB;AAC5CC,EAAAA,WAAW,EAAE,cAD+B;AAE5CC,EAAAA,cAAc,EAAE,kBAF4B;AAG5CC,EAAAA,iBAAiB,EAAE,qBAHyB;AAI5CC,EAAAA,OAAO,EAAE,SAJmC,EAAjB,CAAtB,C;;;AAOA,IAAMC,MAAM,GAAG,2BAAa;AACjCC,EAAAA,IADiC,gBAC5BC,CAD4B,EAClB;AACb,eAAOC,YAAP;AACI,8BADJ;AAEI,4BAFJ;;;;;;;;;;;AAaYD,IAAAA,CAAC,CAACE,cAbd;;;;;;;;;;;;;AA0BcT,IAAAA,aAAa,CAACI,OA1B5B;;;;AA8BD,GAhCgC;;AAkCjCM,EAAAA,OAlCiC,qBAkCvB;AACR,eAAOF,YAAP;;;;;;;;AAQD,GA3CgC;;AA6CjCG,EAAAA,cA7CiC,0BA6ClBJ,CA7CkB,EA6CR;AACvB,eAAOC,YAAP;AACsBD,IAAAA,CAAC,CAACK,eADxB,EAC2CL,CAAC,CAACM,qBAD7C;AAEkBN,IAAAA,CAAC,CAACO,aAFpB,EAEqCP,CAAC,CAACQ,aAFvC;;AAID,GAlDgC;;AAoDjCC,EAAAA,YApDiC,wBAoDpBT,CApDoB,EAoDV;AACrB,eAAOC,YAAP;AACsBD,IAAAA,CAAC,CAACK,eADxB,EAC2CL,CAAC,CAACU,mBAD7C,EACiFV,CAAC,CAACO,aADnF,EACoGP,CAAC,CAACQ,aADtG;;AAGD,GAxDgC;;AA0DjCG,EAAAA,WA1DiC,yBA0DnB;AACZ,eAAOV,YAAP;;;;;;AAMD,GAjEgC;;AAmEjCW,EAAAA,kBAnEiC,8BAmEdZ,CAnEc,EAmEJ;AAC3B,eAAOC,YAAP;AACsBD,IAAAA,CAAC,CAACa,mBADxB;;AAGD,GAvEgC;;AAyEjCC,EAAAA,gBAzEiC,4BAyEhBd,CAzEgB,EAyEN;AACzB,eAAOC,YAAP;AACsBD,IAAAA,CAAC,CAACe,iBADxB;;AAGD,GA7EgC;;AA+EjCC,EAAAA,SA/EiC,qBA+EvBhB,CA/EuB,EA+Eb;AAClB,eAAOC,YAAP;AACmBD,IAAAA,CAAC,CAACiB,oBADrB;;AAGI;AACAjB,IAAAA,CAAC,CAACkB,gBADF;AAEAlB,IAAAA,CAAC,CAACmB,cAFF;AAGAnB,IAAAA,CAAC,CAACoB,kBAHF;AAIApB,IAAAA,CAAC,CAACqB,gBAJF;AAKArB,IAAAA,CAAC,CAACsB,gBALF;AAMAtB,IAAAA,CAAC,CAACuB,8BANF,CAHJ;;;AAYD,GA5FgC;;AA8FjCC,EAAAA,aA9FiC,yBA8FnBxB,CA9FmB,EA8FT;AACtB,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAACkB,gBADF;AAEAlB,IAAAA,CAAC,CAACqB,gBAFF;AAGArB,IAAAA,CAAC,CAACsB,gBAHF;AAIAtB,IAAAA,CAAC,CAACuB,8BAJF,CADJ;;;AAQD,GAvGgC;;AAyGjCE,EAAAA,UAzGiC,sBAyGtBzB,CAzGsB,EAyGZ;AACnB,eAAOC,YAAP;AACmBD,IAAAA,CAAC,CAAC0B,qBADrB;;AAGI;AACA1B,IAAAA,CAAC,CAAC2B,iBADF;AAEA3B,IAAAA,CAAC,CAAC4B,eAFF;AAGA5B,IAAAA,CAAC,CAAC6B,mBAHF;AAIA7B,IAAAA,CAAC,CAAC8B,iBAJF;AAKA9B,IAAAA,CAAC,CAAC+B,iBALF;AAMA/B,IAAAA,CAAC,CAACuB,8BANF,CAHJ;;;AAYD,GAtHgC;;AAwHjCS,EAAAA,cAxHiC,0BAwHlBhC,CAxHkB,EAwHR;AACvB,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAAC2B,iBADF;AAEA3B,IAAAA,CAAC,CAAC8B,iBAFF;AAGA9B,IAAAA,CAAC,CAAC+B,iBAHF;AAIA/B,IAAAA,CAAC,CAACuB,8BAJF,CADJ;;;AAQD,GAjIgC;;AAmIjCU,EAAAA,SAnIiC,qBAmIvBjC,CAnIuB,EAmIb;AAClB,eAAOC,YAAP;AACmBD,IAAAA,CAAC,CAACkC,oBADrB;;AAGI;AACAlC,IAAAA,CAAC,CAACmC,gBADF;AAEAnC,IAAAA,CAAC,CAACoC,cAFF;AAGApC,IAAAA,CAAC,CAACqC,kBAHF;AAIArC,IAAAA,CAAC,CAACsC,gBAJF;AAKAtC,IAAAA,CAAC,CAACuC,gBALF;AAMAvC,IAAAA,CAAC,CAACuB,8BANF,CAHJ;;;AAYD,GAhJgC;;AAkJjCiB,EAAAA,aAlJiC,yBAkJnBxC,CAlJmB,EAkJT;AACtB,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAACmC,gBADF;AAEAnC,IAAAA,CAAC,CAACsC,gBAFF;AAGAtC,IAAAA,CAAC,CAACuC,gBAHF;AAIAvC,IAAAA,CAAC,CAACuB,8BAJF,CADJ;;;AAQD,GA3JgC;;AA6JjCkB,EAAAA,IA7JiC,gBA6J5BzC,CA7J4B,EA6JlB;AACb,eAAOC,YAAP;;AAEmBD,IAAAA,CAAC,CAAC0C,mBAFrB;;;;AAMW1C,IAAAA,CAAC,CAAC2C,YANb;;;;;;;;AAca3C,IAAAA,CAAC,CAAC4C,iBAdf;AAeuB5C,IAAAA,CAAC,CAAC6C,0BAfzB;;;AAkBMC,IAAAA,YAAY,CAACL,IAAb,CAAkBzC,CAAlB,CAlBN;;;AAqBD,GAnLgC;;AAqLjC+C,EAAAA,SArLiC,qBAqLvB/C,CArLuB,EAqLb;AAClB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAAC2C,YADb;AAEqB3C,IAAAA,CAAC,CAAC6C,0BAFvB;;AAID,GA1LgC;;AA4LjCG,EAAAA,YA5LiC,wBA4LpBhD,CA5LoB,EA4LV;AACrB,eAAOC,YAAP;;;;;;;AAOaD,IAAAA,CAAC,CAACiD,oBAPf;;;AAUD,GAvMgC;;AAyMjCC,EAAAA,KAzMiC,iBAyM3BlD,CAzM2B,EAyMjB;AACd,eAAOC,YAAP;;;;;;;;AAQ8BD,IAAAA,CAAC,CAACO,aARhC,EAQiDP,CAAC,CAACmD,oBARnD;AAScnD,IAAAA,CAAC,CAACoD,mBAThB,EASuCpD,CAAC,CAACqD,mBATzC;AAUoBrD,IAAAA,CAAC,CAACqD,mBAVtB;;;AAaD,GAvNgC;;AAyNjCC,EAAAA,QAzNiC,oBAyNxBtD,CAzNwB,EAyNd;AACjB,eAAOC,YAAP;;;AAGkBD,IAAAA,CAAC,CAACuD,sBAHpB;;;AAMsBvD,IAAAA,CAAC,CAACwD,aANxB;AAOWxD,IAAAA,CAAC,CAACyD,oBAPb;;;AAUKhE,IAAAA,aAAa,CAACC,WAVnB;AAWkBM,IAAAA,CAAC,CAACE,cAXpB,EAW4CF,CAAC,CAACuD,sBAX9C;;;AAcD,GAxOgC;;AA0OjCG,EAAAA,YA1OiC,wBA0OpB1D,CA1OoB,EA0OV;AACrB,eAAOC,YAAP;AAC4BD,IAAAA,CAAC,CAACO,aAD9B,EAC+CP,CAAC,CAACQ,aADjD;;AAGI,mCAAkBR,CAAC,CAACO,aAApB,EAAmCP,CAAC,CAACM,qBAArC,EAA4DN,CAAC,CAACK,eAA9D,EAA+EL,CAAC,CAACQ,aAAjF,CAHJ;;AAKD,GAhPgC;;AAkPjCmD,EAAAA,UAlPiC,sBAkPtB3D,CAlPsB,EAkPZ;AACnB,eAAOC,YAAP;AAC4BD,IAAAA,CAAC,CAACO,aAD9B,EAC+CP,CAAC,CAACQ,aADjD;;AAGI,mCAAkBR,CAAC,CAACO,aAApB,EAAmCP,CAAC,CAACU,mBAArC,EAA0DV,CAAC,CAACK,eAA5D,EAA6EL,CAAC,CAACQ,aAA/E,CAHJ;;AAKD,GAxPgC;;AA0PjCoD,EAAAA,UA1PiC,sBA0PtB5D,CA1PsB,EA0PZ;AACnB,eAAOC,YAAP;AAC4BD,IAAAA,CAAC,CAACO,aAD9B,EAC+CP,CAAC,CAACmD,oBADjD;;AAGI,mCAAkBnD,CAAC,CAACO,aAApB,EAAmCP,CAAC,CAACqD,mBAArC,EAA0DrD,CAAC,CAACK,eAA5D,EAA6EL,CAAC,CAACmD,oBAA/E,CAHJ;;AAKD,GAhQgC;;AAkQjCU,EAAAA,KAlQiC,mBAkQzB;AACN,eAAO5D,YAAP;;;;;;;;;AASKR,IAAAA,aAAa,CAACC,WATnB;;;;;;;;;;;;;;;;;;;;;AA8B8BoE,yCA9B9B;;;;AAkCKrE,IAAAA,aAAa,CAACE,cAlCnB;;;;;;;;;;;;;;AAgDKF,IAAAA,aAAa,CAACG,iBAhDnB;;;;;;;;;;;;;;AA8DD,GAjUgC;;AAmUjCmE,EAAAA,SAnUiC,uBAmUrB;AACV,eAAO9D,YAAP;;;AAGD,GAvUgC;;AAyUjC+D,EAAAA,OAzUiC,oBAyUzBhE,CAzUyB,EAyUf;AAChB,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAACiE,YADF;AAEAjE,IAAAA,CAAC,CAACkE,iBAFF;AAGAlE,IAAAA,CAAC,CAACmE,eAHF;AAIAnE,IAAAA,CAAC,CAACoE,mBAJF;AAKApE,IAAAA,CAAC,CAACqE,qBALF;AAMArE,IAAAA,CAAC,CAACsE,2BANF;AAOAtE,IAAAA,CAAC,CAACE,cAPF,CADJ;;;AAWI;AACAF,IAAAA,CAAC,CAACuE,iBADF;AAEAvE,IAAAA,CAAC,CAACwE,sBAFF;AAGAxE,IAAAA,CAAC,CAACyE,oBAHF;AAIAzE,IAAAA,CAAC,CAAC0E,0BAJF;AAKA1E,IAAAA,CAAC,CAAC2E,gCALF;AAMA3E,IAAAA,CAAC,CAACE,cANF,CAXJ;;;;AAqBM4C,IAAAA,YAAY,CAACkB,OAAb,CAAqBhE,CAArB,CArBN;;;AAwBD,GAlWgC;;AAoWjC4E,EAAAA,OApWiC,mBAoWzB5E,CApWyB,EAoWf;AAChB,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAAC6E,YADF;AAEA7E,IAAAA,CAAC,CAAC8E,iBAFF;AAGA9E,IAAAA,CAAC,CAAC+E,eAHF;AAIA/E,IAAAA,CAAC,CAACgF,mBAJF;AAKAhF,IAAAA,CAAC,CAACiF,qBALF;AAMAjF,IAAAA,CAAC,CAACkF,2BANF;AAOAlF,IAAAA,CAAC,CAACE,cAPF,CADJ;;;AAWI;AACAF,IAAAA,CAAC,CAACmF,iBADF;AAEAnF,IAAAA,CAAC,CAACoF,sBAFF;AAGApF,IAAAA,CAAC,CAACqF,oBAHF;AAIArF,IAAAA,CAAC,CAACsF,0BAJF;AAKAtF,IAAAA,CAAC,CAACuF,gCALF;AAMAvF,IAAAA,CAAC,CAACE,cANF,CAXJ;;;;AAqBM4C,IAAAA,YAAY,CAAC8B,OAAb,CAAqB5E,CAArB,CArBN;;;AAwBD,GA7XgC;;AA+XjCwF,EAAAA,OA/XiC,mBA+XzBxF,CA/XyB,EA+Xf;AAChB,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAACyF,YADF;AAEAzF,IAAAA,CAAC,CAAC0F,iBAFF;AAGA1F,IAAAA,CAAC,CAAC2F,eAHF;AAIA3F,IAAAA,CAAC,CAAC4F,mBAJF;AAKA5F,IAAAA,CAAC,CAAC6F,qBALF;AAMA7F,IAAAA,CAAC,CAAC8F,2BANF;AAOA9F,IAAAA,CAAC,CAACE,cAPF,CADJ;;;AAWI;AACAF,IAAAA,CAAC,CAAC+F,iBADF;AAEA/F,IAAAA,CAAC,CAACgG,sBAFF;AAGAhG,IAAAA,CAAC,CAACiG,oBAHF;AAIAjG,IAAAA,CAAC,CAACkG,0BAJF;AAKAlG,IAAAA,CAAC,CAACmG,gCALF;AAMAnG,IAAAA,CAAC,CAACE,cANF,CAXJ;;;;AAqBM4C,IAAAA,YAAY,CAAC0C,OAAb,CAAqBxF,CAArB,CArBN;;;AAwBD,GAxZgC;;AA0ZjCoG,EAAAA,MA1ZiC,kBA0Z1BpG,CA1Z0B,EA0ZhB;AACf,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAACqG,WADF;AAEArG,IAAAA,CAAC,CAACsG,gBAFF;AAGAtG,IAAAA,CAAC,CAACuG,cAHF;AAIAvG,IAAAA,CAAC,CAACwG,kBAJF;AAKAxG,IAAAA,CAAC,CAACyG,oBALF;AAMAzG,IAAAA,CAAC,CAAC0G,0BANF;AAOA1G,IAAAA,CAAC,CAACE,cAPF,CADJ;;;AAWI;AACAF,IAAAA,CAAC,CAAC2G,gBADF;AAEA3G,IAAAA,CAAC,CAAC4G,qBAFF;AAGA5G,IAAAA,CAAC,CAAC6G,mBAHF;AAIA7G,IAAAA,CAAC,CAAC8G,yBAJF;AAKA9G,IAAAA,CAAC,CAAC+G,+BALF;AAMA/G,IAAAA,CAAC,CAACE,cANF,CAXJ;;;;AAqBM4C,IAAAA,YAAY,CAACsD,MAAb,CAAoBpG,CAApB,CArBN;;;AAwBD,GAnbgC;;AAqbjCgH,EAAAA,GArbiC,eAqb7BhH,CArb6B,EAqbnB;AACZ,eAAOC,YAAP;AACI;AACAD,IAAAA,CAAC,CAACiH,QADF;AAEAjH,IAAAA,CAAC,CAACkH,aAFF;AAGAlH,IAAAA,CAAC,CAACmH,WAHF;AAIAnH,IAAAA,CAAC,CAACoH,eAJF;AAKApH,IAAAA,CAAC,CAACqH,iBALF;AAMArH,IAAAA,CAAC,CAACsH,uBANF;AAOAtH,IAAAA,CAAC,CAACE,cAPF,CADJ;;;AAWI;AACAF,IAAAA,CAAC,CAACuH,aADF;AAEAvH,IAAAA,CAAC,CAACwH,kBAFF;AAGAxH,IAAAA,CAAC,CAACyH,gBAHF;AAIAzH,IAAAA,CAAC,CAAC0H,sBAJF;AAKA1H,IAAAA,CAAC,CAAC2H,4BALF;AAMA3H,IAAAA,CAAC,CAACE,cANF,CAXJ;;;;AAqBM4C,IAAAA,YAAY,CAACkE,GAAb,CAAiBhH,CAAjB,CArBN;;;AAwBD,GA9cgC;;AAgdjC4H,EAAAA,OAhdiC,mBAgdzB5H,CAhdyB,EAgdf;AAChB,QAAM6H,aAAa;;AAEH7H,IAAAA,CAAC,CAAC8H,gBAFC;AAGG9H,IAAAA,CAAC,CAAC+H,YAHL;AAIR/H,IAAAA,CAAC,CAACgI,mBAJM;AAKDhI,IAAAA,CAAC,CAACiI,4BALD;;AAOdxI,IAAAA,aAAa,CAACC,WAPA;AAQDM,IAAAA,CAAC,CAACE,cARD,aAQuBF,CAAC,CAACiI,4BARzB;;AAUXxI,IAAAA,aAAa,CAACE,cAVH;AAWOK,IAAAA,CAAC,CAACkI,sBAXT,gCAAnB;;;;;AAgBA,eAAOjI,YAAP;AACI4H,IAAAA,aADJ;;;;;AAMMA,IAAAA,aANN;;;AASD,GA1egC;;AA4ejCM,EAAAA,eA5eiC,2BA4ejBnI,CA5eiB,EA4eP;AACxB,eAAOC,YAAP;AACgBD,IAAAA,CAAC,CAACoI,wBADlB;AAEsBpI,IAAAA,CAAC,CAACqI,oBAFxB;AAGWrI,IAAAA,CAAC,CAACsI,uBAHb;AAIkBtI,IAAAA,CAAC,CAACuI,6BAJpB;;AAMK9I,IAAAA,aAAa,CAACC,WANnB;AAOkBM,IAAAA,CAAC,CAACE,cAPpB,EAO0CF,CAAC,CAACuI,6BAP5C;;AASQ9I,IAAAA,aAAa,CAACE,cATtB;;;;;AAcD,GA3fgC;;AA6fjCE,EAAAA,OA7fiC,qBA6fvB;AACR,eAAOI,YAAP;;;;;;;AAOD,GArgBgC;;AAugBjCuI,EAAAA,WAvgBiC,yBAugBnB;AACZ,eAAOvI,YAAP;;;;AAID,GA5gBgC;;AA8gBjCwI,EAAAA,iBA9gBiC,+BA8gBb;AAClB,eAAOxI,YAAP;;;AAGD,GAlhBgC;;AAohBjCyI,EAAAA,eAphBiC,6BAohBf;AAChB,eAAOzI,YAAP;;;AAGD,GAxhBgC;;AA0hBjC0I,EAAAA,IA1hBiC,kBA0hB1B;AACL,eAAO1I,YAAP;;;;AAID,GA/hBgC;;AAiiBjC2I,EAAAA,MAjiBiC,oBAiiBxB;AACP,eAAO3I,YAAP;;;;AAID,GAtiBgC;;AAwiBjC4I,EAAAA,SAxiBiC,uBAwiBrB;AACV,eAAO5I,YAAP;;;;AAID,GA7iBgC;;AA+iBjC6I,EAAAA,cA/iBiC,4BA+iBhB;AACf,eAAO7I,YAAP;;;AAGD,GAnjBgC;;AAqjBjC8I,EAAAA,kBArjBiC,gCAqjBZ;AACnB,eAAO9I,YAAP;;;AAGD,GAzjBgC;;AA2jBjC+I,EAAAA,QA3jBiC,oBA2jBxBhJ,CA3jBwB,EA2jBd;AACjB,eAAOC,YAAP;AACmBD,IAAAA,CAAC,CAACiJ,sBADrB;;AAGD,GA/jBgC;;AAikBjCC,EAAAA,QAjkBiC,sBAikBtB;AACT,eAAOjJ,YAAP;;;AAGD,GArkBgC;;AAukBjCkJ,EAAAA,SAvkBiC,uBAukBrB;AACV,eAAOlJ,YAAP;;;AAGD,GA3kBgC;;AA6kBjCmJ,EAAAA,aA7kBiC,2BA6kBjB;AACd,eAAOnJ,YAAP;;;;AAID,GAllBgC;;AAolBjCoJ,EAAAA,IAplBiC,kBAolB1B;AACL,eAAOpJ,YAAP;;;AAGD,GAxlBgC;AAylBjCqJ,EAAAA,SAzlBiC,qBAylBvBtJ,CAzlBuB,EAylBb;AAClB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAACuJ,gBADb;AAEmBvJ,IAAAA,CAAC,CAACwJ,eAFrB;;AAID,GA9lBgC;AA+lBjCC,EAAAA,UA/lBiC,sBA+lBtBzJ,CA/lBsB,EA+lBZ;AACnB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAAC0J,iBADb;AAEmB1J,IAAAA,CAAC,CAAC2J,gBAFrB;;AAID,GApmBgC;AAqmBjCC,EAAAA,SArmBiC,qBAqmBvB5J,CArmBuB,EAqmBb;AAClB,eAAOC,YAAP;AACWD,IAAAA,CAAC,CAAC6J,gBADb;AAEmB7J,IAAAA,CAAC,CAAC8J,eAFrB;;AAID,GA1mBgC;;AA4mBjCC,EAAAA,UA5mBiC,wBA4mBpB;AACX,eAAO9J,YAAP;;;;;AAKOR,IAAAA,aAAa,CAACE,cALrB,EAKyCF,aAAa,CAACG,iBALvD;;;;;AAUD,GAvnBgC;;AAynBjCoK,EAAAA,OAznBiC,qBAynBvB;AACR,eAAO/J,YAAP;;;;;;;;;;;;AAYD,GAtoBgC;;AAwoBjCgK,EAAAA,gBAxoBiC,8BAwoBd;AACjB,eAAOhK,YAAP;;;AAGD,GA5oBgC,EAAb,CAAf,C;;;AA+oBA,IAAM6C,YAAY,GAAG,2BAAa;AACvCkB,EAAAA,OADuC,oBAC/BhE,CAD+B,EACrB;AAChB,eAAOC,YAAP;;;AAGM;AACAD,IAAAA,CAAC,CAACkK,kBADF;AAEAlK,IAAAA,CAAC,CAACmK,sBAFF;AAGAnK,IAAAA,CAAC,CAACoK,2BAHF;AAIApK,IAAAA,CAAC,CAACqK,8BAJF;AAKArK,IAAAA,CAAC,CAACE,cALF;AAMAF,IAAAA,CAAC,CAACsK,qBANF,CAHN;;;;AAaD,GAfsC;;AAiBvC1F,EAAAA,OAjBuC,mBAiB/B5E,CAjB+B,EAiBrB;AAChB,eAAOC,YAAP;;;AAGM;AACAD,IAAAA,CAAC,CAACuK,kBADF;AAEAvK,IAAAA,CAAC,CAACwK,sBAFF;AAGAxK,IAAAA,CAAC,CAACyK,2BAHF;AAIAzK,IAAAA,CAAC,CAAC0K,8BAJF;AAKA1K,IAAAA,CAAC,CAACE,cALF;AAMAF,IAAAA,CAAC,CAACsK,qBANF,CAHN;;;;AAaD,GA/BsC;;AAiCvC9E,EAAAA,OAjCuC,mBAiC/BxF,CAjC+B,EAiCrB;AAChB,eAAOC,YAAP;;;AAGM;AACAD,IAAAA,CAAC,CAAC2K,kBADF;AAEA3K,IAAAA,CAAC,CAAC4K,sBAFF;AAGA5K,IAAAA,CAAC,CAAC6K,2BAHF;AAIA7K,IAAAA,CAAC,CAAC8K,8BAJF;AAKA9K,IAAAA,CAAC,CAACE,cALF;AAMAF,IAAAA,CAAC,CAACsK,qBANF,CAHN;;;;AAaD,GA/CsC;;AAiDvClE,EAAAA,MAjDuC,kBAiDhCpG,CAjDgC,EAiDtB;AACf,eAAOC,YAAP;;;AAGM;AACAD,IAAAA,CAAC,CAAC+K,iBADF;AAEA/K,IAAAA,CAAC,CAACgL,qBAFF;AAGAhL,IAAAA,CAAC,CAACiL,0BAHF;AAIAjL,IAAAA,CAAC,CAACkL,6BAJF;AAKAlL,IAAAA,CAAC,CAACE,cALF;AAMAF,IAAAA,CAAC,CAACsK,qBANF,CAHN;;;;AAaD,GA/DsC;;AAiEvCtD,EAAAA,GAjEuC,eAiEnChH,CAjEmC,EAiEzB;AACZ,eAAOC,YAAP;;;AAGM;AACAD,IAAAA,CAAC,CAACmL,cADF;AAEAnL,IAAAA,CAAC,CAACoL,kBAFF;AAGApL,IAAAA,CAAC,CAACqL,uBAHF;AAIArL,IAAAA,CAAC,CAACsL,0BAJF;AAKAtL,IAAAA,CAAC,CAACE,cALF;AAMAF,IAAAA,CAAC,CAACsK,qBANF,CAHN;;;;AAaD,GA/EsC;;AAiFvC7H,EAAAA,IAjFuC,gBAiFlCzC,CAjFkC,EAiFxB;AACb,eAAOC,YAAP;;;AAGaD,IAAAA,CAAC,CAACuL,eAHf;;;AAMD,GAxFsC,EAAb,CAArB,C","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});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n ${resetButton()};\n ${resetText()};\n\n background-clip: padding-box;\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 border: ${t.btnBorderWidth} solid transparent;\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.btnHeightSmall,\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.btnHeightMedium,\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.btnHeightLarge,\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 border-color: ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n border-color: ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n box-shadow: none;\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: ${t.btnCheckedShadow};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n border-color: ${t.btnDefaultCheckedBorderColor};\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: ${t.btnCheckedDisabledShadow};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n border-color: ${t.btnCheckedDisabledBorderColor};\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() {\n return css`\n box-sizing: border-box;\n display: inline-block;\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 border-color: transparent;\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","styles","root","t","css","btnBackgroundClip","btnBorderWidth","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnHeightSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnHeightMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnHeightLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","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","btnCheckedShadow","btnCheckedBg","btnCheckedTextColor","btnDefaultCheckedBorderColor","btnArrowBgImageChecked","checkedDisabled","btnCheckedDisabledShadow","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledBorderColor","captionLink","captionTranslated","captionDisabled","wrap","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});\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 border: ${t.btnBorderWidth} solid transparent;\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.btnHeightSmall,\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.btnHeightMedium,\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.btnHeightLarge,\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 border-color: ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n border-color: ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n box-shadow: none;\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: ${t.btnCheckedShadow};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n border-color: ${t.btnDefaultCheckedBorderColor};\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: ${t.btnCheckedDisabledShadow};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n border-color: ${t.btnCheckedDisabledBorderColor};\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() {\n return css`\n box-sizing: border-box;\n display: inline-block;\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 border-color: transparent;\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"]}
|
|
@@ -169,7 +169,8 @@ Checkbox = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default
|
|
|
169
169
|
if (_this.props.children) {var _cx2;
|
|
170
170
|
var captionClass = (0, _Emotion.cx)((_cx2 = {}, _cx2[
|
|
171
171
|
_Checkbox.styles.caption(_this.theme)] = true, _cx2[
|
|
172
|
-
_Checkbox.styles.captionIE11()] = _client.isIE11 || _client.isEdge, _cx2
|
|
172
|
+
_Checkbox.styles.captionIE11()] = _client.isIE11 || _client.isEdge, _cx2[
|
|
173
|
+
_Checkbox.styles.disabled(_this.theme)] = Boolean(props.disabled), _cx2));
|
|
173
174
|
|
|
174
175
|
caption = /*#__PURE__*/_react.default.createElement("span", { className: captionClass }, _this.props.children);
|
|
175
176
|
}
|
|
@@ -182,11 +183,11 @@ Checkbox = /*#__PURE__*/function (_React$Component) {(0, _inheritsLoose2.default
|
|
|
182
183
|
var box = /*#__PURE__*/
|
|
183
184
|
_react.default.createElement("span", {
|
|
184
185
|
className: (0, _Emotion.cx)(_Checkbox.styles.box(_this.theme), _Checkbox.globalClasses.box, (_cx4 = {}, _cx4[
|
|
185
|
-
_Checkbox.styles.boxChecked(_this.theme)] =
|
|
186
|
-
_Checkbox.styles.boxWarning(_this.theme)] = Boolean(props.warning), _cx4[
|
|
187
|
-
_Checkbox.styles.boxError(_this.theme)] = Boolean(props.error), _cx4[
|
|
186
|
+
_Checkbox.styles.boxChecked(_this.theme)] = props.checked || isIndeterminate, _cx4[
|
|
188
187
|
_Checkbox.styles.boxFocus(_this.theme)] = _this.state.focusedByTab, _cx4[
|
|
189
|
-
_Checkbox.styles.
|
|
188
|
+
_Checkbox.styles.boxError(_this.theme)] = props.error, _cx4[
|
|
189
|
+
_Checkbox.styles.boxWarning(_this.theme)] = props.warning, _cx4[
|
|
190
|
+
_Checkbox.styles.boxDisabled(_this.theme)] = props.disabled, _cx4)) },
|
|
190
191
|
|
|
191
192
|
|
|
192
193
|
isIndeterminate && /*#__PURE__*/_react.default.createElement(_px.SquareIcon, { className: iconClass }) || /*#__PURE__*/_react.default.createElement(_px.OkIcon, { className: iconClass }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Checkbox.tsx"],"names":["Checkbox","state","focusedByTab","indeterminate","props","initialIndeterminate","theme","input","componentDidMount","setIndeterminate","setState","resetIndeterminate","renderMain","error","warning","onMouseEnter","onMouseLeave","onMouseOver","onValueChange","type","rest","isIndeterminate","rootClass","styles","root","rootFallback","isIE11","isEdge","rootChecked","checked","disabled","Boolean","inputProps","className","onChange","handleChange","onFocus","handleFocus","onBlur","handleBlur","onClick","handleClick","ref","inputRef","caption","children","captionClass","captionIE11","iconClass","iconUnchecked","iconFixBaseline","isFirefox","box","globalClasses","boxChecked","boxWarning","boxError","boxFocus","boxDisabled","e","requestAnimationFrame","keyListener","isTabPressed","event","currentTarget","undefined","UNSAFE_componentWillReceiveProps","nextProps","render","focus","blur","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { OkIcon, SquareIcon } from '../../internal/icons/16px';\nimport { isEdge, isFirefox, isIE11 } from '../../lib/client';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles, globalClasses } from './Checkbox.styles';\n\nexport interface CheckboxProps\n extends CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /** Контент `label` */\n children?: React.ReactNode;\n /** Состояние ошибки */\n error?: boolean;\n /** Состояние Предупреждения */\n warning?: boolean;\n /** Вызывается на label */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается при изменении `value` */\n onValueChange?: (value: boolean) => void;\n /** onBlur */\n onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;\n /** Состояние частичного выделения */\n initialIndeterminate?: boolean;\n }\n > {}\n\nexport interface CheckboxState {\n focusedByTab: boolean;\n indeterminate: boolean;\n}\n\n/**\n * Все свойства, кроме перечисленных, `className` и `style` передаются в `input`.\n */\nexport class Checkbox extends React.Component<CheckboxProps, CheckboxState> {\n public static __KONTUR_REACT_UI__ = 'Checkbox';\n\n public static propTypes = {\n checked: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n warning: PropTypes.bool,\n onValueChange: PropTypes.func,\n onBlur: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n };\n\n public state = {\n focusedByTab: false,\n indeterminate: this.props.initialIndeterminate || false,\n };\n\n private theme!: Theme;\n private input: Nullable<HTMLInputElement>;\n\n public componentDidMount = () => {\n if (this.state.indeterminate && this.input) {\n this.input.indeterminate = true;\n }\n };\n\n public UNSAFE_componentWillReceiveProps(nextProps: CheckboxProps) {\n if (nextProps.checked !== this.props.checked) {\n this.resetIndeterminate();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return <CommonWrapper {...this.props}>{this.renderMain}</CommonWrapper>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n keyListener.isTabPressed = true;\n this.input?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.input?.blur();\n }\n\n /**\n * Установить промежуточное значение\n * @public\n */\n public setIndeterminate = () => {\n this.setState({\n indeterminate: true,\n });\n if (this.input) {\n this.input.indeterminate = true;\n }\n };\n\n /**\n * Сбросить промежуточное значение\n * @public\n */\n public resetIndeterminate = () => {\n this.setState({\n indeterminate: false,\n });\n if (this.input) {\n this.input.indeterminate = false;\n }\n };\n\n private renderMain = (props: CommonWrapperRestProps<CheckboxProps>) => {\n const {\n error,\n warning,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onValueChange,\n type,\n initialIndeterminate,\n ...rest\n } = props;\n const isIndeterminate = this.state.indeterminate;\n\n const rootClass = cx({\n [styles.root(this.theme)]: true,\n [styles.rootFallback()]: isIE11 || isEdge,\n [styles.rootChecked(this.theme)]: props.checked || isIndeterminate,\n [styles.disabled(this.theme)]: Boolean(props.disabled),\n });\n\n const inputProps = {\n ...rest,\n type: 'checkbox',\n className: styles.input(),\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onClick: this.handleClick,\n ref: this.inputRef,\n };\n\n let caption = null;\n if (this.props.children) {\n const captionClass = cx({\n [styles.caption(this.theme)]: true,\n [styles.captionIE11()]: isIE11 || isEdge,\n });\n caption = <span className={captionClass}>{this.props.children}</span>;\n }\n\n const iconClass = cx({\n [styles.iconUnchecked()]: !props.checked && !isIndeterminate,\n [styles.iconFixBaseline()]: isFirefox || isIE11 || isEdge,\n });\n\n const box = (\n <span\n className={cx(styles.box(this.theme), globalClasses.box, {\n [styles.boxChecked(this.theme)]: Boolean(props.checked) || isIndeterminate,\n [styles.boxWarning(this.theme)]: Boolean(props.warning),\n [styles.boxError(this.theme)]: Boolean(props.error),\n [styles.boxFocus(this.theme)]: this.state.focusedByTab,\n [styles.boxDisabled(this.theme)]: Boolean(props.disabled),\n })}\n >\n {(isIndeterminate && <SquareIcon className={iconClass} />) || <OkIcon className={iconClass} />}\n </span>\n );\n\n return (\n <label className={rootClass} onMouseEnter={onMouseEnter} onMouseLeave={onMouseLeave} onMouseOver={onMouseOver}>\n <input {...inputProps} />\n {box}\n {caption}\n </label>\n );\n };\n\n private handleFocus = (e: React.FocusEvent<any>) => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n this.props.onBlur?.(e);\n this.setState({ focusedByTab: false });\n };\n\n private inputRef = (ref: HTMLInputElement | null) => {\n this.input = ref;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const checked = event.currentTarget.checked;\n this.props.onValueChange?.(checked);\n\n this.resetIndeterminate();\n\n this.props.onChange?.(event);\n };\n\n private handleClick = (e: React.MouseEvent<HTMLInputElement>) => {\n this.props.onClick?.(e);\n // support IE11's and old Edge's special behavior\n // https://github.com/jquery/jquery/issues/1698\n if (this.state.indeterminate && (isIE11 || isEdge)) {\n this.resetIndeterminate();\n // simulate correct behavior only if onValueChange is used\n // because we cant simulate real native onChange event\n if (this.props.onValueChange && this.input) {\n const checked = !this.input.checked;\n\n if (this.props.checked === undefined) {\n // in case of uncontrolled mode\n this.input.checked = checked;\n }\n\n this.props.onValueChange(checked);\n }\n }\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["Checkbox.tsx"],"names":["Checkbox","state","focusedByTab","indeterminate","props","initialIndeterminate","theme","input","componentDidMount","setIndeterminate","setState","resetIndeterminate","renderMain","error","warning","onMouseEnter","onMouseLeave","onMouseOver","onValueChange","type","rest","isIndeterminate","rootClass","styles","root","rootFallback","isIE11","isEdge","rootChecked","checked","disabled","Boolean","inputProps","className","onChange","handleChange","onFocus","handleFocus","onBlur","handleBlur","onClick","handleClick","ref","inputRef","caption","children","captionClass","captionIE11","iconClass","iconUnchecked","iconFixBaseline","isFirefox","box","globalClasses","boxChecked","boxFocus","boxError","boxWarning","boxDisabled","e","requestAnimationFrame","keyListener","isTabPressed","event","currentTarget","undefined","UNSAFE_componentWillReceiveProps","nextProps","render","focus","blur","React","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","bool","func"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { keyListener } from '../../lib/events/keyListener';\nimport { Theme } from '../../lib/theming/Theme';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { OkIcon, SquareIcon } from '../../internal/icons/16px';\nimport { isEdge, isFirefox, isIE11 } from '../../lib/client';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\n\nimport { styles, globalClasses } from './Checkbox.styles';\n\nexport interface CheckboxProps\n extends CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /** Контент `label` */\n children?: React.ReactNode;\n /** Состояние ошибки */\n error?: boolean;\n /** Состояние Предупреждения */\n warning?: boolean;\n /** Вызывается на label */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается при изменении `value` */\n onValueChange?: (value: boolean) => void;\n /** onBlur */\n onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;\n /** Состояние частичного выделения */\n initialIndeterminate?: boolean;\n }\n > {}\n\nexport interface CheckboxState {\n focusedByTab: boolean;\n indeterminate: boolean;\n}\n\n/**\n * Все свойства, кроме перечисленных, `className` и `style` передаются в `input`.\n */\nexport class Checkbox extends React.Component<CheckboxProps, CheckboxState> {\n public static __KONTUR_REACT_UI__ = 'Checkbox';\n\n public static propTypes = {\n checked: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.bool,\n warning: PropTypes.bool,\n onValueChange: PropTypes.func,\n onBlur: PropTypes.func,\n onMouseEnter: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOver: PropTypes.func,\n };\n\n public state = {\n focusedByTab: false,\n indeterminate: this.props.initialIndeterminate || false,\n };\n\n private theme!: Theme;\n private input: Nullable<HTMLInputElement>;\n\n public componentDidMount = () => {\n if (this.state.indeterminate && this.input) {\n this.input.indeterminate = true;\n }\n };\n\n public UNSAFE_componentWillReceiveProps(nextProps: CheckboxProps) {\n if (nextProps.checked !== this.props.checked) {\n this.resetIndeterminate();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return <CommonWrapper {...this.props}>{this.renderMain}</CommonWrapper>;\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public focus() {\n keyListener.isTabPressed = true;\n this.input?.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n this.input?.blur();\n }\n\n /**\n * Установить промежуточное значение\n * @public\n */\n public setIndeterminate = () => {\n this.setState({\n indeterminate: true,\n });\n if (this.input) {\n this.input.indeterminate = true;\n }\n };\n\n /**\n * Сбросить промежуточное значение\n * @public\n */\n public resetIndeterminate = () => {\n this.setState({\n indeterminate: false,\n });\n if (this.input) {\n this.input.indeterminate = false;\n }\n };\n\n private renderMain = (props: CommonWrapperRestProps<CheckboxProps>) => {\n const {\n error,\n warning,\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onValueChange,\n type,\n initialIndeterminate,\n ...rest\n } = props;\n const isIndeterminate = this.state.indeterminate;\n\n const rootClass = cx({\n [styles.root(this.theme)]: true,\n [styles.rootFallback()]: isIE11 || isEdge,\n [styles.rootChecked(this.theme)]: props.checked || isIndeterminate,\n [styles.disabled(this.theme)]: Boolean(props.disabled),\n });\n\n const inputProps = {\n ...rest,\n type: 'checkbox',\n className: styles.input(),\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onBlur: this.handleBlur,\n onClick: this.handleClick,\n ref: this.inputRef,\n };\n\n let caption = null;\n if (this.props.children) {\n const captionClass = cx({\n [styles.caption(this.theme)]: true,\n [styles.captionIE11()]: isIE11 || isEdge,\n [styles.disabled(this.theme)]: Boolean(props.disabled),\n });\n caption = <span className={captionClass}>{this.props.children}</span>;\n }\n\n const iconClass = cx({\n [styles.iconUnchecked()]: !props.checked && !isIndeterminate,\n [styles.iconFixBaseline()]: isFirefox || isIE11 || isEdge,\n });\n\n const box = (\n <span\n className={cx(styles.box(this.theme), globalClasses.box, {\n [styles.boxChecked(this.theme)]: props.checked || isIndeterminate,\n [styles.boxFocus(this.theme)]: this.state.focusedByTab,\n [styles.boxError(this.theme)]: props.error,\n [styles.boxWarning(this.theme)]: props.warning,\n [styles.boxDisabled(this.theme)]: props.disabled,\n })}\n >\n {(isIndeterminate && <SquareIcon className={iconClass} />) || <OkIcon className={iconClass} />}\n </span>\n );\n\n return (\n <label className={rootClass} onMouseEnter={onMouseEnter} onMouseLeave={onMouseLeave} onMouseOver={onMouseOver}>\n <input {...inputProps} />\n {box}\n {caption}\n </label>\n );\n };\n\n private handleFocus = (e: React.FocusEvent<any>) => {\n if (!this.props.disabled) {\n // focus event fires before keyDown eventlistener\n // so we should check tabPressed in async way\n requestAnimationFrame(() => {\n if (keyListener.isTabPressed) {\n this.setState({ focusedByTab: true });\n }\n });\n\n if (this.props.onFocus) {\n this.props.onFocus(e);\n }\n }\n };\n\n private handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n this.props.onBlur?.(e);\n this.setState({ focusedByTab: false });\n };\n\n private inputRef = (ref: HTMLInputElement | null) => {\n this.input = ref;\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const checked = event.currentTarget.checked;\n this.props.onValueChange?.(checked);\n\n this.resetIndeterminate();\n\n this.props.onChange?.(event);\n };\n\n private handleClick = (e: React.MouseEvent<HTMLInputElement>) => {\n this.props.onClick?.(e);\n // support IE11's and old Edge's special behavior\n // https://github.com/jquery/jquery/issues/1698\n if (this.state.indeterminate && (isIE11 || isEdge)) {\n this.resetIndeterminate();\n // simulate correct behavior only if onValueChange is used\n // because we cant simulate real native onChange event\n if (this.props.onValueChange && this.input) {\n const checked = !this.input.checked;\n\n if (this.props.checked === undefined) {\n // in case of uncontrolled mode\n this.input.checked = checked;\n }\n\n this.props.onValueChange(checked);\n }\n }\n };\n}\n"]}
|
|
@@ -7,8 +7,7 @@ var globalClasses = (0, _Emotion.prefix)('checkbox')({
|
|
|
7
7
|
|
|
8
8
|
var styles = (0, _Emotion.memoizeStyle)({
|
|
9
9
|
root: function root(t) {
|
|
10
|
-
return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n display: inline-flex;\n align-items: baseline;\n cursor: pointer;\n position: relative;\n
|
|
11
|
-
|
|
10
|
+
return (0, _Emotion.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["\n display: inline-flex;\n align-items: baseline;\n cursor: pointer;\n position: relative;\n line-height: ", ";\n font-size: ", ";\n padding: ", " 0;\n\n &:hover .", " {\n background: ", ";\n box-shadow: ", ";\n }\n\n &:active .", " {\n box-shadow: ", ";\n background: ", ";\n }\n "])),
|
|
12
11
|
|
|
13
12
|
|
|
14
13
|
|
|
@@ -149,7 +148,8 @@ var styles = (0, _Emotion.memoizeStyle)({
|
|
|
149
148
|
},
|
|
150
149
|
|
|
151
150
|
caption: function caption(t) {
|
|
152
|
-
return (0, _Emotion.css)(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding-left: ", ";\n "])),
|
|
151
|
+
return (0, _Emotion.css)(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteralLoose2.default)(["\n color: ", ";\n padding-left: ", ";\n "])),
|
|
152
|
+
t.checkboxTextColorDefault,
|
|
153
153
|
t.checkboxLabelGap);
|
|
154
154
|
|
|
155
155
|
},
|