@occmundial/occ-atomic 3.0.0-beta.7 → 3.0.0-beta.71

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 (171) hide show
  1. package/CHANGELOG.md +556 -0
  2. package/build/Avatar/Avatar.js +69 -21
  3. package/build/Avatar/Avatar.test.js +15 -8
  4. package/build/Avatar/AvatarContent/AvatarContent.js +61 -21
  5. package/build/Avatar/AvatarContent/AvatarContent.test.js +4 -18
  6. package/build/Avatar/AvatarContent/__snapshots__/AvatarContent.test.js.snap +75 -15
  7. package/build/Avatar/AvatarContent/styles.js +88 -21
  8. package/build/Avatar/__snapshots__/Avatar.test.js.snap +11 -2
  9. package/build/Avatar/styles.js +18 -7
  10. package/build/Banner/Banner.js +30 -40
  11. package/build/Banner/Banner.test.js +64 -17
  12. package/build/Banner/__snapshots__/Banner.test.js.snap +0 -28
  13. package/build/Banner/index.js +1 -6
  14. package/build/Button/Button.js +1 -1
  15. package/build/Button/Button.test.js +0 -11
  16. package/build/Button/__snapshots__/Button.test.js.snap +63 -67
  17. package/build/Button/styles.js +42 -75
  18. package/build/Checkbox/Checkbox.js +48 -3
  19. package/build/Checkbox/__snapshots__/Checkbox.test.js.snap +81 -49
  20. package/build/Checkbox/styles.js +91 -48
  21. package/build/Drawer/Drawer.js +40 -0
  22. package/build/{Header/Nav/Nav.js → Drawer/index.js} +54 -39
  23. package/build/Drawer/index.test.js +52 -0
  24. package/build/Drawer/styles.js +61 -0
  25. package/build/Droplist/__snapshots__/Droplist.test.js.snap +5 -5
  26. package/build/Fab/__snapshots__/Fab.test.js.snap +2 -2
  27. package/build/Footer/Footer.js +81 -87
  28. package/build/Footer/List/List.js +89 -124
  29. package/build/Footer/List/styles.js +85 -31
  30. package/build/Footer/__snapshots__/Footer.test.js.snap +109 -59
  31. package/build/Footer/styles.js +116 -51
  32. package/build/Grid/Col/__snapshots__/Col.test.js.snap +16 -2
  33. package/build/Grid/Col/styles.js +12 -6
  34. package/build/Grid/Row/__snapshots__/Row.test.js.snap +18 -2
  35. package/build/Grid/Row/styles.js +15 -5
  36. package/build/Grid/styles.js +26 -9
  37. package/build/Menu/Menu.js +96 -0
  38. package/build/Menu/index.js +34 -0
  39. package/build/Menu/styles.js +25 -0
  40. package/build/MenuDivider/MenuDivider.js +47 -0
  41. package/build/MenuDivider/index.js +18 -0
  42. package/build/MenuDivider/styles.js +21 -0
  43. package/build/MenuItem/MenuItem.js +160 -0
  44. package/build/{Header/Menu → MenuItem}/index.js +2 -2
  45. package/build/MenuItem/styles.js +25 -0
  46. package/build/MenuItemBase/MenuItemBase.js +94 -0
  47. package/build/MenuItemBase/index.js +18 -0
  48. package/build/MenuItemBase/styles.js +57 -0
  49. package/build/MenuList/MenuList.js +71 -0
  50. package/build/{Header → MenuList}/index.js +2 -2
  51. package/build/MenuList/styles.js +54 -0
  52. package/build/MenuUser/MenuUser.js +152 -0
  53. package/build/MenuUser/index.js +18 -0
  54. package/build/MenuUser/styles.js +22 -0
  55. package/build/Modal/Modal.js +94 -66
  56. package/build/Modal/Modal.test.js +14 -7
  57. package/build/Modal/__snapshots__/Modal.test.js.snap +155 -100
  58. package/build/Modal/styles.js +165 -143
  59. package/build/NavAside/NavAside.js +54 -113
  60. package/build/NavAside/NavAside.test.js +0 -57
  61. package/build/NavAside/__snapshots__/NavAside.test.js.snap +35 -43
  62. package/build/NavAside/index.js +6 -0
  63. package/build/NavAside/styles.js +45 -63
  64. package/build/NavAvatarButton/NavAvatarButton.js +134 -0
  65. package/build/{NavIcon → NavAvatarButton}/index.js +2 -2
  66. package/build/NavAvatarButton/styles.js +33 -0
  67. package/build/NavButton/NavButton.js +73 -0
  68. package/build/{Header/Nav → NavButton}/index.js +2 -2
  69. package/build/NavButton/styles.js +79 -0
  70. package/build/NavItem/styles.js +4 -4
  71. package/build/NavTab/NavTab.js +45 -32
  72. package/build/NavTab/styles.js +59 -27
  73. package/build/NavTop/styles.js +6 -6
  74. package/build/OrderBy/OrderBy.js +2 -1
  75. package/build/Pager/Page/Page.js +11 -6
  76. package/build/Pager/Page/Page.test.js +13 -9
  77. package/build/Pager/Page/__snapshots__/Page.test.js.snap +34 -10
  78. package/build/Pager/Page/styles.js +48 -14
  79. package/build/Pager/Pager.js +144 -235
  80. package/build/Pager/Pager.test.js +81 -36
  81. package/build/Pager/__snapshots__/Pager.test.js.snap +3 -36
  82. package/build/Pager/styles.js +5 -40
  83. package/build/Pill/Choice/Choice.js +6 -4
  84. package/build/Pill/Choice/styles.js +13 -10
  85. package/build/Pill/Group/styles.js +5 -5
  86. package/build/Pill/Stack/Stack.js +2 -2
  87. package/build/Pill/Stack/styles.js +5 -8
  88. package/build/Placeholder/Placeholder.js +29 -12
  89. package/build/Placeholder/Placeholder.test.js +4 -4
  90. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +81 -38
  91. package/build/Placeholder/styles.js +86 -42
  92. package/build/Provider/MenuListProvider.js +38 -0
  93. package/build/Provider/usePrevious.js +1 -1
  94. package/build/Radio/Radio.js +22 -7
  95. package/build/Radio/__snapshots__/Radio.test.js.snap +71 -79
  96. package/build/Radio/styles.js +84 -85
  97. package/build/SlideDown/SlideDown.js +167 -169
  98. package/build/SlideDown/SlideDown.test.js +49 -44
  99. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +44 -15
  100. package/build/SlideDown/styles.js +51 -20
  101. package/build/SlideToggle/SlideToggle.js +38 -6
  102. package/build/SlideToggle/SlideToggle.test.js +2 -2
  103. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +53 -38
  104. package/build/SlideToggle/styles.js +64 -45
  105. package/build/Tabs/Tab/Tab.js +73 -0
  106. package/build/Tabs/Tab/index.js +34 -0
  107. package/build/Tabs/Tab/index.test.js +132 -0
  108. package/build/Tabs/Tab/styles.js +74 -0
  109. package/build/Tabs/TabContent/TabContent.js +76 -0
  110. package/build/Tabs/TabContent/index.js +34 -0
  111. package/build/Tabs/TabContent/index.test.js +68 -0
  112. package/build/Tabs/TabContent/styles.js +23 -0
  113. package/build/Tabs/TabIndicator/TabIndicator.js +158 -0
  114. package/build/Tabs/TabIndicator/index.js +34 -0
  115. package/build/Tabs/TabIndicator/styles.js +24 -0
  116. package/build/Tabs/TabList/TabList.js +108 -0
  117. package/build/Tabs/TabList/index.js +34 -0
  118. package/build/{Pager/Break → Tabs/TabList}/styles.js +3 -2
  119. package/build/Tabs/Tabs.js +74 -0
  120. package/build/Tabs/context.js +94 -0
  121. package/build/Tabs/index.js +34 -0
  122. package/build/Tabs/index.test.js +157 -0
  123. package/build/Tabs/styles.js +19 -0
  124. package/build/Tag/Tag.js +2 -2
  125. package/build/Tag/__snapshots__/Tag.test.js.snap +40 -43
  126. package/build/Tag/styles.js +76 -82
  127. package/build/Text/Text.js +2 -1
  128. package/build/TextField/TextField.js +7 -6
  129. package/build/TextField/__snapshots__/TextField.test.js.snap +3 -0
  130. package/build/TextField/styles.js +3 -0
  131. package/build/Tip/Tip.js +62 -95
  132. package/build/Tip/Tip.test.js +29 -6
  133. package/build/Tip/TipText/index.js +32 -0
  134. package/build/Tip/__snapshots__/Tip.test.js.snap +127 -15
  135. package/build/Tip/styles.js +125 -31
  136. package/build/Toaster/Toast/Toast.js +76 -64
  137. package/build/Toaster/Toast/styles.js +118 -46
  138. package/build/Toaster/Toaster.js +3 -2
  139. package/build/Toaster/Toaster.test.js +5 -2
  140. package/build/Toaster/__snapshots__/Toaster.test.js.snap +1 -1
  141. package/build/Toaster/functions.js +4 -0
  142. package/build/Toaster/styles.js +3 -3
  143. package/build/Tooltip/Tooltip.js +73 -22
  144. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +22 -6
  145. package/build/Tooltip/styles.js +32 -10
  146. package/build/index.js +33 -19
  147. package/build/plugin/babel.js +0 -2
  148. package/build/subatomic/grid.js +5 -5
  149. package/build/tokens/colors.json +94 -60
  150. package/build/tokens/index.js +12 -31
  151. package/build/tokens/shadows.json +3 -3
  152. package/package.json +5 -2
  153. package/build/Banner/styles.js +0 -41
  154. package/build/Header/Header.js +0 -163
  155. package/build/Header/Header.test.js +0 -118
  156. package/build/Header/Menu/Menu.js +0 -135
  157. package/build/Header/Menu/Menu.test.js +0 -107
  158. package/build/Header/Menu/__snapshots__/Menu.test.js.snap +0 -113
  159. package/build/Header/Menu/styles.js +0 -123
  160. package/build/Header/Nav/Nav.test.js +0 -81
  161. package/build/Header/Nav/__snapshots__/Nav.test.js.snap +0 -101
  162. package/build/Header/Nav/styles.js +0 -110
  163. package/build/Header/__snapshots__/Header.test.js.snap +0 -79
  164. package/build/Header/styles.js +0 -94
  165. package/build/NavIcon/NavIcon.js +0 -112
  166. package/build/NavIcon/styles.js +0 -81
  167. package/build/Pager/Break/Break.js +0 -27
  168. package/build/Pager/Break/Break.test.js +0 -53
  169. package/build/Pager/Break/__snapshots__/Break.test.js.snap +0 -13
  170. package/build/Pager/Break/index.js +0 -18
  171. /package/build/Button/{Loading.js → Loading/index.js} +0 -0
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _spacing = _interopRequireDefault(require("../../tokens/spacing.json"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+
12
+ var _default = {
13
+ container: {
14
+ padding: _spacing["default"]['size-4'],
15
+ transition: 'all cubic-bezier(0.25,0.46,0.45,0.94) 0.2s',
16
+ opacity: 1
17
+ },
18
+ hide: {
19
+ opacity: 0,
20
+ display: 'none'
21
+ }
22
+ };
23
+ exports["default"] = _default;
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _context = require("../context");
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
23
+
24
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
25
+
26
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
+
28
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
29
+
30
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
31
+
32
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
33
+
34
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
35
+
36
+ function useIsMounted() {
37
+ var isMounted = (0, _react.useRef)(false);
38
+ (0, _react.useEffect)(function () {
39
+ isMounted.current = true;
40
+ return function () {
41
+ isMounted.current = false;
42
+ };
43
+ }, []);
44
+ return isMounted;
45
+ }
46
+
47
+ function debouce(func) {
48
+ var timer;
49
+ return function () {
50
+ var _this = this;
51
+
52
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
53
+ args[_key] = arguments[_key];
54
+ }
55
+
56
+ clearTimeout(timer);
57
+ timer = setTimeout(function () {
58
+ return func.apply(_this, args);
59
+ }, 0);
60
+ };
61
+ }
62
+
63
+ function TabIndicator(_ref) {
64
+ var tabRef = _ref.tabRef,
65
+ indexValueMap = _ref.indexValueMap,
66
+ size = _ref.size,
67
+ classes = _ref.classes;
68
+ var isMounted = useIsMounted();
69
+
70
+ var _useTabsContext = (0, _context.useTabsContext)(),
71
+ currentValue = _useTabsContext.currentValue;
72
+
73
+ var _useState = (0, _react.useState)({
74
+ left: 0,
75
+ width: 0
76
+ }),
77
+ _useState2 = _slicedToArray(_useState, 2),
78
+ positionStyles = _useState2[0],
79
+ setPositionStyles = _useState2[1];
80
+
81
+ var updatePosition = (0, _react.useCallback)(function () {
82
+ var _tabRef$current;
83
+
84
+ var children = tabRef === null || tabRef === void 0 ? void 0 : (_tabRef$current = tabRef.current) === null || _tabRef$current === void 0 ? void 0 : _tabRef$current.children;
85
+
86
+ if (children && indexValueMap.size) {
87
+ var currentIndex = indexValueMap.get(currentValue);
88
+
89
+ if (currentIndex >= 0) {
90
+ var rect = children[currentIndex].getBoundingClientRect();
91
+ var rectContainer = tabRef.current.getBoundingClientRect();
92
+ setPositionStyles({
93
+ width: children[currentIndex].clientWidth,
94
+ left: rect.left - rectContainer.left
95
+ });
96
+ var left = children[currentIndex].offsetLeft > 0 ? children[currentIndex].offsetLeft - (tabRef === null || tabRef === void 0 ? void 0 : tabRef.current.parentElement.clientWidth) / 2 + children[currentIndex].clientWidth / 2 : 0;
97
+ if (tabRef.current.parentElement.scrollTo) tabRef.current.parentElement.scrollTo({
98
+ behavior: 'smooth',
99
+ left: left
100
+ });
101
+ }
102
+ }
103
+ }, [tabRef, currentValue, indexValueMap]);
104
+ (0, _react.useEffect)(function () {
105
+ if (isMounted.current) updatePosition();
106
+ }, [updatePosition, isMounted]);
107
+ (0, _react.useEffect)(function () {
108
+ var resizeObserver;
109
+
110
+ if (tabRef !== null && tabRef !== void 0 && tabRef.current && isMounted.current) {
111
+ resizeObserver = new ResizeObserver(debouce(function (entries) {
112
+ var element = entries[0];
113
+ var rectContainer = element.target.getBoundingClientRect();
114
+
115
+ var _iterator = _createForOfIteratorHelper(element.target.children),
116
+ _step;
117
+
118
+ try {
119
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
120
+ var child = _step.value;
121
+
122
+ if (child.className.includes('selected')) {
123
+ var rect = child.getBoundingClientRect();
124
+ if (isMounted.current) setPositionStyles({
125
+ width: child.clientWidth,
126
+ left: rect.left - rectContainer.left
127
+ });
128
+ }
129
+ }
130
+ } catch (err) {
131
+ _iterator.e(err);
132
+ } finally {
133
+ _iterator.f();
134
+ }
135
+ }));
136
+ resizeObserver.observe(tabRef.current);
137
+ }
138
+
139
+ return function () {
140
+ var _resizeObserver;
141
+
142
+ (_resizeObserver = resizeObserver) === null || _resizeObserver === void 0 ? void 0 : _resizeObserver.disconnect();
143
+ };
144
+ }, [tabRef, isMounted]);
145
+ return /*#__PURE__*/_react["default"].createElement("div", {
146
+ className: "".concat(classes.container).concat(size === 'small' ? " ".concat(classes.small) : ''),
147
+ style: positionStyles
148
+ });
149
+ }
150
+
151
+ TabIndicator.propTypes = {
152
+ tabRef: _propTypes["default"].object,
153
+ classes: _propTypes["default"].object.isRequired,
154
+ indexValueMap: _propTypes["default"].object,
155
+ size: _propTypes["default"].oneOf(['large', 'medium', 'small'])
156
+ };
157
+ var _default = TabIndicator;
158
+ exports["default"] = _default;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _reactJss = _interopRequireDefault(require("react-jss"));
9
+
10
+ var _TabIndicator = _interopRequireDefault(require("./TabIndicator"));
11
+
12
+ var _styles = _interopRequireDefault(require("./styles"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
+
20
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+
22
+ 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; }
23
+
24
+ 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; }
25
+
26
+ var StyledTabIndicator = (0, _reactJss["default"])(_styles["default"])(_TabIndicator["default"]); // eslint-disable-next-line
27
+
28
+ var _TabIndicator$propTyp = _TabIndicator["default"].propTypes,
29
+ classes = _TabIndicator$propTyp.classes,
30
+ propTypes = _objectWithoutProperties(_TabIndicator$propTyp, ["classes"]);
31
+
32
+ StyledTabIndicator.propTypes = _objectSpread(_objectSpread({}, propTypes), StyledTabIndicator.propTypes);
33
+ var _default = StyledTabIndicator;
34
+ exports["default"] = _default;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _colors = _interopRequireDefault(require("../../tokens/colors.json"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+
12
+ var _default = {
13
+ container: {
14
+ position: 'absolute',
15
+ bottom: 0,
16
+ height: 4,
17
+ transition: 'all 300ms cubic-bezier(0.4, 0, 0.2, 1)',
18
+ backgroundColor: _colors["default"].border.brand["default"]
19
+ },
20
+ small: {
21
+ height: 2
22
+ }
23
+ };
24
+ exports["default"] = _default;
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
+
14
+ function getNextFocusElement(parentElement, activeElement) {
15
+ if (activeElement !== null && activeElement !== void 0 && activeElement.nextElementSibling) return activeElement.nextElementSibling;
16
+ return parentElement.firstChild;
17
+ }
18
+
19
+ function getPreviousFocusElement(parentElement, activeElement) {
20
+ if (activeElement !== null && activeElement !== void 0 && activeElement.previousElementSibling) return activeElement.previousElementSibling;
21
+ return parentElement.lastChild;
22
+ }
23
+
24
+ function TabList(_ref) {
25
+ var children = _ref.children,
26
+ tabRef = _ref.tabRef,
27
+ classes = _ref.classes;
28
+
29
+ var onKeyDownHandler = function onKeyDownHandler(e) {
30
+ switch (e.key) {
31
+ case 'ArrowRight':
32
+ {
33
+ e.preventDefault();
34
+ var parentElement = tabRef === null || tabRef === void 0 ? void 0 : tabRef.current;
35
+
36
+ if (parentElement.childElementCount > 1) {
37
+ var _document = document,
38
+ activeElement = _document.activeElement;
39
+ var nextFocusElement = getNextFocusElement(parentElement, activeElement);
40
+
41
+ while (nextFocusElement) {
42
+ if (nextFocusElement.getAttribute('disabled') === '') nextFocusElement = getNextFocusElement(parentElement, nextFocusElement);else {
43
+ nextFocusElement.focus();
44
+ var left = nextFocusElement.offsetLeft > 0 ? nextFocusElement.offsetLeft - (tabRef === null || tabRef === void 0 ? void 0 : tabRef.current.parentElement.clientWidth) / 2 + nextFocusElement.clientWidth / 2 : 0;
45
+ tabRef.current.parentElement.scrollTo({
46
+ behavior: 'smooth',
47
+ left: left
48
+ });
49
+ return;
50
+ }
51
+ }
52
+ }
53
+ }
54
+ break;
55
+
56
+ case 'ArrowLeft':
57
+ {
58
+ e.preventDefault();
59
+
60
+ var _parentElement = tabRef === null || tabRef === void 0 ? void 0 : tabRef.current;
61
+
62
+ if (_parentElement.childElementCount > 1) {
63
+ var _document2 = document,
64
+ _activeElement = _document2.activeElement;
65
+
66
+ var _nextFocusElement = getPreviousFocusElement(_parentElement, _activeElement);
67
+
68
+ while (_nextFocusElement) {
69
+ if (_nextFocusElement.getAttribute('disabled') === '') _nextFocusElement = getPreviousFocusElement(_parentElement, _nextFocusElement);else {
70
+ _nextFocusElement.focus();
71
+
72
+ var _left = _nextFocusElement.offsetLeft > 0 ? _nextFocusElement.offsetLeft - (tabRef === null || tabRef === void 0 ? void 0 : tabRef.current.parentElement.clientWidth) / 2 + _nextFocusElement.clientWidth / 2 : 0;
73
+
74
+ tabRef.current.parentElement.scrollTo({
75
+ behavior: 'smooth',
76
+ left: _left
77
+ });
78
+ return;
79
+ }
80
+ }
81
+ }
82
+ }
83
+ break;
84
+
85
+ default:
86
+ break;
87
+ }
88
+ };
89
+
90
+ return /*#__PURE__*/_react["default"].createElement("div", {
91
+ className: classes.container,
92
+ ref: tabRef,
93
+ onKeyDown: onKeyDownHandler,
94
+ role: "tablist"
95
+ }, children);
96
+ }
97
+
98
+ TabList.defaultProps = {
99
+ size: 'large'
100
+ };
101
+ TabList.propTypes = {
102
+ children: _propTypes["default"].node,
103
+ classes: _propTypes["default"].object.isRequired,
104
+ tabRef: _propTypes["default"].object,
105
+ indexValueMap: _propTypes["default"].object
106
+ };
107
+ var _default = TabList;
108
+ exports["default"] = _default;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _reactJss = _interopRequireDefault(require("react-jss"));
9
+
10
+ var _TabList = _interopRequireDefault(require("./TabList"));
11
+
12
+ var _styles = _interopRequireDefault(require("./styles"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
+
20
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+
22
+ 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; }
23
+
24
+ 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; }
25
+
26
+ var StyledTabList = (0, _reactJss["default"])(_styles["default"])(_TabList["default"]); // eslint-disable-next-line
27
+
28
+ var _TabList$propTypes = _TabList["default"].propTypes,
29
+ classes = _TabList$propTypes.classes,
30
+ propTypes = _objectWithoutProperties(_TabList$propTypes, ["classes"]);
31
+
32
+ StyledTabList.propTypes = _objectSpread(_objectSpread({}, propTypes), StyledTabList.propTypes);
33
+ var _default = StyledTabList;
34
+ exports["default"] = _default;
@@ -5,8 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = void 0;
7
7
  var _default = {
8
- li: {
9
- display: 'inline-block'
8
+ container: {
9
+ display: 'flex',
10
+ flexDirection: 'row'
10
11
  }
11
12
  };
12
13
  exports["default"] = _default;
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _TabIndicator = _interopRequireDefault(require("./TabIndicator"));
15
+
16
+ var _TabList = _interopRequireDefault(require("./TabList"));
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
+
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
24
+ function _extends() { _extends = Object.assign || 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); }
25
+
26
+ var TabListRef = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
27
+ // eslint-disable-next-line react/prop-types
28
+ var children = props.children;
29
+ return /*#__PURE__*/_react["default"].createElement(_TabList["default"], _extends({
30
+ tabRef: ref
31
+ }, props), children);
32
+ });
33
+ TabListRef.displayName = TabListRef;
34
+
35
+ function Tabs(props) {
36
+ var ref = (0, _react.useRef)(null);
37
+ var children = props.children,
38
+ size = props.size,
39
+ classes = props.classes;
40
+ var indexValueMap = new Map();
41
+
42
+ var renderTab = function renderTab() {
43
+ return _react.Children.map(children, function (child, index) {
44
+ if (! /*#__PURE__*/(0, _react.isValidElement)(child)) return null;
45
+ var childValue = child.props.value === undefined ? index : child.props.value;
46
+ indexValueMap.set(childValue, index);
47
+ return /*#__PURE__*/(0, _react.cloneElement)(child, {
48
+ value: childValue,
49
+ size: size
50
+ });
51
+ });
52
+ };
53
+
54
+ return /*#__PURE__*/_react["default"].createElement("div", {
55
+ className: classes.container
56
+ }, /*#__PURE__*/_react["default"].createElement(TabListRef, {
57
+ indexValueMap: indexValueMap,
58
+ ref: ref
59
+ }, renderTab()), /*#__PURE__*/_react["default"].createElement(_TabIndicator["default"], {
60
+ size: size,
61
+ tabRef: ref,
62
+ indexValueMap: indexValueMap
63
+ }));
64
+ }
65
+
66
+ Tabs.propTypes = {
67
+ size: _propTypes["default"].oneOf(['large', 'medium', 'small']).isRequired,
68
+ classes: _propTypes["default"].object.isRequired,
69
+ children: _propTypes["default"].node.isRequired,
70
+ value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
71
+ onChange: _propTypes["default"].func
72
+ };
73
+ var _default = Tabs;
74
+ exports["default"] = _default;
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.TabsProviderUncontrolled = TabsProviderUncontrolled;
9
+ exports.TabsProviderControlled = TabsProviderControlled;
10
+ exports.useTabsContext = useTabsContext;
11
+
12
+ var _react = _interopRequireWildcard(require("react"));
13
+
14
+ var _propTypes = _interopRequireDefault(require("prop-types"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
23
+
24
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
25
+
26
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
+
28
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
29
+
30
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
31
+
32
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
33
+
34
+ var initialContext = {
35
+ currentValue: 0,
36
+ setCurrentValue: function setCurrentValue() {},
37
+ initialize: false
38
+ };
39
+ var TabsContext = /*#__PURE__*/(0, _react.createContext)(initialContext);
40
+
41
+ function TabsProviderUncontrolled(props) {
42
+ var _useState = (0, _react.useState)(0),
43
+ _useState2 = _slicedToArray(_useState, 2),
44
+ currentTabIndex = _useState2[0],
45
+ setCurrentTabIndex = _useState2[1];
46
+
47
+ return /*#__PURE__*/_react["default"].createElement(TabsContext.Provider, {
48
+ value: {
49
+ currentValue: currentTabIndex,
50
+ setCurrentValue: setCurrentTabIndex,
51
+ initialize: true
52
+ }
53
+ }, /*#__PURE__*/_react["default"].createElement("div", {
54
+ style: {
55
+ display: 'flex',
56
+ flexDirection: 'column'
57
+ }
58
+ }, props.children));
59
+ }
60
+
61
+ TabsProviderUncontrolled.propTypes = {
62
+ children: _propTypes["default"].node
63
+ };
64
+
65
+ function TabsProviderControlled(props) {
66
+ return /*#__PURE__*/_react["default"].createElement(TabsContext.Provider, {
67
+ value: {
68
+ currentValue: props.value,
69
+ setCurrentValue: props.setCurrentValue,
70
+ initialize: true
71
+ }
72
+ }, /*#__PURE__*/_react["default"].createElement("div", {
73
+ style: {
74
+ display: 'flex',
75
+ flexDirection: 'column'
76
+ }
77
+ }, props.children));
78
+ }
79
+
80
+ TabsProviderControlled.propTypes = {
81
+ children: _propTypes["default"].node,
82
+ value: _propTypes["default"].oneOf([_propTypes["default"].number, _propTypes["default"].string]),
83
+ setCurrentValue: _propTypes["default"].func
84
+ };
85
+
86
+ function useTabsContext() {
87
+ var context = (0, _react.useContext)(TabsContext);
88
+
89
+ if (context.initialize === false) {
90
+ throw new Error('useTabsContext must be used within a TabsProvider');
91
+ }
92
+
93
+ return context;
94
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _reactJss = _interopRequireDefault(require("react-jss"));
9
+
10
+ var _Tabs = _interopRequireDefault(require("./Tabs"));
11
+
12
+ var _styles = _interopRequireDefault(require("./styles"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+
16
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
17
+
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
19
+
20
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+
22
+ 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; }
23
+
24
+ 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; }
25
+
26
+ var StyledTabs = (0, _reactJss["default"])(_styles["default"])(_Tabs["default"]); // eslint-disable-next-line
27
+
28
+ var _Tabs$propTypes = _Tabs["default"].propTypes,
29
+ classes = _Tabs$propTypes.classes,
30
+ propTypes = _objectWithoutProperties(_Tabs$propTypes, ["classes"]);
31
+
32
+ StyledTabs.propTypes = _objectSpread(_objectSpread({}, propTypes), StyledTabs.propTypes);
33
+ var _default = StyledTabs;
34
+ exports["default"] = _default;