@mw-kit/mw-ui 1.3.0 → 1.3.1

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.
@@ -21,7 +21,6 @@ export interface AbsoluteContainerProps extends CommonProps {
21
21
  x: number;
22
22
  y: number;
23
23
  };
24
- disableAutoPosition?: boolean;
25
24
  }
26
25
  export interface ContainerProps extends CommonProps {
27
26
  position: Position;
@@ -20,9 +20,12 @@ export declare type Loader = (search: string, page: number) => Promise<LoaderRet
20
20
  interface CommonProps extends Omit<InputProps, 'type' | 'mask' | 'icon' | 'setValue' | 'name' | 'value' | 'onChange'> {
21
21
  onScrollEnd?: () => Promise<void>;
22
22
  position?: Position;
23
- disableAutoPosition?: boolean;
24
23
  loader: Loader;
25
24
  search?: boolean;
25
+ center?: {
26
+ x: number;
27
+ y: number;
28
+ };
26
29
  }
27
30
  export interface OneSelectProps extends CommonProps {
28
31
  type: 'select';
@@ -37,11 +37,6 @@ export interface CommonProps extends Omit<AbsoluteContainerProps, 'children'> {
37
37
  bordered?: boolean;
38
38
  containerSpacing?: SpacingOrZero | Omit<Spacings, 'right'>;
39
39
  itemSpacing?: SpacingOrZero | Spacings;
40
- scrollSpacing?: SpacingOrZero | Spacings;
41
- onScrollEnd?: () => void;
42
- before?: ElementOrString;
43
- after?: ElementOrString;
44
- scrollHeight?: string;
45
40
  children?: JSX.Element | (string & (string | JSX.Element | undefined)) | null;
46
41
  }
47
42
  export interface MenuProps<T = undefined> extends CommonProps {
@@ -50,6 +45,11 @@ export interface MenuProps<T = undefined> extends CommonProps {
50
45
  options: Option<T>[];
51
46
  loading?: boolean;
52
47
  innerContent?: ElementOrString;
48
+ scrollSpacing?: SpacingOrZero | Spacings;
49
+ onScrollEnd?: () => void;
50
+ before?: ElementOrString;
51
+ after?: ElementOrString;
52
+ scrollHeight?: string;
53
53
  }
54
54
  export declare type ContainerProps = CommonProps;
55
55
  export declare type MenuInterface = <T = undefined>(props: MenuProps<T>) => JSX.Element;
package/dist/index.js CHANGED
@@ -11914,20 +11914,24 @@ var ScrollContainer = function ScrollContainer(props) {
11914
11914
  var _templateObject$6, _templateObject2$4, _templateObject3$4, _templateObject4$4, _templateObject5$3, _templateObject6$1, _templateObject7$1, _templateObject8$1, _templateObject9$1, _templateObject10$1, _templateObject11, _templateObject12, _templateObject13, _templateObject14;
11915
11915
  var positions = {
11916
11916
  'top right': function topRight(_ref) {
11917
- var left = _ref.left;
11918
- return styled.css(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteralLoose(["\n top: 0;\n left: ", ";\n "])), left || '100%');
11917
+ var bottom = _ref.bottom,
11918
+ left = _ref.left;
11919
+ return styled.css(_templateObject$6 || (_templateObject$6 = _taggedTemplateLiteralLoose(["\n top: ", ";\n left: ", ";\n "])), bottom ? "calc(100% - " + bottom + ")" : 0, left || '100%');
11919
11920
  },
11920
11921
  'top left': function topLeft(_ref2) {
11921
- var right = _ref2.right;
11922
- return styled.css(_templateObject2$4 || (_templateObject2$4 = _taggedTemplateLiteralLoose(["\n top: 0;\n right: ", ";\n "])), right || '100%');
11922
+ var bottom = _ref2.bottom,
11923
+ right = _ref2.right;
11924
+ return styled.css(_templateObject2$4 || (_templateObject2$4 = _taggedTemplateLiteralLoose(["\n top: ", ";\n right: ", ";\n "])), bottom ? "calc(100% - " + bottom + ")" : 0, right || '100%');
11923
11925
  },
11924
11926
  'bottom right': function bottomRight(_ref3) {
11925
- var left = _ref3.left;
11926
- return styled.css(_templateObject3$4 || (_templateObject3$4 = _taggedTemplateLiteralLoose(["\n bottom: 0;\n left: ", ";\n "])), left || '100%');
11927
+ var top = _ref3.top,
11928
+ left = _ref3.left;
11929
+ return styled.css(_templateObject3$4 || (_templateObject3$4 = _taggedTemplateLiteralLoose(["\n bottom: ", ";\n left: ", ";\n "])), top ? "calc(100% - " + top + ")" : 0, left || '100%');
11927
11930
  },
11928
11931
  'bottom left': function bottomLeft(_ref4) {
11929
- var right = _ref4.right;
11930
- return styled.css(_templateObject4$4 || (_templateObject4$4 = _taggedTemplateLiteralLoose(["\n bottom: 0;\n right: ", ";\n "])), right || '100%');
11932
+ var top = _ref4.top,
11933
+ right = _ref4.right;
11934
+ return styled.css(_templateObject4$4 || (_templateObject4$4 = _taggedTemplateLiteralLoose(["\n bottom: ", ";\n right: ", ";\n "])), top ? "calc(100% - " + top + ")" : 0, right || '100%');
11931
11935
  },
11932
11936
  'right top': function rightTop(_ref5) {
11933
11937
  var bottom = _ref5.bottom;
@@ -11985,7 +11989,6 @@ var Container$2 = styled__default.div(_templateObject9$1 || (_templateObject9$1
11985
11989
  });
11986
11990
 
11987
11991
  var AbsoluteContainer = function AbsoluteContainer(props) {
11988
- var disableAutoPosition = props.disableAutoPosition || props.position;
11989
11992
  var center = props.center || {
11990
11993
  x: 50,
11991
11994
  y: 75
@@ -12006,7 +12009,8 @@ var AbsoluteContainer = function AbsoluteContainer(props) {
12006
12009
  setFirstRender = _useState3[1];
12007
12010
 
12008
12011
  React.useEffect(function () {
12009
- if (disableAutoPosition || !ref) return;
12012
+ setFirstRender(false);
12013
+ if (props.position || !ref) return;
12010
12014
  var width = window.innerWidth;
12011
12015
  var height = window.innerHeight;
12012
12016
 
@@ -12031,10 +12035,8 @@ var AbsoluteContainer = function AbsoluteContainer(props) {
12031
12035
 
12032
12036
  setPosition(_newPosition);
12033
12037
  }
12034
-
12035
- setFirstRender(false);
12036
12038
  }, [ref]);
12037
- var htmlProps = filterObject(props, ['center', 'position', 'disableAutoPosition', 'children']);
12039
+ var htmlProps = filterObject(props, ['center', 'position', 'children']);
12038
12040
  return React__default.createElement(Container$2, Object.assign({}, htmlProps, {
12039
12041
  position: position,
12040
12042
  ref: setRef,
@@ -12103,25 +12105,13 @@ var Menu = function Menu(props) {
12103
12105
  open = _props.open,
12104
12106
  close = _props.close,
12105
12107
  options = _props.options,
12106
- width = _props.width,
12107
- height = _props.height,
12108
- maxWidth = _props.maxWidth,
12109
- maxHeight = _props.maxHeight,
12110
- bordered = _props.bordered,
12111
- position = _props.position,
12112
- disableAutoPosition = _props.disableAutoPosition,
12113
- axis = _props.axis,
12114
- references = _props.references,
12115
12108
  onScrollEnd = _props.onScrollEnd,
12116
12109
  before = _props.before,
12117
12110
  after = _props.after,
12118
12111
  scrollHeight = _props.scrollHeight,
12119
12112
  scrollSpacing = _props.scrollSpacing,
12120
- containerSpacing = _props.containerSpacing,
12121
12113
  children = _props.children,
12122
12114
  loading = _props.loading,
12123
- center = _props.center,
12124
- itemSpacing = _props.itemSpacing,
12125
12115
  innerContent = _props.innerContent;
12126
12116
 
12127
12117
  var _useState = React.useState(-1),
@@ -12153,21 +12143,11 @@ var Menu = function Menu(props) {
12153
12143
  }));
12154
12144
  };
12155
12145
 
12146
+ var absoluteContainerProps = filterObject(props, ['scrollSpacing', 'onScrollEnd', 'before', 'after', 'scrollHeight', 'open', 'close', 'options', 'loading', 'children'], {
12147
+ itemSpacing: 's1'
12148
+ });
12156
12149
  if (!open) return React__default.createElement(React__default.Fragment, null);
12157
- return React__default.createElement(Container$3, {
12158
- width: width,
12159
- height: height,
12160
- maxWidth: maxWidth,
12161
- maxHeight: maxHeight,
12162
- position: position,
12163
- bordered: bordered,
12164
- itemSpacing: itemSpacing || 's1',
12165
- containerSpacing: containerSpacing,
12166
- disableAutoPosition: disableAutoPosition,
12167
- axis: axis,
12168
- references: references,
12169
- center: center
12170
- }, React__default.createElement(React__default.Fragment, null, React__default.createElement(ScrollContainer, {
12150
+ return React__default.createElement(Container$3, Object.assign({}, absoluteContainerProps), React__default.createElement(React__default.Fragment, null, React__default.createElement(ScrollContainer, {
12171
12151
  onScrollEnd: onScrollEnd,
12172
12152
  before: before,
12173
12153
  after: after,
@@ -13478,6 +13458,9 @@ var Header$1 = function Header() {
13478
13458
  setSearched = _context$search[1],
13479
13459
  loading = context.loading,
13480
13460
  options = context.options;
13461
+ React.useEffect(function () {
13462
+ setSearch(searched);
13463
+ }, [searched]);
13481
13464
 
13482
13465
  var onClick = function onClick() {
13483
13466
  setChecked(function (prev) {
@@ -13603,7 +13586,6 @@ var getOptions = function getOptions(props, options, checked, setChecked) {
13603
13586
 
13604
13587
  var Select = React__default.forwardRef(function (props, ref) {
13605
13588
  var position = props.position,
13606
- disableAutoPosition = props.disableAutoPosition,
13607
13589
  loader = props.loader,
13608
13590
  type = props.type;
13609
13591
 
@@ -13644,7 +13626,7 @@ var Select = React__default.forwardRef(function (props, ref) {
13644
13626
  };
13645
13627
 
13646
13628
  var parsedOptions = getOptions(props, options, checked, setChecked);
13647
- var inputProps = filterObject(props, ['type', 'onScrollEnd', 'position', 'disableAutoPosition', 'value']);
13629
+ var inputProps = filterObject(props, ['type', 'onScrollEnd', 'position', 'value']);
13648
13630
 
13649
13631
  if (props.type === 'select-multiple') {
13650
13632
  if (props.value.length > 0) {
@@ -13705,8 +13687,9 @@ var Select = React__default.forwardRef(function (props, ref) {
13705
13687
  };
13706
13688
  }, [onSubmit]);
13707
13689
  React.useEffect(function () {
13708
- if (!Array.isArray(props.value) || !open) return;
13709
- setChecked([].concat(props.value));
13690
+ if (open) return;
13691
+ setSearch('');
13692
+ if (Array.isArray(props.value)) setChecked([].concat(props.value));
13710
13693
  }, [props.value, open]);
13711
13694
  return React__default.createElement(Provider.Provider, {
13712
13695
  value: {
@@ -13750,14 +13733,17 @@ var Select = React__default.forwardRef(function (props, ref) {
13750
13733
  bordered: true,
13751
13734
  itemSpacing: type === 'select-multiple' ? undefined : 's3',
13752
13735
  position: position,
13753
- disableAutoPosition: disableAutoPosition,
13754
13736
  references: {
13755
13737
  bottom: '35px'
13756
13738
  },
13757
13739
  before: React__default.createElement(Header$1, null),
13758
13740
  after: React__default.createElement(Footer$1, null),
13759
13741
  scrollHeight: props.search ? '135px' : '165px',
13760
- loading: loading
13742
+ loading: loading,
13743
+ center: props.center || {
13744
+ x: 50,
13745
+ y: 50
13746
+ }
13761
13747
  })));
13762
13748
  });
13763
13749
  Select.displayName = 'Select';