@skbkontur/react-ui 4.6.1 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/cjs/components/ComboBox/ComboBox.d.ts +15 -0
  3. package/cjs/components/ComboBox/ComboBox.js +16 -0
  4. package/cjs/components/ComboBox/ComboBox.js.map +1 -1
  5. package/cjs/components/ComboBox/ComboBox.md +10 -1
  6. package/cjs/components/DropdownMenu/DropdownMenu.md +11 -9
  7. package/cjs/components/FileUploader/FileUploader.d.ts +9 -1
  8. package/cjs/components/FileUploader/FileUploader.js +67 -18
  9. package/cjs/components/FileUploader/FileUploader.js.map +1 -1
  10. package/cjs/components/FileUploader/FileUploader.mixins.d.ts +1 -0
  11. package/cjs/components/FileUploader/FileUploader.mixins.js +10 -0
  12. package/cjs/components/FileUploader/FileUploader.mixins.js.map +1 -0
  13. package/cjs/components/FileUploader/FileUploader.styles.d.ts +12 -1
  14. package/cjs/components/FileUploader/FileUploader.styles.js +119 -22
  15. package/cjs/components/FileUploader/FileUploader.styles.js.map +1 -1
  16. package/cjs/components/Hint/Hint.d.ts +1 -0
  17. package/cjs/components/Hint/Hint.js +6 -2
  18. package/cjs/components/Hint/Hint.js.map +1 -1
  19. package/cjs/components/Paging/Paging.js +20 -15
  20. package/cjs/components/Paging/Paging.js.map +1 -1
  21. package/cjs/components/Paging/Paging.md +13 -0
  22. package/cjs/components/Paging/Paging.styles.d.ts +6 -2
  23. package/cjs/components/Paging/Paging.styles.js +40 -15
  24. package/cjs/components/Paging/Paging.styles.js.map +1 -1
  25. package/cjs/components/Select/Select.js +5 -3
  26. package/cjs/components/Select/Select.js.map +1 -1
  27. package/cjs/components/Toggle/Toggle.js +2 -1
  28. package/cjs/components/Toggle/Toggle.js.map +1 -1
  29. package/cjs/internal/CustomComboBox/ComboBoxMenu.d.ts +1 -0
  30. package/cjs/internal/CustomComboBox/ComboBoxMenu.js +3 -1
  31. package/cjs/internal/CustomComboBox/ComboBoxMenu.js.map +1 -1
  32. package/cjs/internal/CustomComboBox/ComboBoxView.d.ts +1 -0
  33. package/cjs/internal/CustomComboBox/ComboBoxView.js +3 -1
  34. package/cjs/internal/CustomComboBox/ComboBoxView.js.map +1 -1
  35. package/cjs/internal/CustomComboBox/CustomComboBox.d.ts +1 -0
  36. package/cjs/internal/CustomComboBox/CustomComboBox.js +3 -1
  37. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  38. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.d.ts +2 -0
  39. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js +2 -0
  40. package/cjs/internal/FileUploaderControl/FileUploaderControlContext.js.map +1 -1
  41. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js +4 -1
  42. package/cjs/internal/FileUploaderControl/FileUploaderControlProvider.js.map +1 -1
  43. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -0
  44. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js +46 -11
  45. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.js.map +1 -1
  46. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +7 -0
  47. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js +54 -7
  48. package/cjs/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.js.map +1 -1
  49. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -0
  50. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js +15 -3
  51. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  52. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +3 -0
  53. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js +19 -1
  54. package/cjs/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.js.map +1 -1
  55. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -0
  56. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js +18 -0
  57. package/cjs/internal/FileUploaderControl/hooks/useFileUploaderSize.js.map +1 -0
  58. package/cjs/internal/Popup/Popup.d.ts +5 -0
  59. package/cjs/internal/Popup/Popup.js +10 -2
  60. package/cjs/internal/Popup/Popup.js.map +1 -1
  61. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  62. package/cjs/internal/themes/DarkTheme.d.ts +1 -0
  63. package/cjs/internal/themes/DarkTheme.js +2 -1
  64. package/cjs/internal/themes/DarkTheme.js.map +1 -1
  65. package/cjs/internal/themes/DefaultTheme.d.ts +16 -0
  66. package/cjs/internal/themes/DefaultTheme.js +41 -1
  67. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  68. package/cjs/lib/utils.d.ts +2 -3
  69. package/cjs/lib/utils.js +1 -2
  70. package/cjs/lib/utils.js.map +1 -1
  71. package/components/ComboBox/ComboBox/ComboBox.js.map +1 -1
  72. package/components/ComboBox/ComboBox.d.ts +15 -0
  73. package/components/ComboBox/ComboBox.md +10 -1
  74. package/components/DropdownMenu/DropdownMenu.md +11 -9
  75. package/components/FileUploader/FileUploader/FileUploader.js +56 -20
  76. package/components/FileUploader/FileUploader/FileUploader.js.map +1 -1
  77. package/components/FileUploader/FileUploader.d.ts +9 -1
  78. package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js +8 -0
  79. package/components/FileUploader/FileUploader.mixins/FileUploader.mixins.js.map +1 -0
  80. package/components/FileUploader/FileUploader.mixins/package.json +6 -0
  81. package/components/FileUploader/FileUploader.mixins.d.ts +1 -0
  82. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js +51 -17
  83. package/components/FileUploader/FileUploader.styles/FileUploader.styles.js.map +1 -1
  84. package/components/FileUploader/FileUploader.styles.d.ts +12 -1
  85. package/components/Hint/Hint/Hint.js +13 -5
  86. package/components/Hint/Hint/Hint.js.map +1 -1
  87. package/components/Hint/Hint.d.ts +1 -0
  88. package/components/Paging/Paging/Paging.js +12 -9
  89. package/components/Paging/Paging/Paging.js.map +1 -1
  90. package/components/Paging/Paging.md +13 -0
  91. package/components/Paging/Paging.styles/Paging.styles.js +27 -15
  92. package/components/Paging/Paging.styles/Paging.styles.js.map +1 -1
  93. package/components/Paging/Paging.styles.d.ts +6 -2
  94. package/components/Select/Select/Select.js +5 -5
  95. package/components/Select/Select/Select.js.map +1 -1
  96. package/components/Toggle/Toggle/Toggle.js +2 -1
  97. package/components/Toggle/Toggle/Toggle.js.map +1 -1
  98. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js +3 -1
  99. package/internal/CustomComboBox/ComboBoxMenu/ComboBoxMenu.js.map +1 -1
  100. package/internal/CustomComboBox/ComboBoxMenu.d.ts +1 -0
  101. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js +3 -1
  102. package/internal/CustomComboBox/ComboBoxView/ComboBoxView.js.map +1 -1
  103. package/internal/CustomComboBox/ComboBoxView.d.ts +1 -0
  104. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +1 -0
  105. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  106. package/internal/CustomComboBox/CustomComboBox.d.ts +1 -0
  107. package/internal/FileUploaderControl/FileUploaderControlContext/FileUploaderControlContext.js.map +1 -1
  108. package/internal/FileUploaderControl/FileUploaderControlContext.d.ts +2 -0
  109. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js +7 -1
  110. package/internal/FileUploaderControl/FileUploaderControlProvider/FileUploaderControlProvider.js.map +1 -1
  111. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js +38 -13
  112. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile/FileUploaderFile.js.map +1 -1
  113. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.d.ts +3 -0
  114. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js +26 -5
  115. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles/FileUploaderFile.styles.js.map +1 -1
  116. package/internal/FileUploaderControl/FileUploaderFile/FileUploaderFile.styles.d.ts +7 -0
  117. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js +13 -3
  118. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList/FileUploaderFileList.js.map +1 -1
  119. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.d.ts +2 -0
  120. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js +10 -1
  121. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles/FileUploaderFileList.styles.js.map +1 -1
  122. package/internal/FileUploaderControl/FileUploaderFileList/FileUploaderFileList.styles.d.ts +3 -0
  123. package/internal/FileUploaderControl/hooks/useFileUploaderSize/package.json +6 -0
  124. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js +21 -0
  125. package/internal/FileUploaderControl/hooks/useFileUploaderSize/useFileUploaderSize.js.map +1 -0
  126. package/internal/FileUploaderControl/hooks/useFileUploaderSize.d.ts +2 -0
  127. package/internal/Popup/Popup/Popup.js +5 -1
  128. package/internal/Popup/Popup/Popup.js.map +1 -1
  129. package/internal/Popup/Popup.d.ts +5 -0
  130. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  131. package/internal/themes/DarkTheme/DarkTheme.js +1 -0
  132. package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
  133. package/internal/themes/DarkTheme.d.ts +1 -0
  134. package/internal/themes/DefaultTheme/DefaultTheme.js +64 -0
  135. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  136. package/internal/themes/DefaultTheme.d.ts +16 -0
  137. package/lib/utils/utils.js.map +1 -1
  138. package/lib/utils.d.ts +2 -3
  139. package/package.json +2 -2
@@ -1,4 +1,4 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.jsStyles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../../lib/theming/Emotion");var _templateObject, _templateObject2;
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.jsStyles = void 0;var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));var _Emotion = require("../../../lib/theming/Emotion");var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
2
2
 
3
3
 
4
4
  var styles = {
@@ -16,6 +16,24 @@ var styles = {
16
16
 
17
17
  t.fileUploaderPaddingY, t.fileUploaderPaddingX);
18
18
 
19
+ },
20
+
21
+ fileWrapperSmall: function fileWrapperSmall(t) {
22
+ return (0, _Emotion.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", " ", ";\n "])),
23
+ t.fileUploaderPaddingYSmall, t.fileUploaderPaddingXSmall);
24
+
25
+ },
26
+
27
+ fileWrapperMedium: function fileWrapperMedium(t) {
28
+ return (0, _Emotion.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", " ", ";\n "])),
29
+ t.fileUploaderPaddingYMedium, t.fileUploaderPaddingXMedium);
30
+
31
+ },
32
+
33
+ fileWrapperLarge: function fileWrapperLarge(t) {
34
+ return (0, _Emotion.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)(["\n padding: ", " ", ";\n "])),
35
+ t.fileUploaderPaddingYLarge, t.fileUploaderPaddingXLarge);
36
+
19
37
  } };
20
38
 
21
39
 
@@ -1 +1 @@
1
- {"version":3,"sources":["FileUploaderFileList.styles.ts"],"names":["styles","file","css","fileWrapper","t","fileUploaderPaddingY","fileUploaderPaddingX","jsStyles"],"mappings":"8QAAA,uD;;;AAGA,IAAMA,MAAM,GAAG;AACbC,EAAAA,IADa,kBACN;AACL,eAAOC,YAAP;;;AAGD,GALY;AAMbC,EAAAA,WANa,uBAMDC,CANC,EAMS;AACpB,eAAOF,YAAP;;;;;;AAMaE,IAAAA,CAAC,CAACC,oBANf,EAMuCD,CAAC,CAACE,oBANzC;;AAQD,GAfY,EAAf;;;AAkBO,IAAMC,QAAQ,GAAG,2BAAaP,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../../lib/theming/Emotion';\nimport { Theme } from '../../../lib/theming/Theme';\n\nconst styles = {\n file() {\n return css`\n width: 100%;\n `;\n },\n fileWrapper(t: Theme) {\n return css`\n width: 100%;\n height: 32px;\n display: flex;\n align-items: center;\n box-sizing: border-box;\n padding: ${t.fileUploaderPaddingY} ${t.fileUploaderPaddingX};\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
1
+ {"version":3,"sources":["FileUploaderFileList.styles.ts"],"names":["styles","file","css","fileWrapper","t","fileUploaderPaddingY","fileUploaderPaddingX","fileWrapperSmall","fileUploaderPaddingYSmall","fileUploaderPaddingXSmall","fileWrapperMedium","fileUploaderPaddingYMedium","fileUploaderPaddingXMedium","fileWrapperLarge","fileUploaderPaddingYLarge","fileUploaderPaddingXLarge","jsStyles"],"mappings":"8QAAA,uD;;;AAGA,IAAMA,MAAM,GAAG;AACbC,EAAAA,IADa,kBACN;AACL,eAAOC,YAAP;;;AAGD,GALY;AAMbC,EAAAA,WANa,uBAMDC,CANC,EAMS;AACpB,eAAOF,YAAP;;;;;;AAMaE,IAAAA,CAAC,CAACC,oBANf,EAMuCD,CAAC,CAACE,oBANzC;;AAQD,GAfY;;AAiBbC,EAAAA,gBAjBa,4BAiBIH,CAjBJ,EAiBc;AACzB,eAAOF,YAAP;AACaE,IAAAA,CAAC,CAACI,yBADf,EAC4CJ,CAAC,CAACK,yBAD9C;;AAGD,GArBY;;AAuBbC,EAAAA,iBAvBa,6BAuBKN,CAvBL,EAuBe;AAC1B,eAAOF,YAAP;AACaE,IAAAA,CAAC,CAACO,0BADf,EAC6CP,CAAC,CAACQ,0BAD/C;;AAGD,GA3BY;;AA6BbC,EAAAA,gBA7Ba,4BA6BIT,CA7BJ,EA6Bc;AACzB,eAAOF,YAAP;AACaE,IAAAA,CAAC,CAACU,yBADf,EAC4CV,CAAC,CAACW,yBAD9C;;AAGD,GAjCY,EAAf;;;AAoCO,IAAMC,QAAQ,GAAG,2BAAahB,MAAb,CAAjB,C","sourcesContent":["import { css, memoizeStyle } from '../../../lib/theming/Emotion';\nimport { Theme } from '../../../lib/theming/Theme';\n\nconst styles = {\n file() {\n return css`\n width: 100%;\n `;\n },\n fileWrapper(t: Theme) {\n return css`\n width: 100%;\n height: 32px;\n display: flex;\n align-items: center;\n box-sizing: border-box;\n padding: ${t.fileUploaderPaddingY} ${t.fileUploaderPaddingX};\n `;\n },\n\n fileWrapperSmall(t: Theme) {\n return css`\n padding: ${t.fileUploaderPaddingYSmall} ${t.fileUploaderPaddingXSmall};\n `;\n },\n\n fileWrapperMedium(t: Theme) {\n return css`\n padding: ${t.fileUploaderPaddingYMedium} ${t.fileUploaderPaddingXMedium};\n `;\n },\n\n fileWrapperLarge(t: Theme) {\n return css`\n padding: ${t.fileUploaderPaddingYLarge} ${t.fileUploaderPaddingXLarge};\n `;\n },\n};\n\nexport const jsStyles = memoizeStyle(styles);\n"]}
@@ -0,0 +1,2 @@
1
+ import { FileUploaderSize } from '../../../components/FileUploader';
2
+ export declare function useFileUploaderSize<T>(size: FileUploaderSize, { small, medium, large }: Record<FileUploaderSize, T>): T;
@@ -0,0 +1,18 @@
1
+ "use strict";exports.__esModule = true;exports.useFileUploaderSize = useFileUploaderSize;var _react = require("react");
2
+
3
+
4
+
5
+ function useFileUploaderSize(size, _ref) {var small = _ref.small,medium = _ref.medium,large = _ref.large;
6
+ return (0, _react.useMemo)(function () {
7
+ switch (size) {
8
+ case 'large':
9
+ return large;
10
+ case 'medium':
11
+ return medium;
12
+ case 'small':
13
+ return small;
14
+ default:
15
+ return small;}
16
+
17
+ }, [size]);
18
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useFileUploaderSize.ts"],"names":["useFileUploaderSize","size","small","medium","large"],"mappings":"yFAAA;;;;AAIO,SAASA,mBAAT,CAAgCC,IAAhC,QAA+G,KAArDC,KAAqD,QAArDA,KAAqD,CAA9CC,MAA8C,QAA9CA,MAA8C,CAAtCC,KAAsC,QAAtCA,KAAsC;AACpH,SAAO,oBAAQ,YAAM;AACnB,YAAQH,IAAR;AACE,WAAK,OAAL;AACE,eAAOG,KAAP;AACF,WAAK,QAAL;AACE,eAAOD,MAAP;AACF,WAAK,OAAL;AACE,eAAOD,KAAP;AACF;AACE,eAAOA,KAAP,CARJ;;AAUD,GAXM,EAWJ,CAACD,IAAD,CAXI,CAAP;AAYD","sourcesContent":["import { useMemo } from 'react';\n\nimport { FileUploaderSize } from '../../../components/FileUploader';\n\nexport function useFileUploaderSize<T>(size: FileUploaderSize, { small, medium, large }: Record<FileUploaderSize, T>) {\n return useMemo(() => {\n switch (size) {\n case 'large':\n return large;\n case 'medium':\n return medium;\n case 'small':\n return small;\n default:\n return small;\n }\n }, [size]);\n}\n"]}
@@ -6,6 +6,7 @@ import { CommonProps } from '../CommonWrapper';
6
6
  export declare const PopupPositions: readonly ["top left", "top center", "top right", "right top", "right middle", "right bottom", "bottom right", "bottom center", "bottom left", "left bottom", "left middle", "left top"];
7
7
  export declare const DefaultPosition: "top left";
8
8
  export declare type PopupPositionsType = typeof PopupPositions[number];
9
+ export declare const DUMMY_LOCATION: PopupLocation;
9
10
  export interface PopupHandlerProps {
10
11
  onMouseEnter?: (event: MouseEventType) => void;
11
12
  onMouseLeave?: (event: MouseEventType) => void;
@@ -48,6 +49,10 @@ export interface PopupProps extends CommonProps, PopupHandlerProps {
48
49
  tryPreserveFirstRenderedPosition?: boolean;
49
50
  withoutMobile?: boolean;
50
51
  mobileOnCloseRequest?: () => void;
52
+ /**
53
+ * Возвращает текущую позицию попапа
54
+ */
55
+ onPositionChange?: (pos: PopupPositionsType) => void;
51
56
  }
52
57
  interface PopupLocation {
53
58
  coordinates: {
@@ -1,4 +1,4 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.PopupPositions = exports.PopupDataTids = exports.Popup = exports.DefaultPosition = void 0;var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.PopupPositions = exports.PopupDataTids = exports.Popup = exports.DefaultPosition = exports.DUMMY_LOCATION = void 0;var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/inheritsLoose"));var _react = _interopRequireDefault(require("react"));
2
2
  var _propTypes = _interopRequireDefault(require("prop-types"));
3
3
  var _reactTransitionGroup = require("react-transition-group");
4
4
  var _raf = _interopRequireDefault(require("raf"));
@@ -54,7 +54,11 @@ var DUMMY_LOCATION = {
54
54
  position: DefaultPosition,
55
55
  coordinates: {
56
56
  top: -9999,
57
- left: -9999 } };
57
+ left: -9999 } };exports.DUMMY_LOCATION = DUMMY_LOCATION;
58
+
59
+
60
+
61
+
58
62
 
59
63
 
60
64
 
@@ -551,6 +555,10 @@ Popup = (0, _decorator.responsiveLayout)(_class = (0, _rootNode.rootNode)(_class
551
555
  }
552
556
 
553
557
  var location = _this.getLocation(popupElement, _this.state.location);
558
+ if (location) {
559
+ _this.props.onPositionChange == null ? void 0 : _this.props.onPositionChange(location == null ? void 0 : location.position);
560
+ }
561
+
554
562
  if (!_this.locationEquals(_this.state.location, location)) {
555
563
  _this.setState({ location: location });
556
564
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["Popup.tsx"],"names":["POPUP_BORDER_DEFAULT_COLOR","TRANSITION_TIMEOUT","enter","exit","PopupPositions","DefaultPosition","DUMMY_LOCATION","position","coordinates","top","left","PopupDataTids","content","contentInner","popupPin","Popup","responsiveLayout","rootNode","getProps","defaultProps","state","location","props","opened","locationUpdateId","refForTransition","React","createRef","anchorElement","updateAnchorElement","instance","childDomNode","getAnchorElement","removeEventListeners","addEventListeners","handleMouseEnter","event","onMouseEnter","handleMouseLeave","onMouseLeave","handleClick","onClick","handleFocus","onFocus","handleBlur","onBlur","calculateWidth","width","includes","anchorWidth","Math","floor","parseFloat","children","backgroundColor","styles","theme","resetLocation","cancelDelayedUpdateLocation","setState","refPopupElement","element","lastPopupElement","handleLayoutEvent","updateLocation","popupElement","getLocation","locationEquals","componentDidMount","layoutEventsToken","LayoutEvents","addListener","getDerivedStateFromProps","componentDidUpdate","prevProps","prevState","hadNoLocation","hasLocation","wasClosed","isMobileLayout","onOpen","onClose","delayUpdateLocation","componentWillUnmount","remove","render","renderMain","renderMobile","renderChildren","mobileOnCloseRequest","useWrapper","anchor","isValidElement","anchorWithRef","cloneElement","ref","originalRef","canGetAnchorNode","withoutMobile","renderContent","addEventListener","removeEventListener","maxWidth","hasShadow","disableAnimations","ignoreHover","PopupHelper","getPositionObject","direction","rootStyle","shouldFallbackShadow","isIE11","isEdge","isSafari","Boolean","setRootNode","popup","shadow","shadowFallback","popupIgnoreHover","transitionEnter","transitionEnterActive","transitionExit","renderPin","positionName","isDefaultBorderColor","popupBorderColor","pinBorder","pinSize","borderColor","hasPin","parseInt","popupPinSize","getPinOffset","align","popupBackground","raf","cancel","x","y","abs","positions","tryPreserveFirstRenderedPosition","anchorRect","getElementAbsoluteRect","popupRect","getCoordinates","isFullyVisible","canBecomeVisible","canBecomeFullyVisible","getPinnedPopupOffset","test","anchorSize","height","max","marginFromProps","margin","isNaN","popupMargin","popupOffset","getHorizontalPosition","getVerticalPosition","Error","pinOffset","popupPinOffset","popupPinOffsetY","popupPinOffsetX","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","oneOfType","HTMLElement","node","isRequired","string","func","bool","number","array","isTestEnv","defaultRootNode"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport raf from 'raf';\nimport warning from 'warning';\n\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { Nullable } from '../../typings/utility-types';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { ZIndex } from '../ZIndex';\nimport { RenderContainer } from '../RenderContainer';\nimport { FocusEventType, MouseEventType } from '../../typings/event-types';\nimport { isFunction, isNonNullable, isNullable, isRefableElement } from '../../lib/utils';\nimport { isIE11, isEdge, isSafari } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isElement, safePropTypesInstanceOf } from '../../lib/SSRSafe';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { MobilePopup } from '../MobilePopup';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { isInstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { PopupPin } from './PopupPin';\nimport { Offset, PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { styles } from './Popup.styles';\n\nconst POPUP_BORDER_DEFAULT_COLOR = 'transparent';\nconst TRANSITION_TIMEOUT = { enter: 0, exit: 200 };\n\nexport const PopupPositions = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom right',\n 'bottom center',\n 'bottom left',\n 'left bottom',\n 'left middle',\n 'left top',\n] as const;\nexport const DefaultPosition = PopupPositions[0];\n\nexport type PopupPositionsType = typeof PopupPositions[number];\n\nconst DUMMY_LOCATION: PopupLocation = {\n position: DefaultPosition,\n coordinates: {\n top: -9999,\n left: -9999,\n },\n};\n\nexport interface PopupHandlerProps {\n onMouseEnter?: (event: MouseEventType) => void;\n onMouseLeave?: (event: MouseEventType) => void;\n onClick?: (event: MouseEventType) => void;\n onFocus?: (event: FocusEventType) => void;\n onBlur?: (event: FocusEventType) => void;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport interface PopupProps extends CommonProps, PopupHandlerProps {\n anchorElement: React.ReactNode | HTMLElement;\n backgroundColor?: React.CSSProperties['backgroundColor'];\n borderColor?: React.CSSProperties['borderColor'];\n children: React.ReactNode | (() => React.ReactNode);\n hasPin?: boolean;\n hasShadow?: boolean;\n disableAnimations?: boolean;\n margin?: number;\n maxWidth?: number | string;\n opened: boolean;\n pinOffset?: number;\n pinSize?: number;\n popupOffset?: number;\n positions: Readonly<PopupPositionsType[]>;\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper?: boolean;\n ignoreHover?: boolean;\n width?: React.CSSProperties['width'];\n /**\n * При очередном рендере пытаться сохранить первоначальную позицию попапа\n * (в числе числе, когда он выходит за пределы экрана, но может быть проскролен в него).\n *\n * Нужен только для Tooltip. В остальных случаях позиция перестраивается автоматически.\n * @see https://github.com/skbkontur/retail-ui/pull/1195\n */\n tryPreserveFirstRenderedPosition?: boolean;\n withoutMobile?: boolean;\n mobileOnCloseRequest?: () => void;\n}\n\ninterface PopupLocation {\n coordinates: {\n left: number;\n top: number;\n };\n position: PopupPositionsType;\n}\n\nexport interface PopupState {\n location: Nullable<PopupLocation>;\n}\n\nexport const PopupDataTids = {\n content: 'PopupContent',\n contentInner: 'PopupContentInner',\n popupPin: 'PopupPin__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n PopupProps,\n 'popupOffset' | 'hasPin' | 'hasShadow' | 'disableAnimations' | 'useWrapper' | 'ignoreHover' | 'width'\n >\n>;\n\n@responsiveLayout\n@rootNode\nexport class Popup extends React.Component<PopupProps, PopupState> {\n public static __KONTUR_REACT_UI__ = 'Popup';\n\n public static propTypes = {\n /**\n * Ссылка (ref) на элемент или React компонент, для которого рисуется попап\n */\n anchorElement: PropTypes.oneOfType([safePropTypesInstanceOf(() => HTMLElement), PropTypes.node]).isRequired,\n\n /**\n * Фон попапа и пина\n */\n backgroundColor: PropTypes.string,\n\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Показывать ли пин\n */\n hasPin: PropTypes.bool,\n\n /**\n * Применять ли box-shadow на попапе. При false отключает границу на пине\n */\n hasShadow: PropTypes.bool,\n\n /**\n * Отступ попапа от элемента\n */\n margin: PropTypes.number,\n\n /**\n * Показан или скрыт попап\n */\n opened: PropTypes.bool,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n pinOffset: PropTypes.number,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n pinSize: PropTypes.number,\n\n /**\n * смещение попапа относительно родительского элемента\n */\n popupOffset: PropTypes.number,\n\n /**\n * С какой стороны показывать попап и край попапа,\n * на котором будет отображаться пин\n */\n positions: PropTypes.array,\n\n /**\n * Игнорировать ли события hover/click\n */\n ignoreHover: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n popupOffset: 0,\n hasPin: false,\n hasShadow: false,\n disableAnimations: isTestEnv,\n useWrapper: false,\n ignoreHover: false,\n width: 'auto',\n };\n\n private getProps = createPropsGetter(Popup.defaultProps);\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n public state: PopupState = { location: this.props.opened ? DUMMY_LOCATION : null };\n private theme!: Theme;\n private layoutEventsToken: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private locationUpdateId: Nullable<number> = null;\n private lastPopupElement: Nullable<Element>;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\n private refForTransition = React.createRef<HTMLDivElement>();\n\n public anchorElement: Nullable<Element> = null;\n\n public componentDidMount() {\n this.updateLocation();\n this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);\n }\n\n public static getDerivedStateFromProps(props: Readonly<PopupProps>, state: PopupState) {\n /**\n * Delaying updateLocation to ensure it happens after props update\n */\n if (props.opened) {\n if (!state.location) {\n return { location: DUMMY_LOCATION };\n }\n } else if (state.location) {\n return { location: DUMMY_LOCATION };\n }\n return state;\n }\n\n public componentDidUpdate(prevProps: PopupProps, prevState: PopupState) {\n const hadNoLocation = prevState.location === DUMMY_LOCATION;\n const hasLocation = this.state.location !== DUMMY_LOCATION;\n const wasClosed = prevProps.opened && !this.props.opened;\n\n if (this.isMobileLayout && prevState.location === null && this.state.location === null) {\n this.setState({ location: DUMMY_LOCATION });\n }\n\n if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {\n this.props.onOpen();\n }\n if (wasClosed && !hasLocation && this.props.onClose) {\n this.props.onClose();\n }\n if (this.props.opened) {\n this.delayUpdateLocation();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedUpdateLocation();\n this.removeEventListeners(this.anchorElement);\n if (this.layoutEventsToken) {\n this.layoutEventsToken.remove();\n this.layoutEventsToken = null;\n }\n if (this.state.location && this.props.onClose) {\n this.props.onClose();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMobile() {\n const { opened } = this.props;\n const children = this.renderChildren();\n\n return children ? (\n <MobilePopup opened={opened} withoutRenderContainer onCloseRequest={this.props.mobileOnCloseRequest}>\n {this.content(children)}\n </MobilePopup>\n ) : null;\n }\n\n private renderMain() {\n const { location } = this.state;\n const { anchorElement } = this.props;\n const useWrapper = this.getProps().useWrapper;\n\n let anchor: Nullable<React.ReactNode> = null;\n if (isElement(anchorElement)) {\n this.updateAnchorElement(anchorElement);\n } else if (React.isValidElement(anchorElement)) {\n anchor = useWrapper ? <span>{anchorElement}</span> : anchorElement;\n } else {\n anchor = <span>{anchorElement}</span>;\n }\n\n const anchorWithRef =\n anchor && React.isValidElement(anchor) && isRefableElement(anchor)\n ? React.cloneElement(anchor, {\n ref: (instance: Nullable<React.ReactInstance>) => {\n this.updateAnchorElement(instance);\n const originalRef = (anchor as React.RefAttributes<any>)?.ref;\n originalRef && callChildRef(originalRef, instance);\n },\n })\n : null;\n\n // we need to get anchor's DOM node\n // so we either set our own ref on it via cloning\n // or relay on findDOMNode (inside getRootNode)\n // which should be called within updateAnchorElement\n // in the case when the anchor is not refable\n\n const canGetAnchorNode = !!anchorWithRef || isElement(anchorElement);\n\n return (\n <RenderContainer anchor={anchorWithRef || anchor} ref={canGetAnchorNode ? null : this.updateAnchorElement}>\n {this.isMobileLayout && !this.props.withoutMobile\n ? this.renderMobile()\n : location && this.renderContent(location)}\n </RenderContainer>\n );\n }\n\n private updateAnchorElement = (instance: Nullable<React.ReactInstance>) => {\n const childDomNode = isInstanceWithAnchorElement(instance) ? instance.getAnchorElement() : getRootNode(instance);\n const anchorElement = this.anchorElement;\n\n if (childDomNode !== anchorElement) {\n this.removeEventListeners(anchorElement);\n this.anchorElement = childDomNode;\n this.addEventListeners(childDomNode);\n }\n };\n\n private addEventListeners(element: Nullable<Element>) {\n if (element && isElement(element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.addEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.addEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.addEventListener('click', this.handleClick);\n element.addEventListener('focusin', this.handleFocus as EventListener);\n element.addEventListener('focusout', this.handleBlur as EventListener);\n }\n }\n\n private removeEventListeners(element: Nullable<Element>) {\n if (element && isElement(element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.removeEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.removeEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.removeEventListener('click', this.handleClick);\n element.removeEventListener('focusin', this.handleFocus as EventListener);\n element.removeEventListener('focusout', this.handleBlur as EventListener);\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(event);\n }\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(event);\n }\n };\n\n private handleClick = (event: MouseEventType) => {\n if (this.props.onClick) {\n this.props.onClick(event);\n }\n };\n\n private handleFocus = (event: FocusEventType) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: FocusEventType) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private calculateWidth = (width: PopupProps['width']) => {\n if (typeof width === 'string' && width.includes('%')) {\n const anchorWidth = Math.floor(getDOMRect(this.anchorElement).width);\n return this.anchorElement ? (anchorWidth * parseFloat(width)) / 100 : 0;\n }\n return width;\n };\n\n private content = (children: React.ReactNode) => {\n const { backgroundColor } = this.props;\n const width = this.getProps().width;\n\n return (\n <div className={styles.content(this.theme)} data-tid={PopupDataTids.content} ref={this.refForTransition}>\n <div\n className={styles.contentInner(this.theme)}\n style={{ backgroundColor, width: this.calculateWidth(width) }}\n data-tid={PopupDataTids.contentInner}\n >\n {children}\n </div>\n </div>\n );\n };\n\n private renderContent(location: PopupLocation) {\n const { maxWidth, opened } = this.props;\n const { hasShadow, disableAnimations, ignoreHover } = this.getProps();\n const children = this.renderChildren();\n\n const { direction } = PopupHelper.getPositionObject(location.position);\n const rootStyle: React.CSSProperties = { ...location.coordinates, maxWidth };\n\n const shouldFallbackShadow = isIE11 || isEdge || isSafari;\n\n return (\n <Transition\n timeout={TRANSITION_TIMEOUT}\n appear={!disableAnimations}\n in={Boolean(opened && children)}\n mountOnEnter\n unmountOnExit\n enter={!disableAnimations}\n exit={!disableAnimations}\n onExited={this.resetLocation}\n nodeRef={this.refForTransition}\n >\n {(state: string) => (\n <CommonWrapper {...this.props} rootNodeRef={this.setRootNode}>\n <ZIndex\n data-tid={'Popup__root'}\n wrapperRef={this.refPopupElement}\n priority={'Popup'}\n className={cx({\n [styles.popup(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow && !shouldFallbackShadow,\n [styles.shadowFallback(this.theme)]: hasShadow && shouldFallbackShadow,\n [styles.popupIgnoreHover()]: ignoreHover,\n ...(disableAnimations\n ? {}\n : {\n [styles[`transition-enter-${direction}` as keyof typeof styles](this.theme)]: true,\n [styles.transitionEnter()]: state === 'entering',\n [styles.transitionEnterActive()]: state === 'entered',\n [styles.transitionExit()]: state === 'exiting',\n }),\n })}\n style={rootStyle}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {this.content(children)}\n {!this.isMobileLayout && this.renderPin(location.position)}\n </ZIndex>\n </CommonWrapper>\n )}\n </Transition>\n );\n }\n\n private resetLocation = () => {\n this.cancelDelayedUpdateLocation();\n this.state.location !== null && this.setState({ location: null });\n };\n\n private renderChildren() {\n return isFunction(this.props.children) ? this.props.children() : this.props.children;\n }\n\n private refPopupElement = (element: Nullable<Element>) => {\n this.lastPopupElement = element;\n };\n\n private renderPin(positionName: string): React.ReactNode {\n /**\n * Box-shadow does not appear under the pin. Borders are used instead.\n * In non-ie browsers drop-shadow filter is used. It is applying\n * shadow to the pin too.\n */\n const isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;\n const pinBorder = isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;\n\n const { pinSize, backgroundColor, borderColor } = this.props;\n const { hasShadow, hasPin } = this.getProps();\n const position = PopupHelper.getPositionObject(positionName);\n\n return (\n hasPin && (\n <PopupPin\n popupElement={this.lastPopupElement}\n popupPosition={positionName}\n size={pinSize || parseInt(this.theme.popupPinSize)}\n offset={this.getPinOffset(position.align)}\n borderWidth={hasShadow ? 1 : 0}\n backgroundColor={backgroundColor || this.theme.popupBackground}\n borderColor={borderColor || pinBorder}\n />\n )\n );\n }\n\n private handleLayoutEvent = () => {\n if (!this.state.location) {\n return;\n }\n this.updateLocation();\n };\n\n private delayUpdateLocation() {\n this.cancelDelayedUpdateLocation();\n this.locationUpdateId = raf(this.updateLocation);\n }\n\n private cancelDelayedUpdateLocation() {\n if (this.locationUpdateId) {\n raf.cancel(this.locationUpdateId);\n this.locationUpdateId = null;\n }\n }\n\n private updateLocation = () => {\n const popupElement = this.lastPopupElement;\n\n if (!popupElement) {\n return;\n }\n\n const location = this.getLocation(popupElement, this.state.location);\n if (!this.locationEquals(this.state.location, location)) {\n this.setState({ location });\n }\n };\n\n private locationEquals(x: Nullable<PopupLocation>, y: Nullable<PopupLocation>) {\n if (x === y) {\n return true;\n }\n\n if (isNullable(x) || isNullable(y)) {\n return false;\n }\n\n if (!isIE11 && !isEdge) {\n return (\n x.coordinates.left === y.coordinates.left &&\n x.coordinates.top === y.coordinates.top &&\n x.position === y.position\n );\n }\n\n // Для ie/edge обновляем позицию только при разнице минимум в 1. Иначе есть вероятность\n // уйти в бесконечный ререндер\n\n return (\n x.position === y.position &&\n Math.abs(x.coordinates.top - y.coordinates.top) <= 1 &&\n Math.abs(x.coordinates.left - y.coordinates.left) <= 1\n );\n }\n\n private getLocation(popupElement: Element, location?: Nullable<PopupLocation>) {\n const { positions, tryPreserveFirstRenderedPosition } = this.props;\n const anchorElement = this.anchorElement;\n\n warning(anchorElement && isElement(anchorElement), 'Anchor element is not defined or not instance of Element');\n\n if (!(anchorElement && isElement(anchorElement))) {\n return location;\n }\n\n const anchorRect = PopupHelper.getElementAbsoluteRect(anchorElement);\n const popupRect = PopupHelper.getElementAbsoluteRect(popupElement);\n\n let position: PopupPositionsType;\n let coordinates: Offset;\n\n if (location && location !== DUMMY_LOCATION && location.position) {\n position = location.position;\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n\n const isFullyVisible = PopupHelper.isFullyVisible(coordinates, popupRect);\n const canBecomeVisible = !isFullyVisible && PopupHelper.canBecomeFullyVisible(position, coordinates);\n\n if (\n // если нужно сохранить первоначальную позицию и Попап целиком\n // находится в пределах вьюпорта (или может быть проскроллен в него)\n (tryPreserveFirstRenderedPosition && (isFullyVisible || canBecomeVisible)) ||\n // если Попап целиком во вьюпорте и в самой приоритетной позиции\n // (иначе нужно попытаться позицию сменить)\n (isFullyVisible && position === positions[0])\n ) {\n // сохраняем текущую позицию\n return { coordinates, position };\n }\n }\n\n for (position of positions) {\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n if (PopupHelper.isFullyVisible(coordinates, popupRect)) {\n return { coordinates, position };\n }\n }\n\n position = positions[0];\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n return { coordinates, position };\n }\n\n private getPinnedPopupOffset(anchorRect: Rect, position: PositionObject) {\n if (!this.getProps().hasPin || /center|middle/.test(position.align)) {\n return 0;\n }\n\n const anchorSize = /top|bottom/.test(position.direction) ? anchorRect.width : anchorRect.height;\n\n const { pinSize } = this.props;\n\n return Math.max(\n 0,\n this.getPinOffset(position.align) + (pinSize || parseInt(this.theme.popupPinSize)) - anchorSize / 2,\n );\n }\n\n private getCoordinates(anchorRect: Rect, popupRect: Rect, positionName: string) {\n const { margin: marginFromProps } = this.props;\n const margin =\n isNonNullable(marginFromProps) && !isNaN(marginFromProps)\n ? marginFromProps\n : parseInt(this.theme.popupMargin) || 0;\n const position = PopupHelper.getPositionObject(positionName);\n const popupOffset = this.getProps().popupOffset + this.getPinnedPopupOffset(anchorRect, position);\n\n switch (position.direction) {\n case 'top':\n return {\n top: anchorRect.top - popupRect.height - margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'bottom':\n return {\n top: anchorRect.top + anchorRect.height + margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'left':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left - popupRect.width - margin,\n };\n case 'right':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left + anchorRect.width + margin,\n };\n default:\n throw new Error(`Unexpected direction '${position.direction}'`);\n }\n }\n\n private getPinOffset(align: string) {\n const { pinOffset } = this.props;\n\n switch (align) {\n case 'top':\n case 'bottom':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetY);\n case 'left':\n case 'right':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetX);\n case 'center':\n case 'middle':\n return 0;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getHorizontalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'left':\n return anchorRect.left - popupOffset;\n case 'center':\n return anchorRect.left - (popupRect.width - anchorRect.width) / 2;\n case 'right':\n return anchorRect.left - (popupRect.width - anchorRect.width) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getVerticalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'top':\n return anchorRect.top - popupOffset;\n case 'middle':\n return anchorRect.top - (popupRect.height - anchorRect.height) / 2;\n case 'bottom':\n return anchorRect.top - (popupRect.height - anchorRect.height) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["Popup.tsx"],"names":["POPUP_BORDER_DEFAULT_COLOR","TRANSITION_TIMEOUT","enter","exit","PopupPositions","DefaultPosition","DUMMY_LOCATION","position","coordinates","top","left","PopupDataTids","content","contentInner","popupPin","Popup","responsiveLayout","rootNode","getProps","defaultProps","state","location","props","opened","locationUpdateId","refForTransition","React","createRef","anchorElement","updateAnchorElement","instance","childDomNode","getAnchorElement","removeEventListeners","addEventListeners","handleMouseEnter","event","onMouseEnter","handleMouseLeave","onMouseLeave","handleClick","onClick","handleFocus","onFocus","handleBlur","onBlur","calculateWidth","width","includes","anchorWidth","Math","floor","parseFloat","children","backgroundColor","styles","theme","resetLocation","cancelDelayedUpdateLocation","setState","refPopupElement","element","lastPopupElement","handleLayoutEvent","updateLocation","popupElement","getLocation","onPositionChange","locationEquals","componentDidMount","layoutEventsToken","LayoutEvents","addListener","getDerivedStateFromProps","componentDidUpdate","prevProps","prevState","hadNoLocation","hasLocation","wasClosed","isMobileLayout","onOpen","onClose","delayUpdateLocation","componentWillUnmount","remove","render","renderMain","renderMobile","renderChildren","mobileOnCloseRequest","useWrapper","anchor","isValidElement","anchorWithRef","cloneElement","ref","originalRef","canGetAnchorNode","withoutMobile","renderContent","addEventListener","removeEventListener","maxWidth","hasShadow","disableAnimations","ignoreHover","PopupHelper","getPositionObject","direction","rootStyle","shouldFallbackShadow","isIE11","isEdge","isSafari","Boolean","setRootNode","popup","shadow","shadowFallback","popupIgnoreHover","transitionEnter","transitionEnterActive","transitionExit","renderPin","positionName","isDefaultBorderColor","popupBorderColor","pinBorder","pinSize","borderColor","hasPin","parseInt","popupPinSize","getPinOffset","align","popupBackground","raf","cancel","x","y","abs","positions","tryPreserveFirstRenderedPosition","anchorRect","getElementAbsoluteRect","popupRect","getCoordinates","isFullyVisible","canBecomeVisible","canBecomeFullyVisible","getPinnedPopupOffset","test","anchorSize","height","max","marginFromProps","margin","isNaN","popupMargin","popupOffset","getHorizontalPosition","getVerticalPosition","Error","pinOffset","popupPinOffset","popupPinOffsetY","popupPinOffsetX","Component","__KONTUR_REACT_UI__","propTypes","PropTypes","oneOfType","HTMLElement","node","isRequired","string","func","bool","number","array","isTestEnv","defaultRootNode"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Transition } from 'react-transition-group';\nimport raf from 'raf';\nimport warning from 'warning';\n\nimport { getDOMRect } from '../../lib/dom/getDOMRect';\nimport { Nullable } from '../../typings/utility-types';\nimport * as LayoutEvents from '../../lib/LayoutEvents';\nimport { ZIndex } from '../ZIndex';\nimport { RenderContainer } from '../RenderContainer';\nimport { FocusEventType, MouseEventType } from '../../typings/event-types';\nimport { isFunction, isNonNullable, isNullable, isRefableElement } from '../../lib/utils';\nimport { isIE11, isEdge, isSafari } from '../../lib/client';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { isElement, safePropTypesInstanceOf } from '../../lib/SSRSafe';\nimport { isTestEnv } from '../../lib/currentEnvironment';\nimport { CommonProps, CommonWrapper } from '../CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { responsiveLayout } from '../../components/ResponsiveLayout/decorator';\nimport { MobilePopup } from '../MobilePopup';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { isInstanceWithAnchorElement } from '../../lib/InstanceWithAnchorElement';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { PopupPin } from './PopupPin';\nimport { Offset, PopupHelper, PositionObject, Rect } from './PopupHelper';\nimport { styles } from './Popup.styles';\n\nconst POPUP_BORDER_DEFAULT_COLOR = 'transparent';\nconst TRANSITION_TIMEOUT = { enter: 0, exit: 200 };\n\nexport const PopupPositions = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right middle',\n 'right bottom',\n 'bottom right',\n 'bottom center',\n 'bottom left',\n 'left bottom',\n 'left middle',\n 'left top',\n] as const;\nexport const DefaultPosition = PopupPositions[0];\n\nexport type PopupPositionsType = typeof PopupPositions[number];\n\nexport const DUMMY_LOCATION: PopupLocation = {\n position: DefaultPosition,\n coordinates: {\n top: -9999,\n left: -9999,\n },\n};\n\nexport interface PopupHandlerProps {\n onMouseEnter?: (event: MouseEventType) => void;\n onMouseLeave?: (event: MouseEventType) => void;\n onClick?: (event: MouseEventType) => void;\n onFocus?: (event: FocusEventType) => void;\n onBlur?: (event: FocusEventType) => void;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport interface PopupProps extends CommonProps, PopupHandlerProps {\n anchorElement: React.ReactNode | HTMLElement;\n backgroundColor?: React.CSSProperties['backgroundColor'];\n borderColor?: React.CSSProperties['borderColor'];\n children: React.ReactNode | (() => React.ReactNode);\n hasPin?: boolean;\n hasShadow?: boolean;\n disableAnimations?: boolean;\n margin?: number;\n maxWidth?: number | string;\n opened: boolean;\n pinOffset?: number;\n pinSize?: number;\n popupOffset?: number;\n positions: Readonly<PopupPositionsType[]>;\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<span/>`. <br/> Используется для корректного позиционирования тултипа при двух и более вложенных элементах.\n *\n * _Примечание_: при **двух и более** вложенных элементах обёртка будет добавлена автоматически.\n */\n useWrapper?: boolean;\n ignoreHover?: boolean;\n width?: React.CSSProperties['width'];\n /**\n * При очередном рендере пытаться сохранить первоначальную позицию попапа\n * (в числе числе, когда он выходит за пределы экрана, но может быть проскролен в него).\n *\n * Нужен только для Tooltip. В остальных случаях позиция перестраивается автоматически.\n * @see https://github.com/skbkontur/retail-ui/pull/1195\n */\n tryPreserveFirstRenderedPosition?: boolean;\n withoutMobile?: boolean;\n mobileOnCloseRequest?: () => void;\n /**\n * Возвращает текущую позицию попапа\n */\n onPositionChange?: (pos: PopupPositionsType) => void;\n}\n\ninterface PopupLocation {\n coordinates: {\n left: number;\n top: number;\n };\n position: PopupPositionsType;\n}\n\nexport interface PopupState {\n location: Nullable<PopupLocation>;\n}\n\nexport const PopupDataTids = {\n content: 'PopupContent',\n contentInner: 'PopupContentInner',\n popupPin: 'PopupPin__root',\n} as const;\n\ntype DefaultProps = Required<\n Pick<\n PopupProps,\n 'popupOffset' | 'hasPin' | 'hasShadow' | 'disableAnimations' | 'useWrapper' | 'ignoreHover' | 'width'\n >\n>;\n\n@responsiveLayout\n@rootNode\nexport class Popup extends React.Component<PopupProps, PopupState> {\n public static __KONTUR_REACT_UI__ = 'Popup';\n\n public static propTypes = {\n /**\n * Ссылка (ref) на элемент или React компонент, для которого рисуется попап\n */\n anchorElement: PropTypes.oneOfType([safePropTypesInstanceOf(() => HTMLElement), PropTypes.node]).isRequired,\n\n /**\n * Фон попапа и пина\n */\n backgroundColor: PropTypes.string,\n\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n /**\n * Показывать ли пин\n */\n hasPin: PropTypes.bool,\n\n /**\n * Применять ли box-shadow на попапе. При false отключает границу на пине\n */\n hasShadow: PropTypes.bool,\n\n /**\n * Отступ попапа от элемента\n */\n margin: PropTypes.number,\n\n /**\n * Показан или скрыт попап\n */\n opened: PropTypes.bool,\n\n /**\n * Смещение пина от края попапа. Край задаётся в пропе position вторым словом\n */\n pinOffset: PropTypes.number,\n\n /**\n * Сторона пина без учёта границы.\n * Пин представляет собой равносторонний треугольник, высота от попапа\n * до \"носика\" пина будет соответствовать формуле (size* √3)/2\n */\n pinSize: PropTypes.number,\n\n /**\n * смещение попапа относительно родительского элемента\n */\n popupOffset: PropTypes.number,\n\n /**\n * С какой стороны показывать попап и край попапа,\n * на котором будет отображаться пин\n */\n positions: PropTypes.array,\n\n /**\n * Игнорировать ли события hover/click\n */\n ignoreHover: PropTypes.bool,\n };\n\n public static defaultProps: DefaultProps = {\n popupOffset: 0,\n hasPin: false,\n hasShadow: false,\n disableAnimations: isTestEnv,\n useWrapper: false,\n ignoreHover: false,\n width: 'auto',\n };\n\n private getProps = createPropsGetter(Popup.defaultProps);\n\n // see #2873 and #2895\n public static readonly defaultRootNode = null;\n\n public state: PopupState = { location: this.props.opened ? DUMMY_LOCATION : null };\n private theme!: Theme;\n private layoutEventsToken: Nullable<ReturnType<typeof LayoutEvents.addListener>>;\n private locationUpdateId: Nullable<number> = null;\n private lastPopupElement: Nullable<Element>;\n private isMobileLayout!: boolean;\n private setRootNode!: TSetRootNode;\n private refForTransition = React.createRef<HTMLDivElement>();\n\n public anchorElement: Nullable<Element> = null;\n\n public componentDidMount() {\n this.updateLocation();\n this.layoutEventsToken = LayoutEvents.addListener(this.handleLayoutEvent);\n }\n\n public static getDerivedStateFromProps(props: Readonly<PopupProps>, state: PopupState) {\n /**\n * Delaying updateLocation to ensure it happens after props update\n */\n if (props.opened) {\n if (!state.location) {\n return { location: DUMMY_LOCATION };\n }\n } else if (state.location) {\n return { location: DUMMY_LOCATION };\n }\n return state;\n }\n\n public componentDidUpdate(prevProps: PopupProps, prevState: PopupState) {\n const hadNoLocation = prevState.location === DUMMY_LOCATION;\n const hasLocation = this.state.location !== DUMMY_LOCATION;\n const wasClosed = prevProps.opened && !this.props.opened;\n\n if (this.isMobileLayout && prevState.location === null && this.state.location === null) {\n this.setState({ location: DUMMY_LOCATION });\n }\n\n if (this.props.opened && hadNoLocation && hasLocation && this.props.onOpen) {\n this.props.onOpen();\n }\n if (wasClosed && !hasLocation && this.props.onClose) {\n this.props.onClose();\n }\n if (this.props.opened) {\n this.delayUpdateLocation();\n }\n }\n\n public componentWillUnmount() {\n this.cancelDelayedUpdateLocation();\n this.removeEventListeners(this.anchorElement);\n if (this.layoutEventsToken) {\n this.layoutEventsToken.remove();\n this.layoutEventsToken = null;\n }\n if (this.state.location && this.props.onClose) {\n this.props.onClose();\n }\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return this.renderMain();\n }}\n </ThemeContext.Consumer>\n );\n }\n\n private renderMobile() {\n const { opened } = this.props;\n const children = this.renderChildren();\n\n return children ? (\n <MobilePopup opened={opened} withoutRenderContainer onCloseRequest={this.props.mobileOnCloseRequest}>\n {this.content(children)}\n </MobilePopup>\n ) : null;\n }\n\n private renderMain() {\n const { location } = this.state;\n const { anchorElement } = this.props;\n const useWrapper = this.getProps().useWrapper;\n\n let anchor: Nullable<React.ReactNode> = null;\n if (isElement(anchorElement)) {\n this.updateAnchorElement(anchorElement);\n } else if (React.isValidElement(anchorElement)) {\n anchor = useWrapper ? <span>{anchorElement}</span> : anchorElement;\n } else {\n anchor = <span>{anchorElement}</span>;\n }\n\n const anchorWithRef =\n anchor && React.isValidElement(anchor) && isRefableElement(anchor)\n ? React.cloneElement(anchor, {\n ref: (instance: Nullable<React.ReactInstance>) => {\n this.updateAnchorElement(instance);\n const originalRef = (anchor as React.RefAttributes<any>)?.ref;\n originalRef && callChildRef(originalRef, instance);\n },\n })\n : null;\n\n // we need to get anchor's DOM node\n // so we either set our own ref on it via cloning\n // or relay on findDOMNode (inside getRootNode)\n // which should be called within updateAnchorElement\n // in the case when the anchor is not refable\n\n const canGetAnchorNode = !!anchorWithRef || isElement(anchorElement);\n\n return (\n <RenderContainer anchor={anchorWithRef || anchor} ref={canGetAnchorNode ? null : this.updateAnchorElement}>\n {this.isMobileLayout && !this.props.withoutMobile\n ? this.renderMobile()\n : location && this.renderContent(location)}\n </RenderContainer>\n );\n }\n\n private updateAnchorElement = (instance: Nullable<React.ReactInstance>) => {\n const childDomNode = isInstanceWithAnchorElement(instance) ? instance.getAnchorElement() : getRootNode(instance);\n const anchorElement = this.anchorElement;\n\n if (childDomNode !== anchorElement) {\n this.removeEventListeners(anchorElement);\n this.anchorElement = childDomNode;\n this.addEventListeners(childDomNode);\n }\n };\n\n private addEventListeners(element: Nullable<Element>) {\n if (element && isElement(element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.addEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.addEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.addEventListener('click', this.handleClick);\n element.addEventListener('focusin', this.handleFocus as EventListener);\n element.addEventListener('focusout', this.handleBlur as EventListener);\n }\n }\n\n private removeEventListeners(element: Nullable<Element>) {\n if (element && isElement(element)) {\n // @ts-expect-error: Type ElementEventMap is missing events: https://github.com/skbkontur/retail-ui/pull/2946#discussion_r931072657\n element.removeEventListener('mouseenter', this.handleMouseEnter);\n // @ts-expect-error: See the comment above\n element.removeEventListener('mouseleave', this.handleMouseLeave);\n // @ts-expect-error: See the comment above\n element.removeEventListener('click', this.handleClick);\n element.removeEventListener('focusin', this.handleFocus as EventListener);\n element.removeEventListener('focusout', this.handleBlur as EventListener);\n }\n }\n\n private handleMouseEnter = (event: MouseEventType) => {\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(event);\n }\n };\n\n private handleMouseLeave = (event: MouseEventType) => {\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(event);\n }\n };\n\n private handleClick = (event: MouseEventType) => {\n if (this.props.onClick) {\n this.props.onClick(event);\n }\n };\n\n private handleFocus = (event: FocusEventType) => {\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleBlur = (event: FocusEventType) => {\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private calculateWidth = (width: PopupProps['width']) => {\n if (typeof width === 'string' && width.includes('%')) {\n const anchorWidth = Math.floor(getDOMRect(this.anchorElement).width);\n return this.anchorElement ? (anchorWidth * parseFloat(width)) / 100 : 0;\n }\n return width;\n };\n\n private content = (children: React.ReactNode) => {\n const { backgroundColor } = this.props;\n const width = this.getProps().width;\n\n return (\n <div className={styles.content(this.theme)} data-tid={PopupDataTids.content} ref={this.refForTransition}>\n <div\n className={styles.contentInner(this.theme)}\n style={{ backgroundColor, width: this.calculateWidth(width) }}\n data-tid={PopupDataTids.contentInner}\n >\n {children}\n </div>\n </div>\n );\n };\n\n private renderContent(location: PopupLocation) {\n const { maxWidth, opened } = this.props;\n const { hasShadow, disableAnimations, ignoreHover } = this.getProps();\n const children = this.renderChildren();\n\n const { direction } = PopupHelper.getPositionObject(location.position);\n const rootStyle: React.CSSProperties = { ...location.coordinates, maxWidth };\n\n const shouldFallbackShadow = isIE11 || isEdge || isSafari;\n\n return (\n <Transition\n timeout={TRANSITION_TIMEOUT}\n appear={!disableAnimations}\n in={Boolean(opened && children)}\n mountOnEnter\n unmountOnExit\n enter={!disableAnimations}\n exit={!disableAnimations}\n onExited={this.resetLocation}\n nodeRef={this.refForTransition}\n >\n {(state: string) => (\n <CommonWrapper {...this.props} rootNodeRef={this.setRootNode}>\n <ZIndex\n data-tid={'Popup__root'}\n wrapperRef={this.refPopupElement}\n priority={'Popup'}\n className={cx({\n [styles.popup(this.theme)]: true,\n [styles.shadow(this.theme)]: hasShadow && !shouldFallbackShadow,\n [styles.shadowFallback(this.theme)]: hasShadow && shouldFallbackShadow,\n [styles.popupIgnoreHover()]: ignoreHover,\n ...(disableAnimations\n ? {}\n : {\n [styles[`transition-enter-${direction}` as keyof typeof styles](this.theme)]: true,\n [styles.transitionEnter()]: state === 'entering',\n [styles.transitionEnterActive()]: state === 'entered',\n [styles.transitionExit()]: state === 'exiting',\n }),\n })}\n style={rootStyle}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {this.content(children)}\n {!this.isMobileLayout && this.renderPin(location.position)}\n </ZIndex>\n </CommonWrapper>\n )}\n </Transition>\n );\n }\n\n private resetLocation = () => {\n this.cancelDelayedUpdateLocation();\n this.state.location !== null && this.setState({ location: null });\n };\n\n private renderChildren() {\n return isFunction(this.props.children) ? this.props.children() : this.props.children;\n }\n\n private refPopupElement = (element: Nullable<Element>) => {\n this.lastPopupElement = element;\n };\n\n private renderPin(positionName: string): React.ReactNode {\n /**\n * Box-shadow does not appear under the pin. Borders are used instead.\n * In non-ie browsers drop-shadow filter is used. It is applying\n * shadow to the pin too.\n */\n const isDefaultBorderColor = this.theme.popupBorderColor === POPUP_BORDER_DEFAULT_COLOR;\n const pinBorder = isIE11 && isDefaultBorderColor ? 'rgba(0, 0, 0, 0.09)' : this.theme.popupBorderColor;\n\n const { pinSize, backgroundColor, borderColor } = this.props;\n const { hasShadow, hasPin } = this.getProps();\n const position = PopupHelper.getPositionObject(positionName);\n\n return (\n hasPin && (\n <PopupPin\n popupElement={this.lastPopupElement}\n popupPosition={positionName}\n size={pinSize || parseInt(this.theme.popupPinSize)}\n offset={this.getPinOffset(position.align)}\n borderWidth={hasShadow ? 1 : 0}\n backgroundColor={backgroundColor || this.theme.popupBackground}\n borderColor={borderColor || pinBorder}\n />\n )\n );\n }\n\n private handleLayoutEvent = () => {\n if (!this.state.location) {\n return;\n }\n this.updateLocation();\n };\n\n private delayUpdateLocation() {\n this.cancelDelayedUpdateLocation();\n this.locationUpdateId = raf(this.updateLocation);\n }\n\n private cancelDelayedUpdateLocation() {\n if (this.locationUpdateId) {\n raf.cancel(this.locationUpdateId);\n this.locationUpdateId = null;\n }\n }\n\n private updateLocation = () => {\n const popupElement = this.lastPopupElement;\n\n if (!popupElement) {\n return;\n }\n\n const location = this.getLocation(popupElement, this.state.location);\n if (location) {\n this.props.onPositionChange?.(location?.position);\n }\n\n if (!this.locationEquals(this.state.location, location)) {\n this.setState({ location });\n }\n };\n\n private locationEquals(x: Nullable<PopupLocation>, y: Nullable<PopupLocation>) {\n if (x === y) {\n return true;\n }\n\n if (isNullable(x) || isNullable(y)) {\n return false;\n }\n\n if (!isIE11 && !isEdge) {\n return (\n x.coordinates.left === y.coordinates.left &&\n x.coordinates.top === y.coordinates.top &&\n x.position === y.position\n );\n }\n\n // Для ie/edge обновляем позицию только при разнице минимум в 1. Иначе есть вероятность\n // уйти в бесконечный ререндер\n\n return (\n x.position === y.position &&\n Math.abs(x.coordinates.top - y.coordinates.top) <= 1 &&\n Math.abs(x.coordinates.left - y.coordinates.left) <= 1\n );\n }\n\n private getLocation(popupElement: Element, location?: Nullable<PopupLocation>) {\n const { positions, tryPreserveFirstRenderedPosition } = this.props;\n const anchorElement = this.anchorElement;\n\n warning(anchorElement && isElement(anchorElement), 'Anchor element is not defined or not instance of Element');\n\n if (!(anchorElement && isElement(anchorElement))) {\n return location;\n }\n\n const anchorRect = PopupHelper.getElementAbsoluteRect(anchorElement);\n const popupRect = PopupHelper.getElementAbsoluteRect(popupElement);\n\n let position: PopupPositionsType;\n let coordinates: Offset;\n\n if (location && location !== DUMMY_LOCATION && location.position) {\n position = location.position;\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n\n const isFullyVisible = PopupHelper.isFullyVisible(coordinates, popupRect);\n const canBecomeVisible = !isFullyVisible && PopupHelper.canBecomeFullyVisible(position, coordinates);\n\n if (\n // если нужно сохранить первоначальную позицию и Попап целиком\n // находится в пределах вьюпорта (или может быть проскроллен в него)\n (tryPreserveFirstRenderedPosition && (isFullyVisible || canBecomeVisible)) ||\n // если Попап целиком во вьюпорте и в самой приоритетной позиции\n // (иначе нужно попытаться позицию сменить)\n (isFullyVisible && position === positions[0])\n ) {\n // сохраняем текущую позицию\n return { coordinates, position };\n }\n }\n\n for (position of positions) {\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n if (PopupHelper.isFullyVisible(coordinates, popupRect)) {\n return { coordinates, position };\n }\n }\n\n position = positions[0];\n coordinates = this.getCoordinates(anchorRect, popupRect, position);\n return { coordinates, position };\n }\n\n private getPinnedPopupOffset(anchorRect: Rect, position: PositionObject) {\n if (!this.getProps().hasPin || /center|middle/.test(position.align)) {\n return 0;\n }\n\n const anchorSize = /top|bottom/.test(position.direction) ? anchorRect.width : anchorRect.height;\n\n const { pinSize } = this.props;\n\n return Math.max(\n 0,\n this.getPinOffset(position.align) + (pinSize || parseInt(this.theme.popupPinSize)) - anchorSize / 2,\n );\n }\n\n private getCoordinates(anchorRect: Rect, popupRect: Rect, positionName: string) {\n const { margin: marginFromProps } = this.props;\n const margin =\n isNonNullable(marginFromProps) && !isNaN(marginFromProps)\n ? marginFromProps\n : parseInt(this.theme.popupMargin) || 0;\n const position = PopupHelper.getPositionObject(positionName);\n const popupOffset = this.getProps().popupOffset + this.getPinnedPopupOffset(anchorRect, position);\n\n switch (position.direction) {\n case 'top':\n return {\n top: anchorRect.top - popupRect.height - margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'bottom':\n return {\n top: anchorRect.top + anchorRect.height + margin,\n left: this.getHorizontalPosition(anchorRect, popupRect, position.align, popupOffset),\n };\n case 'left':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left - popupRect.width - margin,\n };\n case 'right':\n return {\n top: this.getVerticalPosition(anchorRect, popupRect, position.align, popupOffset),\n left: anchorRect.left + anchorRect.width + margin,\n };\n default:\n throw new Error(`Unexpected direction '${position.direction}'`);\n }\n }\n\n private getPinOffset(align: string) {\n const { pinOffset } = this.props;\n\n switch (align) {\n case 'top':\n case 'bottom':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetY);\n case 'left':\n case 'right':\n return pinOffset || parseInt(this.theme.popupPinOffset) || parseInt(this.theme.popupPinOffsetX);\n case 'center':\n case 'middle':\n return 0;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getHorizontalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'left':\n return anchorRect.left - popupOffset;\n case 'center':\n return anchorRect.left - (popupRect.width - anchorRect.width) / 2;\n case 'right':\n return anchorRect.left - (popupRect.width - anchorRect.width) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n\n private getVerticalPosition(anchorRect: Rect, popupRect: Rect, align: string, popupOffset: number) {\n switch (align) {\n case 'top':\n return anchorRect.top - popupOffset;\n case 'middle':\n return anchorRect.top - (popupRect.height - anchorRect.height) / 2;\n case 'bottom':\n return anchorRect.top - (popupRect.height - anchorRect.height) + popupOffset;\n default:\n throw new Error(`Unexpected align '${align}'`);\n }\n }\n}\n"]}
@@ -17,6 +17,6 @@ export interface VariableDependencies {
17
17
  }
18
18
  export declare const COMPONENT_DESCRIPTIONS: DescriptionsType;
19
19
  export declare const COMPONENT_DESCRIPTIONS_BY_VARIABLE: VariableNameToComponentsMap;
20
- export declare const ALL_USED_VARIABLES: ("prototype" | "black" | "blue" | "gray" | "green" | "red" | "white" | "yellow" | "fontFamilyCompensationBaseline" | "labGrotesqueBaselineCompensation" | "brandXLight" | "brandLight" | "brand" | "brandDark" | "brandXDark" | "grayXxLight" | "grayXLight" | "grayLight" | "grayDark" | "blueXxLight" | "blueLight" | "blueDark" | "blueXDark" | "greenXxLight" | "greenDark" | "redXxLight" | "redDark" | "yellowXxLight" | "yellowDark" | "bgDefault" | "bgSecondary" | "bgDisabled" | "errorMain" | "errorSecondary" | "errorText" | "warningMain" | "warningSecondary" | "warningText" | "borderColorFocusLight" | "borderColorGrayDark" | "borderColorGrayLight" | "borderColorDisabled" | "placeholderColor" | "outlineColorFocus" | "placeholderColorLight" | "blinkColor" | "controlBorderWidth" | "controlOutlineWidth" | "controlLineHeightSmall" | "controlLineHeightMedium" | "controlLineHeightLarge" | "controlPaddingYSmall" | "controlPaddingYMedium" | "controlPaddingYLarge" | "textColorDefault" | "textColorInvert" | "textColorDisabled" | "textColorDisabledContrast" | "fontSizeSmall" | "fontSizeMedium" | "fontSizeLarge" | "fontSizeMobile" | "lineHeightMobile" | "specificityLevel" | "fixedPanelShadow" | "bgActive" | "borderColorFocus" | "borderColorError" | "borderColorWarning" | "controlHeightSmall" | "controlHeightMedium" | "controlHeightLarge" | "mobileMediaQuery" | "linkColor" | "linkActiveColor" | "linkHoverTextDecoration" | "linkSuccessColor" | "linkSuccessHoverColor" | "linkSuccessActiveColor" | "linkDangerColor" | "linkDangerHoverColor" | "linkDangerActiveColor" | "linkIconMarginRight" | "linkHoverColor" | "linkDisabledColor" | "linkButtonLineHeight" | "linkButtonPaddingX" | "tokenDisabledBg" | "tokenTextColorDisabled" | "tokenFontSize" | "tokenMarginY" | "tokenMarginX" | "tokenLineHeight" | "tokenPaddingY" | "tokenPaddingX" | "tokenMarginBeforeIcon" | "tokenRemoveIconSize" | "tokenRemoveIconPaddingY" | "tokenRemoveIconPaddingX" | "tokenRemoveIconGap" | "tokenRemoveIconBoxSizing" | "tokenBorderRadius" | "tokenBorderWidth" | "tokenBorderColorDisabled" | "tokenDefaultIdle" | "tokenDefaultActive" | "tokenGrayIdle" | "tokenGrayActive" | "tokenBlueIdle" | "tokenBlueActive" | "tokenGreenIdle" | "tokenGreenActive" | "tokenYellowIdle" | "tokenYellowActive" | "tokenRedIdle" | "tokenRedActive" | "tokenWhite" | "tokenBlack" | "tokenBorderColorWarning" | "tokenBorderColorError" | "tokenOutlineWidth" | "tokenLegacyTextShift" | "tokenPaddingYDisabled" | "tokenPaddingXDisabled" | "tokenMarginYDisabled" | "tokenMarginXDisabled" | "tokenShadowDisabled" | "tokenInputBorderColor" | "tokenInputBorderColorFocus" | "tokenInputBorderColorError" | "tokenInputBorderColorWarning" | "tokenInputBorderTopColor" | "tokenInputBorderRadius" | "tokenInputPlaceholderColor" | "tokenInputPlaceholderColorLight" | "tokenInputDisabledBg" | "tokenInputDisabledBorderColor" | "tokenInputBorderWidth" | "tokenInputOutlineWidth" | "tokenInputBg" | "tokenInputShadow" | "tokenInputTextColor" | "tokenInputTextColorDisabled" | "tokenInputPlaceholderColorDisabled" | "tokenInputPaddingY" | "tokenInputPaddingX" | "tokenInputFontSize" | "tokenInputLineHeight" | "tokenInputInputPaddingLeft" | "tokenInputInputPaddingRight" | "loaderBg" | "loaderOpacity" | "btnBackgroundClip" | "btnArrowBgImageActive" | "btnArrowBgImageChecked" | "btnLinkBorderRadius" | "btnFocusShadowWidth" | "btnDisabledBorderColor" | "btnCheckedBg" | "btnCheckedDisabledBg" | "btnCheckedDisabledColor" | "btnCheckedTextColor" | "btnCheckedDisabledBorderColor" | "btnCheckedShadow" | "btnCheckedDisabledShadow" | "btnBorderRadiusSmall" | "btnBorderRadiusMedium" | "btnBorderRadiusLarge" | "btnBorderWidth" | "btnInsetWidth" | "btnOutlineWidth" | "btnPaddingXSmall" | "btnPaddingXMedium" | "btnPaddingXLarge" | "btnIconGapSmall" | "btnIconGapMedium" | "btnIconGapLarge" | "btnIconSizeSmall" | "btnIconSizeMedium" | "btnIconSizeLarge" | "btnDefaultBg" | "btnDefaultBgStart" | "btnDefaultBgEnd" | "btnDefaultCheckedBorderColor" | "btnDefaultTextColor" | "btnDefaultHoverBg" | "btnDefaultHoverBgStart" | "btnDefaultHoverBgEnd" | "btnDefaultActiveBg" | "btnDefaultHoverBorderColor" | "btnDefaultHoverBorderBottomColor" | "btnDefaultActiveBorderColor" | "btnDefaultActiveBorderTopColor" | "btnDefaultBorderColor" | "btnDefaultBorderBottomColor" | "btnDefaultActiveShadow" | "btnSuccessBg" | "btnSuccessHoverBg" | "btnSuccessHoverBorderColor" | "btnSuccessHoverBorderBottomColor" | "btnSuccessBorderColor" | "btnSuccessBorderBottomColor" | "btnSuccessBgStart" | "btnSuccessBgEnd" | "btnSuccessTextColor" | "btnSuccessHoverBgStart" | "btnSuccessHoverBgEnd" | "btnSuccessActiveBg" | "btnSuccessActiveBorderColor" | "btnSuccessActiveBorderTopColor" | "btnSuccessActiveShadow" | "btnPrimaryBg" | "btnPrimaryHoverBg" | "btnPrimaryHoverBorderColor" | "btnPrimaryHoverBorderBottomColor" | "btnPrimaryBorderColor" | "btnPrimaryBorderBottomColor" | "btnPrimaryBgStart" | "btnPrimaryBgEnd" | "btnPrimaryTextColor" | "btnPrimaryHoverBgStart" | "btnPrimaryHoverBgEnd" | "btnPrimaryActiveBg" | "btnPrimaryActiveBorderColor" | "btnPrimaryActiveBorderTopColor" | "btnPrimaryActiveShadow" | "btnDangerBg" | "btnDangerHoverBg" | "btnDangerHoverBorderColor" | "btnDangerHoverBorderBottomColor" | "btnDangerBorderColor" | "btnDangerBorderBottomColor" | "btnDangerBgStart" | "btnDangerBgEnd" | "btnDangerTextColor" | "btnDangerHoverBgStart" | "btnDangerHoverBgEnd" | "btnDangerActiveBg" | "btnDangerActiveBorderColor" | "btnDangerActiveBorderTopColor" | "btnDangerActiveShadow" | "btnPayBg" | "btnPayHoverBg" | "btnPayHoverBorderColor" | "btnPayHoverBorderBottomColor" | "btnPayBorderColor" | "btnPayBorderBottomColor" | "btnPayBgStart" | "btnPayBgEnd" | "btnPayTextColor" | "btnPayHoverBgStart" | "btnPayHoverBgEnd" | "btnPayActiveBg" | "btnPayActiveBorderColor" | "btnPayActiveBorderTopColor" | "btnPayActiveShadow" | "btnMenuArrowColor" | "btnFontSizeSmall" | "btnFontSizeMedium" | "btnFontSizeLarge" | "btnLineHeightSmall" | "btnLineHeightMedium" | "btnLineHeightLarge" | "btnPaddingYSmall" | "btnPaddingYMedium" | "btnPaddingYLarge" | "btnDisabledBg" | "btnBorderColorWarning" | "btnBorderColorError" | "btnHeightSmall" | "btnHeightMedium" | "btnHeightLarge" | "btnLinkColor" | "btnLinkHoverColor" | "btnLinkActiveColor" | "btnLinkHoverTextDecoration" | "btnLinkIconMarginRight" | "btnErrorSecondary" | "btnWarningSecondary" | "btnOutlineColorFocus" | "btnInsetColor" | "btnBorderColorFocus" | "btnLinkDisabledColor" | "btnDisabledTextColor" | "selectDefaultBg" | "selectPlaceholderColor" | "selectBorderWidth" | "selectPlaceholderColorDisabled" | "selectOutlineWidth" | "selectLineHeightSmall" | "selectFontSizeSmall" | "selectPaddingXSmall" | "selectPaddingYSmall" | "selectBorderRadiusSmall" | "selectIconGapSmall" | "selectLineHeightMedium" | "selectFontSizeMedium" | "selectPaddingXMedium" | "selectPaddingYMedium" | "selectBorderRadiusMedium" | "selectIconGapMedium" | "selectLineHeightLarge" | "selectFontSizeLarge" | "selectPaddingXLarge" | "selectPaddingYLarge" | "selectBorderRadiusLarge" | "selectIconGapLarge" | "selectMenuArrowColor" | "selectMenuArrowColorDisabled" | "selectIconSizeSmall" | "selectIconSizeMedium" | "selectIconSizeLarge" | "selectRootWidthMobile" | "selectTextColorDisabled" | "selectBgDisabled" | "selectBorderColorDisabled" | "tooltipPaddingY" | "tooltipPaddingX" | "tooltipCloseBtnPadding" | "tooltipCloseBtnColor" | "tooltipCloseBtnHoverColor" | "tooltipTextColor" | "tooltipBorder" | "tooltipBorderRadius" | "tooltipPinOffset" | "tooltipPinOffsetX" | "tooltipPinOffsetY" | "tooltipMargin" | "tooltipPinSize" | "tooltipFontSize" | "tooltipLineHeight" | "tooltipMenuPinOffset" | "tooltipMenuMargin" | "tooltipMenuPinSize" | "kebabPinOffset" | "kebabPinSize" | "kebabMargin" | "kebabBackground" | "kebabBackgroundHover" | "kebabBorderRadius" | "kebabBorder" | "modalBackBg" | "modalBg" | "modalBackOpacity" | "modalCloseButtonColor" | "modalCloseButtonDisabledColor" | "modalCloseButtonHoverColor" | "modalCloseButtonPadding" | "modalCloseButtonLegacyShift" | "modalCloseButtonBottomPadding" | "modalCloseButtonClickArea" | "modalCloseIconSize" | "modalCloseLegacyGap" | "modalCloseWrapperLegacyGap" | "modalBorderRadius" | "modalFixedHeaderBg" | "modalFixedHeaderShadow" | "modalFixedHeaderBorder" | "modalFixedFooterBorder" | "modalFixedFooterShadow" | "modalFixedPanelShadow" | "modalFooterBg" | "modalAdaptiveThreshold" | "modalPaddingTop" | "modalPaddingLeft" | "modalPaddingRight" | "modalHeaderFontSize" | "modalHeaderTextColor" | "modalHeaderLineHeight" | "modalHeaderPaddingBottom" | "modalHeaderPaddingTop" | "modalFixedHeaderPaddingBottom" | "modalBodyTextColor" | "modalFooterTextColor" | "modalBodyPaddingBottom" | "modalFooterPaddingTop" | "modalFooterPaddingBottom" | "modalPaddingBottom" | "modalFooterPanelPaddingTop" | "modalFooterPanelPaddingBottom" | "mobileModalCloseButtonRightPadding" | "mobileModalCloseButtonTopPadding" | "mobileModalCloseButtonClickArea" | "mobileModalCloseIconSize" | "mobileModalHeaderFontSize" | "mobileModalHeaderLineHeight" | "mobileModalHeaderPadding" | "mobileModalBodyPadding" | "mobileModalBodyFontSize" | "mobileModalFooterPadding" | "mobileModalPaddingBottom" | "sidePageFooterPanelBg" | "sidePageBackingBg" | "sidePageBackingBgOpacity" | "sidePageCloseButtonColor" | "sidePageCloseButtonHoverColor" | "sidePageContainerShadow" | "mobileSidePagePaddingLeft" | "mobileSidePagePaddingRight" | "mobileSidePagePaddingTop" | "mobileSidePagePaddingBottom" | "mobileSidePageFooterPadding" | "sidePagePaddingLeft" | "sidePagePaddingRight" | "sidePagePaddingTop" | "sidePagePaddingBottom" | "sidePageFooterPaddingTop" | "sidePageFooterPaddingBottom" | "sidePageBgDefault" | "sidePageHeaderTextColor" | "sidePageBodyTextColor" | "sidePageFooterTextColor" | "sidePageHeaderFontSize" | "sidePageHeaderLineHeight" | "sidePageHeaderPaddingBottom" | "sidePageHeaderPaddingTop" | "sidePageHeaderFixedFontSize" | "sidePageHeaderFixedLineHeight" | "sidePageHeaderFixedPaddingY" | "sidePageHeaderStickyOffset" | "sidePageCloseButtonPadding" | "mobileSidePageCloseButtonPadding" | "sidePageCloseButtonLegacyPaddingLeft" | "sidePageFooterPanelPaddingTop" | "sidePageFooterPanelPaddingBottom" | "sidePageCloseIconSize" | "sidePageCloseButtonClickArea" | "mobileSidePageCloseButtonClickArea" | "sidePageFixedHeaderShadow" | "sidePageFixedFooterShadow" | "sidePageFixedPanelShadow" | "mobileSidePageHeaderFontSize" | "mobileSidePageHeaderLineHeight" | "mobileSidePageHeaderPaddingBottom" | "mobileSidePageHeaderPaddingTop" | "dateInputIconColor" | "dateInputMaskColor" | "dateInputComponentSelectedBgColor" | "calendarCellBg" | "calendarCellHoverColor" | "calendarCellActiveHoverColor" | "calendarCellWeekendColor" | "calendarCellTodayBorder" | "calendarCellSelectedBgColor" | "calendarCellSelectedFontColor" | "calendarCellSize" | "calendarCellLineHeight" | "calendarMonthHeaderStickedBgColor" | "calendarMonthTitleBorderBottomColor" | "calendarCellHoverBgColor" | "calendarPaddingX" | "calendarMonthTitleLineHeight" | "calendarMonthTitlePaddingTop" | "calendarMonthTitlePaddingBottom" | "calendarMonthTitleMarginX" | "calendarMonthTitleMarginBottom" | "calendarWrapperHeight" | "calendarMonthMarginBottom" | "calendarMaxMonthsToAppendOnScroll" | "dateSelectLineHeight" | "dateSelectFontSize" | "dateSelectFontWeight" | "dateSelectMenuItemBgSelected" | "dateSelectTextColorDisabled" | "dateSelectTextColorDefault" | "dateSelectLinkColor" | "dateSelectPopupBoxShadow" | "dateSelectTextColorInvert" | "datePickerOpenBtnColor" | "pickerBg" | "pickerShadow" | "pickerTodayWrapperBgColor" | "pickerTodayWrapperBorderTop" | "pickerTodayWrapperHoverBgColor" | "pickerTodayWrapperFontSize" | "pickerTodayWrapperLineHeight" | "pickerTodayWrapperPaddingTop" | "pickerTodayWrapperPaddingBottom" | "dateSelectMenuBg" | "dateSelectMenuItemBgActive" | "dateSelectMenuItemBgDisabled" | "dateSelectMenuItemFontActive" | "dateSelectMenuItemFontSelected" | "dateSelectMenuItemFontDisabled" | "pagingFontSize" | "pagingForwardIconSize" | "pagingForwardIconMarginTop" | "pagingPageLinkPaddingX" | "pagingPageLinkPaddingY" | "pagingPageLinkLegacyPaddingY" | "pagingPageLinkMinWidth" | "pagingPageForwardLinkMarginTop" | "pagingPageForwardLinkMarginLeft" | "pagingPageForwardLinkPaddingRight" | "pagingLineHeight" | "pagingDotsColor" | "pagingDotsPadding" | "pagingPageLinkActiveBg" | "pagingPageLinkActiveColor" | "pagingPageLinkHoverBg" | "pagingPageLinkBorderRadius" | "pagingPageLinkHintColor" | "pagingPageLinkHintFontSize" | "pagingPageLinkHintLineHeight" | "pagingPageLinkMargin" | "pagingForwardLinkColor" | "pagingForwardLinkDisabledColor" | "hintColor" | "mobileHintColor" | "hintFontSize" | "hintLineHeight" | "hintMaxWidth" | "hintPaddingY" | "hintPaddingX" | "hintTextAlign" | "hintBgColor" | "hintBorder" | "hintBorderRadius" | "hintPinOffset" | "hintMargin" | "toastFontSize" | "toastLineHeight" | "toastPaddingY" | "toastPaddingX" | "toastBorderRadius" | "toastBorder" | "toastTop" | "toastBg" | "toastColor" | "toastLinkColor" | "toastClosePadding" | "toastCloseColor" | "toastCloseHoverColor" | "toastCloseSize" | "dropdownMenuSelectedBg" | "dropdownMenuHoverBg" | "menuBgDefault" | "menuBorderRadius" | "menuBorder" | "menuShadow" | "menuPaddingY" | "menuPaddingX" | "menuItemTextColor" | "menuItemSelectedBg" | "menuItemHoverBg" | "menuItemIconWidth" | "menuItemIconGap" | "menuItemIconLegacyMargin" | "menuItemIconLegacyShift" | "menuItemPaddingForIcon" | "menuItemLineHeight" | "menuItemFontSize" | "menuItemPaddingX" | "menuItemPaddingY" | "menuItemBorderRadius" | "menuItemLegacyPaddingX" | "menuItemLegacyPaddingY" | "menuItemHoverColor" | "menuItemDisabledColor" | "menuItemLinkColor" | "menuItemCommentColor" | "menuItemCommentColorHover" | "menuItemPaddingMobile" | "menuHeaderColor" | "menuHeaderLineHeight" | "menuHeaderFontSize" | "menuHeaderPaddingX" | "menuHeaderPaddingTop" | "menuHeaderPaddingBottom" | "menuHeaderLegacyPaddingRight" | "menuSeparatorBorderColor" | "menuSeparatorMarginY" | "menuSeparatorBorderWidth" | "toggleFontSize" | "toggleLineHeight" | "toggleTextColor" | "toggleHandleActiveWidthIncrement" | "toggleHandleBorderRadius" | "toggleHeight" | "toggleWidth" | "toggleBorderRadius" | "toggleBg" | "toggleHandleBg" | "toggleCheckedBg" | "toggleDisabledHandleBg" | "toggleBaseBg" | "toggleBgDisabled" | "toggleBgDisabledChecked" | "toggleBgHover" | "toggleCheckedBgHover" | "toggleBgChecked" | "toggleBorderWidth" | "toggleOutlineWidth" | "toggleBorderColor" | "toggleBorderColorDisabled" | "toggleBorderColorDisabledChecked" | "toggleHandleSize" | "toggleHandleLeft" | "toggleHandleTop" | "toggleBgFocus" | "toggleBgActive" | "toggleShadowColorError" | "toggleShadowColorWarning" | "toggleFocusShadowColor" | "toggleCaptionGap" | "toggleButtonOffsetY" | "popupBorder" | "popupBorderRadius" | "popupBorderColor" | "popupDropShadow" | "popupBoxShadow" | "popupTextColor" | "popupBackground" | "popupPinOffset" | "popupPinOffsetX" | "popupPinOffsetY" | "popupMargin" | "popupPinSize" | "inputTextColor" | "inputShadow" | "inputBg" | "inputIconColor" | "inputFocusedIconColor" | "inputColor" | "inputWidth" | "inputTextColorDisabled" | "inputFontSizeSmall" | "inputFontSizeMedium" | "inputFontSizeLarge" | "inputLineHeightSmall" | "inputLineHeightMedium" | "inputLineHeightLarge" | "inputHeightSmall" | "inputHeightMedium" | "inputHeightLarge" | "inputPaddingYSmall" | "inputPaddingYMedium" | "inputPaddingYLarge" | "inputPaddingXSmall" | "inputPaddingXMedium" | "inputPaddingXLarge" | "inputIconGapSmall" | "inputIconGapMedium" | "inputIconGapLarge" | "inputIconSizeSmall" | "inputIconSizeMedium" | "inputIconSizeLarge" | "inputFocusShadow" | "inputFocusedBg" | "inputDisabledBg" | "inputDisabledBorderColor" | "inputFocusOutline" | "inputBorderWidth" | "inputOutlineWidth" | "inputBorderRadiusSmall" | "inputBorderRadiusMedium" | "inputBorderRadiusLarge" | "inputBorderColor" | "inputBorderColorFocus" | "inputBorderColorError" | "inputBorderColorWarning" | "inputBorderTopColor" | "inputPlaceholderColor" | "inputPlaceholderColorDisabled" | "inputPlaceholderColorLight" | "inputBlinkColor" | "checkboxFontSize" | "checkboxLineHeight" | "checkboxBoxSize" | "checkboxCaptionGap" | "checkboxPaddingY" | "checkboxBoxOffsetY" | "checkboxBgStart" | "checkboxBgEnd" | "checkboxTextColorDefault" | "checkboxTextColorDisabled" | "checkboxShadowDisabled" | "checkboxBorder" | "checkboxBorderWidth" | "checkboxShadow" | "checkboxShadowHover" | "checkboxCheckedColor" | "checkboxOutlineColorFocus" | "checkboxBorderColorWarning" | "checkboxBorderColorError" | "checkboxCheckedHoverShadow" | "checkboxBorderRadius" | "checkboxOutlineWidth" | "checkboxCheckedShadow" | "checkboxCheckedActiveShadow" | "checkboxBorderColorFocus" | "checkboxBg" | "checkboxHoverBg" | "checkboxActiveBg" | "checkboxCheckedBg" | "checkboxBgDisabled" | "checkboxCheckedHoverBg" | "checkboxCheckedActiveBg" | "checkboxShadowActive" | "textareaBg" | "textareaColor" | "textareaTextColorDisabled" | "textareaPlaceholderColorLight" | "textareaPlaceholderColor" | "textareaPlaceholderColorDisabled" | "textareaShadow" | "textareaFontSize" | "textareaLineHeight" | "textareaBorderRadius" | "textareaBorderWidth" | "textareaOutlineWidth" | "textareaMinHeight" | "textareaWidth" | "textareaPaddingX" | "textareaPaddingY" | "textareaBorderColor" | "textareaBorderTopColor" | "textareaBorderColorFocus" | "textareaBorderColorWarning" | "textareaBorderColorError" | "textareaDisabledBg" | "textareaDisabledBorderColor" | "textareaCounterColor" | "textareaCounterBg" | "textareaCounterErrorColor" | "textareaCounterHelpIconColor" | "radioBulletSize" | "radioOutlineWidth" | "radioTextColor" | "radioSize" | "radioSizeAfter" | "radioFontSize" | "radioLineHeight" | "radioCaptionGap" | "radioPaddingY" | "radioVerticalAlign" | "radioBgImage" | "radioBgColor" | "radioHoverBg" | "radioActiveBg" | "radioBorderWidth" | "radioBorderColor" | "radioBoxShadow" | "radioBorder" | "radioBorderColorFocus" | "radioBorderColorWarning" | "radioBorderColorError" | "radioHoverShadow" | "radioActiveShadow" | "radioFocusShadow" | "radioCheckedBgColor" | "radioCheckedBorderColor" | "radioCheckedBulletColor" | "radioCheckedHoverBgColor" | "radioDisabledBg" | "radioDisabledShadow" | "radioCaptionDisplay" | "radioBorderWidthCompensation" | "radioCircleOffsetY" | "radioGroupLegacyItemGap" | "tabFontSize" | "tabPaddingX" | "tabsMarginX" | "tabPaddingY" | "tabLineHeight" | "tabBorderWidth" | "tabOutlineWidth" | "tabTextColorDefault" | "tabColorFocus" | "tabColorError" | "tabColorWarning" | "tabColorSuccess" | "tabColorPrimary" | "tabColorHover" | "tabColorHoverError" | "tabColorHoverWarning" | "tabColorHoverSuccess" | "tabColorHoverPrimary" | "spinnerBgColor" | "spinnerColor" | "spinnerDimmedColor" | "spinnerCaptionColor" | "spinnerFontSizeSmall" | "spinnerFontSizeMedium" | "spinnerFontSizeLarge" | "spinnerLineHeightSmall" | "spinnerLineHeightMedium" | "spinnerLineHeightLarge" | "spinnerCaptionGapSmall" | "spinnerCaptionGapMedium" | "spinnerCaptionGapLarge" | "switcherBorderRadius" | "switcherTextColor" | "switcherOutlineWidth" | "switcherCaptionFontSizeSmall" | "switcherCaptionFontSizeMedium" | "switcherCaptionFontSizeLarge" | "switcherCaptionLineHeightSmall" | "switcherCaptionLineHeightMedium" | "switcherCaptionLineHeightLarge" | "switcherCaptionGapSmall" | "switcherCaptionGapMedium" | "switcherCaptionGapLarge" | "switcherButtonPaddingXSmall" | "switcherButtonPaddingXMedium" | "switcherButtonPaddingXLarge" | "switcherButtonPaddingYSmall" | "switcherButtonPaddingYMedium" | "switcherButtonPaddingYLarge" | "switcherButtonLineHeightSmall" | "switcherButtonLineHeightMedium" | "switcherButtonLineHeightLarge" | "switcherButtonFontSizeSmall" | "switcherButtonFontSizeMedium" | "switcherButtonFontSizeLarge" | "switcherButtonBorderRadiusSmall" | "switcherButtonBorderRadiusMedium" | "switcherButtonBorderRadiusLarge" | "switcherButtonBorderWidth" | "switcherButtonDisabledBorderColor" | "switcherButtonCheckedDisabledShadow" | "mobilePopupTopPadding" | "mobilePopupHeaderPadding" | "mobilePopupHeaderBorderRadius" | "mobilePopupHeaderShadow" | "mobilePopupHeaderFontSize" | "mobilePopupHeaderLineHeight" | "mobilePopupHeaderFontWeight" | "mobilePopupHeaderChildPadding" | "scrollContainerScrollBarSize" | "scrollContainerScrollBarHoverSize" | "scrollContainerScrollBarColor" | "scrollContainerScrollBarInvertColor" | "passwordInputVisibilityIconColor" | "passwordInputVisibilityIconOpacity" | "passwordInputVisibilityIconHoverColor" | "passwordInputVisibilityIconHoverOpacity" | "globalLoaderColor" | "globalLoaderHeight" | "globalLoaderWidth" | "globalLoaderPosition" | "globalLoaderTop" | "globalLoaderLeft" | "globalLoaderBottom" | "globalLoaderRight" | "globalLoaderBackgroundColor" | "globalLoaderTransitionToSpinnerDuration" | "globalLoaderSpinnerAnimationDuration" | "globalLoaderSlowAnimationDuration" | "globalLoaderTransitionFromSpinnerDuration" | "fileUploaderWidth" | "fileUploaderBg" | "fileUploaderFontSize" | "fileUploaderLineHeight" | "fileUploaderTextColorDefault" | "fileUploaderPaddingX" | "fileUploaderPaddingY" | "fileUploaderBorderRadius" | "fileUploaderBorderColor" | "fileUploaderBorderWidth" | "fileUploaderBorderStyle" | "fileUploaderBorderColorFocus" | "fileUploaderLinkColor" | "fileUploaderIconSize" | "fileUploaderIconColor" | "fileUploaderIconHoverColor" | "fileUploaderBorderColorError" | "fileUploaderBorderColorWarning" | "fileUploaderDisabledBg" | "fileUploaderDisabledBorderColor" | "fileUploaderDisabledTextColor" | "fileUploaderDisabledLinkColor" | "fileUploaderDisabledIconColor" | "fileUploaderLinkHoverTextDecoration" | "fileUploaderHoveredBg")[];
20
+ export declare const ALL_USED_VARIABLES: ("black" | "blue" | "gray" | "green" | "red" | "white" | "yellow" | "prototype" | "fontFamilyCompensationBaseline" | "labGrotesqueBaselineCompensation" | "brandXLight" | "brandLight" | "brand" | "brandDark" | "brandXDark" | "grayXxLight" | "grayXLight" | "grayLight" | "grayDark" | "blueXxLight" | "blueLight" | "blueDark" | "blueXDark" | "greenXxLight" | "greenDark" | "redXxLight" | "redDark" | "yellowXxLight" | "yellowDark" | "bgDefault" | "bgSecondary" | "bgDisabled" | "errorMain" | "errorSecondary" | "errorText" | "warningMain" | "warningSecondary" | "warningText" | "borderColorFocusLight" | "borderColorGrayDark" | "borderColorGrayLight" | "borderColorDisabled" | "placeholderColor" | "outlineColorFocus" | "placeholderColorLight" | "blinkColor" | "controlBorderWidth" | "controlOutlineWidth" | "controlLineHeightSmall" | "controlLineHeightMedium" | "controlLineHeightLarge" | "controlPaddingYSmall" | "controlPaddingYMedium" | "controlPaddingYLarge" | "textColorDefault" | "textColorInvert" | "textColorDisabled" | "textColorDisabledContrast" | "fontSizeSmall" | "fontSizeMedium" | "fontSizeLarge" | "fontSizeMobile" | "lineHeightMobile" | "specificityLevel" | "fixedPanelShadow" | "bgActive" | "borderColorFocus" | "borderColorError" | "borderColorWarning" | "controlHeightSmall" | "controlHeightMedium" | "controlHeightLarge" | "mobileMediaQuery" | "linkColor" | "linkActiveColor" | "linkHoverTextDecoration" | "linkSuccessColor" | "linkSuccessHoverColor" | "linkSuccessActiveColor" | "linkDangerColor" | "linkDangerHoverColor" | "linkDangerActiveColor" | "linkIconMarginRight" | "linkHoverColor" | "linkDisabledColor" | "linkButtonLineHeight" | "linkButtonPaddingX" | "tokenDisabledBg" | "tokenTextColorDisabled" | "tokenFontSize" | "tokenMarginY" | "tokenMarginX" | "tokenLineHeight" | "tokenPaddingY" | "tokenPaddingX" | "tokenMarginBeforeIcon" | "tokenRemoveIconSize" | "tokenRemoveIconPaddingY" | "tokenRemoveIconPaddingX" | "tokenRemoveIconGap" | "tokenRemoveIconBoxSizing" | "tokenBorderRadius" | "tokenBorderWidth" | "tokenBorderColorDisabled" | "tokenDefaultIdle" | "tokenDefaultActive" | "tokenGrayIdle" | "tokenGrayActive" | "tokenBlueIdle" | "tokenBlueActive" | "tokenGreenIdle" | "tokenGreenActive" | "tokenYellowIdle" | "tokenYellowActive" | "tokenRedIdle" | "tokenRedActive" | "tokenWhite" | "tokenBlack" | "tokenBorderColorWarning" | "tokenBorderColorError" | "tokenOutlineWidth" | "tokenLegacyTextShift" | "tokenPaddingYDisabled" | "tokenPaddingXDisabled" | "tokenMarginYDisabled" | "tokenMarginXDisabled" | "tokenShadowDisabled" | "tokenInputBorderColor" | "tokenInputBorderColorFocus" | "tokenInputBorderColorError" | "tokenInputBorderColorWarning" | "tokenInputBorderTopColor" | "tokenInputBorderRadius" | "tokenInputPlaceholderColor" | "tokenInputPlaceholderColorLight" | "tokenInputDisabledBg" | "tokenInputDisabledBorderColor" | "tokenInputBorderWidth" | "tokenInputOutlineWidth" | "tokenInputBg" | "tokenInputShadow" | "tokenInputTextColor" | "tokenInputTextColorDisabled" | "tokenInputPlaceholderColorDisabled" | "tokenInputPaddingY" | "tokenInputPaddingX" | "tokenInputFontSize" | "tokenInputLineHeight" | "tokenInputInputPaddingLeft" | "tokenInputInputPaddingRight" | "loaderBg" | "loaderOpacity" | "btnBackgroundClip" | "btnArrowBgImageActive" | "btnArrowBgImageChecked" | "btnLinkBorderRadius" | "btnFocusShadowWidth" | "btnDisabledBorderColor" | "btnCheckedBg" | "btnCheckedDisabledBg" | "btnCheckedDisabledColor" | "btnCheckedTextColor" | "btnCheckedDisabledBorderColor" | "btnCheckedShadow" | "btnCheckedDisabledShadow" | "btnBorderRadiusSmall" | "btnBorderRadiusMedium" | "btnBorderRadiusLarge" | "btnBorderWidth" | "btnInsetWidth" | "btnOutlineWidth" | "btnPaddingXSmall" | "btnPaddingXMedium" | "btnPaddingXLarge" | "btnIconGapSmall" | "btnIconGapMedium" | "btnIconGapLarge" | "btnIconSizeSmall" | "btnIconSizeMedium" | "btnIconSizeLarge" | "btnDefaultBg" | "btnDefaultBgStart" | "btnDefaultBgEnd" | "btnDefaultCheckedBorderColor" | "btnDefaultTextColor" | "btnDefaultHoverBg" | "btnDefaultHoverBgStart" | "btnDefaultHoverBgEnd" | "btnDefaultActiveBg" | "btnDefaultHoverBorderColor" | "btnDefaultHoverBorderBottomColor" | "btnDefaultActiveBorderColor" | "btnDefaultActiveBorderTopColor" | "btnDefaultBorderColor" | "btnDefaultBorderBottomColor" | "btnDefaultActiveShadow" | "btnSuccessBg" | "btnSuccessHoverBg" | "btnSuccessHoverBorderColor" | "btnSuccessHoverBorderBottomColor" | "btnSuccessBorderColor" | "btnSuccessBorderBottomColor" | "btnSuccessBgStart" | "btnSuccessBgEnd" | "btnSuccessTextColor" | "btnSuccessHoverBgStart" | "btnSuccessHoverBgEnd" | "btnSuccessActiveBg" | "btnSuccessActiveBorderColor" | "btnSuccessActiveBorderTopColor" | "btnSuccessActiveShadow" | "btnPrimaryBg" | "btnPrimaryHoverBg" | "btnPrimaryHoverBorderColor" | "btnPrimaryHoverBorderBottomColor" | "btnPrimaryBorderColor" | "btnPrimaryBorderBottomColor" | "btnPrimaryBgStart" | "btnPrimaryBgEnd" | "btnPrimaryTextColor" | "btnPrimaryHoverBgStart" | "btnPrimaryHoverBgEnd" | "btnPrimaryActiveBg" | "btnPrimaryActiveBorderColor" | "btnPrimaryActiveBorderTopColor" | "btnPrimaryActiveShadow" | "btnDangerBg" | "btnDangerHoverBg" | "btnDangerHoverBorderColor" | "btnDangerHoverBorderBottomColor" | "btnDangerBorderColor" | "btnDangerBorderBottomColor" | "btnDangerBgStart" | "btnDangerBgEnd" | "btnDangerTextColor" | "btnDangerHoverBgStart" | "btnDangerHoverBgEnd" | "btnDangerActiveBg" | "btnDangerActiveBorderColor" | "btnDangerActiveBorderTopColor" | "btnDangerActiveShadow" | "btnPayBg" | "btnPayHoverBg" | "btnPayHoverBorderColor" | "btnPayHoverBorderBottomColor" | "btnPayBorderColor" | "btnPayBorderBottomColor" | "btnPayBgStart" | "btnPayBgEnd" | "btnPayTextColor" | "btnPayHoverBgStart" | "btnPayHoverBgEnd" | "btnPayActiveBg" | "btnPayActiveBorderColor" | "btnPayActiveBorderTopColor" | "btnPayActiveShadow" | "btnMenuArrowColor" | "btnFontSizeSmall" | "btnFontSizeMedium" | "btnFontSizeLarge" | "btnLineHeightSmall" | "btnLineHeightMedium" | "btnLineHeightLarge" | "btnPaddingYSmall" | "btnPaddingYMedium" | "btnPaddingYLarge" | "btnDisabledBg" | "btnBorderColorWarning" | "btnBorderColorError" | "btnHeightSmall" | "btnHeightMedium" | "btnHeightLarge" | "btnLinkColor" | "btnLinkHoverColor" | "btnLinkActiveColor" | "btnLinkHoverTextDecoration" | "btnLinkIconMarginRight" | "btnErrorSecondary" | "btnWarningSecondary" | "btnOutlineColorFocus" | "btnInsetColor" | "btnBorderColorFocus" | "btnLinkDisabledColor" | "btnDisabledTextColor" | "selectDefaultBg" | "selectPlaceholderColor" | "selectBorderWidth" | "selectPlaceholderColorDisabled" | "selectOutlineWidth" | "selectLineHeightSmall" | "selectFontSizeSmall" | "selectPaddingXSmall" | "selectPaddingYSmall" | "selectBorderRadiusSmall" | "selectIconGapSmall" | "selectLineHeightMedium" | "selectFontSizeMedium" | "selectPaddingXMedium" | "selectPaddingYMedium" | "selectBorderRadiusMedium" | "selectIconGapMedium" | "selectLineHeightLarge" | "selectFontSizeLarge" | "selectPaddingXLarge" | "selectPaddingYLarge" | "selectBorderRadiusLarge" | "selectIconGapLarge" | "selectMenuArrowColor" | "selectMenuArrowColorDisabled" | "selectIconSizeSmall" | "selectIconSizeMedium" | "selectIconSizeLarge" | "selectRootWidthMobile" | "selectTextColorDisabled" | "selectBgDisabled" | "selectBorderColorDisabled" | "tooltipPaddingY" | "tooltipPaddingX" | "tooltipCloseBtnPadding" | "tooltipCloseBtnColor" | "tooltipCloseBtnHoverColor" | "tooltipTextColor" | "tooltipBorder" | "tooltipBorderRadius" | "tooltipPinOffset" | "tooltipPinOffsetX" | "tooltipPinOffsetY" | "tooltipMargin" | "tooltipPinSize" | "tooltipFontSize" | "tooltipLineHeight" | "tooltipMenuPinOffset" | "tooltipMenuMargin" | "tooltipMenuPinSize" | "kebabPinOffset" | "kebabPinSize" | "kebabMargin" | "kebabBackground" | "kebabBackgroundHover" | "kebabBorderRadius" | "kebabBorder" | "modalBackBg" | "modalBg" | "modalBackOpacity" | "modalCloseButtonColor" | "modalCloseButtonDisabledColor" | "modalCloseButtonHoverColor" | "modalCloseButtonPadding" | "modalCloseButtonLegacyShift" | "modalCloseButtonBottomPadding" | "modalCloseButtonClickArea" | "modalCloseIconSize" | "modalCloseLegacyGap" | "modalCloseWrapperLegacyGap" | "modalBorderRadius" | "modalFixedHeaderBg" | "modalFixedHeaderShadow" | "modalFixedHeaderBorder" | "modalFixedFooterBorder" | "modalFixedFooterShadow" | "modalFixedPanelShadow" | "modalFooterBg" | "modalAdaptiveThreshold" | "modalPaddingTop" | "modalPaddingLeft" | "modalPaddingRight" | "modalHeaderFontSize" | "modalHeaderTextColor" | "modalHeaderLineHeight" | "modalHeaderPaddingBottom" | "modalHeaderPaddingTop" | "modalFixedHeaderPaddingBottom" | "modalBodyTextColor" | "modalFooterTextColor" | "modalBodyPaddingBottom" | "modalFooterPaddingTop" | "modalFooterPaddingBottom" | "modalPaddingBottom" | "modalFooterPanelPaddingTop" | "modalFooterPanelPaddingBottom" | "mobileModalCloseButtonRightPadding" | "mobileModalCloseButtonTopPadding" | "mobileModalCloseButtonClickArea" | "mobileModalCloseIconSize" | "mobileModalHeaderFontSize" | "mobileModalHeaderLineHeight" | "mobileModalHeaderPadding" | "mobileModalBodyPadding" | "mobileModalBodyFontSize" | "mobileModalFooterPadding" | "mobileModalPaddingBottom" | "sidePageFooterPanelBg" | "sidePageBackingBg" | "sidePageBackingBgOpacity" | "sidePageCloseButtonColor" | "sidePageCloseButtonHoverColor" | "sidePageContainerShadow" | "mobileSidePagePaddingLeft" | "mobileSidePagePaddingRight" | "mobileSidePagePaddingTop" | "mobileSidePagePaddingBottom" | "mobileSidePageFooterPadding" | "sidePagePaddingLeft" | "sidePagePaddingRight" | "sidePagePaddingTop" | "sidePagePaddingBottom" | "sidePageFooterPaddingTop" | "sidePageFooterPaddingBottom" | "sidePageBgDefault" | "sidePageHeaderTextColor" | "sidePageBodyTextColor" | "sidePageFooterTextColor" | "sidePageHeaderFontSize" | "sidePageHeaderLineHeight" | "sidePageHeaderPaddingBottom" | "sidePageHeaderPaddingTop" | "sidePageHeaderFixedFontSize" | "sidePageHeaderFixedLineHeight" | "sidePageHeaderFixedPaddingY" | "sidePageHeaderStickyOffset" | "sidePageCloseButtonPadding" | "mobileSidePageCloseButtonPadding" | "sidePageCloseButtonLegacyPaddingLeft" | "sidePageFooterPanelPaddingTop" | "sidePageFooterPanelPaddingBottom" | "sidePageCloseIconSize" | "sidePageCloseButtonClickArea" | "mobileSidePageCloseButtonClickArea" | "sidePageFixedHeaderShadow" | "sidePageFixedFooterShadow" | "sidePageFixedPanelShadow" | "mobileSidePageHeaderFontSize" | "mobileSidePageHeaderLineHeight" | "mobileSidePageHeaderPaddingBottom" | "mobileSidePageHeaderPaddingTop" | "dateInputIconColor" | "dateInputMaskColor" | "dateInputComponentSelectedBgColor" | "calendarCellBg" | "calendarCellHoverColor" | "calendarCellActiveHoverColor" | "calendarCellWeekendColor" | "calendarCellTodayBorder" | "calendarCellSelectedBgColor" | "calendarCellSelectedFontColor" | "calendarCellSize" | "calendarCellLineHeight" | "calendarMonthHeaderStickedBgColor" | "calendarMonthTitleBorderBottomColor" | "calendarCellHoverBgColor" | "calendarPaddingX" | "calendarMonthTitleLineHeight" | "calendarMonthTitlePaddingTop" | "calendarMonthTitlePaddingBottom" | "calendarMonthTitleMarginX" | "calendarMonthTitleMarginBottom" | "calendarWrapperHeight" | "calendarMonthMarginBottom" | "calendarMaxMonthsToAppendOnScroll" | "dateSelectLineHeight" | "dateSelectFontSize" | "dateSelectFontWeight" | "dateSelectMenuItemBgSelected" | "dateSelectTextColorDisabled" | "dateSelectTextColorDefault" | "dateSelectLinkColor" | "dateSelectPopupBoxShadow" | "dateSelectTextColorInvert" | "datePickerOpenBtnColor" | "pickerBg" | "pickerShadow" | "pickerTodayWrapperBgColor" | "pickerTodayWrapperBorderTop" | "pickerTodayWrapperHoverBgColor" | "pickerTodayWrapperFontSize" | "pickerTodayWrapperLineHeight" | "pickerTodayWrapperPaddingTop" | "pickerTodayWrapperPaddingBottom" | "dateSelectMenuBg" | "dateSelectMenuItemBgActive" | "dateSelectMenuItemBgDisabled" | "dateSelectMenuItemFontActive" | "dateSelectMenuItemFontSelected" | "dateSelectMenuItemFontDisabled" | "pagingFontSize" | "pagingForwardIconSize" | "pagingForwardIconMarginTop" | "pagingPageLinkPaddingX" | "pagingPageLinkPaddingY" | "pagingPageLinkLegacyPaddingY" | "pagingPageLinkMinWidth" | "pagingPageForwardLinkMarginTop" | "pagingPageForwardLinkMarginLeft" | "pagingPageForwardLinkPaddingRight" | "pagingLineHeight" | "pagingDotsColor" | "pagingDotsPadding" | "pagingPageLinkActiveBg" | "pagingPageLinkDisabledActiveBg" | "pagingPageLinkActiveColor" | "pagingPageLinkHoverBg" | "pagingPageLinkBorderRadius" | "pagingPageLinkHintColor" | "pagingPageLinkHintFontSize" | "pagingPageLinkHintLineHeight" | "pagingPageLinkMargin" | "pagingForwardLinkColor" | "pagingForwardLinkDisabledColor" | "hintColor" | "mobileHintColor" | "hintFontSize" | "hintLineHeight" | "hintMaxWidth" | "hintPaddingY" | "hintPaddingX" | "hintTextAlign" | "hintBgColor" | "hintBorder" | "hintBorderRadius" | "hintPinOffset" | "hintMargin" | "toastFontSize" | "toastLineHeight" | "toastPaddingY" | "toastPaddingX" | "toastBorderRadius" | "toastBorder" | "toastTop" | "toastBg" | "toastColor" | "toastLinkColor" | "toastClosePadding" | "toastCloseColor" | "toastCloseHoverColor" | "toastCloseSize" | "dropdownMenuSelectedBg" | "dropdownMenuHoverBg" | "menuBgDefault" | "menuBorderRadius" | "menuBorder" | "menuShadow" | "menuPaddingY" | "menuPaddingX" | "menuItemTextColor" | "menuItemSelectedBg" | "menuItemHoverBg" | "menuItemIconWidth" | "menuItemIconGap" | "menuItemIconLegacyMargin" | "menuItemIconLegacyShift" | "menuItemPaddingForIcon" | "menuItemLineHeight" | "menuItemFontSize" | "menuItemPaddingX" | "menuItemPaddingY" | "menuItemBorderRadius" | "menuItemLegacyPaddingX" | "menuItemLegacyPaddingY" | "menuItemHoverColor" | "menuItemDisabledColor" | "menuItemLinkColor" | "menuItemCommentColor" | "menuItemCommentColorHover" | "menuItemPaddingMobile" | "menuHeaderColor" | "menuHeaderLineHeight" | "menuHeaderFontSize" | "menuHeaderPaddingX" | "menuHeaderPaddingTop" | "menuHeaderPaddingBottom" | "menuHeaderLegacyPaddingRight" | "menuSeparatorBorderColor" | "menuSeparatorMarginY" | "menuSeparatorBorderWidth" | "toggleFontSize" | "toggleLineHeight" | "toggleTextColor" | "toggleHandleActiveWidthIncrement" | "toggleHandleBorderRadius" | "toggleHeight" | "toggleWidth" | "toggleBorderRadius" | "toggleBg" | "toggleHandleBg" | "toggleCheckedBg" | "toggleDisabledHandleBg" | "toggleBaseBg" | "toggleBgDisabled" | "toggleBgDisabledChecked" | "toggleBgHover" | "toggleCheckedBgHover" | "toggleBgChecked" | "toggleBorderWidth" | "toggleOutlineWidth" | "toggleBorderColor" | "toggleBorderColorDisabled" | "toggleBorderColorDisabledChecked" | "toggleHandleSize" | "toggleHandleLeft" | "toggleHandleTop" | "toggleBgFocus" | "toggleBgActive" | "toggleShadowColorError" | "toggleShadowColorWarning" | "toggleFocusShadowColor" | "toggleCaptionGap" | "toggleButtonOffsetY" | "popupBorder" | "popupBorderRadius" | "popupBorderColor" | "popupDropShadow" | "popupBoxShadow" | "popupTextColor" | "popupBackground" | "popupPinOffset" | "popupPinOffsetX" | "popupPinOffsetY" | "popupMargin" | "popupPinSize" | "inputTextColor" | "inputShadow" | "inputBg" | "inputIconColor" | "inputFocusedIconColor" | "inputColor" | "inputWidth" | "inputTextColorDisabled" | "inputFontSizeSmall" | "inputFontSizeMedium" | "inputFontSizeLarge" | "inputLineHeightSmall" | "inputLineHeightMedium" | "inputLineHeightLarge" | "inputHeightSmall" | "inputHeightMedium" | "inputHeightLarge" | "inputPaddingYSmall" | "inputPaddingYMedium" | "inputPaddingYLarge" | "inputPaddingXSmall" | "inputPaddingXMedium" | "inputPaddingXLarge" | "inputIconGapSmall" | "inputIconGapMedium" | "inputIconGapLarge" | "inputIconSizeSmall" | "inputIconSizeMedium" | "inputIconSizeLarge" | "inputFocusShadow" | "inputFocusedBg" | "inputDisabledBg" | "inputDisabledBorderColor" | "inputFocusOutline" | "inputBorderWidth" | "inputOutlineWidth" | "inputBorderRadiusSmall" | "inputBorderRadiusMedium" | "inputBorderRadiusLarge" | "inputBorderColor" | "inputBorderColorFocus" | "inputBorderColorError" | "inputBorderColorWarning" | "inputBorderTopColor" | "inputPlaceholderColor" | "inputPlaceholderColorDisabled" | "inputPlaceholderColorLight" | "inputBlinkColor" | "checkboxFontSize" | "checkboxLineHeight" | "checkboxBoxSize" | "checkboxCaptionGap" | "checkboxPaddingY" | "checkboxBoxOffsetY" | "checkboxBgStart" | "checkboxBgEnd" | "checkboxTextColorDefault" | "checkboxTextColorDisabled" | "checkboxShadowDisabled" | "checkboxBorder" | "checkboxBorderWidth" | "checkboxShadow" | "checkboxShadowHover" | "checkboxCheckedColor" | "checkboxOutlineColorFocus" | "checkboxBorderColorWarning" | "checkboxBorderColorError" | "checkboxCheckedHoverShadow" | "checkboxBorderRadius" | "checkboxOutlineWidth" | "checkboxCheckedShadow" | "checkboxCheckedActiveShadow" | "checkboxBorderColorFocus" | "checkboxBg" | "checkboxHoverBg" | "checkboxActiveBg" | "checkboxCheckedBg" | "checkboxBgDisabled" | "checkboxCheckedHoverBg" | "checkboxCheckedActiveBg" | "checkboxShadowActive" | "textareaBg" | "textareaColor" | "textareaTextColorDisabled" | "textareaPlaceholderColorLight" | "textareaPlaceholderColor" | "textareaPlaceholderColorDisabled" | "textareaShadow" | "textareaFontSize" | "textareaLineHeight" | "textareaBorderRadius" | "textareaBorderWidth" | "textareaOutlineWidth" | "textareaMinHeight" | "textareaWidth" | "textareaPaddingX" | "textareaPaddingY" | "textareaBorderColor" | "textareaBorderTopColor" | "textareaBorderColorFocus" | "textareaBorderColorWarning" | "textareaBorderColorError" | "textareaDisabledBg" | "textareaDisabledBorderColor" | "textareaCounterColor" | "textareaCounterBg" | "textareaCounterErrorColor" | "textareaCounterHelpIconColor" | "radioBulletSize" | "radioOutlineWidth" | "radioTextColor" | "radioSize" | "radioSizeAfter" | "radioFontSize" | "radioLineHeight" | "radioCaptionGap" | "radioPaddingY" | "radioVerticalAlign" | "radioBgImage" | "radioBgColor" | "radioHoverBg" | "radioActiveBg" | "radioBorderWidth" | "radioBorderColor" | "radioBoxShadow" | "radioBorder" | "radioBorderColorFocus" | "radioBorderColorWarning" | "radioBorderColorError" | "radioHoverShadow" | "radioActiveShadow" | "radioFocusShadow" | "radioCheckedBgColor" | "radioCheckedBorderColor" | "radioCheckedBulletColor" | "radioCheckedHoverBgColor" | "radioDisabledBg" | "radioDisabledShadow" | "radioCaptionDisplay" | "radioBorderWidthCompensation" | "radioCircleOffsetY" | "radioGroupLegacyItemGap" | "tabFontSize" | "tabPaddingX" | "tabsMarginX" | "tabPaddingY" | "tabLineHeight" | "tabBorderWidth" | "tabOutlineWidth" | "tabTextColorDefault" | "tabColorFocus" | "tabColorError" | "tabColorWarning" | "tabColorSuccess" | "tabColorPrimary" | "tabColorHover" | "tabColorHoverError" | "tabColorHoverWarning" | "tabColorHoverSuccess" | "tabColorHoverPrimary" | "spinnerBgColor" | "spinnerColor" | "spinnerDimmedColor" | "spinnerCaptionColor" | "spinnerFontSizeSmall" | "spinnerFontSizeMedium" | "spinnerFontSizeLarge" | "spinnerLineHeightSmall" | "spinnerLineHeightMedium" | "spinnerLineHeightLarge" | "spinnerCaptionGapSmall" | "spinnerCaptionGapMedium" | "spinnerCaptionGapLarge" | "switcherBorderRadius" | "switcherTextColor" | "switcherOutlineWidth" | "switcherCaptionFontSizeSmall" | "switcherCaptionFontSizeMedium" | "switcherCaptionFontSizeLarge" | "switcherCaptionLineHeightSmall" | "switcherCaptionLineHeightMedium" | "switcherCaptionLineHeightLarge" | "switcherCaptionGapSmall" | "switcherCaptionGapMedium" | "switcherCaptionGapLarge" | "switcherButtonPaddingXSmall" | "switcherButtonPaddingXMedium" | "switcherButtonPaddingXLarge" | "switcherButtonPaddingYSmall" | "switcherButtonPaddingYMedium" | "switcherButtonPaddingYLarge" | "switcherButtonLineHeightSmall" | "switcherButtonLineHeightMedium" | "switcherButtonLineHeightLarge" | "switcherButtonFontSizeSmall" | "switcherButtonFontSizeMedium" | "switcherButtonFontSizeLarge" | "switcherButtonBorderRadiusSmall" | "switcherButtonBorderRadiusMedium" | "switcherButtonBorderRadiusLarge" | "switcherButtonBorderWidth" | "switcherButtonDisabledBorderColor" | "switcherButtonCheckedDisabledShadow" | "mobilePopupTopPadding" | "mobilePopupHeaderPadding" | "mobilePopupHeaderBorderRadius" | "mobilePopupHeaderShadow" | "mobilePopupHeaderFontSize" | "mobilePopupHeaderLineHeight" | "mobilePopupHeaderFontWeight" | "mobilePopupHeaderChildPadding" | "scrollContainerScrollBarSize" | "scrollContainerScrollBarHoverSize" | "scrollContainerScrollBarColor" | "scrollContainerScrollBarInvertColor" | "passwordInputVisibilityIconColor" | "passwordInputVisibilityIconOpacity" | "passwordInputVisibilityIconHoverColor" | "passwordInputVisibilityIconHoverOpacity" | "globalLoaderColor" | "globalLoaderHeight" | "globalLoaderWidth" | "globalLoaderPosition" | "globalLoaderTop" | "globalLoaderLeft" | "globalLoaderBottom" | "globalLoaderRight" | "globalLoaderBackgroundColor" | "globalLoaderTransitionToSpinnerDuration" | "globalLoaderSpinnerAnimationDuration" | "globalLoaderSlowAnimationDuration" | "globalLoaderTransitionFromSpinnerDuration" | "fileUploaderWidth" | "fileUploaderBg" | "fileUploaderFontSize" | "fileUploaderPaddingXSmall" | "fileUploaderPaddingXMedium" | "fileUploaderPaddingXLarge" | "fileUploaderFontSizeSmall" | "fileUploaderFontSizeMedium" | "fileUploaderFontSizeLarge" | "fileUploaderLineHeight" | "fileUploaderLineHeightSmall" | "fileUploaderLineHeightMedium" | "fileUploaderLineHeightLarge" | "fileUploaderPaddingYSmall" | "fileUploaderPaddingYMedium" | "fileUploaderPaddingYLarge" | "fileUploaderTextColorDefault" | "fileUploaderPaddingX" | "fileUploaderPaddingY" | "fileUploaderBorderRadius" | "fileUploaderBorderColor" | "fileUploaderBorderWidth" | "fileUploaderBorderStyle" | "fileUploaderBorderColorFocus" | "fileUploaderLinkColor" | "fileUploaderIconSize" | "fileUploaderIconColor" | "fileUploaderIconHoverColor" | "fileUploaderBorderColorError" | "fileUploaderBorderColorWarning" | "fileUploaderDisabledBg" | "fileUploaderDisabledBorderColor" | "fileUploaderDisabledTextColor" | "fileUploaderDisabledLinkColor" | "fileUploaderDisabledIconColor" | "fileUploaderLinkHoverTextDecoration" | "fileUploaderHoveredBg" | "fileUploaderIconGapSmall" | "fileUploaderIconGapMedium" | "fileUploaderIconGapLarge")[];
21
21
  export declare const CALLS_COUNT: number;
22
22
  export declare const EXECUTION_TIME: number;
@@ -87,6 +87,7 @@ export declare class DarkTheme extends DarkTheme_base {
87
87
  static calendarMonthTitleBorderBottomColor: string;
88
88
  static pagingPageLinkHoverBg: string;
89
89
  static pagingPageLinkActiveBg: string;
90
+ static pagingPageLinkDisabledActiveBg: string;
90
91
  static toastLinkColor: string;
91
92
  static toastCloseColor: string;
92
93
  static menuItemCommentColor: string;
@@ -143,6 +143,7 @@ DarkTheme = /*#__PURE__*/function (_ref) {(0, _inheritsLoose2.default)(DarkTheme
143
143
 
144
144
 
145
145
 
146
+
146
147
 
147
148
 
148
149
  function get() {
@@ -228,7 +229,7 @@ DarkTheme = /*#__PURE__*/function (_ref) {(0, _inheritsLoose2.default)(DarkTheme
228
229
 
229
230
 
230
231
  //#endregion
231
- }]);return DarkTheme;}( /*#__PURE__*/function () {function _class() {}return _class;}());exports.DarkTheme = DarkTheme;DarkTheme.grayXLight = '#313131';DarkTheme.gray = 'rgba(255, 255, 255, 0.48)';DarkTheme.grayDark = '#e1e1e1';DarkTheme.green = '#5f9c20';DarkTheme.greenDark = '#538a1b';DarkTheme.red = '#ee5042';DarkTheme.redDark = '#dd473b';DarkTheme.yellowXxLight = '#ffe0c3';DarkTheme.yellow = '#ffa236';DarkTheme.yellowDark = '#ea7324';DarkTheme.warningMain = '#ffa236';DarkTheme.errorMain = '#ee5042';DarkTheme.errorText = '#ffa236';DarkTheme.borderColorFocusLight = '#1260ae';DarkTheme.borderColorGrayLight = 'rgba(255, 255, 255, 0.16)';DarkTheme.borderColorDisabled = 'rgba(255, 255, 255, 0.16)';DarkTheme.placeholderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.placeholderColorLight = 'rgba(255, 255, 255, 0.16)';DarkTheme.textColorDefault = 'rgba(255, 255, 255, 0.865)';DarkTheme.textColorDisabled = 'rgba(255, 255, 255, 0.32)';DarkTheme.textColorDisabledContrast = 'rgba(255, 255, 255, 0.48)';DarkTheme.textColorInvert = 'rgba(255, 255, 255, 0.865)';DarkTheme.bgDisabled = '#434343';DarkTheme.bgDefault = '#1f1f1f';DarkTheme.bgSecondary = '#333333';DarkTheme.outlineColorFocus = '#1f1f1f';DarkTheme.linkColor = '#51adff';DarkTheme.linkHoverColor = '#2291ff';DarkTheme.linkActiveColor = '#1f87ef';DarkTheme.linkSuccessColor = '#78bf2b';DarkTheme.linkSuccessHoverColor = '#6cad26';DarkTheme.linkSuccessActiveColor = '#5f9c20';DarkTheme.linkDangerColor = '#ff887b';DarkTheme.linkDangerHoverColor = '#ff5a49';DarkTheme.linkDangerActiveColor = '#ee5042';DarkTheme.fixedPanelShadow = '0px 0px 16px 1px rgba(0, 0, 0, 0.4)';DarkTheme.btnInsetColor = '#1f1f1f';DarkTheme.btnDefaultBg = '#282828';DarkTheme.btnDefaultHoverBg = 'none';DarkTheme.btnDefaultActiveBg = '#1a1a1a';DarkTheme.btnSuccessBg = '#5f9c20';DarkTheme.btnSuccessBorderColor = '#5f9c20';DarkTheme.btnSuccessActiveBg = '#3a6710';DarkTheme.btnSuccessActiveBorderColor = '#3a6710';DarkTheme.btnPrimaryBg = '#1f87ef';DarkTheme.btnPrimaryBorderColor = '#1f87ef';DarkTheme.btnPrimaryActiveBg = '#1261ae';DarkTheme.btnPrimaryActiveBorderColor = '#1261ae';DarkTheme.btnDangerBg = '#ee5042';DarkTheme.btnDangerBorderColor = '#ee5042';DarkTheme.btnDangerActiveBg = '#a92a27';DarkTheme.btnDangerActiveBorderColor = '#a92a27';DarkTheme.btnPayBg = '#ffa236';DarkTheme.btnPayHoverBg = '#ff8227';DarkTheme.btnPayHoverBorderColor = '#ff8227';DarkTheme.btnPayTextColor = '#222222';DarkTheme.btnPayActiveBg = '#d46421';DarkTheme.btnPayActiveBorderColor = '#d46421';DarkTheme.btnPayBorderColor = '#ffa236';DarkTheme.tooltipCloseBtnColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.tooltipCloseBtnHoverColor = 'rgba(255, 255, 255, 0.865)';DarkTheme.modalBackBg = 'rgba(255, 255, 255, 0.865)';DarkTheme.modalCloseButtonColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.modalCloseButtonHoverColor = 'rgba(255, 255, 255, 0.865)';DarkTheme.modalFooterBg = '#434343';DarkTheme.sidePageFooterPanelBg = ' #434343';DarkTheme.sidePageBackingBg = 'rgba(255, 255, 255, 0.865)';DarkTheme.sidePageCloseButtonColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.sidePageCloseButtonHoverColor = 'rgba(255, 255, 255, 0.865)';DarkTheme.calendarCellWeekendColor = '#ff887b';DarkTheme.calendarCellTodayBorder = '1px solid rgba(255, 255, 255, 0.48)';DarkTheme.calendarCellSelectedBgColor = 'rgba(255, 255, 255, 0.16)';DarkTheme.calendarMonthTitleBorderBottomColor = 'rgba(255, 255, 255, 0.08)';DarkTheme.pagingPageLinkHoverBg = 'rgba(255, 255, 255, 0.8)';DarkTheme.pagingPageLinkActiveBg = 'rgba(255, 255, 255, 0.16)';DarkTheme.toastLinkColor = '#51adff';DarkTheme.toastCloseColor = 'rgba(255, 255, 255, 0.6)';DarkTheme.menuItemCommentColor = 'rgba(255, 255, 255, 0.48)';DarkTheme.menuSeparatorBorderColor = 'rgba(255, 255, 255, 0.08)';DarkTheme.toggleBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.toggleDisabledHandleBg = '#525252';DarkTheme.toggleBaseBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.toggleBgDisabledChecked = 'rgba(255, 255, 255, 0.48)';DarkTheme.inputBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.dateSelectMenuItemBgSelected = 'rgba(255, 255, 255, 0.08)';DarkTheme.pickerTodayWrapperBorderTop = '1px solid rgba(255, 255, 255, 0.08)';DarkTheme.dateInputComponentSelectedBgColor = '#1c7edf';DarkTheme.hintBgColor = 'rgba(67, 67, 67, 0.92)';DarkTheme.loaderBg = 'rgba(51, 51, 51, 0.8)';DarkTheme.dropdownMenuSelectedBg = 'rgba(255, 255, 255, 0.08)';DarkTheme.textareaBg = '#1f1f1f';DarkTheme.passwordInputVisibilityIconOpacity = '1';DarkTheme.radioBgColor = 'rgba(255, 255, 255, 0.04)';DarkTheme.radioBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.checkboxBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.tokenShadowDisabled = 'none';DarkTheme.switcherButtonCheckedDisabledShadow = 'none';DarkTheme.fileUploaderBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.fileUploaderTextColorDefault = '#fff';DarkTheme.fileUploaderBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderBorderColorFocus = '#1f87ef';DarkTheme.fileUploaderLinkColor = '#51adff';DarkTheme.fileUploaderIconColor = 'rgba(255, 255, 255, 0.48)';DarkTheme.fileUploaderIconHoverColor = 'rgba(255, 255, 255, 0.80)';DarkTheme.fileUploaderBorderColorError = '#ee5042';DarkTheme.fileUploaderBorderColorWarning = '#ffa236';DarkTheme.fileUploaderDisabledBg = 'rgba(255, 255, 255, 0.16)';DarkTheme.fileUploaderDisabledBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderDisabledTextColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderDisabledLinkColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderDisabledIconColor = 'rgba(255, 255, 255, 0.32)';
232
+ }]);return DarkTheme;}( /*#__PURE__*/function () {function _class() {}return _class;}());exports.DarkTheme = DarkTheme;DarkTheme.grayXLight = '#313131';DarkTheme.gray = 'rgba(255, 255, 255, 0.48)';DarkTheme.grayDark = '#e1e1e1';DarkTheme.green = '#5f9c20';DarkTheme.greenDark = '#538a1b';DarkTheme.red = '#ee5042';DarkTheme.redDark = '#dd473b';DarkTheme.yellowXxLight = '#ffe0c3';DarkTheme.yellow = '#ffa236';DarkTheme.yellowDark = '#ea7324';DarkTheme.warningMain = '#ffa236';DarkTheme.errorMain = '#ee5042';DarkTheme.errorText = '#ffa236';DarkTheme.borderColorFocusLight = '#1260ae';DarkTheme.borderColorGrayLight = 'rgba(255, 255, 255, 0.16)';DarkTheme.borderColorDisabled = 'rgba(255, 255, 255, 0.16)';DarkTheme.placeholderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.placeholderColorLight = 'rgba(255, 255, 255, 0.16)';DarkTheme.textColorDefault = 'rgba(255, 255, 255, 0.865)';DarkTheme.textColorDisabled = 'rgba(255, 255, 255, 0.32)';DarkTheme.textColorDisabledContrast = 'rgba(255, 255, 255, 0.48)';DarkTheme.textColorInvert = 'rgba(255, 255, 255, 0.865)';DarkTheme.bgDisabled = '#434343';DarkTheme.bgDefault = '#1f1f1f';DarkTheme.bgSecondary = '#333333';DarkTheme.outlineColorFocus = '#1f1f1f';DarkTheme.linkColor = '#51adff';DarkTheme.linkHoverColor = '#2291ff';DarkTheme.linkActiveColor = '#1f87ef';DarkTheme.linkSuccessColor = '#78bf2b';DarkTheme.linkSuccessHoverColor = '#6cad26';DarkTheme.linkSuccessActiveColor = '#5f9c20';DarkTheme.linkDangerColor = '#ff887b';DarkTheme.linkDangerHoverColor = '#ff5a49';DarkTheme.linkDangerActiveColor = '#ee5042';DarkTheme.fixedPanelShadow = '0px 0px 16px 1px rgba(0, 0, 0, 0.4)';DarkTheme.btnInsetColor = '#1f1f1f';DarkTheme.btnDefaultBg = '#282828';DarkTheme.btnDefaultHoverBg = 'none';DarkTheme.btnDefaultActiveBg = '#1a1a1a';DarkTheme.btnSuccessBg = '#5f9c20';DarkTheme.btnSuccessBorderColor = '#5f9c20';DarkTheme.btnSuccessActiveBg = '#3a6710';DarkTheme.btnSuccessActiveBorderColor = '#3a6710';DarkTheme.btnPrimaryBg = '#1f87ef';DarkTheme.btnPrimaryBorderColor = '#1f87ef';DarkTheme.btnPrimaryActiveBg = '#1261ae';DarkTheme.btnPrimaryActiveBorderColor = '#1261ae';DarkTheme.btnDangerBg = '#ee5042';DarkTheme.btnDangerBorderColor = '#ee5042';DarkTheme.btnDangerActiveBg = '#a92a27';DarkTheme.btnDangerActiveBorderColor = '#a92a27';DarkTheme.btnPayBg = '#ffa236';DarkTheme.btnPayHoverBg = '#ff8227';DarkTheme.btnPayHoverBorderColor = '#ff8227';DarkTheme.btnPayTextColor = '#222222';DarkTheme.btnPayActiveBg = '#d46421';DarkTheme.btnPayActiveBorderColor = '#d46421';DarkTheme.btnPayBorderColor = '#ffa236';DarkTheme.tooltipCloseBtnColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.tooltipCloseBtnHoverColor = 'rgba(255, 255, 255, 0.865)';DarkTheme.modalBackBg = 'rgba(255, 255, 255, 0.865)';DarkTheme.modalCloseButtonColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.modalCloseButtonHoverColor = 'rgba(255, 255, 255, 0.865)';DarkTheme.modalFooterBg = '#434343';DarkTheme.sidePageFooterPanelBg = ' #434343';DarkTheme.sidePageBackingBg = 'rgba(255, 255, 255, 0.865)';DarkTheme.sidePageCloseButtonColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.sidePageCloseButtonHoverColor = 'rgba(255, 255, 255, 0.865)';DarkTheme.calendarCellWeekendColor = '#ff887b';DarkTheme.calendarCellTodayBorder = '1px solid rgba(255, 255, 255, 0.48)';DarkTheme.calendarCellSelectedBgColor = 'rgba(255, 255, 255, 0.16)';DarkTheme.calendarMonthTitleBorderBottomColor = 'rgba(255, 255, 255, 0.08)';DarkTheme.pagingPageLinkHoverBg = 'rgba(255, 255, 255, 0.8)';DarkTheme.pagingPageLinkActiveBg = 'rgba(255, 255, 255, 0.16)';DarkTheme.pagingPageLinkDisabledActiveBg = 'rgba(255, 255, 255, 0.08)';DarkTheme.toastLinkColor = '#51adff';DarkTheme.toastCloseColor = 'rgba(255, 255, 255, 0.6)';DarkTheme.menuItemCommentColor = 'rgba(255, 255, 255, 0.48)';DarkTheme.menuSeparatorBorderColor = 'rgba(255, 255, 255, 0.08)';DarkTheme.toggleBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.toggleDisabledHandleBg = '#525252';DarkTheme.toggleBaseBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.toggleBgDisabledChecked = 'rgba(255, 255, 255, 0.48)';DarkTheme.inputBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.dateSelectMenuItemBgSelected = 'rgba(255, 255, 255, 0.08)';DarkTheme.pickerTodayWrapperBorderTop = '1px solid rgba(255, 255, 255, 0.08)';DarkTheme.dateInputComponentSelectedBgColor = '#1c7edf';DarkTheme.hintBgColor = 'rgba(67, 67, 67, 0.92)';DarkTheme.loaderBg = 'rgba(51, 51, 51, 0.8)';DarkTheme.dropdownMenuSelectedBg = 'rgba(255, 255, 255, 0.08)';DarkTheme.textareaBg = '#1f1f1f';DarkTheme.passwordInputVisibilityIconOpacity = '1';DarkTheme.radioBgColor = 'rgba(255, 255, 255, 0.04)';DarkTheme.radioBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.checkboxBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.tokenShadowDisabled = 'none';DarkTheme.switcherButtonCheckedDisabledShadow = 'none';DarkTheme.fileUploaderBg = 'rgba(255, 255, 255, 0.04)';DarkTheme.fileUploaderTextColorDefault = '#fff';DarkTheme.fileUploaderBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderBorderColorFocus = '#1f87ef';DarkTheme.fileUploaderLinkColor = '#51adff';DarkTheme.fileUploaderIconColor = 'rgba(255, 255, 255, 0.48)';DarkTheme.fileUploaderIconHoverColor = 'rgba(255, 255, 255, 0.80)';DarkTheme.fileUploaderBorderColorError = '#ee5042';DarkTheme.fileUploaderBorderColorWarning = '#ffa236';DarkTheme.fileUploaderDisabledBg = 'rgba(255, 255, 255, 0.16)';DarkTheme.fileUploaderDisabledBorderColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderDisabledTextColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderDisabledLinkColor = 'rgba(255, 255, 255, 0.32)';DarkTheme.fileUploaderDisabledIconColor = 'rgba(255, 255, 255, 0.32)';
232
233
 
233
234
  var DarkThemeInternal = Object.setPrototypeOf(
234
235
  (0, _ThemeHelpers.exposeGetters)(DarkTheme),