@bigbinary/neeto-fields-frontend 1.3.36 → 1.3.37

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/index.cjs.js CHANGED
@@ -949,7 +949,8 @@ var useFormikFields = function useFormikFields(_ref) {
949
949
  //conditional props
950
950
  options: isDropdown$1(kind) ? fieldData : undefined,
951
951
  getPopupContainer: !isInline && isDateTime(kind) ? ramda.prop("parentElement") : undefined
952
- })
952
+ }),
953
+ helpers: helpers
953
954
  };
954
955
  };
955
956
 
@@ -970,30 +971,70 @@ var _excluded$6 = ["onBlur"];
970
971
  function ownKeys$g(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; }
971
972
  function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
972
973
  var DateOrTime = function DateOrTime(props) {
974
+ var isInline = props.isInline;
975
+ var _useState = React.useState(isInline),
976
+ _useState2 = _slicedToArray(_useState, 2),
977
+ isOpen = _useState2[0],
978
+ setIsOpen = _useState2[1];
979
+ var value = React.useRef();
973
980
  var _useFormikFields = useFormikFields(props),
974
981
  handleSubmit = _useFormikFields.handleSubmit,
975
982
  _useFormikFields$fiel = _useFormikFields.fieldProps,
976
983
  onBlur = _useFormikFields$fiel.onBlur,
977
- fieldProps = _objectWithoutProperties(_useFormikFields$fiel, _excluded$6);
984
+ fieldProps = _objectWithoutProperties(_useFormikFields$fiel, _excluded$6),
985
+ helpers = _useFormikFields.helpers;
978
986
  var handleChange = function handleChange(dateTime) {
979
- return handleSubmit(dateTimeToString(dateTime));
980
- };
981
- var onOpenChange = function onOpenChange(open) {
982
- if (open) return;
983
- onBlur === null || onBlur === void 0 || onBlur();
987
+ value.current = dateTimeToString(dateTime);
988
+ helpers.setValue(value.current);
989
+ if (!isOpen) handleSubmit();
984
990
  };
991
+ var onOpenChange = /*#__PURE__*/function () {
992
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(open) {
993
+ var shouldSubmit;
994
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
995
+ while (1) switch (_context.prev = _context.next) {
996
+ case 0:
997
+ setIsOpen(open);
998
+ if (!open) {
999
+ _context.next = 3;
1000
+ break;
1001
+ }
1002
+ return _context.abrupt("return");
1003
+ case 3:
1004
+ shouldSubmit = value.current !== undefined && neetoCist.notEquals(fieldProps.value, value.current);
1005
+ _context.t0 = shouldSubmit;
1006
+ if (!_context.t0) {
1007
+ _context.next = 8;
1008
+ break;
1009
+ }
1010
+ _context.next = 8;
1011
+ return handleSubmit();
1012
+ case 8:
1013
+ onBlur === null || onBlur === void 0 || onBlur();
1014
+ case 9:
1015
+ case "end":
1016
+ return _context.stop();
1017
+ }
1018
+ }, _callee);
1019
+ }));
1020
+ return function onOpenChange(_x) {
1021
+ return _ref.apply(this, arguments);
1022
+ };
1023
+ }();
985
1024
  if (props.kind === KINDS.time) {
986
1025
  return /*#__PURE__*/React__default["default"].createElement(neetoui.TimePicker, _extends({}, _objectSpread$g(_objectSpread$g({}, fieldProps), {}, {
987
1026
  onOpenChange: onOpenChange
988
1027
  }), {
989
1028
  use12Hours: true,
990
1029
  format: "h:mm A",
1030
+ open: isOpen,
991
1031
  onChange: handleChange
992
1032
  }));
993
1033
  } else if (props.kind === KINDS.date) {
994
1034
  return /*#__PURE__*/React__default["default"].createElement(neetoui.DatePicker, _extends({}, _objectSpread$g(_objectSpread$g({}, fieldProps), {}, {
995
1035
  onOpenChange: onOpenChange
996
1036
  }), {
1037
+ open: isOpen,
997
1038
  onChange: handleChange
998
1039
  }));
999
1040
  }
@@ -1003,6 +1044,7 @@ var DateOrTime = function DateOrTime(props) {
1003
1044
  }, _objectSpread$g(_objectSpread$g({}, fieldProps), {}, {
1004
1045
  onOpenChange: onOpenChange
1005
1046
  }), {
1047
+ open: isOpen,
1006
1048
  onChange: handleChange
1007
1049
  }));
1008
1050
  };