@occmundial/occ-atomic 3.0.0-beta.65 → 3.0.0-beta.67

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,24 @@
1
+ # [3.0.0-beta.67](https://github.com/occmundial/occ-atomic/compare/v3.0.0-beta.66...v3.0.0-beta.67) (2024-10-10)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * Pass ref to nav avatar button and update menu example ([6aecf3d](https://github.com/occmundial/occ-atomic/commit/6aecf3d9d3353b2b397b42c1fd168561715f4f63))
7
+ * Update NavAside styles ([313b8c0](https://github.com/occmundial/occ-atomic/commit/313b8c0da245dae3f08d25b0e9359067afac9835))
8
+
9
+
10
+ ### Features
11
+
12
+ * Add a Drawer component ([255f022](https://github.com/occmundial/occ-atomic/commit/255f02222f2c3bfd46f6792611d05eafec92816e))
13
+ * Implement triggerRef into the Menu component ([18e5ae8](https://github.com/occmundial/occ-atomic/commit/18e5ae80ef60d6da6d7cb3a7fd04492cc3ae9b4f))
14
+
15
+ # [3.0.0-beta.66](https://github.com/occmundial/occ-atomic/compare/v3.0.0-beta.65...v3.0.0-beta.66) (2024-10-04)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * Menu orientation relative to target ([d1d60f7](https://github.com/occmundial/occ-atomic/commit/d1d60f764376ad46acd5f788981ba794b9786a96))
21
+
1
22
  # [3.0.0-beta.65](https://github.com/occmundial/occ-atomic/compare/v3.0.0-beta.64...v3.0.0-beta.65) (2024-10-04)
2
23
 
3
24
 
@@ -44,21 +44,21 @@ Object {
44
44
  },
45
45
  "editable": Object {
46
46
  "&:active $overlay": Object {
47
- "background": "hsl(234 75.4% 12.7% / 0.4)",
47
+ "background": "rgba(8, 13, 57, 0.4)",
48
48
  },
49
49
  "&:hover $camera": Object {
50
50
  "opacity": 1,
51
51
  },
52
52
  "&:hover $overlay": Object {
53
- "background": "hsl(234 75.4% 12.7% / 0.3)",
53
+ "background": "rgba(8, 13, 57, 0.3)",
54
54
  },
55
55
  },
56
56
  "hoverPhoto": Object {
57
57
  "&:active $overlay": Object {
58
- "background": "hsl(234 75.4% 12.7% / 0.4)",
58
+ "background": "rgba(8, 13, 57, 0.4)",
59
59
  },
60
60
  "&:hover $overlay": Object {
61
- "background": "hsl(234 75.4% 12.7% / 0.3)",
61
+ "background": "rgba(8, 13, 57, 0.3)",
62
62
  },
63
63
  },
64
64
  "initials": Object {
@@ -62,13 +62,13 @@ Object {
62
62
  "color": "#878A9F",
63
63
  },
64
64
  "&:active": Object {
65
- "background": "hsl(234 75.4% 12.7% / 0.1)",
65
+ "background": "rgba(8, 13, 57, 0.1)",
66
66
  },
67
67
  "&:focus-visible": Object {
68
- "boxShadow": "0 0 0 8px hsl(234 75.4% 12.7% / 0.1)",
68
+ "boxShadow": "0 0 0 8px rgba(8, 13, 57, 0.1)",
69
69
  },
70
70
  "&:hover": Object {
71
- "background": "hsl(234 75.4% 12.7% / 0.05)",
71
+ "background": "rgba(8, 13, 57, 0.05)",
72
72
  },
73
73
  "background": "transparent",
74
74
  "color": "#5A5D7B",
@@ -102,7 +102,7 @@ Object {
102
102
  },
103
103
  "ghostWhite": Object {
104
104
  "& $icon, & $iconRight": Object {
105
- "fill": "#fff",
105
+ "fill": "rgba(255,255,255,0.7)",
106
106
  },
107
107
  "&$disabled": Object {
108
108
  "& $icon, & $iconRight": Object {
@@ -168,7 +168,7 @@ Object {
168
168
  "width": "100%",
169
169
  },
170
170
  "loadIcon": Object {
171
- "fill": "#fff",
171
+ "fill": "rgba(255,255,255,0.7)",
172
172
  "height": 24,
173
173
  "width": 24,
174
174
  },
@@ -193,7 +193,7 @@ Object {
193
193
  },
194
194
  "primary": Object {
195
195
  "& $icon, & $iconRight": Object {
196
- "fill": "#fff",
196
+ "fill": "rgba(255,255,255,0.7)",
197
197
  },
198
198
  "&$disabled": Object {
199
199
  "& $icon, & $iconRight": Object {
@@ -210,7 +210,7 @@ Object {
210
210
  "outline": "2px solid rgba(255,255,255,0.2)",
211
211
  },
212
212
  "&:focus-visible": Object {
213
- "boxShadow": "0 0 0 8px hsl(344 87.1% 57.5% / 0.3)",
213
+ "boxShadow": "0 0 0 8px rgba(241, 52, 101, 0.3)",
214
214
  },
215
215
  "&:hover": Object {
216
216
  "background": "#A32444",
@@ -234,19 +234,19 @@ Object {
234
234
  "& $icon, & $iconRight": Object {
235
235
  "fill": "#8DA5DA",
236
236
  },
237
- "background": "hsl(221 91.2% 35.7% / 0.1)",
237
+ "background": "rgba(8, 60, 174, 0.1)",
238
238
  "color": "#486EC3",
239
239
  },
240
240
  "&:active": Object {
241
- "background": "hsl(221 91.2% 35.7% / 0.2)",
241
+ "background": "rgba(8, 60, 174, 0.2)",
242
242
  },
243
243
  "&:focus-visible": Object {
244
- "boxShadow": "0 0 0 8px hsl(221 91.2% 35.7% / 0.3)",
244
+ "boxShadow": "0 0 0 8px rgba(8, 60, 174, 0.3)",
245
245
  },
246
246
  "&:hover": Object {
247
- "background": "hsl(221 91.2% 35.7% / 0.1)",
247
+ "background": "rgba(8, 60, 174, 0.1)",
248
248
  },
249
- "background": "hsl(221 91.2% 35.7% / 0.05)",
249
+ "background": "rgba(8, 60, 174, 0.05)",
250
250
  "color": "#083CAE",
251
251
  },
252
252
  "tertiary": Object {
@@ -265,16 +265,16 @@ Object {
265
265
  "outlineColor": "#8DA5DA",
266
266
  },
267
267
  "&:active": Object {
268
- "background": "hsl(221 91.2% 35.7% / 0.1)",
268
+ "background": "rgba(8, 60, 174, 0.1)",
269
269
  },
270
270
  "&:focus": Object {
271
271
  "outline": "2px solid #083CAE",
272
272
  },
273
273
  "&:focus-visible": Object {
274
- "boxShadow": "0 0 0 8px hsl(221 91.2% 35.7% / 0.3)",
274
+ "boxShadow": "0 0 0 8px rgba(8, 60, 174, 0.3)",
275
275
  },
276
276
  "&:hover": Object {
277
- "background": "hsl(221 91.2% 35.7% / 0.05)",
277
+ "background": "rgba(8, 60, 174, 0.05)",
278
278
  },
279
279
  "background": "transparent",
280
280
  "color": "#083CAE",
@@ -283,7 +283,7 @@ Object {
283
283
  },
284
284
  "tertiaryWhite": Object {
285
285
  "& $icon, & $iconRight": Object {
286
- "fill": "#fff",
286
+ "fill": "rgba(255,255,255,0.7)",
287
287
  },
288
288
  "&$disabled": Object {
289
289
  "& $icon, & $iconRight": Object {
@@ -78,7 +78,7 @@ Object {
78
78
  },
79
79
  "&$active, &$undetermined": Object {
80
80
  "& $check $box": Object {
81
- "background": "hsl(221 91.2% 35.7% / 0.1)",
81
+ "background": "rgba(8, 60, 174, 0.1)",
82
82
  "boxShadow": "inset 0 0 0 1px rgba(255,255,255,0.2)",
83
83
  },
84
84
  },
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = Drawer;
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 Drawer(_ref) {
15
+ var classes = _ref.classes,
16
+ header = _ref.header,
17
+ children = _ref.children,
18
+ testId = _ref.testId,
19
+ show = _ref.show,
20
+ _onAnimationEnd = _ref.onAnimationEnd;
21
+ return /*#__PURE__*/_react["default"].createElement("div", {
22
+ className: "".concat(classes.container, " ").concat(show ? classes.show : classes.hide),
23
+ onAnimationEnd: function onAnimationEnd(e) {
24
+ if (_onAnimationEnd) _onAnimationEnd(e);
25
+ },
26
+ "data-testid": testId
27
+ }, header, /*#__PURE__*/_react["default"].createElement("div", {
28
+ className: classes.content
29
+ }, children));
30
+ }
31
+
32
+ ;
33
+ Drawer.propTypes = {
34
+ classes: _propTypes["default"].object,
35
+ header: _propTypes["default"].node,
36
+ children: _propTypes["default"].node,
37
+ testId: _propTypes["default"].string,
38
+ show: _propTypes["default"].bool,
39
+ onAnimationEnd: _propTypes["default"].func
40
+ };
@@ -0,0 +1,110 @@
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 = _interopRequireDefault(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _reactDom = _interopRequireDefault(require("react-dom"));
15
+
16
+ var _reactJss = _interopRequireDefault(require("react-jss"));
17
+
18
+ var _Drawer = _interopRequireDefault(require("./Drawer"));
19
+
20
+ var _styles = _interopRequireDefault(require("./styles"));
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
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
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
27
+
28
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
29
+
30
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
31
+
32
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
33
+
34
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
35
+
36
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
37
+
38
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
39
+
40
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
41
+
42
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
43
+
44
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
45
+
46
+ var Drawer = (0, _reactJss["default"])(_styles["default"])(_Drawer["default"]);
47
+
48
+ var DrawerPortal = /*#__PURE__*/function (_React$Component) {
49
+ _inherits(DrawerPortal, _React$Component);
50
+
51
+ var _super = _createSuper(DrawerPortal);
52
+
53
+ function DrawerPortal(props) {
54
+ var _this;
55
+
56
+ _classCallCheck(this, DrawerPortal);
57
+
58
+ _this = _super.call(this, props);
59
+ _this.state = {
60
+ mount: false
61
+ };
62
+ _this.onAnimationEnd = _this.onAnimationEnd.bind(_assertThisInitialized(_this));
63
+ return _this;
64
+ }
65
+
66
+ _createClass(DrawerPortal, [{
67
+ key: "componentWillReceiveProps",
68
+ value: function componentWillReceiveProps(props) {
69
+ if (props.show && !this.props.show) {
70
+ this.setState({
71
+ mount: true
72
+ });
73
+ }
74
+ }
75
+ }, {
76
+ key: "onAnimationEnd",
77
+ value: function onAnimationEnd() {
78
+ this.setState({
79
+ mount: false
80
+ });
81
+ }
82
+ }, {
83
+ key: "render",
84
+ value: function render() {
85
+ var mount = this.state.mount;
86
+ var _this$props = this.props,
87
+ container = _this$props.container,
88
+ show = _this$props.show;
89
+
90
+ var DrawerComponent = /*#__PURE__*/_react["default"].createElement(Drawer, _extends({}, this.props, {
91
+ onAnimationEnd: !show && mount ? this.onAnimationEnd : null
92
+ }));
93
+
94
+ if (container) {
95
+ return mount ? /*#__PURE__*/_reactDom["default"].createPortal(DrawerComponent, container) : null;
96
+ } else {
97
+ return mount ? DrawerComponent : null;
98
+ }
99
+ }
100
+ }]);
101
+
102
+ return DrawerPortal;
103
+ }(_react["default"].Component);
104
+
105
+ DrawerPortal.propTypes = {
106
+ show: _propTypes["default"].bool,
107
+ container: _propTypes["default"].object
108
+ };
109
+ var _default = DrawerPortal;
110
+ exports["default"] = _default;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _enzyme = require("enzyme");
6
+
7
+ var _Drawer = _interopRequireDefault(require("./Drawer"));
8
+
9
+ var _styles = _interopRequireDefault(require("./styles"));
10
+
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
+
13
+ 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; }
14
+
15
+ var reduceClasses = function reduceClasses(prev, curr) {
16
+ return Object.assign({}, prev, _defineProperty({}, curr, curr));
17
+ };
18
+
19
+ var classes = Object.keys(_styles["default"]).reduce(reduceClasses, {});
20
+ describe('Drawer', function () {
21
+ it('should render', function () {
22
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
23
+ classes: classes,
24
+ show: true
25
+ }, "Test"));
26
+ expect(wrapper.exists()).toBe(true);
27
+ expect(wrapper.text()).toContain('Test');
28
+ });
29
+ it('should apply the correct classes based on the show prop', function () {
30
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
31
+ classes: classes,
32
+ show: true
33
+ }, "Test"));
34
+ expect(wrapper.find('.show').exists()).toBe(true);
35
+ expect(wrapper.find('.hide').exists()).toBe(false);
36
+ wrapper.setProps({
37
+ show: false
38
+ });
39
+ expect(wrapper.find('.show').exists()).toBe(false);
40
+ expect(wrapper.find('.hide').exists()).toBe(true);
41
+ });
42
+ it('should call onAnimationEnd when animation ends', function () {
43
+ var onAnimationEndMock = jest.fn();
44
+ var wrapper = (0, _enzyme.mount)( /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
45
+ classes: classes,
46
+ show: true,
47
+ onAnimationEnd: onAnimationEndMock
48
+ }, "Test"));
49
+ wrapper.find('div.container').simulate('animationEnd');
50
+ expect(onAnimationEndMock).toHaveBeenCalled();
51
+ });
52
+ });
@@ -0,0 +1,61 @@
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
+ var _shadows = _interopRequireDefault(require("../tokens/shadows.json"));
11
+
12
+ var _spacing = _interopRequireDefault(require("../tokens/spacing.json"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
+
16
+ var _default = {
17
+ '@global': {
18
+ body: {
19
+ overflow: 'hidden'
20
+ }
21
+ },
22
+ '@keyframes expand': {
23
+ from: {
24
+ height: 0
25
+ },
26
+ to: {
27
+ height: '100%'
28
+ }
29
+ },
30
+ '@keyframes collapse': {
31
+ from: {
32
+ height: '100%'
33
+ },
34
+ to: {
35
+ height: 0
36
+ }
37
+ },
38
+ container: {
39
+ display: 'flex',
40
+ flexDirection: 'column',
41
+ height: '100%',
42
+ width: '100%',
43
+ position: 'fixed',
44
+ top: 0,
45
+ left: 0,
46
+ zIndex: 1000,
47
+ backgroundColor: _colors["default"].bg.surface["default"],
48
+ overflow: 'hidden',
49
+ boxShadow: _shadows["default"]['elevation-elevation-3']
50
+ },
51
+ show: {
52
+ animation: 'expand 0.4s cubic-bezier(.4,0,.2,1)'
53
+ },
54
+ hide: {
55
+ animation: 'collapse 0.4s cubic-bezier(.4,0,.2,1)'
56
+ },
57
+ content: {
58
+ padding: _spacing["default"]['size-3']
59
+ }
60
+ };
61
+ exports["default"] = _default;
@@ -36,7 +36,7 @@ Object {
36
36
  "font": "400 14px/1.5 'OccText', sans-serif",
37
37
  },
38
38
  "highlighted": Object {
39
- "background": "hsl(221 91.2% 35.7% / 0.05)",
39
+ "background": "rgba(8, 60, 174, 0.05)",
40
40
  "font": "400 16px/1.5 'OccText', sans-serif",
41
41
  },
42
42
  "icon": Object {
@@ -47,10 +47,10 @@ Object {
47
47
  "& > $rightText": Object {
48
48
  "color": "#080D39",
49
49
  },
50
- "background": "hsl(221 91.2% 35.7% / 0.1)",
50
+ "background": "rgba(8, 60, 174, 0.1)",
51
51
  },
52
52
  "&:hover": Object {
53
- "background": "hsl(221 91.2% 35.7% / 0.05)",
53
+ "background": "rgba(8, 60, 174, 0.05)",
54
54
  },
55
55
  "alignItems": "center",
56
56
  "borderRadius": "4px",
@@ -77,9 +77,9 @@ Object {
77
77
  },
78
78
  "onFocus": Object {
79
79
  "&:hover": Object {
80
- "background": "hsl(221 91.2% 35.7% / 0.1)",
80
+ "background": "rgba(8, 60, 174, 0.1)",
81
81
  },
82
- "background": "hsl(221 91.2% 35.7% / 0.1)",
82
+ "background": "rgba(8, 60, 174, 0.1)",
83
83
  },
84
84
  "right": Object {
85
85
  "marginLeft": "16px",
@@ -95,7 +95,7 @@ Object {
95
95
  "link": Object {
96
96
  "&:focus-visible": Object {
97
97
  "borderRadius": "4px",
98
- "boxShadow": "0 0 0 8px hsl(234 75.4% 12.7% / 0.1)",
98
+ "boxShadow": "0 0 0 8px rgba(8, 13, 57, 0.1)",
99
99
  "color": "#080D39",
100
100
  "outline": 0,
101
101
  },
@@ -21,44 +21,26 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
21
21
 
22
22
  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); }
23
23
 
24
- 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; }
25
-
26
- 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; }
27
-
28
- 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; }
29
-
30
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
-
32
- 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."); }
33
-
34
- 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); }
35
-
36
- 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; }
37
-
38
- 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; }
39
-
40
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
41
-
42
24
  function Menu(_ref) {
43
25
  var children = _ref.children,
44
26
  id = _ref.id,
45
27
  classes = _ref.classes,
46
28
  className = _ref.className,
47
- triggerElement = _ref.triggerElement,
29
+ triggerRef = _ref.triggerRef,
30
+ open = _ref.open,
31
+ setOpen = _ref.setOpen,
48
32
  _ref$placement = _ref.placement,
49
33
  placement = _ref$placement === void 0 ? 'left' : _ref$placement;
50
34
 
51
- var _useState = (0, _react.useState)(false),
52
- _useState2 = _slicedToArray(_useState, 2),
53
- open = _useState2[0],
54
- setOpen = _useState2[1];
55
-
56
35
  var _useFloating = (0, _react2.useFloating)({
57
36
  open: open,
58
37
  onOpenChange: setOpen,
59
- placement: placement === 'left' ? 'bottom-start' : 'bottom-end',
38
+ placement: placement,
60
39
  middleware: [(0, _react2.offset)(16), (0, _react2.shift)()],
61
- whileElementsMounted: _react2.autoUpdate
40
+ whileElementsMounted: _react2.autoUpdate,
41
+ elements: {
42
+ reference: triggerRef
43
+ }
62
44
  }),
63
45
  refs = _useFloating.refs,
64
46
  floatingStyles = _useFloating.floatingStyles,
@@ -69,12 +51,10 @@ function Menu(_ref) {
69
51
  var role = (0, _react2.useRole)(context);
70
52
 
71
53
  var _useInteractions = (0, _react2.useInteractions)([click, dismiss, role]),
72
- getReferenceProps = _useInteractions.getReferenceProps,
73
54
  getFloatingProps = _useInteractions.getFloatingProps;
74
55
 
75
- return /*#__PURE__*/_react["default"].createElement(_react.Fragment, null, triggerElement ? /*#__PURE__*/(0, _react.cloneElement)(triggerElement, _objectSpread({
76
- ref: refs.setReference
77
- }, getReferenceProps())) : '', open && /*#__PURE__*/_react["default"].createElement(_react2.FloatingPortal, null, /*#__PURE__*/_react["default"].createElement(_react2.FloatingFocusManager, {
56
+ console.log(triggerRef, '====');
57
+ return /*#__PURE__*/_react["default"].createElement(_react.Fragment, null, open && /*#__PURE__*/_react["default"].createElement(_react2.FloatingPortal, null, /*#__PURE__*/_react["default"].createElement(_react2.FloatingFocusManager, {
78
58
  context: context,
79
59
  modal: false
80
60
  }, /*#__PURE__*/_react["default"].createElement("div", _extends({
@@ -100,6 +80,12 @@ Menu.propTypes = {
100
80
  /** Boolean value to show or hide the Menu component. */
101
81
  open: _propTypes["default"].bool,
102
82
 
83
+ /** Function that sets the Menu status. */
84
+ setOpen: _propTypes["default"].func,
85
+
86
+ /** Ref that sets to trigger element */
87
+ triggerRef: _propTypes["default"].object,
88
+
103
89
  /** Id that sets to Children container */
104
90
  id: _propTypes["default"].string,
105
91
 
@@ -107,5 +93,5 @@ Menu.propTypes = {
107
93
  className: _propTypes["default"].string,
108
94
 
109
95
  /** Determines the placement of the Menu */
110
- placement: _propTypes["default"].oneOf(['left', 'right'])
96
+ placement: _propTypes["default"].oneOf(["top", "right", "bottom", "left", "top-start", "top-end", "right-start", "right-end", "bottom-start", "bottom-end", "left-start", "left-end"])
111
97
  };