@kne/react-filter 0.1.0 → 0.1.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.
package/dist/index.css CHANGED
@@ -28,7 +28,6 @@
28
28
  padding: 4px 4px 4px 60px;
29
29
  box-sizing: content-box;
30
30
  transform: translate(-3px, -3px);
31
- pointer-events: none;
32
31
  background: #FFFFFF; }
33
32
 
34
33
  .react-filter-search-confirm {
@@ -1 +1 @@
1
- {"version":3,"sources":["index.scss"],"names":[],"mappings":"AAAA;EACE,WAAW,EAAE;;AAEf;EACE,gBAAgB,EAAE;;AAEpB;EACE,WAAW;EACX,eAAe,EAAE;;AAEnB;EACE,aAAa,EAAE;;AAEjB;EACE,kBAAkB;EAClB,UAAU,EAAE;EACZ;IACE,kBAAkB;IAClB,UAAU,EAAE;EACd;IACE,WAAW;IACX,cAAc;IACd,kBAAkB;IAClB,WAAW;IACX,YAAY;IACZ,+CAA+C;IAC/C,kBAAkB;IAClB,yBAAyB;IACzB,uBAAuB;IACvB,gCAAgC;IAChC,oBAAoB;IACpB,mBAAmB,EAAE;;AAEzB;EACE,kBAAkB;EAClB,MAAM;EACN,YAAY;EACZ,2BAA2B,EAAE","file":"index.css","sourcesContent":[".space-full {\n width: 100%; }\n\n.react-filter-divider {\n margin: 5px auto; }\n\n.react-filter-item-label {\n color: #888;\n font-size: 14px; }\n\n.react-filter-item-children {\n display: flex; }\n\n.react-filter-search-button.is-active {\n position: relative;\n z-index: 1; }\n .react-filter-search-button.is-active .inner {\n position: relative;\n z-index: 1; }\n .react-filter-search-button.is-active:before {\n content: '';\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n box-shadow: 2px 3px 10px 4px rgba(0, 0, 0, 0.2);\n border-radius: 3px;\n padding: 4px 4px 4px 60px;\n box-sizing: content-box;\n transform: translate(-3px, -3px);\n pointer-events: none;\n background: #FFFFFF; }\n\n.react-filter-search-confirm {\n position: absolute;\n top: 0;\n right: -10px;\n transform: translateX(100%); }\n"]}
1
+ {"version":3,"sources":["index.scss"],"names":[],"mappings":"AAAA;EACE,WAAW,EAAE;;AAEf;EACE,gBAAgB,EAAE;;AAEpB;EACE,WAAW;EACX,eAAe,EAAE;;AAEnB;EACE,aAAa,EAAE;;AAEjB;EACE,kBAAkB;EAClB,UAAU,EAAE;EACZ;IACE,kBAAkB;IAClB,UAAU,EAAE;EACd;IACE,WAAW;IACX,cAAc;IACd,kBAAkB;IAClB,WAAW;IACX,YAAY;IACZ,+CAA+C;IAC/C,kBAAkB;IAClB,yBAAyB;IACzB,uBAAuB;IACvB,gCAAgC;IAChC,mBAAmB,EAAE;;AAEzB;EACE,kBAAkB;EAClB,MAAM;EACN,YAAY;EACZ,2BAA2B,EAAE","file":"index.css","sourcesContent":[".space-full {\n width: 100%; }\n\n.react-filter-divider {\n margin: 5px auto; }\n\n.react-filter-item-label {\n color: #888;\n font-size: 14px; }\n\n.react-filter-item-children {\n display: flex; }\n\n.react-filter-search-button.is-active {\n position: relative;\n z-index: 1; }\n .react-filter-search-button.is-active .inner {\n position: relative;\n z-index: 1; }\n .react-filter-search-button.is-active:before {\n content: '';\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n box-shadow: 2px 3px 10px 4px rgba(0, 0, 0, 0.2);\n border-radius: 3px;\n padding: 4px 4px 4px 60px;\n box-sizing: content-box;\n transform: translate(-3px, -3px);\n background: #FFFFFF; }\n\n.react-filter-search-confirm {\n position: absolute;\n top: 0;\n right: -10px;\n transform: translateX(100%); }\n"]}
package/dist/index.js CHANGED
@@ -321,6 +321,7 @@ var SearchButton = function SearchButton(_ref) {
321
321
  children = _ref.children,
322
322
  defaultValue = _ref.defaultValue,
323
323
  defaultActive = _ref.defaultActive,
324
+ onBlur = _ref.onBlur,
324
325
  onSearch = _ref.onSearch,
325
326
  onBeforeSearch = _ref.onBeforeSearch,
326
327
  onActiveChange = _ref.onActiveChange,
@@ -348,23 +349,31 @@ var SearchButton = function SearchButton(_ref) {
348
349
  };
349
350
 
350
351
  var ref = useClickOutSide__default["default"](function () {
351
- if (!active) {
352
- return;
353
- }
354
-
355
352
  setValue(get__default["default"](currentValue, "value"));
356
353
  setActive(false);
354
+ onBlur && onBlur();
357
355
  });
358
356
  var activeChangeRef = React.useRef(onActiveChange);
359
357
  activeChangeRef.current = onActiveChange;
360
358
  React.useEffect(function () {
361
359
  activeChangeRef.current && activeChangeRef.current(active);
362
360
  }, [active]);
361
+ var timer;
363
362
  return /*#__PURE__*/React__default["default"].createElement("div", {
364
363
  className: classnames__default["default"]("react-filter-search-button", {
365
364
  "is-active": active
366
365
  }),
367
- ref: ref
366
+ ref: ref,
367
+ onMouseEnter: function onMouseEnter() {
368
+ clearTimeout(timer);
369
+ !active && setActive(true);
370
+ },
371
+ onMouseLeave: function onMouseLeave() {
372
+ clearTimeout(timer);
373
+ timer = setTimeout(function () {
374
+ active && setActive(false);
375
+ }, 200);
376
+ }
368
377
  }, /*#__PURE__*/React__default["default"].createElement("div", {
369
378
  className: "inner"
370
379
  }, /*#__PURE__*/React__default["default"].createElement("div", null, children({
@@ -401,6 +410,7 @@ var RangeInner = function RangeInner(_ref) {
401
410
  size = _ref.size,
402
411
  defaultActive = _ref.defaultActive,
403
412
  template = _ref.template,
413
+ onBlur = _ref.onBlur,
404
414
  onSearch = _ref.onSearch,
405
415
  _onActiveChange = _ref.onActiveChange,
406
416
  startProps = _ref.startProps,
@@ -433,6 +443,7 @@ var RangeInner = function RangeInner(_ref) {
433
443
  return /*#__PURE__*/React__default["default"].createElement(SearchButton, {
434
444
  size: size,
435
445
  template: template,
446
+ onBlur: onBlur,
436
447
  defaultActive: defaultActive,
437
448
  name: name,
438
449
  onSearch: onSearch,
@@ -485,17 +496,19 @@ var RangeInner = function RangeInner(_ref) {
485
496
  };
486
497
  var Range = withFilterItem(RangeInner);
487
498
 
488
- var _excluded$3 = ["name", "label", "template", "defaultActive", "onSearch", "onActiveChange"];
499
+ var _excluded$3 = ["name", "label", "template", "defaultActive", "onBlur", "onSearch", "onActiveChange"];
489
500
  var TextInner = function TextInner(_ref) {
490
501
  var name = _ref.name,
491
502
  template = _ref.template,
492
503
  defaultActive = _ref.defaultActive,
504
+ onBlur = _ref.onBlur,
493
505
  onSearch = _ref.onSearch,
494
506
  _onActiveChange = _ref.onActiveChange,
495
507
  props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
496
508
 
497
509
  return /*#__PURE__*/React__default["default"].createElement(SearchButton, {
498
510
  defaultActive: defaultActive,
511
+ onBlur: onBlur,
499
512
  template: template,
500
513
  name: name,
501
514
  onSearch: onSearch,
@@ -584,10 +597,8 @@ var withMoreExtraButton = function withMoreExtraButton(WrappedComponent) {
584
597
  defaultActive: true
585
598
  }, props, {
586
599
  name: name,
587
- onActiveChange: function onActiveChange(active) {
588
- if (active === false) {
589
- setIsEdit(false);
590
- }
600
+ onBlur: function onBlur() {
601
+ setIsEdit(false);
591
602
  }
592
603
  })) : /*#__PURE__*/React__default["default"].createElement(List.Item, {
593
604
  onClick: function onClick(e) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/context.js","../src/FilterItem/index.js","../src/List/index.js","../src/City/index.js","../src/SearchButton/index.js","../src/Range/index.js","../src/Text/index.js","../src/Selector/index.js","../src/Check/index.js","../src/MoreExtraButton/index.js","../src/index.js"],"sourcesContent":["import { createContext, useContext } from \"react\";\r\n\r\nconst context = createContext({});\r\n\r\nexport const { Consumer, Provider } = context;\r\n\r\nexport const useConsumer = () => useContext(context);\r\n\r\nexport default context;","import React from \"react\";\r\nimport { Space } from \"antd\";\r\n\r\nconst FilterItem = ({ label, children }) => {\r\n return <Space>\r\n <div className=\"react-filter-item-label\">{label}:</div>\r\n <div className=\"react-filter-item-children\">{children}</div>\r\n </Space>;\r\n};\r\n\r\nexport const withFilterItem = (WrappedComponent) => ({ label, ...props }) => <FilterItem\r\n label={label}><WrappedComponent {...props} /></FilterItem>;\r\n\r\nexport default FilterItem;","import React, { createContext, useContext } from \"react\";\r\nimport { Button, message, Tag } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport FilterItem from \"../FilterItem\";\r\nimport get from \"lodash/get\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport isEqual from \"lodash/isEqual\";\r\n\r\nconst { CheckableTag } = Tag;\r\n\r\nconst context = createContext({});\r\n\r\nconst { Provider } = context;\r\n\r\nconst List = ({ label, name, size, children, options, more }) => {\r\n const { value, onChange } = useConsumer();\r\n const currentValue = (() => {\r\n const originValue = get(value, name);\r\n if (size === 1) {\r\n return originValue !== void (0) ? [originValue] : [];\r\n } else {\r\n return originValue || [];\r\n }\r\n })();\r\n\r\n const changeHandler = (value) => {\r\n if (size === 1) {\r\n return onChange(name, value[0]);\r\n } else {\r\n return onChange(name, value);\r\n }\r\n };\r\n const createCheckedChangeHandler = (value) => (checked) => {\r\n if (checked) {\r\n let newList = currentValue.slice(0);\r\n if (currentValue.length < size) {\r\n newList.push(value);\r\n }\r\n if (currentValue.length === size && size === 1) {\r\n newList = [value];\r\n }\r\n if (currentValue.length >= size && size > 1) {\r\n message.error(`最多选择${size}个`);\r\n return;\r\n }\r\n changeHandler(newList);\r\n } else {\r\n const newList = currentValue.slice(0);\r\n newList.splice(currentValue.indexOf(value), 1);\r\n changeHandler(newList);\r\n }\r\n };\r\n const computedChildren = (() => {\r\n if (Array.isArray(options)) {\r\n return options.map(({ label, value }) => <List.Item key={value} value={value} label={label} />);\r\n }\r\n if (isFunction(children)) {\r\n return children({ value: currentValue, onChange: changeHandler });\r\n }\r\n return children;\r\n })();\r\n return <FilterItem label={label}>\r\n <Provider value={{\r\n currentValue, createCheckedChangeHandler\r\n }}>\r\n {computedChildren}\r\n {more ? (() => {\r\n if (isFunction(more)) {\r\n return more({ name, size, label, value: currentValue, onChange: changeHandler });\r\n }\r\n const { children, onClick } = more;\r\n return <List.Item {...more} onClick={(e) => {\r\n onClick({ name, label, value: currentValue, onChange: changeHandler }, e);\r\n }} label={children || \"其他\"} />;\r\n })() : null}\r\n </Provider>\r\n </FilterItem>;\r\n};\r\n\r\nList.Item = ({ value, label, ...props }) => {\r\n const { currentValue, createCheckedChangeHandler } = useContext(context);\r\n const itemProps = {};\r\n if (value !== void (0)) {\r\n itemProps.checked = currentValue.findIndex((item) => isEqual(item.value, value)) > -1;\r\n itemProps.onChange = createCheckedChangeHandler({ label, value });\r\n }\r\n\r\n return <CheckableTag {...props} {...itemProps}>{label}</CheckableTag>;\r\n};\r\n\r\nList.defaultProps = {\r\n size: 2\r\n};\r\n\r\nexport default List;","import React from \"react\";\r\nimport { createCitySelect, apis, RemoteData, DisplayCity } from \"@kne/react-city-select\";\r\nimport List from \"../List\";\r\n\r\nconst { Item } = List;\r\n\r\nconst City = ({ label, name, size }) => {\r\n return <List label={label} name={name} size={size} more={{\r\n children: \"其他\", onClick: ({ value, onChange }) => {\r\n createCitySelect({\r\n size, defaultValue: value.map(({ value }) => value), onChange: (value) => {\r\n Promise.all(value.map((id) => apis.getCity(id).then(({ city }) => ({\r\n label: city.name, value: city.code\r\n })))).then((value) => onChange(value));\r\n }\r\n });\r\n }\r\n }}>\r\n {({ value: currentValue }) => <>\r\n <RemoteData loader={apis.getChinaHotCities}>{(data) => {\r\n const otherList = currentValue.filter(({ value: code }) => !data.find((item) => item.code === code));\r\n let extraLength = 0;\r\n data.forEach((item, index) => {\r\n if (currentValue.findIndex(({ value }) => value === item.code) > -1 && index >= data.length - otherList.length) {\r\n extraLength += 1;\r\n }\r\n });\r\n return <>\r\n {otherList.map(({ value: code }) => {\r\n return <DisplayCity id={code} key={code}>{({ city: item }) => {\r\n return <Item value={code} label={item.name} />;\r\n }}</DisplayCity>;\r\n })}\r\n {data.filter((item, index) => currentValue.findIndex(({ value }) => value === item.code) > -1 || index < data.length - otherList.length - extraLength).map((item) =>\r\n <Item key={item.code} value={item.code} label={item.name} />)}\r\n </>;\r\n }}</RemoteData>\r\n </>}\r\n </List>;\r\n};\r\n\r\nexport default City;","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { Button, Space } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport useClickOutSide from \"@kne/use-click-outside\";\r\nimport classnames from \"classnames\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport get from \"lodash/get\";\r\n\r\nconst SearchButton = ({\r\n name,\r\n size,\r\n template,\r\n children,\r\n defaultValue,\r\n defaultActive,\r\n onSearch,\r\n onBeforeSearch,\r\n onActiveChange,\r\n buttonText\r\n }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n const [value, setValue] = useState(defaultValue || get(currentValue, \"value\"));\r\n const [active, setActive] = useState(defaultActive);\r\n const withTemplate = (value) => ({\r\n value, label: isFunction(template) ? template(value) : value.toString()\r\n });\r\n const ref = useClickOutSide(() => {\r\n if (!active) {\r\n return;\r\n }\r\n setValue(get(currentValue, \"value\"));\r\n setActive(false);\r\n });\r\n\r\n const activeChangeRef = useRef(onActiveChange);\r\n activeChangeRef.current = onActiveChange;\r\n\r\n useEffect(() => {\r\n activeChangeRef.current && activeChangeRef.current(active);\r\n }, [active]);\r\n return <div className={classnames(\"react-filter-search-button\", {\r\n \"is-active\": active\r\n })} ref={ref}>\r\n <div className=\"inner\">\r\n <div>{children({ value, setValue, setActive })}</div>\r\n {active ? <Button className=\"react-filter-search-confirm\" size=\"small\" type=\"primary\" onClick={(e) => {\r\n e.stopPropagation();\r\n if (onBeforeSearch && onBeforeSearch(value) === false) {\r\n return;\r\n }\r\n onChange(name, Number.isInteger(size) && size > 1 ? [withTemplate(value)] : withTemplate(value));\r\n setActive(false);\r\n onSearch && onSearch({ value });\r\n }}>{buttonText}</Button> : null}</div>\r\n </div>;\r\n};\r\n\r\nSearchButton.defaultProps = {\r\n defaultActive: false, buttonText: \"确定\"\r\n};\r\n\r\nexport default SearchButton;","import React, { useState } from \"react\";\r\nimport { InputNumber, Space, Tooltip } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\nimport get from \"lodash/get\";\r\nimport isNumber from \"lodash/isNumber\";\r\n\r\nexport const RangeInner = ({ name, size, defaultActive, template, onSearch, onActiveChange, startProps, endProps }) => {\r\n const [error, setError] = useState(null);\r\n const check = (value) => {\r\n setError(null);\r\n if (!Array.isArray(value)) {\r\n return false;\r\n }\r\n if (value[0] === null && value[1] === null) {\r\n setError(\"最大值和最小值不能同时为空\");\r\n return false;\r\n }\r\n if (isNumber(value[1]) && value[0] > value[1]) {\r\n setError(\"最大值不能小于最小值\");\r\n return false;\r\n }\r\n return true;\r\n };\r\n return <SearchButton size={size} template={template} defaultActive={defaultActive} name={name} onSearch={onSearch}\r\n onBeforeSearch={(value) => {\r\n return check(value);\r\n }} onActiveChange={(active) => {\r\n if (!active) {\r\n setError(null);\r\n }\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <Tooltip visible={!!error} title={error} placement=\"bottomRight\"><Space\r\n size=\"small\">\r\n <InputNumber size=\"small\" {...startProps} value={get(value, 0)} onChange={(inputValue) => {\r\n const target = [inputValue, get(value, 1)];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n ~\r\n <InputNumber size=\"small\" {...endProps} value={get(value, 1)} onChange={(inputValue) => {\r\n const target = [get(value, 0), inputValue];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </Space></Tooltip>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Range = withFilterItem(RangeInner);\r\n\r\nexport default Range;\r\n\r\n","import React from \"react\";\r\nimport { Input } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\n\r\nexport const TextInner = ({ name, label, template, defaultActive, onSearch, onActiveChange, ...props }) => {\r\n return <SearchButton defaultActive={defaultActive} template={template} name={name} onSearch={onSearch}\r\n onActiveChange={(active) => {\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <>\r\n <Input size=\"small\" {...props} value={value} onChange={(e) => {\r\n setValue(e.target.value);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Text = withFilterItem(TextInner);\r\n\r\nexport default Text;\r\n\r\n","import React from \"react\";\r\nimport { Select } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nexport const SelectorInner = ({ name, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Select {...props} style={{ minWidth: \"150px\" }} size=\"small\" value={currentValue} onChange={(value, item) => {\r\n onChange(name, item);\r\n }} />;\r\n};\r\n\r\nconst Selector = withFilterItem(SelectorInner);\r\n\r\nexport default Selector;","import React from \"react\";\r\nimport { Checkbox } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nconst Check = ({ name, label, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Checkbox {...props} size=\"small\" checked={currentValue} onChange={(e) => {\r\n onChange(name, e.target.checked ? { value: true, label } : null);\r\n }}>{label}</Checkbox>;\r\n};\r\n\r\nexport default Check;","import React, { useState } from \"react\";\r\nimport List from \"../List\";\r\nimport { RangeInner } from \"../Range\";\r\nimport { TextInner } from \"../Text\";\r\nimport { SelectorInner } from \"../Selector\";\r\n\r\nexport const withMoreExtraButton = (WrappedComponent) => ({ name, value, children, ...props }) => {\r\n const [isEdit, setIsEdit] = useState(false);\r\n return isEdit ? <WrappedComponent defaultActive={true} {...props} name={name} onActiveChange={(active) => {\r\n if (active === false) {\r\n setIsEdit(false);\r\n }\r\n }} /> : <List.Item onClick={(e) => {\r\n e.stopPropagation();\r\n setIsEdit(true);\r\n }} label={children || \"其他\"} />;\r\n};\r\n\r\nconst RangeButton = withMoreExtraButton(RangeInner);\r\nconst TextButton = withMoreExtraButton(TextInner);\r\nconst SelectorButton = withMoreExtraButton(SelectorInner);\r\n\r\nexport const createExtraButton = ({ type, ...props }) => (innerProps) => {\r\n const mapping = {\r\n range: RangeButton, text: TextButton, selector: SelectorButton\r\n };\r\n\r\n const ExtraButtonComponent = mapping[type];\r\n if (!ExtraButtonComponent) {\r\n return null;\r\n }\r\n return <ExtraButtonComponent {...props} {...innerProps} />;\r\n};\r\n\r\n","import React, { cloneElement, useState } from \"react\";\r\nimport { Space, Button, Divider, Tag, Row, Col } from \"antd\";\r\nimport City from \"./City\";\r\nimport List from \"./List\";\r\nimport Range from \"./Range\";\r\nimport Text from \"./Text\";\r\nimport Selector from \"./Selector\";\r\nimport Check from \"./Check\";\r\nimport { Provider } from \"./context\";\r\nimport FilterItem from \"./FilterItem\";\r\nimport \"./index.scss\";\r\n\r\nconst Filter = ({ displayLine, list, value, onChange }) => {\r\n const [display, setDisplay] = useState(false);\r\n const basicList = list.slice(0, displayLine), moreList = list.slice(displayLine);\r\n const renderList = (list) => list.map((item, index) => {\r\n return <Space key={index}>{item.map((item, index) => cloneElement(item, { key: index }))}</Space>;\r\n });\r\n const changeHandler = (name, item) => {\r\n const target = Object.assign({}, value, { [name]: item });\r\n Object.keys(target).forEach((key) => {\r\n const item = target[key];\r\n if (item === void (0) || item === null) {\r\n delete target[key];\r\n }\r\n if (Array.isArray(item) && item.length === 0) {\r\n delete target[key];\r\n }\r\n });\r\n onChange(target);\r\n };\r\n return <Provider value={{\r\n value, onChange: changeHandler\r\n }}>\r\n <Space className=\"space-full\" direction=\"vertical\">\r\n <FilterItem label=\"筛选项\">{Object.keys(value).map((key) => {\r\n const item = value[key];\r\n if (!item) return null;\r\n if (Array.isArray(item) && item.length === 0) return null;\r\n return <Tag key={key} closable onClose={() => {\r\n changeHandler(key, null);\r\n }}>{Array.isArray(item) ? item.map(({ label }) => label).join(\",\") : item.label}</Tag>;\r\n })}</FilterItem>\r\n {renderList(basicList)}\r\n {display ? <><Divider className=\"react-filter-divider\" />{renderList(moreList)}</> : null}\r\n <Row justify=\"end\">\r\n <Col><Button type=\"link\" onClick={() => {\r\n setDisplay((display) => !display);\r\n }}>{display ? \"收起更多条件\" : \"展开更多\"}</Button></Col>\r\n </Row>\r\n </Space>\r\n </Provider>;\r\n};\r\n\r\nFilter.type = {\r\n City, List, Range, Text, Selector, Check\r\n};\r\n\r\nFilter.defaultProps = {\r\n displayLine: 2, list: [[]], value: {}, onChange: () => {\r\n }\r\n};\r\n\r\nexport { createExtraButton, withMoreExtraButton } from \"./MoreExtraButton\";\r\n\r\nexport { default as SearchButton } from \"./SearchButton\";\r\n\r\nexport { default as FilterItem, withFilterItem } from \"./FilterItem\";\r\n\r\nexport default Filter;"],"names":["context","createContext","Provider","useConsumer","useContext","FilterItem","label","children","React","Space","withFilterItem","WrappedComponent","props","CheckableTag","Tag","List","name","size","options","more","value","onChange","currentValue","originValue","get","changeHandler","createCheckedChangeHandler","checked","newList","slice","length","push","message","error","splice","indexOf","computedChildren","Array","isArray","map","isFunction","onClick","e","Item","itemProps","findIndex","item","isEqual","defaultProps","City","createCitySelect","defaultValue","Promise","all","id","apis","getCity","then","city","code","RemoteData","getChinaHotCities","data","otherList","filter","find","extraLength","forEach","index","DisplayCity","SearchButton","template","defaultActive","onSearch","onBeforeSearch","onActiveChange","buttonText","aValue","useState","setValue","active","setActive","withTemplate","toString","ref","useClickOutSide","activeChangeRef","useRef","current","useEffect","classnames","Button","stopPropagation","Number","isInteger","RangeInner","startProps","endProps","setError","check","isNumber","Tooltip","InputNumber","inputValue","target","Range","TextInner","Input","Text","SelectorInner","Select","minWidth","Selector","Check","Checkbox","withMoreExtraButton","isEdit","setIsEdit","RangeButton","TextButton","SelectorButton","createExtraButton","type","innerProps","mapping","range","text","selector","ExtraButtonComponent","Filter","displayLine","list","display","setDisplay","basicList","moreList","renderList","cloneElement","key","Object","assign","keys","join","Divider","Row","Col"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/context.js","../src/FilterItem/index.js","../src/List/index.js","../src/City/index.js","../src/SearchButton/index.js","../src/Range/index.js","../src/Text/index.js","../src/Selector/index.js","../src/Check/index.js","../src/MoreExtraButton/index.js","../src/index.js"],"sourcesContent":["import { createContext, useContext } from \"react\";\r\n\r\nconst context = createContext({});\r\n\r\nexport const { Consumer, Provider } = context;\r\n\r\nexport const useConsumer = () => useContext(context);\r\n\r\nexport default context;","import React from \"react\";\r\nimport { Space } from \"antd\";\r\n\r\nconst FilterItem = ({ label, children }) => {\r\n return <Space>\r\n <div className=\"react-filter-item-label\">{label}:</div>\r\n <div className=\"react-filter-item-children\">{children}</div>\r\n </Space>;\r\n};\r\n\r\nexport const withFilterItem = (WrappedComponent) => ({ label, ...props }) => <FilterItem\r\n label={label}><WrappedComponent {...props} /></FilterItem>;\r\n\r\nexport default FilterItem;","import React, { createContext, useContext } from \"react\";\r\nimport { Button, message, Tag } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport FilterItem from \"../FilterItem\";\r\nimport get from \"lodash/get\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport isEqual from \"lodash/isEqual\";\r\n\r\nconst { CheckableTag } = Tag;\r\n\r\nconst context = createContext({});\r\n\r\nconst { Provider } = context;\r\n\r\nconst List = ({ label, name, size, children, options, more }) => {\r\n const { value, onChange } = useConsumer();\r\n const currentValue = (() => {\r\n const originValue = get(value, name);\r\n if (size === 1) {\r\n return originValue !== void (0) ? [originValue] : [];\r\n } else {\r\n return originValue || [];\r\n }\r\n })();\r\n\r\n const changeHandler = (value) => {\r\n if (size === 1) {\r\n return onChange(name, value[0]);\r\n } else {\r\n return onChange(name, value);\r\n }\r\n };\r\n const createCheckedChangeHandler = (value) => (checked) => {\r\n if (checked) {\r\n let newList = currentValue.slice(0);\r\n if (currentValue.length < size) {\r\n newList.push(value);\r\n }\r\n if (currentValue.length === size && size === 1) {\r\n newList = [value];\r\n }\r\n if (currentValue.length >= size && size > 1) {\r\n message.error(`最多选择${size}个`);\r\n return;\r\n }\r\n changeHandler(newList);\r\n } else {\r\n const newList = currentValue.slice(0);\r\n newList.splice(currentValue.indexOf(value), 1);\r\n changeHandler(newList);\r\n }\r\n };\r\n const computedChildren = (() => {\r\n if (Array.isArray(options)) {\r\n return options.map(({ label, value }) => <List.Item key={value} value={value} label={label} />);\r\n }\r\n if (isFunction(children)) {\r\n return children({ value: currentValue, onChange: changeHandler });\r\n }\r\n return children;\r\n })();\r\n return <FilterItem label={label}>\r\n <Provider value={{\r\n currentValue, createCheckedChangeHandler\r\n }}>\r\n {computedChildren}\r\n {more ? (() => {\r\n if (isFunction(more)) {\r\n return more({ name, size, label, value: currentValue, onChange: changeHandler });\r\n }\r\n const { children, onClick } = more;\r\n return <List.Item {...more} onClick={(e) => {\r\n onClick({ name, label, value: currentValue, onChange: changeHandler }, e);\r\n }} label={children || \"其他\"} />;\r\n })() : null}\r\n </Provider>\r\n </FilterItem>;\r\n};\r\n\r\nList.Item = ({ value, label, ...props }) => {\r\n const { currentValue, createCheckedChangeHandler } = useContext(context);\r\n const itemProps = {};\r\n if (value !== void (0)) {\r\n itemProps.checked = currentValue.findIndex((item) => isEqual(item.value, value)) > -1;\r\n itemProps.onChange = createCheckedChangeHandler({ label, value });\r\n }\r\n\r\n return <CheckableTag {...props} {...itemProps}>{label}</CheckableTag>;\r\n};\r\n\r\nList.defaultProps = {\r\n size: 2\r\n};\r\n\r\nexport default List;","import React from \"react\";\r\nimport { createCitySelect, apis, RemoteData, DisplayCity } from \"@kne/react-city-select\";\r\nimport List from \"../List\";\r\n\r\nconst { Item } = List;\r\n\r\nconst City = ({ label, name, size }) => {\r\n return <List label={label} name={name} size={size} more={{\r\n children: \"其他\", onClick: ({ value, onChange }) => {\r\n createCitySelect({\r\n size, defaultValue: value.map(({ value }) => value), onChange: (value) => {\r\n Promise.all(value.map((id) => apis.getCity(id).then(({ city }) => ({\r\n label: city.name, value: city.code\r\n })))).then((value) => onChange(value));\r\n }\r\n });\r\n }\r\n }}>\r\n {({ value: currentValue }) => <>\r\n <RemoteData loader={apis.getChinaHotCities}>{(data) => {\r\n const otherList = currentValue.filter(({ value: code }) => !data.find((item) => item.code === code));\r\n let extraLength = 0;\r\n data.forEach((item, index) => {\r\n if (currentValue.findIndex(({ value }) => value === item.code) > -1 && index >= data.length - otherList.length) {\r\n extraLength += 1;\r\n }\r\n });\r\n return <>\r\n {otherList.map(({ value: code }) => {\r\n return <DisplayCity id={code} key={code}>{({ city: item }) => {\r\n return <Item value={code} label={item.name} />;\r\n }}</DisplayCity>;\r\n })}\r\n {data.filter((item, index) => currentValue.findIndex(({ value }) => value === item.code) > -1 || index < data.length - otherList.length - extraLength).map((item) =>\r\n <Item key={item.code} value={item.code} label={item.name} />)}\r\n </>;\r\n }}</RemoteData>\r\n </>}\r\n </List>;\r\n};\r\n\r\nexport default City;","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { Button, Space } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport useClickOutSide from \"@kne/use-click-outside\";\r\nimport classnames from \"classnames\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport get from \"lodash/get\";\r\n\r\nconst SearchButton = ({\r\n name,\r\n size,\r\n template,\r\n children,\r\n defaultValue,\r\n defaultActive,\r\n onBlur,\r\n onSearch,\r\n onBeforeSearch,\r\n onActiveChange,\r\n buttonText\r\n }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n const [value, setValue] = useState(defaultValue || get(currentValue, \"value\"));\r\n const [active, setActive] = useState(defaultActive);\r\n const withTemplate = (value) => ({\r\n value, label: isFunction(template) ? template(value) : value.toString()\r\n });\r\n const ref = useClickOutSide(() => {\r\n setValue(get(currentValue, \"value\"));\r\n setActive(false);\r\n onBlur && onBlur();\r\n });\r\n\r\n const activeChangeRef = useRef(onActiveChange);\r\n activeChangeRef.current = onActiveChange;\r\n\r\n useEffect(() => {\r\n activeChangeRef.current && activeChangeRef.current(active);\r\n }, [active]);\r\n let timer;\r\n return <div className={classnames(\"react-filter-search-button\", {\r\n \"is-active\": active\r\n })} ref={ref} onMouseEnter={() => {\r\n clearTimeout(timer);\r\n !active && setActive(true);\r\n }} onMouseLeave={() => {\r\n clearTimeout(timer);\r\n timer = setTimeout(() => {\r\n active && setActive(false);\r\n }, 200);\r\n }}>\r\n <div className=\"inner\">\r\n <div>{children({ value, setValue, setActive })}</div>\r\n {active ? <Button className=\"react-filter-search-confirm\" size=\"small\" type=\"primary\" onClick={(e) => {\r\n e.stopPropagation();\r\n if (onBeforeSearch && onBeforeSearch(value) === false) {\r\n return;\r\n }\r\n onChange(name, Number.isInteger(size) && size > 1 ? [withTemplate(value)] : withTemplate(value));\r\n setActive(false);\r\n onSearch && onSearch({ value });\r\n }}>{buttonText}</Button> : null}</div>\r\n </div>;\r\n};\r\n\r\nSearchButton.defaultProps = {\r\n defaultActive: false, buttonText: \"确定\"\r\n};\r\n\r\nexport default SearchButton;","import React, { useState } from \"react\";\r\nimport { InputNumber, Space, Tooltip } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\nimport get from \"lodash/get\";\r\nimport isNumber from \"lodash/isNumber\";\r\n\r\nexport const RangeInner = ({\r\n name, size, defaultActive, template, onBlur, onSearch, onActiveChange, startProps, endProps\r\n }) => {\r\n const [error, setError] = useState(null);\r\n const check = (value) => {\r\n setError(null);\r\n if (!Array.isArray(value)) {\r\n return false;\r\n }\r\n if (value[0] === null && value[1] === null) {\r\n setError(\"最大值和最小值不能同时为空\");\r\n return false;\r\n }\r\n if (isNumber(value[1]) && value[0] > value[1]) {\r\n setError(\"最大值不能小于最小值\");\r\n return false;\r\n }\r\n return true;\r\n };\r\n return <SearchButton size={size} template={template} onBlur={onBlur} defaultActive={defaultActive} name={name} onSearch={onSearch}\r\n onBeforeSearch={(value) => {\r\n return check(value);\r\n }} onActiveChange={(active) => {\r\n if (!active) {\r\n setError(null);\r\n }\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <Tooltip visible={!!error} title={error} placement=\"bottomRight\"><Space\r\n size=\"small\">\r\n <InputNumber size=\"small\" {...startProps} value={get(value, 0)} onChange={(inputValue) => {\r\n const target = [inputValue, get(value, 1)];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n ~\r\n <InputNumber size=\"small\" {...endProps} value={get(value, 1)} onChange={(inputValue) => {\r\n const target = [get(value, 0), inputValue];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </Space></Tooltip>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Range = withFilterItem(RangeInner);\r\n\r\nexport default Range;\r\n\r\n","import React from \"react\";\r\nimport { Input } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\n\r\nexport const TextInner = ({ name, label, template, defaultActive, onBlur, onSearch, onActiveChange, ...props }) => {\r\n return <SearchButton defaultActive={defaultActive} onBlur={onBlur} template={template} name={name} onSearch={onSearch}\r\n onActiveChange={(active) => {\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <>\r\n <Input size=\"small\" {...props} value={value} onChange={(e) => {\r\n setValue(e.target.value);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Text = withFilterItem(TextInner);\r\n\r\nexport default Text;\r\n\r\n","import React from \"react\";\r\nimport { Select } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nexport const SelectorInner = ({ name, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Select {...props} style={{ minWidth: \"150px\" }} size=\"small\" value={currentValue} onChange={(value, item) => {\r\n onChange(name, item);\r\n }} />;\r\n};\r\n\r\nconst Selector = withFilterItem(SelectorInner);\r\n\r\nexport default Selector;","import React from \"react\";\r\nimport { Checkbox } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nconst Check = ({ name, label, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Checkbox {...props} size=\"small\" checked={currentValue} onChange={(e) => {\r\n onChange(name, e.target.checked ? { value: true, label } : null);\r\n }}>{label}</Checkbox>;\r\n};\r\n\r\nexport default Check;","import React, { useState } from \"react\";\r\nimport List from \"../List\";\r\nimport { RangeInner } from \"../Range\";\r\nimport { TextInner } from \"../Text\";\r\nimport { SelectorInner } from \"../Selector\";\r\n\r\nexport const withMoreExtraButton = (WrappedComponent) => ({ name, value, children, ...props }) => {\r\n const [isEdit, setIsEdit] = useState(false);\r\n return isEdit ? <WrappedComponent defaultActive={true} {...props} name={name} onBlur={() => {\r\n setIsEdit(false);\r\n }} /> : <List.Item onClick={(e) => {\r\n e.stopPropagation();\r\n setIsEdit(true);\r\n }} label={children || \"其他\"} />;\r\n};\r\n\r\nconst RangeButton = withMoreExtraButton(RangeInner);\r\nconst TextButton = withMoreExtraButton(TextInner);\r\nconst SelectorButton = withMoreExtraButton(SelectorInner);\r\n\r\nexport const createExtraButton = ({ type, ...props }) => (innerProps) => {\r\n const mapping = {\r\n range: RangeButton, text: TextButton, selector: SelectorButton\r\n };\r\n\r\n const ExtraButtonComponent = mapping[type];\r\n if (!ExtraButtonComponent) {\r\n return null;\r\n }\r\n return <ExtraButtonComponent {...props} {...innerProps} />;\r\n};\r\n\r\n","import React, { cloneElement, useState } from \"react\";\r\nimport { Space, Button, Divider, Tag, Row, Col } from \"antd\";\r\nimport City from \"./City\";\r\nimport List from \"./List\";\r\nimport Range from \"./Range\";\r\nimport Text from \"./Text\";\r\nimport Selector from \"./Selector\";\r\nimport Check from \"./Check\";\r\nimport { Provider } from \"./context\";\r\nimport FilterItem from \"./FilterItem\";\r\nimport \"./index.scss\";\r\n\r\nconst Filter = ({ displayLine, list, value, onChange }) => {\r\n const [display, setDisplay] = useState(false);\r\n const basicList = list.slice(0, displayLine), moreList = list.slice(displayLine);\r\n const renderList = (list) => list.map((item, index) => {\r\n return <Space key={index}>{item.map((item, index) => cloneElement(item, { key: index }))}</Space>;\r\n });\r\n const changeHandler = (name, item) => {\r\n const target = Object.assign({}, value, { [name]: item });\r\n Object.keys(target).forEach((key) => {\r\n const item = target[key];\r\n if (item === void (0) || item === null) {\r\n delete target[key];\r\n }\r\n if (Array.isArray(item) && item.length === 0) {\r\n delete target[key];\r\n }\r\n });\r\n onChange(target);\r\n };\r\n return <Provider value={{\r\n value, onChange: changeHandler\r\n }}>\r\n <Space className=\"space-full\" direction=\"vertical\">\r\n <FilterItem label=\"筛选项\">{Object.keys(value).map((key) => {\r\n const item = value[key];\r\n if (!item) return null;\r\n if (Array.isArray(item) && item.length === 0) return null;\r\n return <Tag key={key} closable onClose={() => {\r\n changeHandler(key, null);\r\n }}>{Array.isArray(item) ? item.map(({ label }) => label).join(\",\") : item.label}</Tag>;\r\n })}</FilterItem>\r\n {renderList(basicList)}\r\n {display ? <><Divider className=\"react-filter-divider\" />{renderList(moreList)}</> : null}\r\n <Row justify=\"end\">\r\n <Col><Button type=\"link\" onClick={() => {\r\n setDisplay((display) => !display);\r\n }}>{display ? \"收起更多条件\" : \"展开更多\"}</Button></Col>\r\n </Row>\r\n </Space>\r\n </Provider>;\r\n};\r\n\r\nFilter.type = {\r\n City, List, Range, Text, Selector, Check\r\n};\r\n\r\nFilter.defaultProps = {\r\n displayLine: 2, list: [[]], value: {}, onChange: () => {\r\n }\r\n};\r\n\r\nexport { createExtraButton, withMoreExtraButton } from \"./MoreExtraButton\";\r\n\r\nexport { default as SearchButton } from \"./SearchButton\";\r\n\r\nexport { default as FilterItem, withFilterItem } from \"./FilterItem\";\r\n\r\nexport default Filter;"],"names":["context","createContext","Provider","useConsumer","useContext","FilterItem","label","children","React","Space","withFilterItem","WrappedComponent","props","CheckableTag","Tag","List","name","size","options","more","value","onChange","currentValue","originValue","get","changeHandler","createCheckedChangeHandler","checked","newList","slice","length","push","message","error","splice","indexOf","computedChildren","Array","isArray","map","isFunction","onClick","e","Item","itemProps","findIndex","item","isEqual","defaultProps","City","createCitySelect","defaultValue","Promise","all","id","apis","getCity","then","city","code","RemoteData","getChinaHotCities","data","otherList","filter","find","extraLength","forEach","index","DisplayCity","SearchButton","template","defaultActive","onBlur","onSearch","onBeforeSearch","onActiveChange","buttonText","aValue","useState","setValue","active","setActive","withTemplate","toString","ref","useClickOutSide","activeChangeRef","useRef","current","useEffect","timer","classnames","clearTimeout","setTimeout","Button","stopPropagation","Number","isInteger","RangeInner","startProps","endProps","setError","check","isNumber","Tooltip","InputNumber","inputValue","target","Range","TextInner","Input","Text","SelectorInner","Select","minWidth","Selector","Check","Checkbox","withMoreExtraButton","isEdit","setIsEdit","RangeButton","TextButton","SelectorButton","createExtraButton","type","innerProps","mapping","range","text","selector","ExtraButtonComponent","Filter","displayLine","list","display","setDisplay","basicList","moreList","renderList","cloneElement","key","Object","assign","keys","join","Divider","Row","Col"],"mappings":"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"}
@@ -305,6 +305,7 @@ const SearchButton = ({
305
305
  children,
306
306
  defaultValue,
307
307
  defaultActive,
308
+ onBlur,
308
309
  onSearch,
309
310
  onBeforeSearch,
310
311
  onActiveChange,
@@ -324,23 +325,31 @@ const SearchButton = ({
324
325
  });
325
326
 
326
327
  const ref = useClickOutSide(() => {
327
- if (!active) {
328
- return;
329
- }
330
-
331
328
  setValue(get(currentValue, "value"));
332
329
  setActive(false);
330
+ onBlur && onBlur();
333
331
  });
334
332
  const activeChangeRef = useRef(onActiveChange);
335
333
  activeChangeRef.current = onActiveChange;
336
334
  useEffect(() => {
337
335
  activeChangeRef.current && activeChangeRef.current(active);
338
336
  }, [active]);
337
+ let timer;
339
338
  return /*#__PURE__*/React.createElement("div", {
340
339
  className: classnames("react-filter-search-button", {
341
340
  "is-active": active
342
341
  }),
343
- ref: ref
342
+ ref: ref,
343
+ onMouseEnter: () => {
344
+ clearTimeout(timer);
345
+ !active && setActive(true);
346
+ },
347
+ onMouseLeave: () => {
348
+ clearTimeout(timer);
349
+ timer = setTimeout(() => {
350
+ active && setActive(false);
351
+ }, 200);
352
+ }
344
353
  }, /*#__PURE__*/React.createElement("div", {
345
354
  className: "inner"
346
355
  }, /*#__PURE__*/React.createElement("div", null, children({
@@ -377,6 +386,7 @@ const RangeInner = ({
377
386
  size,
378
387
  defaultActive,
379
388
  template,
389
+ onBlur,
380
390
  onSearch,
381
391
  onActiveChange,
382
392
  startProps,
@@ -407,6 +417,7 @@ const RangeInner = ({
407
417
  return /*#__PURE__*/React.createElement(SearchButton, {
408
418
  size: size,
409
419
  template: template,
420
+ onBlur: onBlur,
410
421
  defaultActive: defaultActive,
411
422
  name: name,
412
423
  onSearch: onSearch,
@@ -458,12 +469,13 @@ const RangeInner = ({
458
469
  };
459
470
  const Range = withFilterItem(RangeInner);
460
471
 
461
- const _excluded$3 = ["name", "label", "template", "defaultActive", "onSearch", "onActiveChange"];
472
+ const _excluded$3 = ["name", "label", "template", "defaultActive", "onBlur", "onSearch", "onActiveChange"];
462
473
  const TextInner = _ref => {
463
474
  let {
464
475
  name,
465
476
  template,
466
477
  defaultActive,
478
+ onBlur,
467
479
  onSearch,
468
480
  onActiveChange
469
481
  } = _ref,
@@ -471,6 +483,7 @@ const TextInner = _ref => {
471
483
 
472
484
  return /*#__PURE__*/React.createElement(SearchButton, {
473
485
  defaultActive: defaultActive,
486
+ onBlur: onBlur,
474
487
  template: template,
475
488
  name: name,
476
489
  onSearch: onSearch,
@@ -560,10 +573,8 @@ const withMoreExtraButton = WrappedComponent => _ref => {
560
573
  defaultActive: true
561
574
  }, props, {
562
575
  name: name,
563
- onActiveChange: active => {
564
- if (active === false) {
565
- setIsEdit(false);
566
- }
576
+ onBlur: () => {
577
+ setIsEdit(false);
567
578
  }
568
579
  })) : /*#__PURE__*/React.createElement(List.Item, {
569
580
  onClick: e => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.modern.js","sources":["../src/context.js","../src/FilterItem/index.js","../src/List/index.js","../src/City/index.js","../src/SearchButton/index.js","../src/Range/index.js","../src/Text/index.js","../src/Selector/index.js","../src/Check/index.js","../src/MoreExtraButton/index.js","../src/index.js"],"sourcesContent":["import { createContext, useContext } from \"react\";\r\n\r\nconst context = createContext({});\r\n\r\nexport const { Consumer, Provider } = context;\r\n\r\nexport const useConsumer = () => useContext(context);\r\n\r\nexport default context;","import React from \"react\";\r\nimport { Space } from \"antd\";\r\n\r\nconst FilterItem = ({ label, children }) => {\r\n return <Space>\r\n <div className=\"react-filter-item-label\">{label}:</div>\r\n <div className=\"react-filter-item-children\">{children}</div>\r\n </Space>;\r\n};\r\n\r\nexport const withFilterItem = (WrappedComponent) => ({ label, ...props }) => <FilterItem\r\n label={label}><WrappedComponent {...props} /></FilterItem>;\r\n\r\nexport default FilterItem;","import React, { createContext, useContext } from \"react\";\r\nimport { Button, message, Tag } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport FilterItem from \"../FilterItem\";\r\nimport get from \"lodash/get\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport isEqual from \"lodash/isEqual\";\r\n\r\nconst { CheckableTag } = Tag;\r\n\r\nconst context = createContext({});\r\n\r\nconst { Provider } = context;\r\n\r\nconst List = ({ label, name, size, children, options, more }) => {\r\n const { value, onChange } = useConsumer();\r\n const currentValue = (() => {\r\n const originValue = get(value, name);\r\n if (size === 1) {\r\n return originValue !== void (0) ? [originValue] : [];\r\n } else {\r\n return originValue || [];\r\n }\r\n })();\r\n\r\n const changeHandler = (value) => {\r\n if (size === 1) {\r\n return onChange(name, value[0]);\r\n } else {\r\n return onChange(name, value);\r\n }\r\n };\r\n const createCheckedChangeHandler = (value) => (checked) => {\r\n if (checked) {\r\n let newList = currentValue.slice(0);\r\n if (currentValue.length < size) {\r\n newList.push(value);\r\n }\r\n if (currentValue.length === size && size === 1) {\r\n newList = [value];\r\n }\r\n if (currentValue.length >= size && size > 1) {\r\n message.error(`最多选择${size}个`);\r\n return;\r\n }\r\n changeHandler(newList);\r\n } else {\r\n const newList = currentValue.slice(0);\r\n newList.splice(currentValue.indexOf(value), 1);\r\n changeHandler(newList);\r\n }\r\n };\r\n const computedChildren = (() => {\r\n if (Array.isArray(options)) {\r\n return options.map(({ label, value }) => <List.Item key={value} value={value} label={label} />);\r\n }\r\n if (isFunction(children)) {\r\n return children({ value: currentValue, onChange: changeHandler });\r\n }\r\n return children;\r\n })();\r\n return <FilterItem label={label}>\r\n <Provider value={{\r\n currentValue, createCheckedChangeHandler\r\n }}>\r\n {computedChildren}\r\n {more ? (() => {\r\n if (isFunction(more)) {\r\n return more({ name, size, label, value: currentValue, onChange: changeHandler });\r\n }\r\n const { children, onClick } = more;\r\n return <List.Item {...more} onClick={(e) => {\r\n onClick({ name, label, value: currentValue, onChange: changeHandler }, e);\r\n }} label={children || \"其他\"} />;\r\n })() : null}\r\n </Provider>\r\n </FilterItem>;\r\n};\r\n\r\nList.Item = ({ value, label, ...props }) => {\r\n const { currentValue, createCheckedChangeHandler } = useContext(context);\r\n const itemProps = {};\r\n if (value !== void (0)) {\r\n itemProps.checked = currentValue.findIndex((item) => isEqual(item.value, value)) > -1;\r\n itemProps.onChange = createCheckedChangeHandler({ label, value });\r\n }\r\n\r\n return <CheckableTag {...props} {...itemProps}>{label}</CheckableTag>;\r\n};\r\n\r\nList.defaultProps = {\r\n size: 2\r\n};\r\n\r\nexport default List;","import React from \"react\";\r\nimport { createCitySelect, apis, RemoteData, DisplayCity } from \"@kne/react-city-select\";\r\nimport List from \"../List\";\r\n\r\nconst { Item } = List;\r\n\r\nconst City = ({ label, name, size }) => {\r\n return <List label={label} name={name} size={size} more={{\r\n children: \"其他\", onClick: ({ value, onChange }) => {\r\n createCitySelect({\r\n size, defaultValue: value.map(({ value }) => value), onChange: (value) => {\r\n Promise.all(value.map((id) => apis.getCity(id).then(({ city }) => ({\r\n label: city.name, value: city.code\r\n })))).then((value) => onChange(value));\r\n }\r\n });\r\n }\r\n }}>\r\n {({ value: currentValue }) => <>\r\n <RemoteData loader={apis.getChinaHotCities}>{(data) => {\r\n const otherList = currentValue.filter(({ value: code }) => !data.find((item) => item.code === code));\r\n let extraLength = 0;\r\n data.forEach((item, index) => {\r\n if (currentValue.findIndex(({ value }) => value === item.code) > -1 && index >= data.length - otherList.length) {\r\n extraLength += 1;\r\n }\r\n });\r\n return <>\r\n {otherList.map(({ value: code }) => {\r\n return <DisplayCity id={code} key={code}>{({ city: item }) => {\r\n return <Item value={code} label={item.name} />;\r\n }}</DisplayCity>;\r\n })}\r\n {data.filter((item, index) => currentValue.findIndex(({ value }) => value === item.code) > -1 || index < data.length - otherList.length - extraLength).map((item) =>\r\n <Item key={item.code} value={item.code} label={item.name} />)}\r\n </>;\r\n }}</RemoteData>\r\n </>}\r\n </List>;\r\n};\r\n\r\nexport default City;","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { Button, Space } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport useClickOutSide from \"@kne/use-click-outside\";\r\nimport classnames from \"classnames\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport get from \"lodash/get\";\r\n\r\nconst SearchButton = ({\r\n name,\r\n size,\r\n template,\r\n children,\r\n defaultValue,\r\n defaultActive,\r\n onSearch,\r\n onBeforeSearch,\r\n onActiveChange,\r\n buttonText\r\n }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n const [value, setValue] = useState(defaultValue || get(currentValue, \"value\"));\r\n const [active, setActive] = useState(defaultActive);\r\n const withTemplate = (value) => ({\r\n value, label: isFunction(template) ? template(value) : value.toString()\r\n });\r\n const ref = useClickOutSide(() => {\r\n if (!active) {\r\n return;\r\n }\r\n setValue(get(currentValue, \"value\"));\r\n setActive(false);\r\n });\r\n\r\n const activeChangeRef = useRef(onActiveChange);\r\n activeChangeRef.current = onActiveChange;\r\n\r\n useEffect(() => {\r\n activeChangeRef.current && activeChangeRef.current(active);\r\n }, [active]);\r\n return <div className={classnames(\"react-filter-search-button\", {\r\n \"is-active\": active\r\n })} ref={ref}>\r\n <div className=\"inner\">\r\n <div>{children({ value, setValue, setActive })}</div>\r\n {active ? <Button className=\"react-filter-search-confirm\" size=\"small\" type=\"primary\" onClick={(e) => {\r\n e.stopPropagation();\r\n if (onBeforeSearch && onBeforeSearch(value) === false) {\r\n return;\r\n }\r\n onChange(name, Number.isInteger(size) && size > 1 ? [withTemplate(value)] : withTemplate(value));\r\n setActive(false);\r\n onSearch && onSearch({ value });\r\n }}>{buttonText}</Button> : null}</div>\r\n </div>;\r\n};\r\n\r\nSearchButton.defaultProps = {\r\n defaultActive: false, buttonText: \"确定\"\r\n};\r\n\r\nexport default SearchButton;","import React, { useState } from \"react\";\r\nimport { InputNumber, Space, Tooltip } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\nimport get from \"lodash/get\";\r\nimport isNumber from \"lodash/isNumber\";\r\n\r\nexport const RangeInner = ({ name, size, defaultActive, template, onSearch, onActiveChange, startProps, endProps }) => {\r\n const [error, setError] = useState(null);\r\n const check = (value) => {\r\n setError(null);\r\n if (!Array.isArray(value)) {\r\n return false;\r\n }\r\n if (value[0] === null && value[1] === null) {\r\n setError(\"最大值和最小值不能同时为空\");\r\n return false;\r\n }\r\n if (isNumber(value[1]) && value[0] > value[1]) {\r\n setError(\"最大值不能小于最小值\");\r\n return false;\r\n }\r\n return true;\r\n };\r\n return <SearchButton size={size} template={template} defaultActive={defaultActive} name={name} onSearch={onSearch}\r\n onBeforeSearch={(value) => {\r\n return check(value);\r\n }} onActiveChange={(active) => {\r\n if (!active) {\r\n setError(null);\r\n }\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <Tooltip visible={!!error} title={error} placement=\"bottomRight\"><Space\r\n size=\"small\">\r\n <InputNumber size=\"small\" {...startProps} value={get(value, 0)} onChange={(inputValue) => {\r\n const target = [inputValue, get(value, 1)];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n ~\r\n <InputNumber size=\"small\" {...endProps} value={get(value, 1)} onChange={(inputValue) => {\r\n const target = [get(value, 0), inputValue];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </Space></Tooltip>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Range = withFilterItem(RangeInner);\r\n\r\nexport default Range;\r\n\r\n","import React from \"react\";\r\nimport { Input } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\n\r\nexport const TextInner = ({ name, label, template, defaultActive, onSearch, onActiveChange, ...props }) => {\r\n return <SearchButton defaultActive={defaultActive} template={template} name={name} onSearch={onSearch}\r\n onActiveChange={(active) => {\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <>\r\n <Input size=\"small\" {...props} value={value} onChange={(e) => {\r\n setValue(e.target.value);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Text = withFilterItem(TextInner);\r\n\r\nexport default Text;\r\n\r\n","import React from \"react\";\r\nimport { Select } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nexport const SelectorInner = ({ name, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Select {...props} style={{ minWidth: \"150px\" }} size=\"small\" value={currentValue} onChange={(value, item) => {\r\n onChange(name, item);\r\n }} />;\r\n};\r\n\r\nconst Selector = withFilterItem(SelectorInner);\r\n\r\nexport default Selector;","import React from \"react\";\r\nimport { Checkbox } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nconst Check = ({ name, label, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Checkbox {...props} size=\"small\" checked={currentValue} onChange={(e) => {\r\n onChange(name, e.target.checked ? { value: true, label } : null);\r\n }}>{label}</Checkbox>;\r\n};\r\n\r\nexport default Check;","import React, { useState } from \"react\";\r\nimport List from \"../List\";\r\nimport { RangeInner } from \"../Range\";\r\nimport { TextInner } from \"../Text\";\r\nimport { SelectorInner } from \"../Selector\";\r\n\r\nexport const withMoreExtraButton = (WrappedComponent) => ({ name, value, children, ...props }) => {\r\n const [isEdit, setIsEdit] = useState(false);\r\n return isEdit ? <WrappedComponent defaultActive={true} {...props} name={name} onActiveChange={(active) => {\r\n if (active === false) {\r\n setIsEdit(false);\r\n }\r\n }} /> : <List.Item onClick={(e) => {\r\n e.stopPropagation();\r\n setIsEdit(true);\r\n }} label={children || \"其他\"} />;\r\n};\r\n\r\nconst RangeButton = withMoreExtraButton(RangeInner);\r\nconst TextButton = withMoreExtraButton(TextInner);\r\nconst SelectorButton = withMoreExtraButton(SelectorInner);\r\n\r\nexport const createExtraButton = ({ type, ...props }) => (innerProps) => {\r\n const mapping = {\r\n range: RangeButton, text: TextButton, selector: SelectorButton\r\n };\r\n\r\n const ExtraButtonComponent = mapping[type];\r\n if (!ExtraButtonComponent) {\r\n return null;\r\n }\r\n return <ExtraButtonComponent {...props} {...innerProps} />;\r\n};\r\n\r\n","import React, { cloneElement, useState } from \"react\";\r\nimport { Space, Button, Divider, Tag, Row, Col } from \"antd\";\r\nimport City from \"./City\";\r\nimport List from \"./List\";\r\nimport Range from \"./Range\";\r\nimport Text from \"./Text\";\r\nimport Selector from \"./Selector\";\r\nimport Check from \"./Check\";\r\nimport { Provider } from \"./context\";\r\nimport FilterItem from \"./FilterItem\";\r\nimport \"./index.scss\";\r\n\r\nconst Filter = ({ displayLine, list, value, onChange }) => {\r\n const [display, setDisplay] = useState(false);\r\n const basicList = list.slice(0, displayLine), moreList = list.slice(displayLine);\r\n const renderList = (list) => list.map((item, index) => {\r\n return <Space key={index}>{item.map((item, index) => cloneElement(item, { key: index }))}</Space>;\r\n });\r\n const changeHandler = (name, item) => {\r\n const target = Object.assign({}, value, { [name]: item });\r\n Object.keys(target).forEach((key) => {\r\n const item = target[key];\r\n if (item === void (0) || item === null) {\r\n delete target[key];\r\n }\r\n if (Array.isArray(item) && item.length === 0) {\r\n delete target[key];\r\n }\r\n });\r\n onChange(target);\r\n };\r\n return <Provider value={{\r\n value, onChange: changeHandler\r\n }}>\r\n <Space className=\"space-full\" direction=\"vertical\">\r\n <FilterItem label=\"筛选项\">{Object.keys(value).map((key) => {\r\n const item = value[key];\r\n if (!item) return null;\r\n if (Array.isArray(item) && item.length === 0) return null;\r\n return <Tag key={key} closable onClose={() => {\r\n changeHandler(key, null);\r\n }}>{Array.isArray(item) ? item.map(({ label }) => label).join(\",\") : item.label}</Tag>;\r\n })}</FilterItem>\r\n {renderList(basicList)}\r\n {display ? <><Divider className=\"react-filter-divider\" />{renderList(moreList)}</> : null}\r\n <Row justify=\"end\">\r\n <Col><Button type=\"link\" onClick={() => {\r\n setDisplay((display) => !display);\r\n }}>{display ? \"收起更多条件\" : \"展开更多\"}</Button></Col>\r\n </Row>\r\n </Space>\r\n </Provider>;\r\n};\r\n\r\nFilter.type = {\r\n City, List, Range, Text, Selector, Check\r\n};\r\n\r\nFilter.defaultProps = {\r\n displayLine: 2, list: [[]], value: {}, onChange: () => {\r\n }\r\n};\r\n\r\nexport { createExtraButton, withMoreExtraButton } from \"./MoreExtraButton\";\r\n\r\nexport { default as SearchButton } from \"./SearchButton\";\r\n\r\nexport { default as FilterItem, withFilterItem } from \"./FilterItem\";\r\n\r\nexport default Filter;"],"names":["context","createContext","Consumer","Provider","useConsumer","useContext","FilterItem","label","children","withFilterItem","WrappedComponent","props","CheckableTag","Tag","List","name","size","options","more","value","onChange","currentValue","originValue","get","changeHandler","createCheckedChangeHandler","checked","newList","slice","length","push","message","error","splice","indexOf","computedChildren","Array","isArray","map","isFunction","onClick","e","Item","itemProps","findIndex","item","isEqual","defaultProps","City","createCitySelect","defaultValue","Promise","all","id","apis","getCity","then","city","code","getChinaHotCities","data","otherList","filter","find","extraLength","forEach","index","SearchButton","template","defaultActive","onSearch","onBeforeSearch","onActiveChange","buttonText","aValue","setValue","useState","active","setActive","withTemplate","toString","ref","useClickOutSide","activeChangeRef","useRef","current","useEffect","classnames","stopPropagation","Number","isInteger","RangeInner","startProps","endProps","setError","check","isNumber","inputValue","target","Range","TextInner","Text","SelectorInner","minWidth","Selector","Check","withMoreExtraButton","isEdit","setIsEdit","RangeButton","TextButton","SelectorButton","createExtraButton","type","innerProps","mapping","range","text","selector","ExtraButtonComponent","Filter","displayLine","list","display","setDisplay","basicList","moreList","renderList","cloneElement","key","Object","assign","keys","join"],"mappings":"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"}
1
+ {"version":3,"file":"index.modern.js","sources":["../src/context.js","../src/FilterItem/index.js","../src/List/index.js","../src/City/index.js","../src/SearchButton/index.js","../src/Range/index.js","../src/Text/index.js","../src/Selector/index.js","../src/Check/index.js","../src/MoreExtraButton/index.js","../src/index.js"],"sourcesContent":["import { createContext, useContext } from \"react\";\r\n\r\nconst context = createContext({});\r\n\r\nexport const { Consumer, Provider } = context;\r\n\r\nexport const useConsumer = () => useContext(context);\r\n\r\nexport default context;","import React from \"react\";\r\nimport { Space } from \"antd\";\r\n\r\nconst FilterItem = ({ label, children }) => {\r\n return <Space>\r\n <div className=\"react-filter-item-label\">{label}:</div>\r\n <div className=\"react-filter-item-children\">{children}</div>\r\n </Space>;\r\n};\r\n\r\nexport const withFilterItem = (WrappedComponent) => ({ label, ...props }) => <FilterItem\r\n label={label}><WrappedComponent {...props} /></FilterItem>;\r\n\r\nexport default FilterItem;","import React, { createContext, useContext } from \"react\";\r\nimport { Button, message, Tag } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport FilterItem from \"../FilterItem\";\r\nimport get from \"lodash/get\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport isEqual from \"lodash/isEqual\";\r\n\r\nconst { CheckableTag } = Tag;\r\n\r\nconst context = createContext({});\r\n\r\nconst { Provider } = context;\r\n\r\nconst List = ({ label, name, size, children, options, more }) => {\r\n const { value, onChange } = useConsumer();\r\n const currentValue = (() => {\r\n const originValue = get(value, name);\r\n if (size === 1) {\r\n return originValue !== void (0) ? [originValue] : [];\r\n } else {\r\n return originValue || [];\r\n }\r\n })();\r\n\r\n const changeHandler = (value) => {\r\n if (size === 1) {\r\n return onChange(name, value[0]);\r\n } else {\r\n return onChange(name, value);\r\n }\r\n };\r\n const createCheckedChangeHandler = (value) => (checked) => {\r\n if (checked) {\r\n let newList = currentValue.slice(0);\r\n if (currentValue.length < size) {\r\n newList.push(value);\r\n }\r\n if (currentValue.length === size && size === 1) {\r\n newList = [value];\r\n }\r\n if (currentValue.length >= size && size > 1) {\r\n message.error(`最多选择${size}个`);\r\n return;\r\n }\r\n changeHandler(newList);\r\n } else {\r\n const newList = currentValue.slice(0);\r\n newList.splice(currentValue.indexOf(value), 1);\r\n changeHandler(newList);\r\n }\r\n };\r\n const computedChildren = (() => {\r\n if (Array.isArray(options)) {\r\n return options.map(({ label, value }) => <List.Item key={value} value={value} label={label} />);\r\n }\r\n if (isFunction(children)) {\r\n return children({ value: currentValue, onChange: changeHandler });\r\n }\r\n return children;\r\n })();\r\n return <FilterItem label={label}>\r\n <Provider value={{\r\n currentValue, createCheckedChangeHandler\r\n }}>\r\n {computedChildren}\r\n {more ? (() => {\r\n if (isFunction(more)) {\r\n return more({ name, size, label, value: currentValue, onChange: changeHandler });\r\n }\r\n const { children, onClick } = more;\r\n return <List.Item {...more} onClick={(e) => {\r\n onClick({ name, label, value: currentValue, onChange: changeHandler }, e);\r\n }} label={children || \"其他\"} />;\r\n })() : null}\r\n </Provider>\r\n </FilterItem>;\r\n};\r\n\r\nList.Item = ({ value, label, ...props }) => {\r\n const { currentValue, createCheckedChangeHandler } = useContext(context);\r\n const itemProps = {};\r\n if (value !== void (0)) {\r\n itemProps.checked = currentValue.findIndex((item) => isEqual(item.value, value)) > -1;\r\n itemProps.onChange = createCheckedChangeHandler({ label, value });\r\n }\r\n\r\n return <CheckableTag {...props} {...itemProps}>{label}</CheckableTag>;\r\n};\r\n\r\nList.defaultProps = {\r\n size: 2\r\n};\r\n\r\nexport default List;","import React from \"react\";\r\nimport { createCitySelect, apis, RemoteData, DisplayCity } from \"@kne/react-city-select\";\r\nimport List from \"../List\";\r\n\r\nconst { Item } = List;\r\n\r\nconst City = ({ label, name, size }) => {\r\n return <List label={label} name={name} size={size} more={{\r\n children: \"其他\", onClick: ({ value, onChange }) => {\r\n createCitySelect({\r\n size, defaultValue: value.map(({ value }) => value), onChange: (value) => {\r\n Promise.all(value.map((id) => apis.getCity(id).then(({ city }) => ({\r\n label: city.name, value: city.code\r\n })))).then((value) => onChange(value));\r\n }\r\n });\r\n }\r\n }}>\r\n {({ value: currentValue }) => <>\r\n <RemoteData loader={apis.getChinaHotCities}>{(data) => {\r\n const otherList = currentValue.filter(({ value: code }) => !data.find((item) => item.code === code));\r\n let extraLength = 0;\r\n data.forEach((item, index) => {\r\n if (currentValue.findIndex(({ value }) => value === item.code) > -1 && index >= data.length - otherList.length) {\r\n extraLength += 1;\r\n }\r\n });\r\n return <>\r\n {otherList.map(({ value: code }) => {\r\n return <DisplayCity id={code} key={code}>{({ city: item }) => {\r\n return <Item value={code} label={item.name} />;\r\n }}</DisplayCity>;\r\n })}\r\n {data.filter((item, index) => currentValue.findIndex(({ value }) => value === item.code) > -1 || index < data.length - otherList.length - extraLength).map((item) =>\r\n <Item key={item.code} value={item.code} label={item.name} />)}\r\n </>;\r\n }}</RemoteData>\r\n </>}\r\n </List>;\r\n};\r\n\r\nexport default City;","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { Button, Space } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\nimport useClickOutSide from \"@kne/use-click-outside\";\r\nimport classnames from \"classnames\";\r\nimport isFunction from \"lodash/isFunction\";\r\nimport get from \"lodash/get\";\r\n\r\nconst SearchButton = ({\r\n name,\r\n size,\r\n template,\r\n children,\r\n defaultValue,\r\n defaultActive,\r\n onBlur,\r\n onSearch,\r\n onBeforeSearch,\r\n onActiveChange,\r\n buttonText\r\n }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n const [value, setValue] = useState(defaultValue || get(currentValue, \"value\"));\r\n const [active, setActive] = useState(defaultActive);\r\n const withTemplate = (value) => ({\r\n value, label: isFunction(template) ? template(value) : value.toString()\r\n });\r\n const ref = useClickOutSide(() => {\r\n setValue(get(currentValue, \"value\"));\r\n setActive(false);\r\n onBlur && onBlur();\r\n });\r\n\r\n const activeChangeRef = useRef(onActiveChange);\r\n activeChangeRef.current = onActiveChange;\r\n\r\n useEffect(() => {\r\n activeChangeRef.current && activeChangeRef.current(active);\r\n }, [active]);\r\n let timer;\r\n return <div className={classnames(\"react-filter-search-button\", {\r\n \"is-active\": active\r\n })} ref={ref} onMouseEnter={() => {\r\n clearTimeout(timer);\r\n !active && setActive(true);\r\n }} onMouseLeave={() => {\r\n clearTimeout(timer);\r\n timer = setTimeout(() => {\r\n active && setActive(false);\r\n }, 200);\r\n }}>\r\n <div className=\"inner\">\r\n <div>{children({ value, setValue, setActive })}</div>\r\n {active ? <Button className=\"react-filter-search-confirm\" size=\"small\" type=\"primary\" onClick={(e) => {\r\n e.stopPropagation();\r\n if (onBeforeSearch && onBeforeSearch(value) === false) {\r\n return;\r\n }\r\n onChange(name, Number.isInteger(size) && size > 1 ? [withTemplate(value)] : withTemplate(value));\r\n setActive(false);\r\n onSearch && onSearch({ value });\r\n }}>{buttonText}</Button> : null}</div>\r\n </div>;\r\n};\r\n\r\nSearchButton.defaultProps = {\r\n defaultActive: false, buttonText: \"确定\"\r\n};\r\n\r\nexport default SearchButton;","import React, { useState } from \"react\";\r\nimport { InputNumber, Space, Tooltip } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\nimport get from \"lodash/get\";\r\nimport isNumber from \"lodash/isNumber\";\r\n\r\nexport const RangeInner = ({\r\n name, size, defaultActive, template, onBlur, onSearch, onActiveChange, startProps, endProps\r\n }) => {\r\n const [error, setError] = useState(null);\r\n const check = (value) => {\r\n setError(null);\r\n if (!Array.isArray(value)) {\r\n return false;\r\n }\r\n if (value[0] === null && value[1] === null) {\r\n setError(\"最大值和最小值不能同时为空\");\r\n return false;\r\n }\r\n if (isNumber(value[1]) && value[0] > value[1]) {\r\n setError(\"最大值不能小于最小值\");\r\n return false;\r\n }\r\n return true;\r\n };\r\n return <SearchButton size={size} template={template} onBlur={onBlur} defaultActive={defaultActive} name={name} onSearch={onSearch}\r\n onBeforeSearch={(value) => {\r\n return check(value);\r\n }} onActiveChange={(active) => {\r\n if (!active) {\r\n setError(null);\r\n }\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <Tooltip visible={!!error} title={error} placement=\"bottomRight\"><Space\r\n size=\"small\">\r\n <InputNumber size=\"small\" {...startProps} value={get(value, 0)} onChange={(inputValue) => {\r\n const target = [inputValue, get(value, 1)];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n ~\r\n <InputNumber size=\"small\" {...endProps} value={get(value, 1)} onChange={(inputValue) => {\r\n const target = [get(value, 0), inputValue];\r\n check(target);\r\n setValue(target);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </Space></Tooltip>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Range = withFilterItem(RangeInner);\r\n\r\nexport default Range;\r\n\r\n","import React from \"react\";\r\nimport { Input } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport SearchButton from \"../SearchButton\";\r\n\r\nexport const TextInner = ({ name, label, template, defaultActive, onBlur, onSearch, onActiveChange, ...props }) => {\r\n return <SearchButton defaultActive={defaultActive} onBlur={onBlur} template={template} name={name} onSearch={onSearch}\r\n onActiveChange={(active) => {\r\n onActiveChange && onActiveChange(active);\r\n }}>\r\n {({ value, setValue, setActive }) => <>\r\n <Input size=\"small\" {...props} value={value} onChange={(e) => {\r\n setValue(e.target.value);\r\n }} onFocus={() => {\r\n setActive(true);\r\n }} />\r\n </>}\r\n </SearchButton>;\r\n};\r\n\r\nconst Text = withFilterItem(TextInner);\r\n\r\nexport default Text;\r\n\r\n","import React from \"react\";\r\nimport { Select } from \"antd\";\r\nimport { withFilterItem } from \"../FilterItem\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nexport const SelectorInner = ({ name, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Select {...props} style={{ minWidth: \"150px\" }} size=\"small\" value={currentValue} onChange={(value, item) => {\r\n onChange(name, item);\r\n }} />;\r\n};\r\n\r\nconst Selector = withFilterItem(SelectorInner);\r\n\r\nexport default Selector;","import React from \"react\";\r\nimport { Checkbox } from \"antd\";\r\nimport { useConsumer } from \"../context\";\r\n\r\nconst Check = ({ name, label, ...props }) => {\r\n const { value: aValue, onChange } = useConsumer();\r\n const currentValue = aValue[name];\r\n return <Checkbox {...props} size=\"small\" checked={currentValue} onChange={(e) => {\r\n onChange(name, e.target.checked ? { value: true, label } : null);\r\n }}>{label}</Checkbox>;\r\n};\r\n\r\nexport default Check;","import React, { useState } from \"react\";\r\nimport List from \"../List\";\r\nimport { RangeInner } from \"../Range\";\r\nimport { TextInner } from \"../Text\";\r\nimport { SelectorInner } from \"../Selector\";\r\n\r\nexport const withMoreExtraButton = (WrappedComponent) => ({ name, value, children, ...props }) => {\r\n const [isEdit, setIsEdit] = useState(false);\r\n return isEdit ? <WrappedComponent defaultActive={true} {...props} name={name} onBlur={() => {\r\n setIsEdit(false);\r\n }} /> : <List.Item onClick={(e) => {\r\n e.stopPropagation();\r\n setIsEdit(true);\r\n }} label={children || \"其他\"} />;\r\n};\r\n\r\nconst RangeButton = withMoreExtraButton(RangeInner);\r\nconst TextButton = withMoreExtraButton(TextInner);\r\nconst SelectorButton = withMoreExtraButton(SelectorInner);\r\n\r\nexport const createExtraButton = ({ type, ...props }) => (innerProps) => {\r\n const mapping = {\r\n range: RangeButton, text: TextButton, selector: SelectorButton\r\n };\r\n\r\n const ExtraButtonComponent = mapping[type];\r\n if (!ExtraButtonComponent) {\r\n return null;\r\n }\r\n return <ExtraButtonComponent {...props} {...innerProps} />;\r\n};\r\n\r\n","import React, { cloneElement, useState } from \"react\";\r\nimport { Space, Button, Divider, Tag, Row, Col } from \"antd\";\r\nimport City from \"./City\";\r\nimport List from \"./List\";\r\nimport Range from \"./Range\";\r\nimport Text from \"./Text\";\r\nimport Selector from \"./Selector\";\r\nimport Check from \"./Check\";\r\nimport { Provider } from \"./context\";\r\nimport FilterItem from \"./FilterItem\";\r\nimport \"./index.scss\";\r\n\r\nconst Filter = ({ displayLine, list, value, onChange }) => {\r\n const [display, setDisplay] = useState(false);\r\n const basicList = list.slice(0, displayLine), moreList = list.slice(displayLine);\r\n const renderList = (list) => list.map((item, index) => {\r\n return <Space key={index}>{item.map((item, index) => cloneElement(item, { key: index }))}</Space>;\r\n });\r\n const changeHandler = (name, item) => {\r\n const target = Object.assign({}, value, { [name]: item });\r\n Object.keys(target).forEach((key) => {\r\n const item = target[key];\r\n if (item === void (0) || item === null) {\r\n delete target[key];\r\n }\r\n if (Array.isArray(item) && item.length === 0) {\r\n delete target[key];\r\n }\r\n });\r\n onChange(target);\r\n };\r\n return <Provider value={{\r\n value, onChange: changeHandler\r\n }}>\r\n <Space className=\"space-full\" direction=\"vertical\">\r\n <FilterItem label=\"筛选项\">{Object.keys(value).map((key) => {\r\n const item = value[key];\r\n if (!item) return null;\r\n if (Array.isArray(item) && item.length === 0) return null;\r\n return <Tag key={key} closable onClose={() => {\r\n changeHandler(key, null);\r\n }}>{Array.isArray(item) ? item.map(({ label }) => label).join(\",\") : item.label}</Tag>;\r\n })}</FilterItem>\r\n {renderList(basicList)}\r\n {display ? <><Divider className=\"react-filter-divider\" />{renderList(moreList)}</> : null}\r\n <Row justify=\"end\">\r\n <Col><Button type=\"link\" onClick={() => {\r\n setDisplay((display) => !display);\r\n }}>{display ? \"收起更多条件\" : \"展开更多\"}</Button></Col>\r\n </Row>\r\n </Space>\r\n </Provider>;\r\n};\r\n\r\nFilter.type = {\r\n City, List, Range, Text, Selector, Check\r\n};\r\n\r\nFilter.defaultProps = {\r\n displayLine: 2, list: [[]], value: {}, onChange: () => {\r\n }\r\n};\r\n\r\nexport { createExtraButton, withMoreExtraButton } from \"./MoreExtraButton\";\r\n\r\nexport { default as SearchButton } from \"./SearchButton\";\r\n\r\nexport { default as FilterItem, withFilterItem } from \"./FilterItem\";\r\n\r\nexport default Filter;"],"names":["context","createContext","Consumer","Provider","useConsumer","useContext","FilterItem","label","children","withFilterItem","WrappedComponent","props","CheckableTag","Tag","List","name","size","options","more","value","onChange","currentValue","originValue","get","changeHandler","createCheckedChangeHandler","checked","newList","slice","length","push","message","error","splice","indexOf","computedChildren","Array","isArray","map","isFunction","onClick","e","Item","itemProps","findIndex","item","isEqual","defaultProps","City","createCitySelect","defaultValue","Promise","all","id","apis","getCity","then","city","code","getChinaHotCities","data","otherList","filter","find","extraLength","forEach","index","SearchButton","template","defaultActive","onBlur","onSearch","onBeforeSearch","onActiveChange","buttonText","aValue","setValue","useState","active","setActive","withTemplate","toString","ref","useClickOutSide","activeChangeRef","useRef","current","useEffect","timer","classnames","clearTimeout","setTimeout","stopPropagation","Number","isInteger","RangeInner","startProps","endProps","setError","check","isNumber","inputValue","target","Range","TextInner","Text","SelectorInner","minWidth","Selector","Check","withMoreExtraButton","isEdit","setIsEdit","RangeButton","TextButton","SelectorButton","createExtraButton","type","innerProps","mapping","range","text","selector","ExtraButtonComponent","Filter","displayLine","list","display","setDisplay","basicList","moreList","renderList","cloneElement","key","Object","assign","keys","join"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kne/react-filter",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "处理文本省略号",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.modern.js",