@salutejs/plasma-new-hope 0.131.0-canary.1390.10557448117.0 → 0.131.0-canary.1392.10557537816.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (178) hide show
  1. package/cjs/components/Segment/tokens.js +15 -1
  2. package/cjs/components/Segment/tokens.js.map +1 -1
  3. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.css +10 -4
  4. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +160 -83
  5. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  6. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +37 -1
  7. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  8. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +8 -0
  9. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +9 -0
  10. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +1 -0
  11. package/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +1 -0
  12. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.css +7 -3
  13. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
  14. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  15. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +31 -2
  16. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  17. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +6 -0
  18. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  19. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  20. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +1 -0
  21. package/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  22. package/cjs/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  23. package/cjs/components/_Icon/Icon.assets/DisclosureDown.js +22 -0
  24. package/cjs/components/_Icon/Icon.assets/DisclosureDown.js.map +1 -0
  25. package/cjs/components/_Icon/Icon.assets/DisclosureUp.js +22 -0
  26. package/cjs/components/_Icon/Icon.assets/DisclosureUp.js.map +1 -0
  27. package/cjs/components/_Icon/Icons/IconDisclosureDown.js +23 -0
  28. package/cjs/components/_Icon/Icons/IconDisclosureDown.js.map +1 -0
  29. package/cjs/components/_Icon/Icons/IconDisclosureUp.js +23 -0
  30. package/cjs/components/_Icon/Icons/IconDisclosureUp.js.map +1 -0
  31. package/cjs/index.css +17 -7
  32. package/emotion/cjs/components/Segment/README.md +61 -0
  33. package/emotion/cjs/components/Segment/tokens.js +15 -1
  34. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +156 -82
  35. package/emotion/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +25 -17
  36. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +10 -0
  37. package/emotion/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  38. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
  39. package/emotion/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +28 -6
  40. package/emotion/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  41. package/emotion/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  42. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureDown.js +21 -0
  43. package/emotion/cjs/components/_Icon/Icon.assets/DisclosureUp.js +21 -0
  44. package/emotion/cjs/components/_Icon/Icons/IconDisclosureDown.js +22 -0
  45. package/emotion/cjs/components/_Icon/Icons/IconDisclosureUp.js +22 -0
  46. package/emotion/cjs/components/_Icon/index.js +14 -0
  47. package/emotion/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  48. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +12 -9
  49. package/emotion/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  50. package/emotion/es/components/Segment/README.md +61 -0
  51. package/emotion/es/components/Segment/tokens.js +15 -1
  52. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +159 -85
  53. package/emotion/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +25 -17
  54. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +4 -0
  55. package/emotion/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  56. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
  57. package/emotion/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +27 -5
  58. package/emotion/es/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  59. package/emotion/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  60. package/emotion/es/components/_Icon/Icon.assets/DisclosureDown.js +14 -0
  61. package/emotion/es/components/_Icon/Icon.assets/DisclosureUp.js +14 -0
  62. package/emotion/es/components/_Icon/Icons/IconDisclosureDown.js +15 -0
  63. package/emotion/es/components/_Icon/Icons/IconDisclosureUp.js +15 -0
  64. package/emotion/es/components/_Icon/index.js +2 -0
  65. package/emotion/es/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  66. package/emotion/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +12 -9
  67. package/emotion/es/examples/plasma_web/components/Segment/SegmentItem.config.js +9 -9
  68. package/es/components/Segment/tokens.js +15 -1
  69. package/es/components/Segment/tokens.js.map +1 -1
  70. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.css +10 -4
  71. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +163 -87
  72. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.js.map +1 -1
  73. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +34 -2
  74. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js.map +1 -1
  75. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_1rr47x4.css +8 -0
  76. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +5 -0
  77. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js.map +1 -0
  78. package/es/components/Segment/ui/SegmentGroup/variations/_vertical/base_11agnr.css +1 -0
  79. package/es/components/Segment/ui/SegmentItem/SegmentItem.css +7 -3
  80. package/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
  81. package/es/components/Segment/ui/SegmentItem/SegmentItem.js.map +1 -1
  82. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +30 -3
  83. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js.map +1 -1
  84. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_f1jpip.css +6 -0
  85. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js +1 -1
  86. package/es/components/Segment/ui/SegmentItem/variations/_view/base.js.map +1 -1
  87. package/es/components/Segment/ui/SegmentItem/variations/_view/base_168a47w.css +1 -0
  88. package/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  89. package/es/components/Tabs/ui/Tabs/Tabs.js.map +1 -1
  90. package/es/components/_Icon/Icon.assets/DisclosureDown.js +18 -0
  91. package/es/components/_Icon/Icon.assets/DisclosureDown.js.map +1 -0
  92. package/es/components/_Icon/Icon.assets/DisclosureUp.js +18 -0
  93. package/es/components/_Icon/Icon.assets/DisclosureUp.js.map +1 -0
  94. package/es/components/_Icon/Icons/IconDisclosureDown.js +19 -0
  95. package/es/components/_Icon/Icons/IconDisclosureDown.js.map +1 -0
  96. package/es/components/_Icon/Icons/IconDisclosureUp.js +19 -0
  97. package/es/components/_Icon/Icons/IconDisclosureUp.js.map +1 -0
  98. package/es/index.css +17 -7
  99. package/package.json +2 -2
  100. package/styled-components/cjs/components/Segment/README.md +61 -0
  101. package/styled-components/cjs/components/Segment/tokens.js +15 -1
  102. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.js +156 -82
  103. package/styled-components/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +16 -4
  104. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +10 -0
  105. package/styled-components/cjs/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  106. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.js +4 -2
  107. package/styled-components/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles.js +23 -5
  108. package/styled-components/cjs/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  109. package/styled-components/cjs/components/Tabs/ui/Tabs/Tabs.js +2 -2
  110. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureDown.js +21 -0
  111. package/styled-components/cjs/components/_Icon/Icon.assets/DisclosureUp.js +21 -0
  112. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureDown.js +22 -0
  113. package/styled-components/cjs/components/_Icon/Icons/IconDisclosureUp.js +22 -0
  114. package/styled-components/cjs/components/_Icon/index.js +14 -0
  115. package/styled-components/cjs/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  116. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentGroup.config.js +7 -4
  117. package/styled-components/cjs/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  118. package/styled-components/es/components/Segment/README.md +61 -0
  119. package/styled-components/es/components/Segment/tokens.js +15 -1
  120. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.js +159 -85
  121. package/styled-components/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles.js +16 -4
  122. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/base.js +4 -0
  123. package/styled-components/es/components/Segment/ui/SegmentGroup/variations/_vertical/tokens.json +1 -0
  124. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.js +5 -3
  125. package/styled-components/es/components/Segment/ui/SegmentItem/SegmentItem.styles.js +22 -4
  126. package/styled-components/es/components/Segment/ui/SegmentItem/variations/_view/base.js +2 -1
  127. package/styled-components/es/components/Tabs/ui/Tabs/Tabs.js +2 -2
  128. package/styled-components/es/components/_Icon/Icon.assets/DisclosureDown.js +14 -0
  129. package/styled-components/es/components/_Icon/Icon.assets/DisclosureUp.js +14 -0
  130. package/styled-components/es/components/_Icon/Icons/IconDisclosureDown.js +15 -0
  131. package/styled-components/es/components/_Icon/Icons/IconDisclosureUp.js +15 -0
  132. package/styled-components/es/components/_Icon/index.js +2 -0
  133. package/styled-components/es/examples/plasma_web/components/Segment/Segment.stories.tsx +143 -2
  134. package/styled-components/es/examples/plasma_web/components/Segment/SegmentGroup.config.js +7 -4
  135. package/styled-components/es/examples/plasma_web/components/Segment/SegmentItem.config.js +8 -8
  136. package/types/components/Segment/tokens.d.ts +14 -0
  137. package/types/components/Segment/tokens.d.ts.map +1 -1
  138. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts +7 -0
  139. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.d.ts.map +1 -1
  140. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts +12 -0
  141. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.styles.d.ts.map +1 -1
  142. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts +5 -1
  143. package/types/components/Segment/ui/SegmentGroup/SegmentGroup.types.d.ts.map +1 -1
  144. package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts +2 -0
  145. package/types/components/Segment/ui/SegmentGroup/variations/_vertical/base.d.ts.map +1 -0
  146. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts +4 -0
  147. package/types/components/Segment/ui/SegmentItem/SegmentItem.d.ts.map +1 -1
  148. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts +9 -1
  149. package/types/components/Segment/ui/SegmentItem/SegmentItem.styles.d.ts.map +1 -1
  150. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts +8 -0
  151. package/types/components/Segment/ui/SegmentItem/SegmentItem.types.d.ts.map +1 -1
  152. package/types/components/Segment/ui/SegmentItem/variations/_view/base.d.ts.map +1 -1
  153. package/types/components/Tabs/ui/Tabs/Tabs.d.ts.map +1 -1
  154. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts +4 -0
  155. package/types/components/_Icon/Icon.assets/DisclosureDown.d.ts.map +1 -0
  156. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts +4 -0
  157. package/types/components/_Icon/Icon.assets/DisclosureUp.d.ts.map +1 -0
  158. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts +4 -0
  159. package/types/components/_Icon/Icons/IconDisclosureDown.d.ts.map +1 -0
  160. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts +4 -0
  161. package/types/components/_Icon/Icons/IconDisclosureUp.d.ts.map +1 -0
  162. package/types/components/_Icon/index.d.ts +2 -0
  163. package/types/components/_Icon/index.d.ts.map +1 -1
  164. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts +3 -0
  165. package/types/examples/plasma_b2c/components/Segment/Segment.d.ts.map +1 -1
  166. package/types/examples/plasma_web/components/Segment/Segment.d.ts +6 -0
  167. package/types/examples/plasma_web/components/Segment/Segment.d.ts.map +1 -1
  168. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts +3 -0
  169. package/types/examples/plasma_web/components/Segment/SegmentGroup.config.d.ts.map +1 -1
  170. package/types/examples/plasma_web/components/Segment/SegmentItem.config.d.ts.map +1 -1
  171. package/types/examples/sds_engineer/components/Segment/Segment.d.ts +3 -0
  172. package/types/examples/sds_engineer/components/Segment/Segment.d.ts.map +1 -1
  173. package/cjs/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +0 -4
  174. package/cjs/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +0 -2
  175. package/cjs/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +0 -1
  176. package/es/components/Segment/ui/SegmentGroup/SegmentGroup.styles_m9i9p0.css +0 -4
  177. package/es/components/Segment/ui/SegmentItem/SegmentItem.styles_18h1p52.css +0 -2
  178. package/es/components/Segment/ui/SegmentItem/variations/_view/base_1m1u2ys.css +0 -1
@@ -4,7 +4,7 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.segmentGroupRoot = exports.segmentGroupConfig = void 0;
7
+ exports.segmentGroupRoot = exports.segmentGroupConfig = exports.getChildNodes = void 0;
8
8
  var _react = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("react"));
9
9
  var _plasmaCore = /*#__PURE__*/require("@salutejs/plasma-core");
10
10
  var _Icon = /*#__PURE__*/require("../../../_Icon");
@@ -17,8 +17,9 @@ var _base3 = /*#__PURE__*/require("./variations/_disabled/base");
17
17
  var _base4 = /*#__PURE__*/require("./variations/_pilled/base");
18
18
  var _base5 = /*#__PURE__*/require("./variations/_filledBackgound/base");
19
19
  var _base6 = /*#__PURE__*/require("./variations/_stretch/base");
20
+ var _base7 = /*#__PURE__*/require("./variations/_vertical/base");
20
21
  var _SegmentGroup = /*#__PURE__*/require("./SegmentGroup.styles");
21
- var _excluded = ["id", "selectionMode", "pilled", "stretch", "filledBackground", "disabled", "size", "view", "children"];
22
+ var _excluded = ["id", "selectionMode", "pilled", "stretch", "vertical", "filledBackground", "disabled", "size", "view", "children"];
22
23
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
24
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
24
25
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
@@ -30,12 +31,24 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
30
31
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
31
32
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
32
33
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
34
+ var Keys = /*#__PURE__*/function (Keys) {
35
+ Keys[Keys["end"] = 35] = "end";
36
+ Keys[Keys["home"] = 36] = "home";
37
+ Keys[Keys["left"] = 37] = "left";
38
+ Keys[Keys["right"] = 39] = "right";
39
+ return Keys;
40
+ }(Keys || {});
41
+ var getChildNodes = exports.getChildNodes = function getChildNodes(wrapper) {
42
+ var container = wrapper === null || wrapper === void 0 ? void 0 : wrapper.firstChild;
43
+ return container ? Array.from(container === null || container === void 0 ? void 0 : container.childNodes) : [];
44
+ };
33
45
  var segmentGroupRoot = exports.segmentGroupRoot = function segmentGroupRoot(Root) {
34
46
  return /*#__PURE__*/(0, _react.forwardRef)(function (props, outerRef) {
35
47
  var id = props.id,
36
48
  selectionMode = props.selectionMode,
37
49
  pilled = props.pilled,
38
50
  stretch = props.stretch,
51
+ vertical = props.vertical,
39
52
  _props$filledBackgrou = props.filledBackground,
40
53
  filledBackground = _props$filledBackgrou === void 0 ? false : _props$filledBackgrou,
41
54
  _props$disabled = props.disabled,
@@ -44,132 +57,189 @@ var segmentGroupRoot = exports.segmentGroupRoot = function segmentGroupRoot(Root
44
57
  view = props.view,
45
58
  children = props.children,
46
59
  rest = _objectWithoutProperties(props, _excluded);
60
+ var scrollRef = (0, _react.useRef)(null);
61
+ var trackRef = (0, _react.useRef)(null);
62
+ var leftArrowRef = (0, _react.useRef)(null);
47
63
  var _useSegmentInner = (0, _SegmentProvider.useSegmentInner)(),
48
64
  setSelectionMode = _useSegmentInner.setSelectionMode,
49
65
  setDisabledGroup = _useSegmentInner.setDisabledGroup;
50
- var _useState = (0, _react.useState)(0),
66
+ var _useState = (0, _react.useState)(true),
51
67
  _useState2 = _slicedToArray(_useState, 2),
52
- index = _useState2[0],
53
- setIndex = _useState2[1];
54
- var _useState3 = (0, _react.useState)(false),
68
+ firstItemVisible = _useState2[0],
69
+ setFirstItemVisible = _useState2[1];
70
+ var _useState3 = (0, _react.useState)(true),
55
71
  _useState4 = _slicedToArray(_useState3, 2),
56
- firstItemVisible = _useState4[0],
57
- setFirstItemVisible = _useState4[1];
58
- var _useState5 = (0, _react.useState)(false),
59
- _useState6 = _slicedToArray(_useState5, 2),
60
- lastItemVisible = _useState6[0],
61
- setLastItemVisible = _useState6[1];
72
+ lastItemVisible = _useState4[0],
73
+ setLastItemVisible = _useState4[1];
62
74
  var uniqId = (0, _plasmaCore.safeUseId)();
63
75
  var segmentGroupId = id || uniqId;
64
76
  var pilledAttr = view !== 'clear' && pilled;
65
77
  var filledBackgroundAttr = view !== 'clear' && filledBackground;
78
+ var clipScrollClass = !stretch ? _tokens.classes.segmentGroupClipScroll : undefined;
79
+ var clipShowAllClass = stretch ? _tokens.classes.segmentGroupClipShowAll : undefined;
66
80
  var pilledClass = pilledAttr ? _tokens.classes.segmentPilled : undefined;
67
81
  var filledClass = filledBackgroundAttr ? _tokens.classes.segmentGroupFilledBackground : undefined;
68
82
  var stretchClass = firstItemVisible && lastItemVisible && stretch ? _tokens.classes.segmentStretch : undefined;
69
- var items = (_react.Children === null || _react.Children === void 0 ? void 0 : _react.Children.map(children, function (child) {
70
- return child;
71
- })) || [];
83
+ var verticalClass = vertical ? _tokens.classes.segmentVertical : undefined;
72
84
  var onPrev = (0, _react.useCallback)(function () {
73
- !disabled && setIndex(function (prevIndex) {
74
- return prevIndex > 0 ? prevIndex - 1 : 0;
85
+ if (disabled || !scrollRef.current) {
86
+ return;
87
+ }
88
+ var childNodes = getChildNodes(scrollRef.current);
89
+ var scrollLeft = Math.round(scrollRef.current.scrollLeft);
90
+ var firstOverflowingTab = childNodes.slice().reverse().find(function (child) {
91
+ if (!child || child.offsetLeft === undefined) {
92
+ return;
93
+ }
94
+ var tabStartX = child.offsetLeft;
95
+ return tabStartX < scrollLeft;
75
96
  });
76
- }, [disabled]);
97
+ firstOverflowingTab === null || firstOverflowingTab === void 0 || firstOverflowingTab.scrollIntoView({
98
+ block: 'nearest',
99
+ inline: 'nearest'
100
+ });
101
+ }, [disabled, scrollRef]);
77
102
  var onNext = (0, _react.useCallback)(function () {
78
- !disabled && setIndex(function (prevIndex) {
79
- return prevIndex < items.length - 1 ? prevIndex + 1 : prevIndex;
103
+ if (disabled || !scrollRef.current) {
104
+ return;
105
+ }
106
+ var scrollRight = Math.round(scrollRef.current.scrollLeft + scrollRef.current.clientWidth);
107
+ var childNodes = getChildNodes(scrollRef.current);
108
+ var lastOverflowingChild = childNodes.find(function (child) {
109
+ if (!child || child.offsetLeft === undefined) {
110
+ return;
111
+ }
112
+ var tabEndX = child.offsetLeft + child.offsetWidth;
113
+ return tabEndX > scrollRight;
80
114
  });
81
- }, [disabled]);
82
- var onIntersecting = function onIntersecting(setVisible) {
83
- return function (entries) {
84
- /*
85
- * Пробегаемся по элементам на которых есть слушатель события появления.
86
- * Если элемент находится в зоне видимости или выходит из нее, меняем значение флага видимости
87
- */
88
- entries.forEach(function (entry) {
89
- if (entry.isIntersecting) {
90
- setVisible(true);
91
- } else {
92
- setVisible(false);
93
- }
115
+ lastOverflowingChild === null || lastOverflowingChild === void 0 || lastOverflowingChild.scrollIntoView({
116
+ block: 'nearest',
117
+ inline: 'nearest'
118
+ });
119
+ }, [disabled, scrollRef]);
120
+ var onKeyDown = (0, _react.useCallback)(function (event) {
121
+ var childNodes = getChildNodes(scrollRef === null || scrollRef === void 0 ? void 0 : scrollRef.current);
122
+ var index = childNodes.findIndex(function (child) {
123
+ return document.activeElement === child;
124
+ });
125
+ var minIndex = 0;
126
+ var maxIndex = childNodes.length - 1;
127
+ var nextIndex;
128
+ switch (event.keyCode) {
129
+ case Keys.end:
130
+ nextIndex = maxIndex;
131
+ break;
132
+ case Keys.left:
133
+ nextIndex = index > minIndex ? index - 1 : index;
134
+ break;
135
+ case Keys.right:
136
+ nextIndex = index < maxIndex ? index + 1 : index;
137
+ break;
138
+ case Keys.home:
139
+ nextIndex = minIndex;
140
+ break;
141
+ default:
142
+ return;
143
+ }
144
+ if (nextIndex !== index) {
145
+ var _childNodes$nextIndex, _childNodes$nextIndex2;
146
+ event.preventDefault();
147
+ (_childNodes$nextIndex = childNodes[nextIndex]) === null || _childNodes$nextIndex === void 0 || _childNodes$nextIndex.focus();
148
+ (_childNodes$nextIndex2 = childNodes[nextIndex]) === null || _childNodes$nextIndex2 === void 0 || _childNodes$nextIndex2.scrollIntoView({
149
+ block: 'center',
150
+ inline: 'center',
151
+ behavior: 'smooth'
94
152
  });
95
- };
96
- };
97
- var _useCarousel = (0, _plasmaCore.useCarousel)({
98
- index: index,
99
- axis: 'x',
100
- scrollAlign: 'start',
101
- detectActive: true,
102
- debounceMs: 250,
103
- onIndexChange: setIndex
104
- }),
105
- scrollRef = _useCarousel.scrollRef,
106
- trackRef = _useCarousel.trackRef;
153
+ }
154
+ }, []);
155
+ var handleScroll = (0, _react.useCallback)(function (event) {
156
+ event.stopPropagation();
157
+ if (vertical) {
158
+ var maxScrollTop = event.currentTarget.scrollHeight - event.currentTarget.clientHeight;
159
+ var scrollTop = Math.round(event.currentTarget.scrollTop);
160
+ setFirstItemVisible(scrollTop <= 0);
161
+ setLastItemVisible(scrollTop >= maxScrollTop);
162
+ return;
163
+ }
164
+ var maxScrollLeft = event.currentTarget.scrollWidth - event.currentTarget.clientWidth;
165
+ var scrollLeft = Math.round(event.currentTarget.scrollLeft);
166
+ setFirstItemVisible(scrollLeft <= 0);
167
+ setLastItemVisible(scrollLeft >= maxScrollLeft);
168
+ }, [vertical]);
169
+ (0, _react.useEffect)(function () {
170
+ var _scrollRef$current3, _scrollRef$current4;
171
+ if (vertical) {
172
+ var _scrollRef$current, _scrollRef$current2;
173
+ setLastItemVisible(((_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.scrollHeight) === ((_scrollRef$current2 = scrollRef.current) === null || _scrollRef$current2 === void 0 ? void 0 : _scrollRef$current2.clientHeight));
174
+ return;
175
+ }
176
+ setLastItemVisible(((_scrollRef$current3 = scrollRef.current) === null || _scrollRef$current3 === void 0 ? void 0 : _scrollRef$current3.scrollWidth) === ((_scrollRef$current4 = scrollRef.current) === null || _scrollRef$current4 === void 0 ? void 0 : _scrollRef$current4.clientWidth));
177
+ }, [vertical]);
178
+
179
+ // Этот хук компенсирует появление левой/верхней стрелки при прокрутке
180
+ (0, _react.useEffect)(function () {
181
+ if (firstItemVisible || !scrollRef.current || !leftArrowRef.current) {
182
+ return;
183
+ }
184
+ if (vertical) {
185
+ scrollRef.current.scrollTo({
186
+ top: Math.round(scrollRef.current.scrollTop + leftArrowRef.current.clientHeight)
187
+ });
188
+ return;
189
+ }
190
+ scrollRef.current.scrollTo({
191
+ left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth)
192
+ });
193
+ }, [firstItemVisible, vertical]);
107
194
  var PreviousButton = (0, _react.useMemo)(function () {
108
- return /*#__PURE__*/_react["default"].createElement(_SegmentGroup.StyledArrow, {
195
+ var ArrowNode = vertical ? _SegmentGroup.StyledTopArrow : _SegmentGroup.StyledLeftArrow;
196
+ return /*#__PURE__*/_react["default"].createElement(ArrowNode, {
109
197
  type: "button",
110
198
  "aria-label": "\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
111
199
  onClick: onPrev,
112
200
  tabIndex: disabled ? -1 : 0,
113
201
  disabled: disabled
114
- }, /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureLeft, {
202
+ }, vertical ? /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureUp, {
203
+ color: "var(".concat(_tokens.tokens.arrowColor, ")"),
204
+ size: "s"
205
+ }) : /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureLeft, {
115
206
  color: "var(".concat(_tokens.tokens.arrowColor, ")")
116
207
  }));
117
- }, [onPrev]);
208
+ }, [onPrev, vertical]);
118
209
  var NextButton = (0, _react.useMemo)(function () {
119
- return /*#__PURE__*/_react["default"].createElement(_SegmentGroup.StyledArrow, {
210
+ var ArrowNode = vertical ? _SegmentGroup.StyledBottomArrow : _SegmentGroup.StyledRightArrow;
211
+ return /*#__PURE__*/_react["default"].createElement(ArrowNode, {
120
212
  type: "button",
121
213
  "aria-label": "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442",
122
214
  onClick: onNext,
123
215
  tabIndex: disabled ? -1 : 0,
124
216
  disabled: disabled
125
- }, /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureRight, {
217
+ }, vertical ? /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureDown, {
218
+ color: "var(".concat(_tokens.tokens.arrowColor, ")"),
219
+ size: "s"
220
+ }) : /*#__PURE__*/_react["default"].createElement(_Icon.IconDisclosureRight, {
126
221
  color: "var(".concat(_tokens.tokens.arrowColor, ")")
127
222
  }));
128
- }, [onNext]);
223
+ }, [onNext, vertical]);
129
224
  (0, _react.useEffect)(function () {
130
225
  selectionMode && setSelectionMode(selectionMode);
131
226
  setDisabledGroup(disabled);
132
227
  }, [selectionMode, disabled]);
133
- (0, _react.useEffect)(function () {
134
- var _trackRef$current;
135
- // Intersection observer для первого сегмента
136
- var observeFirstItem = new IntersectionObserver(onIntersecting(setFirstItemVisible), {
137
- root: null,
138
- rootMargin: '0px',
139
- threshold: 0.5
140
- });
141
-
142
- // Intersection observer для последнего сегмента
143
- var observeLastItem = new IntersectionObserver(onIntersecting(setLastItemVisible), {
144
- root: null,
145
- rootMargin: '0px',
146
- threshold: 0.5
147
- });
148
-
149
- // получаем список сегментов внутри SegmentGroup
150
- var childrenArray = Array.from(((_trackRef$current = trackRef.current) === null || _trackRef$current === void 0 ? void 0 : _trackRef$current.children) || []);
151
- if (childrenArray.length) {
152
- // подписываемся на событие появление внутри SegmentGroup
153
- observeFirstItem.observe(childrenArray[0]);
154
- observeLastItem.observe(childrenArray[childrenArray.length - 1]);
155
- }
156
- return function () {
157
- // отписываемся от события появления внутри SegmentGroup
158
- observeFirstItem.disconnect();
159
- observeLastItem.disconnect();
160
- };
161
- }, [children]);
162
228
  return /*#__PURE__*/_react["default"].createElement(Root, _extends({
163
229
  view: view,
164
230
  size: size,
231
+ vertical: vertical,
165
232
  id: segmentGroupId,
166
233
  ref: outerRef,
167
234
  filledBackground: filledBackgroundAttr,
168
235
  disabled: disabled,
169
236
  pilled: pilledAttr,
170
- className: (0, _utils.cx)(pilledClass, filledClass, stretchClass)
237
+ className: (0, _utils.cx)(pilledClass, filledClass, stretchClass, verticalClass),
238
+ onKeyDown: onKeyDown
171
239
  }, rest), !firstItemVisible && PreviousButton, /*#__PURE__*/_react["default"].createElement(_SegmentGroup.StyledContentWrapper, {
172
- ref: scrollRef
240
+ className: (0, _utils.cx)(clipScrollClass, clipShowAllClass),
241
+ ref: scrollRef,
242
+ onScroll: handleScroll
173
243
  }, /*#__PURE__*/_react["default"].createElement(_SegmentGroup.StyledContent, {
174
244
  ref: trackRef
175
245
  }, children)), !lastItemVisible && NextButton);
@@ -199,6 +269,10 @@ var segmentGroupConfig = exports.segmentGroupConfig = {
199
269
  css: _base6.base,
200
270
  attrs: true
201
271
  },
272
+ vertical: {
273
+ css: _base7.base,
274
+ attrs: true
275
+ },
202
276
  filledBackground: {
203
277
  css: _base5.base,
204
278
  attrs: true
@@ -4,7 +4,7 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.base = exports.StyledContentWrapper = exports.StyledContent = exports.StyledArrow = void 0;
7
+ exports.base = exports.StyledTopArrow = exports.StyledRightArrow = exports.StyledLeftArrow = exports.StyledContentWrapper = exports.StyledContent = exports.StyledBottomArrow = exports.StyledArrow = void 0;
8
8
  var _styledComponents = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("styled-components"));
9
9
  var _mixins = /*#__PURE__*/require("../../../../mixins");
10
10
  var _tokens = /*#__PURE__*/require("../../tokens");
@@ -18,12 +18,24 @@ var StyledContent = exports.StyledContent = /*#__PURE__*/_styledComponents["defa
18
18
  })(["display:inline-flex;flex-direction:row;align-items:center;"]);
19
19
  var StyledContentWrapper = exports.StyledContentWrapper = /*#__PURE__*/_styledComponents["default"].div.withConfig({
20
20
  componentId: "plasma-new-hope__sc-1kj8wok-1"
21
- })(["position:relative;height:100%;margin:0;padding:0.25rem;::-webkit-scrollbar{display:none;}overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:x mandatory;"]);
21
+ })(["margin:-0.125rem;padding:0.125rem;box-sizing:content-box;position:relative;height:100%;width:100%;display:flex;align-items:center;&.", "{overflow:scroll;scroll-padding:0.25rem;overscroll-behavior:contain;scrollbar-width:none;::-webkit-scrollbar{display:none;}}&.", "{overflow:visible;}"], _tokens.classes.segmentGroupClipScroll, _tokens.classes.segmentGroupClipShowAll);
22
22
  var StyledArrow = exports.StyledArrow = /*#__PURE__*/_styledComponents["default"].button.withConfig({
23
23
  componentId: "plasma-new-hope__sc-1kj8wok-2"
24
- })(["display:flex;cursor:pointer;border:none;background-color:transparent;padding:0;outline:none;", ";&[disabled]{cursor:not-allowed;}"], /*#__PURE__*/(0, _mixins.addFocus)({
24
+ })(["display:flex;cursor:pointer;border:none;background-color:transparent;outline:none;", ";&[disabled]{cursor:not-allowed;}"], /*#__PURE__*/(0, _mixins.addFocus)({
25
25
  outlineSize: '0.063rem',
26
26
  outlineOffset: '-0.125rem',
27
27
  outlineColor: /*#__PURE__*/"var(".concat(_tokens.tokens.outlineFocusColor, ")"),
28
28
  outlineRadius: 'calc(var(--plasma_private-outline-radius) - 0.063rem)'
29
- }));
29
+ }));
30
+ var StyledLeftArrow = exports.StyledLeftArrow = /*#__PURE__*/(0, _styledComponents["default"])(StyledArrow).withConfig({
31
+ componentId: "plasma-new-hope__sc-1kj8wok-3"
32
+ })(["padding:var(", ");padding-right:0;margin-right:0.1875rem;"], _tokens.tokens.groupArrowPadding);
33
+ var StyledRightArrow = exports.StyledRightArrow = /*#__PURE__*/(0, _styledComponents["default"])(StyledArrow).withConfig({
34
+ componentId: "plasma-new-hope__sc-1kj8wok-4"
35
+ })(["padding:var(", ");padding-left:0;margin-left:0.1875rem;"], _tokens.tokens.groupArrowPadding);
36
+ var StyledTopArrow = exports.StyledTopArrow = /*#__PURE__*/(0, _styledComponents["default"])(StyledArrow).withConfig({
37
+ componentId: "plasma-new-hope__sc-1kj8wok-5"
38
+ })(["padding:var(", ");padding-bottom:0;margin-bottom:0.1875rem;"], _tokens.tokens.groupVerticalArrowPadding);
39
+ var StyledBottomArrow = exports.StyledBottomArrow = /*#__PURE__*/(0, _styledComponents["default"])(StyledArrow).withConfig({
40
+ componentId: "plasma-new-hope__sc-1kj8wok-6"
41
+ })(["padding:var(", ");padding-top:0;margin-top:0.1875rem;"], _tokens.tokens.groupVerticalArrowPadding);
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.base = void 0;
7
+ var _styledComponents = /*#__PURE__*/require("styled-components");
8
+ var _tokens = /*#__PURE__*/require("../../../../tokens");
9
+ var _SegmentGroup = /*#__PURE__*/require("../../SegmentGroup.styles");
10
+ var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["&.", "{flex-direction:column;max-height:var(", ");", "{flex-direction:column;}", "{flex-direction:column;}}"], _tokens.classes.segmentVertical, _tokens.tokens.groupVerticalHeight, _SegmentGroup.StyledContentWrapper, _SegmentGroup.StyledContent);
@@ -15,7 +15,7 @@ var _base2 = /*#__PURE__*/require("./variations/_view/base");
15
15
  var _base3 = /*#__PURE__*/require("./variations/_disabled/base");
16
16
  var _base4 = /*#__PURE__*/require("./variations/_pilled/base");
17
17
  var _SegmentItem = /*#__PURE__*/require("./SegmentItem.styles");
18
- var _excluded = ["size", "view", "id", "label", "value", "pilled", "customHandleSelect", "aria-label"];
18
+ var _excluded = ["size", "view", "id", "label", "value", "pilled", "contentLeft", "contentRight", "customHandleSelect", "aria-label"];
19
19
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
20
20
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
21
21
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
@@ -29,6 +29,8 @@ var segmentItemRoot = exports.segmentItemRoot = function segmentItemRoot(Root) {
29
29
  label = props.label,
30
30
  value = props.value,
31
31
  pilled = props.pilled,
32
+ contentLeft = props.contentLeft,
33
+ contentRight = props.contentRight,
32
34
  customHandleSelect = props.customHandleSelect,
33
35
  ariaLabelExternal = props['aria-label'],
34
36
  rest = _objectWithoutProperties(props, _excluded);
@@ -65,7 +67,7 @@ var segmentItemRoot = exports.segmentItemRoot = function segmentItemRoot(Root) {
65
67
  onClick: handleSelectSegment,
66
68
  tabIndex: disabledGroup ? -1 : 0,
67
69
  disabled: disabledGroup
68
- }, rest), /*#__PURE__*/_react["default"].createElement(_SegmentItem.StyledContent, null, label || value));
70
+ }, rest), contentLeft && /*#__PURE__*/_react["default"].createElement(_SegmentItem.LeftContent, null, contentLeft), /*#__PURE__*/_react["default"].createElement(_SegmentItem.StyledContent, null, label || value), contentRight && /*#__PURE__*/_react["default"].createElement(_SegmentItem.RightContent, null, contentRight));
69
71
  });
70
72
  };
71
73
  var segmentItemConfig = exports.segmentItemConfig = {
@@ -4,19 +4,37 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.base = exports.StyledContent = void 0;
7
+ exports.base = exports.StyledRightIcon = exports.StyledLeftIcon = exports.StyledContent = exports.RightContent = exports.LeftContent = void 0;
8
8
  var _styledComponents = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("styled-components"));
9
9
  var _mixins = /*#__PURE__*/require("../../../../mixins");
10
10
  var _tokens = /*#__PURE__*/require("../../tokens");
11
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
12
12
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
13
- var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;align-items:center;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(", ");-webkit-tap-highlight-color:rgba(0,0,0,0);&:first-child{margin-left:0;}", ";"], _tokens.tokens.itemMarginLeft, /*#__PURE__*/(0, _mixins.addFocus)({
13
+ var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;appearance:none;border:none;outline:none;cursor:pointer;margin-left:var(", ");-webkit-tap-highlight-color:rgba(0,0,0,0);&:first-child{margin-left:0;}", ";"], _tokens.tokens.itemMarginLeft, /*#__PURE__*/(0, _mixins.addFocus)({
14
14
  outlineSize: '0.063rem',
15
- outlineOffset: '-0.125rem',
15
+ outlineOffset: '0.063rem',
16
16
  outlineColor: /*#__PURE__*/"var(".concat(_tokens.tokens.outlineFocusColor, ")"),
17
17
  outlineRadius: 'calc(var(--plasma_private-outline-radius) + 0.063rem)',
18
18
  customFocusRules: /*#__PURE__*/"\n &.focus-visible:focus,\n &[data-focus-visible-added] {\n &::before {\n z-index: 1;\n outline: none;\n box-shadow: 0 0 0 0.063rem var(".concat(_tokens.tokens.outlineFocusColor, ");\n }\n }\n ")
19
19
  }));
20
- var StyledContent = exports.StyledContent = /*#__PURE__*/_styledComponents["default"].div.withConfig({
20
+ var StyledLeftIcon = exports.StyledLeftIcon = /*#__PURE__*/_styledComponents["default"].div.withConfig({
21
21
  componentId: "plasma-new-hope__sc-m3m328-0"
22
- })(["display:inline-block;width:fit-content;", ";"], /*#__PURE__*/(0, _mixins.applyEllipsis)());
22
+ })(["margin-right:var(", ");"], _tokens.tokens.itemIconMargin);
23
+ var StyledRightIcon = exports.StyledRightIcon = /*#__PURE__*/_styledComponents["default"].div.withConfig({
24
+ componentId: "plasma-new-hope__sc-m3m328-1"
25
+ })(["margin-left:var(", ");"], _tokens.tokens.itemIconMargin);
26
+ var StyledContent = exports.StyledContent = /*#__PURE__*/_styledComponents["default"].div.withConfig({
27
+ componentId: "plasma-new-hope__sc-m3m328-2"
28
+ })(["display:inline-block;width:fit-content;padding:var(", ");", ";margin-right:", ";margin-left:", ";"], _tokens.tokens.itemContentPadding, /*#__PURE__*/(0, _mixins.applyEllipsis)(), function (_ref) {
29
+ var hasRightMargin = _ref.hasRightMargin;
30
+ return hasRightMargin ? "var(".concat(_tokens.tokens.itemIconMargin, ")") : '0';
31
+ }, function (_ref2) {
32
+ var hasLeftMargin = _ref2.hasLeftMargin;
33
+ return hasLeftMargin ? "var(".concat(_tokens.tokens.itemIconMargin, ")") : '0';
34
+ });
35
+ var RightContent = exports.RightContent = /*#__PURE__*/_styledComponents["default"].div.withConfig({
36
+ componentId: "plasma-new-hope__sc-m3m328-3"
37
+ })(["display:flex;margin-left:var(", ");color:var(", ");"], _tokens.tokens.itemIconMargin, _tokens.tokens.itemAdditionalColor);
38
+ var LeftContent = exports.LeftContent = /*#__PURE__*/_styledComponents["default"].div.withConfig({
39
+ componentId: "plasma-new-hope__sc-m3m328-4"
40
+ })(["display:flex;margin-right:var(", ");color:inherit;"], _tokens.tokens.itemIconMargin);
@@ -6,4 +6,5 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.base = void 0;
7
7
  var _styledComponents = /*#__PURE__*/require("styled-components");
8
8
  var _tokens = /*#__PURE__*/require("../../../../tokens");
9
- var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["color:var(", ");background-color:var(", ");&:hover{color:var(", ");background-color:var(", ");}&.", "{color:var(", ");background-color:var(", ");&:hover{color:var(", ");background-color:var(", ");}}"], _tokens.tokens.itemColor, _tokens.tokens.itemBackgroundColor, _tokens.tokens.itemColorHover, _tokens.tokens.itemBackgroundColorHover, /*#__PURE__*/String(_tokens.classes.selectedSegmentItem), _tokens.tokens.itemSelectedColor, _tokens.tokens.itemSelectedBackgroundColor, _tokens.tokens.itemSelectedColorHover, _tokens.tokens.itemSelectedBackgroundColorHover);
9
+ var _SegmentItem = /*#__PURE__*/require("../../SegmentItem.styles");
10
+ var base = exports.base = /*#__PURE__*/(0, _styledComponents.css)(["color:var(", ");background-color:var(", ");&:hover{color:var(", ");background-color:var(", ");", "{color:var(", ");}}&.", "{color:var(", ");background-color:var(", ");", "{color:var(", ");}&:hover{color:var(", ");background-color:var(", ");", "{color:var(", ");}}}"], _tokens.tokens.itemColor, _tokens.tokens.itemBackgroundColor, _tokens.tokens.itemColorHover, _tokens.tokens.itemBackgroundColorHover, _SegmentItem.RightContent, _tokens.tokens.itemAdditionalColorHover, /*#__PURE__*/String(_tokens.classes.selectedSegmentItem), _tokens.tokens.itemSelectedColor, _tokens.tokens.itemSelectedBackgroundColor, _SegmentItem.RightContent, _tokens.tokens.itemSelectedAdditionalColor, _tokens.tokens.itemSelectedColorHover, _tokens.tokens.itemSelectedBackgroundColorHover, _SegmentItem.RightContent, _tokens.tokens.itemSelectedAdditionalColorHover);
@@ -145,7 +145,7 @@ var tabsRoot = exports.tabsRoot = function tabsRoot(Root) {
145
145
  var scrollLeft = Math.round(event.currentTarget.scrollLeft);
146
146
  setFirstItemVisible(scrollLeft <= 0);
147
147
  setLastItemVisible(scrollLeft >= maxScrollLeft);
148
- }, [setFirstItemVisible, setLastItemVisible]);
148
+ }, []);
149
149
  var onKeyDown = (0, _react.useCallback)(function (event) {
150
150
  if (index === undefined) {
151
151
  return;
@@ -193,7 +193,7 @@ var tabsRoot = exports.tabsRoot = function tabsRoot(Root) {
193
193
  scrollRef.current.scrollTo({
194
194
  left: Math.round(scrollRef.current.scrollLeft + leftArrowRef.current.clientWidth)
195
195
  });
196
- }, [firstItemVisible, scrollRef, leftArrowRef]);
196
+ }, [firstItemVisible]);
197
197
  return /*#__PURE__*/_react["default"].createElement(_TabsContext.TabsContext.Provider, {
198
198
  value: refs
199
199
  }, /*#__PURE__*/_react["default"].createElement(Root, _extends({
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DisclosureDown = void 0;
7
+ var _react = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react"));
8
+ var _path;
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
11
+ var DisclosureDown = exports.DisclosureDown = function DisclosureDown(props) {
12
+ return /*#__PURE__*/_react["default"].createElement("svg", _extends({
13
+ width: "100%",
14
+ viewBox: "0 0 24 24",
15
+ fill: "none"
16
+ }, props), _path || (_path = /*#__PURE__*/_react["default"].createElement("path", {
17
+ d: "M17.78 18.21C17.48 17.92 17.01 17.92 16.71 18.21L12.75 22.18L8.78 18.21C8.48 17.92 8.01 17.92 7.71 18.21C7.42 18.51 7.42 18.98 7.71 19.28L12.75 24.31L17.78 19.28C18.07 18.98 18.07 18.51 17.78 18.21Z",
18
+ fillRule: "evenodd",
19
+ fill: "currentColor"
20
+ })));
21
+ };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DisclosureUp = void 0;
7
+ var _react = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react"));
8
+ var _path;
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
11
+ var DisclosureUp = exports.DisclosureUp = function DisclosureUp(props) {
12
+ return /*#__PURE__*/_react["default"].createElement("svg", _extends({
13
+ width: "100%",
14
+ viewBox: "0 0 24 24",
15
+ fill: "none"
16
+ }, props), _path || (_path = /*#__PURE__*/_react["default"].createElement("path", {
17
+ d: "M17.18 8.18C16.89 8.47 16.41 8.47 16.12 8.18L12.15 4.21L8.18 8.18C7.89 8.47 7.41 8.47 7.12 8.18C6.83 7.89 6.83 7.41 7.12 7.12L12.15 2.09L17.18 7.12C17.47 7.41 17.47 7.89 17.18 8.18Z",
18
+ fillRule: "evenodd",
19
+ fill: "currentColor"
20
+ })));
21
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.IconDisclosureDown = void 0;
7
+ var _react = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react"));
8
+ var _DisclosureDown = /*#__PURE__*/require("../Icon.assets/DisclosureDown");
9
+ var _IconRoot = /*#__PURE__*/require("../IconRoot");
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+ var IconDisclosureDown = exports.IconDisclosureDown = function IconDisclosureDown(_ref) {
12
+ var _ref$size = _ref.size,
13
+ size = _ref$size === void 0 ? 's' : _ref$size,
14
+ color = _ref.color,
15
+ className = _ref.className;
16
+ return /*#__PURE__*/_react["default"].createElement(_IconRoot.IconRoot, {
17
+ className: className,
18
+ size: size,
19
+ color: color,
20
+ icon: _DisclosureDown.DisclosureDown
21
+ });
22
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.IconDisclosureUp = void 0;
7
+ var _react = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react"));
8
+ var _DisclosureUp = /*#__PURE__*/require("../Icon.assets/DisclosureUp");
9
+ var _IconRoot = /*#__PURE__*/require("../IconRoot");
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+ var IconDisclosureUp = exports.IconDisclosureUp = function IconDisclosureUp(_ref) {
12
+ var _ref$size = _ref.size,
13
+ size = _ref$size === void 0 ? 's' : _ref$size,
14
+ color = _ref.color,
15
+ className = _ref.className;
16
+ return /*#__PURE__*/_react["default"].createElement(_IconRoot.IconRoot, {
17
+ className: className,
18
+ size: size,
19
+ color: color,
20
+ icon: _DisclosureUp.DisclosureUp
21
+ });
22
+ };
@@ -39,6 +39,12 @@ Object.defineProperty(exports, "IconCross", {
39
39
  return _IconCross.IconCross;
40
40
  }
41
41
  });
42
+ Object.defineProperty(exports, "IconDisclosureDown", {
43
+ enumerable: true,
44
+ get: function get() {
45
+ return _IconDisclosureDown.IconDisclosureDown;
46
+ }
47
+ });
42
48
  Object.defineProperty(exports, "IconDisclosureDownCentered", {
43
49
  enumerable: true,
44
50
  get: function get() {
@@ -69,6 +75,12 @@ Object.defineProperty(exports, "IconDisclosureRightCentered", {
69
75
  return _IconDisclosureRightCentered.IconDisclosureRightCentered;
70
76
  }
71
77
  });
78
+ Object.defineProperty(exports, "IconDisclosureUp", {
79
+ enumerable: true,
80
+ get: function get() {
81
+ return _IconDisclosureUp.IconDisclosureUp;
82
+ }
83
+ });
72
84
  Object.defineProperty(exports, "IconDone", {
73
85
  enumerable: true,
74
86
  get: function get() {
@@ -90,6 +102,8 @@ Object.defineProperty(exports, "IconMinus", {
90
102
  var _IconDisclosureLeft = /*#__PURE__*/require("./Icons/IconDisclosureLeft");
91
103
  var _IconDisclosureRight = /*#__PURE__*/require("./Icons/IconDisclosureRight");
92
104
  var _IconDisclosureDownFill = /*#__PURE__*/require("./Icons/IconDisclosureDownFill");
105
+ var _IconDisclosureDown = /*#__PURE__*/require("./Icons/IconDisclosureDown");
106
+ var _IconDisclosureUp = /*#__PURE__*/require("./Icons/IconDisclosureUp");
93
107
  var _IconMic = /*#__PURE__*/require("./Icons/IconMic");
94
108
  var _IconChevronLeft = /*#__PURE__*/require("./Icons/IconChevronLeft");
95
109
  var _IconChevronDoubleLeft = /*#__PURE__*/require("./Icons/IconChevronDoubleLeft");