@portnet/ui 1.1.3 → 1.1.5
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.
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
require("core-js/modules/es.array.includes.js");
|
|
4
4
|
require("core-js/modules/es.string.includes.js");
|
|
5
|
-
require("core-js/modules/es.weak-map.js");
|
|
6
5
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
7
6
|
require("core-js/modules/esnext.iterator.filter.js");
|
|
8
7
|
require("core-js/modules/esnext.iterator.for-each.js");
|
|
@@ -11,239 +10,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
11
10
|
});
|
|
12
11
|
exports.default = void 0;
|
|
13
12
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
var _DatePicker = require("@mui/x-date-pickers/DatePicker");
|
|
13
|
+
var _react = _interopRequireDefault(require("react"));
|
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
15
|
var _formik = require("formik");
|
|
18
16
|
var _moment = _interopRequireDefault(require("moment"));
|
|
19
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
20
|
-
var React = _interopRequireWildcard(require("react"));
|
|
21
|
-
var _apperance = require("../../config/apperance");
|
|
22
|
-
var _PuiButton = _interopRequireDefault(require("../buttons/PuiButton"));
|
|
23
|
-
var _StyledMuiTextField = _interopRequireDefault(require("../common/StyledMuiTextField"));
|
|
24
|
-
var _PuiDialog = _interopRequireDefault(require("../others/PuiDialog"));
|
|
25
|
-
var _PuiTextField = _interopRequireDefault(require("./PuiTextField"));
|
|
26
17
|
var _DateTimePickerField = _interopRequireDefault(require("../others/DateTimePickerField"));
|
|
27
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
28
|
-
const _excluded = ["id", "className", "sx", "label", "name", "required", "value", "minDate", "maxDate", "inputFormat", "format", "disablePast", "disableFuture", "error", "readOnly", "fullWidth", "disabled", "helperText", "onChange", "onBlur"]
|
|
29
|
-
_excluded2 = ["id", "className", "sx", "label", "name", "required", "value", "minDate", "maxDate", "inputFormat", "format", "disablePast", "disableFuture", "error", "readOnly", "fullWidth", "disabled", "helperText", "onChange", "onBlur"],
|
|
30
|
-
_excluded3 = ["formik", "id", "className", "sx", "label", "name", "required", "value", "minDate", "maxDate", "inputFormat", "format", "disablePast", "disableFuture", "error", "readOnly", "fullWidth", "disabled", "helperText", "onChange", "onBlur"];
|
|
31
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
32
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
|
+
const _excluded = ["id", "className", "sx", "label", "name", "required", "value", "minDate", "maxDate", "inputFormat", "format", "disablePast", "disableFuture", "error", "readOnly", "fullWidth", "disabled", "helperText", "onChange", "onBlur"];
|
|
33
20
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
34
|
-
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
35
|
-
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
|
|
36
21
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
37
22
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
38
23
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
39
24
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
40
25
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
"&.MuiFormControl-root": {
|
|
45
|
-
display: "block",
|
|
46
|
-
"& .MuiInputAdornment-root .MuiButtonBase-root": {
|
|
47
|
-
padding: "6px",
|
|
48
|
-
marginRight: "-8px",
|
|
49
|
-
"& .MuiSvgIcon-root": {
|
|
50
|
-
width: "16px",
|
|
51
|
-
height: "16px"
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
}));
|
|
56
|
-
const TimePickerDialog = _ref => {
|
|
57
|
-
var _ref2, _ref3;
|
|
58
|
-
let {
|
|
59
|
-
open,
|
|
60
|
-
selectedDate,
|
|
61
|
-
onTimeSelected,
|
|
62
|
-
onClose,
|
|
63
|
-
position
|
|
64
|
-
} = _ref;
|
|
65
|
-
const defaultTime = (0, _moment.default)(selectedDate).isValid() ? (0, _moment.default)(selectedDate).format("HH:mm") : (0, _moment.default)().format("HH:mm");
|
|
66
|
-
const [selectedTime, setSelectedTime] = React.useState(defaultTime);
|
|
67
|
-
const handleTimeChange = event => {
|
|
68
|
-
setSelectedTime(event.target.value);
|
|
69
|
-
};
|
|
70
|
-
const handleOk = () => {
|
|
71
|
-
onTimeSelected(selectedTime);
|
|
72
|
-
onClose();
|
|
73
|
-
};
|
|
74
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiDialog.default, {
|
|
75
|
-
open: open,
|
|
76
|
-
onClose: onClose,
|
|
77
|
-
slotProps: {
|
|
78
|
-
backdrop: {
|
|
79
|
-
style: {
|
|
80
|
-
backgroundColor: "transparent",
|
|
81
|
-
boxShadow: "none"
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
|
-
hideBackdrop: true,
|
|
86
|
-
PaperProps: {
|
|
87
|
-
elevation: 5,
|
|
88
|
-
sx: {
|
|
89
|
-
position: "fixed",
|
|
90
|
-
alignContent: "center",
|
|
91
|
-
justifyContent: "center",
|
|
92
|
-
alignItems: "center",
|
|
93
|
-
backgroundColor: "white",
|
|
94
|
-
height: 58,
|
|
95
|
-
width: 340,
|
|
96
|
-
maxWidth: "720px!important",
|
|
97
|
-
left: (_ref2 = (position === null || position === void 0 ? void 0 : position.left) - 420 / 2) !== null && _ref2 !== void 0 ? _ref2 : 0,
|
|
98
|
-
top: (_ref3 = (position === null || position === void 0 ? void 0 : position.top) + 36) !== null && _ref3 !== void 0 ? _ref3 : 36
|
|
99
|
-
}
|
|
100
|
-
},
|
|
101
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Box, {
|
|
102
|
-
sx: {
|
|
103
|
-
display: "flex",
|
|
104
|
-
gap: 1
|
|
105
|
-
},
|
|
106
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiTextField.default, {
|
|
107
|
-
id: "time",
|
|
108
|
-
type: "time",
|
|
109
|
-
value: selectedTime,
|
|
110
|
-
onChange: handleTimeChange,
|
|
111
|
-
InputLabelProps: {
|
|
112
|
-
shrink: true
|
|
113
|
-
},
|
|
114
|
-
inputProps: {
|
|
115
|
-
step: 60
|
|
116
|
-
},
|
|
117
|
-
formik: false,
|
|
118
|
-
sx: {
|
|
119
|
-
width: 150
|
|
120
|
-
}
|
|
121
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
|
|
122
|
-
onClick: onClose,
|
|
123
|
-
sx: {
|
|
124
|
-
color: _apperance.palette.primary
|
|
125
|
-
},
|
|
126
|
-
children: "Cancel"
|
|
127
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_PuiButton.default, {
|
|
128
|
-
onClick: handleOk,
|
|
129
|
-
sx: {
|
|
130
|
-
color: _apperance.palette.primary
|
|
131
|
-
},
|
|
132
|
-
children: "OK"
|
|
133
|
-
})]
|
|
134
|
-
})
|
|
135
|
-
});
|
|
136
|
-
};
|
|
137
|
-
const PuiStandardDateTimeField = /*#__PURE__*/React.forwardRef((_ref4, ref) => {
|
|
138
|
-
let {
|
|
139
|
-
id,
|
|
140
|
-
className,
|
|
141
|
-
sx,
|
|
142
|
-
label,
|
|
143
|
-
name,
|
|
144
|
-
required,
|
|
145
|
-
value,
|
|
146
|
-
minDate,
|
|
147
|
-
maxDate,
|
|
148
|
-
inputFormat = "YYYY-MM-DDTHH:mm:ss.SSSZ",
|
|
149
|
-
format = "YYYY-MM-DDTHH:mm:ss.SSSZ",
|
|
150
|
-
disablePast,
|
|
151
|
-
disableFuture,
|
|
152
|
-
error,
|
|
153
|
-
readOnly,
|
|
154
|
-
fullWidth,
|
|
155
|
-
disabled,
|
|
156
|
-
helperText,
|
|
157
|
-
onChange,
|
|
158
|
-
onBlur
|
|
159
|
-
} = _ref4,
|
|
160
|
-
rest = _objectWithoutProperties(_ref4, _excluded);
|
|
161
|
-
const textFieldRef = React.useRef(null);
|
|
162
|
-
const [dateTime, setDateTime] = React.useState(value || null);
|
|
163
|
-
const minDateObj = minDate ? (0, _moment.default)(minDate, format).toDate() : undefined;
|
|
164
|
-
const maxDateObj = maxDate ? (0, _moment.default)(maxDate, format).toDate() : undefined;
|
|
165
|
-
const [displayedDateTime, setDisplayedDateTime] = React.useState(value || null);
|
|
166
|
-
const [openTimePicker, setOpenTimePicker] = React.useState(false);
|
|
167
|
-
const [dialogPosition, setDialogPosition] = React.useState();
|
|
168
|
-
const handleDateChange = date => {
|
|
169
|
-
if (date) {
|
|
170
|
-
setDateTime((0, _moment.default)(date).format(format));
|
|
171
|
-
setOpenTimePicker(true);
|
|
172
|
-
}
|
|
173
|
-
};
|
|
174
|
-
const handleTimeSelected = time => {
|
|
175
|
-
const newDateTime = (0, _moment.default)(dateTime).format("YYYY-MM-DD") + "T" + time;
|
|
176
|
-
const updatedDateTime = (0, _moment.default)(newDateTime, "YYYY-MM-DDTHH:mm").format(format);
|
|
177
|
-
setDateTime(updatedDateTime);
|
|
178
|
-
setDisplayedDateTime(updatedDateTime);
|
|
179
|
-
onChange(updatedDateTime);
|
|
180
|
-
};
|
|
181
|
-
React.useEffect(() => {
|
|
182
|
-
const updatePosition = () => {
|
|
183
|
-
if (textFieldRef !== null && textFieldRef !== void 0 && textFieldRef.current) {
|
|
184
|
-
const rect = textFieldRef.current.getBoundingClientRect();
|
|
185
|
-
console.log("rect : ", rect);
|
|
186
|
-
setDialogPosition({
|
|
187
|
-
left: rect.left + rect.width / 2 + window.scrollX,
|
|
188
|
-
top: rect.top > 310 ? rect.top - 80 : rect.top + 80
|
|
189
|
-
});
|
|
190
|
-
}
|
|
191
|
-
};
|
|
192
|
-
updatePosition();
|
|
193
|
-
window.addEventListener("resize", updatePosition);
|
|
194
|
-
window.addEventListener("scroll", updatePosition);
|
|
195
|
-
return () => {
|
|
196
|
-
window.removeEventListener("resize", updatePosition);
|
|
197
|
-
window.removeEventListener("scroll", updatePosition);
|
|
198
|
-
};
|
|
199
|
-
}, []);
|
|
200
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
201
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DatePicker.DatePicker, _objectSpread({
|
|
202
|
-
ref: textFieldRef,
|
|
203
|
-
sx: sx,
|
|
204
|
-
ampm: false,
|
|
205
|
-
label: label,
|
|
206
|
-
inputFormat: "DD/MM/yyyy HH:mm",
|
|
207
|
-
value: displayedDateTime,
|
|
208
|
-
onChange: handleDateChange,
|
|
209
|
-
disablePast: disablePast,
|
|
210
|
-
disableFuture: disableFuture,
|
|
211
|
-
disabled: disabled,
|
|
212
|
-
maxDate: maxDateObj,
|
|
213
|
-
minDate: minDateObj,
|
|
214
|
-
readOnly: readOnly,
|
|
215
|
-
PopperProps: {
|
|
216
|
-
sx: {
|
|
217
|
-
"& .MuiButtonBase-root.Mui-selected, & .MuiButtonBase-root.Mui-selected:focus, & .MuiButtonBase-root.Mui-selected:hover": {
|
|
218
|
-
backgroundColor: _apperance.palette.primary
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
},
|
|
222
|
-
renderInput: params => /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledDateMuiTextField, _objectSpread(_objectSpread({}, params), {}, {
|
|
223
|
-
ref: textFieldRef,
|
|
224
|
-
id: id,
|
|
225
|
-
className: className,
|
|
226
|
-
label: label,
|
|
227
|
-
name: name,
|
|
228
|
-
required: required,
|
|
229
|
-
fullWidth: fullWidth,
|
|
230
|
-
onBlur: onBlur,
|
|
231
|
-
helperText: helperText,
|
|
232
|
-
error: error,
|
|
233
|
-
inputProps: _objectSpread(_objectSpread({}, params.inputProps), {}, {
|
|
234
|
-
readOnly: readOnly
|
|
235
|
-
})
|
|
236
|
-
}))
|
|
237
|
-
}, rest)), /*#__PURE__*/(0, _jsxRuntime.jsx)(TimePickerDialog, {
|
|
238
|
-
open: openTimePicker,
|
|
239
|
-
selectedDate: dateTime,
|
|
240
|
-
onTimeSelected: handleTimeSelected,
|
|
241
|
-
onClose: () => setOpenTimePicker(false),
|
|
242
|
-
position: dialogPosition
|
|
243
|
-
})]
|
|
244
|
-
});
|
|
245
|
-
});
|
|
246
|
-
const PuiFormikDateTimeField = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
|
|
26
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
27
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
|
|
28
|
+
const PuiDateTimeField = /*#__PURE__*/_react.default.forwardRef((_ref, ref) => {
|
|
247
29
|
let {
|
|
248
30
|
id,
|
|
249
31
|
className,
|
|
@@ -265,11 +47,11 @@ const PuiFormikDateTimeField = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
|
|
|
265
47
|
helperText,
|
|
266
48
|
onChange,
|
|
267
49
|
onBlur
|
|
268
|
-
} =
|
|
269
|
-
rest = _objectWithoutProperties(
|
|
50
|
+
} = _ref,
|
|
51
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
270
52
|
const [field, meta] = (0, _formik.useField)(name);
|
|
271
53
|
const formikContext = (0, _formik.useFormikContext)();
|
|
272
|
-
const [hasError, setHasError] =
|
|
54
|
+
const [hasError, setHasError] = _react.default.useState(false);
|
|
273
55
|
const minDateObj = minDate ? (0, _moment.default)(minDate, format).toDate() : undefined;
|
|
274
56
|
const maxDateObj = maxDate ? (0, _moment.default)(maxDate, format).toDate() : undefined;
|
|
275
57
|
const handleChange = value => {
|
|
@@ -280,15 +62,14 @@ const PuiFormikDateTimeField = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
|
|
|
280
62
|
onBlur(event);
|
|
281
63
|
field.onBlur(event);
|
|
282
64
|
};
|
|
283
|
-
|
|
284
|
-
setHasError(
|
|
65
|
+
_react.default.useEffect(() => {
|
|
66
|
+
setHasError(meta.touched && meta.error);
|
|
285
67
|
}, [meta]);
|
|
286
|
-
|
|
287
|
-
if (
|
|
68
|
+
_react.default.useEffect(() => {
|
|
69
|
+
if (value) {
|
|
288
70
|
formikContext.setFieldValue(name, value);
|
|
289
71
|
}
|
|
290
|
-
|
|
291
|
-
}, [value]);
|
|
72
|
+
}, [value, formikContext, name]);
|
|
292
73
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_DateTimePickerField.default, _objectSpread({
|
|
293
74
|
ref: ref,
|
|
294
75
|
id: id,
|
|
@@ -297,83 +78,33 @@ const PuiFormikDateTimeField = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
|
|
|
297
78
|
label: label,
|
|
298
79
|
name: name,
|
|
299
80
|
required: required,
|
|
300
|
-
value:
|
|
81
|
+
value: value,
|
|
301
82
|
format: format,
|
|
302
83
|
minDate: minDateObj,
|
|
303
84
|
maxDate: maxDateObj,
|
|
304
85
|
inputFormat: inputFormat,
|
|
305
86
|
disableFuture: disableFuture,
|
|
306
87
|
disablePast: disablePast,
|
|
307
|
-
error:
|
|
88
|
+
error: hasError || error,
|
|
308
89
|
readOnly: readOnly,
|
|
309
90
|
fullWidth: fullWidth,
|
|
310
91
|
disabled: disabled,
|
|
311
|
-
helperText:
|
|
92
|
+
helperText: helperText || meta.error,
|
|
312
93
|
onChange: handleChange,
|
|
313
94
|
onBlur: handleBlur
|
|
314
95
|
}, rest));
|
|
315
96
|
});
|
|
316
|
-
const PuiDateTimeField = /*#__PURE__*/React.forwardRef((_ref6, ref) => {
|
|
317
|
-
let {
|
|
318
|
-
formik,
|
|
319
|
-
id,
|
|
320
|
-
className,
|
|
321
|
-
sx,
|
|
322
|
-
label,
|
|
323
|
-
name,
|
|
324
|
-
required,
|
|
325
|
-
value,
|
|
326
|
-
minDate,
|
|
327
|
-
maxDate,
|
|
328
|
-
inputFormat,
|
|
329
|
-
format,
|
|
330
|
-
disablePast,
|
|
331
|
-
disableFuture,
|
|
332
|
-
error,
|
|
333
|
-
readOnly,
|
|
334
|
-
fullWidth,
|
|
335
|
-
disabled,
|
|
336
|
-
helperText,
|
|
337
|
-
onChange,
|
|
338
|
-
onBlur
|
|
339
|
-
} = _ref6,
|
|
340
|
-
rest = _objectWithoutProperties(_ref6, _excluded3);
|
|
341
|
-
return /*#__PURE__*/React.createElement(formik ? PuiFormikDateTimeField : PuiStandardDateTimeField, _objectSpread({
|
|
342
|
-
ref,
|
|
343
|
-
id,
|
|
344
|
-
className,
|
|
345
|
-
sx,
|
|
346
|
-
label,
|
|
347
|
-
name,
|
|
348
|
-
required,
|
|
349
|
-
value,
|
|
350
|
-
minDate,
|
|
351
|
-
maxDate,
|
|
352
|
-
inputFormat,
|
|
353
|
-
format,
|
|
354
|
-
disablePast,
|
|
355
|
-
disableFuture,
|
|
356
|
-
error,
|
|
357
|
-
readOnly,
|
|
358
|
-
fullWidth,
|
|
359
|
-
disabled,
|
|
360
|
-
helperText,
|
|
361
|
-
onChange,
|
|
362
|
-
onBlur
|
|
363
|
-
}, rest));
|
|
364
|
-
});
|
|
365
97
|
PuiDateTimeField.propTypes = {
|
|
366
98
|
id: _propTypes.default.string,
|
|
367
99
|
className: _propTypes.default.string,
|
|
368
100
|
sx: _propTypes.default.object,
|
|
369
101
|
label: _propTypes.default.string,
|
|
370
|
-
name: _propTypes.default.string,
|
|
102
|
+
name: _propTypes.default.string.isRequired,
|
|
371
103
|
helperText: _propTypes.default.string,
|
|
372
104
|
inputFormat: _propTypes.default.string,
|
|
373
105
|
format: _propTypes.default.string,
|
|
374
106
|
minDate: _propTypes.default.string,
|
|
375
107
|
maxDate: _propTypes.default.string,
|
|
376
|
-
formik: _propTypes.default.bool,
|
|
377
108
|
disabled: _propTypes.default.bool,
|
|
378
109
|
required: _propTypes.default.bool,
|
|
379
110
|
error: _propTypes.default.bool,
|
|
@@ -382,18 +113,16 @@ PuiDateTimeField.propTypes = {
|
|
|
382
113
|
readOnly: _propTypes.default.bool,
|
|
383
114
|
fullWidth: _propTypes.default.bool,
|
|
384
115
|
onChange: _propTypes.default.func,
|
|
385
|
-
onBlur: _propTypes.default.func
|
|
116
|
+
onBlur: _propTypes.default.func,
|
|
117
|
+
value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.instanceOf(Date)])
|
|
386
118
|
};
|
|
387
119
|
PuiDateTimeField.defaultProps = {
|
|
388
|
-
inputFormat: "
|
|
389
|
-
|
|
390
|
-
disabled: false,
|
|
391
|
-
required: false,
|
|
392
|
-
error: false,
|
|
393
|
-
fullWidth: true,
|
|
394
|
-
readOnly: false,
|
|
120
|
+
inputFormat: "YYYY-MM-DDTHH:mm:ss.SSSZ",
|
|
121
|
+
format: "YYYY-MM-DDTHH:mm:ss.SSSZ",
|
|
395
122
|
disablePast: false,
|
|
396
123
|
disableFuture: false,
|
|
124
|
+
readOnly: false,
|
|
125
|
+
fullWidth: true,
|
|
397
126
|
onChange: () => {},
|
|
398
127
|
onBlur: () => {}
|
|
399
128
|
};
|
|
@@ -11,16 +11,21 @@ var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
|
11
11
|
var _formik = require("formik");
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
var _StyledMuiTextField = _interopRequireDefault(require("../common/StyledMuiTextField"));
|
|
14
|
+
var _utc = _interopRequireDefault(require("dayjs/plugin/utc"));
|
|
15
|
+
var _timezone = _interopRequireDefault(require("dayjs/plugin/timezone"));
|
|
14
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
16
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
19
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
|
+
_dayjs.default.extend(_utc.default);
|
|
21
|
+
_dayjs.default.extend(_timezone.default);
|
|
18
22
|
const DateTimePickerField = _ref => {
|
|
19
23
|
let {
|
|
20
24
|
label,
|
|
21
25
|
name,
|
|
22
26
|
value: propValue,
|
|
23
27
|
onChange,
|
|
28
|
+
timezoneOffset = "Africa/Casablanca",
|
|
24
29
|
required = true,
|
|
25
30
|
error = false,
|
|
26
31
|
helperText = null,
|
|
@@ -31,21 +36,29 @@ const DateTimePickerField = _ref => {
|
|
|
31
36
|
(0, _react.useEffect)(() => {
|
|
32
37
|
const formatValue = value => {
|
|
33
38
|
if (!value) return "";
|
|
34
|
-
const parsedDate = (0, _dayjs.default)(value);
|
|
39
|
+
const parsedDate = (0, _dayjs.default)(value).tz(timezoneOffset);
|
|
35
40
|
if (!parsedDate.isValid()) return "";
|
|
36
41
|
return parsedDate.format("YYYY-MM-DDTHH:mm");
|
|
37
42
|
};
|
|
38
43
|
const formattedValue = formatValue(propValue || (field === null || field === void 0 ? void 0 : field.value));
|
|
39
44
|
setSelectedDateTime(formattedValue);
|
|
40
|
-
}, [propValue, field === null || field === void 0 ? void 0 : field.value]);
|
|
45
|
+
}, [propValue, field === null || field === void 0 ? void 0 : field.value, timezoneOffset]);
|
|
41
46
|
const handleDateTimeChange = event => {
|
|
42
47
|
const newValue = event.target.value;
|
|
48
|
+
if (!newValue) {
|
|
49
|
+
setSelectedDateTime("");
|
|
50
|
+
helpers.setValue("");
|
|
51
|
+
if (onChange) onChange("");
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
const parsedDate = (0, _dayjs.default)(newValue).tz(timezoneOffset);
|
|
55
|
+
const formattedValue = parsedDate.format("YYYY-MM-DDTHH:mm:ss.SSSZ");
|
|
43
56
|
setSelectedDateTime(newValue);
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
console.log("🚀 ~ handleDateTimeChange ~ isoValue:", isoValue);
|
|
47
|
-
if (onChange) onChange(isoValue);
|
|
57
|
+
helpers.setValue(formattedValue);
|
|
58
|
+
if (onChange) onChange(formattedValue);
|
|
48
59
|
};
|
|
60
|
+
console.log("error : ", error);
|
|
61
|
+
console.log("helperText : ", helperText);
|
|
49
62
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Stack.default, {
|
|
50
63
|
component: "form",
|
|
51
64
|
noValidate: true,
|