@occmundial/occ-atomic 3.0.0-beta.5 → 3.0.0-beta.50

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. package/CHANGELOG.md +407 -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 +54 -60
  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/Fab/__snapshots__/Fab.test.js.snap +2 -2
  22. package/build/Footer/Footer.js +63 -84
  23. package/build/Footer/List/List.js +89 -124
  24. package/build/Footer/List/styles.js +85 -31
  25. package/build/Footer/__snapshots__/Footer.test.js.snap +0 -6
  26. package/build/Footer/styles.js +119 -53
  27. package/build/Grid/Col/__snapshots__/Col.test.js.snap +16 -2
  28. package/build/Grid/Col/styles.js +12 -6
  29. package/build/Grid/Row/__snapshots__/Row.test.js.snap +18 -2
  30. package/build/Grid/Row/styles.js +15 -5
  31. package/build/Grid/styles.js +26 -9
  32. package/build/Modal/Modal.js +94 -66
  33. package/build/Modal/Modal.test.js +14 -7
  34. package/build/Modal/__snapshots__/Modal.test.js.snap +152 -100
  35. package/build/Modal/styles.js +161 -142
  36. package/build/Pager/Page/Page.js +8 -5
  37. package/build/Pager/Page/Page.test.js +13 -9
  38. package/build/Pager/Page/__snapshots__/Page.test.js.snap +34 -10
  39. package/build/Pager/Page/styles.js +48 -14
  40. package/build/Pager/Pager.js +139 -235
  41. package/build/Pager/Pager.test.js +81 -36
  42. package/build/Pager/__snapshots__/Pager.test.js.snap +3 -36
  43. package/build/Pager/styles.js +5 -40
  44. package/build/Pill/Choice/Choice.js +6 -4
  45. package/build/Pill/Choice/styles.js +13 -10
  46. package/build/Pill/Group/styles.js +5 -5
  47. package/build/Pill/Stack/Stack.js +2 -2
  48. package/build/Pill/Stack/styles.js +5 -8
  49. package/build/Placeholder/Placeholder.js +29 -12
  50. package/build/Placeholder/Placeholder.test.js +4 -4
  51. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +81 -38
  52. package/build/Placeholder/styles.js +86 -42
  53. package/build/Provider/usePrevious.js +1 -1
  54. package/build/Radio/Radio.js +42 -6
  55. package/build/Radio/__snapshots__/Radio.test.js.snap +81 -80
  56. package/build/Radio/styles.js +93 -85
  57. package/build/SlideDown/SlideDown.js +162 -169
  58. package/build/SlideDown/SlideDown.test.js +49 -44
  59. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +45 -13
  60. package/build/SlideDown/styles.js +52 -18
  61. package/build/SlideToggle/SlideToggle.js +38 -6
  62. package/build/SlideToggle/SlideToggle.test.js +2 -2
  63. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +53 -37
  64. package/build/SlideToggle/styles.js +64 -45
  65. package/build/Tabs/Tab/Tab.js +73 -0
  66. package/build/Tabs/Tab/index.js +34 -0
  67. package/build/Tabs/Tab/index.test.js +132 -0
  68. package/build/Tabs/Tab/styles.js +74 -0
  69. package/build/Tabs/TabContent/TabContent.js +76 -0
  70. package/build/Tabs/TabContent/index.js +34 -0
  71. package/build/Tabs/TabContent/index.test.js +68 -0
  72. package/build/Tabs/TabContent/styles.js +23 -0
  73. package/build/Tabs/TabIndicator/TabIndicator.js +158 -0
  74. package/build/Tabs/TabIndicator/index.js +34 -0
  75. package/build/Tabs/TabIndicator/styles.js +24 -0
  76. package/build/Tabs/TabList/TabList.js +108 -0
  77. package/build/Tabs/TabList/index.js +34 -0
  78. package/build/{Pager/Break → Tabs/TabList}/styles.js +3 -2
  79. package/build/Tabs/Tabs.js +74 -0
  80. package/build/Tabs/context.js +94 -0
  81. package/build/Tabs/index.js +34 -0
  82. package/build/Tabs/index.test.js +157 -0
  83. package/build/Tabs/styles.js +19 -0
  84. package/build/Tag/Tag.js +2 -2
  85. package/build/Tag/__snapshots__/Tag.test.js.snap +40 -43
  86. package/build/Tag/styles.js +76 -82
  87. package/build/Text/Text.js +6 -3
  88. package/build/TextField/TextField.js +7 -6
  89. package/build/TextField/__snapshots__/TextField.test.js.snap +3 -0
  90. package/build/TextField/styles.js +3 -0
  91. package/build/Tip/Tip.js +62 -95
  92. package/build/Tip/Tip.test.js +29 -6
  93. package/build/Tip/TipText/index.js +32 -0
  94. package/build/Tip/__snapshots__/Tip.test.js.snap +131 -15
  95. package/build/Tip/styles.js +125 -31
  96. package/build/Toaster/Toast/Toast.js +76 -64
  97. package/build/Toaster/Toast/styles.js +118 -46
  98. package/build/Toaster/Toaster.js +3 -2
  99. package/build/Toaster/Toaster.test.js +5 -2
  100. package/build/Toaster/__snapshots__/Toaster.test.js.snap +1 -1
  101. package/build/Toaster/functions.js +4 -0
  102. package/build/Toaster/styles.js +3 -3
  103. package/build/Tooltip/Tooltip.js +73 -22
  104. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +22 -6
  105. package/build/Tooltip/styles.js +32 -10
  106. package/build/index.js +14 -1
  107. package/build/subatomic/grid.js +5 -5
  108. package/build/tokens/colors.json +35 -3
  109. package/package.json +4 -1
  110. package/build/Banner/styles.js +0 -41
  111. package/build/Pager/Break/Break.js +0 -27
  112. package/build/Pager/Break/Break.test.js +0 -53
  113. package/build/Pager/Break/__snapshots__/Break.test.js.snap +0 -13
  114. package/build/Pager/Break/index.js +0 -18
  115. /package/build/Button/{Loading.js → Loading/index.js} +0 -0
@@ -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;
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _enzyme = require("enzyme");
6
+
7
+ var _ = _interopRequireDefault(require("./"));
8
+
9
+ var _styles = _interopRequireDefault(require("./styles"));
10
+
11
+ var _context = require("./context");
12
+
13
+ var _Tab = _interopRequireDefault(require("./Tab"));
14
+
15
+ var _TabContent = _interopRequireDefault(require("./TabContent"));
16
+
17
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
18
+
19
+ 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; }
20
+
21
+ var reduceClasses = function reduceClasses(prev, curr) {
22
+ return Object.assign({}, prev, _defineProperty({}, curr, curr));
23
+ };
24
+
25
+ var classes = Object.keys(_styles["default"]).reduce(reduceClasses, {});
26
+ describe('Tab', function () {
27
+ global.ResizeObserver = jest.fn().mockImplementation(function () {
28
+ return {
29
+ observe: jest.fn(),
30
+ unobserve: jest.fn(),
31
+ disconnect: jest.fn()
32
+ };
33
+ });
34
+ it('should throw an error', function () {
35
+ expect(function () {
36
+ return (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_["default"], {
37
+ classes: classes,
38
+ size: "large"
39
+ }, "Pruebas"));
40
+ }).toThrow('useTabsContext must be used within a TabsProvider');
41
+ });
42
+ it('should not render text child', function () {
43
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_context.TabsProviderUncontrolled, null, /*#__PURE__*/_react["default"].createElement(_["default"], {
44
+ classes: classes,
45
+ size: "large"
46
+ }, "Tab prueba")));
47
+ expect(wrapper.find('Tab prueba').length).toBe(0);
48
+ });
49
+ it('should render tabs children', function () {
50
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_context.TabsProviderUncontrolled, null, /*#__PURE__*/_react["default"].createElement(_["default"], {
51
+ classes: classes,
52
+ size: "large"
53
+ }, /*#__PURE__*/_react["default"].createElement("div", null, "Tab prueba"))));
54
+ expect(wrapper.find({
55
+ children: 'Tab prueba'
56
+ }).length).toBe(1);
57
+ });
58
+ it('should be selected the first child', function () {
59
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_context.TabsProviderUncontrolled, null, /*#__PURE__*/_react["default"].createElement(_["default"], {
60
+ classes: classes,
61
+ size: "large"
62
+ }, /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
63
+ title: "child 1",
64
+ testId: "tab-child-1"
65
+ }), /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
66
+ title: "child 2",
67
+ testId: "tab-child-2"
68
+ }), /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
69
+ title: "child 3",
70
+ testId: "tab-child-3"
71
+ }))));
72
+ expect(wrapper.find({
73
+ 'data-testid': 'tab-child-1'
74
+ }).prop('className')).toContain('selected');
75
+ });
76
+ it('should be displayed the first child content', function () {
77
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_context.TabsProviderUncontrolled, null, /*#__PURE__*/_react["default"].createElement(_["default"], {
78
+ classes: classes,
79
+ size: "large"
80
+ }, /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
81
+ title: "child 1",
82
+ testId: "tab-child-1"
83
+ }), /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
84
+ title: "child 2",
85
+ testId: "tab-child-2"
86
+ }), /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
87
+ title: "child 3",
88
+ testId: "tab-child-3"
89
+ })), /*#__PURE__*/_react["default"].createElement(_TabContent["default"], {
90
+ value: 0,
91
+ testId: "tab-content-1"
92
+ }, "Tab child 1 content"), /*#__PURE__*/_react["default"].createElement(_TabContent["default"], {
93
+ value: 1,
94
+ testId: "tab-content-2"
95
+ }, "Tab child 2 content"), /*#__PURE__*/_react["default"].createElement(_TabContent["default"], {
96
+ value: 2,
97
+ testId: "tab-content-3"
98
+ }, "Tab child 3 content")));
99
+ expect(wrapper.find({
100
+ 'data-testid': 'tab-child-1'
101
+ }).prop('className')).toContain('selected');
102
+ expect(wrapper.find({
103
+ 'data-testid': 'tab-child-2'
104
+ }).prop('className')).not.toContain('selected');
105
+ expect(wrapper.find({
106
+ 'data-testid': 'tab-child-3'
107
+ }).prop('className')).not.toContain('selected');
108
+ expect(wrapper.find({
109
+ 'data-testid': 'tab-content-1'
110
+ }).prop('className')).not.toContain('hide');
111
+ expect(wrapper.find({
112
+ 'data-testid': 'tab-content-2'
113
+ }).prop('className')).toContain('hide');
114
+ expect(wrapper.find({
115
+ 'data-testid': 'tab-content-3'
116
+ }).prop('className')).toContain('hide');
117
+ });
118
+ it('should display content on click', function () {
119
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_context.TabsProviderUncontrolled, null, /*#__PURE__*/_react["default"].createElement(_["default"], {
120
+ classes: classes,
121
+ size: "large"
122
+ }, /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
123
+ title: "child 1",
124
+ testId: "tab-child-1"
125
+ }), /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
126
+ title: "child 2",
127
+ testId: "tab-child-2"
128
+ }), /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
129
+ title: "child 3",
130
+ testId: "tab-child-3"
131
+ })), /*#__PURE__*/_react["default"].createElement(_TabContent["default"], {
132
+ value: 0,
133
+ testId: "tab-content-1"
134
+ }, "Tab child 1 content"), /*#__PURE__*/_react["default"].createElement(_TabContent["default"], {
135
+ value: 1,
136
+ testId: "tab-content-2"
137
+ }, "Tab child 2 content"), /*#__PURE__*/_react["default"].createElement(_TabContent["default"], {
138
+ value: 2,
139
+ testId: "tab-content-3"
140
+ }, "Tab child 3 content")));
141
+ expect(wrapper.find({
142
+ 'data-testid': 'tab-child-1'
143
+ }).prop('className')).toContain('selected');
144
+ expect(wrapper.find({
145
+ 'data-testid': 'tab-content-1'
146
+ }).prop('className')).not.toContain('hide');
147
+ wrapper.find({
148
+ 'data-testid': 'tab-child-3'
149
+ }).simulate('click');
150
+ expect(wrapper.find({
151
+ 'data-testid': 'tab-child-3'
152
+ }).prop('className')).toContain('selected');
153
+ expect(wrapper.find({
154
+ 'data-testid': 'tab-content-3'
155
+ }).prop('className')).not.toContain('hide');
156
+ });
157
+ });
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _default = {
8
+ container: {
9
+ display: 'flex',
10
+ position: 'relative',
11
+ overflowX: 'auto',
12
+ boxShadow: 'inset 0 -1px 0px 0px #EDEDF1',
13
+ '&::-webkit-scrollbar': {
14
+ display: 'none'
15
+ },
16
+ scrollbarWidth: 'none'
17
+ }
18
+ };
19
+ exports["default"] = _default;
package/build/Tag/Tag.js CHANGED
@@ -36,9 +36,9 @@ var Tag = function Tag(_ref) {
36
36
  alignItems: "center",
37
37
  wrap: "noWrap"
38
38
  }, iconName && /*#__PURE__*/_react["default"].createElement("span", {
39
- className: "".concat(classes.icon, " ").concat(size ? classes["".concat(size, "Icon")] : classes.standardIcon, " ").concat(theme ? classes["".concat(theme, "Icon")] : classes.defaultIcon)
39
+ className: "".concat(classes.icon, " ").concat(size === 'big' ? classes.bigIcon : classes.standardIcon, " ").concat(theme ? classes["".concat(theme, "Icon")] : classes.defaultIcon)
40
40
  }), /*#__PURE__*/_react["default"].createElement("span", {
41
- className: "".concat(classes.tagText, " ").concat(size ? classes["".concat(size, "TagText")] : classes.standardTagText)
41
+ className: classes.tagText
42
42
  }, children)));
43
43
  };
44
44