groovinads-ui 1.2.43 → 1.2.45

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.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "groovinads-ui",
3
3
  "description": "Groovinads UI is a React component library designed exclusively for Groovinads applications. It provides ready-to-use UI elements styled according to Groovinads design guidelines to facilitate rapid development.",
4
- "version": "1.2.43",
4
+ "version": "1.2.45",
5
5
  "keywords": [
6
6
  "css",
7
7
  "sass",
@@ -40,7 +40,8 @@ const DropdownComponent = ({
40
40
  },
41
41
  });
42
42
 
43
- const modifiedMenu = React.cloneElement(Menu, {
43
+ const modifiedMenu = React.cloneElement(Menu,
44
+ {
44
45
  as: 'ul',
45
46
  align,
46
47
  className: fullWidth ? 'w-100' : '',
@@ -52,9 +53,10 @@ const DropdownComponent = ({
52
53
  }
53
54
  : undefined,
54
55
  children: Menu.props.children.length
55
- ? Menu.props.children.map((child) =>
56
+ ? Menu.props.children.map((child, i) =>
56
57
  React.cloneElement(child, {
57
58
  as: 'li',
59
+ key: `${child}${i}`,
58
60
  onClick: () => {
59
61
  if (child.props.onClick) {
60
62
  child.props.onClick();
@@ -65,6 +67,7 @@ const DropdownComponent = ({
65
67
  )
66
68
  : React.cloneElement(Menu.props.children, {
67
69
  as: 'li',
70
+ key: `${child}${i}`,
68
71
  onClick: () => {
69
72
  if (
70
73
  Menu.props.children.props &&
@@ -89,7 +92,7 @@ const DropdownComponent = ({
89
92
  (autoClose === true || autoClose === 'outside')
90
93
  ) {
91
94
  setInnerShow(false);
92
- setShow(false);
95
+ if (setShow) setShow(false);
93
96
  }
94
97
  };
95
98
  document.addEventListener('click', handleClickOutside);
@@ -126,7 +129,7 @@ DropdownComponent.propTypes = {
126
129
  overflow: PropTypes.bool,
127
130
  align: PropTypes.oneOf(['start', 'end']),
128
131
  fullWidth: PropTypes.bool,
129
- drop: PropTypes.oneOf(['up', 'down']),
132
+ drop: PropTypes.oneOf(['up', 'down', 'start', 'end']),
130
133
  };
131
134
 
132
135
  export default DropdownComponent;
@@ -44,10 +44,10 @@ function Tabnav({
44
44
  return (
45
45
  <Nav
46
46
  variant='tabs'
47
- activeKey={toCamelCase(tabs[activeTabState - 1].tab)}
47
+ activeKey={toCamelCase(tabs[activeTabState - 1]?.tab)}
48
48
  onSelect={handleSelect}
49
49
  >
50
- {tabs.map(({ tab, badgeNumber, warningIcon }, index) => {
50
+ {(tabs || [])?.map(({ tab, badgeNumber, warningIcon }, index) => {
51
51
  return (
52
52
  <Nav.Item key={`tabs.tab: ${index}`}>
53
53
  <Nav.Link eventKey={toCamelCase(tab)}>
@@ -23,11 +23,26 @@ const Template = (args) => {
23
23
  {...args}
24
24
  show={show}
25
25
  setShow={setShow}
26
- autoClose={true}
26
+ autoClose={'outside'}
27
27
  >
28
28
  <DropdownToggle onClick={() => handleToggle()}>Toggle</DropdownToggle>
29
29
  <DropdownMenu>
30
- <DropdownItem>Item 1</DropdownItem>
30
+ <DropdownItem>
31
+
32
+ <DropdownComponent
33
+ {...args}
34
+ autoClose={'outside'}
35
+ drop={'end'}
36
+ >
37
+ <DropdownToggle as={'div'}>Toggle</DropdownToggle>
38
+ <DropdownMenu>
39
+ <DropdownItem>Item 1</DropdownItem>
40
+ <DropdownItem>Item 2</DropdownItem>
41
+ <DropdownItem>Item 3</DropdownItem>
42
+ </DropdownMenu>
43
+ </DropdownComponent>
44
+
45
+ </DropdownItem>
31
46
  <DropdownItem>Item 2</DropdownItem>
32
47
  <DropdownItem>Item 3</DropdownItem>
33
48
  </DropdownMenu>