labsense-ui-kit 1.3.49 → 1.3.50

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.js CHANGED
@@ -8957,6 +8957,7 @@ var TextField = function TextField(_ref25) {
8957
8957
  selectedPeriod = _useState7[0],
8958
8958
  setSelectedPeriod = _useState7[1];
8959
8959
  var timePickerRef = React.useRef(null);
8960
+ var pendingChangeRef = React.useRef(null);
8960
8961
  React.useEffect(function () {
8961
8962
  setIsDisabled(disabled);
8962
8963
  }, [disabled]);
@@ -8964,7 +8965,19 @@ var TextField = function TextField(_ref25) {
8964
8965
  dropdownStyle = _useState8[0],
8965
8966
  setDropdownStyle = _useState8[1];
8966
8967
  React.useEffect(function () {
8967
- if (!showDropdown) return;
8968
+ if (!showDropdown) {
8969
+ if (pendingChangeRef.current && onChange) {
8970
+ var syntheticEvent = {
8971
+ target: {
8972
+ value: pendingChangeRef.current,
8973
+ name: name
8974
+ }
8975
+ };
8976
+ onChange(syntheticEvent);
8977
+ pendingChangeRef.current = null;
8978
+ }
8979
+ return;
8980
+ }
8968
8981
  var closeDropdown = function closeDropdown(event) {
8969
8982
  if (event && event instanceof MouseEvent && timePickerRef.current && timePickerRef.current.contains(event.target)) {
8970
8983
  return;
@@ -8985,7 +8998,10 @@ var TextField = function TextField(_ref25) {
8985
8998
  window.removeEventListener('scroll', handleScroll, true);
8986
8999
  window.removeEventListener('resize', closeDropdown);
8987
9000
  };
8988
- }, [showDropdown]);
9001
+ }, [showDropdown, onChange, name]);
9002
+ React.useEffect(function () {
9003
+ setTimeValue(inputValue);
9004
+ }, [inputValue]);
8989
9005
  React.useEffect(function () {
8990
9006
  if (inputValue && (type === 'time-24hr' || type === 'time-12hr')) {
8991
9007
  var parts = inputValue.split(':');
@@ -9069,13 +9085,7 @@ var TextField = function TextField(_ref25) {
9069
9085
  formatted = hour24.toString().padStart(2, '0') + ":" + m.toString().padStart(2, '0');
9070
9086
  }
9071
9087
  setTimeValue(formatted);
9072
- var syntheticEvent = {
9073
- target: {
9074
- value: formatted,
9075
- name: name
9076
- }
9077
- };
9078
- onChange === null || onChange === void 0 ? void 0 : onChange(syntheticEvent);
9088
+ pendingChangeRef.current = formatted;
9079
9089
  };
9080
9090
  var toggleDropdown = function toggleDropdown() {
9081
9091
  if (isDisabled) return;
@@ -9137,24 +9147,36 @@ var TextField = function TextField(_ref25) {
9137
9147
  return React__default.createElement(SliderItem, {
9138
9148
  key: h,
9139
9149
  "$selected": selectedHour === h,
9140
- onClick: function onClick() {
9141
- return handleTimeChange(h, undefined, undefined);
9150
+ onMouseDown: function onMouseDown(e) {
9151
+ return e.preventDefault();
9152
+ },
9153
+ onClick: function onClick(e) {
9154
+ e.stopPropagation();
9155
+ handleTimeChange(h, undefined, undefined);
9142
9156
  }
9143
9157
  }, h.toString().padStart(2, '0'));
9144
9158
  }))), React__default.createElement(SliderColumn, null, React__default.createElement(SliderLabel, null, "Minutes"), React__default.createElement(SliderWrapper, null, minutes.map(function (m) {
9145
9159
  return React__default.createElement(SliderItem, {
9146
9160
  key: m,
9147
9161
  "$selected": selectedMinute === m,
9148
- onClick: function onClick() {
9149
- return handleTimeChange(undefined, m, undefined);
9162
+ onMouseDown: function onMouseDown(e) {
9163
+ return e.preventDefault();
9164
+ },
9165
+ onClick: function onClick(e) {
9166
+ e.stopPropagation();
9167
+ handleTimeChange(undefined, m, undefined);
9150
9168
  }
9151
9169
  }, m.toString().padStart(2, '0'));
9152
9170
  }))), type === 'time-12hr' && React__default.createElement(SliderColumn, null, React__default.createElement(SliderLabel, null, "Period"), React__default.createElement(SliderWrapper, null, ['AM', 'PM'].map(function (period) {
9153
9171
  return React__default.createElement(SliderItem, {
9154
9172
  key: period,
9155
9173
  "$selected": selectedPeriod === period,
9156
- onClick: function onClick() {
9157
- return handleTimeChange(undefined, undefined, period);
9174
+ onMouseDown: function onMouseDown(e) {
9175
+ return e.preventDefault();
9176
+ },
9177
+ onClick: function onClick(e) {
9178
+ e.stopPropagation();
9179
+ handleTimeChange(undefined, undefined, period);
9158
9180
  }
9159
9181
  }, period);
9160
9182
  }))))));