beem-component 1.8.6 → 1.8.7

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.
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BmInputCounter = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
9
+ var _RemoveCircle = _interopRequireDefault(require("@mui/icons-material/RemoveCircle"));
10
+ var _AddCircle = _interopRequireDefault(require("@mui/icons-material/AddCircle"));
11
+ var _iconStyles = require("../iconStyles");
12
+ var _colors = require("../colors");
13
+ var _excluded = ["min", "max", "onChange", "inputStyle", "BtnStyle", "count"];
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : 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); }
16
+ 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; }
17
+ 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; }
18
+ var Wrapper = _styledComponents.default.div.withConfig({
19
+ displayName: "inputCounter__Wrapper"
20
+ })(["display:flex;border-radius:0.25rem;border:0.071rem solid ", ";justify-content:space-between;padding:0.5rem;&:hover{border:0.071rem solid ", ";}"], _colors.BmGrey200, _colors.BmGrey400);
21
+ var BmInputCounter = function BmInputCounter(_ref) {
22
+ var _ref$min = _ref.min,
23
+ min = _ref$min === void 0 ? 0 : _ref$min,
24
+ _ref$max = _ref.max,
25
+ max = _ref$max === void 0 ? 10 : _ref$max,
26
+ onChange = _ref.onChange,
27
+ inputStyle = _ref.inputStyle,
28
+ BtnStyle = _ref.BtnStyle,
29
+ _ref$count = _ref.count,
30
+ count = _ref$count === void 0 ? 0 : _ref$count,
31
+ rest = _objectWithoutProperties(_ref, _excluded);
32
+ var increment = function increment() {
33
+ if (count < max) {
34
+ onChange(count + 1);
35
+ }
36
+ };
37
+ var decrement = function decrement() {
38
+ if (count > min) {
39
+ onChange(count - 1);
40
+ }
41
+ };
42
+ return /*#__PURE__*/_react.default.createElement(Wrapper, rest, /*#__PURE__*/_react.default.createElement(_iconStyles.BmIcons, _extends({
43
+ icon: /*#__PURE__*/_react.default.createElement(_RemoveCircle.default, null),
44
+ size: "small",
45
+ color: _colors.BmPrimaryBlue,
46
+ onClick: decrement,
47
+ disabled: count >= max
48
+ }, BtnStyle)), count, /*#__PURE__*/_react.default.createElement(_iconStyles.BmIcons, _extends({
49
+ icon: /*#__PURE__*/_react.default.createElement(_AddCircle.default, null),
50
+ size: "small",
51
+ color: _colors.BmPrimaryBlue,
52
+ onClick: increment,
53
+ disabled: count <= min
54
+ }, BtnStyle)));
55
+ };
56
+ exports.BmInputCounter = BmInputCounter;
@@ -0,0 +1,64 @@
1
+ "use strict";
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
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
10
+ var _colors = require("../colors");
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ 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); }
13
+ 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; }
14
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
15
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
17
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
18
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
19
+ 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."); }
20
+ 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); }
21
+ 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; }
22
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
23
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
24
+ var Wrapper = _styledComponents.default.div.withConfig({
25
+ displayName: "multipleDateSelector__Wrapper"
26
+ })(["display:flex;flex-direction:row;flex-wrap:wrap;border:0.071rem solid ", ";padding:1rem;background:", ";"], _colors.BmGrey100, _colors.BmSecondaryBlue12);
27
+ var Box = _styledComponents.default.div.withConfig({
28
+ displayName: "multipleDateSelector__Box"
29
+ })(["display:inline-flex;border:0.071rem solid ", ";padding:0.5rem;cursor:pointer;"], _colors.BmGrey100);
30
+ var MultiDateSelector = function MultiDateSelector() {
31
+ var _useState = (0, _react.useState)([]),
32
+ _useState2 = _slicedToArray(_useState, 2),
33
+ selectedDays = _useState2[0],
34
+ setSelectedDays = _useState2[1];
35
+ var handleDayClick = function handleDayClick(day) {
36
+ if (selectedDays.includes(day)) {
37
+ setSelectedDays(selectedDays.filter(function (d) {
38
+ return d !== day;
39
+ }));
40
+ } else {
41
+ setSelectedDays([].concat(_toConsumableArray(selectedDays), [day]));
42
+ }
43
+ };
44
+ var days = Array.from({
45
+ length: 31
46
+ }, function (_, i) {
47
+ return i + 1;
48
+ });
49
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(Wrapper, null, days.map(function (day) {
50
+ return /*#__PURE__*/_react.default.createElement(Box, {
51
+ key: day,
52
+ style: {
53
+ backgroundColor: selectedDays.includes(day) ? _colors.BmPrimaryBlue : _colors.BmPrimaryWhite,
54
+ color: selectedDays.includes(day) ? _colors.BmPrimaryWhite : _colors.BmPrimaryBlack,
55
+ fontWeight: selectedDays.includes(day) ? 'bold' : 'normal'
56
+ },
57
+ onClick: function onClick() {
58
+ return handleDayClick(day);
59
+ }
60
+ }, day);
61
+ })));
62
+ };
63
+ var _default = MultiDateSelector;
64
+ exports.default = _default;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ var _colors = require("../colors");
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ var BmStepper = _styledComponents.default.div.withConfig({
11
+ displayName: "stepper__BmStepper"
12
+ })(["display:flex;justify-content:center;width:3rem;height:3rem;background-color:", ";color:", ";border-radius:50%;text-align:center;border:0.071rem solid ", ";align-items:center;cursor:pointer;"], function (props) {
13
+ return props.activeStep ? _colors.BmSecondaryGreen15 : _colors.BmGrey100;
14
+ }, function (props) {
15
+ return props.activeStep ? _colors.BmPrimaryBlue : _colors.BmGrey600;
16
+ }, function (props) {
17
+ return props.activeStep ? _colors.BmPrimaryBlue : _colors.BmPrimaryWhite;
18
+ });
19
+ var _default = BmStepper;
20
+ exports.default = _default;
@@ -185,6 +185,12 @@ Object.defineProperty(exports, "BmInput", {
185
185
  return _input.BmInput;
186
186
  }
187
187
  });
188
+ Object.defineProperty(exports, "BmInputCounter", {
189
+ enumerable: true,
190
+ get: function get() {
191
+ return _inputCounter.BmInputCounter;
192
+ }
193
+ });
188
194
  Object.defineProperty(exports, "BmJumbotron", {
189
195
  enumerable: true,
190
196
  get: function get() {
@@ -305,6 +311,12 @@ Object.defineProperty(exports, "BmSegmentSelector", {
305
311
  return _index2.BmSegmentSelector;
306
312
  }
307
313
  });
314
+ Object.defineProperty(exports, "BmStepper", {
315
+ enumerable: true,
316
+ get: function get() {
317
+ return _stepper.default;
318
+ }
319
+ });
308
320
  Object.defineProperty(exports, "BmSupport", {
309
321
  enumerable: true,
310
322
  get: function get() {
@@ -390,6 +402,8 @@ var _index = require("./SuperFluid/Content/index");
390
402
  var _ContentTitle = require("./SuperFluid/ContentTitle.js");
391
403
  var _index2 = require("./SuperFluid/SegmentCard/index");
392
404
  var _buttonGroup = _interopRequireDefault(require("./ButtonGroup/buttonGroup"));
405
+ var _inputCounter = require("./InputCounter/inputCounter");
406
+ var _stepper = _interopRequireDefault(require("./Stepper/stepper"));
393
407
  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); }
394
408
  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; }
395
409
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "beem-component",
3
- "version": "1.8.6",
3
+ "version": "1.8.7",
4
4
  "private": false,
5
5
  "main": "dist/components/index.js",
6
6
  "scripts": {
package/src/App.js CHANGED
@@ -1,10 +1,61 @@
1
1
  import React, { useState } from 'react';
2
2
  import { GlobalStyle } from './lib/components';
3
3
  import BmButtonGroup from './lib/components/ButtonGroup/buttonGroup';
4
+ import { BmInputCounter } from './lib/components/InputCounter/inputCounter';
5
+ import MultiDateSelector from './lib/components/MultipleDateSelector/multipleDateSelector';
6
+ import BmStepper from './lib/components/Stepper/stepper';
4
7
 
5
8
  const App = () => {
6
9
  const [item, setItem] = useState();
7
10
  const Occurance = ['Now', 'Later', 'Recurring'];
11
+ const [count, setCount] = useState();
12
+ const handleCountChange = (newCount) => {
13
+ setCount(newCount);
14
+ };
15
+ const [activeStep, setActiveStep] = useState(new Date().getDay());
16
+ const [selectedDates, setSelectedDates] = useState([]);
17
+
18
+ const handleSelectDates = (dates) => {
19
+ setSelectedDates(dates);
20
+ };
21
+
22
+ const Weekdays = [
23
+ {
24
+ dayNo: 1,
25
+ day: 'Monday',
26
+ dayInitial: 'M',
27
+ },
28
+ {
29
+ dayNo: 2,
30
+ day: 'Tuesday',
31
+ dayInitial: 'T',
32
+ },
33
+ {
34
+ dayNo: 3,
35
+ day: 'Wednesday',
36
+ dayInitial: 'W',
37
+ },
38
+ {
39
+ dayNo: 4,
40
+ day: 'Thursday',
41
+ dayInitial: 'T',
42
+ },
43
+ {
44
+ dayNo: 5,
45
+ day: 'Friday',
46
+ dayInitial: 'F',
47
+ },
48
+ {
49
+ dayNo: 6,
50
+ day: 'Saturday',
51
+ dayInitial: 'S',
52
+ },
53
+ {
54
+ dayNo: 0,
55
+ day: 'Sunday',
56
+ dayInitial: 'S',
57
+ },
58
+ ];
8
59
 
9
60
  return (
10
61
  <>
@@ -17,6 +68,29 @@ const App = () => {
17
68
  </BmButtonGroup.Item>
18
69
  ))}
19
70
  </BmButtonGroup>
71
+ <BmInputCounter
72
+ min="1"
73
+ max="20"
74
+ count={count}
75
+ onChange={handleCountChange}
76
+ />
77
+ <MultiDateSelector onSelect={handleSelectDates} />
78
+ {selectedDates.length > 0 && (
79
+ <p>Selected dates: {selectedDates.join(', ')}</p>
80
+ )}
81
+ {Weekdays.map(({ dayNo, dayInitial }) => {
82
+ return (
83
+ <BmStepper
84
+ key={dayNo}
85
+ activeStep={activeStep > -1 ? activeStep === dayNo : null}
86
+ onClick={() => {
87
+ setActiveStep(dayNo);
88
+ }}
89
+ >
90
+ {dayInitial}
91
+ </BmStepper>
92
+ );
93
+ })}
20
94
  </>
21
95
  );
22
96
  };
@@ -0,0 +1,60 @@
1
+ import React from 'react';
2
+ import styled from 'styled-components';
3
+ import RemoveCircleIcon from '@mui/icons-material/RemoveCircle';
4
+ import AddCircleIcon from '@mui/icons-material/AddCircle';
5
+ import { BmIcons } from '../iconStyles';
6
+ import { BmGrey200, BmGrey400, BmPrimaryBlue } from '../colors';
7
+
8
+ const Wrapper = styled.div`
9
+ display: flex;
10
+ border-radius: 0.25rem;
11
+ border: 0.071rem solid ${BmGrey200};
12
+ justify-content: space-between;
13
+ padding: 0.5rem;
14
+ &:hover {
15
+ border: 0.071rem solid ${BmGrey400};
16
+ }
17
+ `;
18
+
19
+ export const BmInputCounter = ({
20
+ min = 0,
21
+ max = 10,
22
+ onChange,
23
+ inputStyle,
24
+ BtnStyle,
25
+ count = 0,
26
+ ...rest
27
+ }) => {
28
+ const increment = () => {
29
+ if (count < max) {
30
+ onChange(count + 1);
31
+ }
32
+ };
33
+
34
+ const decrement = () => {
35
+ if (count > min) {
36
+ onChange(count - 1);
37
+ }
38
+ };
39
+ return (
40
+ <Wrapper {...rest}>
41
+ <BmIcons
42
+ icon={<RemoveCircleIcon />}
43
+ size="small"
44
+ color={BmPrimaryBlue}
45
+ onClick={decrement}
46
+ disabled={count >= max}
47
+ {...BtnStyle}
48
+ />
49
+ {count}
50
+ <BmIcons
51
+ icon={<AddCircleIcon />}
52
+ size="small"
53
+ color={BmPrimaryBlue}
54
+ onClick={increment}
55
+ disabled={count <= min}
56
+ {...BtnStyle}
57
+ />
58
+ </Wrapper>
59
+ );
60
+ };
@@ -0,0 +1,64 @@
1
+ // import { BmColors } from 'beem-component';
2
+ import React, { useState } from 'react';
3
+ import styled from 'styled-components';
4
+ import {
5
+ BmGrey100,
6
+ BmPrimaryBlack,
7
+ BmPrimaryBlue,
8
+ BmPrimaryWhite,
9
+ BmSecondaryBlue12,
10
+ } from '../colors';
11
+
12
+ const Wrapper = styled.div`
13
+ display: flex;
14
+ flex-direction: row;
15
+ flex-wrap: wrap;
16
+ border: 0.071rem solid ${BmGrey100};
17
+ padding: 1rem;
18
+ background: ${BmSecondaryBlue12};
19
+ `;
20
+ const Box = styled.div`
21
+ display: inline-flex;
22
+ border: 0.071rem solid ${BmGrey100};
23
+ padding: 0.5rem;
24
+ cursor: pointer;
25
+ `;
26
+ const MultiDateSelector = () => {
27
+ const [selectedDays, setSelectedDays] = useState([]);
28
+
29
+ const handleDayClick = (day) => {
30
+ if (selectedDays.includes(day)) {
31
+ setSelectedDays(selectedDays.filter((d) => d !== day));
32
+ } else {
33
+ setSelectedDays([...selectedDays, day]);
34
+ }
35
+ };
36
+
37
+ const days = Array.from({ length: 31 }, (_, i) => i + 1);
38
+
39
+ return (
40
+ <div>
41
+ <Wrapper>
42
+ {days.map((day) => (
43
+ <Box
44
+ key={day}
45
+ style={{
46
+ backgroundColor: selectedDays.includes(day)
47
+ ? BmPrimaryBlue
48
+ : BmPrimaryWhite,
49
+ color: selectedDays.includes(day)
50
+ ? BmPrimaryWhite
51
+ : BmPrimaryBlack,
52
+ fontWeight: selectedDays.includes(day) ? 'bold' : 'normal',
53
+ }}
54
+ onClick={() => handleDayClick(day)}
55
+ >
56
+ {day}
57
+ </Box>
58
+ ))}
59
+ </Wrapper>
60
+ </div>
61
+ );
62
+ };
63
+
64
+ export default MultiDateSelector;
@@ -0,0 +1,26 @@
1
+ import styled from 'styled-components';
2
+ import {
3
+ BmGrey100,
4
+ BmGrey600,
5
+ BmPrimaryBlue,
6
+ BmPrimaryWhite,
7
+ BmSecondaryGreen15,
8
+ } from '../colors';
9
+
10
+ const BmStepper = styled.div`
11
+ display: flex;
12
+ justify-content: center;
13
+ width: 3rem;
14
+ height: 3rem;
15
+ background-color: ${(props) =>
16
+ props.activeStep ? BmSecondaryGreen15 : BmGrey100};
17
+ color: ${(props) => (props.activeStep ? BmPrimaryBlue : BmGrey600)};
18
+ border-radius: 50%;
19
+ text-align: center;
20
+ border: 0.071rem solid
21
+ ${(props) => (props.activeStep ? BmPrimaryBlue : BmPrimaryWhite)};
22
+ align-items: center;
23
+ cursor: pointer;
24
+ `;
25
+
26
+ export default BmStepper;
@@ -67,6 +67,8 @@ import {
67
67
  BmSegmentCreateContent,
68
68
  } from './SuperFluid/SegmentCard/index';
69
69
  import BmButtonGroup from './ButtonGroup/buttonGroup';
70
+ import { BmInputCounter } from './InputCounter/inputCounter';
71
+ import BmStepper from './Stepper/stepper';
70
72
 
71
73
  export {
72
74
  BmAccordion,
@@ -86,6 +88,8 @@ export {
86
88
  BmPaymentBox,
87
89
  BmJumbotron,
88
90
  BmButtonGroup,
91
+ BmInputCounter,
92
+ BmStepper,
89
93
  // Fix height and if there is dropdown option inside the modal body
90
94
  BmModal,
91
95
  BmNoteBar,