beem-component 1.2.9 → 1.3.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.
- package/dist/components/Cards/cards.js +4 -4
- package/dist/components/NoteBar/noteBar.js +62 -13
- package/dist/components/NoteBar/noteBar.stories.js +13 -1
- package/dist/components/ProgressRing/progressRing.js +19 -29
- package/dist/components/ProgressRing/progressRing.stories.js +1 -1
- package/dist/components/Tabs/tabs.js +25 -19
- package/dist/components/Tabs/tabs.stories.js +16 -5
- package/package.json +1 -1
- package/src/App.js +20 -4
- package/src/lib/components/Cards/cards.js +6 -12
- package/src/lib/components/NoteBar/noteBar.js +29 -5
- package/src/lib/components/NoteBar/noteBar.stories.js +12 -0
- package/src/lib/components/ProgressRing/progressRing.js +13 -24
- package/src/lib/components/ProgressRing/progressRing.stories.js +1 -1
- package/src/lib/components/Tabs/tabs.js +16 -9
- package/src/lib/components/Tabs/tabs.stories.js +15 -3
|
@@ -15,10 +15,10 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
15
15
|
|
|
16
16
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
17
17
|
|
|
18
|
-
var BmCard = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n background: ", ";\n border: 0.071rem solid ", ";\n border-radius: 0.25rem;\n"])), _colors.BmPrimaryWhite, _colors.BmGrey400);
|
|
18
|
+
var BmCard = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n background: ", ";\n border: 0.071rem solid ", ";\n border-radius: 0.25rem;\n > * {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n }\n"])), _colors.BmPrimaryWhite, _colors.BmGrey400);
|
|
19
19
|
|
|
20
|
-
BmCard.Header = _styledComponents.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n
|
|
21
|
-
BmCard.Body = _styledComponents.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n
|
|
22
|
-
BmCard.Footer = _styledComponents.default.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n
|
|
20
|
+
BmCard.Header = _styledComponents.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n padding: 1rem 1rem 0rem 1rem;\n"])));
|
|
21
|
+
BmCard.Body = _styledComponents.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n padding: 0rem 1rem;\n"])));
|
|
22
|
+
BmCard.Footer = _styledComponents.default.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n border-top: 0.071rem solid ", ";\n padding: 1rem;\n"])), _colors.BmGrey400);
|
|
23
23
|
var _default = BmCard;
|
|
24
24
|
exports.default = _default;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
8
|
exports.NoteBarWrapper = exports.BmNoteBar = void 0;
|
|
7
9
|
|
|
8
|
-
var _react =
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
11
|
|
|
10
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
13
|
|
|
@@ -17,30 +19,66 @@ var _colors = require("../colors");
|
|
|
17
19
|
|
|
18
20
|
var _iconStyles = require("../iconStyles");
|
|
19
21
|
|
|
20
|
-
var _excluded = ["type", "children", "color", "size"];
|
|
22
|
+
var _excluded = ["type", "children", "color", "size", "closeButton"];
|
|
21
23
|
|
|
22
24
|
var _templateObject;
|
|
23
25
|
|
|
24
26
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
27
|
|
|
28
|
+
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); }
|
|
29
|
+
|
|
30
|
+
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; }
|
|
31
|
+
|
|
32
|
+
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); }
|
|
33
|
+
|
|
34
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
35
|
+
|
|
36
|
+
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."); }
|
|
37
|
+
|
|
38
|
+
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); }
|
|
39
|
+
|
|
40
|
+
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; }
|
|
41
|
+
|
|
42
|
+
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; }
|
|
43
|
+
|
|
44
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
45
|
+
|
|
26
46
|
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; }
|
|
27
47
|
|
|
28
48
|
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; }
|
|
29
49
|
|
|
30
50
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
31
51
|
|
|
32
|
-
var NoteBarWrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display:
|
|
52
|
+
var NoteBarWrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: ", ";\n flex-direction: row;\n align-items: center;\n padding: 0.5rem 1rem;\n border: 0.071rem solid ", ";\n border-radius: 0.25rem;\n > *:not(:last-child) {\n margin-right: 0.5rem;\n }\n"])), function (_ref) {
|
|
53
|
+
var closeButton = _ref.closeButton,
|
|
54
|
+
isOpen = _ref.isOpen;
|
|
33
55
|
|
|
34
|
-
|
|
56
|
+
if (!closeButton) {
|
|
57
|
+
return "flex";
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return isOpen ? "flex" : "none";
|
|
61
|
+
}, _colors.BmGrey400);
|
|
35
62
|
|
|
36
|
-
|
|
37
|
-
var type = _ref.type,
|
|
38
|
-
children = _ref.children,
|
|
39
|
-
color = _ref.color,
|
|
40
|
-
size = _ref.size,
|
|
41
|
-
rest = _objectWithoutProperties(_ref, _excluded);
|
|
63
|
+
exports.NoteBarWrapper = NoteBarWrapper;
|
|
42
64
|
|
|
43
|
-
|
|
65
|
+
var BmNoteBar = function BmNoteBar(_ref2) {
|
|
66
|
+
var type = _ref2.type,
|
|
67
|
+
children = _ref2.children,
|
|
68
|
+
color = _ref2.color,
|
|
69
|
+
size = _ref2.size,
|
|
70
|
+
closeButton = _ref2.closeButton,
|
|
71
|
+
rest = _objectWithoutProperties(_ref2, _excluded);
|
|
72
|
+
|
|
73
|
+
var _useState = (0, _react.useState)(true),
|
|
74
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
75
|
+
isOpen = _useState2[0],
|
|
76
|
+
setIsOpen = _useState2[1];
|
|
77
|
+
|
|
78
|
+
return /*#__PURE__*/_react.default.createElement(NoteBarWrapper, _extends({
|
|
79
|
+
closeButton: closeButton,
|
|
80
|
+
isOpen: isOpen
|
|
81
|
+
}, rest), type === "info" && /*#__PURE__*/_react.default.createElement(_iconStyles.BmIcons, {
|
|
44
82
|
icon: /*#__PURE__*/_react.default.createElement(_icons.Info, null),
|
|
45
83
|
color: color ? color : "".concat(_colors.BmPrimaryBlue),
|
|
46
84
|
size: size ? size : "large"
|
|
@@ -52,7 +90,17 @@ var BmNoteBar = function BmNoteBar(_ref) {
|
|
|
52
90
|
icon: /*#__PURE__*/_react.default.createElement(_icons.Warning, null),
|
|
53
91
|
color: color ? color : "".concat(_colors.BmPrimaryGold),
|
|
54
92
|
size: size ? size : "large"
|
|
55
|
-
}), children
|
|
93
|
+
}), children, closeButton && /*#__PURE__*/_react.default.createElement(_iconStyles.BmIcons, {
|
|
94
|
+
icon: /*#__PURE__*/_react.default.createElement(_icons.Clear, null),
|
|
95
|
+
color: color ? color : "".concat(_colors.BmSecondaryGrey),
|
|
96
|
+
size: size ? size : "small",
|
|
97
|
+
style: {
|
|
98
|
+
marginLeft: "auto"
|
|
99
|
+
},
|
|
100
|
+
onClick: function onClick() {
|
|
101
|
+
return setIsOpen(false);
|
|
102
|
+
}
|
|
103
|
+
}));
|
|
56
104
|
};
|
|
57
105
|
|
|
58
106
|
exports.BmNoteBar = BmNoteBar;
|
|
@@ -60,5 +108,6 @@ BmNoteBar.propTypes = {
|
|
|
60
108
|
children: _propTypes.default.object,
|
|
61
109
|
color: _propTypes.default.string,
|
|
62
110
|
size: _propTypes.default.string,
|
|
63
|
-
type: _propTypes.default.string
|
|
111
|
+
type: _propTypes.default.string,
|
|
112
|
+
closeButton: _propTypes.default.bool
|
|
64
113
|
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = exports.NoteBar = void 0;
|
|
6
|
+
exports.default = exports.NoteBarWithCloseButton = exports.NoteBar = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
@@ -47,6 +47,9 @@ var _default = {
|
|
|
47
47
|
defaultValue: {
|
|
48
48
|
summary: undefined
|
|
49
49
|
}
|
|
50
|
+
},
|
|
51
|
+
closeButton: {
|
|
52
|
+
description: "If present will allow to close the notebar, default size of the icon is small"
|
|
50
53
|
}
|
|
51
54
|
}
|
|
52
55
|
};
|
|
@@ -63,4 +66,13 @@ NoteBar.args = {
|
|
|
63
66
|
size: "large",
|
|
64
67
|
children: /*#__PURE__*/_react.default.createElement("p", null, "NoteBar"),
|
|
65
68
|
color: undefined
|
|
69
|
+
};
|
|
70
|
+
var NoteBarWithCloseButton = MainNoteBar.bind({});
|
|
71
|
+
exports.NoteBarWithCloseButton = NoteBarWithCloseButton;
|
|
72
|
+
NoteBarWithCloseButton.args = {
|
|
73
|
+
type: "warning",
|
|
74
|
+
size: "large",
|
|
75
|
+
children: /*#__PURE__*/_react.default.createElement("p", null, "NoteBar"),
|
|
76
|
+
color: undefined,
|
|
77
|
+
closeButton: true
|
|
66
78
|
};
|
|
@@ -37,11 +37,9 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
37
37
|
|
|
38
38
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
39
39
|
|
|
40
|
-
var xsmall = 1.143;
|
|
41
40
|
var small = 1.429;
|
|
42
41
|
var medium = 1.714;
|
|
43
|
-
var large =
|
|
44
|
-
var xlarge = 2.286;
|
|
42
|
+
var large = 2.286;
|
|
45
43
|
var center;
|
|
46
44
|
var radius;
|
|
47
45
|
var circumference;
|
|
@@ -51,10 +49,6 @@ var initialSize;
|
|
|
51
49
|
var measurement = function measurement(size) {
|
|
52
50
|
var initialSize = size || large * 14;
|
|
53
51
|
|
|
54
|
-
if (size === "xsmall") {
|
|
55
|
-
initialSize = xsmall * 14;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
52
|
if (size === "small") {
|
|
59
53
|
initialSize = small * 14;
|
|
60
54
|
}
|
|
@@ -67,10 +61,6 @@ var measurement = function measurement(size) {
|
|
|
67
61
|
initialSize = large * 14;
|
|
68
62
|
}
|
|
69
63
|
|
|
70
|
-
if (size === "xlarge") {
|
|
71
|
-
initialSize = xlarge * 14;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
64
|
center = initialSize / 2;
|
|
75
65
|
radius = initialSize / 2 - strokeWidth / 2;
|
|
76
66
|
circumference = 2 * Math.PI * radius;
|
|
@@ -84,22 +74,18 @@ var measurement = function measurement(size) {
|
|
|
84
74
|
|
|
85
75
|
var ProgressRingWrapper = _styledComponents.default.svg(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n width: ", ";\n height: ", ";\n"])), function (_ref) {
|
|
86
76
|
var size = _ref.size;
|
|
87
|
-
if (size === "xsmall") return "1.143rem";
|
|
88
77
|
if (size === "small") return "1.429rem";
|
|
89
78
|
if (size === "medium") return "1.714rem";
|
|
90
|
-
if (size === "large") return "
|
|
91
|
-
if (size
|
|
92
|
-
|
|
93
|
-
return size;
|
|
79
|
+
if (size === "large") return "2.286rem";
|
|
80
|
+
if (!size) return "2.286rem";
|
|
81
|
+
return "".concat(size, "px");
|
|
94
82
|
}, function (_ref2) {
|
|
95
83
|
var size = _ref2.size;
|
|
96
|
-
if (size === "xsmall") return "1.143rem";
|
|
97
84
|
if (size === "small") return "1.429rem";
|
|
98
85
|
if (size === "medium") return "1.714rem";
|
|
99
|
-
if (size === "large") return "
|
|
100
|
-
if (size
|
|
101
|
-
|
|
102
|
-
return size;
|
|
86
|
+
if (size === "large") return "2.286rem";
|
|
87
|
+
if (!size) return "2.286rem";
|
|
88
|
+
return "".concat(size, "px");
|
|
103
89
|
});
|
|
104
90
|
|
|
105
91
|
var ProgressRingCircle1 = _styledComponents.default.circle(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n fill: none;\n"])));
|
|
@@ -119,7 +105,7 @@ var ProgressRingCircle2 = _styledComponents.default.circle(_templateObject3 || (
|
|
|
119
105
|
if (!progress) return "".concat(_colors.BmGrey100);
|
|
120
106
|
});
|
|
121
107
|
|
|
122
|
-
var Text = _styledComponents.default.text(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n font-size: ", ";\n text-anchor: middle;\n fill: black;\n
|
|
108
|
+
var Text = _styledComponents.default.text(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n font-size: ", ";\n text-anchor: middle;\n fill: black;\n"])), function () {
|
|
123
109
|
if (initialSize >= 50 && initialSize < 100) {
|
|
124
110
|
return "1rem";
|
|
125
111
|
}
|
|
@@ -140,7 +126,11 @@ var BmProgressRing = function BmProgressRing(props) {
|
|
|
140
126
|
var circleRef = (0, _react.useRef)(null);
|
|
141
127
|
var size = props.size,
|
|
142
128
|
progress = props.progress,
|
|
143
|
-
variant = props.variant
|
|
129
|
+
variant = props.variant,
|
|
130
|
+
children = props.children;
|
|
131
|
+
console.log({
|
|
132
|
+
children: children
|
|
133
|
+
});
|
|
144
134
|
var initialMeasure = measurement(size);
|
|
145
135
|
circumference = initialMeasure.circumference;
|
|
146
136
|
radius = initialMeasure.radius;
|
|
@@ -159,7 +149,11 @@ var BmProgressRing = function BmProgressRing(props) {
|
|
|
159
149
|
cy: center,
|
|
160
150
|
r: radius,
|
|
161
151
|
strokeWidth: strokeWidth
|
|
162
|
-
}), /*#__PURE__*/_react.default.createElement(
|
|
152
|
+
}), /*#__PURE__*/_react.default.createElement(Text, {
|
|
153
|
+
x: "".concat(center),
|
|
154
|
+
y: "".concat(center),
|
|
155
|
+
size: size
|
|
156
|
+
}, progress), /*#__PURE__*/_react.default.createElement(ProgressRingCircle2, {
|
|
163
157
|
progress: progress,
|
|
164
158
|
ref: circleRef,
|
|
165
159
|
variant: variant,
|
|
@@ -170,11 +164,7 @@ var BmProgressRing = function BmProgressRing(props) {
|
|
|
170
164
|
strokeDasharray: circumference,
|
|
171
165
|
strokeDashoffset: offset,
|
|
172
166
|
"data-testid": "progress-bar-bar"
|
|
173
|
-
})
|
|
174
|
-
x: "".concat(center),
|
|
175
|
-
y: "".concat(center),
|
|
176
|
-
size: size
|
|
177
|
-
}, progress, "%")));
|
|
167
|
+
})));
|
|
178
168
|
};
|
|
179
169
|
|
|
180
170
|
BmProgressRing.propTypes = {
|
|
@@ -29,34 +29,39 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
|
|
|
29
29
|
|
|
30
30
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
31
31
|
|
|
32
|
-
var BmTabWrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding:
|
|
33
|
-
var state = _ref.state
|
|
32
|
+
var BmTabWrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 1rem;\n background: ", ";\n box-shadow: ", ";\n > *:not(:last-child) {\n margin-right: 0.5rem;\n }\n ", "\n\n &:hover {\n box-shadow: ", ";\n }\n"])), _colors.BmPrimaryWhite, function (_ref) {
|
|
33
|
+
var state = _ref.state,
|
|
34
|
+
disabled = _ref.disabled;
|
|
34
35
|
|
|
35
|
-
if (state === "active") {
|
|
36
|
+
if (state === "active" && !disabled) {
|
|
36
37
|
return "inset 0px -3px 0px ".concat(_colors.BmPrimaryBlue);
|
|
37
38
|
}
|
|
38
39
|
|
|
39
|
-
if (state === "inactive") {
|
|
40
|
-
return "inset 0px -3px 0px ".concat(_colors.BmGrey400);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
40
|
return "none";
|
|
44
41
|
}, function (_ref2) {
|
|
45
42
|
var color = _ref2.color,
|
|
46
43
|
children = _ref2.children,
|
|
47
44
|
disabled = _ref2.disabled;
|
|
48
45
|
return children && disabled ? "\n > * {\n color: ".concat(_colors.BmGrey400, ";\n }\n ") : "\n > * {\n color: ".concat(color, ";\n }\n ");
|
|
46
|
+
}, function (_ref3) {
|
|
47
|
+
var disabled = _ref3.disabled;
|
|
48
|
+
|
|
49
|
+
if (!disabled) {
|
|
50
|
+
return "inset 0px -3px 0px ".concat(_colors.BmGrey400);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
return "none";
|
|
49
54
|
});
|
|
50
55
|
|
|
51
|
-
var BmTab = function BmTab(
|
|
52
|
-
var leadingIcon =
|
|
53
|
-
trailingIcon =
|
|
54
|
-
children =
|
|
55
|
-
size =
|
|
56
|
-
color =
|
|
57
|
-
icon =
|
|
58
|
-
disabled =
|
|
59
|
-
rest = _objectWithoutProperties(
|
|
56
|
+
var BmTab = function BmTab(_ref4) {
|
|
57
|
+
var leadingIcon = _ref4.leadingIcon,
|
|
58
|
+
trailingIcon = _ref4.trailingIcon,
|
|
59
|
+
children = _ref4.children,
|
|
60
|
+
size = _ref4.size,
|
|
61
|
+
color = _ref4.color,
|
|
62
|
+
icon = _ref4.icon,
|
|
63
|
+
disabled = _ref4.disabled,
|
|
64
|
+
rest = _objectWithoutProperties(_ref4, _excluded);
|
|
60
65
|
|
|
61
66
|
return /*#__PURE__*/_react.default.createElement(BmTabWrapper, _extends({
|
|
62
67
|
leadingIcon: leadingIcon,
|
|
@@ -65,11 +70,11 @@ var BmTab = function BmTab(_ref3) {
|
|
|
65
70
|
disabled: disabled
|
|
66
71
|
}, rest), leadingIcon && /*#__PURE__*/_react.default.createElement(_iconStyles.BmIcons, {
|
|
67
72
|
icon: leadingIcon,
|
|
68
|
-
size: size ||
|
|
73
|
+
size: size || "large",
|
|
69
74
|
color: disabled ? "".concat(_colors.BmGrey400) : color
|
|
70
75
|
}), children, trailingIcon && /*#__PURE__*/_react.default.createElement(_iconStyles.BmIcons, {
|
|
71
76
|
icon: trailingIcon,
|
|
72
|
-
size: size ||
|
|
77
|
+
size: size || "large",
|
|
73
78
|
color: disabled ? "".concat(_colors.BmGrey400) : color
|
|
74
79
|
}));
|
|
75
80
|
};
|
|
@@ -81,5 +86,6 @@ BmTab.propTypes = {
|
|
|
81
86
|
leadingIcon: _propTypes.default.node,
|
|
82
87
|
state: _propTypes.default.string,
|
|
83
88
|
color: _propTypes.default.string,
|
|
84
|
-
size: _propTypes.default.string
|
|
89
|
+
size: _propTypes.default.string,
|
|
90
|
+
disabled: _propTypes.default.bool
|
|
85
91
|
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = exports.
|
|
6
|
+
exports.default = exports.DisabledTab = exports.BasicTab = void 0;
|
|
7
7
|
|
|
8
8
|
var _icons = require("@material-ui/icons");
|
|
9
9
|
|
|
@@ -25,7 +25,7 @@ var _default = {
|
|
|
25
25
|
description: "Color of the Icons and Text"
|
|
26
26
|
},
|
|
27
27
|
state: {
|
|
28
|
-
options: ["active"
|
|
28
|
+
options: ["active"],
|
|
29
29
|
control: {
|
|
30
30
|
type: "select"
|
|
31
31
|
},
|
|
@@ -40,6 +40,9 @@ var _default = {
|
|
|
40
40
|
defaultValue: {
|
|
41
41
|
summary: "large"
|
|
42
42
|
}
|
|
43
|
+
},
|
|
44
|
+
disabled: {
|
|
45
|
+
description: "Disabled tab"
|
|
43
46
|
}
|
|
44
47
|
}
|
|
45
48
|
};
|
|
@@ -49,12 +52,20 @@ var MainTab = function MainTab(args) {
|
|
|
49
52
|
return /*#__PURE__*/_react.default.createElement(_tabs.BmTab, args);
|
|
50
53
|
};
|
|
51
54
|
|
|
52
|
-
var
|
|
53
|
-
exports.
|
|
54
|
-
|
|
55
|
+
var BasicTab = MainTab.bind({});
|
|
56
|
+
exports.BasicTab = BasicTab;
|
|
57
|
+
BasicTab.args = {
|
|
55
58
|
children: /*#__PURE__*/_react.default.createElement("h3", null, "Tabs"),
|
|
56
59
|
leadingIcon: /*#__PURE__*/_react.default.createElement(_icons.Favorite, null),
|
|
57
60
|
trailingIcon: /*#__PURE__*/_react.default.createElement(_icons.KeyboardArrowDown, null),
|
|
58
61
|
disabled: false,
|
|
59
62
|
state: 'active'
|
|
63
|
+
};
|
|
64
|
+
var DisabledTab = MainTab.bind({});
|
|
65
|
+
exports.DisabledTab = DisabledTab;
|
|
66
|
+
DisabledTab.args = {
|
|
67
|
+
children: /*#__PURE__*/_react.default.createElement("h3", null, "Disabled Tabs"),
|
|
68
|
+
leadingIcon: /*#__PURE__*/_react.default.createElement(_icons.Favorite, null),
|
|
69
|
+
trailingIcon: /*#__PURE__*/_react.default.createElement(_icons.KeyboardArrowDown, null),
|
|
70
|
+
disabled: true
|
|
60
71
|
};
|
package/package.json
CHANGED
package/src/App.js
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import "../src/main.scss";
|
|
3
|
-
import {
|
|
3
|
+
import {
|
|
4
|
+
BmButton,
|
|
5
|
+
BmCard,
|
|
6
|
+
BmIcons,
|
|
7
|
+
BmNoteBar,
|
|
8
|
+
BmTab,
|
|
9
|
+
MainWrapper,
|
|
10
|
+
} from "./lib/components";
|
|
4
11
|
import { GlobalStyle } from "./lib/components/globalStyles";
|
|
5
12
|
import "./lib/assets/css/sidebar.scss";
|
|
6
13
|
import BmBanner from "./lib/components/BannerCard/bannerCards";
|
|
7
14
|
import { FileCopyOutlined } from "@material-ui/icons";
|
|
8
|
-
import
|
|
15
|
+
import BmProgressRing from "./lib/components/ProgressRing/progressRing";
|
|
9
16
|
|
|
10
17
|
export const App = () => {
|
|
11
18
|
return (
|
|
@@ -26,10 +33,19 @@ export const App = () => {
|
|
|
26
33
|
<BmCard.Header>
|
|
27
34
|
<h3>Card Header</h3>
|
|
28
35
|
</BmCard.Header>
|
|
29
|
-
<BmCard.Body
|
|
36
|
+
<BmCard.Body>
|
|
37
|
+
<p>Hello</p>
|
|
38
|
+
<BmProgressRing progress="70" size="50" />
|
|
39
|
+
</BmCard.Body>
|
|
30
40
|
<BmCard.Footer>Card Footer</BmCard.Footer>
|
|
31
41
|
</BmCard>
|
|
32
|
-
|
|
42
|
+
<BmProgressRing progress="70" size="45" />
|
|
43
|
+
<BmTab state="active">
|
|
44
|
+
<h3>Tabs</h3>
|
|
45
|
+
</BmTab>
|
|
46
|
+
<BmNoteBar closeButton>
|
|
47
|
+
<p>Hello</p>
|
|
48
|
+
</BmNoteBar>
|
|
33
49
|
{/* </MainWrapper> */}
|
|
34
50
|
</>
|
|
35
51
|
);
|
|
@@ -7,31 +7,25 @@ const BmCard = styled.div`
|
|
|
7
7
|
background: ${BmPrimaryWhite};
|
|
8
8
|
border: 0.071rem solid ${BmGrey400};
|
|
9
9
|
border-radius: 0.25rem;
|
|
10
|
+
> * {
|
|
11
|
+
display: flex;
|
|
12
|
+
flex-direction: row;
|
|
13
|
+
align-items: center;
|
|
14
|
+
justify-content: space-between;
|
|
15
|
+
}
|
|
10
16
|
`;
|
|
11
17
|
|
|
12
18
|
BmCard.Header = styled.div`
|
|
13
|
-
display: flex;
|
|
14
|
-
flex-direction: row;
|
|
15
|
-
justify-content: space-between;
|
|
16
19
|
padding: 1rem 1rem 0rem 1rem;
|
|
17
20
|
`;
|
|
18
21
|
|
|
19
22
|
BmCard.Body = styled.div`
|
|
20
|
-
display: flex;
|
|
21
|
-
flex-direction: row;
|
|
22
|
-
justify-content: space-between;
|
|
23
|
-
margin-top: 0.5rem;
|
|
24
|
-
margin-bottom: 1rem;
|
|
25
23
|
padding: 0rem 1rem;
|
|
26
24
|
`;
|
|
27
25
|
|
|
28
26
|
BmCard.Footer = styled.div`
|
|
29
|
-
display: flex;
|
|
30
|
-
flex-direction: row;
|
|
31
|
-
justify-content: space-between;
|
|
32
27
|
border-top: 0.071rem solid ${BmGrey400};
|
|
33
28
|
padding: 1rem;
|
|
34
|
-
align-items: center;
|
|
35
29
|
`;
|
|
36
30
|
|
|
37
31
|
export default BmCard;
|
|
@@ -1,17 +1,23 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { useState } from "react";
|
|
2
2
|
import Proptypes from "prop-types";
|
|
3
|
-
import { Error, Info, Warning } from "@material-ui/icons";
|
|
3
|
+
import { Clear, Error, Info, Warning } from "@material-ui/icons";
|
|
4
4
|
import styled from "styled-components";
|
|
5
5
|
import {
|
|
6
6
|
BmGrey400,
|
|
7
7
|
BmPrimaryBlue,
|
|
8
8
|
BmSecondaryRed,
|
|
9
9
|
BmPrimaryGold,
|
|
10
|
+
BmSecondaryGrey,
|
|
10
11
|
} from "../colors";
|
|
11
12
|
import { BmIcons } from "../iconStyles";
|
|
12
13
|
|
|
13
14
|
export const NoteBarWrapper = styled.div`
|
|
14
|
-
display:
|
|
15
|
+
display: ${({ closeButton, isOpen }) => {
|
|
16
|
+
if (!closeButton) {
|
|
17
|
+
return "flex";
|
|
18
|
+
}
|
|
19
|
+
return isOpen ? "flex" : "none";
|
|
20
|
+
}};
|
|
15
21
|
flex-direction: row;
|
|
16
22
|
align-items: center;
|
|
17
23
|
padding: 0.5rem 1rem;
|
|
@@ -22,9 +28,17 @@ export const NoteBarWrapper = styled.div`
|
|
|
22
28
|
}
|
|
23
29
|
`;
|
|
24
30
|
|
|
25
|
-
export const BmNoteBar = ({
|
|
31
|
+
export const BmNoteBar = ({
|
|
32
|
+
type,
|
|
33
|
+
children,
|
|
34
|
+
color,
|
|
35
|
+
size,
|
|
36
|
+
closeButton,
|
|
37
|
+
...rest
|
|
38
|
+
}) => {
|
|
39
|
+
const [isOpen, setIsOpen] = useState(true);
|
|
26
40
|
return (
|
|
27
|
-
<NoteBarWrapper {...rest}>
|
|
41
|
+
<NoteBarWrapper closeButton={closeButton} isOpen={isOpen} {...rest}>
|
|
28
42
|
{type === "info" && (
|
|
29
43
|
<BmIcons
|
|
30
44
|
icon={<Info />}
|
|
@@ -47,6 +61,15 @@ export const BmNoteBar = ({ type, children, color, size, ...rest }) => {
|
|
|
47
61
|
/>
|
|
48
62
|
)}
|
|
49
63
|
{children}
|
|
64
|
+
{closeButton && (
|
|
65
|
+
<BmIcons
|
|
66
|
+
icon={<Clear />}
|
|
67
|
+
color={color ? color : `${BmSecondaryGrey}`}
|
|
68
|
+
size={size ? size : "small"}
|
|
69
|
+
style={{ marginLeft: "auto" }}
|
|
70
|
+
onClick={() => setIsOpen(false)}
|
|
71
|
+
/>
|
|
72
|
+
)}
|
|
50
73
|
</NoteBarWrapper>
|
|
51
74
|
);
|
|
52
75
|
};
|
|
@@ -56,4 +79,5 @@ BmNoteBar.propTypes = {
|
|
|
56
79
|
color: Proptypes.string,
|
|
57
80
|
size: Proptypes.string,
|
|
58
81
|
type: Proptypes.string,
|
|
82
|
+
closeButton: Proptypes.bool,
|
|
59
83
|
};
|
|
@@ -26,6 +26,9 @@ export default {
|
|
|
26
26
|
description: "Color of the icon ",
|
|
27
27
|
defaultValue: { summary: undefined },
|
|
28
28
|
},
|
|
29
|
+
closeButton: {
|
|
30
|
+
description: "If present will allow to close the notebar, default size of the icon is small",
|
|
31
|
+
},
|
|
29
32
|
},
|
|
30
33
|
};
|
|
31
34
|
|
|
@@ -38,3 +41,12 @@ NoteBar.args = {
|
|
|
38
41
|
children: <p>NoteBar</p>,
|
|
39
42
|
color: undefined,
|
|
40
43
|
};
|
|
44
|
+
|
|
45
|
+
export const NoteBarWithCloseButton = MainNoteBar.bind({});
|
|
46
|
+
NoteBarWithCloseButton.args = {
|
|
47
|
+
type: "warning",
|
|
48
|
+
size: "large",
|
|
49
|
+
children: <p>NoteBar</p>,
|
|
50
|
+
color: undefined,
|
|
51
|
+
closeButton: true,
|
|
52
|
+
};
|
|
@@ -9,11 +9,9 @@ import {
|
|
|
9
9
|
BmSecondaryRed,
|
|
10
10
|
} from "../colors";
|
|
11
11
|
|
|
12
|
-
const xsmall = 1.143;
|
|
13
12
|
const small = 1.429;
|
|
14
13
|
const medium = 1.714;
|
|
15
|
-
const large =
|
|
16
|
-
const xlarge = 2.286;
|
|
14
|
+
const large = 2.286;
|
|
17
15
|
|
|
18
16
|
let center;
|
|
19
17
|
let radius;
|
|
@@ -23,9 +21,6 @@ let initialSize;
|
|
|
23
21
|
|
|
24
22
|
const measurement = (size) => {
|
|
25
23
|
let initialSize = size || large * 14;
|
|
26
|
-
if (size === "xsmall") {
|
|
27
|
-
initialSize = xsmall * 14;
|
|
28
|
-
}
|
|
29
24
|
if (size === "small") {
|
|
30
25
|
initialSize = small * 14;
|
|
31
26
|
}
|
|
@@ -35,9 +30,6 @@ const measurement = (size) => {
|
|
|
35
30
|
if (size === "large") {
|
|
36
31
|
initialSize = large * 14;
|
|
37
32
|
}
|
|
38
|
-
if (size === "xlarge") {
|
|
39
|
-
initialSize = xlarge * 14;
|
|
40
|
-
}
|
|
41
33
|
center = initialSize / 2;
|
|
42
34
|
radius = initialSize / 2 - strokeWidth / 2;
|
|
43
35
|
circumference = 2 * Math.PI * radius;
|
|
@@ -46,22 +38,18 @@ const measurement = (size) => {
|
|
|
46
38
|
const ProgressRingWrapper = styled.svg`
|
|
47
39
|
display: flex;
|
|
48
40
|
width: ${({ size }) => {
|
|
49
|
-
if (size === "xsmall") return "1.143rem";
|
|
50
41
|
if (size === "small") return "1.429rem";
|
|
51
42
|
if (size === "medium") return "1.714rem";
|
|
52
|
-
if (size === "large") return "
|
|
53
|
-
if (size
|
|
54
|
-
|
|
55
|
-
return size;
|
|
43
|
+
if (size === "large") return "2.286rem";
|
|
44
|
+
if (!size) return "2.286rem";
|
|
45
|
+
return `${size}px`;
|
|
56
46
|
}};
|
|
57
47
|
height: ${({ size }) => {
|
|
58
|
-
if (size === "xsmall") return "1.143rem";
|
|
59
48
|
if (size === "small") return "1.429rem";
|
|
60
49
|
if (size === "medium") return "1.714rem";
|
|
61
|
-
if (size === "large") return "
|
|
62
|
-
if (size
|
|
63
|
-
|
|
64
|
-
return size;
|
|
50
|
+
if (size === "large") return "2.286rem";
|
|
51
|
+
if (!size) return "2.286rem";
|
|
52
|
+
return `${size}px`;
|
|
65
53
|
}};
|
|
66
54
|
`;
|
|
67
55
|
|
|
@@ -95,14 +83,14 @@ const Text = styled.text`
|
|
|
95
83
|
}};
|
|
96
84
|
text-anchor: middle;
|
|
97
85
|
fill: black;
|
|
98
|
-
position: absolute;
|
|
99
86
|
`;
|
|
100
87
|
|
|
101
88
|
const BmProgressRing = (props) => {
|
|
102
89
|
const [offset, setOffset] = useState(0);
|
|
103
90
|
const circleRef = useRef(null);
|
|
104
|
-
const { size, progress, variant } = props;
|
|
91
|
+
const { size, progress, variant, children } = props;
|
|
105
92
|
|
|
93
|
+
console.log({ children });
|
|
106
94
|
const initialMeasure = measurement(size);
|
|
107
95
|
|
|
108
96
|
circumference = initialMeasure.circumference;
|
|
@@ -127,6 +115,10 @@ const BmProgressRing = (props) => {
|
|
|
127
115
|
r={radius}
|
|
128
116
|
strokeWidth={strokeWidth}
|
|
129
117
|
/>
|
|
118
|
+
|
|
119
|
+
<Text x={`${center}`} y={`${center}`} size={size}>
|
|
120
|
+
{progress}
|
|
121
|
+
</Text>
|
|
130
122
|
<ProgressRingCircle2
|
|
131
123
|
progress={progress}
|
|
132
124
|
ref={circleRef}
|
|
@@ -139,9 +131,6 @@ const BmProgressRing = (props) => {
|
|
|
139
131
|
strokeDashoffset={offset}
|
|
140
132
|
data-testid="progress-bar-bar"
|
|
141
133
|
/>
|
|
142
|
-
<Text x={`${center}`} y={`${center}`} size={size}>
|
|
143
|
-
{progress}%
|
|
144
|
-
</Text>
|
|
145
134
|
</ProgressRingWrapper>
|
|
146
135
|
</>
|
|
147
136
|
);
|
|
@@ -7,7 +7,7 @@ export default {
|
|
|
7
7
|
title: "components/ProgressRing",
|
|
8
8
|
argTypes: {
|
|
9
9
|
size: {
|
|
10
|
-
options: ["
|
|
10
|
+
options: ["small", "medium", "large"],
|
|
11
11
|
control: { type: "select" },
|
|
12
12
|
description: "Size of the Progress Ring (Can also be predefined e.g. 50)",
|
|
13
13
|
defaultValue: { summary: "large" },
|
|
@@ -9,15 +9,12 @@ const BmTabWrapper = styled.div`
|
|
|
9
9
|
flex-direction: row;
|
|
10
10
|
justify-content: center;
|
|
11
11
|
align-items: center;
|
|
12
|
-
padding:
|
|
12
|
+
padding: 1rem;
|
|
13
13
|
background: ${BmPrimaryWhite};
|
|
14
|
-
box-shadow: ${({ state }) => {
|
|
15
|
-
if (state === "active") {
|
|
14
|
+
box-shadow: ${({ state, disabled }) => {
|
|
15
|
+
if (state === "active" && !disabled) {
|
|
16
16
|
return `inset 0px -3px 0px ${BmPrimaryBlue}`;
|
|
17
17
|
}
|
|
18
|
-
if (state === "inactive") {
|
|
19
|
-
return `inset 0px -3px 0px ${BmGrey400}`;
|
|
20
|
-
}
|
|
21
18
|
return "none";
|
|
22
19
|
}};
|
|
23
20
|
> *:not(:last-child) {
|
|
@@ -35,6 +32,15 @@ const BmTabWrapper = styled.div`
|
|
|
35
32
|
color: ${color};
|
|
36
33
|
}
|
|
37
34
|
`}
|
|
35
|
+
|
|
36
|
+
&:hover {
|
|
37
|
+
box-shadow: ${({ disabled }) => {
|
|
38
|
+
if (!disabled) {
|
|
39
|
+
return `inset 0px -3px 0px ${BmGrey400}`;
|
|
40
|
+
}
|
|
41
|
+
return "none";
|
|
42
|
+
}};
|
|
43
|
+
}
|
|
38
44
|
`;
|
|
39
45
|
|
|
40
46
|
export const BmTab = ({
|
|
@@ -58,7 +64,7 @@ export const BmTab = ({
|
|
|
58
64
|
{leadingIcon && (
|
|
59
65
|
<BmIcons
|
|
60
66
|
icon={leadingIcon}
|
|
61
|
-
size={size ||
|
|
67
|
+
size={size || "large"}
|
|
62
68
|
color={disabled ? `${BmGrey400}` : color}
|
|
63
69
|
/>
|
|
64
70
|
)}
|
|
@@ -66,7 +72,7 @@ export const BmTab = ({
|
|
|
66
72
|
{trailingIcon && (
|
|
67
73
|
<BmIcons
|
|
68
74
|
icon={trailingIcon}
|
|
69
|
-
size={size ||
|
|
75
|
+
size={size || "large"}
|
|
70
76
|
color={disabled ? `${BmGrey400}` : color}
|
|
71
77
|
/>
|
|
72
78
|
)}
|
|
@@ -81,4 +87,5 @@ BmTab.propTypes = {
|
|
|
81
87
|
state: PropTypes.string,
|
|
82
88
|
color: PropTypes.string,
|
|
83
89
|
size: PropTypes.string,
|
|
84
|
-
|
|
90
|
+
disabled: PropTypes.bool,
|
|
91
|
+
};
|
|
@@ -12,7 +12,7 @@ export default {
|
|
|
12
12
|
description: "Color of the Icons and Text",
|
|
13
13
|
},
|
|
14
14
|
state: {
|
|
15
|
-
options: ["active"
|
|
15
|
+
options: ["active"],
|
|
16
16
|
control: { type: "select" },
|
|
17
17
|
description: "State of the Tabs (optional)",
|
|
18
18
|
},
|
|
@@ -22,16 +22,28 @@ export default {
|
|
|
22
22
|
description: "Size of the icons",
|
|
23
23
|
defaultValue: { summary: "large" },
|
|
24
24
|
},
|
|
25
|
+
disabled: {
|
|
26
|
+
description:
|
|
27
|
+
"Disabled tab",
|
|
28
|
+
},
|
|
25
29
|
},
|
|
26
30
|
};
|
|
27
31
|
|
|
28
32
|
const MainTab = (args) => <BmTab {...args} />;
|
|
29
33
|
|
|
30
|
-
export const
|
|
31
|
-
|
|
34
|
+
export const BasicTab = MainTab.bind({});
|
|
35
|
+
BasicTab.args = {
|
|
32
36
|
children: <h3>Tabs</h3>,
|
|
33
37
|
leadingIcon: <Favorite />,
|
|
34
38
|
trailingIcon: <KeyboardArrowDown />,
|
|
35
39
|
disabled: false,
|
|
36
40
|
state: 'active',
|
|
37
41
|
};
|
|
42
|
+
|
|
43
|
+
export const DisabledTab = MainTab.bind({});
|
|
44
|
+
DisabledTab.args = {
|
|
45
|
+
children: <h3>Disabled Tabs</h3>,
|
|
46
|
+
leadingIcon: <Favorite />,
|
|
47
|
+
trailingIcon: <KeyboardArrowDown />,
|
|
48
|
+
disabled: true,
|
|
49
|
+
};
|