sag_components 1.0.596 → 1.0.598
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/stories/components/BarChartsByWeeks.style.js +1 -1
- package/dist/stories/components/CollapseMenuItem.js +1 -1
- package/dist/stories/components/Dropdown.js +57 -53
- package/dist/stories/components/EventList.js +13 -14
- package/dist/stories/components/EventList.style.js +2 -2
- package/dist/stories/components/EventListItem.js +8 -9
- package/dist/stories/components/MonthPicker.js +114 -0
- package/dist/stories/components/MonthPicker.style.js +18 -0
- package/dist/stories/components/MonthPopupPicker.js +116 -0
- package/dist/stories/components/QuarterPicker.js +114 -0
- package/dist/stories/components/QuarterPicker.style.js +18 -0
- package/dist/stories/components/QuarterPopupPicker.js +93 -0
- package/dist/stories/components/RangeDatePicker.js +137 -0
- package/dist/stories/components/RangePicker.js +111 -0
- package/dist/stories/components/RangePicker.style.js +18 -0
- package/dist/stories/components/Select.js +67 -44
- package/dist/stories/components/Select.style.js +8 -5
- package/dist/stories/components/TabMenu.js +18 -9
- package/dist/stories/components/TotalCostModal.js +143 -0
- package/dist/stories/components/icons/Calendar.js +20 -0
- package/dist/stories/components/icons/CalendarInOpen.js +26 -0
- package/dist/stories/components/icons/ChervronLeftIcon.js +20 -0
- package/dist/stories/components/icons/ChervronRightIcon.js +20 -0
- package/package.json +8 -7
- package/dist/stories/CampaignTool/PopupContent.stories.js +0 -284
- package/dist/stories/components/EventInfo.js +0 -92
- package/dist/stories/components/EventInfo.style.js +0 -20
- package/dist/stories/components/FilterButton.js +0 -47
- package/dist/stories/components/FilterButton.style.js +0 -12
|
@@ -16,6 +16,6 @@ const TooltipLabel = exports.TooltipLabel = _styledComponents.default.div(_templ
|
|
|
16
16
|
const TooltipTitle = exports.TooltipTitle = _styledComponents.default.div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n color: #212121;\n font-size: 14px;\n font-weight: 600;\n line-height: normal;\n"])));
|
|
17
17
|
const TitleAndValueContainer = exports.TitleAndValueContainer = _styledComponents.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n padding: 0 1rem;\n"])));
|
|
18
18
|
const Title = exports.Title = _styledComponents.default.div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n font-family: \"Poppins\", sans-serif;\n font-weight: 500;\n font-size: 18px;\n line-height: 20px;\n @media (max-width: 1536px) {\n font-size: 16px;\n }\n @media (max-width: 1366px) {\n font-size: 14px;\n }\n\n"])));
|
|
19
|
-
const EventWeeksLegendMainContainer = exports.EventWeeksLegendMainContainer = _styledComponents.default.div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n justify-content: center;\n flex-direction: column;\n margin: 2px 0 0 0;\n padding:
|
|
19
|
+
const EventWeeksLegendMainContainer = exports.EventWeeksLegendMainContainer = _styledComponents.default.div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n justify-content: center;\n flex-direction: column;\n margin: 2px 0 0 0;\n padding-left: 55px;\n align-items: center;\n\n"])));
|
|
20
20
|
const EventWeeksLegendDataElementsContainer = exports.EventWeeksLegendDataElementsContainer = _styledComponents.default.div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n margin: 0px;\n align-items: center;\n justify-content: space-around;\n width: 100%;\n"])));
|
|
21
21
|
const EventWeeksLegendDataElement = exports.EventWeeksLegendDataElement = _styledComponents.default.h4(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n font-weight: ", ";\n font-size: 12px;\n line-height: 15px;\n margin: 0px;\n width: 100%;\n justify-content: center;\n align-content: center;\n color: ", ";\n border-top-left-radius: ", ";\n border-bottom-left-radius: ", ";\n border-top-right-radius: ", ";\n border-bottom-right-radius: ", ";\n background: ", ";\n @media (max-width: 1536px) {\n font-size: 11px;\n }\n @media (max-width: 1366px) {\n font-size: 10px;\n }\n"])), props => props.fontWeight, props => props.textColor, props => props.borderLeftRadius, props => props.borderLeftRadius, props => props.borderRightRadius, props => props.borderRightRadius, props => props.color);
|
|
@@ -32,7 +32,7 @@ const CollapseMenuItem = props => {
|
|
|
32
32
|
cursor: 'pointer'
|
|
33
33
|
}
|
|
34
34
|
}, buttonAlignment === 'left' && /*#__PURE__*/_react.default.createElement(_CollapseMenuItem.LeftIconContainer, {
|
|
35
|
-
|
|
35
|
+
className: "LeftIconContainer"
|
|
36
36
|
}, IsItemOpen ? /*#__PURE__*/_react.default.createElement(_MenuItemOpenIcon.MenuItemOpenIcon, {
|
|
37
37
|
color: "#212121"
|
|
38
38
|
}) : /*#__PURE__*/_react.default.createElement(_MenuItemClosedIcon.MenuItemClosedIcon, {
|
|
@@ -166,63 +166,67 @@ const Dropdown = _ref => {
|
|
|
166
166
|
};
|
|
167
167
|
|
|
168
168
|
// --------------------------------------- DROPDOWN SINGLE --------------------------------
|
|
169
|
-
const getAutocompleteSingle = () =>
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
defaultValue: defaultValue,
|
|
184
|
-
id: "combo-box",
|
|
185
|
-
options: options
|
|
186
|
-
// sx={{ width }}
|
|
187
|
-
,
|
|
188
|
-
popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.ArrowDropDownIcon, {
|
|
189
|
-
width: "0.5em",
|
|
190
|
-
height: "0.5em"
|
|
191
|
-
}) : null,
|
|
192
|
-
forcePopupIcon: "auto",
|
|
193
|
-
renderInput: params => /*#__PURE__*/_react.default.createElement(_TextField.default, Object.assign({}, params, {
|
|
194
|
-
onKeyDown: event => {
|
|
195
|
-
if (!isInputAllowed(event.key)) {
|
|
196
|
-
event.preventDefault();
|
|
197
|
-
}
|
|
169
|
+
const getAutocompleteSingle = () => {
|
|
170
|
+
if (!autoComplete) {
|
|
171
|
+
// Return null or any other placeholder if autoComplete is false
|
|
172
|
+
return null;
|
|
173
|
+
}
|
|
174
|
+
return /*#__PURE__*/_react.default.createElement(_styles.ThemeProvider, {
|
|
175
|
+
theme: theme
|
|
176
|
+
}, /*#__PURE__*/_react.default.createElement(_Autocomplete.default, {
|
|
177
|
+
key: reset,
|
|
178
|
+
onChange: (event, newValue) => {
|
|
179
|
+
onChangeHandler(event, newValue);
|
|
180
|
+
},
|
|
181
|
+
onInputChange: (event, newInputValue) => {
|
|
182
|
+
onInputChangeHandler(event, newInputValue);
|
|
198
183
|
},
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
184
|
+
disabled: disabled,
|
|
185
|
+
autoComplete: autoComplete,
|
|
186
|
+
disablePortal: true,
|
|
187
|
+
disableClearable: disableClearable,
|
|
188
|
+
defaultValue: defaultValue,
|
|
189
|
+
id: "combo-box",
|
|
190
|
+
options: options,
|
|
191
|
+
popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.ArrowDropDownIcon, {
|
|
192
|
+
width: "0.5em",
|
|
193
|
+
height: "0.5em"
|
|
194
|
+
}) : null,
|
|
195
|
+
forcePopupIcon: "auto",
|
|
196
|
+
renderInput: params => /*#__PURE__*/_react.default.createElement(_TextField.default, Object.assign({}, params, {
|
|
197
|
+
onKeyDown: event => {
|
|
198
|
+
if (!isInputAllowed(event.key)) {
|
|
199
|
+
event.preventDefault();
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
required: required,
|
|
203
|
+
label: text,
|
|
204
|
+
inputRef: inputRef || null,
|
|
205
|
+
size: size,
|
|
206
|
+
sx: getTextFieldStyleSingle(),
|
|
207
|
+
placeholder: placeHolder,
|
|
208
|
+
InputProps: {
|
|
209
|
+
...params.InputProps,
|
|
210
|
+
style: {
|
|
211
|
+
fontSize: placeHolderFontSize,
|
|
212
|
+
fontFamily: 'Poppins'
|
|
213
|
+
},
|
|
214
|
+
startAdornment: showSearchIcon ? /*#__PURE__*/_react.default.createElement(_InputAdornment.default, {
|
|
215
|
+
position: "start"
|
|
216
|
+
}, /*#__PURE__*/_react.default.createElement(_Search.default, {
|
|
217
|
+
fontSize: "medium"
|
|
218
|
+
})) : null
|
|
219
|
+
}
|
|
220
|
+
})),
|
|
221
|
+
ListboxProps: {
|
|
207
222
|
style: {
|
|
208
|
-
fontSize:
|
|
223
|
+
fontSize: dropdownListfontSize,
|
|
224
|
+
// default: 14px
|
|
209
225
|
fontFamily: 'Poppins'
|
|
210
|
-
}
|
|
211
|
-
startAdornment: showSearchIcon ? /*#__PURE__*/_react.default.createElement(_InputAdornment.default, {
|
|
212
|
-
position: "start"
|
|
213
|
-
}, /*#__PURE__*/_react.default.createElement(_Search.default, {
|
|
214
|
-
fontSize: "medium"
|
|
215
|
-
})) : null
|
|
216
|
-
}
|
|
217
|
-
})),
|
|
218
|
-
ListboxProps: {
|
|
219
|
-
style: {
|
|
220
|
-
fontSize: dropdownListfontSize,
|
|
221
|
-
// default: 14px
|
|
222
|
-
fontFamily: 'Poppins'
|
|
226
|
+
}
|
|
223
227
|
}
|
|
224
|
-
}
|
|
225
|
-
}
|
|
228
|
+
}));
|
|
229
|
+
};
|
|
226
230
|
|
|
227
231
|
// --------------------------------- MAIN -------------------------------------
|
|
228
232
|
return /*#__PURE__*/_react.default.createElement(_Dropdown.DropdownContainer, {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.EventList = void 0;
|
|
8
|
-
var _react =
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _EventListItem = require("./EventListItem");
|
|
10
10
|
var _EventList = require("./EventList.style");
|
|
11
11
|
/* EventList */
|
|
@@ -13,10 +13,9 @@ const EventList = props => {
|
|
|
13
13
|
const {
|
|
14
14
|
eventsData,
|
|
15
15
|
selectTextColor,
|
|
16
|
-
width =
|
|
17
|
-
height =
|
|
18
|
-
|
|
19
|
-
itemHeight = "160px",
|
|
16
|
+
width = '100%',
|
|
17
|
+
height = '100%',
|
|
18
|
+
itemHeight = '160px',
|
|
20
19
|
onClick
|
|
21
20
|
} = props;
|
|
22
21
|
const displayEventsItems = () => {
|
|
@@ -26,6 +25,8 @@ const EventList = props => {
|
|
|
26
25
|
}, eventsData === null || eventsData === void 0 ? void 0 : eventsData.map(item => /*#__PURE__*/_react.default.createElement(_EventList.OneEventItemContainer, {
|
|
27
26
|
id: "OneEventItemContainer"
|
|
28
27
|
}, /*#__PURE__*/_react.default.createElement(_EventListItem.EventListItem, {
|
|
28
|
+
height: itemHeight,
|
|
29
|
+
width: width / 3,
|
|
29
30
|
eventName: item.eventName,
|
|
30
31
|
period: item.period,
|
|
31
32
|
selectTextColor: selectTextColor,
|
|
@@ -33,9 +34,7 @@ const EventList = props => {
|
|
|
33
34
|
onClick({
|
|
34
35
|
eventName: event === null || event === void 0 ? void 0 : event.eventName
|
|
35
36
|
});
|
|
36
|
-
}
|
|
37
|
-
height: itemHeight,
|
|
38
|
-
width: itemWidth
|
|
37
|
+
}
|
|
39
38
|
}))));
|
|
40
39
|
}
|
|
41
40
|
};
|
|
@@ -54,10 +53,10 @@ exports.EventList = EventList;
|
|
|
54
53
|
var _default = exports.default = EventList;
|
|
55
54
|
EventList.defaultProps = {
|
|
56
55
|
eventsData: [],
|
|
57
|
-
selectTextColor:
|
|
58
|
-
width:
|
|
59
|
-
height:
|
|
60
|
-
itemWidth:
|
|
61
|
-
itemHeight:
|
|
56
|
+
selectTextColor: '#229E38',
|
|
57
|
+
width: '100%',
|
|
58
|
+
height: '100%',
|
|
59
|
+
itemWidth: '700px',
|
|
60
|
+
itemHeight: '160px',
|
|
62
61
|
onClick: () => {}
|
|
63
62
|
};
|
|
@@ -13,6 +13,6 @@ const MainContainer = exports.MainContainer = _styledComponents.default.div(_tem
|
|
|
13
13
|
}, props => {
|
|
14
14
|
return props.height;
|
|
15
15
|
});
|
|
16
|
-
const PanelContainer = exports.PanelContainer = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n
|
|
17
|
-
const EventItemsContainer = exports.EventItemsContainer = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n display:
|
|
16
|
+
const PanelContainer = exports.PanelContainer = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n border-radius: 12px;\n padding: 0 10px;\n font-weight: 400;\n font-size: 14px;\n line-height: 19px;\n white-space: pre-wrap;\n overflow: hidden;\n width: 100%;\n"])));
|
|
17
|
+
const EventItemsContainer = exports.EventItemsContainer = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n display: grid;\n grid-template-columns: repeat(3,1fr);\n padding: 10px;\n gap: 30px;\n width: 100%;\n"])));
|
|
18
18
|
const OneEventItemContainer = exports.OneEventItemContainer = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n //width: 100%;\n margin: 0;\n"])));
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = exports.EventListItem = void 0;
|
|
9
|
-
var _react =
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
9
|
var _ArrowSelectIcon = _interopRequireDefault(require("./icons/ArrowSelectIcon"));
|
|
11
10
|
var _EventListItem = require("./EventListItem.style");
|
|
12
11
|
/* EventListItem */
|
|
@@ -21,7 +20,7 @@ const EventListItem = props => {
|
|
|
21
20
|
} = props;
|
|
22
21
|
const handleOnClick = event => {
|
|
23
22
|
onClick({
|
|
24
|
-
eventName
|
|
23
|
+
eventName,
|
|
25
24
|
event
|
|
26
25
|
});
|
|
27
26
|
};
|
|
@@ -45,17 +44,17 @@ const EventListItem = props => {
|
|
|
45
44
|
id: "SelectButtonSubContainer",
|
|
46
45
|
selectTextColor: selectTextColor,
|
|
47
46
|
onClick: handleOnClick
|
|
48
|
-
}, "Select
|
|
47
|
+
}, "Select", ' ', /*#__PURE__*/_react.default.createElement(_ArrowSelectIcon.default, {
|
|
49
48
|
id: "ArrowSelectIcon"
|
|
50
49
|
})))));
|
|
51
50
|
};
|
|
52
51
|
exports.EventListItem = EventListItem;
|
|
53
52
|
var _default = exports.default = EventListItem;
|
|
54
53
|
EventListItem.defaultProps = {
|
|
55
|
-
eventName:
|
|
56
|
-
period:
|
|
57
|
-
width:
|
|
58
|
-
height:
|
|
59
|
-
selectTextColor:
|
|
54
|
+
eventName: '',
|
|
55
|
+
period: 'DD/MM/YYYY - DD/MM/YYYY',
|
|
56
|
+
width: '260px',
|
|
57
|
+
height: '350px',
|
|
58
|
+
selectTextColor: '#212121',
|
|
60
59
|
onClick: () => {}
|
|
61
60
|
};
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _moment = _interopRequireDefault(require("moment"));
|
|
11
|
+
var _Calendar = _interopRequireDefault(require("./icons/Calendar"));
|
|
12
|
+
var _CalendarInOpen = _interopRequireDefault(require("./icons/CalendarInOpen"));
|
|
13
|
+
var _MonthPicker = require("./MonthPicker.style");
|
|
14
|
+
var _MonthPopupPicker = _interopRequireDefault(require("./MonthPopupPicker"));
|
|
15
|
+
/* eslint-disable import/no-extraneous-dependencies */
|
|
16
|
+
/* eslint-disable react/require-default-props */
|
|
17
|
+
/* eslint-disable no-nested-ternary */
|
|
18
|
+
// CustomInput.js
|
|
19
|
+
|
|
20
|
+
const MonthPicker = _ref => {
|
|
21
|
+
let {
|
|
22
|
+
label,
|
|
23
|
+
onChange,
|
|
24
|
+
borderRadius,
|
|
25
|
+
required,
|
|
26
|
+
width,
|
|
27
|
+
height,
|
|
28
|
+
placeholder,
|
|
29
|
+
disabled,
|
|
30
|
+
borderColor,
|
|
31
|
+
// Added borderColor prop
|
|
32
|
+
borderColorFoucs,
|
|
33
|
+
// Added borderColorFour prop
|
|
34
|
+
textColor // Added textColor prop
|
|
35
|
+
} = _ref;
|
|
36
|
+
const [isFocused, setIsFocused] = (0, _react.useState)(false);
|
|
37
|
+
const [isOpen, setIsOpen] = (0, _react.useState)(false);
|
|
38
|
+
const [value, setValue] = (0, _react.useState)(''); // Added value state
|
|
39
|
+
const [startDateValue, setStartDateValue] = (0, _react.useState)(null); // Added value state
|
|
40
|
+
|
|
41
|
+
const onChangeDate = startDate => {
|
|
42
|
+
if (startDate) {
|
|
43
|
+
setIsOpen(!isOpen);
|
|
44
|
+
setIsFocused(false);
|
|
45
|
+
setStartDateValue(startDate);
|
|
46
|
+
setValue("".concat((0, _moment.default)(startDate).format('MMMM | YYYY')));
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
const onChangeEvent = e => {
|
|
50
|
+
const dateArray = e.target.value;
|
|
51
|
+
const arr = dateArray.split(' - ');
|
|
52
|
+
const startDate = new Date(arr[0]);
|
|
53
|
+
setStartDateValue((0, _moment.default)(startDate).format('MM'));
|
|
54
|
+
onChange(e);
|
|
55
|
+
setValue(e.target.value);
|
|
56
|
+
};
|
|
57
|
+
const toggleDatePicker = () => {
|
|
58
|
+
setIsOpen(!isOpen);
|
|
59
|
+
};
|
|
60
|
+
const handleFocus = () => {
|
|
61
|
+
setIsFocused(true);
|
|
62
|
+
};
|
|
63
|
+
const handleBlur = () => {
|
|
64
|
+
setIsFocused(false);
|
|
65
|
+
};
|
|
66
|
+
return /*#__PURE__*/_react.default.createElement(_MonthPicker.Container, {
|
|
67
|
+
onClick: handleFocus,
|
|
68
|
+
width: width,
|
|
69
|
+
height: height
|
|
70
|
+
}, /*#__PURE__*/_react.default.createElement(_MonthPicker.StyledLabel, {
|
|
71
|
+
onClick: handleFocus,
|
|
72
|
+
isFocused: isFocused,
|
|
73
|
+
hasValue: value,
|
|
74
|
+
disabled: disabled,
|
|
75
|
+
textColor: textColor
|
|
76
|
+
}, label, required && /*#__PURE__*/_react.default.createElement(_MonthPicker.RequiredIndicator, null, "*")), /*#__PURE__*/_react.default.createElement(_MonthPicker.StyledInput, {
|
|
77
|
+
value: value,
|
|
78
|
+
onChange: onChangeEvent,
|
|
79
|
+
onFocus: handleFocus,
|
|
80
|
+
onBlur: handleBlur,
|
|
81
|
+
isFocused: isFocused,
|
|
82
|
+
borderColorFoucs: borderColorFoucs,
|
|
83
|
+
borderRadius: borderRadius,
|
|
84
|
+
width: width,
|
|
85
|
+
height: height,
|
|
86
|
+
placeholder: isFocused ? placeholder : '',
|
|
87
|
+
disabled: disabled,
|
|
88
|
+
borderColor: borderColor,
|
|
89
|
+
textColor: textColor
|
|
90
|
+
}), /*#__PURE__*/_react.default.createElement(_MonthPicker.CalendarDiv, {
|
|
91
|
+
width: width,
|
|
92
|
+
onClick: toggleDatePicker
|
|
93
|
+
}, isOpen === true ? /*#__PURE__*/_react.default.createElement(_CalendarInOpen.default, null) : /*#__PURE__*/_react.default.createElement(_Calendar.default, null)), /*#__PURE__*/_react.default.createElement(_MonthPopupPicker.default, {
|
|
94
|
+
isOpen: isOpen,
|
|
95
|
+
onChangeDate: onChangeDate,
|
|
96
|
+
value: value,
|
|
97
|
+
setValue: setValue,
|
|
98
|
+
startDateValue: startDateValue
|
|
99
|
+
}));
|
|
100
|
+
};
|
|
101
|
+
// Adding defaultProps
|
|
102
|
+
MonthPicker.defaultProps = {
|
|
103
|
+
required: true,
|
|
104
|
+
width: '200%',
|
|
105
|
+
height: '60px',
|
|
106
|
+
disabled: false,
|
|
107
|
+
placeholder: 'Enter here..',
|
|
108
|
+
borderColor: '#000000',
|
|
109
|
+
// Default borderColor prop value
|
|
110
|
+
borderColorFoucs: '#000000',
|
|
111
|
+
// Default borderColorFoucs prop value
|
|
112
|
+
textColor: '#000000' // Default textColor prop value
|
|
113
|
+
};
|
|
114
|
+
var _default = exports.default = MonthPicker;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.StyledLabel = exports.StyledInput = exports.RequiredIndicator = exports.EyeIcon = exports.ErrorLabel = exports.Container = exports.CalendarDiv = void 0;
|
|
8
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
|
|
9
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
10
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
|
|
11
|
+
/* eslint-disable no-nested-ternary */
|
|
12
|
+
const Container = exports.Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n margin-bottom: 20px;\n width: ", ";\n height: ", ";\n"])), props => props.width || '100%', props => props.height || '60px');
|
|
13
|
+
const CalendarDiv = exports.CalendarDiv = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n width: 11px;\n height: 11px;\n top: ", ";\n right: 25px;\n"])), props => parseInt(props.height, 10) / 2 || '20px');
|
|
14
|
+
const StyledInput = exports.StyledInput = _styledComponents.default.input(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n padding: 10px;\n font-size: 14px;\n border: 1px solid\n ", ";\n border-radius: ", ";\n outline: none;\n width: ", ";\n height: ", ";\n transition: border-color 0.3s ease;\n color: var(--General-Grey, #B1B1B1);\n font-family: Poppins;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n box-sizing: border-box;\n color: ", ";\n cursor: ", ";\n\n &:focus {\n border-color: ", ";\n }\n"])), props => props.disabled ? '#bdbdbd' : props.error ? 'red' : props.isFocused ? props.borderColorFoucs : props.borderColor || '#bdbdbd', props => props.borderRadius || '4px', props => props.width || '90%', props => props.height || '60px', props => props.disabled ? '#888' : props.textColor || '#333', props => props.disabled ? 'not-allowed' : 'text', props => props.disabled ? '#bdbdbd' : props.borderColor || '#1976d2');
|
|
15
|
+
const StyledLabel = exports.StyledLabel = _styledComponents.default.label(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n font-size: ", ";\n padding-inline-end: 5px;\n padding-inline-start: 5px;\n margin-right: 20px;\n width: ", ";\n color: ", ";\n background-color: white;\n position: absolute;\n top: ", ";\n left: 10px;\n transform: translateY(-50%);\n transition: top 0.3s ease, font-size 0.3s ease;\n display: flex;\n font-family: Poppins;\n font-weight: 400;\n align-items: center;\n box-sizing: border-box;\n"])), props => props.isFocused || props.hasValue ? '12px' : '16px', props => props.isFocused || props.hasValue ? 'auto' : '150px', props => props.disabled ? '#888' : props.textColor || '#333', props => props.isFocused || props.hasValue ? '0px' : '50%');
|
|
16
|
+
const RequiredIndicator = exports.RequiredIndicator = _styledComponents.default.span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n color: red;\n margin-left: 5px;\n"])));
|
|
17
|
+
const EyeIcon = exports.EyeIcon = _styledComponents.default.div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n top: 50%;\n right: 10px;\n transform: translateY(-50%);\n cursor: pointer;\n color: ", ";\n\n &:hover {\n color: ", ";\n }\n"])), props => props.textColor || '#888', props => props.textColor || '#333');
|
|
18
|
+
const ErrorLabel = exports.ErrorLabel = _styledComponents.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n font-size: 12px;\n color: red;\n margin-top: 5px;\n"])));
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
12
|
+
var _ChervronRightIcon = _interopRequireDefault(require("./icons/ChervronRightIcon"));
|
|
13
|
+
var _ChervronLeftIcon = _interopRequireDefault(require("./icons/ChervronLeftIcon"));
|
|
14
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
|
|
15
|
+
/* eslint-disable jsx-a11y/no-static-element-interactions */
|
|
16
|
+
/* eslint-disable jsx-a11y/click-events-have-key-events */
|
|
17
|
+
/* eslint-disable react/prop-types */
|
|
18
|
+
// Styled components for the date picker
|
|
19
|
+
const DatePickerContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n"])));
|
|
20
|
+
const DatePickerPopup = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n position: absolute;\n width: auto;\n margin: 5px;\n height: 250px;\n top: calc(100% + 5px);\n box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.15);\n left: 0;\n background-color: #fff;\n border: 1px solid #ccc;\n border-radius: 4px;\n padding: 10px;\n z-index: 1000;\n"])));
|
|
21
|
+
const DatePickerHeader = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n justify-content: space-between;\n margin-bottom: 10px;\n"])));
|
|
22
|
+
const NavDiv = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n width: 80px;\n height: 30px;\n display: flex;\n padding: 5px;\n justify-content: space-around;\n"])));
|
|
23
|
+
const DatePickerSelect = _styledComponents.default.select(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n padding: 4px;\n border: none;\n font-family: Poppins;\n font-size: 12px; \n font-style: normal;\n font-weight: 400;\n cursor: pointer;\n\n &:focus {\n border: none;\n }\n"])));
|
|
24
|
+
const DatePickerCalendar = _styledComponents.default.div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n display: grid;\n width: 220px;\n height: 150px;\n row-gap: 30px;\n margin: 20px;\n column-gap: 30px;\n grid-template-columns: repeat(4, 1fr);\n grid-template-rows: repeat(4, 1fr);\n"])));
|
|
25
|
+
const DateCell = _styledComponents.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n aspect-ratio: 1 / 1;\n /* height: 32px; */\n font-family: Poppins;\n border-radius: 4px;\n font-size: 12px;\n font-style: normal;\n font-weight: 400;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n transition: background-color 0.3s ease;\n\n &:hover {\n background: #f4faf5;\n }\n\n &.selected {\n background-color: #229e38;\n color: #fff;\n }\n &.startselected {\n border: 1px solid #229e38;\n }\n &.inrange {\n border-radius: 0px;\n background-color: #effef2;\n }\n"])));
|
|
26
|
+
const years = [2022, 2023, 2024];
|
|
27
|
+
const MonthPopupPicker = _ref => {
|
|
28
|
+
let {
|
|
29
|
+
isOpen,
|
|
30
|
+
onChangeDate,
|
|
31
|
+
value,
|
|
32
|
+
setValue,
|
|
33
|
+
startDateValue
|
|
34
|
+
} = _ref;
|
|
35
|
+
const [selectedMonth, setSelectedMonth] = (0, _react.useState)(null);
|
|
36
|
+
const [currentStartDate, setCurrentStartDate] = (0, _react.useState)(new Date(new Date().getFullYear(), 0, 1));
|
|
37
|
+
const handleDateSelect = date => {
|
|
38
|
+
setSelectedMonth(date);
|
|
39
|
+
onChangeDate(date);
|
|
40
|
+
};
|
|
41
|
+
const handlePrevMonth = () => {
|
|
42
|
+
const prevDate = currentStartDate ? new Date(currentStartDate) : new Date();
|
|
43
|
+
prevDate.setMonth(prevDate.getMonth() - 1);
|
|
44
|
+
setCurrentStartDate(prevDate);
|
|
45
|
+
};
|
|
46
|
+
const handleNextMonth = () => {
|
|
47
|
+
const nextDate = currentStartDate ? new Date(currentStartDate) : new Date();
|
|
48
|
+
nextDate.setMonth(nextDate.getMonth() + 1);
|
|
49
|
+
setCurrentStartDate(nextDate);
|
|
50
|
+
};
|
|
51
|
+
(0, _react.useEffect)(() => {
|
|
52
|
+
if (value === '' || value === undefined) {
|
|
53
|
+
setSelectedMonth(null);
|
|
54
|
+
} else {
|
|
55
|
+
setSelectedMonth(new Date(startDateValue));
|
|
56
|
+
}
|
|
57
|
+
}, [value, isOpen]);
|
|
58
|
+
const renderDatePicker = () => {
|
|
59
|
+
const currentDate = currentStartDate || new Date();
|
|
60
|
+
const endDate = new Date(new Date().getFullYear(), 11, 1);
|
|
61
|
+
const dates = [];
|
|
62
|
+
const tempDate = new Date(currentDate);
|
|
63
|
+
tempDate.setDate(1); // Start from the first day of the month
|
|
64
|
+
console.log('dates', tempDate, endDate);
|
|
65
|
+
while (tempDate <= endDate) {
|
|
66
|
+
dates.push(new Date(tempDate));
|
|
67
|
+
tempDate.setMonth(tempDate.getMonth() + 1); // Move to the next month
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return /*#__PURE__*/_react.default.createElement(DatePickerPopup, null, /*#__PURE__*/_react.default.createElement(DatePickerHeader, null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(DatePickerSelect, {
|
|
71
|
+
defaultValue: years.indexOf(currentDate.getFullYear()),
|
|
72
|
+
onChange: e => {
|
|
73
|
+
const newDate = new Date(currentDate);
|
|
74
|
+
newDate.setFullYear(parseInt(e.target.value, 10));
|
|
75
|
+
setCurrentStartDate(newDate);
|
|
76
|
+
setSelectedMonth(null);
|
|
77
|
+
setValue('');
|
|
78
|
+
}
|
|
79
|
+
}, years.map((year, index) => /*#__PURE__*/_react.default.createElement("option", {
|
|
80
|
+
key: "".concat(year),
|
|
81
|
+
value: index
|
|
82
|
+
}, year)))), /*#__PURE__*/_react.default.createElement(NavDiv, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
83
|
+
onClick: handlePrevMonth
|
|
84
|
+
}, /*#__PURE__*/_react.default.createElement(_ChervronLeftIcon.default, null)), /*#__PURE__*/_react.default.createElement("div", {
|
|
85
|
+
onClick: handleNextMonth
|
|
86
|
+
}, /*#__PURE__*/_react.default.createElement(_ChervronRightIcon.default, null)))), /*#__PURE__*/_react.default.createElement(DatePickerCalendar, null, dates.map(date => {
|
|
87
|
+
if (selectedMonth && date.toLocaleString('default', {
|
|
88
|
+
month: 'short'
|
|
89
|
+
}) === selectedMonth.toLocaleString('default', {
|
|
90
|
+
month: 'short'
|
|
91
|
+
})) {
|
|
92
|
+
return /*#__PURE__*/_react.default.createElement(DateCell, {
|
|
93
|
+
key: date.toISOString(),
|
|
94
|
+
className: "selected",
|
|
95
|
+
onClick: () => handleDateSelect(date)
|
|
96
|
+
}, date.toLocaleString('default', {
|
|
97
|
+
month: 'short'
|
|
98
|
+
}));
|
|
99
|
+
}
|
|
100
|
+
if (date.getFullYear() === currentDate.getFullYear()) {
|
|
101
|
+
return /*#__PURE__*/_react.default.createElement(DateCell, {
|
|
102
|
+
key: date.toISOString(),
|
|
103
|
+
onClick: () => handleDateSelect(date)
|
|
104
|
+
}, date.toLocaleString('default', {
|
|
105
|
+
month: 'short'
|
|
106
|
+
}));
|
|
107
|
+
}
|
|
108
|
+
// if (date.getMonth() === currentDate.getMonth() - 1) {
|
|
109
|
+
// return <DateCell />;
|
|
110
|
+
// }
|
|
111
|
+
return null;
|
|
112
|
+
})));
|
|
113
|
+
};
|
|
114
|
+
return /*#__PURE__*/_react.default.createElement(DatePickerContainer, null, isOpen && renderDatePicker());
|
|
115
|
+
};
|
|
116
|
+
var _default = exports.default = MonthPopupPicker;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _moment = _interopRequireDefault(require("moment"));
|
|
11
|
+
var _Calendar = _interopRequireDefault(require("./icons/Calendar"));
|
|
12
|
+
var _CalendarInOpen = _interopRequireDefault(require("./icons/CalendarInOpen"));
|
|
13
|
+
var _QuarterPicker = require("./QuarterPicker.style");
|
|
14
|
+
var _QuarterPopupPicker = _interopRequireDefault(require("./QuarterPopupPicker"));
|
|
15
|
+
/* eslint-disable import/no-extraneous-dependencies */
|
|
16
|
+
/* eslint-disable react/require-default-props */
|
|
17
|
+
/* eslint-disable no-nested-ternary */
|
|
18
|
+
// CustomInput.js
|
|
19
|
+
|
|
20
|
+
const QuarterPicker = _ref => {
|
|
21
|
+
let {
|
|
22
|
+
label,
|
|
23
|
+
onChange,
|
|
24
|
+
borderRadius,
|
|
25
|
+
required,
|
|
26
|
+
width,
|
|
27
|
+
height,
|
|
28
|
+
placeholder,
|
|
29
|
+
disabled,
|
|
30
|
+
borderColor,
|
|
31
|
+
// Added borderColor prop
|
|
32
|
+
borderColorFoucs,
|
|
33
|
+
// Added borderColorFour prop
|
|
34
|
+
textColor // Added textColor prop
|
|
35
|
+
} = _ref;
|
|
36
|
+
const [isFocused, setIsFocused] = (0, _react.useState)(false);
|
|
37
|
+
const [isOpen, setIsOpen] = (0, _react.useState)(false);
|
|
38
|
+
const [value, setValue] = (0, _react.useState)(''); // Added value state
|
|
39
|
+
const [startDateValue, setStartDateValue] = (0, _react.useState)(null); // Added value state
|
|
40
|
+
|
|
41
|
+
const onChangeDate = startDate => {
|
|
42
|
+
if (startDate) {
|
|
43
|
+
setIsOpen(!isOpen);
|
|
44
|
+
setIsFocused(false);
|
|
45
|
+
setStartDateValue(startDate);
|
|
46
|
+
setValue("".concat((0, _moment.default)(startDate).format('MMMM | YYYY')));
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
const onChangeEvent = e => {
|
|
50
|
+
const dateArray = e.target.value;
|
|
51
|
+
const arr = dateArray.split(' - ');
|
|
52
|
+
const startDate = new Date(arr[0]);
|
|
53
|
+
setStartDateValue((0, _moment.default)(startDate).format('MM'));
|
|
54
|
+
onChange(e);
|
|
55
|
+
setValue(e.target.value);
|
|
56
|
+
};
|
|
57
|
+
const toggleDatePicker = () => {
|
|
58
|
+
setIsOpen(!isOpen);
|
|
59
|
+
};
|
|
60
|
+
const handleFocus = () => {
|
|
61
|
+
setIsFocused(true);
|
|
62
|
+
};
|
|
63
|
+
const handleBlur = () => {
|
|
64
|
+
setIsFocused(false);
|
|
65
|
+
};
|
|
66
|
+
return /*#__PURE__*/_react.default.createElement(_QuarterPicker.Container, {
|
|
67
|
+
onClick: handleFocus,
|
|
68
|
+
width: width,
|
|
69
|
+
height: height
|
|
70
|
+
}, /*#__PURE__*/_react.default.createElement(_QuarterPicker.StyledLabel, {
|
|
71
|
+
onClick: handleFocus,
|
|
72
|
+
isFocused: isFocused,
|
|
73
|
+
hasValue: value,
|
|
74
|
+
disabled: disabled,
|
|
75
|
+
textColor: textColor
|
|
76
|
+
}, label, required && /*#__PURE__*/_react.default.createElement(_QuarterPicker.RequiredIndicator, null, "*")), /*#__PURE__*/_react.default.createElement(_QuarterPicker.StyledInput, {
|
|
77
|
+
value: value,
|
|
78
|
+
onChange: onChangeEvent,
|
|
79
|
+
onFocus: handleFocus,
|
|
80
|
+
onBlur: handleBlur,
|
|
81
|
+
isFocused: isFocused,
|
|
82
|
+
borderColorFoucs: borderColorFoucs,
|
|
83
|
+
borderRadius: borderRadius,
|
|
84
|
+
width: width,
|
|
85
|
+
height: height,
|
|
86
|
+
placeholder: isFocused ? placeholder : '',
|
|
87
|
+
disabled: disabled,
|
|
88
|
+
borderColor: borderColor,
|
|
89
|
+
textColor: textColor
|
|
90
|
+
}), /*#__PURE__*/_react.default.createElement(_QuarterPicker.CalendarDiv, {
|
|
91
|
+
width: width,
|
|
92
|
+
onClick: toggleDatePicker
|
|
93
|
+
}, isOpen === true ? /*#__PURE__*/_react.default.createElement(_CalendarInOpen.default, null) : /*#__PURE__*/_react.default.createElement(_Calendar.default, null)), /*#__PURE__*/_react.default.createElement(_QuarterPopupPicker.default, {
|
|
94
|
+
isOpen: isOpen,
|
|
95
|
+
onChangeDate: onChangeDate,
|
|
96
|
+
value: value,
|
|
97
|
+
setValue: setValue,
|
|
98
|
+
startDateValue: startDateValue
|
|
99
|
+
}));
|
|
100
|
+
};
|
|
101
|
+
// Adding defaultProps
|
|
102
|
+
QuarterPicker.defaultProps = {
|
|
103
|
+
required: true,
|
|
104
|
+
width: '200%',
|
|
105
|
+
height: '60px',
|
|
106
|
+
disabled: false,
|
|
107
|
+
placeholder: 'Enter here..',
|
|
108
|
+
borderColor: '#000000',
|
|
109
|
+
// Default borderColor prop value
|
|
110
|
+
borderColorFoucs: '#000000',
|
|
111
|
+
// Default borderColorFoucs prop value
|
|
112
|
+
textColor: '#000000' // Default textColor prop value
|
|
113
|
+
};
|
|
114
|
+
var _default = exports.default = QuarterPicker;
|