@mw-kit/mw-ui 1.7.82 → 1.7.84

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.
@@ -14634,16 +14634,16 @@ var Header$1 = function Header() {
14634
14634
  }));
14635
14635
  };
14636
14636
 
14637
- var getOptions = function getOptions(props, options) {
14637
+ var getOptions = function getOptions(setValue, options, selected) {
14638
14638
  return options.map(function (option) {
14639
14639
  var value = option.value,
14640
14640
  onClick = option.onClick,
14641
14641
  rules = option.rules,
14642
14642
  disabled = option.disabled;
14643
- var selected = option.value === props.value;
14643
+ var isSelected = option.value === (selected === null || selected === void 0 ? void 0 : selected.value);
14644
14644
 
14645
14645
  var data = _extends({}, option.data, {
14646
- selected: selected,
14646
+ selected: isSelected,
14647
14647
  value: value
14648
14648
  });
14649
14649
 
@@ -14658,13 +14658,13 @@ var getOptions = function getOptions(props, options) {
14658
14658
  }));
14659
14659
  },
14660
14660
  onClick: onClick || function () {
14661
- props.setValue(selected ? '' : value, option.data);
14661
+ setValue(isSelected ? '' : value, option.data);
14662
14662
  },
14663
14663
  disabled: disabled,
14664
14664
  rules: rules,
14665
14665
  border: {
14666
14666
  left: {
14667
- color: selected ? 'blue' : 'transparent'
14667
+ color: isSelected ? 'blue' : 'transparent'
14668
14668
  }
14669
14669
  },
14670
14670
  data: data
@@ -14698,11 +14698,11 @@ var useSelect = function useSelect(props) {
14698
14698
  options = _useState[0],
14699
14699
  setOptions = _useState[1];
14700
14700
 
14701
- var parsedOptions = getOptions(props, options);
14701
+ var selectedOption = typeof props.value === 'string' ? getSelected(props.value, options) : props.value;
14702
+ var parsedOptions = getOptions(props.setValue, options, selectedOption);
14702
14703
 
14703
14704
  var onReset = function onReset() {};
14704
14705
 
14705
- var selectedOption = getSelected(props.value, options);
14706
14706
  var inputContent = selectedOption ? getInputContent(props, selectedOption) : props.value;
14707
14707
  var parsed = {
14708
14708
  parsedOptions: parsedOptions,
@@ -14745,12 +14745,18 @@ var Footer$1 = function Footer() {
14745
14745
  setOpen = context.setOpen;
14746
14746
 
14747
14747
  var onClick = function onClick() {
14748
- setValue([].concat(checked));
14748
+ var _checked$reduce = checked.reduce(function (r, e) {
14749
+ return [[].concat(r[0], [e.value]), [].concat(r[1], [e.data])];
14750
+ }, [[], []]),
14751
+ value = _checked$reduce[0],
14752
+ data = _checked$reduce[1];
14753
+
14754
+ setValue(value, data);
14749
14755
  setOpen(false);
14750
14756
  };
14751
14757
 
14752
14758
  var isDirty = checked.length !== value.length || checked.some(function (e) {
14753
- return !value.includes(e);
14759
+ return !value.includes(e.value);
14754
14760
  });
14755
14761
  return React__default.createElement(Button$1, {
14756
14762
  type: 'button',
@@ -14820,7 +14826,10 @@ var Header$2 = function Header() {
14820
14826
  var onClick = function onClick() {
14821
14827
  setChecked(function (prev) {
14822
14828
  return prev.length === options.length ? [] : options.map(function (o) {
14823
- return o.value;
14829
+ return {
14830
+ value: o.value,
14831
+ data: o.data
14832
+ };
14824
14833
  });
14825
14834
  });
14826
14835
  };
@@ -14858,7 +14867,7 @@ var Label$2 = function Label(props) {
14858
14867
  return React__default.createElement(Checkbox, {
14859
14868
  type: 'checkbox',
14860
14869
  checked: checked.findIndex(function (e) {
14861
- return e === value;
14870
+ return e.value === value;
14862
14871
  }) !== -1,
14863
14872
  label: typeof LabelComponent !== 'function' ? LabelComponent : React__default.createElement(LabelComponent, Object.assign({}, props.option)),
14864
14873
  disabled: disabled,
@@ -14866,9 +14875,19 @@ var Label$2 = function Label(props) {
14866
14875
  var isChecked = event.target.checked;
14867
14876
  setChecked(function (prev) {
14868
14877
  var newState = prev.filter(function (v) {
14869
- return v !== value;
14878
+ return v.value !== value;
14870
14879
  });
14871
- if (isChecked) newState.push(value);
14880
+
14881
+ if (isChecked) {
14882
+ var e = props.value.find(function (e) {
14883
+ return e.value === value;
14884
+ });
14885
+ newState.push(e || {
14886
+ data: props.option.data,
14887
+ value: value
14888
+ });
14889
+ }
14890
+
14872
14891
  return newState;
14873
14892
  });
14874
14893
  },
@@ -14882,14 +14901,13 @@ var Label$2 = function Label(props) {
14882
14901
  });
14883
14902
  };
14884
14903
 
14885
- var getOptions$1 = function getOptions(options) {
14904
+ var getOptions$1 = function getOptions(options, value) {
14886
14905
  return options.map(function (option) {
14887
14906
  var _label = option.label,
14888
- value = option.value,
14889
14907
  onClick = option.onClick;
14890
14908
  var data = {
14891
14909
  data: option.data,
14892
- value: value
14910
+ value: option.value
14893
14911
  };
14894
14912
  var parsed = {
14895
14913
  label: function label(option) {
@@ -14897,7 +14915,8 @@ var getOptions$1 = function getOptions(options) {
14897
14915
  option: _extends({}, data, {
14898
14916
  disabled: option.disabled
14899
14917
  }),
14900
- label: _label
14918
+ label: _label,
14919
+ value: value
14901
14920
  });
14902
14921
  },
14903
14922
  onClick: onClick,
@@ -14915,20 +14934,32 @@ var getInputContent$1 = function getInputContent(value) {
14915
14934
  return value.length > 1 ? "H\xE1 " + value.length + " sele\xE7\xF5es" : "H\xE1 " + value.length + " sele\xE7\xE3o";
14916
14935
  };
14917
14936
 
14937
+ var parseValue = function parseValue(value) {
14938
+ var parsed = value.map(function (value) {
14939
+ return typeof value === 'string' ? {
14940
+ value: value,
14941
+ data: {}
14942
+ } : value;
14943
+ });
14944
+ return parsed;
14945
+ };
14946
+
14918
14947
  var useSelectMultiple = function useSelectMultiple(props) {
14919
14948
  var _useState = useState([]),
14920
14949
  options = _useState[0],
14921
14950
  setOptions = _useState[1];
14922
14951
 
14923
- var _useState2 = useState([].concat(props.value)),
14952
+ var initial = parseValue(props.value);
14953
+
14954
+ var _useState2 = useState([].concat(initial)),
14924
14955
  checked = _useState2[0],
14925
14956
  setChecked = _useState2[1];
14926
14957
 
14927
- var parsedOptions = getOptions$1(options);
14958
+ var parsedOptions = getOptions$1(options, initial);
14928
14959
  var inputContent = getInputContent$1(props.value);
14929
14960
 
14930
14961
  var onReset = function onReset() {
14931
- setChecked([].concat(props.value));
14962
+ setChecked([].concat(initial));
14932
14963
  };
14933
14964
 
14934
14965
  var returnData = {
@@ -14955,7 +14986,7 @@ var useSelectMultiple = function useSelectMultiple(props) {
14955
14986
  }, children);
14956
14987
  },
14957
14988
  onClear: function onClear() {
14958
- return props.setValue([]);
14989
+ return props.setValue([], []);
14959
14990
  }
14960
14991
  };
14961
14992
  return returnData;
@@ -15088,6 +15119,7 @@ var Select = React__default.forwardRef(function (props, ref) {
15088
15119
  });
15089
15120
  };
15090
15121
 
15122
+ var isEmpty = (typeof props.value === 'string' || Array.isArray(props.value)) && props.value.length === 0;
15091
15123
  return getContext({
15092
15124
  setOpen: setOpen,
15093
15125
  search: [search, setSearch],
@@ -15114,9 +15146,12 @@ var Select = React__default.forwardRef(function (props, ref) {
15114
15146
  },
15115
15147
  onClick: onClick
15116
15148
  },
15117
- ref: ref,
15118
- clearable: props.value.length > 0 ? onClear : undefined,
15119
- placeholder: props.value.length === 0 ? props.placeholder : undefined,
15149
+ ref: ref
15150
+ }, isEmpty ? {
15151
+ placeholder: props.placeholder
15152
+ } : {
15153
+ clearable: onClear
15154
+ }, {
15120
15155
  children: loading ? '' : inputContent
15121
15156
  })), React__default.createElement(Menu, Object.assign({}, menuProps, {
15122
15157
  open: open,