intelicoreact 0.0.93 → 0.0.94

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.
@@ -102,7 +102,7 @@ var Template = function Template(args) {
102
102
  var DropdownTemplate = Template.bind({});
103
103
  exports.DropdownTemplate = DropdownTemplate;
104
104
  DropdownTemplate.args = {
105
- isListTop: true,
105
+ // isListTop: true,
106
106
  entity: 'entity',
107
107
  value: 'drop6',
108
108
  placeholder: 'Placeholder',
@@ -17,6 +17,8 @@ var _moment = _interopRequireDefault(require("moment"));
17
17
 
18
18
  var _reactInputMask = _interopRequireDefault(require("react-input-mask"));
19
19
 
20
+ var _classnames = _interopRequireDefault(require("classnames"));
21
+
20
22
  var _Calendar = _interopRequireDefault(require("../../UI/Calendar/Calendar"));
21
23
 
22
24
  var _useClickOutside = require("../../../Functions/useClickOutside");
@@ -39,7 +41,8 @@ var InputCalendar = function InputCalendar(_ref) {
39
41
  _ref$mask = _ref.mask,
40
42
  mask = _ref$mask === void 0 ? '99/99/9999' : _ref$mask,
41
43
  isDontLimitFuture = _ref.isDontLimitFuture,
42
- isListTop = _ref.isListTop;
44
+ isListTop = _ref.isListTop,
45
+ disabled = _ref.disabled;
43
46
 
44
47
  var _useState = (0, _react.useState)(false),
45
48
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -66,7 +69,9 @@ var InputCalendar = function InputCalendar(_ref) {
66
69
  };
67
70
 
68
71
  return /*#__PURE__*/_react.default.createElement("div", {
69
- className: "input__wrap calendar-container ".concat(className),
72
+ className: (0, _classnames.default)('input__wrap calendar-container', className, {
73
+ 'calendar-container_disabled': disabled
74
+ }),
70
75
  ref: calendarRef
71
76
  }, /*#__PURE__*/_react.default.createElement(_reactInputMask.default, {
72
77
  mask: mask,
@@ -77,10 +82,9 @@ var InputCalendar = function InputCalendar(_ref) {
77
82
  },
78
83
  className: "calendar-dropdown",
79
84
  onFocus: function onFocus() {
80
- return setIsOpened(!isOpened);
85
+ return setIsOpened(true);
81
86
  }
82
87
  }), isOpened ? /*#__PURE__*/_react.default.createElement(_Calendar.default, {
83
- className: isListTop ? '' : '',
84
88
  date: getCalendarValue(value),
85
89
  setDate: function setDate(newDate) {
86
90
  return changeCalendarDay(newDate);
@@ -90,7 +94,8 @@ var InputCalendar = function InputCalendar(_ref) {
90
94
  maxDate: maxDate
91
95
  },
92
96
  isDontLimitFuture: isDontLimitFuture,
93
- isListTop: isListTop
97
+ isListTop: isListTop,
98
+ setIsOpened: setIsOpened
94
99
  }) : null);
95
100
  };
96
101
 
@@ -2,6 +2,11 @@
2
2
  min-width: 200px;
3
3
  position: relative;
4
4
 
5
+ &_disabled {
6
+ pointer-events: none;
7
+ opacity: 0.5;
8
+ }
9
+
5
10
  .calendar {
6
11
  position: absolute;
7
12
  z-index: 9;
@@ -39,18 +39,39 @@ var Template = function Template(args) {
39
39
  date = _useState2[0],
40
40
  setDate = _useState2[1];
41
41
 
42
- return /*#__PURE__*/_react.default.createElement(_InputCalendar.default, (0, _extends2.default)({}, args, {
42
+ var _useState3 = (0, _react.useState)(false),
43
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
44
+ disabled = _useState4[0],
45
+ setDisabled = _useState4[1];
46
+
47
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_InputCalendar.default, (0, _extends2.default)({}, args, {
43
48
  value: date,
44
49
  onChange: function onChange(val) {
45
50
  return setDate(val);
51
+ },
52
+ disabled: disabled
53
+ })), /*#__PURE__*/_react.default.createElement("div", {
54
+ style: {
55
+ display: 'flex',
56
+ flexFlow: 'row nowrap',
57
+ justifyContent: 'flex-end',
58
+ marginTop: '10px'
59
+ }
60
+ }, /*#__PURE__*/_react.default.createElement("button", {
61
+ style: {
62
+ border: 'solid 1px black',
63
+ padding: '10px',
64
+ width: '80px'
65
+ },
66
+ onClick: function onClick() {
67
+ return setDisabled(!disabled);
46
68
  }
47
- }));
69
+ }, disabled ? 'Enable' : 'Disable')));
48
70
  };
49
71
 
50
72
  var CalendarTemplate = Template.bind({});
51
73
  exports.CalendarTemplate = CalendarTemplate;
52
74
  CalendarTemplate.args = {
53
- value: '',
54
75
  minDate: '01/01/1900',
55
76
  maxDate: '01/01/2100',
56
77
  isDontLimitFuture: true // isListTop: true,
@@ -32,6 +32,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
32
32
  function _default(props) {
33
33
  var date = props.date,
34
34
  setDate = props.setDate,
35
+ setIsOpened = props.setIsOpened,
35
36
  _props$allowPrev = props.allowPrev,
36
37
  allowPrev = _props$allowPrev === void 0 ? true : _props$allowPrev,
37
38
  _props$allowNext = props.allowNext,
@@ -120,7 +121,8 @@ function _default(props) {
120
121
  key: "".concat(week, "_").concat(dayOfWeek),
121
122
  className: classNames,
122
123
  onClick: day && (isDontLimitFuture || !isFutureDay) ? function () {
123
- return setDate((0, _moment.default)(day.date).format('L'));
124
+ setDate((0, _moment.default)(day.date).format('L'));
125
+ setIsOpened(false);
124
126
  } : null // onMouseOver={day && !isFutureDay ? () => onHover(day.date) : null}
125
127
  // onMouseLeave={() => onHover(null)}
126
128
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "intelicoreact",
3
- "version": "0.0.93",
3
+ "version": "0.0.94",
4
4
  "description": "fix input-calendar",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -54,7 +54,7 @@ const Template = (args) => {
54
54
  export const DropdownTemplate = Template.bind({});
55
55
 
56
56
  DropdownTemplate.args = {
57
- isListTop: true,
57
+ // isListTop: true,
58
58
  entity: 'entity',
59
59
  value: 'drop6',
60
60
  placeholder: 'Placeholder',
@@ -1,6 +1,8 @@
1
1
  import React, { useState, useRef } from 'react';
2
2
  import moment from 'moment';
3
3
  import InputMask from 'react-input-mask';
4
+ import cn from 'classnames';
5
+
4
6
  import Calendar from '../../UI/Calendar/Calendar';
5
7
  import { useClickOutside } from '../../../Functions/useClickOutside';
6
8
 
@@ -16,6 +18,7 @@ const InputCalendar = ({
16
18
  mask = '99/99/9999',
17
19
  isDontLimitFuture,
18
20
  isListTop,
21
+ disabled,
19
22
  }) => {
20
23
  const [isOpened, setIsOpened] = useState(false);
21
24
  const calendarRef = useRef(null);
@@ -39,23 +42,28 @@ const InputCalendar = ({
39
42
  };
40
43
 
41
44
  return (
42
- <div className={`input__wrap calendar-container ${className}`} ref={calendarRef}>
45
+ <div
46
+ className={cn('input__wrap calendar-container', className, {
47
+ 'calendar-container_disabled': disabled,
48
+ })}
49
+ ref={calendarRef}
50
+ >
43
51
  <InputMask
44
52
  mask={mask}
45
53
  placeholder={placeholder}
46
54
  value={value}
47
55
  onChange={(e) => changeInputValue(e.target.value)}
48
56
  className="calendar-dropdown"
49
- onFocus={() => setIsOpened(!isOpened)}
57
+ onFocus={() => setIsOpened(true)}
50
58
  />
51
59
  {isOpened ? (
52
60
  <Calendar
53
- className={isListTop ? '' : ''}
54
61
  date={getCalendarValue(value)}
55
62
  setDate={(newDate) => changeCalendarDay(newDate)}
56
63
  params={{ minDate, maxDate }}
57
64
  isDontLimitFuture={isDontLimitFuture}
58
65
  isListTop={isListTop}
66
+ setIsOpened={setIsOpened}
59
67
  />
60
68
  ) : null}
61
69
  </div>
@@ -2,6 +2,11 @@
2
2
  min-width: 200px;
3
3
  position: relative;
4
4
 
5
+ &_disabled {
6
+ pointer-events: none;
7
+ opacity: 0.5;
8
+ }
9
+
5
10
  .calendar {
6
11
  position: absolute;
7
12
  z-index: 9;
@@ -15,14 +15,23 @@ export default {
15
15
 
16
16
  const Template = (args) => {
17
17
  const [date, setDate] = useState('');
18
+ const [disabled, setDisabled] = useState(false);
18
19
 
19
- return <InputCalendar {...args} value={date} onChange={(val) => setDate(val)} />;
20
+ return (
21
+ <>
22
+ <InputCalendar {...args} value={date} onChange={(val) => setDate(val)} disabled={disabled} />
23
+ <div style={{ display: 'flex', flexFlow: 'row nowrap', justifyContent: 'flex-end', marginTop: '10px' }}>
24
+ <button style={{ border: 'solid 1px black', padding: '10px', width: '80px' }} onClick={() => setDisabled(!disabled)}>
25
+ {disabled ? 'Enable' : 'Disable'}
26
+ </button>
27
+ </div>
28
+ </>
29
+ );
20
30
  };
21
31
 
22
32
  export const CalendarTemplate = Template.bind({});
23
33
 
24
34
  CalendarTemplate.args = {
25
- value: '',
26
35
  minDate: '01/01/1900',
27
36
  maxDate: '01/01/2100',
28
37
  isDontLimitFuture: true,
@@ -6,7 +6,7 @@ import { ChevronLeft, ChevronRight } from 'react-feather';
6
6
  import './Calendar.scss';
7
7
 
8
8
  export default function (props) {
9
- const { date, setDate, allowPrev = true, allowNext = true, params, className, isDontLimitFuture, isListTop } = props;
9
+ const { date, setDate, setIsOpened, allowPrev = true, allowNext = true, params, className, isDontLimitFuture, isListTop } = props;
10
10
  // const { minDate = '01/01/1900', maxDate = moment().format('MM/DD/YYYY') } = params;
11
11
  const { minDate, maxDate } = params;
12
12
  const [days, setDays] = useState({});
@@ -61,7 +61,14 @@ export default function (props) {
61
61
  <div
62
62
  key={`${week}_${dayOfWeek}`}
63
63
  className={classNames}
64
- onClick={day && (isDontLimitFuture || !isFutureDay) ? () => setDate(moment(day.date).format('L')) : null}
64
+ onClick={
65
+ day && (isDontLimitFuture || !isFutureDay)
66
+ ? () => {
67
+ setDate(moment(day.date).format('L'));
68
+ setIsOpened(false);
69
+ }
70
+ : null
71
+ }
65
72
  // onMouseOver={day && !isFutureDay ? () => onHover(day.date) : null}
66
73
  // onMouseLeave={() => onHover(null)}
67
74
  >