carbon-react 144.10.0 → 144.11.0

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.
@@ -10,9 +10,14 @@ export interface DraggableContainerProps extends MarginProps, Omit<TagProps, "da
10
10
  * `<DraggableItem />` is required to make `Draggable` works
11
11
  */
12
12
  children?: React.ReactNode;
13
+ /**
14
+ * Defines the direction in which the draggable items contents are placed.
15
+ * Can be either "row" or "row-reverse".
16
+ */
17
+ flexDirection?: "row" | "row-reverse";
13
18
  }
14
19
  declare const DraggableContainer: {
15
- ({ "data-element": dataElement, "data-role": dataRole, children, getOrder, ...rest }: DraggableContainerProps): JSX.Element;
20
+ ({ "data-element": dataElement, "data-role": dataRole, children, getOrder, flexDirection, ...rest }: DraggableContainerProps): JSX.Element;
16
21
  displayName: string;
17
22
  };
18
23
  export default DraggableContainer;
@@ -12,6 +12,7 @@ const DraggableContainer = ({
12
12
  "data-role": dataRole = "draggable-container",
13
13
  children,
14
14
  getOrder,
15
+ flexDirection = "row",
15
16
  ...rest
16
17
  }) => {
17
18
  const [draggableItems, setDraggableItems] = useState(React.Children.toArray(children));
@@ -67,7 +68,8 @@ const DraggableContainer = ({
67
68
  return /*#__PURE__*/React.isValidElement(item) && /*#__PURE__*/React.cloneElement(item, {
68
69
  id: `${item.props.id}`,
69
70
  findItem,
70
- moveItem
71
+ moveItem,
72
+ flexDirection
71
73
  }, [item.props.children]);
72
74
  })));
73
75
  };
@@ -76,6 +78,7 @@ if (process.env.NODE_ENV !== "production") {
76
78
  "children": PropTypes.node,
77
79
  "data-element": PropTypes.string,
78
80
  "data-role": PropTypes.string,
81
+ "flexDirection": PropTypes.oneOf(["row-reverse", "row"]),
79
82
  "getOrder": PropTypes.func,
80
83
  "m": PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.oneOf([null]), PropTypes.number, PropTypes.shape({
81
84
  "__@toStringTag": PropTypes.string.isRequired,
@@ -22,9 +22,14 @@ export interface DraggableItemProps extends PaddingProps {
22
22
  * @ignore
23
23
  */
24
24
  moveItem?: (droppedId: string | number, overIndex: number | undefined) => void;
25
+ /**
26
+ * @private
27
+ * @ignore
28
+ */
29
+ flexDirection?: "row" | "row-reverse";
25
30
  }
26
31
  declare const DraggableItem: {
27
- ({ id, findItem, moveItem, children, py, ...rest }: DraggableItemProps): JSX.Element;
32
+ ({ id, findItem, moveItem, children, py, flexDirection, ...rest }: DraggableItemProps): JSX.Element;
28
33
  displayName: string;
29
34
  };
30
35
  export default DraggableItem;
@@ -3,13 +3,15 @@ import React from "react";
3
3
  import PropTypes from "prop-types";
4
4
  import { useDrop, useDrag } from "react-dnd";
5
5
  import { filterStyledSystemPaddingProps } from "../../../style/utils";
6
- import { StyledDraggableItem, StyledIcon } from "./draggable-item.style";
6
+ import { StyledDraggableItem } from "./draggable-item.style";
7
+ import Icon from "../../icon";
7
8
  const DraggableItem = ({
8
9
  id,
9
10
  findItem,
10
11
  moveItem,
11
12
  children,
12
13
  py = 1,
14
+ flexDirection,
13
15
  ...rest
14
16
  }) => {
15
17
  let originalIndex;
@@ -60,8 +62,9 @@ const DraggableItem = ({
60
62
  "data-role": "draggable-item",
61
63
  isDragging: isDragging,
62
64
  ref: node => drag(drop(node)),
63
- py: py
64
- }, paddingProps), children, /*#__PURE__*/React.createElement(StyledIcon, {
65
+ py: py,
66
+ flexDirection: flexDirection
67
+ }, paddingProps), children, /*#__PURE__*/React.createElement(Icon, {
65
68
  type: "drag"
66
69
  }));
67
70
  };
@@ -69,6 +72,7 @@ if (process.env.NODE_ENV !== "production") {
69
72
  DraggableItem.propTypes = {
70
73
  "children": PropTypes.node,
71
74
  "findItem": PropTypes.func,
75
+ "flexDirection": PropTypes.oneOf(["row-reverse", "row"]),
72
76
  "id": PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
73
77
  "moveItem": PropTypes.func,
74
78
  "p": PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.oneOf([null]), PropTypes.number, PropTypes.shape({
@@ -1,9 +1,8 @@
1
- /// <reference types="react" />
2
1
  import { PaddingProps } from "styled-system";
3
2
  declare const StyledDraggableContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
4
3
  interface StyledDraggableItemProps extends PaddingProps {
5
4
  isDragging?: boolean;
5
+ flexDirection?: "row" | "row-reverse";
6
6
  }
7
7
  declare const StyledDraggableItem: import("styled-components").StyledComponent<"div", any, StyledDraggableItemProps, never>;
8
- declare const StyledIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
9
- export { StyledDraggableContainer, StyledDraggableItem, StyledIcon };
8
+ export { StyledDraggableContainer, StyledDraggableItem };
@@ -1,7 +1,6 @@
1
1
  import styled from "styled-components";
2
2
  import { padding, margin } from "styled-system";
3
3
  import { baseTheme } from "../../../style/themes";
4
- import Icon from "../../icon";
5
4
  const StyledDraggableContainer = styled.div`
6
5
  ${margin}
7
6
  `;
@@ -11,18 +10,18 @@ const StyledDraggableItem = styled.div`
11
10
  border-bottom: 1px solid var(--colorsUtilityMajor050);
12
11
  ${padding}
13
12
  cursor: move;
14
-
13
+ justify-content: space-between;
14
+ flex-direction: ${({
15
+ flexDirection
16
+ }) => flexDirection};
15
17
  opacity: ${({
16
18
  isDragging
17
19
  }) => isDragging ? "0" : "1"};
18
20
  `;
19
- const StyledIcon = styled(Icon)`
20
- margin-left: auto;
21
- `;
22
21
  StyledDraggableContainer.defaultProps = {
23
22
  theme: baseTheme
24
23
  };
25
24
  StyledDraggableItem.defaultProps = {
26
25
  theme: baseTheme
27
26
  };
28
- export { StyledDraggableContainer, StyledDraggableItem, StyledIcon };
27
+ export { StyledDraggableContainer, StyledDraggableItem };
@@ -10,9 +10,14 @@ export interface DraggableContainerProps extends MarginProps, Omit<TagProps, "da
10
10
  * `<DraggableItem />` is required to make `Draggable` works
11
11
  */
12
12
  children?: React.ReactNode;
13
+ /**
14
+ * Defines the direction in which the draggable items contents are placed.
15
+ * Can be either "row" or "row-reverse".
16
+ */
17
+ flexDirection?: "row" | "row-reverse";
13
18
  }
14
19
  declare const DraggableContainer: {
15
- ({ "data-element": dataElement, "data-role": dataRole, children, getOrder, ...rest }: DraggableContainerProps): JSX.Element;
20
+ ({ "data-element": dataElement, "data-role": dataRole, children, getOrder, flexDirection, ...rest }: DraggableContainerProps): JSX.Element;
16
21
  displayName: string;
17
22
  };
18
23
  export default DraggableContainer;
@@ -21,6 +21,7 @@ const DraggableContainer = ({
21
21
  "data-role": dataRole = "draggable-container",
22
22
  children,
23
23
  getOrder,
24
+ flexDirection = "row",
24
25
  ...rest
25
26
  }) => {
26
27
  const [draggableItems, setDraggableItems] = (0, _react.useState)(_react.default.Children.toArray(children));
@@ -76,7 +77,8 @@ const DraggableContainer = ({
76
77
  return /*#__PURE__*/_react.default.isValidElement(item) && /*#__PURE__*/_react.default.cloneElement(item, {
77
78
  id: `${item.props.id}`,
78
79
  findItem,
79
- moveItem
80
+ moveItem,
81
+ flexDirection
80
82
  }, [item.props.children]);
81
83
  })));
82
84
  };
@@ -85,6 +87,7 @@ if (process.env.NODE_ENV !== "production") {
85
87
  "children": _propTypes.default.node,
86
88
  "data-element": _propTypes.default.string,
87
89
  "data-role": _propTypes.default.string,
90
+ "flexDirection": _propTypes.default.oneOf(["row-reverse", "row"]),
88
91
  "getOrder": _propTypes.default.func,
89
92
  "m": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
90
93
  "__@toStringTag": _propTypes.default.string.isRequired,
@@ -22,9 +22,14 @@ export interface DraggableItemProps extends PaddingProps {
22
22
  * @ignore
23
23
  */
24
24
  moveItem?: (droppedId: string | number, overIndex: number | undefined) => void;
25
+ /**
26
+ * @private
27
+ * @ignore
28
+ */
29
+ flexDirection?: "row" | "row-reverse";
25
30
  }
26
31
  declare const DraggableItem: {
27
- ({ id, findItem, moveItem, children, py, ...rest }: DraggableItemProps): JSX.Element;
32
+ ({ id, findItem, moveItem, children, py, flexDirection, ...rest }: DraggableItemProps): JSX.Element;
28
33
  displayName: string;
29
34
  };
30
35
  export default DraggableItem;
@@ -9,6 +9,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
9
9
  var _reactDnd = require("react-dnd");
10
10
  var _utils = require("../../../style/utils");
11
11
  var _draggableItem = require("./draggable-item.style");
12
+ var _icon = _interopRequireDefault(require("../../icon"));
12
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
14
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
15
  const DraggableItem = ({
@@ -17,6 +18,7 @@ const DraggableItem = ({
17
18
  moveItem,
18
19
  children,
19
20
  py = 1,
21
+ flexDirection,
20
22
  ...rest
21
23
  }) => {
22
24
  let originalIndex;
@@ -67,8 +69,9 @@ const DraggableItem = ({
67
69
  "data-role": "draggable-item",
68
70
  isDragging: isDragging,
69
71
  ref: node => drag(drop(node)),
70
- py: py
71
- }, paddingProps), children, /*#__PURE__*/_react.default.createElement(_draggableItem.StyledIcon, {
72
+ py: py,
73
+ flexDirection: flexDirection
74
+ }, paddingProps), children, /*#__PURE__*/_react.default.createElement(_icon.default, {
72
75
  type: "drag"
73
76
  }));
74
77
  };
@@ -76,6 +79,7 @@ if (process.env.NODE_ENV !== "production") {
76
79
  DraggableItem.propTypes = {
77
80
  "children": _propTypes.default.node,
78
81
  "findItem": _propTypes.default.func,
82
+ "flexDirection": _propTypes.default.oneOf(["row-reverse", "row"]),
79
83
  "id": _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
80
84
  "moveItem": _propTypes.default.func,
81
85
  "p": _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.oneOf([null]), _propTypes.default.number, _propTypes.default.shape({
@@ -1,9 +1,8 @@
1
- /// <reference types="react" />
2
1
  import { PaddingProps } from "styled-system";
3
2
  declare const StyledDraggableContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
4
3
  interface StyledDraggableItemProps extends PaddingProps {
5
4
  isDragging?: boolean;
5
+ flexDirection?: "row" | "row-reverse";
6
6
  }
7
7
  declare const StyledDraggableItem: import("styled-components").StyledComponent<"div", any, StyledDraggableItemProps, never>;
8
- declare const StyledIcon: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../../icon").IconProps & import("react").RefAttributes<HTMLSpanElement>>, any, {}, never>;
9
- export { StyledDraggableContainer, StyledDraggableItem, StyledIcon };
8
+ export { StyledDraggableContainer, StyledDraggableItem };
@@ -3,11 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.StyledIcon = exports.StyledDraggableItem = exports.StyledDraggableContainer = void 0;
6
+ exports.StyledDraggableItem = exports.StyledDraggableContainer = void 0;
7
7
  var _styledComponents = _interopRequireDefault(require("styled-components"));
8
8
  var _styledSystem = require("styled-system");
9
9
  var _themes = require("../../../style/themes");
10
- var _icon = _interopRequireDefault(require("../../icon"));
11
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
11
  const StyledDraggableContainer = exports.StyledDraggableContainer = _styledComponents.default.div`
13
12
  ${_styledSystem.margin}
@@ -18,14 +17,14 @@ const StyledDraggableItem = exports.StyledDraggableItem = _styledComponents.defa
18
17
  border-bottom: 1px solid var(--colorsUtilityMajor050);
19
18
  ${_styledSystem.padding}
20
19
  cursor: move;
21
-
20
+ justify-content: space-between;
21
+ flex-direction: ${({
22
+ flexDirection
23
+ }) => flexDirection};
22
24
  opacity: ${({
23
25
  isDragging
24
26
  }) => isDragging ? "0" : "1"};
25
27
  `;
26
- const StyledIcon = exports.StyledIcon = (0, _styledComponents.default)(_icon.default)`
27
- margin-left: auto;
28
- `;
29
28
  StyledDraggableContainer.defaultProps = {
30
29
  theme: _themes.baseTheme
31
30
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-react",
3
- "version": "144.10.0",
3
+ "version": "144.11.0",
4
4
  "description": "A library of reusable React components for easily building user interfaces.",
5
5
  "files": [
6
6
  "lib",