@portnet/ui 1.1.4 → 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,240 +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 _material = require("@mui/material");
15
- var _styles = require("@mui/material/styles");
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", "timezoneOffset", "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
- const StyledDateMuiTextField = (0, _styles.styled)(/*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_StyledMuiTextField.default, _objectSpread({
42
- ref: ref
43
- }, props))))(() => ({
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
- timezoneOffset = "Africa/Casablanca",
151
- disablePast,
152
- disableFuture,
153
- error,
154
- readOnly,
155
- fullWidth,
156
- disabled,
157
- helperText,
158
- onChange,
159
- onBlur
160
- } = _ref4,
161
- rest = _objectWithoutProperties(_ref4, _excluded);
162
- const textFieldRef = React.useRef(null);
163
- const [dateTime, setDateTime] = React.useState(value || null);
164
- const minDateObj = minDate ? (0, _moment.default)(minDate, format).toDate() : undefined;
165
- const maxDateObj = maxDate ? (0, _moment.default)(maxDate, format).toDate() : undefined;
166
- const [displayedDateTime, setDisplayedDateTime] = React.useState(value || null);
167
- const [openTimePicker, setOpenTimePicker] = React.useState(false);
168
- const [dialogPosition, setDialogPosition] = React.useState();
169
- const handleDateChange = date => {
170
- if (date) {
171
- setDateTime((0, _moment.default)(date).format(format));
172
- setOpenTimePicker(true);
173
- }
174
- };
175
- const handleTimeSelected = time => {
176
- const newDateTime = (0, _moment.default)(dateTime).format("YYYY-MM-DD") + "T" + time;
177
- const updatedDateTime = (0, _moment.default)(newDateTime, "YYYY-MM-DDTHH:mm").format(format);
178
- setDateTime(updatedDateTime);
179
- setDisplayedDateTime(updatedDateTime);
180
- onChange(updatedDateTime);
181
- };
182
- React.useEffect(() => {
183
- const updatePosition = () => {
184
- if (textFieldRef !== null && textFieldRef !== void 0 && textFieldRef.current) {
185
- const rect = textFieldRef.current.getBoundingClientRect();
186
- console.log("rect : ", rect);
187
- setDialogPosition({
188
- left: rect.left + rect.width / 2 + window.scrollX,
189
- top: rect.top > 310 ? rect.top - 80 : rect.top + 80
190
- });
191
- }
192
- };
193
- updatePosition();
194
- window.addEventListener("resize", updatePosition);
195
- window.addEventListener("scroll", updatePosition);
196
- return () => {
197
- window.removeEventListener("resize", updatePosition);
198
- window.removeEventListener("scroll", updatePosition);
199
- };
200
- }, []);
201
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
202
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_DatePicker.DatePicker, _objectSpread({
203
- ref: textFieldRef,
204
- sx: sx,
205
- ampm: false,
206
- label: label,
207
- inputFormat: "DD/MM/yyyy HH:mm",
208
- value: displayedDateTime,
209
- onChange: handleDateChange,
210
- disablePast: disablePast,
211
- disableFuture: disableFuture,
212
- disabled: disabled,
213
- maxDate: maxDateObj,
214
- minDate: minDateObj,
215
- readOnly: readOnly,
216
- PopperProps: {
217
- sx: {
218
- "& .MuiButtonBase-root.Mui-selected, & .MuiButtonBase-root.Mui-selected:focus, & .MuiButtonBase-root.Mui-selected:hover": {
219
- backgroundColor: _apperance.palette.primary
220
- }
221
- }
222
- },
223
- renderInput: params => /*#__PURE__*/(0, _jsxRuntime.jsx)(StyledDateMuiTextField, _objectSpread(_objectSpread({}, params), {}, {
224
- ref: textFieldRef,
225
- id: id,
226
- className: className,
227
- label: label,
228
- name: name,
229
- required: required,
230
- fullWidth: fullWidth,
231
- onBlur: onBlur,
232
- helperText: helperText,
233
- error: error,
234
- inputProps: _objectSpread(_objectSpread({}, params.inputProps), {}, {
235
- readOnly: readOnly
236
- })
237
- }))
238
- }, rest)), /*#__PURE__*/(0, _jsxRuntime.jsx)(TimePickerDialog, {
239
- open: openTimePicker,
240
- selectedDate: dateTime,
241
- onTimeSelected: handleTimeSelected,
242
- onClose: () => setOpenTimePicker(false),
243
- position: dialogPosition
244
- })]
245
- });
246
- });
247
- 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) => {
248
29
  let {
249
30
  id,
250
31
  className,
@@ -266,11 +47,11 @@ const PuiFormikDateTimeField = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
266
47
  helperText,
267
48
  onChange,
268
49
  onBlur
269
- } = _ref5,
270
- rest = _objectWithoutProperties(_ref5, _excluded2);
50
+ } = _ref,
51
+ rest = _objectWithoutProperties(_ref, _excluded);
271
52
  const [field, meta] = (0, _formik.useField)(name);
272
53
  const formikContext = (0, _formik.useFormikContext)();
273
- const [hasError, setHasError] = React.useState(false);
54
+ const [hasError, setHasError] = _react.default.useState(false);
274
55
  const minDateObj = minDate ? (0, _moment.default)(minDate, format).toDate() : undefined;
275
56
  const maxDateObj = maxDate ? (0, _moment.default)(maxDate, format).toDate() : undefined;
276
57
  const handleChange = value => {
@@ -281,15 +62,14 @@ const PuiFormikDateTimeField = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
281
62
  onBlur(event);
282
63
  field.onBlur(event);
283
64
  };
284
- React.useEffect(() => {
285
- setHasError(Boolean(meta) && Boolean(meta.touched) && Boolean(meta.error));
65
+ _react.default.useEffect(() => {
66
+ setHasError(meta.touched && meta.error);
286
67
  }, [meta]);
287
- React.useEffect(() => {
288
- if (Boolean(value)) {
68
+ _react.default.useEffect(() => {
69
+ if (value) {
289
70
  formikContext.setFieldValue(name, value);
290
71
  }
291
- // eslint-disable-next-line react-hooks/exhaustive-deps
292
- }, [value]);
72
+ }, [value, formikContext, name]);
293
73
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_DateTimePickerField.default, _objectSpread({
294
74
  ref: ref,
295
75
  id: id,
@@ -298,83 +78,33 @@ const PuiFormikDateTimeField = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
298
78
  label: label,
299
79
  name: name,
300
80
  required: required,
301
- value: Boolean(field.value) ? format ? _moment.default.utc(field.value, format) : _moment.default.utc(field.value) : null,
81
+ value: value,
302
82
  format: format,
303
83
  minDate: minDateObj,
304
84
  maxDate: maxDateObj,
305
85
  inputFormat: inputFormat,
306
86
  disableFuture: disableFuture,
307
87
  disablePast: disablePast,
308
- error: error || hasError,
88
+ error: hasError || error,
309
89
  readOnly: readOnly,
310
90
  fullWidth: fullWidth,
311
91
  disabled: disabled,
312
- helperText: hasError && Boolean(meta.error) ? meta.error : helperText !== null && helperText !== void 0 ? helperText : "",
92
+ helperText: helperText || meta.error,
313
93
  onChange: handleChange,
314
94
  onBlur: handleBlur
315
95
  }, rest));
316
96
  });
317
- const PuiDateTimeField = /*#__PURE__*/React.forwardRef((_ref6, ref) => {
318
- let {
319
- formik,
320
- id,
321
- className,
322
- sx,
323
- label,
324
- name,
325
- required,
326
- value,
327
- minDate,
328
- maxDate,
329
- inputFormat,
330
- format,
331
- disablePast,
332
- disableFuture,
333
- error,
334
- readOnly,
335
- fullWidth,
336
- disabled,
337
- helperText,
338
- onChange,
339
- onBlur
340
- } = _ref6,
341
- rest = _objectWithoutProperties(_ref6, _excluded3);
342
- return /*#__PURE__*/React.createElement(formik ? PuiFormikDateTimeField : PuiStandardDateTimeField, _objectSpread({
343
- ref,
344
- id,
345
- className,
346
- sx,
347
- label,
348
- name,
349
- required,
350
- value,
351
- minDate,
352
- maxDate,
353
- inputFormat,
354
- format,
355
- disablePast,
356
- disableFuture,
357
- error,
358
- readOnly,
359
- fullWidth,
360
- disabled,
361
- helperText,
362
- onChange,
363
- onBlur
364
- }, rest));
365
- });
366
97
  PuiDateTimeField.propTypes = {
367
98
  id: _propTypes.default.string,
368
99
  className: _propTypes.default.string,
369
100
  sx: _propTypes.default.object,
370
101
  label: _propTypes.default.string,
371
- name: _propTypes.default.string,
102
+ name: _propTypes.default.string.isRequired,
372
103
  helperText: _propTypes.default.string,
373
104
  inputFormat: _propTypes.default.string,
374
105
  format: _propTypes.default.string,
375
106
  minDate: _propTypes.default.string,
376
107
  maxDate: _propTypes.default.string,
377
- formik: _propTypes.default.bool,
378
108
  disabled: _propTypes.default.bool,
379
109
  required: _propTypes.default.bool,
380
110
  error: _propTypes.default.bool,
@@ -383,18 +113,16 @@ PuiDateTimeField.propTypes = {
383
113
  readOnly: _propTypes.default.bool,
384
114
  fullWidth: _propTypes.default.bool,
385
115
  onChange: _propTypes.default.func,
386
- onBlur: _propTypes.default.func
116
+ onBlur: _propTypes.default.func,
117
+ value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.instanceOf(Date)])
387
118
  };
388
119
  PuiDateTimeField.defaultProps = {
389
- inputFormat: "DD/MM/YYYY HH:mm",
390
- formik: true,
391
- disabled: false,
392
- required: false,
393
- error: false,
394
- fullWidth: true,
395
- readOnly: false,
120
+ inputFormat: "YYYY-MM-DDTHH:mm:ss.SSSZ",
121
+ format: "YYYY-MM-DDTHH:mm:ss.SSSZ",
396
122
  disablePast: false,
397
123
  disableFuture: false,
124
+ readOnly: false,
125
+ fullWidth: true,
398
126
  onChange: () => {},
399
127
  onBlur: () => {}
400
128
  };
@@ -57,6 +57,8 @@ const DateTimePickerField = _ref => {
57
57
  helpers.setValue(formattedValue);
58
58
  if (onChange) onChange(formattedValue);
59
59
  };
60
+ console.log("error : ", error);
61
+ console.log("helperText : ", helperText);
60
62
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Stack.default, {
61
63
  component: "form",
62
64
  noValidate: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@portnet/ui",
3
- "version": "1.1.4",
3
+ "version": "1.1.5",
4
4
  "description": "Portnet UI",
5
5
  "keywords": [
6
6
  "react",