@vkontakte/vkui 5.2.2 → 5.2.4

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 (148) hide show
  1. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +3 -16
  2. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  3. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js +1 -2
  4. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  5. package/dist/cjs/components/Cell/CellDragger/CellDragger.js +1 -2
  6. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  7. package/dist/cjs/components/File/File.js +1 -4
  8. package/dist/cjs/components/File/File.js.map +1 -1
  9. package/dist/cjs/components/Input/Input.js +3 -7
  10. package/dist/cjs/components/Input/Input.js.map +1 -1
  11. package/dist/cjs/components/ModalCard/ModalCard.js +6 -2
  12. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  13. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +6 -2
  14. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  15. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +1 -2
  16. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  17. package/dist/cjs/components/NativeSelect/NativeSelect.js +1 -4
  18. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  19. package/dist/cjs/components/PanelHeader/PanelHeader.js +6 -11
  20. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  21. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +6 -11
  22. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  23. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +6 -2
  24. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  25. package/dist/cjs/components/PopperArrow/PopperArrow.js +22 -7
  26. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
  27. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +1 -4
  28. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  29. package/dist/cjs/components/SelectTypography/SelectTypography.js +1 -1
  30. package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
  31. package/dist/cjs/components/SimpleCell/SimpleCell.js +6 -2
  32. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  33. package/dist/cjs/components/SplitCol/SplitCol.d.ts +2 -0
  34. package/dist/cjs/components/SplitCol/SplitCol.js +6 -0
  35. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  36. package/dist/cjs/components/Switch/Switch.js +2 -2
  37. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  38. package/dist/cjs/components/Touch/Touch.js +10 -2
  39. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  40. package/dist/cjs/components/UsersStack/UsersStack.js +1 -1
  41. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  42. package/dist/cjs/components/View/ViewInfinite.js +1 -2
  43. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  44. package/dist/cjs/helpers/getPlatformClassName.d.ts +11 -0
  45. package/dist/cjs/helpers/getPlatformClassName.js +2 -0
  46. package/dist/cjs/helpers/getPlatformClassName.js.map +1 -1
  47. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +3 -15
  48. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  49. package/dist/components/Cell/CellCheckbox/CellCheckbox.js +1 -2
  50. package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  51. package/dist/components/Cell/CellDragger/CellDragger.js +1 -2
  52. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  53. package/dist/components/File/File.js +1 -4
  54. package/dist/components/File/File.js.map +1 -1
  55. package/dist/components/Input/Input.js +3 -7
  56. package/dist/components/Input/Input.js.map +1 -1
  57. package/dist/components/ModalCard/ModalCard.js +6 -2
  58. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  59. package/dist/components/ModalCardBase/ModalCardBase.js +6 -2
  60. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  61. package/dist/components/ModalPageHeader/ModalPageHeader.js +1 -2
  62. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  63. package/dist/components/NativeSelect/NativeSelect.js +1 -4
  64. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  65. package/dist/components/PanelHeader/PanelHeader.js +6 -11
  66. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  67. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +6 -11
  68. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  69. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +6 -2
  70. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  71. package/dist/components/PopperArrow/PopperArrow.js +22 -7
  72. package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
  73. package/dist/components/SelectMimicry/SelectMimicry.js +1 -4
  74. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  75. package/dist/components/SelectTypography/SelectTypography.js +1 -1
  76. package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
  77. package/dist/components/SimpleCell/SimpleCell.js +6 -2
  78. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  79. package/dist/components/SplitCol/SplitCol.d.ts +2 -0
  80. package/dist/components/SplitCol/SplitCol.js +6 -0
  81. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  82. package/dist/components/Switch/Switch.js +2 -2
  83. package/dist/components/Switch/Switch.js.map +1 -1
  84. package/dist/components/Touch/Touch.js +10 -2
  85. package/dist/components/Touch/Touch.js.map +1 -1
  86. package/dist/components/UsersStack/UsersStack.js +1 -1
  87. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  88. package/dist/components/View/ViewInfinite.js +1 -2
  89. package/dist/components/View/ViewInfinite.js.map +1 -1
  90. package/dist/components.css +3 -3
  91. package/dist/components.css.map +1 -1
  92. package/dist/components.js.tmp +1128 -1127
  93. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +3 -15
  94. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  95. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +1 -2
  96. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  97. package/dist/cssm/components/Cell/CellDragger/CellDragger.js +1 -2
  98. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  99. package/dist/cssm/components/File/File.js +1 -4
  100. package/dist/cssm/components/File/File.js.map +1 -1
  101. package/dist/cssm/components/Input/Input.js +3 -7
  102. package/dist/cssm/components/Input/Input.js.map +1 -1
  103. package/dist/cssm/components/Input/Input.module.css +1 -1
  104. package/dist/cssm/components/ModalCard/ModalCard.js +6 -2
  105. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  106. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +6 -2
  107. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  108. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +1 -2
  109. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  110. package/dist/cssm/components/NativeSelect/NativeSelect.js +1 -4
  111. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  112. package/dist/cssm/components/PanelHeader/PanelHeader.js +6 -11
  113. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  114. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +6 -11
  115. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  116. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +6 -2
  117. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  118. package/dist/cssm/components/PopperArrow/PopperArrow.js +22 -7
  119. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
  120. package/dist/cssm/components/PopperArrow/PopperArrow.module.css +1 -1
  121. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +1 -4
  122. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  123. package/dist/cssm/components/SelectTypography/SelectTypography.js +1 -1
  124. package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
  125. package/dist/cssm/components/SimpleCell/SimpleCell.js +6 -2
  126. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  127. package/dist/cssm/components/SplitCol/SplitCol.d.ts +2 -0
  128. package/dist/cssm/components/SplitCol/SplitCol.js +6 -0
  129. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  130. package/dist/cssm/components/Switch/Switch.js +2 -2
  131. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  132. package/dist/cssm/components/Touch/Touch.js +10 -2
  133. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  134. package/dist/cssm/components/UsersStack/UsersStack.js +1 -1
  135. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  136. package/dist/cssm/components/View/ViewInfinite.js +1 -2
  137. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  138. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +1 -1
  139. package/dist/cssm/helpers/getPlatformClassName.d.ts +11 -0
  140. package/dist/cssm/helpers/getPlatformClassName.js +9 -0
  141. package/dist/cssm/helpers/getPlatformClassName.js.map +1 -1
  142. package/dist/helpers/getPlatformClassName.d.ts +11 -0
  143. package/dist/helpers/getPlatformClassName.js +9 -0
  144. package/dist/helpers/getPlatformClassName.js.map +1 -1
  145. package/dist/vkui.css +3 -3
  146. package/dist/vkui.css.map +1 -1
  147. package/dist/vkui.js.tmp +1128 -1127
  148. package/package.json +1 -1
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.AdaptivityProvider = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
8
  var React = _interopRequireWildcard(require("react"));
11
9
  var _vkjs = require("@vkontakte/vkjs");
12
10
  var _useBridgeAdaptivity = require("../../hooks/useBridgeAdaptivity");
@@ -24,26 +22,15 @@ var AdaptivityProvider = function AdaptivityProvider(_ref) {
24
22
  hasHover = _ref.hasHover,
25
23
  children = _ref.children;
26
24
  var bridge = (0, _useBridgeAdaptivity.useBridgeAdaptivity)();
27
- var _React$useState = React.useState({
25
+ var adaptivity = React.useMemo(function () {
26
+ return calculateAdaptivity({
28
27
  viewWidth: viewWidth,
29
28
  viewHeight: viewHeight,
30
29
  sizeX: sizeX,
31
30
  sizeY: sizeY,
32
31
  hasPointer: hasPointer,
33
32
  hasHover: hasHover
34
- }),
35
- _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
36
- adaptivity = _React$useState2[0],
37
- setAdaptivity = _React$useState2[1];
38
- React.useEffect(function () {
39
- setAdaptivity(calculateAdaptivity({
40
- viewWidth: viewWidth,
41
- viewHeight: viewHeight,
42
- sizeX: sizeX,
43
- sizeY: sizeY,
44
- hasPointer: hasPointer,
45
- hasHover: hasHover
46
- }, bridge));
33
+ }, bridge);
47
34
  }, [viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover, bridge]);
48
35
  return /*#__PURE__*/React.createElement(_AdaptivityContext.AdaptivityContext.Provider, {
49
36
  value: adaptivity
@@ -1 +1 @@
1
- {"version":3,"file":"AdaptivityProvider.js","names":["AdaptivityProvider","viewWidth","viewHeight","sizeX","sizeY","hasPointer","hasHover","children","bridge","useBridgeAdaptivity","React","useState","adaptivity","setAdaptivity","useEffect","calculateAdaptivity","type","viewportWidth","viewportHeight","BREAKPOINTS","DESKTOP","ViewWidth","TABLET","SMALL_TABLET","MOBILE","SMALL_MOBILE","MEDIUM_HEIGHT","ViewHeight","MEDIUM","MOBILE_LANDSCAPE_HEIGHT","SMALL","EXTRA_SMALL","SizeType","COMPACT","REGULAR","_hasPointer","undefined"],"sources":["../../../../src/components/AdaptivityProvider/AdaptivityProvider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { hasMouse as _hasPointer } from '@vkontakte/vkjs';\nimport { BridgeAdaptivity, useBridgeAdaptivity } from '../../hooks/useBridgeAdaptivity';\nimport { BREAKPOINTS, SizeType, ViewHeight, ViewWidth } from '../../lib/adaptivity';\nimport { AdaptivityContext, type AdaptivityProps } from './AdaptivityContext';\n\nexport interface AdaptivityProviderProps extends AdaptivityProps {\n children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AdaptivityProvider\n */\nexport const AdaptivityProvider = ({\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n children,\n}: React.PropsWithChildren<AdaptivityProps>) => {\n const bridge = useBridgeAdaptivity();\n const [adaptivity, setAdaptivity] = React.useState({\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n });\n\n React.useEffect(() => {\n setAdaptivity(\n calculateAdaptivity(\n {\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n },\n bridge,\n ),\n );\n }, [viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover, bridge]);\n\n return <AdaptivityContext.Provider value={adaptivity}>{children}</AdaptivityContext.Provider>;\n};\n\nfunction calculateAdaptivity(\n { viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover }: AdaptivityProps,\n bridge: BridgeAdaptivity,\n) {\n if (bridge.type === 'adaptive') {\n const { viewportWidth, viewportHeight } = bridge;\n\n if (viewportWidth >= BREAKPOINTS.DESKTOP) {\n viewWidth = ViewWidth.DESKTOP;\n } else if (viewportWidth >= BREAKPOINTS.TABLET) {\n viewWidth = ViewWidth.TABLET;\n } else if (viewportWidth >= BREAKPOINTS.SMALL_TABLET) {\n viewWidth = ViewWidth.SMALL_TABLET;\n } else if (viewportWidth >= BREAKPOINTS.MOBILE) {\n viewWidth = ViewWidth.MOBILE;\n } else {\n viewWidth = ViewWidth.SMALL_MOBILE;\n }\n\n if (viewportHeight >= BREAKPOINTS.MEDIUM_HEIGHT) {\n viewHeight = ViewHeight.MEDIUM;\n } else if (viewportHeight >= BREAKPOINTS.MOBILE_LANDSCAPE_HEIGHT) {\n viewHeight = ViewHeight.SMALL;\n } else {\n viewHeight = ViewHeight.EXTRA_SMALL;\n }\n\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n } else {\n sizeX = SizeType.REGULAR;\n }\n\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && _hasPointer) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n } else if (bridge.type === 'force_mobile' || bridge.type === 'force_mobile_compact') {\n viewWidth = ViewWidth.MOBILE;\n sizeX = SizeType.COMPACT;\n\n if (bridge.type === 'force_mobile_compact') {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n } else {\n if (sizeX === undefined && viewWidth !== undefined) {\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n } else {\n sizeX = SizeType.REGULAR;\n }\n }\n if (sizeY === undefined && viewWidth !== undefined && viewHeight !== undefined) {\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && _hasPointer) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n }\n }\n\n return {\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"AdaptivityProvider.js","names":["AdaptivityProvider","viewWidth","viewHeight","sizeX","sizeY","hasPointer","hasHover","children","bridge","useBridgeAdaptivity","adaptivity","React","useMemo","calculateAdaptivity","type","viewportWidth","viewportHeight","BREAKPOINTS","DESKTOP","ViewWidth","TABLET","SMALL_TABLET","MOBILE","SMALL_MOBILE","MEDIUM_HEIGHT","ViewHeight","MEDIUM","MOBILE_LANDSCAPE_HEIGHT","SMALL","EXTRA_SMALL","SizeType","COMPACT","REGULAR","_hasPointer","undefined"],"sources":["../../../../src/components/AdaptivityProvider/AdaptivityProvider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { hasMouse as _hasPointer } from '@vkontakte/vkjs';\nimport { BridgeAdaptivity, useBridgeAdaptivity } from '../../hooks/useBridgeAdaptivity';\nimport { BREAKPOINTS, SizeType, ViewHeight, ViewWidth } from '../../lib/adaptivity';\nimport { AdaptivityContext, type AdaptivityProps } from './AdaptivityContext';\n\nexport interface AdaptivityProviderProps extends AdaptivityProps {\n children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AdaptivityProvider\n */\nexport const AdaptivityProvider = ({\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n children,\n}: React.PropsWithChildren<AdaptivityProps>) => {\n const bridge = useBridgeAdaptivity();\n const adaptivity = React.useMemo(\n () =>\n calculateAdaptivity(\n {\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n },\n bridge,\n ),\n [viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover, bridge],\n );\n\n return <AdaptivityContext.Provider value={adaptivity}>{children}</AdaptivityContext.Provider>;\n};\n\nfunction calculateAdaptivity(\n { viewWidth, viewHeight, sizeX, sizeY, hasPointer, hasHover }: AdaptivityProps,\n bridge: BridgeAdaptivity,\n) {\n if (bridge.type === 'adaptive') {\n const { viewportWidth, viewportHeight } = bridge;\n\n if (viewportWidth >= BREAKPOINTS.DESKTOP) {\n viewWidth = ViewWidth.DESKTOP;\n } else if (viewportWidth >= BREAKPOINTS.TABLET) {\n viewWidth = ViewWidth.TABLET;\n } else if (viewportWidth >= BREAKPOINTS.SMALL_TABLET) {\n viewWidth = ViewWidth.SMALL_TABLET;\n } else if (viewportWidth >= BREAKPOINTS.MOBILE) {\n viewWidth = ViewWidth.MOBILE;\n } else {\n viewWidth = ViewWidth.SMALL_MOBILE;\n }\n\n if (viewportHeight >= BREAKPOINTS.MEDIUM_HEIGHT) {\n viewHeight = ViewHeight.MEDIUM;\n } else if (viewportHeight >= BREAKPOINTS.MOBILE_LANDSCAPE_HEIGHT) {\n viewHeight = ViewHeight.SMALL;\n } else {\n viewHeight = ViewHeight.EXTRA_SMALL;\n }\n\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n } else {\n sizeX = SizeType.REGULAR;\n }\n\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && _hasPointer) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n } else if (bridge.type === 'force_mobile' || bridge.type === 'force_mobile_compact') {\n viewWidth = ViewWidth.MOBILE;\n sizeX = SizeType.COMPACT;\n\n if (bridge.type === 'force_mobile_compact') {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n } else {\n if (sizeX === undefined && viewWidth !== undefined) {\n if (viewWidth <= ViewWidth.MOBILE) {\n sizeX = SizeType.COMPACT;\n } else {\n sizeX = SizeType.REGULAR;\n }\n }\n if (sizeY === undefined && viewWidth !== undefined && viewHeight !== undefined) {\n if (\n (viewWidth >= ViewWidth.SMALL_TABLET && _hasPointer) ||\n viewHeight <= ViewHeight.EXTRA_SMALL\n ) {\n sizeY = SizeType.COMPACT;\n } else {\n sizeY = SizeType.REGULAR;\n }\n }\n }\n\n return {\n viewWidth,\n viewHeight,\n sizeX,\n sizeY,\n hasPointer,\n hasHover,\n };\n}\n"],"mappings":"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"}
@@ -11,7 +11,6 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _icons = require("@vkontakte/icons");
13
13
  var _vkjs = require("@vkontakte/vkjs");
14
- var _getPlatformClassName = require("../../../helpers/getPlatformClassName");
15
14
  var _usePlatform = require("../../../hooks/usePlatform");
16
15
  var _platform = require("../../../lib/platform");
17
16
  var _VisuallyHiddenInput = require("../../VisuallyHiddenInput/VisuallyHiddenInput");
@@ -24,7 +23,7 @@ var CellCheckbox = function CellCheckbox(_ref) {
24
23
  var IconOff = platform === _platform.Platform.IOS || platform === _platform.Platform.VKCOM ? _icons.Icon24CheckCircleOff : _icons.Icon24CheckBoxOff;
25
24
  var IconOn = platform === _platform.Platform.IOS || platform === _platform.Platform.VKCOM ? _icons.Icon24CheckCircleOn : _icons.Icon24CheckBoxOn;
26
25
  return /*#__PURE__*/React.createElement("span", {
27
- className: (0, _vkjs.classNames)("vkuiCellCheckbox", (0, _getPlatformClassName.getPlatformClassName)("vkuiCellCheckbox", platform), className),
26
+ className: (0, _vkjs.classNames)("vkuiCellCheckbox", className),
28
27
  style: style
29
28
  }, /*#__PURE__*/React.createElement(_VisuallyHiddenInput.VisuallyHiddenInput, (0, _extends2.default)({
30
29
  className: "vkuiCellCheckbox__input",
@@ -1 +1 @@
1
- {"version":3,"file":"CellCheckbox.js","names":["CellCheckbox","className","style","restProps","platform","usePlatform","IconOff","Platform","IOS","VKCOM","Icon24CheckCircleOff","Icon24CheckBoxOff","IconOn","Icon24CheckCircleOn","Icon24CheckBoxOn","classNames","getPlatformClassName"],"sources":["../../../../../src/components/Cell/CellCheckbox/CellCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon24CheckBoxOff,\n Icon24CheckBoxOn,\n Icon24CheckCircleOff,\n Icon24CheckCircleOn,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../../helpers/getPlatformClassName';\nimport { usePlatform } from '../../../hooks/usePlatform';\nimport { Platform } from '../../../lib/platform';\nimport { VisuallyHiddenInput } from '../../VisuallyHiddenInput/VisuallyHiddenInput';\nimport { CellProps } from '../Cell';\nimport styles from './CellCheckbox.module.css';\n\nexport type CellCheckboxProps = Pick<CellProps, 'defaultChecked' | 'checked'> &\n React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const CellCheckbox = ({ className, style, ...restProps }: CellCheckboxProps) => {\n const platform = usePlatform();\n\n const IconOff =\n platform === Platform.IOS || platform === Platform.VKCOM\n ? Icon24CheckCircleOff\n : Icon24CheckBoxOff;\n\n const IconOn =\n platform === Platform.IOS || platform === Platform.VKCOM\n ? Icon24CheckCircleOn\n : Icon24CheckBoxOn;\n\n return (\n <span\n className={classNames(\n styles['CellCheckbox'],\n getPlatformClassName(styles['CellCheckbox'], platform),\n className,\n )}\n style={style}\n >\n <VisuallyHiddenInput\n className={styles['CellCheckbox__input']}\n type=\"checkbox\"\n {...restProps}\n />\n <span\n className={classNames(styles['CellCheckbox__icon'], styles['CellCheckbox__icon--off'])}\n aria-hidden\n >\n <IconOff />\n </span>\n <span\n className={classNames(styles['CellCheckbox__icon'], styles['CellCheckbox__icon--on'])}\n aria-hidden\n >\n <IconOn />\n </span>\n </span>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;AAAoF;AAO7E,IAAMA,YAAY,GAAG,SAAfA,YAAY,OAA8D;EAAA,IAAxDC,SAAS,QAATA,SAAS;IAAEC,KAAK,QAALA,KAAK;IAAKC,SAAS;EAC3D,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,IAAMC,OAAO,GACXF,QAAQ,KAAKG,kBAAQ,CAACC,GAAG,IAAIJ,QAAQ,KAAKG,kBAAQ,CAACE,KAAK,GACpDC,2BAAoB,GACpBC,wBAAiB;EAEvB,IAAMC,MAAM,GACVR,QAAQ,KAAKG,kBAAQ,CAACC,GAAG,IAAIJ,QAAQ,KAAKG,kBAAQ,CAACE,KAAK,GACpDI,0BAAmB,GACnBC,uBAAgB;EAEtB,oBACE;IACE,SAAS,EAAE,IAAAC,gBAAU,sBAEnB,IAAAC,0CAAoB,sBAAyBZ,QAAQ,CAAC,EACtDH,SAAS,CACT;IACF,KAAK,EAAEC;EAAM,gBAEb,oBAAC,wCAAmB;IAClB,SAAS,2BAAgC;IACzC,IAAI,EAAC;EAAU,GACXC,SAAS,EACb,eACF;IACE,SAAS,EAAE,IAAAY,gBAAU,0DAAkE;IACvF;EAAW,gBAEX,oBAAC,OAAO,OAAG,CACN,eACP;IACE,SAAS,EAAE,IAAAA,gBAAU,yDAAiE;IACtF;EAAW,gBAEX,oBAAC,MAAM,OAAG,CACL,CACF;AAEX,CAAC;AAAC"}
1
+ {"version":3,"file":"CellCheckbox.js","names":["CellCheckbox","className","style","restProps","platform","usePlatform","IconOff","Platform","IOS","VKCOM","Icon24CheckCircleOff","Icon24CheckBoxOff","IconOn","Icon24CheckCircleOn","Icon24CheckBoxOn","classNames"],"sources":["../../../../../src/components/Cell/CellCheckbox/CellCheckbox.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon24CheckBoxOff,\n Icon24CheckBoxOn,\n Icon24CheckCircleOff,\n Icon24CheckCircleOn,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../../hooks/usePlatform';\nimport { Platform } from '../../../lib/platform';\nimport { VisuallyHiddenInput } from '../../VisuallyHiddenInput/VisuallyHiddenInput';\nimport { CellProps } from '../Cell';\nimport styles from './CellCheckbox.module.css';\n\nexport type CellCheckboxProps = Pick<CellProps, 'defaultChecked' | 'checked'> &\n React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const CellCheckbox = ({ className, style, ...restProps }: CellCheckboxProps) => {\n const platform = usePlatform();\n\n const IconOff =\n platform === Platform.IOS || platform === Platform.VKCOM\n ? Icon24CheckCircleOff\n : Icon24CheckBoxOff;\n\n const IconOn =\n platform === Platform.IOS || platform === Platform.VKCOM\n ? Icon24CheckCircleOn\n : Icon24CheckBoxOn;\n\n return (\n <span className={classNames(styles['CellCheckbox'], className)} style={style}>\n <VisuallyHiddenInput\n className={styles['CellCheckbox__input']}\n type=\"checkbox\"\n {...restProps}\n />\n <span\n className={classNames(styles['CellCheckbox__icon'], styles['CellCheckbox__icon--off'])}\n aria-hidden\n >\n <IconOff />\n </span>\n <span\n className={classNames(styles['CellCheckbox__icon'], styles['CellCheckbox__icon--on'])}\n aria-hidden\n >\n <IconOn />\n </span>\n </span>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AAMA;AACA;AACA;AACA;AAAoF;AAO7E,IAAMA,YAAY,GAAG,SAAfA,YAAY,OAA8D;EAAA,IAAxDC,SAAS,QAATA,SAAS;IAAEC,KAAK,QAALA,KAAK;IAAKC,SAAS;EAC3D,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,IAAMC,OAAO,GACXF,QAAQ,KAAKG,kBAAQ,CAACC,GAAG,IAAIJ,QAAQ,KAAKG,kBAAQ,CAACE,KAAK,GACpDC,2BAAoB,GACpBC,wBAAiB;EAEvB,IAAMC,MAAM,GACVR,QAAQ,KAAKG,kBAAQ,CAACC,GAAG,IAAIJ,QAAQ,KAAKG,kBAAQ,CAACE,KAAK,GACpDI,0BAAmB,GACnBC,uBAAgB;EAEtB,oBACE;IAAM,SAAS,EAAE,IAAAC,gBAAU,sBAAyBd,SAAS,CAAE;IAAC,KAAK,EAAEC;EAAM,gBAC3E,oBAAC,wCAAmB;IAClB,SAAS,2BAAgC;IACzC,IAAI,EAAC;EAAU,GACXC,SAAS,EACb,eACF;IACE,SAAS,EAAE,IAAAY,gBAAU,0DAAkE;IACvF;EAAW,gBAEX,oBAAC,OAAO,OAAG,CACN,eACP;IACE,SAAS,EAAE,IAAAA,gBAAU,yDAAiE;IACtF;EAAW,gBAEX,oBAAC,MAAM,OAAG,CACL,CACF;AAEX,CAAC;AAAC"}
@@ -11,7 +11,6 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _icons = require("@vkontakte/icons");
13
13
  var _vkjs = require("@vkontakte/vkjs");
14
- var _getPlatformClassName = require("../../../helpers/getPlatformClassName");
15
14
  var _usePlatform = require("../../../hooks/usePlatform");
16
15
  var _platform = require("../../../lib/platform");
17
16
  var _Touch = require("../../Touch/Touch");
@@ -27,7 +26,7 @@ var CellDragger = function CellDragger(_ref) {
27
26
  e.preventDefault();
28
27
  }, []);
29
28
  return /*#__PURE__*/React.createElement(_Touch.Touch, (0, _extends2.default)({
30
- className: (0, _vkjs.classNames)("vkuiCellDragger", (0, _getPlatformClassName.getPlatformClassName)("vkuiCellDragger", platform), className),
29
+ className: (0, _vkjs.classNames)("vkuiCellDragger", className),
31
30
  onStart: onDragStart,
32
31
  onMoveY: onDragMove,
33
32
  onEnd: onDragEnd,
@@ -1 +1 @@
1
- {"version":3,"file":"CellDragger.js","names":["CellDragger","onDragStart","onDragMove","onDragEnd","className","restProps","platform","usePlatform","onClick","React","useCallback","e","preventDefault","classNames","getPlatformClassName","Platform","IOS"],"sources":["../../../../../src/components/Cell/CellDragger/CellDragger.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Reorder, Icon24ReorderIos } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../../helpers/getPlatformClassName';\nimport { usePlatform } from '../../../hooks/usePlatform';\nimport { Platform } from '../../../lib/platform';\nimport { Touch } from '../../Touch/Touch';\nimport { DraggableProps } from '../useDraggable';\nimport styles from './CellDragger.module.css';\n\ntype CellDraggerProps = DraggableProps & React.HTMLAttributes<HTMLElement>;\n\nexport const CellDragger = ({\n onDragStart,\n onDragMove,\n onDragEnd,\n className,\n ...restProps\n}: CellDraggerProps) => {\n const platform = usePlatform();\n\n const onClick = React.useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n }, []);\n\n return (\n <Touch\n className={classNames(\n styles['CellDragger'],\n getPlatformClassName(styles['CellDragger'], platform),\n className,\n )}\n onStart={onDragStart}\n onMoveY={onDragMove}\n onEnd={onDragEnd}\n onClick={onClick}\n {...restProps}\n >\n {platform === Platform.IOS ? <Icon24ReorderIos /> : <Icon24Reorder />}\n </Touch>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAA0C;AAMnC,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAMA;EAAA,IALtBC,WAAW,QAAXA,WAAW;IACXC,UAAU,QAAVA,UAAU;IACVC,SAAS,QAATA,SAAS;IACTC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,IAAMC,OAAO,GAAGC,KAAK,CAACC,WAAW,CAAC,UAACC,CAAmB,EAAK;IACzDA,CAAC,CAACC,cAAc,EAAE;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE,oBAAC,YAAK;IACJ,SAAS,EAAE,IAAAC,gBAAU,qBAEnB,IAAAC,0CAAoB,qBAAwBR,QAAQ,CAAC,EACrDF,SAAS,CACT;IACF,OAAO,EAAEH,WAAY;IACrB,OAAO,EAAEC,UAAW;IACpB,KAAK,EAAEC,SAAU;IACjB,OAAO,EAAEK;EAAQ,GACbH,SAAS,GAEZC,QAAQ,KAAKS,kBAAQ,CAACC,GAAG,gBAAG,oBAAC,uBAAgB,OAAG,gBAAG,oBAAC,oBAAa,OAAG,CAC/D;AAEZ,CAAC;AAAC"}
1
+ {"version":3,"file":"CellDragger.js","names":["CellDragger","onDragStart","onDragMove","onDragEnd","className","restProps","platform","usePlatform","onClick","React","useCallback","e","preventDefault","classNames","Platform","IOS"],"sources":["../../../../../src/components/Cell/CellDragger/CellDragger.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Reorder, Icon24ReorderIos } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../../hooks/usePlatform';\nimport { Platform } from '../../../lib/platform';\nimport { Touch } from '../../Touch/Touch';\nimport { DraggableProps } from '../useDraggable';\nimport styles from './CellDragger.module.css';\n\ntype CellDraggerProps = DraggableProps & React.HTMLAttributes<HTMLElement>;\n\nexport const CellDragger = ({\n onDragStart,\n onDragMove,\n onDragEnd,\n className,\n ...restProps\n}: CellDraggerProps) => {\n const platform = usePlatform();\n\n const onClick = React.useCallback((e: React.MouseEvent) => {\n e.preventDefault();\n }, []);\n\n return (\n <Touch\n className={classNames(styles['CellDragger'], className)}\n onStart={onDragStart}\n onMoveY={onDragMove}\n onEnd={onDragEnd}\n onClick={onClick}\n {...restProps}\n >\n {platform === Platform.IOS ? <Icon24ReorderIos /> : <Icon24Reorder />}\n </Touch>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAA0C;AAMnC,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAMA;EAAA,IALtBC,WAAW,QAAXA,WAAW;IACXC,UAAU,QAAVA,UAAU;IACVC,SAAS,QAATA,SAAS;IACTC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,IAAMC,OAAO,GAAGC,KAAK,CAACC,WAAW,CAAC,UAACC,CAAmB,EAAK;IACzDA,CAAC,CAACC,cAAc,EAAE;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE,oBAAC,YAAK;IACJ,SAAS,EAAE,IAAAC,gBAAU,qBAAwBT,SAAS,CAAE;IACxD,OAAO,EAAEH,WAAY;IACrB,OAAO,EAAEC,UAAW;IACpB,KAAK,EAAEC,SAAU;IACjB,OAAO,EAAEK;EAAQ,GACbH,SAAS,GAEZC,QAAQ,KAAKQ,kBAAQ,CAACC,GAAG,gBAAG,oBAAC,uBAAgB,OAAG,gBAAG,oBAAC,oBAAa,OAAG,CAC/D;AAEZ,CAAC;AAAC"}
@@ -10,8 +10,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _vkjs = require("@vkontakte/vkjs");
13
- var _getPlatformClassName = require("../../helpers/getPlatformClassName");
14
- var _usePlatform = require("../../hooks/usePlatform");
15
13
  var _Button = require("../Button/Button");
16
14
  var _VisuallyHiddenInput = require("../VisuallyHiddenInput/VisuallyHiddenInput");
17
15
  var _excluded = ["children", "align", "size", "mode", "stretched", "before", "after", "loading", "className", "style", "getRef", "getRootRef", "appearance"];
@@ -35,11 +33,10 @@ var File = function File(_ref) {
35
33
  getRootRef = _ref.getRootRef,
36
34
  appearance = _ref.appearance,
37
35
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
38
- var platform = (0, _usePlatform.usePlatform)();
39
36
  return /*#__PURE__*/React.createElement(_Button.Button, {
40
37
  Component: "label",
41
38
  align: align,
42
- className: (0, _vkjs.classNames)("vkuiFile", (0, _getPlatformClassName.getPlatformClassName)("vkuiFile", platform), className),
39
+ className: (0, _vkjs.classNames)("vkuiFile", className),
43
40
  stretched: stretched,
44
41
  mode: mode,
45
42
  appearance: appearance,
@@ -1 +1 @@
1
- {"version":3,"file":"File.js","names":["File","children","align","size","mode","stretched","before","after","loading","className","style","getRef","getRootRef","appearance","restProps","platform","usePlatform","classNames","getPlatformClassName","disabled"],"sources":["../../../../src/components/File/File.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { HasRef, HasRootRef } from '../../types';\nimport { Button, VKUIButtonProps } from '../Button/Button';\nimport { VisuallyHiddenInput } from '../VisuallyHiddenInput/VisuallyHiddenInput';\nimport styles from './File.module.css';\n\nexport interface FileProps\n extends Omit<VKUIButtonProps, 'type'>,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/File\n */\nexport const File = ({\n children = 'Выберите файл',\n align = 'left',\n size,\n mode,\n stretched,\n before,\n after,\n loading,\n className,\n style,\n getRef,\n getRootRef,\n appearance,\n ...restProps\n}: FileProps) => {\n const platform = usePlatform();\n\n return (\n <Button\n Component=\"label\"\n align={align}\n className={classNames(\n styles['File'],\n getPlatformClassName(styles['File'], platform),\n className,\n )}\n stretched={stretched}\n mode={mode}\n appearance={appearance}\n size={size}\n before={before}\n after={after}\n loading={loading}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <VisuallyHiddenInput\n {...restProps}\n className={styles['File__input']}\n type=\"file\"\n getRef={getRef}\n />\n {children}\n </Button>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AAEA;AACA;AAAiF;AASjF;AACA;AACA;AACO,IAAMA,IAAI,GAAG,SAAPA,IAAI,OAeA;EAAA,yBAdfC,QAAQ;IAARA,QAAQ,8BAAG,eAAe;IAAA,kBAC1BC,KAAK;IAALA,KAAK,2BAAG,MAAM;IACdC,IAAI,QAAJA,IAAI;IACJC,IAAI,QAAJA,IAAI;IACJC,SAAS,QAATA,SAAS;IACTC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,OAAO,QAAPA,OAAO;IACPC,SAAS,QAATA,SAAS;IACTC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,UAAU,QAAVA,UAAU;IACVC,UAAU,QAAVA,UAAU;IACPC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,oBACE,oBAAC,cAAM;IACL,SAAS,EAAC,OAAO;IACjB,KAAK,EAAEd,KAAM;IACb,SAAS,EAAE,IAAAe,gBAAU,cAEnB,IAAAC,0CAAoB,cAAiBH,QAAQ,CAAC,EAC9CN,SAAS,CACT;IACF,SAAS,EAAEJ,SAAU;IACrB,IAAI,EAAED,IAAK;IACX,UAAU,EAAES,UAAW;IACvB,IAAI,EAAEV,IAAK;IACX,MAAM,EAAEG,MAAO;IACf,KAAK,EAAEC,KAAM;IACb,OAAO,EAAEC,OAAQ;IACjB,KAAK,EAAEE,KAAM;IACb,UAAU,EAAEE,UAAW;IACvB,QAAQ,EAAEE,SAAS,CAACK;EAAS,gBAE7B,oBAAC,wCAAmB,6BACdL,SAAS;IACb,SAAS,mBAAwB;IACjC,IAAI,EAAC,MAAM;IACX,MAAM,EAAEH;EAAO,GACf,EACDV,QAAQ,CACF;AAEb,CAAC;AAAC"}
1
+ {"version":3,"file":"File.js","names":["File","children","align","size","mode","stretched","before","after","loading","className","style","getRef","getRootRef","appearance","restProps","classNames","disabled"],"sources":["../../../../src/components/File/File.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasRef, HasRootRef } from '../../types';\nimport { Button, VKUIButtonProps } from '../Button/Button';\nimport { VisuallyHiddenInput } from '../VisuallyHiddenInput/VisuallyHiddenInput';\nimport styles from './File.module.css';\n\nexport interface FileProps\n extends Omit<VKUIButtonProps, 'type'>,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/File\n */\nexport const File = ({\n children = 'Выберите файл',\n align = 'left',\n size,\n mode,\n stretched,\n before,\n after,\n loading,\n className,\n style,\n getRef,\n getRootRef,\n appearance,\n ...restProps\n}: FileProps) => {\n return (\n <Button\n Component=\"label\"\n align={align}\n className={classNames(styles['File'], className)}\n stretched={stretched}\n mode={mode}\n appearance={appearance}\n size={size}\n before={before}\n after={after}\n loading={loading}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <VisuallyHiddenInput\n {...restProps}\n className={styles['File__input']}\n type=\"file\"\n getRef={getRef}\n />\n {children}\n </Button>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AAEA;AACA;AAAiF;AASjF;AACA;AACA;AACO,IAAMA,IAAI,GAAG,SAAPA,IAAI,OAeA;EAAA,yBAdfC,QAAQ;IAARA,QAAQ,8BAAG,eAAe;IAAA,kBAC1BC,KAAK;IAALA,KAAK,2BAAG,MAAM;IACdC,IAAI,QAAJA,IAAI;IACJC,IAAI,QAAJA,IAAI;IACJC,SAAS,QAATA,SAAS;IACTC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,OAAO,QAAPA,OAAO;IACPC,SAAS,QAATA,SAAS;IACTC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,UAAU,QAAVA,UAAU;IACVC,UAAU,QAAVA,UAAU;IACPC,SAAS;EAEZ,oBACE,oBAAC,cAAM;IACL,SAAS,EAAC,OAAO;IACjB,KAAK,EAAEZ,KAAM;IACb,SAAS,EAAE,IAAAa,gBAAU,cAAiBN,SAAS,CAAE;IACjD,SAAS,EAAEJ,SAAU;IACrB,IAAI,EAAED,IAAK;IACX,UAAU,EAAES,UAAW;IACvB,IAAI,EAAEV,IAAK;IACX,MAAM,EAAEG,MAAO;IACf,KAAK,EAAEC,KAAM;IACb,OAAO,EAAEC,OAAQ;IACjB,KAAK,EAAEE,KAAM;IACb,UAAU,EAAEE,UAAW;IACvB,QAAQ,EAAEE,SAAS,CAACE;EAAS,gBAE7B,oBAAC,wCAAmB,6BACdF,SAAS;IACb,SAAS,mBAAwB;IACjC,IAAI,EAAC,MAAM;IACX,MAAM,EAAEH;EAAO,GACf,EACDV,QAAQ,CACF;AAEb,CAAC;AAAC"}
@@ -24,7 +24,8 @@ var sizeYClassNames = (0, _defineProperty2.default)({
24
24
  var Input = function Input(_ref) {
25
25
  var _ref$type = _ref.type,
26
26
  type = _ref$type === void 0 ? 'text' : _ref$type,
27
- align = _ref.align,
27
+ _ref$align = _ref.align,
28
+ align = _ref$align === void 0 ? 'left' : _ref$align,
28
29
  getRef = _ref.getRef,
29
30
  className = _ref.className,
30
31
  getRootRef = _ref.getRootRef,
@@ -39,7 +40,7 @@ var Input = function Input(_ref) {
39
40
  sizeY = _useAdaptivity$sizeY === void 0 ? 'none' : _useAdaptivity$sizeY;
40
41
  return /*#__PURE__*/React.createElement(_FormField.FormField, {
41
42
  style: style,
42
- className: (0, _vkjs.classNames)("vkuiInput", align && styles["Input--align-".concat(align)], sizeY !== _adaptivity.SizeType.REGULAR && sizeYClassNames[sizeY], before && "vkuiInput--hasBefore", after && "vkuiInput--hasAfter", className),
43
+ className: (0, _vkjs.classNames)("vkuiInput", align === 'right' && "vkuiInput--align-right", align === 'center' && "vkuiInput--align-center", sizeY !== _adaptivity.SizeType.REGULAR && sizeYClassNames[sizeY], before && "vkuiInput--hasBefore", after && "vkuiInput--hasAfter", className),
43
44
  getRootRef: getRootRef,
44
45
  before: before,
45
46
  after: after,
@@ -53,9 +54,4 @@ var Input = function Input(_ref) {
53
54
  })));
54
55
  };
55
56
  exports.Input = Input;
56
- var styles = {
57
- "Input--align-center": "vkuiInput--align-center",
58
- "Input--align-right": "vkuiInput--align-right",
59
- "Input--align-left": "vkuiInput--align-left"
60
- };
61
57
  //# sourceMappingURL=Input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","names":["sizeYClassNames","none","SizeType","COMPACT","Input","type","align","getRef","className","getRootRef","style","before","after","status","mode","restProps","useAdaptivity","sizeY","classNames","styles","REGULAR","disabled"],"sources":["../../../../src/components/Input/Input.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { SizeType } from '../../lib/adaptivity';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport styles from './Input.module.css';\n\nconst sizeYClassNames = {\n none: styles['Input--sizeY-none'],\n [SizeType.COMPACT]: styles['Input--sizeY-compact'],\n};\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign,\n FormFieldProps {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Input\n */\nexport const Input = ({\n type = 'text',\n align,\n getRef,\n className,\n getRootRef,\n style,\n before,\n after,\n status,\n mode,\n ...restProps\n}: InputProps) => {\n const { sizeY = 'none' } = useAdaptivity();\n\n return (\n <FormField\n style={style}\n className={classNames(\n styles['Input'],\n align && styles[`Input--align-${align}`],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n before && styles['Input--hasBefore'],\n after && styles['Input--hasAfter'],\n className,\n )}\n getRootRef={getRootRef}\n before={before}\n after={after}\n disabled={restProps.disabled}\n mode={mode}\n status={status}\n >\n <input {...restProps} type={type} className={styles['Input__el']} ref={getRef} />\n </FormField>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AAEA;AAAmE;AAGnE,IAAMA,eAAe;EACnBC,IAAI;AAA6B,GAChCC,oBAAQ,CAACC,OAAO,6BAClB;AASD;AACA;AACA;AACO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAYA;EAAA,qBAXhBC,IAAI;IAAJA,IAAI,0BAAG,MAAM;IACbC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,UAAU,QAAVA,UAAU;IACVC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,IAAI,QAAJA,IAAI;IACDC,SAAS;EAEZ,qBAA2B,IAAAC,6BAAa,GAAE;IAAA,sCAAlCC,KAAK;IAALA,KAAK,qCAAG,MAAM;EAEtB,oBACE,oBAAC,oBAAS;IACR,KAAK,EAAEP,KAAM;IACb,SAAS,EAAE,IAAAQ,gBAAU,eAEnBZ,KAAK,IAAIa,MAAM,wBAAiBb,KAAK,EAAG,EACxCW,KAAK,KAAKf,oBAAQ,CAACkB,OAAO,IAAIpB,eAAe,CAACiB,KAAK,CAAC,EACpDN,MAAM,0BAA8B,EACpCC,KAAK,yBAA6B,EAClCJ,SAAS,CACT;IACF,UAAU,EAAEC,UAAW;IACvB,MAAM,EAAEE,MAAO;IACf,KAAK,EAAEC,KAAM;IACb,QAAQ,EAAEG,SAAS,CAACM,QAAS;IAC7B,IAAI,EAAEP,IAAK;IACX,MAAM,EAAED;EAAO,gBAEf,wDAAWE,SAAS;IAAE,IAAI,EAAEV,IAAK;IAAC,SAAS,iBAAsB;IAAC,GAAG,EAAEE;EAAO,GAAG,CACvE;AAEhB,CAAC;AAAC;AAAA;EAAA;EAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"Input.js","names":["sizeYClassNames","none","SizeType","COMPACT","Input","type","align","getRef","className","getRootRef","style","before","after","status","mode","restProps","useAdaptivity","sizeY","classNames","REGULAR","disabled"],"sources":["../../../../src/components/Input/Input.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { SizeType } from '../../lib/adaptivity';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport styles from './Input.module.css';\n\nconst sizeYClassNames = {\n none: styles['Input--sizeY-none'],\n [SizeType.COMPACT]: styles['Input--sizeY-compact'],\n};\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign,\n FormFieldProps {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Input\n */\nexport const Input = ({\n type = 'text',\n align = 'left',\n getRef,\n className,\n getRootRef,\n style,\n before,\n after,\n status,\n mode,\n ...restProps\n}: InputProps) => {\n const { sizeY = 'none' } = useAdaptivity();\n\n return (\n <FormField\n style={style}\n className={classNames(\n styles['Input'],\n align === 'right' && styles['Input--align-right'],\n align === 'center' && styles['Input--align-center'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n before && styles['Input--hasBefore'],\n after && styles['Input--hasAfter'],\n className,\n )}\n getRootRef={getRootRef}\n before={before}\n after={after}\n disabled={restProps.disabled}\n mode={mode}\n status={status}\n >\n <input {...restProps} type={type} className={styles['Input__el']} ref={getRef} />\n </FormField>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AAEA;AAAmE;AAGnE,IAAMA,eAAe;EACnBC,IAAI;AAA6B,GAChCC,oBAAQ,CAACC,OAAO,6BAClB;AASD;AACA;AACA;AACO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAYA;EAAA,qBAXhBC,IAAI;IAAJA,IAAI,0BAAG,MAAM;IAAA,kBACbC,KAAK;IAALA,KAAK,2BAAG,MAAM;IACdC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,UAAU,QAAVA,UAAU;IACVC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,IAAI,QAAJA,IAAI;IACDC,SAAS;EAEZ,qBAA2B,IAAAC,6BAAa,GAAE;IAAA,sCAAlCC,KAAK;IAALA,KAAK,qCAAG,MAAM;EAEtB,oBACE,oBAAC,oBAAS;IACR,KAAK,EAAEP,KAAM;IACb,SAAS,EAAE,IAAAQ,gBAAU,eAEnBZ,KAAK,KAAK,OAAO,4BAAgC,EACjDA,KAAK,KAAK,QAAQ,6BAAiC,EACnDW,KAAK,KAAKf,oBAAQ,CAACiB,OAAO,IAAInB,eAAe,CAACiB,KAAK,CAAC,EACpDN,MAAM,0BAA8B,EACpCC,KAAK,yBAA6B,EAClCJ,SAAS,CACT;IACF,UAAU,EAAEC,UAAW;IACvB,MAAM,EAAEE,MAAO;IACf,KAAK,EAAEC,KAAM;IACb,QAAQ,EAAEG,SAAS,CAACK,QAAS;IAC7B,IAAI,EAAEN,IAAK;IACX,MAAM,EAAED;EAAO,gBAEf,wDAAWE,SAAS;IAAE,IAAI,EAAEV,IAAK;IAAC,SAAS,iBAAsB;IAAC,GAAG,EAAEE;EAAO,GAAG,CACvE;AAEhB,CAAC;AAAC"}
@@ -10,7 +10,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _vkjs = require("@vkontakte/vkjs");
13
- var _getPlatformClassName = require("../../helpers/getPlatformClassName");
14
13
  var _useAdaptivityWithJSMediaQueries = require("../../hooks/useAdaptivityWithJSMediaQueries");
15
14
  var _usePlatform = require("../../hooks/usePlatform");
16
15
  var _getNavId = require("../../lib/getNavId");
@@ -19,6 +18,11 @@ var _ModalCardBase = require("../ModalCardBase/ModalCardBase");
19
18
  var _ModalRootContext = require("../ModalRoot/ModalRootContext");
20
19
  var _types = require("../ModalRoot/types");
21
20
  var _excluded = ["icon", "header", "subheader", "children", "actions", "onClose", "nav", "id", "className", "size"];
21
+ var platformClassNames = {
22
+ ios: "vkuiModalCard--ios",
23
+ android: "vkuiModalCard--android",
24
+ vkcom: "vkuiModalCard--vkcom"
25
+ };
22
26
  var warn = (0, _warnOnce.warnOnce)('ModalCard');
23
27
 
24
28
  /**
@@ -47,7 +51,7 @@ var ModalCard = function ModalCard(_ref) {
47
51
  refs = _useModalRegistry.refs;
48
52
  return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, restProps, {
49
53
  id: id,
50
- className: (0, _vkjs.classNames)("vkuiModalCard", (0, _getPlatformClassName.getPlatformClassName)("vkuiModalCard", platform), isDesktop && "vkuiModalCard--desktop", className)
54
+ className: (0, _vkjs.classNames)("vkuiModalCard", platformClassNames.hasOwnProperty(platform) ? platformClassNames[platform] : platformClassNames.android, isDesktop && "vkuiModalCard--desktop", className)
51
55
  }), /*#__PURE__*/React.createElement(_ModalCardBase.ModalCardBase, {
52
56
  className: "vkuiModalCard__in",
53
57
  getRootRef: refs.innerElement,
@@ -1 +1 @@
1
- {"version":3,"file":"ModalCard.js","names":["warn","warnOnce","ModalCard","icon","header","subheader","children","actions","onClose","nav","id","className","size","restProps","useAdaptivityWithJSMediaQueries","isDesktop","platform","usePlatform","modalContext","React","useContext","ModalRootContext","useModalRegistry","getNavId","ModalType","CARD","refs","classNames","getPlatformClassName","innerElement"],"sources":["../../../../src/components/ModalCard/ModalCard.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { getNavId, NavIdProps } from '../../lib/getNavId';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { ModalCardBase, ModalCardBaseProps } from '../ModalCardBase/ModalCardBase';\nimport { ModalRootContext, useModalRegistry } from '../ModalRoot/ModalRootContext';\nimport { ModalType } from '../ModalRoot/types';\nimport styles from './ModalCard.module.css';\n\nexport interface ModalCardProps extends NavIdProps, ModalCardBaseProps {}\n\nconst warn = warnOnce('ModalCard');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalCard\n */\nexport const ModalCard = ({\n icon,\n header,\n subheader,\n children,\n actions,\n onClose,\n nav,\n id,\n className,\n size,\n ...restProps\n}: ModalCardProps) => {\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const platform = usePlatform();\n\n const modalContext = React.useContext(ModalRootContext);\n const { refs } = useModalRegistry(getNavId({ nav, id }, warn), ModalType.CARD);\n\n return (\n <div\n {...restProps}\n id={id}\n className={classNames(\n styles['ModalCard'],\n getPlatformClassName(styles['ModalCard'], platform),\n isDesktop && styles['ModalCard--desktop'],\n className,\n )}\n >\n <ModalCardBase\n className={styles['ModalCard__in']}\n getRootRef={refs.innerElement}\n icon={icon}\n header={header}\n subheader={subheader}\n actions={actions}\n onClose={onClose || modalContext.onClose}\n size={size}\n >\n {children}\n </ModalCardBase>\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAA+C;AAK/C,IAAMA,IAAI,GAAG,IAAAC,kBAAQ,EAAC,WAAW,CAAC;;AAElC;AACA;AACA;AACO,IAAMC,SAAS,GAAG,SAAZA,SAAS,OAYA;EAAA,IAXpBC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACPC,OAAO,QAAPA,OAAO;IACPC,GAAG,QAAHA,GAAG;IACHC,EAAE,QAAFA,EAAE;IACFC,SAAS,QAATA,SAAS;IACTC,IAAI,QAAJA,IAAI;IACDC,SAAS;EAEZ,4BAAsB,IAAAC,gEAA+B,GAAE;IAA/CC,SAAS,yBAATA,SAAS;EACjB,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,IAAMC,YAAY,GAAGC,KAAK,CAACC,UAAU,CAACC,kCAAgB,CAAC;EACvD,wBAAiB,IAAAC,kCAAgB,EAAC,IAAAC,kBAAQ,EAAC;MAAEd,GAAG,EAAHA,GAAG;MAAEC,EAAE,EAAFA;IAAG,CAAC,EAAEV,IAAI,CAAC,EAAEwB,gBAAS,CAACC,IAAI,CAAC;IAAtEC,IAAI,qBAAJA,IAAI;EAEZ,oBACE,sDACMb,SAAS;IACb,EAAE,EAAEH,EAAG;IACP,SAAS,EAAE,IAAAiB,gBAAU,mBAEnB,IAAAC,0CAAoB,mBAAsBZ,QAAQ,CAAC,EACnDD,SAAS,4BAAgC,EACzCJ,SAAS;EACT,iBAEF,oBAAC,4BAAa;IACZ,SAAS,qBAA0B;IACnC,UAAU,EAAEe,IAAI,CAACG,YAAa;IAC9B,IAAI,EAAE1B,IAAK;IACX,MAAM,EAAEC,MAAO;IACf,SAAS,EAAEC,SAAU;IACrB,OAAO,EAAEE,OAAQ;IACjB,OAAO,EAAEC,OAAO,IAAIU,YAAY,CAACV,OAAQ;IACzC,IAAI,EAAEI;EAAK,GAEVN,QAAQ,CACK,CACZ;AAEV,CAAC;AAAC"}
1
+ {"version":3,"file":"ModalCard.js","names":["platformClassNames","ios","android","vkcom","warn","warnOnce","ModalCard","icon","header","subheader","children","actions","onClose","nav","id","className","size","restProps","useAdaptivityWithJSMediaQueries","isDesktop","platform","usePlatform","modalContext","React","useContext","ModalRootContext","useModalRegistry","getNavId","ModalType","CARD","refs","classNames","hasOwnProperty","innerElement"],"sources":["../../../../src/components/ModalCard/ModalCard.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { getNavId, NavIdProps } from '../../lib/getNavId';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { ModalCardBase, ModalCardBaseProps } from '../ModalCardBase/ModalCardBase';\nimport { ModalRootContext, useModalRegistry } from '../ModalRoot/ModalRootContext';\nimport { ModalType } from '../ModalRoot/types';\nimport styles from './ModalCard.module.css';\n\nconst platformClassNames = {\n ios: styles['ModalCard--ios'],\n android: styles['ModalCard--android'],\n vkcom: styles['ModalCard--vkcom'],\n};\n\nexport interface ModalCardProps extends NavIdProps, ModalCardBaseProps {}\n\nconst warn = warnOnce('ModalCard');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalCard\n */\nexport const ModalCard = ({\n icon,\n header,\n subheader,\n children,\n actions,\n onClose,\n nav,\n id,\n className,\n size,\n ...restProps\n}: ModalCardProps) => {\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const platform = usePlatform();\n\n const modalContext = React.useContext(ModalRootContext);\n const { refs } = useModalRegistry(getNavId({ nav, id }, warn), ModalType.CARD);\n\n return (\n <div\n {...restProps}\n id={id}\n className={classNames(\n styles['ModalCard'],\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n isDesktop && styles['ModalCard--desktop'],\n className,\n )}\n >\n <ModalCardBase\n className={styles['ModalCard__in']}\n getRootRef={refs.innerElement}\n icon={icon}\n header={header}\n subheader={subheader}\n actions={actions}\n onClose={onClose || modalContext.onClose}\n size={size}\n >\n {children}\n </ModalCardBase>\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAA+C;AAG/C,IAAMA,kBAAkB,GAAG;EACzBC,GAAG,sBAA0B;EAC7BC,OAAO,0BAA8B;EACrCC,KAAK;AACP,CAAC;AAID,IAAMC,IAAI,GAAG,IAAAC,kBAAQ,EAAC,WAAW,CAAC;;AAElC;AACA;AACA;AACO,IAAMC,SAAS,GAAG,SAAZA,SAAS,OAYA;EAAA,IAXpBC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACPC,OAAO,QAAPA,OAAO;IACPC,GAAG,QAAHA,GAAG;IACHC,EAAE,QAAFA,EAAE;IACFC,SAAS,QAATA,SAAS;IACTC,IAAI,QAAJA,IAAI;IACDC,SAAS;EAEZ,4BAAsB,IAAAC,gEAA+B,GAAE;IAA/CC,SAAS,yBAATA,SAAS;EACjB,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAE9B,IAAMC,YAAY,GAAGC,KAAK,CAACC,UAAU,CAACC,kCAAgB,CAAC;EACvD,wBAAiB,IAAAC,kCAAgB,EAAC,IAAAC,kBAAQ,EAAC;MAAEd,GAAG,EAAHA,GAAG;MAAEC,EAAE,EAAFA;IAAG,CAAC,EAAEV,IAAI,CAAC,EAAEwB,gBAAS,CAACC,IAAI,CAAC;IAAtEC,IAAI,qBAAJA,IAAI;EAEZ,oBACE,sDACMb,SAAS;IACb,EAAE,EAAEH,EAAG;IACP,SAAS,EAAE,IAAAiB,gBAAU,mBAEnB/B,kBAAkB,CAACgC,cAAc,CAACZ,QAAQ,CAAC,GACvCpB,kBAAkB,CAACoB,QAAQ,CAAC,GAC5BpB,kBAAkB,CAACE,OAAO,EAC9BiB,SAAS,4BAAgC,EACzCJ,SAAS;EACT,iBAEF,oBAAC,4BAAa;IACZ,SAAS,qBAA0B;IACnC,UAAU,EAAEe,IAAI,CAACG,YAAa;IAC9B,IAAI,EAAE1B,IAAK;IACX,MAAM,EAAEC,MAAO;IACf,SAAS,EAAEC,SAAU;IACrB,OAAO,EAAEE,OAAQ;IACjB,OAAO,EAAEC,OAAO,IAAIU,YAAY,CAACV,OAAQ;IACzC,IAAI,EAAEI;EAAK,GAEVN,QAAQ,CACK,CACZ;AAEV,CAAC;AAAC"}
@@ -12,7 +12,6 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
12
12
  var React = _interopRequireWildcard(require("react"));
13
13
  var _icons = require("@vkontakte/icons");
14
14
  var _vkjs = require("@vkontakte/vkjs");
15
- var _getPlatformClassName = require("../../helpers/getPlatformClassName");
16
15
  var _useAdaptivityWithJSMediaQueries = require("../../hooks/useAdaptivityWithJSMediaQueries");
17
16
  var _useKeyboard = require("../../hooks/useKeyboard");
18
17
  var _usePlatform = require("../../hooks/usePlatform");
@@ -22,6 +21,11 @@ var _PanelHeaderButton = require("../PanelHeaderButton/PanelHeaderButton");
22
21
  var _Subhead = require("../Typography/Subhead/Subhead");
23
22
  var _Title = require("../Typography/Title/Title");
24
23
  var _excluded = ["getRootRef", "icon", "header", "subheader", "children", "actions", "onClose", "dismissLabel", "className", "style", "size"];
24
+ var platformClassNames = {
25
+ ios: "vkuiModalCardBase--ios",
26
+ android: "vkuiModalCardBase--android",
27
+ vkcom: "vkuiModalCardBase--vkcom"
28
+ };
25
29
  /**
26
30
  * @see https://vkcom.github.io/VKUI/#/ModalCardBase
27
31
  */
@@ -46,7 +50,7 @@ var ModalCardBase = function ModalCardBase(_ref) {
46
50
  var canShowCloseButtonIOS = platform === _platform.Platform.IOS && !isDesktop;
47
51
  var size = isDesktop ? sizeProp : undefined;
48
52
  return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, restProps, {
49
- className: (0, _vkjs.classNames)("vkuiModalCardBase", (0, _getPlatformClassName.getPlatformClassName)("vkuiModalCardBase", platform), isDesktop && "vkuiModalCardBase--desktop", className),
53
+ className: (0, _vkjs.classNames)("vkuiModalCardBase", platformClassNames.hasOwnProperty(platform) ? platformClassNames[platform] : platformClassNames.android, isDesktop && "vkuiModalCardBase--desktop", className),
50
54
  ref: getRootRef,
51
55
  style: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, style), {}, {
52
56
  maxWidth: size
@@ -1 +1 @@
1
- {"version":3,"file":"ModalCardBase.js","names":["ModalCardBase","getRootRef","icon","header","subheader","children","actions","onClose","dismissLabel","className","style","sizeProp","size","restProps","platform","usePlatform","useAdaptivityWithJSMediaQueries","isDesktop","isSoftwareKeyboardOpened","useKeyboard","isOpened","canShowCloseButtonIOS","Platform","IOS","undefined","classNames","getPlatformClassName","maxWidth","hasReactNode"],"sources":["../../../../src/components/ModalCardBase/ModalCardBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Dismiss } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useKeyboard } from '../../hooks/useKeyboard';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasRootRef } from '../../types';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { PanelHeaderButton } from '../PanelHeaderButton/PanelHeaderButton';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './ModalCardBase.module.css';\n\nexport interface ModalCardBaseProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка.\n *\n * Может быть компонентом иконки, например, `<Icon56MoneyTransferOutline />`, или `<Avatar size={72} src=\"\" />`\n */\n icon?: React.ReactNode;\n\n /**\n * Заголовок карточки\n */\n header?: React.ReactNode;\n\n /**\n * Подзаголовок\n */\n subheader?: React.ReactNode;\n\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button) с параметрами:\n *\n * - `size=\"l\" mode=\"primary\" stretched`\n * - `size=\"l\" mode=\"secondary\" stretched`\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `gap=\"s\" mode=\"horizontal\" stretched`\n * - `gap=\"m\" mode=\"vertical\" stretched`\n */\n actions?: React.ReactNode;\n\n onClose?: VoidFunction;\n\n /**\n * `aria-label` для кнопки закрытия. Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n\n /**\n * Задаёт контенту максимальную ширину для десктопной версии.\n */\n size?: number;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalCardBase\n */\nexport const ModalCardBase = ({\n getRootRef,\n icon,\n header,\n subheader,\n children,\n actions,\n onClose,\n dismissLabel = 'Скрыть',\n className,\n style,\n size: sizeProp,\n ...restProps\n}: ModalCardBaseProps) => {\n const platform = usePlatform();\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const isSoftwareKeyboardOpened = useKeyboard().isOpened;\n\n const canShowCloseButtonIOS = platform === Platform.IOS && !isDesktop;\n\n const size = isDesktop ? sizeProp : undefined;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['ModalCardBase'],\n getPlatformClassName(styles['ModalCardBase'], platform),\n isDesktop && styles['ModalCardBase--desktop'],\n className,\n )}\n ref={getRootRef}\n style={{\n ...style,\n maxWidth: size,\n }}\n >\n <div\n className={classNames(\n styles['ModalCardBase__container'],\n isSoftwareKeyboardOpened && styles['ModalCardBase__container--softwareKeyboardOpened'],\n )}\n >\n {hasReactNode(icon) && <div className={styles['ModalCardBase__icon']}>{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" className={styles['ModalCardBase__header']}>\n {header}\n </Title>\n )}\n {hasReactNode(subheader) && (\n <Subhead className={styles['ModalCardBase__subheader']}>{subheader}</Subhead>\n )}\n\n {children}\n\n {hasReactNode(actions) && <div className={styles['ModalCardBase__actions']}>{actions}</div>}\n\n {isDesktop && <ModalDismissButton onClick={onClose} />}\n {canShowCloseButtonIOS && (\n <PanelHeaderButton\n aria-label={dismissLabel}\n className={styles['ModalCardBase__dismiss']}\n onClick={onClose}\n >\n <Icon24Dismiss />\n </PanelHeaderButton>\n )}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAkD;AAiDlD;AACA;AACA;AACO,IAAMA,aAAa,GAAG,SAAhBA,aAAa,OAaA;EAAA,IAZxBC,UAAU,QAAVA,UAAU;IACVC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACPC,OAAO,QAAPA,OAAO;IAAA,yBACPC,YAAY;IAAZA,YAAY,kCAAG,QAAQ;IACvBC,SAAS,QAATA,SAAS;IACTC,KAAK,QAALA,KAAK;IACCC,QAAQ,QAAdC,IAAI;IACDC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAC9B,4BAAsB,IAAAC,gEAA+B,GAAE;IAA/CC,SAAS,yBAATA,SAAS;EACjB,IAAMC,wBAAwB,GAAG,IAAAC,wBAAW,GAAE,CAACC,QAAQ;EAEvD,IAAMC,qBAAqB,GAAGP,QAAQ,KAAKQ,kBAAQ,CAACC,GAAG,IAAI,CAACN,SAAS;EAErE,IAAML,IAAI,GAAGK,SAAS,GAAGN,QAAQ,GAAGa,SAAS;EAE7C,oBACE,sDACMX,SAAS;IACb,SAAS,EAAE,IAAAY,gBAAU,uBAEnB,IAAAC,0CAAoB,uBAA0BZ,QAAQ,CAAC,EACvDG,SAAS,gCAAoC,EAC7CR,SAAS,CACT;IACF,GAAG,EAAER,UAAW;IAChB,KAAK,8DACAS,KAAK;MACRiB,QAAQ,EAAEf;IAAI;EACd,iBAEF;IACE,SAAS,EAAE,IAAAa,gBAAU,kCAEnBP,wBAAwB,0DAA8D;EACtF,GAED,IAAAU,kBAAY,EAAC1B,IAAI,CAAC,iBAAI;IAAK,SAAS;EAAgC,GAAEA,IAAI,CAAO,EACjF,IAAA0B,kBAAY,EAACzB,MAAM,CAAC,iBACnB,oBAAC,YAAK;IAAC,KAAK,EAAC,GAAG;IAAC,MAAM,EAAC,GAAG;IAAC,SAAS;EAAkC,GACpEA,MAAM,CAEV,EACA,IAAAyB,kBAAY,EAACxB,SAAS,CAAC,iBACtB,oBAAC,gBAAO;IAAC,SAAS;EAAqC,GAAEA,SAAS,CACnE,EAEAC,QAAQ,EAER,IAAAuB,kBAAY,EAACtB,OAAO,CAAC,iBAAI;IAAK,SAAS;EAAmC,GAAEA,OAAO,CAAO,EAE1FW,SAAS,iBAAI,oBAAC,sCAAkB;IAAC,OAAO,EAAEV;EAAQ,EAAG,EACrDc,qBAAqB,iBACpB,oBAAC,oCAAiB;IAChB,cAAYb,YAAa;IACzB,SAAS,8BAAmC;IAC5C,OAAO,EAAED;EAAQ,gBAEjB,oBAAC,oBAAa,OAAG,CAEpB,CACG,CACF;AAEV,CAAC;AAAC"}
1
+ {"version":3,"file":"ModalCardBase.js","names":["platformClassNames","ios","android","vkcom","ModalCardBase","getRootRef","icon","header","subheader","children","actions","onClose","dismissLabel","className","style","sizeProp","size","restProps","platform","usePlatform","useAdaptivityWithJSMediaQueries","isDesktop","isSoftwareKeyboardOpened","useKeyboard","isOpened","canShowCloseButtonIOS","Platform","IOS","undefined","classNames","hasOwnProperty","maxWidth","hasReactNode"],"sources":["../../../../src/components/ModalCardBase/ModalCardBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Dismiss } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useKeyboard } from '../../hooks/useKeyboard';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasRootRef } from '../../types';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { PanelHeaderButton } from '../PanelHeaderButton/PanelHeaderButton';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './ModalCardBase.module.css';\n\nconst platformClassNames = {\n ios: styles['ModalCardBase--ios'],\n android: styles['ModalCardBase--android'],\n vkcom: styles['ModalCardBase--vkcom'],\n};\n\nexport interface ModalCardBaseProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка.\n *\n * Может быть компонентом иконки, например, `<Icon56MoneyTransferOutline />`, или `<Avatar size={72} src=\"\" />`\n */\n icon?: React.ReactNode;\n\n /**\n * Заголовок карточки\n */\n header?: React.ReactNode;\n\n /**\n * Подзаголовок\n */\n subheader?: React.ReactNode;\n\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button) с параметрами:\n *\n * - `size=\"l\" mode=\"primary\" stretched`\n * - `size=\"l\" mode=\"secondary\" stretched`\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `gap=\"s\" mode=\"horizontal\" stretched`\n * - `gap=\"m\" mode=\"vertical\" stretched`\n */\n actions?: React.ReactNode;\n\n onClose?: VoidFunction;\n\n /**\n * `aria-label` для кнопки закрытия. Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n\n /**\n * Задаёт контенту максимальную ширину для десктопной версии.\n */\n size?: number;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalCardBase\n */\nexport const ModalCardBase = ({\n getRootRef,\n icon,\n header,\n subheader,\n children,\n actions,\n onClose,\n dismissLabel = 'Скрыть',\n className,\n style,\n size: sizeProp,\n ...restProps\n}: ModalCardBaseProps) => {\n const platform = usePlatform();\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const isSoftwareKeyboardOpened = useKeyboard().isOpened;\n\n const canShowCloseButtonIOS = platform === Platform.IOS && !isDesktop;\n\n const size = isDesktop ? sizeProp : undefined;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['ModalCardBase'],\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n isDesktop && styles['ModalCardBase--desktop'],\n className,\n )}\n ref={getRootRef}\n style={{\n ...style,\n maxWidth: size,\n }}\n >\n <div\n className={classNames(\n styles['ModalCardBase__container'],\n isSoftwareKeyboardOpened && styles['ModalCardBase__container--softwareKeyboardOpened'],\n )}\n >\n {hasReactNode(icon) && <div className={styles['ModalCardBase__icon']}>{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" className={styles['ModalCardBase__header']}>\n {header}\n </Title>\n )}\n {hasReactNode(subheader) && (\n <Subhead className={styles['ModalCardBase__subheader']}>{subheader}</Subhead>\n )}\n\n {children}\n\n {hasReactNode(actions) && <div className={styles['ModalCardBase__actions']}>{actions}</div>}\n\n {isDesktop && <ModalDismissButton onClick={onClose} />}\n {canShowCloseButtonIOS && (\n <PanelHeaderButton\n aria-label={dismissLabel}\n className={styles['ModalCardBase__dismiss']}\n onClick={onClose}\n >\n <Icon24Dismiss />\n </PanelHeaderButton>\n )}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAkD;AAGlD,IAAMA,kBAAkB,GAAG;EACzBC,GAAG,0BAA8B;EACjCC,OAAO,8BAAkC;EACzCC,KAAK;AACP,CAAC;AAgDD;AACA;AACA;AACO,IAAMC,aAAa,GAAG,SAAhBA,aAAa,OAaA;EAAA,IAZxBC,UAAU,QAAVA,UAAU;IACVC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACPC,OAAO,QAAPA,OAAO;IAAA,yBACPC,YAAY;IAAZA,YAAY,kCAAG,QAAQ;IACvBC,SAAS,QAATA,SAAS;IACTC,KAAK,QAALA,KAAK;IACCC,QAAQ,QAAdC,IAAI;IACDC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAC9B,4BAAsB,IAAAC,gEAA+B,GAAE;IAA/CC,SAAS,yBAATA,SAAS;EACjB,IAAMC,wBAAwB,GAAG,IAAAC,wBAAW,GAAE,CAACC,QAAQ;EAEvD,IAAMC,qBAAqB,GAAGP,QAAQ,KAAKQ,kBAAQ,CAACC,GAAG,IAAI,CAACN,SAAS;EAErE,IAAML,IAAI,GAAGK,SAAS,GAAGN,QAAQ,GAAGa,SAAS;EAE7C,oBACE,sDACMX,SAAS;IACb,SAAS,EAAE,IAAAY,gBAAU,uBAEnB7B,kBAAkB,CAAC8B,cAAc,CAACZ,QAAQ,CAAC,GACvClB,kBAAkB,CAACkB,QAAQ,CAAC,GAC5BlB,kBAAkB,CAACE,OAAO,EAC9BmB,SAAS,gCAAoC,EAC7CR,SAAS,CACT;IACF,GAAG,EAAER,UAAW;IAChB,KAAK,8DACAS,KAAK;MACRiB,QAAQ,EAAEf;IAAI;EACd,iBAEF;IACE,SAAS,EAAE,IAAAa,gBAAU,kCAEnBP,wBAAwB,0DAA8D;EACtF,GAED,IAAAU,kBAAY,EAAC1B,IAAI,CAAC,iBAAI;IAAK,SAAS;EAAgC,GAAEA,IAAI,CAAO,EACjF,IAAA0B,kBAAY,EAACzB,MAAM,CAAC,iBACnB,oBAAC,YAAK;IAAC,KAAK,EAAC,GAAG;IAAC,MAAM,EAAC,GAAG;IAAC,SAAS;EAAkC,GACpEA,MAAM,CAEV,EACA,IAAAyB,kBAAY,EAACxB,SAAS,CAAC,iBACtB,oBAAC,gBAAO;IAAC,SAAS;EAAqC,GAAEA,SAAS,CACnE,EAEAC,QAAQ,EAER,IAAAuB,kBAAY,EAACtB,OAAO,CAAC,iBAAI;IAAK,SAAS;EAAmC,GAAEA,OAAO,CAAO,EAE1FW,SAAS,iBAAI,oBAAC,sCAAkB;IAAC,OAAO,EAAEV;EAAQ,EAAG,EACrDc,qBAAqB,iBACpB,oBAAC,oCAAiB;IAChB,cAAYb,YAAa;IACzB,SAAS,8BAAmC;IAC5C,OAAO,EAAED;EAAQ,gBAEjB,oBAAC,oBAAa,OAAG,CAEpB,CACG,CACF;AAEV,CAAC;AAAC"}
@@ -10,7 +10,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _vkjs = require("@vkontakte/vkjs");
13
- var _getPlatformClassName = require("../../helpers/getPlatformClassName");
14
13
  var _useAdaptivityWithJSMediaQueries = require("../../hooks/useAdaptivityWithJSMediaQueries");
15
14
  var _usePlatform = require("../../hooks/usePlatform");
16
15
  var _platform = require("../../lib/platform");
@@ -32,7 +31,7 @@ var ModalPageHeader = function ModalPageHeader(_ref) {
32
31
  var _useAdaptivityWithJSM = (0, _useAdaptivityWithJSMediaQueries.useAdaptivityWithJSMediaQueries)(),
33
32
  isDesktop = _useAdaptivityWithJSM.isDesktop;
34
33
  return /*#__PURE__*/React.createElement("div", {
35
- className: (0, _vkjs.classNames)("vkuiModalPageHeader", (0, _getPlatformClassName.getPlatformClassName)("vkuiModalPageHeader", platform), platform !== _platform.Platform.VKCOM && "vkuiModalPageHeader--withGaps", isDesktop && "vkuiModalPageHeader--desktop"),
34
+ className: (0, _vkjs.classNames)("vkuiModalPageHeader", platform !== _platform.Platform.VKCOM && "vkuiModalPageHeader--withGaps", isDesktop && "vkuiModalPageHeader--desktop"),
36
35
  ref: getRef
37
36
  }, /*#__PURE__*/React.createElement(_PanelHeader.PanelHeader, (0, _extends2.default)({
38
37
  className: (0, _vkjs.classNames)("vkuiModalPageHeader__in", className)
@@ -1 +1 @@
1
- {"version":3,"file":"ModalPageHeader.js","names":["ModalPageHeader","children","separator","getRef","className","restProps","platform","usePlatform","hasSeparator","Platform","VKCOM","useAdaptivityWithJSMediaQueries","isDesktop","classNames","getPlatformClassName"],"sources":["../../../../src/components/ModalPageHeader/ModalPageHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasRef } from '../../types';\nimport { PanelHeader, PanelHeaderProps } from '../PanelHeader/PanelHeader';\nimport { Separator } from '../Separator/Separator';\nimport styles from './ModalPageHeader.module.css';\n\nexport interface ModalPageHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Omit<PanelHeaderProps, 'fixed' | 'shadow'>,\n HasRef<HTMLDivElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalPageHeader\n */\nexport const ModalPageHeader = ({\n children,\n separator = true,\n getRef,\n className,\n ...restProps\n}: ModalPageHeaderProps) => {\n const platform = usePlatform();\n const hasSeparator = separator && platform === Platform.VKCOM;\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n return (\n <div\n className={classNames(\n styles['ModalPageHeader'],\n getPlatformClassName(styles['ModalPageHeader'], platform),\n platform !== Platform.VKCOM && styles['ModalPageHeader--withGaps'],\n isDesktop && styles['ModalPageHeader--desktop'],\n )}\n ref={getRef}\n >\n <PanelHeader\n className={classNames(styles['ModalPageHeader__in'], className)}\n {...restProps}\n fixed={false}\n separator={false}\n transparent\n >\n {children}\n </PanelHeader>\n {hasSeparator && <Separator wide />}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAmD;AAQnD;AACA;AACA;AACO,IAAMA,eAAe,GAAG,SAAlBA,eAAe,OAMA;EAAA,IAL1BC,QAAQ,QAARA,QAAQ;IAAA,sBACRC,SAAS;IAATA,SAAS,+BAAG,IAAI;IAChBC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAC9B,IAAMC,YAAY,GAAGN,SAAS,IAAII,QAAQ,KAAKG,kBAAQ,CAACC,KAAK;EAC7D,4BAAsB,IAAAC,gEAA+B,GAAE;IAA/CC,SAAS,yBAATA,SAAS;EAEjB,oBACE;IACE,SAAS,EAAE,IAAAC,gBAAU,yBAEnB,IAAAC,0CAAoB,yBAA4BR,QAAQ,CAAC,EACzDA,QAAQ,KAAKG,kBAAQ,CAACC,KAAK,mCAAuC,EAClEE,SAAS,kCAAsC,CAC/C;IACF,GAAG,EAAET;EAAO,gBAEZ,oBAAC,wBAAW;IACV,SAAS,EAAE,IAAAU,gBAAU,6BAAgCT,SAAS;EAAE,GAC5DC,SAAS;IACb,KAAK,EAAE,KAAM;IACb,SAAS,EAAE,KAAM;IACjB,WAAW;EAAA,IAEVJ,QAAQ,CACG,EACbO,YAAY,iBAAI,oBAAC,oBAAS;IAAC,IAAI;EAAA,EAAG,CAC/B;AAEV,CAAC;AAAC"}
1
+ {"version":3,"file":"ModalPageHeader.js","names":["ModalPageHeader","children","separator","getRef","className","restProps","platform","usePlatform","hasSeparator","Platform","VKCOM","useAdaptivityWithJSMediaQueries","isDesktop","classNames"],"sources":["../../../../src/components/ModalPageHeader/ModalPageHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasRef } from '../../types';\nimport { PanelHeader, PanelHeaderProps } from '../PanelHeader/PanelHeader';\nimport { Separator } from '../Separator/Separator';\nimport styles from './ModalPageHeader.module.css';\n\nexport interface ModalPageHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Omit<PanelHeaderProps, 'fixed' | 'shadow'>,\n HasRef<HTMLDivElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalPageHeader\n */\nexport const ModalPageHeader = ({\n children,\n separator = true,\n getRef,\n className,\n ...restProps\n}: ModalPageHeaderProps) => {\n const platform = usePlatform();\n const hasSeparator = separator && platform === Platform.VKCOM;\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n return (\n <div\n className={classNames(\n styles['ModalPageHeader'],\n platform !== Platform.VKCOM && styles['ModalPageHeader--withGaps'],\n isDesktop && styles['ModalPageHeader--desktop'],\n )}\n ref={getRef}\n >\n <PanelHeader\n className={classNames(styles['ModalPageHeader__in'], className)}\n {...restProps}\n fixed={false}\n separator={false}\n transparent\n >\n {children}\n </PanelHeader>\n {hasSeparator && <Separator wide />}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAmD;AAQnD;AACA;AACA;AACO,IAAMA,eAAe,GAAG,SAAlBA,eAAe,OAMA;EAAA,IAL1BC,QAAQ,QAARA,QAAQ;IAAA,sBACRC,SAAS;IAATA,SAAS,+BAAG,IAAI;IAChBC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAC9B,IAAMC,YAAY,GAAGN,SAAS,IAAII,QAAQ,KAAKG,kBAAQ,CAACC,KAAK;EAC7D,4BAAsB,IAAAC,gEAA+B,GAAE;IAA/CC,SAAS,yBAATA,SAAS;EAEjB,oBACE;IACE,SAAS,EAAE,IAAAC,gBAAU,yBAEnBP,QAAQ,KAAKG,kBAAQ,CAACC,KAAK,mCAAuC,EAClEE,SAAS,kCAAsC,CAC/C;IACF,GAAG,EAAET;EAAO,gBAEZ,oBAAC,wBAAW;IACV,SAAS,EAAE,IAAAU,gBAAU,6BAAgCT,SAAS;EAAE,GAC5DC,SAAS;IACb,KAAK,EAAE,KAAM;IACb,SAAS,EAAE,KAAM;IACjB,WAAW;EAAA,IAEVJ,QAAQ,CACG,EACbO,YAAY,iBAAI,oBAAC,oBAAS;IAAC,IAAI;EAAA,EAAG,CAC/B;AAEV,CAAC;AAAC"}
@@ -12,11 +12,9 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
12
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
13
  var React = _interopRequireWildcard(require("react"));
14
14
  var _vkjs = require("@vkontakte/vkjs");
15
- var _getPlatformClassName = require("../../helpers/getPlatformClassName");
16
15
  var _useAdaptivity2 = require("../../hooks/useAdaptivity");
17
16
  var _useEnsuredControl3 = require("../../hooks/useEnsuredControl");
18
17
  var _useExternRef = require("../../hooks/useExternRef");
19
- var _usePlatform = require("../../hooks/usePlatform");
20
18
  var _adaptivity = require("../../lib/adaptivity");
21
19
  var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
22
20
  var _DropdownIcon = require("../DropdownIcon/DropdownIcon");
@@ -47,7 +45,6 @@ var NativeSelect = function NativeSelect(_ref) {
47
45
  onChangeProp = _ref.onChange,
48
46
  valueProp = _ref.value,
49
47
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
50
- var platform = (0, _usePlatform.usePlatform)();
51
48
  var _React$useState = React.useState(''),
52
49
  _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
53
50
  title = _React$useState2[0],
@@ -79,7 +76,7 @@ var NativeSelect = function NativeSelect(_ref) {
79
76
  }, [value, children]);
80
77
  return /*#__PURE__*/React.createElement(_FormField.FormField, {
81
78
  Component: "label",
82
- className: (0, _vkjs.classNames)("vkuiSelect", (0, _getPlatformClassName.getPlatformClassName)("vkuiSelect", platform), empty && "vkuiSelect--empty", multiline && "vkuiSelect--multiline", align && styles["Select--align-".concat(align)], sizeY !== _adaptivity.SizeType.REGULAR && sizeYClassNames[sizeY], className),
79
+ className: (0, _vkjs.classNames)("vkuiSelect", empty && "vkuiSelect--empty", multiline && "vkuiSelect--multiline", align && styles["Select--align-".concat(align)], sizeY !== _adaptivity.SizeType.REGULAR && sizeYClassNames[sizeY], className),
83
80
  style: style,
84
81
  getRootRef: getRootRef,
85
82
  disabled: disabled,
@@ -1 +1 @@
1
- {"version":3,"file":"NativeSelect.js","names":["sizeYClassNames","none","SizeType","COMPACT","NativeSelect","style","defaultValue","align","placeholder","children","className","getRef","getRootRef","disabled","multiline","selectType","status","onChangeProp","onChange","valueProp","value","restProps","platform","usePlatform","React","useState","title","setTitle","empty","setEmpty","useEnsuredControl","selectRef","useExternRef","useAdaptivity","sizeY","useIsomorphicLayoutEffect","selectedOption","current","options","selectedIndex","text","classNames","getPlatformClassName","styles","REGULAR"],"sources":["../../../../src/components/NativeSelect/NativeSelect.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useEnsuredControl } from '../../hooks/useEnsuredControl';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { DropdownIcon } from '../DropdownIcon/DropdownIcon';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport type { SelectType } from '../Select/Select';\nimport { SelectTypography } from '../SelectTypography/SelectTypography';\nimport styles from '../Select/Select.module.css';\n\nconst sizeYClassNames = {\n none: styles['Select--sizeY-none'],\n [SizeType.COMPACT]: styles['Select--sizeY-compact'],\n};\n\nexport interface NativeSelectProps\n extends React.SelectHTMLAttributes<HTMLSelectElement>,\n HasRef<HTMLSelectElement>,\n HasRootRef<HTMLLabelElement>,\n HasAlign,\n Pick<FormFieldProps, 'status'> {\n placeholder?: string;\n multiline?: boolean;\n selectType?: SelectType;\n}\n\nexport interface SelectState {\n value?: React.SelectHTMLAttributes<HTMLSelectElement>['value'];\n title?: string;\n notSelected?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/NativeSelect\n */\nconst NativeSelect = ({\n style,\n defaultValue = '',\n align,\n placeholder,\n children,\n className,\n getRef,\n getRootRef,\n disabled,\n multiline,\n selectType = 'default',\n status,\n onChange: onChangeProp,\n value: valueProp,\n ...restProps\n}: NativeSelectProps) => {\n const platform = usePlatform();\n const [title, setTitle] = React.useState('');\n const [empty, setEmpty] = React.useState(false);\n const [value, onChange] = useEnsuredControl({\n defaultValue,\n disabled,\n onChange: onChangeProp,\n value: valueProp,\n });\n const selectRef = useExternRef(getRef);\n const { sizeY = 'none' } = useAdaptivity();\n\n useIsomorphicLayoutEffect(() => {\n const selectedOption = selectRef.current?.options[selectRef.current.selectedIndex];\n if (selectedOption) {\n setTitle(selectedOption.text);\n setEmpty(selectedOption.value === '' && placeholder != null);\n }\n }, [value, children]);\n\n return (\n <FormField\n Component=\"label\"\n className={classNames(\n styles['Select'],\n getPlatformClassName(styles['Select'], platform),\n empty && styles['Select--empty'],\n multiline && styles['Select--multiline'],\n align && styles[`Select--align-${align}`],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n className,\n )}\n style={style}\n getRootRef={getRootRef}\n disabled={disabled}\n after={<DropdownIcon />}\n status={status}\n >\n <select\n {...restProps}\n disabled={disabled}\n className={styles['Select__el']}\n onChange={onChange}\n value={value}\n ref={selectRef}\n >\n {placeholder && <option value=\"\">{placeholder}</option>}\n {children}\n </select>\n <div className={styles['Select__container']}>\n <SelectTypography className={styles['Select__title']} selectType={selectType}>\n {title}\n </SelectTypography>\n </div>\n </FormField>\n );\n};\n\nexport { NativeSelect };\n"],"mappings":"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"}
1
+ {"version":3,"file":"NativeSelect.js","names":["sizeYClassNames","none","SizeType","COMPACT","NativeSelect","style","defaultValue","align","placeholder","children","className","getRef","getRootRef","disabled","multiline","selectType","status","onChangeProp","onChange","valueProp","value","restProps","React","useState","title","setTitle","empty","setEmpty","useEnsuredControl","selectRef","useExternRef","useAdaptivity","sizeY","useIsomorphicLayoutEffect","selectedOption","current","options","selectedIndex","text","classNames","styles","REGULAR"],"sources":["../../../../src/components/NativeSelect/NativeSelect.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useEnsuredControl } from '../../hooks/useEnsuredControl';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { DropdownIcon } from '../DropdownIcon/DropdownIcon';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport type { SelectType } from '../Select/Select';\nimport { SelectTypography } from '../SelectTypography/SelectTypography';\nimport styles from '../Select/Select.module.css';\n\nconst sizeYClassNames = {\n none: styles['Select--sizeY-none'],\n [SizeType.COMPACT]: styles['Select--sizeY-compact'],\n};\n\nexport interface NativeSelectProps\n extends React.SelectHTMLAttributes<HTMLSelectElement>,\n HasRef<HTMLSelectElement>,\n HasRootRef<HTMLLabelElement>,\n HasAlign,\n Pick<FormFieldProps, 'status'> {\n placeholder?: string;\n multiline?: boolean;\n selectType?: SelectType;\n}\n\nexport interface SelectState {\n value?: React.SelectHTMLAttributes<HTMLSelectElement>['value'];\n title?: string;\n notSelected?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/NativeSelect\n */\nconst NativeSelect = ({\n style,\n defaultValue = '',\n align,\n placeholder,\n children,\n className,\n getRef,\n getRootRef,\n disabled,\n multiline,\n selectType = 'default',\n status,\n onChange: onChangeProp,\n value: valueProp,\n ...restProps\n}: NativeSelectProps) => {\n const [title, setTitle] = React.useState('');\n const [empty, setEmpty] = React.useState(false);\n const [value, onChange] = useEnsuredControl({\n defaultValue,\n disabled,\n onChange: onChangeProp,\n value: valueProp,\n });\n const selectRef = useExternRef(getRef);\n const { sizeY = 'none' } = useAdaptivity();\n\n useIsomorphicLayoutEffect(() => {\n const selectedOption = selectRef.current?.options[selectRef.current.selectedIndex];\n if (selectedOption) {\n setTitle(selectedOption.text);\n setEmpty(selectedOption.value === '' && placeholder != null);\n }\n }, [value, children]);\n\n return (\n <FormField\n Component=\"label\"\n className={classNames(\n styles['Select'],\n empty && styles['Select--empty'],\n multiline && styles['Select--multiline'],\n align && styles[`Select--align-${align}`],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n className,\n )}\n style={style}\n getRootRef={getRootRef}\n disabled={disabled}\n after={<DropdownIcon />}\n status={status}\n >\n <select\n {...restProps}\n disabled={disabled}\n className={styles['Select__el']}\n onChange={onChange}\n value={value}\n ref={selectRef}\n >\n {placeholder && <option value=\"\">{placeholder}</option>}\n {children}\n </select>\n <div className={styles['Select__container']}>\n <SelectTypography className={styles['Select__title']} selectType={selectType}>\n {title}\n </SelectTypography>\n </div>\n </FormField>\n );\n};\n\nexport { NativeSelect };\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAAwE;AAGxE,IAAMA,eAAe;EACnBC,IAAI;AAA8B,GACjCC,oBAAQ,CAACC,OAAO,8BAClB;AAmBD;AACA;AACA;AACA,IAAMC,YAAY,GAAG,SAAfA,YAAY,OAgBO;EAAA,IAfvBC,KAAK,QAALA,KAAK;IAAA,yBACLC,YAAY;IAAZA,YAAY,kCAAG,EAAE;IACjBC,KAAK,QAALA,KAAK;IACLC,WAAW,QAAXA,WAAW;IACXC,QAAQ,QAARA,QAAQ;IACRC,SAAS,QAATA,SAAS;IACTC,MAAM,QAANA,MAAM;IACNC,UAAU,QAAVA,UAAU;IACVC,QAAQ,QAARA,QAAQ;IACRC,SAAS,QAATA,SAAS;IAAA,uBACTC,UAAU;IAAVA,UAAU,gCAAG,SAAS;IACtBC,MAAM,QAANA,MAAM;IACIC,YAAY,QAAtBC,QAAQ;IACDC,SAAS,QAAhBC,KAAK;IACFC,SAAS;EAEZ,sBAA0BC,KAAK,CAACC,QAAQ,CAAC,EAAE,CAAC;IAAA;IAArCC,KAAK;IAAEC,QAAQ;EACtB,uBAA0BH,KAAK,CAACC,QAAQ,CAAC,KAAK,CAAC;IAAA;IAAxCG,KAAK;IAAEC,QAAQ;EACtB,yBAA0B,IAAAC,qCAAiB,EAAC;MAC1CtB,YAAY,EAAZA,YAAY;MACZO,QAAQ,EAARA,QAAQ;MACRK,QAAQ,EAAED,YAAY;MACtBG,KAAK,EAAED;IACT,CAAC,CAAC;IAAA;IALKC,KAAK;IAAEF,QAAQ;EAMtB,IAAMW,SAAS,GAAG,IAAAC,0BAAY,EAACnB,MAAM,CAAC;EACtC,qBAA2B,IAAAoB,6BAAa,GAAE;IAAA,sCAAlCC,KAAK;IAALA,KAAK,qCAAG,MAAM;EAEtB,IAAAC,oDAAyB,EAAC,YAAM;IAAA;IAC9B,IAAMC,cAAc,yBAAGL,SAAS,CAACM,OAAO,uDAAjB,mBAAmBC,OAAO,CAACP,SAAS,CAACM,OAAO,CAACE,aAAa,CAAC;IAClF,IAAIH,cAAc,EAAE;MAClBT,QAAQ,CAACS,cAAc,CAACI,IAAI,CAAC;MAC7BX,QAAQ,CAACO,cAAc,CAACd,KAAK,KAAK,EAAE,IAAIZ,WAAW,IAAI,IAAI,CAAC;IAC9D;EACF,CAAC,EAAE,CAACY,KAAK,EAAEX,QAAQ,CAAC,CAAC;EAErB,oBACE,oBAAC,oBAAS;IACR,SAAS,EAAC,OAAO;IACjB,SAAS,EAAE,IAAA8B,gBAAU,gBAEnBb,KAAK,uBAA2B,EAChCZ,SAAS,2BAA+B,EACxCP,KAAK,IAAIiC,MAAM,yBAAkBjC,KAAK,EAAG,EACzCyB,KAAK,KAAK9B,oBAAQ,CAACuC,OAAO,IAAIzC,eAAe,CAACgC,KAAK,CAAC,EACpDtB,SAAS,CACT;IACF,KAAK,EAAEL,KAAM;IACb,UAAU,EAAEO,UAAW;IACvB,QAAQ,EAAEC,QAAS;IACnB,KAAK,eAAE,oBAAC,0BAAY,OAAI;IACxB,MAAM,EAAEG;EAAO,gBAEf,yDACMK,SAAS;IACb,QAAQ,EAAER,QAAS;IACnB,SAAS,kBAAuB;IAChC,QAAQ,EAAEK,QAAS;IACnB,KAAK,EAAEE,KAAM;IACb,GAAG,EAAES;EAAU,IAEdrB,WAAW,iBAAI;IAAQ,KAAK,EAAC;EAAE,GAAEA,WAAW,CAAU,EACtDC,QAAQ,CACF,eACT;IAAK,SAAS;EAA8B,gBAC1C,oBAAC,kCAAgB;IAAC,SAAS,qBAA0B;IAAC,UAAU,EAAEM;EAAW,GAC1ES,KAAK,CACW,CACf,CACI;AAEhB,CAAC;AAAC;AAAA;EAAA;EAAA;EAAA;AAAA"}
@@ -23,16 +23,11 @@ var _Spacing = require("../Spacing/Spacing");
23
23
  var _TooltipContainer = require("../Tooltip/TooltipContainer");
24
24
  var _Text = require("../Typography/Text/Text");
25
25
  var _excluded = ["before", "children", "after", "separator", "visor", "transparent", "shadow", "getRef", "getRootRef", "fixed", "className"];
26
- function getPlatformClassName(platform) {
27
- switch (platform) {
28
- case 'ios':
29
- return "vkuiPanelHeader--ios";
30
- case 'vkcom':
31
- return "vkuiPanelHeader--vkcom";
32
- default:
33
- return "vkuiPanelHeader--android";
34
- }
35
- }
26
+ var platformClassNames = {
27
+ ios: "vkuiPanelHeader--ios",
28
+ android: "vkuiPanelHeader--android",
29
+ vkcom: "vkuiPanelHeader--vkcom"
30
+ };
36
31
  var sizeXClassNames = {
37
32
  none: "vkuiPanelHeader--sizeX-none",
38
33
  regular: "vkuiPanelHeader--sizeX-regular"
@@ -97,7 +92,7 @@ var PanelHeader = function PanelHeader(_ref2) {
97
92
  adaptiveSizeX = _useAdaptivityConditi.sizeX;
98
93
  var isFixed = fixed !== undefined ? fixed : platform !== _platform.Platform.VKCOM;
99
94
  return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, restProps, {
100
- className: (0, _vkjs.classNames)("vkuiPanelHeader", getPlatformClassName(platform), transparent && "vkuiPanelHeader--trnsp", shadow && "vkuiPanelHeader--shadow", visor && "vkuiPanelHeader--vis", separator && visor && "vkuiPanelHeader--sep", webviewType === _ConfigProviderContext.WebviewType.VKAPPS && !isInsideModal && "vkuiPanelHeader--vkapps", !before && "vkuiPanelHeader--no-before", !after && "vkuiPanelHeader--no-after", isFixed && "vkuiPanelHeader--fixed", sizeX !== _adaptivity.SizeType.COMPACT && sizeXClassNames[sizeX], className),
95
+ className: (0, _vkjs.classNames)("vkuiPanelHeader", platformClassNames.hasOwnProperty(platform) ? platformClassNames[platform] : platformClassNames.android, transparent && "vkuiPanelHeader--trnsp", shadow && "vkuiPanelHeader--shadow", visor && "vkuiPanelHeader--vis", separator && visor && "vkuiPanelHeader--sep", webviewType === _ConfigProviderContext.WebviewType.VKAPPS && !isInsideModal && "vkuiPanelHeader--vkapps", !before && "vkuiPanelHeader--no-before", !after && "vkuiPanelHeader--no-after", isFixed && "vkuiPanelHeader--fixed", sizeX !== _adaptivity.SizeType.COMPACT && sizeXClassNames[sizeX], className),
101
96
  ref: isFixed ? getRootRef : getRef
102
97
  }), isFixed ? /*#__PURE__*/React.createElement(_FixedLayout.FixedLayout, {
103
98
  className: "vkuiPanelHeader__fixed",
@@ -1 +1 @@
1
- {"version":3,"file":"PanelHeader.js","names":["getPlatformClassName","platform","sizeXClassNames","none","regular","PanelHeaderIn","before","after","separator","children","useConfigProvider","webviewType","React","useContext","ModalRootContext","isInsideModal","usePlatform","Platform","VKCOM","WebviewType","INTERNAL","PanelHeader","visor","transparent","shadow","getRef","getRootRef","fixed","className","restProps","useAdaptivity","sizeX","useAdaptivityConditionalRender","adaptiveSizeX","isFixed","undefined","classNames","VKAPPS","SizeType","COMPACT","compact"],"sources":["../../../../src/components/PanelHeader/PanelHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useAdaptivityConditionalRender } from '../../hooks/useAdaptivityConditionalRender';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { HasRef, HasRootRef } from '../../types';\nimport { useConfigProvider, WebviewType } from '../ConfigProvider/ConfigProviderContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { ModalRootContext } from '../ModalRoot/ModalRootContext';\nimport { Separator } from '../Separator/Separator';\nimport { Spacing } from '../Spacing/Spacing';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './PanelHeader.module.css';\n\nfunction getPlatformClassName(platform: string): string {\n switch (platform) {\n case 'ios':\n return styles['PanelHeader--ios'];\n case 'vkcom':\n return styles['PanelHeader--vkcom'];\n default:\n return styles['PanelHeader--android'];\n }\n}\n\nconst sizeXClassNames = {\n none: styles['PanelHeader--sizeX-none'],\n regular: styles['PanelHeader--sizeX-regular'],\n};\n\nexport interface PanelHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n before?: React.ReactNode;\n after?: React.ReactNode;\n separator?: boolean;\n transparent?: boolean;\n shadow?: boolean;\n /**\n * Если `false`, то шапка будет нулевой высоты и контент панели \"залезет\" под неё\n */\n visor?: boolean;\n /**\n * Если `false`, то шапка будет в потоке. По умолчанию `true`, но если платформа vkcom, то по умолчанию `false`.\n */\n fixed?: boolean;\n}\n\nconst PanelHeaderIn = ({ before, after, separator, children }: PanelHeaderProps) => {\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const platform = usePlatform();\n\n return (\n <React.Fragment>\n <TooltipContainer fixed className={styles['PanelHeader__in']}>\n <div className={styles['PanelHeader__before']}>{before}</div>\n <div className={styles['PanelHeader__content']}>\n {platform === Platform.VKCOM ? (\n <Text weight=\"2\">{children}</Text>\n ) : (\n <span className={styles['PanelHeader__content-in']}>{children}</span>\n )}\n </div>\n <div className={styles['PanelHeader__after']}>\n {(webviewType === WebviewType.INTERNAL || isInsideModal) && after}\n </div>\n </TooltipContainer>\n {separator && platform === Platform.VKCOM && (\n <Separator className={styles['PanelHeader__separator']} wide />\n )}\n </React.Fragment>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeader\n */\nexport const PanelHeader = ({\n before,\n children,\n after,\n separator = true,\n visor = true,\n transparent = false,\n shadow,\n getRef,\n getRootRef,\n fixed,\n className,\n ...restProps\n}: PanelHeaderProps) => {\n const platform = usePlatform();\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const { sizeX = 'none' } = useAdaptivity();\n const { sizeX: adaptiveSizeX } = useAdaptivityConditionalRender();\n let isFixed = fixed !== undefined ? fixed : platform !== Platform.VKCOM;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['PanelHeader'],\n getPlatformClassName(platform),\n transparent && styles['PanelHeader--trnsp'],\n shadow && styles['PanelHeader--shadow'],\n visor && styles['PanelHeader--vis'],\n separator && visor && styles['PanelHeader--sep'],\n webviewType === WebviewType.VKAPPS && !isInsideModal && styles['PanelHeader--vkapps'],\n !before && styles['PanelHeader--no-before'],\n !after && styles['PanelHeader--no-after'],\n isFixed && styles['PanelHeader--fixed'],\n sizeX !== SizeType.COMPACT && sizeXClassNames[sizeX],\n className,\n )}\n ref={isFixed ? getRootRef : getRef}\n >\n {isFixed ? (\n <FixedLayout className={styles['PanelHeader__fixed']} vertical=\"top\" getRootRef={getRef}>\n <PanelHeaderIn before={before} after={after} separator={separator}>\n {children}\n </PanelHeaderIn>\n </FixedLayout>\n ) : (\n <PanelHeaderIn before={before} after={after} separator={separator}>\n {children}\n </PanelHeaderIn>\n )}\n {separator && visor && platform !== Platform.VKCOM && (\n <React.Fragment>\n {adaptiveSizeX.compact && <Separator className={adaptiveSizeX.compact.className} />}\n {adaptiveSizeX.regular && (\n <Spacing className={adaptiveSizeX.regular.className} size={16} />\n )}\n </React.Fragment>\n )}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAA+C;AAG/C,SAASA,oBAAoB,CAACC,QAAgB,EAAU;EACtD,QAAQA,QAAQ;IACd,KAAK,KAAK;MACR;IACF,KAAK,OAAO;MACV;IACF;MACE;EAAsC;AAE5C;AAEA,IAAMC,eAAe,GAAG;EACtBC,IAAI,+BAAmC;EACvCC,OAAO;AACT,CAAC;AAqBD,IAAMC,aAAa,GAAG,SAAhBA,aAAa,OAAiE;EAAA,IAA3DC,MAAM,QAANA,MAAM;IAAEC,KAAK,QAALA,KAAK;IAAEC,SAAS,QAATA,SAAS;IAAEC,QAAQ,QAARA,QAAQ;EACzD,yBAAwB,IAAAC,wCAAiB,GAAE;IAAnCC,WAAW,sBAAXA,WAAW;EACnB,wBAA0BC,KAAK,CAACC,UAAU,CAACC,kCAAgB,CAAC;IAApDC,aAAa,qBAAbA,aAAa;EACrB,IAAMd,QAAQ,GAAG,IAAAe,wBAAW,GAAE;EAE9B,oBACE,oBAAC,KAAK,CAAC,QAAQ,qBACb,oBAAC,kCAAgB;IAAC,KAAK;IAAC,SAAS;EAA4B,gBAC3D;IAAK,SAAS;EAAgC,GAAEV,MAAM,CAAO,eAC7D;IAAK,SAAS;EAAiC,GAC5CL,QAAQ,KAAKgB,kBAAQ,CAACC,KAAK,gBAC1B,oBAAC,UAAI;IAAC,MAAM,EAAC;EAAG,GAAET,QAAQ,CAAQ,gBAElC;IAAM,SAAS;EAAoC,GAAEA,QAAQ,CAC9D,CACG,eACN;IAAK,SAAS;EAA+B,GAC1C,CAACE,WAAW,KAAKQ,kCAAW,CAACC,QAAQ,IAAIL,aAAa,KAAKR,KAAK,CAC7D,CACW,EAClBC,SAAS,IAAIP,QAAQ,KAAKgB,kBAAQ,CAACC,KAAK,iBACvC,oBAAC,oBAAS;IAAC,SAAS,8BAAmC;IAAC,IAAI;EAAA,EAC7D,CACc;AAErB,CAAC;;AAED;AACA;AACA;AACO,IAAMG,WAAW,GAAG,SAAdA,WAAW,QAaA;EAAA,IAZtBf,MAAM,SAANA,MAAM;IACNG,QAAQ,SAARA,QAAQ;IACRF,KAAK,SAALA,KAAK;IAAA,wBACLC,SAAS;IAATA,SAAS,gCAAG,IAAI;IAAA,oBAChBc,KAAK;IAALA,KAAK,4BAAG,IAAI;IAAA,0BACZC,WAAW;IAAXA,WAAW,kCAAG,KAAK;IACnBC,MAAM,SAANA,MAAM;IACNC,MAAM,SAANA,MAAM;IACNC,UAAU,SAAVA,UAAU;IACVC,KAAK,SAALA,KAAK;IACLC,SAAS,SAATA,SAAS;IACNC,SAAS;EAEZ,IAAM5B,QAAQ,GAAG,IAAAe,wBAAW,GAAE;EAC9B,0BAAwB,IAAAN,wCAAiB,GAAE;IAAnCC,WAAW,uBAAXA,WAAW;EACnB,yBAA0BC,KAAK,CAACC,UAAU,CAACC,kCAAgB,CAAC;IAApDC,aAAa,sBAAbA,aAAa;EACrB,qBAA2B,IAAAe,6BAAa,GAAE;IAAA,sCAAlCC,KAAK;IAALA,KAAK,qCAAG,MAAM;EACtB,4BAAiC,IAAAC,8DAA8B,GAAE;IAAlDC,aAAa,yBAApBF,KAAK;EACb,IAAIG,OAAO,GAAGP,KAAK,KAAKQ,SAAS,GAAGR,KAAK,GAAG1B,QAAQ,KAAKgB,kBAAQ,CAACC,KAAK;EAEvE,oBACE,sDACMW,SAAS;IACb,SAAS,EAAE,IAAAO,gBAAU,qBAEnBpC,oBAAoB,CAACC,QAAQ,CAAC,EAC9BsB,WAAW,4BAAgC,EAC3CC,MAAM,6BAAiC,EACvCF,KAAK,0BAA8B,EACnCd,SAAS,IAAIc,KAAK,0BAA8B,EAChDX,WAAW,KAAKQ,kCAAW,CAACkB,MAAM,IAAI,CAACtB,aAAa,6BAAiC,EACrF,CAACT,MAAM,gCAAoC,EAC3C,CAACC,KAAK,+BAAmC,EACzC2B,OAAO,4BAAgC,EACvCH,KAAK,KAAKO,oBAAQ,CAACC,OAAO,IAAIrC,eAAe,CAAC6B,KAAK,CAAC,EACpDH,SAAS,CACT;IACF,GAAG,EAAEM,OAAO,GAAGR,UAAU,GAAGD;EAAO,IAElCS,OAAO,gBACN,oBAAC,wBAAW;IAAC,SAAS,0BAA+B;IAAC,QAAQ,EAAC,KAAK;IAAC,UAAU,EAAET;EAAO,gBACtF,oBAAC,aAAa;IAAC,MAAM,EAAEnB,MAAO;IAAC,KAAK,EAAEC,KAAM;IAAC,SAAS,EAAEC;EAAU,GAC/DC,QAAQ,CACK,CACJ,gBAEd,oBAAC,aAAa;IAAC,MAAM,EAAEH,MAAO;IAAC,KAAK,EAAEC,KAAM;IAAC,SAAS,EAAEC;EAAU,GAC/DC,QAAQ,CAEZ,EACAD,SAAS,IAAIc,KAAK,IAAIrB,QAAQ,KAAKgB,kBAAQ,CAACC,KAAK,iBAChD,oBAAC,KAAK,CAAC,QAAQ,QACZe,aAAa,CAACO,OAAO,iBAAI,oBAAC,oBAAS;IAAC,SAAS,EAAEP,aAAa,CAACO,OAAO,CAACZ;EAAU,EAAG,EAClFK,aAAa,CAAC7B,OAAO,iBACpB,oBAAC,gBAAO;IAAC,SAAS,EAAE6B,aAAa,CAAC7B,OAAO,CAACwB,SAAU;IAAC,IAAI,EAAE;EAAG,EAC/D,CAEJ,CACG;AAEV,CAAC;AAAC"}
1
+ {"version":3,"file":"PanelHeader.js","names":["platformClassNames","ios","android","vkcom","sizeXClassNames","none","regular","PanelHeaderIn","before","after","separator","children","useConfigProvider","webviewType","React","useContext","ModalRootContext","isInsideModal","platform","usePlatform","Platform","VKCOM","WebviewType","INTERNAL","PanelHeader","visor","transparent","shadow","getRef","getRootRef","fixed","className","restProps","useAdaptivity","sizeX","useAdaptivityConditionalRender","adaptiveSizeX","isFixed","undefined","classNames","hasOwnProperty","VKAPPS","SizeType","COMPACT","compact"],"sources":["../../../../src/components/PanelHeader/PanelHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useAdaptivityConditionalRender } from '../../hooks/useAdaptivityConditionalRender';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { HasRef, HasRootRef } from '../../types';\nimport { useConfigProvider, WebviewType } from '../ConfigProvider/ConfigProviderContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { ModalRootContext } from '../ModalRoot/ModalRootContext';\nimport { Separator } from '../Separator/Separator';\nimport { Spacing } from '../Spacing/Spacing';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './PanelHeader.module.css';\n\nconst platformClassNames = {\n ios: styles['PanelHeader--ios'],\n android: styles['PanelHeader--android'],\n vkcom: styles['PanelHeader--vkcom'],\n};\n\nconst sizeXClassNames = {\n none: styles['PanelHeader--sizeX-none'],\n regular: styles['PanelHeader--sizeX-regular'],\n};\n\nexport interface PanelHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n before?: React.ReactNode;\n after?: React.ReactNode;\n separator?: boolean;\n transparent?: boolean;\n shadow?: boolean;\n /**\n * Если `false`, то шапка будет нулевой высоты и контент панели \"залезет\" под неё\n */\n visor?: boolean;\n /**\n * Если `false`, то шапка будет в потоке. По умолчанию `true`, но если платформа vkcom, то по умолчанию `false`.\n */\n fixed?: boolean;\n}\n\nconst PanelHeaderIn = ({ before, after, separator, children }: PanelHeaderProps) => {\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const platform = usePlatform();\n\n return (\n <React.Fragment>\n <TooltipContainer fixed className={styles['PanelHeader__in']}>\n <div className={styles['PanelHeader__before']}>{before}</div>\n <div className={styles['PanelHeader__content']}>\n {platform === Platform.VKCOM ? (\n <Text weight=\"2\">{children}</Text>\n ) : (\n <span className={styles['PanelHeader__content-in']}>{children}</span>\n )}\n </div>\n <div className={styles['PanelHeader__after']}>\n {(webviewType === WebviewType.INTERNAL || isInsideModal) && after}\n </div>\n </TooltipContainer>\n {separator && platform === Platform.VKCOM && (\n <Separator className={styles['PanelHeader__separator']} wide />\n )}\n </React.Fragment>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeader\n */\nexport const PanelHeader = ({\n before,\n children,\n after,\n separator = true,\n visor = true,\n transparent = false,\n shadow,\n getRef,\n getRootRef,\n fixed,\n className,\n ...restProps\n}: PanelHeaderProps) => {\n const platform = usePlatform();\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const { sizeX = 'none' } = useAdaptivity();\n const { sizeX: adaptiveSizeX } = useAdaptivityConditionalRender();\n let isFixed = fixed !== undefined ? fixed : platform !== Platform.VKCOM;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['PanelHeader'],\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n transparent && styles['PanelHeader--trnsp'],\n shadow && styles['PanelHeader--shadow'],\n visor && styles['PanelHeader--vis'],\n separator && visor && styles['PanelHeader--sep'],\n webviewType === WebviewType.VKAPPS && !isInsideModal && styles['PanelHeader--vkapps'],\n !before && styles['PanelHeader--no-before'],\n !after && styles['PanelHeader--no-after'],\n isFixed && styles['PanelHeader--fixed'],\n sizeX !== SizeType.COMPACT && sizeXClassNames[sizeX],\n className,\n )}\n ref={isFixed ? getRootRef : getRef}\n >\n {isFixed ? (\n <FixedLayout className={styles['PanelHeader__fixed']} vertical=\"top\" getRootRef={getRef}>\n <PanelHeaderIn before={before} after={after} separator={separator}>\n {children}\n </PanelHeaderIn>\n </FixedLayout>\n ) : (\n <PanelHeaderIn before={before} after={after} separator={separator}>\n {children}\n </PanelHeaderIn>\n )}\n {separator && visor && platform !== Platform.VKCOM && (\n <React.Fragment>\n {adaptiveSizeX.compact && <Separator className={adaptiveSizeX.compact.className} />}\n {adaptiveSizeX.regular && (\n <Spacing className={adaptiveSizeX.regular.className} size={16} />\n )}\n </React.Fragment>\n )}\n </div>\n );\n};\n"],"mappings":"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"}