@kne/entry-selector 0.1.7 → 0.2.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/README.md CHANGED
@@ -95,7 +95,7 @@ const BaseExample = () => {
95
95
  getSearchProps={({ searchText }) => {
96
96
  return { title: searchText };
97
97
  }}
98
- renderSelectedItem={(item, { el, onChange }) => {
98
+ renderSelectedItem={(item, { el, onReplace }) => {
99
99
  return (
100
100
  <>
101
101
  {el}
@@ -105,7 +105,7 @@ const BaseExample = () => {
105
105
  size="small"
106
106
  checked={item.hasProbe}
107
107
  onChange={checked => {
108
- onChange(Object.assign({}, item, { hasProbe: checked }));
108
+ onReplace(Object.assign({}, item, { hasProbe: checked }));
109
109
  }}
110
110
  />
111
111
  </Flex>
package/dist/index.css CHANGED
@@ -59,6 +59,14 @@
59
59
  justify-content: center;
60
60
  }
61
61
 
62
+ ._VXH4S .list-item-remove-btn {
63
+ opacity: 0;
64
+ flex: none;
65
+ }
66
+ ._VXH4S:hover .list-item-remove-btn {
67
+ opacity: 1;
68
+ }
69
+
62
70
  ._agPfO {
63
71
  padding: 0;
64
72
  }
@@ -71,8 +79,9 @@
71
79
  ._iFzfk .ant-checkbox-wrapper {
72
80
  flex: 1;
73
81
  }
74
- ._iFzfk._uB1q2 {
82
+ ._iFzfk._uB1q2 .sortable-drag-handle {
75
83
  cursor: move !important;
84
+ padding: 12px 2px;
76
85
  }
77
86
  ._iFzfk._uB1q2 .ant-checkbox-wrapper {
78
87
  margin-left: 2px;
@@ -1 +1 @@
1
- {"version":3,"sources":["style.module.scss"],"names":[],"mappings":"AAAA;EACE,mBAAmB;EACnB,mBAAmB;EACnB,aAAa;AACf;;AAEA;EACE,mBAAmB;EACnB,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;AAClB;;AAEA;EACE,iBAAiB;EACjB,+CAA+C;EAC/C,gBAAgB;AAClB;;AAEA;EACE,6CAA6C;AAC/C;;AAEA;EACE,YAAY;EACZ,mBAAmB;EACnB,iBAAiB;AACnB;AACA;EACE,iBAAiB;EACjB,gBAAgB;EAChB,2BAA2B;AAC7B;AACA;;EAEE,qBAAqB;AACvB;AACA;EACE,gBAAgB;AAClB;AACA;EACE,6BAA6B;AAC/B;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,gCAAgC;EAChC,cAAc;EACd,kBAAkB;EAClB,aAAa;EACb,aAAa;EACb,cAAc;EACd,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,4BAA4B;EAC5B,mBAAmB;EACnB,4BAA4B;AAC9B;AACA;EACE,OAAO;AACT;AACA;EACE,uBAAuB;AACzB;AACA;EACE,gBAAgB;AAClB;AACA;EACE,iBAAiB;AACnB;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,qBAAqB;EACrB,oCAAoC;EACpC,0CAA0C;AAC5C;;AAEA;EACE,kCAAkC;EAClC,kDAAkD;AACpD","file":"index.css","sourcesContent":[".entry-selector {\n background: #f6f7f9;\n border-radius: 12px;\n padding: 16px;\n}\n\n.list-outer {\n background: #ffffff;\n border-radius: 12px;\n height: 100%;\n overflow: hidden;\n}\n\n.list-header {\n padding: 8px 16px;\n border-bottom: 1px solid var(--bg-color-grey-3);\n font-weight: 600;\n}\n\n.list-scroll {\n max-height: var(--max-scroller-height, 800px);\n}\n\n.list {\n height: 100%;\n background: #ffffff;\n min-height: 150px;\n}\n.list :global .ant-list-header {\n padding: 8px 16px;\n font-weight: 600;\n color: var(--primary-color);\n}\n.list :global .list-item-title,\n.list :global .list-item-description {\n white-space: pre-wrap;\n}\n.list :global .list-item-title {\n font-weight: 600;\n}\n.list :global .list-item-description {\n color: var(--font-color-grey);\n}\n\n.list-lib :global .ant-list-item {\n cursor: pointer;\n}\n\n.list-index {\n width: 20px;\n height: 20px;\n background: var(--primary-color);\n color: #ffffff;\n border-radius: 50%;\n margin: 0 6px;\n display: flex;\n flex: 0 0 20px;\n align-items: center;\n justify-content: center;\n}\n\n.columns-control-content-list {\n padding: 0;\n}\n\n.columns-control-content-item {\n padding: 8px 14px !important;\n background: #ffffff;\n transition: box-shadow 500ms;\n}\n.columns-control-content-item :global .ant-checkbox-wrapper {\n flex: 1;\n}\n.columns-control-content-item.is-drag {\n cursor: move !important;\n}\n.columns-control-content-item.is-drag :global .ant-checkbox-wrapper {\n margin-left: 2px;\n}\n.columns-control-content-item:not(.is-drag) :global .ant-checkbox-wrapper {\n margin-left: 16px;\n}\n\n.columns-control-content-item-icon {\n color: var(--font-color-grey-1);\n}\n\n.sortable-drag {\n opacity: 1 !important;\n background: rgba(255, 255, 255, 0.9);\n box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.1);\n}\n\n.sortable-ghost {\n background: var(--primary-color-1);\n border: 1px dashed var(--primary-color) !important;\n}"]}
1
+ {"version":3,"sources":["style.module.scss"],"names":[],"mappings":"AAAA;EACE,mBAAmB;EACnB,mBAAmB;EACnB,aAAa;AACf;;AAEA;EACE,mBAAmB;EACnB,mBAAmB;EACnB,YAAY;EACZ,gBAAgB;AAClB;;AAEA;EACE,iBAAiB;EACjB,+CAA+C;EAC/C,gBAAgB;AAClB;;AAEA;EACE,6CAA6C;AAC/C;;AAEA;EACE,YAAY;EACZ,mBAAmB;EACnB,iBAAiB;AACnB;AACA;EACE,iBAAiB;EACjB,gBAAgB;EAChB,2BAA2B;AAC7B;AACA;;EAEE,qBAAqB;AACvB;AACA;EACE,gBAAgB;AAClB;AACA;EACE,6BAA6B;AAC/B;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,gCAAgC;EAChC,cAAc;EACd,kBAAkB;EAClB,aAAa;EACb,aAAa;EACb,cAAc;EACd,mBAAmB;EACnB,uBAAuB;AACzB;;AAEA;EACE,UAAU;EACV,UAAU;AACZ;AACA;EACE,UAAU;AACZ;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,4BAA4B;EAC5B,mBAAmB;EACnB,4BAA4B;AAC9B;AACA;EACE,OAAO;AACT;AACA;EACE,uBAAuB;EACvB,iBAAiB;AACnB;AACA;EACE,gBAAgB;AAClB;AACA;EACE,iBAAiB;AACnB;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,qBAAqB;EACrB,oCAAoC;EACpC,0CAA0C;AAC5C;;AAEA;EACE,kCAAkC;EAClC,kDAAkD;AACpD","file":"index.css","sourcesContent":[".entry-selector {\n background: #f6f7f9;\n border-radius: 12px;\n padding: 16px;\n}\n\n.list-outer {\n background: #ffffff;\n border-radius: 12px;\n height: 100%;\n overflow: hidden;\n}\n\n.list-header {\n padding: 8px 16px;\n border-bottom: 1px solid var(--bg-color-grey-3);\n font-weight: 600;\n}\n\n.list-scroll {\n max-height: var(--max-scroller-height, 800px);\n}\n\n.list {\n height: 100%;\n background: #ffffff;\n min-height: 150px;\n}\n.list :global .ant-list-header {\n padding: 8px 16px;\n font-weight: 600;\n color: var(--primary-color);\n}\n.list :global .list-item-title,\n.list :global .list-item-description {\n white-space: pre-wrap;\n}\n.list :global .list-item-title {\n font-weight: 600;\n}\n.list :global .list-item-description {\n color: var(--font-color-grey);\n}\n\n.list-lib :global .ant-list-item {\n cursor: pointer;\n}\n\n.list-index {\n width: 20px;\n height: 20px;\n background: var(--primary-color);\n color: #ffffff;\n border-radius: 50%;\n margin: 0 6px;\n display: flex;\n flex: 0 0 20px;\n align-items: center;\n justify-content: center;\n}\n\n.list-item-content :global(.list-item-remove-btn) {\n opacity: 0;\n flex: none;\n}\n.list-item-content:hover :global(.list-item-remove-btn) {\n opacity: 1;\n}\n\n.columns-control-content-list {\n padding: 0;\n}\n\n.columns-control-content-item {\n padding: 8px 14px !important;\n background: #ffffff;\n transition: box-shadow 500ms;\n}\n.columns-control-content-item :global .ant-checkbox-wrapper {\n flex: 1;\n}\n.columns-control-content-item.is-drag :global .sortable-drag-handle {\n cursor: move !important;\n padding: 12px 2px;\n}\n.columns-control-content-item.is-drag :global .ant-checkbox-wrapper {\n margin-left: 2px;\n}\n.columns-control-content-item:not(.is-drag) :global .ant-checkbox-wrapper {\n margin-left: 16px;\n}\n\n.columns-control-content-item-icon {\n color: var(--font-color-grey-1);\n}\n\n.sortable-drag {\n opacity: 1 !important;\n background: rgba(255, 255, 255, 0.9);\n box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.1);\n}\n\n.sortable-ghost {\n background: var(--primary-color-1);\n border: 1px dashed var(--primary-color) !important;\n}"]}
package/dist/index.js CHANGED
@@ -54,7 +54,7 @@ const locale = {
54
54
  searchPlaceholder: 'Please input keyword'
55
55
  };
56
56
 
57
- var style = {"entry-selector":"_TIU4-","list-outer":"_ZXEhy","list-header":"_HAF3g","list-scroll":"_VO7i-","list":"_8w58c","list-lib":"_9m0I0","list-index":"_P8KYX","columns-control-content-list":"_agPfO","columns-control-content-item":"_iFzfk","is-drag":"_uB1q2","columns-control-content-item-icon":"_WHlyH","sortable-drag":"_dxhFH","sortable-ghost":"_7ZIH8"};
57
+ var style = {"entry-selector":"_TIU4-","list-outer":"_ZXEhy","list-header":"_HAF3g","list-scroll":"_VO7i-","list":"_8w58c","list-lib":"_9m0I0","list-index":"_P8KYX","list-item-content":"_VXH4S","columns-control-content-list":"_agPfO","columns-control-content-item":"_iFzfk","is-drag":"_uB1q2","columns-control-content-item-icon":"_WHlyH","sortable-drag":"_dxhFH","sortable-ghost":"_7ZIH8"};
58
58
 
59
59
  const _excluded = ["onAdd", "api", "options", "selectedTitle", "listTitle", "renderListTitle", "renderSelectedItem", "renderItem", "renderOptions", "getSearchProps", "searchPlaceholder", "maxScrollerHeight"];
60
60
  const EntrySelector = reactIntl.createWithIntlProvider({
@@ -87,6 +87,23 @@ const EntrySelector = reactIntl.createWithIntlProvider({
87
87
  } = reactIntl.useIntl();
88
88
  const ref = React.useRef(null);
89
89
  const selectedMappingRef = React.useRef(new Map());
90
+ const onSelected = item => {
91
+ return onChange(value => {
92
+ const newValue = (value || []).slice(0);
93
+ const index = newValue.findIndex(_ref2 => {
94
+ let {
95
+ id
96
+ } = _ref2;
97
+ return id === item.id;
98
+ });
99
+ if (index > -1) {
100
+ newValue.splice(index, 1);
101
+ } else {
102
+ newValue.push(Object.assign({}, item));
103
+ }
104
+ return newValue;
105
+ });
106
+ };
90
107
  return /*#__PURE__*/React__default["default"].createElement(antd.Flex, {
91
108
  vertical: true,
92
109
  gap: 8,
@@ -115,11 +132,11 @@ const EntrySelector = reactIntl.createWithIntlProvider({
115
132
  ref: ref,
116
133
  className: style['list-scroll'],
117
134
  autoHide: false,
118
- render: _ref2 => {
135
+ render: _ref3 => {
119
136
  let {
120
137
  fetchApi,
121
138
  children
122
- } = _ref2;
139
+ } = _ref3;
123
140
  const {
124
141
  data
125
142
  } = fetchApi;
@@ -152,7 +169,8 @@ const EntrySelector = reactIntl.createWithIntlProvider({
152
169
  className: style['list'],
153
170
  size: "small"
154
171
  }, /*#__PURE__*/React__default["default"].createElement(reactSortablejs.ReactSortable, {
155
- filter: ".ignore-elements",
172
+ filter: ".sortable-ignore-elements",
173
+ handle: ".sortable-drag-handle",
156
174
  dragClass: style['sortable-drag'],
157
175
  ghostClass: style['sortable-ghost'],
158
176
  forceFallback: true,
@@ -163,10 +181,10 @@ const EntrySelector = reactIntl.createWithIntlProvider({
163
181
  setList: list => {
164
182
  onChange(value => {
165
183
  const mapping = new Map((value || []).map(item => [item.id, item]));
166
- return list.map(_ref3 => {
184
+ return list.map(_ref4 => {
167
185
  let {
168
186
  id
169
- } = _ref3;
187
+ } = _ref4;
170
188
  return mapping.get(id);
171
189
  });
172
190
  });
@@ -175,30 +193,47 @@ const EntrySelector = reactIntl.createWithIntlProvider({
175
193
  const defaultItem = /*#__PURE__*/React__default["default"].createElement("span", {
176
194
  className: 'list-item-title'
177
195
  }, item.title);
196
+ const removeOption = /*#__PURE__*/React__default["default"].createElement(ButtonGroup.ConfirmButton, {
197
+ color: "danger",
198
+ variant: "filled",
199
+ className: 'list-item-remove-btn',
200
+ icon: /*#__PURE__*/React__default["default"].createElement(icons.DeleteOutlined, null),
201
+ onClick: () => {
202
+ onSelected(item);
203
+ }
204
+ });
178
205
  const mapping = new Map((value || []).map(item => [item.id, item]));
179
206
  return /*#__PURE__*/React__default["default"].createElement(antd.List.Item, {
180
207
  key: item.id,
181
208
  className: classnames__default["default"](style['columns-control-content-item'], style['is-drag'])
182
209
  }, /*#__PURE__*/React__default["default"].createElement(icons.HolderOutlined, {
183
- className: style['columns-control-content-item-icon']
210
+ className: classnames__default["default"]('sortable-drag-handle', style['columns-control-content-item-icon'])
184
211
  }), /*#__PURE__*/React__default["default"].createElement("div", {
185
212
  className: style['list-index']
186
213
  }, index + 1), /*#__PURE__*/React__default["default"].createElement(antd.Flex, {
214
+ justify: "space-between",
215
+ gap: 8,
216
+ flex: 1,
217
+ className: style['list-item-content']
218
+ }, /*#__PURE__*/React__default["default"].createElement(antd.Flex, {
187
219
  vertical: true,
188
220
  flex: 1
189
221
  }, typeof renderSelectedItem === 'function' ? renderSelectedItem(mapping.get(item.id), {
190
222
  el: defaultItem,
223
+ removeOptionEl: removeOption,
191
224
  target: item,
192
225
  fetchApi,
193
226
  searchProps,
194
227
  setSearchProps,
195
- onChange: targetItem => {
228
+ onChange,
229
+ onSelected,
230
+ onReplace: targetItem => {
196
231
  return onChange(value => {
197
232
  const newValue = (value || []).slice(0);
198
- const index = newValue.findIndex(_ref4 => {
233
+ const index = newValue.findIndex(_ref5 => {
199
234
  let {
200
235
  id
201
- } = _ref4;
236
+ } = _ref5;
202
237
  return id === item.id;
203
238
  });
204
239
  const currentItem = newValue[index];
@@ -208,7 +243,7 @@ const EntrySelector = reactIntl.createWithIntlProvider({
208
243
  return newValue;
209
244
  });
210
245
  }
211
- }) : defaultItem));
246
+ }) : defaultItem), removeOption));
212
247
  }))) : /*#__PURE__*/React__default["default"].createElement(antd.Flex, {
213
248
  className: style['list'],
214
249
  justify: "center",
@@ -224,6 +259,9 @@ const EntrySelector = reactIntl.createWithIntlProvider({
224
259
  className: style['list-header-title']
225
260
  }, listTitle || typeof renderListTitle === 'function' && renderListTitle({
226
261
  fetchApi,
262
+ defaultTitle: formatMessage({
263
+ id: 'list'
264
+ }),
227
265
  searchProps,
228
266
  setSearchProps
229
267
  }) || formatMessage({
@@ -241,11 +279,11 @@ const EntrySelector = reactIntl.createWithIntlProvider({
241
279
  }
242
280
  }))), children)));
243
281
  }
244
- }), _ref5 => {
282
+ }), _ref6 => {
245
283
  let {
246
284
  fetchApi,
247
285
  list
248
- } = _ref5;
286
+ } = _ref6;
249
287
  return /*#__PURE__*/React__default["default"].createElement(antd.List, {
250
288
  className: classnames__default["default"](style['list'], style['list-lib']),
251
289
  size: "small",
@@ -263,21 +301,7 @@ const EntrySelector = reactIntl.createWithIntlProvider({
263
301
  return /*#__PURE__*/React__default["default"].createElement(antd.List.Item, {
264
302
  key: item.id,
265
303
  onClick: () => {
266
- onChange(value => {
267
- const newValue = (value || []).slice(0);
268
- const index = newValue.findIndex(_ref6 => {
269
- let {
270
- id
271
- } = _ref6;
272
- return id === item.id;
273
- });
274
- if (index > -1) {
275
- newValue.splice(index, 1);
276
- } else {
277
- newValue.push(Object.assign({}, item));
278
- }
279
- return newValue;
280
- });
304
+ onSelected(item);
281
305
  }
282
306
  }, /*#__PURE__*/React__default["default"].createElement(antd.Checkbox, {
283
307
  checked: (value || []).findIndex(_ref7 => {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/locale/zh-CN.js","../src/locale/en-US.js","../src/index.js"],"sourcesContent":["const locale = {\n add: '添加',\n selected: '已选择',\n list: '列表',\n searchPlaceholder: '请输入关键字'\n};\n\nexport default locale;\n","const locale = {\n add: 'Add',\n selected: 'Selected',\n list: 'List',\n searchPlaceholder: 'Please input keyword'\n};\n\nexport default locale;\n","import React, { useRef, useState } from 'react';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\nimport { ReactSortable } from 'react-sortablejs';\nimport { createWithIntlProvider, useIntl } from '@kne/react-intl';\nimport { MoreOutlined, HolderOutlined } from '@ant-design/icons';\nimport ButtonGroup from '@kne/button-group';\nimport useControllerValue from '@kne/use-control-value';\nimport { FetchScrollLoader } from '@kne/scroll-loader';\nimport classnames from 'classnames';\nimport SearchInput from '@kne/search-input';\nimport { Flex, Button, Row, Col, List, Empty, Checkbox } from 'antd';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar/dist/simplebar.min.css';\nimport '@kne/button-group/dist/index.css';\nimport style from './style.module.scss';\n\nconst EntrySelector = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'entry-selector'\n})(({ onAdd, api, options, selectedTitle, listTitle, renderListTitle, renderSelectedItem, renderItem, renderOptions, getSearchProps, searchPlaceholder, maxScrollerHeight = 800, ...props }) => {\n const [value, onChange] = useControllerValue(props);\n const [searchProps, setSearchProps] = useState({});\n const { formatMessage } = useIntl();\n const ref = useRef(null);\n const selectedMappingRef = useRef(new Map());\n return (\n <Flex\n vertical\n gap={8}\n className={style['entry-selector']}\n style={{\n '--max-scroller-height': `${maxScrollerHeight}px`\n }}\n >\n {typeof onAdd === 'function' && (\n <Flex>\n <Button\n shape=\"round\"\n size=\"small\"\n type=\"primary\"\n onClick={() => {\n onAdd({ fetchApi: ref.current, value, onChange });\n }}\n >\n {formatMessage({ id: 'add' })}\n </Button>\n </Flex>\n )}\n <FetchScrollLoader\n {...props}\n completeTips={null}\n searchProps={searchProps}\n getSearchProps={getSearchProps}\n api={api}\n ref={ref}\n className={style['list-scroll']}\n autoHide={false}\n render={({ fetchApi, children }) => {\n const { data } = fetchApi;\n const { pageData, totalCount } = Object.assign(\n {},\n {\n pageData: [],\n totalCount: 0\n },\n data\n );\n pageData.forEach(item => {\n selectedMappingRef.current.set(item.id, item);\n });\n const listMapping = selectedMappingRef.current;\n const currentList = (value || []).map(item => Object.assign({}, listMapping.get(item.id) || item));\n return (\n <Row gutter={[12, 12]}>\n <Col span={12}>\n <div className={style['list-outer']}>\n {totalCount > 0 && <div className={style['list-header']}>{selectedTitle || formatMessage({ id: 'selected' })}</div>}\n <SimpleBar className={style['list-scroll']} autoHide={false}>\n {value && value.length > 0 ? (\n <List className={style['list']} size=\"small\">\n <ReactSortable\n filter=\".ignore-elements\"\n dragClass={style['sortable-drag']}\n ghostClass={style['sortable-ghost']}\n forceFallback\n animation={300}\n delayOnTouchStart\n delay={2}\n list={currentList}\n setList={list => {\n onChange(value => {\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return list.map(({ id }) => {\n return mapping.get(id);\n });\n });\n }}\n >\n {currentList.map((item, index) => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return (\n <List.Item key={item.id} className={classnames(style['columns-control-content-item'], style['is-drag'])}>\n <HolderOutlined className={style['columns-control-content-item-icon']} />\n <div className={style['list-index']}>{index + 1}</div>\n <Flex vertical flex={1}>\n {typeof renderSelectedItem === 'function'\n ? renderSelectedItem(mapping.get(item.id), {\n el: defaultItem,\n target: item,\n fetchApi,\n searchProps,\n setSearchProps,\n onChange: targetItem => {\n return onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n const currentItem = newValue[index];\n if (index > -1) {\n newValue.splice(index, 1, Object.assign({}, typeof targetItem === 'function' ? targetItem(currentItem) : targetItem));\n }\n return newValue;\n });\n }\n })\n : defaultItem}\n </Flex>\n </List.Item>\n );\n })}\n </ReactSortable>\n </List>\n ) : (\n <Flex className={style['list']} justify=\"center\" align=\"center\">\n <Empty />\n </Flex>\n )}\n </SimpleBar>\n </div>\n </Col>\n <Col span={12}>\n <div className={style['list-outer']}>\n <Flex className={style['list-header']} justify=\"space-between\">\n <div className={style['list-header-title']}>\n {listTitle ||\n (typeof renderListTitle === 'function' &&\n renderListTitle({\n fetchApi,\n searchProps,\n setSearchProps\n })) ||\n formatMessage({ id: 'list' })}\n </div>\n <div>\n {typeof getSearchProps === 'function' && (\n <SearchInput\n size=\"small\"\n placeholder={searchPlaceholder || formatMessage({ id: 'searchPlaceholder' })}\n value={searchProps.searchText}\n onSearch={value => {\n setSearchProps(searchProps => Object.assign({}, searchProps, { searchText: value }));\n }}\n />\n )}\n </div>\n </Flex>\n {children}\n </div>\n </Col>\n </Row>\n );\n }}\n >\n {({ fetchApi, list }) => {\n return (\n <List\n className={classnames(style['list'], style['list-lib'])}\n size=\"small\"\n dataSource={list}\n renderItem={item => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const targetOptions =\n typeof renderOptions === 'function'\n ? renderOptions(item, {\n searchProps,\n setSearchProps,\n fetchApi,\n options\n })\n : options;\n return (\n <List.Item\n key={item.id}\n onClick={() => {\n onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n if (index > -1) {\n newValue.splice(index, 1);\n } else {\n newValue.push(Object.assign({}, item));\n }\n\n return newValue;\n });\n }}\n >\n <Checkbox checked={(value || []).findIndex(({ id }) => id === item.id) > -1} />\n <Flex vertical flex={1}>\n {typeof renderItem === 'function'\n ? renderItem(item, {\n fetchApi,\n el: defaultItem,\n searchProps,\n setSearchProps\n })\n : defaultItem}\n </Flex>\n {targetOptions && (\n <Flex\n flex={'0 0 50px'}\n onClick={e => {\n e.stopPropagation();\n }}\n >\n <ButtonGroup more={<Button type=\"link\" icon={<MoreOutlined />} />} list={targetOptions} />\n </Flex>\n )}\n </List.Item>\n );\n }}\n />\n );\n }}\n </FetchScrollLoader>\n </Flex>\n );\n});\n\nexport default EntrySelector;\n"],"names":["locale","add","selected","list","searchPlaceholder","EntrySelector","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","_ref","onAdd","api","options","selectedTitle","listTitle","renderListTitle","renderSelectedItem","renderItem","renderOptions","getSearchProps","maxScrollerHeight","props","_objectWithoutPropertiesLoose","_excluded","value","onChange","useControllerValue","searchProps","setSearchProps","useState","formatMessage","useIntl","ref","useRef","selectedMappingRef","Map","React","createElement","Flex","vertical","gap","className","style","Button","shape","size","type","onClick","fetchApi","current","id","FetchScrollLoader","_extends","completeTips","autoHide","render","_ref2","children","data","pageData","totalCount","Object","assign","forEach","item","set","listMapping","currentList","map","get","Row","gutter","Col","span","SimpleBar","length","List","ReactSortable","filter","dragClass","ghostClass","forceFallback","animation","delayOnTouchStart","delay","setList","mapping","_ref3","index","defaultItem","title","Item","key","classnames","HolderOutlined","flex","el","target","targetItem","newValue","slice","findIndex","_ref4","currentItem","splice","justify","align","Empty","SearchInput","placeholder","searchText","onSearch","_ref5","dataSource","targetOptions","_ref6","push","Checkbox","checked","_ref7","e","stopPropagation","ButtonGroup","more","icon","MoreOutlined"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAMA,QAAM,GAAG;AACbC,EAAAA,GAAG,EAAE,IAAI;AACTC,EAAAA,QAAQ,EAAE,KAAK;AACfC,EAAAA,IAAI,EAAE,IAAI;AACVC,EAAAA,iBAAiB,EAAE,QAAA;AACrB,CAAC;;ACLD,MAAMJ,MAAM,GAAG;AACbC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,iBAAiB,EAAE,sBAAA;AACrB,CAAC;;;;;ACYKC,MAAAA,aAAa,GAAGC,gCAAsB,CAAC;AAC3CC,EAAAA,aAAa,EAAE,OAAO;AACtBC,EAAAA,QAAQ,EAAE;AACR,IAAA,OAAO,EAAEC,QAAI;AACb,IAAA,OAAO,EAAEC,MAAAA;GACV;AACDC,EAAAA,SAAS,EAAE,gBAAA;AACb,CAAC,CAAC,CAACC,IAAA,IAA6L;EAAA,IAA5L;MAAEC,KAAK;MAAEC,GAAG;MAAEC,OAAO;MAAEC,aAAa;MAAEC,SAAS;MAAEC,eAAe;MAAEC,kBAAkB;MAAEC,UAAU;MAAEC,aAAa;MAAEC,cAAc;MAAElB,iBAAiB;AAAEmB,MAAAA,iBAAiB,GAAG,GAAA;AAAc,KAAC,GAAAX,IAAA;AAAPY,IAAAA,KAAK,GAAAC,6BAAA,CAAAb,IAAA,EAAAc,SAAA,CAAA,CAAA;EACvL,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,sCAAkB,CAACL,KAAK,CAAC,CAAA;EACnD,MAAM,CAACM,WAAW,EAAEC,cAAc,CAAC,GAAGC,cAAQ,CAAC,EAAE,CAAC,CAAA;EAClD,MAAM;AAAEC,IAAAA,aAAAA;GAAe,GAAGC,iBAAO,EAAE,CAAA;AACnC,EAAA,MAAMC,GAAG,GAAGC,YAAM,CAAC,IAAI,CAAC,CAAA;EACxB,MAAMC,kBAAkB,GAAGD,YAAM,CAAC,IAAIE,GAAG,EAAE,CAAC,CAAA;AAC5C,EAAA,oBACEC,yBAAA,CAAAC,aAAA,CAACC,SAAI,EAAA;IACHC,QAAQ,EAAA,IAAA;AACRC,IAAAA,GAAG,EAAE,CAAE;AACPC,IAAAA,SAAS,EAAEC,KAAK,CAAC,gBAAgB,CAAE;AACnCA,IAAAA,KAAK,EAAE;AACL,MAAA,uBAAuB,EAAKtB,iBAAiB,GAAA,IAAA;AAC/C,KAAA;AAAE,GAAA,EAED,OAAOV,KAAK,KAAK,UAAU,iBAC1B0B,yBAAA,CAAAC,aAAA,CAACC,SAAI,EACHF,IAAAA,eAAAA,yBAAA,CAAAC,aAAA,CAACM,WAAM,EAAA;AACLC,IAAAA,KAAK,EAAC,OAAO;AACbC,IAAAA,IAAI,EAAC,OAAO;AACZC,IAAAA,IAAI,EAAC,SAAS;IACdC,OAAO,EAAEA,MAAM;AACbrC,MAAAA,KAAK,CAAC;QAAEsC,QAAQ,EAAEhB,GAAG,CAACiB,OAAO;QAAEzB,KAAK;AAAEC,QAAAA,QAAAA;AAAS,OAAC,CAAC,CAAA;AACnD,KAAA;AAAE,GAAA,EAEDK,aAAa,CAAC;AAAEoB,IAAAA,EAAE,EAAE,KAAA;AAAM,GAAC,CACtB,CACJ,CACP,eACDd,yBAAA,CAAAC,aAAA,CAACc,8BAAiB,EAAAC,QAAA,CAAA,EAAA,EACZ/B,KAAK,EAAA;AACTgC,IAAAA,YAAY,EAAE,IAAK;AACnB1B,IAAAA,WAAW,EAAEA,WAAY;AACzBR,IAAAA,cAAc,EAAEA,cAAe;AAC/BR,IAAAA,GAAG,EAAEA,GAAI;AACTqB,IAAAA,GAAG,EAAEA,GAAI;AACTS,IAAAA,SAAS,EAAEC,KAAK,CAAC,aAAa,CAAE;AAChCY,IAAAA,QAAQ,EAAE,KAAM;IAChBC,MAAM,EAAEC,KAAA,IAA4B;MAAA,IAA3B;QAAER,QAAQ;AAAES,QAAAA,QAAAA;AAAS,OAAC,GAAAD,KAAA,CAAA;MAC7B,MAAM;AAAEE,QAAAA,IAAAA;AAAK,OAAC,GAAGV,QAAQ,CAAA;MACzB,MAAM;QAAEW,QAAQ;AAAEC,QAAAA,UAAAA;AAAW,OAAC,GAAGC,MAAM,CAACC,MAAM,CAC5C,EAAE,EACF;AACEH,QAAAA,QAAQ,EAAE,EAAE;AACZC,QAAAA,UAAU,EAAE,CAAA;OACb,EACDF,IACF,CAAC,CAAA;AACDC,MAAAA,QAAQ,CAACI,OAAO,CAACC,IAAI,IAAI;QACvB9B,kBAAkB,CAACe,OAAO,CAACgB,GAAG,CAACD,IAAI,CAACd,EAAE,EAAEc,IAAI,CAAC,CAAA;AAC/C,OAAC,CAAC,CAAA;AACF,MAAA,MAAME,WAAW,GAAGhC,kBAAkB,CAACe,OAAO,CAAA;AAC9C,MAAA,MAAMkB,WAAW,GAAG,CAAC3C,KAAK,IAAI,EAAE,EAAE4C,GAAG,CAACJ,IAAI,IAAIH,MAAM,CAACC,MAAM,CAAC,EAAE,EAAEI,WAAW,CAACG,GAAG,CAACL,IAAI,CAACd,EAAE,CAAC,IAAIc,IAAI,CAAC,CAAC,CAAA;AAClG,MAAA,oBACE5B,yBAAA,CAAAC,aAAA,CAACiC,QAAG,EAAA;AAACC,QAAAA,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAA;AAAE,OAAA,eACpBnC,yBAAA,CAAAC,aAAA,CAACmC,QAAG,EAAA;AAACC,QAAAA,IAAI,EAAE,EAAA;OACTrC,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;QAAKI,SAAS,EAAEC,KAAK,CAAC,YAAY,CAAA;AAAE,OAAA,EACjCkB,UAAU,GAAG,CAAC,iBAAIxB,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;QAAKI,SAAS,EAAEC,KAAK,CAAC,aAAa,CAAA;OAAI7B,EAAAA,aAAa,IAAIiB,aAAa,CAAC;AAAEoB,QAAAA,EAAE,EAAE,UAAA;AAAW,OAAC,CAAO,CAAC,eACnHd,yBAAA,CAAAC,aAAA,CAACqC,6BAAS,EAAA;AAACjC,QAAAA,SAAS,EAAEC,KAAK,CAAC,aAAa,CAAE;AAACY,QAAAA,QAAQ,EAAE,KAAA;AAAM,OAAA,EACzD9B,KAAK,IAAIA,KAAK,CAACmD,MAAM,GAAG,CAAC,gBACxBvC,yBAAA,CAAAC,aAAA,CAACuC,SAAI,EAAA;AAACnC,QAAAA,SAAS,EAAEC,KAAK,CAAC,MAAM,CAAE;AAACG,QAAAA,IAAI,EAAC,OAAA;AAAO,OAAA,eAC1CT,yBAAA,CAAAC,aAAA,CAACwC,6BAAa,EAAA;AACZC,QAAAA,MAAM,EAAC,kBAAkB;AACzBC,QAAAA,SAAS,EAAErC,KAAK,CAAC,eAAe,CAAE;AAClCsC,QAAAA,UAAU,EAAEtC,KAAK,CAAC,gBAAgB,CAAE;QACpCuC,aAAa,EAAA,IAAA;AACbC,QAAAA,SAAS,EAAE,GAAI;QACfC,iBAAiB,EAAA,IAAA;AACjBC,QAAAA,KAAK,EAAE,CAAE;AACTpF,QAAAA,IAAI,EAAEmE,WAAY;QAClBkB,OAAO,EAAErF,IAAI,IAAI;UACfyB,QAAQ,CAACD,KAAK,IAAI;YAChB,MAAM8D,OAAO,GAAG,IAAInD,GAAG,CAAC,CAACX,KAAK,IAAI,EAAE,EAAE4C,GAAG,CAACJ,IAAI,IAAI,CAACA,IAAI,CAACd,EAAE,EAAEc,IAAI,CAAC,CAAC,CAAC,CAAA;AACnE,YAAA,OAAOhE,IAAI,CAACoE,GAAG,CAACmB,KAAA,IAAY;cAAA,IAAX;AAAErC,gBAAAA,EAAAA;AAAG,eAAC,GAAAqC,KAAA,CAAA;AACrB,cAAA,OAAOD,OAAO,CAACjB,GAAG,CAACnB,EAAE,CAAC,CAAA;AACxB,aAAC,CAAC,CAAA;AACJ,WAAC,CAAC,CAAA;AACJ,SAAA;OAECiB,EAAAA,WAAW,CAACC,GAAG,CAAC,CAACJ,IAAI,EAAEwB,KAAK,KAAK;AAChC,QAAA,MAAMC,WAAW,gBAAGrD,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMI,UAAAA,SAAS,EAAE,iBAAA;SAAoBuB,EAAAA,IAAI,CAAC0B,KAAY,CAAC,CAAA;QAC3E,MAAMJ,OAAO,GAAG,IAAInD,GAAG,CAAC,CAACX,KAAK,IAAI,EAAE,EAAE4C,GAAG,CAACJ,IAAI,IAAI,CAACA,IAAI,CAACd,EAAE,EAAEc,IAAI,CAAC,CAAC,CAAC,CAAA;AACnE,QAAA,oBACE5B,yBAAA,CAAAC,aAAA,CAACuC,SAAI,CAACe,IAAI,EAAA;UAACC,GAAG,EAAE5B,IAAI,CAACd,EAAG;UAACT,SAAS,EAAEoD,8BAAU,CAACnD,KAAK,CAAC,8BAA8B,CAAC,EAAEA,KAAK,CAAC,SAAS,CAAC,CAAA;AAAE,SAAA,eACtGN,yBAAA,CAAAC,aAAA,CAACyD,oBAAc,EAAA;UAACrD,SAAS,EAAEC,KAAK,CAAC,mCAAmC,CAAA;AAAE,SAAE,CAAC,eACzEN,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;UAAKI,SAAS,EAAEC,KAAK,CAAC,YAAY,CAAA;SAAI8C,EAAAA,KAAK,GAAG,CAAO,CAAC,eACtDpD,yBAAA,CAAAC,aAAA,CAACC,SAAI,EAAA;UAACC,QAAQ,EAAA,IAAA;AAACwD,UAAAA,IAAI,EAAE,CAAA;AAAE,SAAA,EACpB,OAAO/E,kBAAkB,KAAK,UAAU,GACrCA,kBAAkB,CAACsE,OAAO,CAACjB,GAAG,CAACL,IAAI,CAACd,EAAE,CAAC,EAAE;AACvC8C,UAAAA,EAAE,EAAEP,WAAW;AACfQ,UAAAA,MAAM,EAAEjC,IAAI;UACZhB,QAAQ;UACRrB,WAAW;UACXC,cAAc;UACdH,QAAQ,EAAEyE,UAAU,IAAI;YACtB,OAAOzE,QAAQ,CAACD,KAAK,IAAI;cACvB,MAAM2E,QAAQ,GAAG,CAAC3E,KAAK,IAAI,EAAE,EAAE4E,KAAK,CAAC,CAAC,CAAC,CAAA;AACvC,cAAA,MAAMZ,KAAK,GAAGW,QAAQ,CAACE,SAAS,CAACC,KAAA,IAAA;gBAAA,IAAC;AAAEpD,kBAAAA,EAAAA;AAAG,iBAAC,GAAAoD,KAAA,CAAA;AAAA,gBAAA,OAAKpD,EAAE,KAAKc,IAAI,CAACd,EAAE,CAAA;eAAC,CAAA,CAAA;AAC5D,cAAA,MAAMqD,WAAW,GAAGJ,QAAQ,CAACX,KAAK,CAAC,CAAA;AACnC,cAAA,IAAIA,KAAK,GAAG,CAAC,CAAC,EAAE;gBACdW,QAAQ,CAACK,MAAM,CAAChB,KAAK,EAAE,CAAC,EAAE3B,MAAM,CAACC,MAAM,CAAC,EAAE,EAAE,OAAOoC,UAAU,KAAK,UAAU,GAAGA,UAAU,CAACK,WAAW,CAAC,GAAGL,UAAU,CAAC,CAAC,CAAA;AACvH,eAAA;AACA,cAAA,OAAOC,QAAQ,CAAA;AACjB,aAAC,CAAC,CAAA;AACJ,WAAA;AACF,SAAC,CAAC,GACFV,WACA,CACG,CAAC,CAAA;OAEf,CACY,CACX,CAAC,gBAEPrD,yBAAA,CAAAC,aAAA,CAACC,SAAI,EAAA;AAACG,QAAAA,SAAS,EAAEC,KAAK,CAAC,MAAM,CAAE;AAAC+D,QAAAA,OAAO,EAAC,QAAQ;AAACC,QAAAA,KAAK,EAAC,QAAA;AAAQ,OAAA,eAC7DtE,yBAAA,CAAAC,aAAA,CAACsE,UAAK,MAAE,CACJ,CAEC,CACR,CACF,CAAC,eACNvE,yBAAA,CAAAC,aAAA,CAACmC,QAAG,EAAA;AAACC,QAAAA,IAAI,EAAE,EAAA;OACTrC,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;QAAKI,SAAS,EAAEC,KAAK,CAAC,YAAY,CAAA;AAAE,OAAA,eAClCN,yBAAA,CAAAC,aAAA,CAACC,SAAI,EAAA;AAACG,QAAAA,SAAS,EAAEC,KAAK,CAAC,aAAa,CAAE;AAAC+D,QAAAA,OAAO,EAAC,eAAA;OAC7CrE,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;QAAKI,SAAS,EAAEC,KAAK,CAAC,mBAAmB,CAAA;OACtC5B,EAAAA,SAAS,IACP,OAAOC,eAAe,KAAK,UAAU,IACpCA,eAAe,CAAC;QACdiC,QAAQ;QACRrB,WAAW;AACXC,QAAAA,cAAAA;OACD,CAAE,IACLE,aAAa,CAAC;AAAEoB,QAAAA,EAAE,EAAE,MAAA;AAAO,OAAC,CAC3B,CAAC,eACNd,yBAAA,CAAAC,aAAA,CACG,KAAA,EAAA,IAAA,EAAA,OAAOlB,cAAc,KAAK,UAAU,iBACnCiB,yBAAA,CAAAC,aAAA,CAACuE,+BAAW,EAAA;AACV/D,QAAAA,IAAI,EAAC,OAAO;AACZgE,QAAAA,WAAW,EAAE5G,iBAAiB,IAAI6B,aAAa,CAAC;AAAEoB,UAAAA,EAAE,EAAE,mBAAA;AAAoB,SAAC,CAAE;QAC7E1B,KAAK,EAAEG,WAAW,CAACmF,UAAW;QAC9BC,QAAQ,EAAEvF,KAAK,IAAI;UACjBI,cAAc,CAACD,WAAW,IAAIkC,MAAM,CAACC,MAAM,CAAC,EAAE,EAAEnC,WAAW,EAAE;AAAEmF,YAAAA,UAAU,EAAEtF,KAAAA;AAAM,WAAC,CAAC,CAAC,CAAA;AACtF,SAAA;AAAE,OACH,CAEA,CACD,CAAC,EACNiC,QACE,CACF,CACF,CAAC,CAAA;AAEV,KAAA;AAAE,GAAA,CAAA,EAEDuD,KAAA,IAAwB;IAAA,IAAvB;MAAEhE,QAAQ;AAAEhD,MAAAA,IAAAA;AAAK,KAAC,GAAAgH,KAAA,CAAA;AAClB,IAAA,oBACE5E,yBAAA,CAAAC,aAAA,CAACuC,SAAI,EAAA;AACHnC,MAAAA,SAAS,EAAEoD,8BAAU,CAACnD,KAAK,CAAC,MAAM,CAAC,EAAEA,KAAK,CAAC,UAAU,CAAC,CAAE;AACxDG,MAAAA,IAAI,EAAC,OAAO;AACZoE,MAAAA,UAAU,EAAEjH,IAAK;MACjBiB,UAAU,EAAE+C,IAAI,IAAI;AAClB,QAAA,MAAMyB,WAAW,gBAAGrD,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMI,UAAAA,SAAS,EAAE,iBAAA;SAAoBuB,EAAAA,IAAI,CAAC0B,KAAY,CAAC,CAAA;QAC3E,MAAMwB,aAAa,GACjB,OAAOhG,aAAa,KAAK,UAAU,GAC/BA,aAAa,CAAC8C,IAAI,EAAE;UAClBrC,WAAW;UACXC,cAAc;UACdoB,QAAQ;AACRpC,UAAAA,OAAAA;SACD,CAAC,GACFA,OAAO,CAAA;AACb,QAAA,oBACEwB,yBAAA,CAAAC,aAAA,CAACuC,SAAI,CAACe,IAAI,EAAA;UACRC,GAAG,EAAE5B,IAAI,CAACd,EAAG;UACbH,OAAO,EAAEA,MAAM;YACbtB,QAAQ,CAACD,KAAK,IAAI;cAChB,MAAM2E,QAAQ,GAAG,CAAC3E,KAAK,IAAI,EAAE,EAAE4E,KAAK,CAAC,CAAC,CAAC,CAAA;AACvC,cAAA,MAAMZ,KAAK,GAAGW,QAAQ,CAACE,SAAS,CAACc,KAAA,IAAA;gBAAA,IAAC;AAAEjE,kBAAAA,EAAAA;AAAG,iBAAC,GAAAiE,KAAA,CAAA;AAAA,gBAAA,OAAKjE,EAAE,KAAKc,IAAI,CAACd,EAAE,CAAA;eAAC,CAAA,CAAA;AAC5D,cAAA,IAAIsC,KAAK,GAAG,CAAC,CAAC,EAAE;AACdW,gBAAAA,QAAQ,CAACK,MAAM,CAAChB,KAAK,EAAE,CAAC,CAAC,CAAA;AAC3B,eAAC,MAAM;AACLW,gBAAAA,QAAQ,CAACiB,IAAI,CAACvD,MAAM,CAACC,MAAM,CAAC,EAAE,EAAEE,IAAI,CAAC,CAAC,CAAA;AACxC,eAAA;AAEA,cAAA,OAAOmC,QAAQ,CAAA;AACjB,aAAC,CAAC,CAAA;AACJ,WAAA;AAAE,SAAA,eAEF/D,yBAAA,CAAAC,aAAA,CAACgF,aAAQ,EAAA;UAACC,OAAO,EAAE,CAAC9F,KAAK,IAAI,EAAE,EAAE6E,SAAS,CAACkB,KAAA,IAAA;YAAA,IAAC;AAAErE,cAAAA,EAAAA;AAAG,aAAC,GAAAqE,KAAA,CAAA;AAAA,YAAA,OAAKrE,EAAE,KAAKc,IAAI,CAACd,EAAE,CAAA;AAAA,WAAA,CAAC,GAAG,CAAC,CAAA;AAAE,SAAE,CAAC,eAC/Ed,yBAAA,CAAAC,aAAA,CAACC,SAAI,EAAA;UAACC,QAAQ,EAAA,IAAA;AAACwD,UAAAA,IAAI,EAAE,CAAA;SAClB,EAAA,OAAO9E,UAAU,KAAK,UAAU,GAC7BA,UAAU,CAAC+C,IAAI,EAAE;UACfhB,QAAQ;AACRgD,UAAAA,EAAE,EAAEP,WAAW;UACf9D,WAAW;AACXC,UAAAA,cAAAA;SACD,CAAC,GACF6D,WACA,CAAC,EACNyB,aAAa,iBACZ9E,yBAAA,CAAAC,aAAA,CAACC,SAAI,EAAA;AACHyD,UAAAA,IAAI,EAAE,UAAW;UACjBhD,OAAO,EAAEyE,CAAC,IAAI;YACZA,CAAC,CAACC,eAAe,EAAE,CAAA;AACrB,WAAA;AAAE,SAAA,eAEFrF,yBAAA,CAAAC,aAAA,CAACqF,+BAAW,EAAA;AAACC,UAAAA,IAAI,eAAEvF,yBAAA,CAAAC,aAAA,CAACM,WAAM,EAAA;AAACG,YAAAA,IAAI,EAAC,MAAM;AAAC8E,YAAAA,IAAI,eAAExF,yBAAA,CAAAC,aAAA,CAACwF,kBAAY,EAAE,IAAA,CAAA;AAAE,WAAE,CAAE;AAAC7H,UAAAA,IAAI,EAAEkH,aAAAA;SAAgB,CACrF,CAEC,CAAC,CAAA;AAEhB,OAAA;AAAE,KACH,CAAC,CAAA;AAEN,GACiB,CACf,CAAC,CAAA;AAEX,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/locale/zh-CN.js","../src/locale/en-US.js","../src/index.js"],"sourcesContent":["const locale = {\n add: '添加',\n selected: '已选择',\n list: '列表',\n searchPlaceholder: '请输入关键字'\n};\n\nexport default locale;\n","const locale = {\n add: 'Add',\n selected: 'Selected',\n list: 'List',\n searchPlaceholder: 'Please input keyword'\n};\n\nexport default locale;\n","import React, { useRef, useState } from 'react';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\nimport { ReactSortable } from 'react-sortablejs';\nimport { createWithIntlProvider, useIntl } from '@kne/react-intl';\nimport { MoreOutlined, HolderOutlined, DeleteOutlined } from '@ant-design/icons';\nimport ButtonGroup, { ConfirmButton } from '@kne/button-group';\nimport useControllerValue from '@kne/use-control-value';\nimport { FetchScrollLoader } from '@kne/scroll-loader';\nimport classnames from 'classnames';\nimport SearchInput from '@kne/search-input';\nimport { Flex, Button, Row, Col, List, Empty, Checkbox } from 'antd';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar/dist/simplebar.min.css';\nimport '@kne/button-group/dist/index.css';\nimport style from './style.module.scss';\n\nconst EntrySelector = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'entry-selector'\n})(({ onAdd, api, options, selectedTitle, listTitle, renderListTitle, renderSelectedItem, renderItem, renderOptions, getSearchProps, searchPlaceholder, maxScrollerHeight = 800, ...props }) => {\n const [value, onChange] = useControllerValue(props);\n const [searchProps, setSearchProps] = useState({});\n const { formatMessage } = useIntl();\n const ref = useRef(null);\n const selectedMappingRef = useRef(new Map());\n const onSelected = item => {\n return onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n if (index > -1) {\n newValue.splice(index, 1);\n } else {\n newValue.push(Object.assign({}, item));\n }\n\n return newValue;\n });\n };\n\n return (\n <Flex\n vertical\n gap={8}\n className={style['entry-selector']}\n style={{\n '--max-scroller-height': `${maxScrollerHeight}px`\n }}\n >\n {typeof onAdd === 'function' && (\n <Flex>\n <Button\n shape=\"round\"\n size=\"small\"\n type=\"primary\"\n onClick={() => {\n onAdd({ fetchApi: ref.current, value, onChange });\n }}\n >\n {formatMessage({ id: 'add' })}\n </Button>\n </Flex>\n )}\n <FetchScrollLoader\n {...props}\n completeTips={null}\n searchProps={searchProps}\n getSearchProps={getSearchProps}\n api={api}\n ref={ref}\n className={style['list-scroll']}\n autoHide={false}\n render={({ fetchApi, children }) => {\n const { data } = fetchApi;\n const { pageData, totalCount } = Object.assign(\n {},\n {\n pageData: [],\n totalCount: 0\n },\n data\n );\n pageData.forEach(item => {\n selectedMappingRef.current.set(item.id, item);\n });\n const listMapping = selectedMappingRef.current;\n const currentList = (value || []).map(item => Object.assign({}, listMapping.get(item.id) || item));\n return (\n <Row gutter={[12, 12]}>\n <Col span={12}>\n <div className={style['list-outer']}>\n {totalCount > 0 && <div className={style['list-header']}>{selectedTitle || formatMessage({ id: 'selected' })}</div>}\n <SimpleBar className={style['list-scroll']} autoHide={false}>\n {value && value.length > 0 ? (\n <List className={style['list']} size=\"small\">\n <ReactSortable\n filter=\".sortable-ignore-elements\"\n handle=\".sortable-drag-handle\"\n dragClass={style['sortable-drag']}\n ghostClass={style['sortable-ghost']}\n forceFallback\n animation={300}\n delayOnTouchStart\n delay={2}\n list={currentList}\n setList={list => {\n onChange(value => {\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return list.map(({ id }) => {\n return mapping.get(id);\n });\n });\n }}\n >\n {currentList.map((item, index) => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const removeOption = (\n <ConfirmButton\n color=\"danger\"\n variant=\"filled\"\n className={'list-item-remove-btn'}\n icon={<DeleteOutlined />}\n onClick={() => {\n onSelected(item);\n }}\n />\n );\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return (\n <List.Item key={item.id} className={classnames(style['columns-control-content-item'], style['is-drag'])}>\n <HolderOutlined className={classnames('sortable-drag-handle', style['columns-control-content-item-icon'])} />\n <div className={style['list-index']}>{index + 1}</div>\n <Flex justify=\"space-between\" gap={8} flex={1} className={style['list-item-content']}>\n <Flex vertical flex={1}>\n {typeof renderSelectedItem === 'function'\n ? renderSelectedItem(mapping.get(item.id), {\n el: defaultItem,\n removeOptionEl: removeOption,\n target: item,\n fetchApi,\n searchProps,\n setSearchProps,\n onChange,\n onSelected,\n onReplace: targetItem => {\n return onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n const currentItem = newValue[index];\n if (index > -1) {\n newValue.splice(index, 1, Object.assign({}, typeof targetItem === 'function' ? targetItem(currentItem) : targetItem));\n }\n return newValue;\n });\n }\n })\n : defaultItem}\n </Flex>\n {removeOption}\n </Flex>\n </List.Item>\n );\n })}\n </ReactSortable>\n </List>\n ) : (\n <Flex className={style['list']} justify=\"center\" align=\"center\">\n <Empty />\n </Flex>\n )}\n </SimpleBar>\n </div>\n </Col>\n <Col span={12}>\n <div className={style['list-outer']}>\n <Flex className={style['list-header']} justify=\"space-between\">\n <div className={style['list-header-title']}>\n {listTitle ||\n (typeof renderListTitle === 'function' &&\n renderListTitle({\n fetchApi,\n defaultTitle: formatMessage({ id: 'list' }),\n searchProps,\n setSearchProps\n })) ||\n formatMessage({ id: 'list' })}\n </div>\n <div>\n {typeof getSearchProps === 'function' && (\n <SearchInput\n size=\"small\"\n placeholder={searchPlaceholder || formatMessage({ id: 'searchPlaceholder' })}\n value={searchProps.searchText}\n onSearch={value => {\n setSearchProps(searchProps => Object.assign({}, searchProps, { searchText: value }));\n }}\n />\n )}\n </div>\n </Flex>\n {children}\n </div>\n </Col>\n </Row>\n );\n }}\n >\n {({ fetchApi, list }) => {\n return (\n <List\n className={classnames(style['list'], style['list-lib'])}\n size=\"small\"\n dataSource={list}\n renderItem={item => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const targetOptions =\n typeof renderOptions === 'function'\n ? renderOptions(item, {\n searchProps,\n setSearchProps,\n fetchApi,\n options\n })\n : options;\n return (\n <List.Item\n key={item.id}\n onClick={() => {\n onSelected(item);\n }}\n >\n <Checkbox checked={(value || []).findIndex(({ id }) => id === item.id) > -1} />\n <Flex vertical flex={1}>\n {typeof renderItem === 'function'\n ? renderItem(item, {\n fetchApi,\n el: defaultItem,\n searchProps,\n setSearchProps\n })\n : defaultItem}\n </Flex>\n {targetOptions && (\n <Flex\n flex={'0 0 50px'}\n onClick={e => {\n e.stopPropagation();\n }}\n >\n <ButtonGroup more={<Button type=\"link\" icon={<MoreOutlined />} />} list={targetOptions} />\n </Flex>\n )}\n </List.Item>\n );\n }}\n />\n );\n }}\n </FetchScrollLoader>\n </Flex>\n );\n});\n\nexport default EntrySelector;\n"],"names":["locale","add","selected","list","searchPlaceholder","EntrySelector","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","_ref","onAdd","api","options","selectedTitle","listTitle","renderListTitle","renderSelectedItem","renderItem","renderOptions","getSearchProps","maxScrollerHeight","props","_objectWithoutPropertiesLoose","_excluded","value","onChange","useControllerValue","searchProps","setSearchProps","useState","formatMessage","useIntl","ref","useRef","selectedMappingRef","Map","onSelected","item","newValue","slice","index","findIndex","_ref2","id","splice","push","Object","assign","React","createElement","Flex","vertical","gap","className","style","Button","shape","size","type","onClick","fetchApi","current","FetchScrollLoader","_extends","completeTips","autoHide","render","_ref3","children","data","pageData","totalCount","forEach","set","listMapping","currentList","map","get","Row","gutter","Col","span","SimpleBar","length","List","ReactSortable","filter","handle","dragClass","ghostClass","forceFallback","animation","delayOnTouchStart","delay","setList","mapping","_ref4","defaultItem","title","removeOption","ConfirmButton","color","variant","icon","DeleteOutlined","Item","key","classnames","HolderOutlined","justify","flex","el","removeOptionEl","target","onReplace","targetItem","_ref5","currentItem","align","Empty","defaultTitle","SearchInput","placeholder","searchText","onSearch","_ref6","dataSource","targetOptions","Checkbox","checked","_ref7","e","stopPropagation","ButtonGroup","more","MoreOutlined"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import React, { useState, useRef } from 'react';
2
2
  import { ReactSortable } from 'react-sortablejs';
3
3
  import { createWithIntlProvider, useIntl } from '@kne/react-intl';
4
- import { MoreOutlined, HolderOutlined } from '@ant-design/icons';
5
- import ButtonGroup from '@kne/button-group';
4
+ import { MoreOutlined, HolderOutlined, DeleteOutlined } from '@ant-design/icons';
5
+ import ButtonGroup, { ConfirmButton } from '@kne/button-group';
6
6
  import useControllerValue from '@kne/use-control-value';
7
7
  import { FetchScrollLoader } from '@kne/scroll-loader';
8
8
  import classnames from 'classnames';
@@ -45,7 +45,7 @@ const locale = {
45
45
  searchPlaceholder: 'Please input keyword'
46
46
  };
47
47
 
48
- var style = {"entry-selector":"_TIU4-","list-outer":"_ZXEhy","list-header":"_HAF3g","list-scroll":"_VO7i-","list":"_8w58c","list-lib":"_9m0I0","list-index":"_P8KYX","columns-control-content-list":"_agPfO","columns-control-content-item":"_iFzfk","is-drag":"_uB1q2","columns-control-content-item-icon":"_WHlyH","sortable-drag":"_dxhFH","sortable-ghost":"_7ZIH8"};
48
+ var style = {"entry-selector":"_TIU4-","list-outer":"_ZXEhy","list-header":"_HAF3g","list-scroll":"_VO7i-","list":"_8w58c","list-lib":"_9m0I0","list-index":"_P8KYX","list-item-content":"_VXH4S","columns-control-content-list":"_agPfO","columns-control-content-item":"_iFzfk","is-drag":"_uB1q2","columns-control-content-item-icon":"_WHlyH","sortable-drag":"_dxhFH","sortable-ghost":"_7ZIH8"};
49
49
 
50
50
  const _excluded = ["onAdd", "api", "options", "selectedTitle", "listTitle", "renderListTitle", "renderSelectedItem", "renderItem", "renderOptions", "getSearchProps", "searchPlaceholder", "maxScrollerHeight"];
51
51
  const EntrySelector = createWithIntlProvider({
@@ -78,6 +78,20 @@ const EntrySelector = createWithIntlProvider({
78
78
  } = useIntl();
79
79
  const ref = useRef(null);
80
80
  const selectedMappingRef = useRef(new Map());
81
+ const onSelected = item => {
82
+ return onChange(value => {
83
+ const newValue = (value || []).slice(0);
84
+ const index = newValue.findIndex(({
85
+ id
86
+ }) => id === item.id);
87
+ if (index > -1) {
88
+ newValue.splice(index, 1);
89
+ } else {
90
+ newValue.push(Object.assign({}, item));
91
+ }
92
+ return newValue;
93
+ });
94
+ };
81
95
  return /*#__PURE__*/React.createElement(Flex, {
82
96
  vertical: true,
83
97
  gap: 8,
@@ -142,7 +156,8 @@ const EntrySelector = createWithIntlProvider({
142
156
  className: style['list'],
143
157
  size: "small"
144
158
  }, /*#__PURE__*/React.createElement(ReactSortable, {
145
- filter: ".ignore-elements",
159
+ filter: ".sortable-ignore-elements",
160
+ handle: ".sortable-drag-handle",
146
161
  dragClass: style['sortable-drag'],
147
162
  ghostClass: style['sortable-ghost'],
148
163
  forceFallback: true,
@@ -164,24 +179,41 @@ const EntrySelector = createWithIntlProvider({
164
179
  const defaultItem = /*#__PURE__*/React.createElement("span", {
165
180
  className: 'list-item-title'
166
181
  }, item.title);
182
+ const removeOption = /*#__PURE__*/React.createElement(ConfirmButton, {
183
+ color: "danger",
184
+ variant: "filled",
185
+ className: 'list-item-remove-btn',
186
+ icon: /*#__PURE__*/React.createElement(DeleteOutlined, null),
187
+ onClick: () => {
188
+ onSelected(item);
189
+ }
190
+ });
167
191
  const mapping = new Map((value || []).map(item => [item.id, item]));
168
192
  return /*#__PURE__*/React.createElement(List.Item, {
169
193
  key: item.id,
170
194
  className: classnames(style['columns-control-content-item'], style['is-drag'])
171
195
  }, /*#__PURE__*/React.createElement(HolderOutlined, {
172
- className: style['columns-control-content-item-icon']
196
+ className: classnames('sortable-drag-handle', style['columns-control-content-item-icon'])
173
197
  }), /*#__PURE__*/React.createElement("div", {
174
198
  className: style['list-index']
175
199
  }, index + 1), /*#__PURE__*/React.createElement(Flex, {
200
+ justify: "space-between",
201
+ gap: 8,
202
+ flex: 1,
203
+ className: style['list-item-content']
204
+ }, /*#__PURE__*/React.createElement(Flex, {
176
205
  vertical: true,
177
206
  flex: 1
178
207
  }, typeof renderSelectedItem === 'function' ? renderSelectedItem(mapping.get(item.id), {
179
208
  el: defaultItem,
209
+ removeOptionEl: removeOption,
180
210
  target: item,
181
211
  fetchApi,
182
212
  searchProps,
183
213
  setSearchProps,
184
- onChange: targetItem => {
214
+ onChange,
215
+ onSelected,
216
+ onReplace: targetItem => {
185
217
  return onChange(value => {
186
218
  const newValue = (value || []).slice(0);
187
219
  const index = newValue.findIndex(({
@@ -194,7 +226,7 @@ const EntrySelector = createWithIntlProvider({
194
226
  return newValue;
195
227
  });
196
228
  }
197
- }) : defaultItem));
229
+ }) : defaultItem), removeOption));
198
230
  }))) : /*#__PURE__*/React.createElement(Flex, {
199
231
  className: style['list'],
200
232
  justify: "center",
@@ -210,6 +242,9 @@ const EntrySelector = createWithIntlProvider({
210
242
  className: style['list-header-title']
211
243
  }, listTitle || typeof renderListTitle === 'function' && renderListTitle({
212
244
  fetchApi,
245
+ defaultTitle: formatMessage({
246
+ id: 'list'
247
+ }),
213
248
  searchProps,
214
249
  setSearchProps
215
250
  }) || formatMessage({
@@ -248,18 +283,7 @@ const EntrySelector = createWithIntlProvider({
248
283
  return /*#__PURE__*/React.createElement(List.Item, {
249
284
  key: item.id,
250
285
  onClick: () => {
251
- onChange(value => {
252
- const newValue = (value || []).slice(0);
253
- const index = newValue.findIndex(({
254
- id
255
- }) => id === item.id);
256
- if (index > -1) {
257
- newValue.splice(index, 1);
258
- } else {
259
- newValue.push(Object.assign({}, item));
260
- }
261
- return newValue;
262
- });
286
+ onSelected(item);
263
287
  }
264
288
  }, /*#__PURE__*/React.createElement(Checkbox, {
265
289
  checked: (value || []).findIndex(({
@@ -1 +1 @@
1
- {"version":3,"file":"index.modern.js","sources":["../src/locale/zh-CN.js","../src/locale/en-US.js","../src/index.js"],"sourcesContent":["const locale = {\n add: '添加',\n selected: '已选择',\n list: '列表',\n searchPlaceholder: '请输入关键字'\n};\n\nexport default locale;\n","const locale = {\n add: 'Add',\n selected: 'Selected',\n list: 'List',\n searchPlaceholder: 'Please input keyword'\n};\n\nexport default locale;\n","import React, { useRef, useState } from 'react';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\nimport { ReactSortable } from 'react-sortablejs';\nimport { createWithIntlProvider, useIntl } from '@kne/react-intl';\nimport { MoreOutlined, HolderOutlined } from '@ant-design/icons';\nimport ButtonGroup from '@kne/button-group';\nimport useControllerValue from '@kne/use-control-value';\nimport { FetchScrollLoader } from '@kne/scroll-loader';\nimport classnames from 'classnames';\nimport SearchInput from '@kne/search-input';\nimport { Flex, Button, Row, Col, List, Empty, Checkbox } from 'antd';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar/dist/simplebar.min.css';\nimport '@kne/button-group/dist/index.css';\nimport style from './style.module.scss';\n\nconst EntrySelector = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'entry-selector'\n})(({ onAdd, api, options, selectedTitle, listTitle, renderListTitle, renderSelectedItem, renderItem, renderOptions, getSearchProps, searchPlaceholder, maxScrollerHeight = 800, ...props }) => {\n const [value, onChange] = useControllerValue(props);\n const [searchProps, setSearchProps] = useState({});\n const { formatMessage } = useIntl();\n const ref = useRef(null);\n const selectedMappingRef = useRef(new Map());\n return (\n <Flex\n vertical\n gap={8}\n className={style['entry-selector']}\n style={{\n '--max-scroller-height': `${maxScrollerHeight}px`\n }}\n >\n {typeof onAdd === 'function' && (\n <Flex>\n <Button\n shape=\"round\"\n size=\"small\"\n type=\"primary\"\n onClick={() => {\n onAdd({ fetchApi: ref.current, value, onChange });\n }}\n >\n {formatMessage({ id: 'add' })}\n </Button>\n </Flex>\n )}\n <FetchScrollLoader\n {...props}\n completeTips={null}\n searchProps={searchProps}\n getSearchProps={getSearchProps}\n api={api}\n ref={ref}\n className={style['list-scroll']}\n autoHide={false}\n render={({ fetchApi, children }) => {\n const { data } = fetchApi;\n const { pageData, totalCount } = Object.assign(\n {},\n {\n pageData: [],\n totalCount: 0\n },\n data\n );\n pageData.forEach(item => {\n selectedMappingRef.current.set(item.id, item);\n });\n const listMapping = selectedMappingRef.current;\n const currentList = (value || []).map(item => Object.assign({}, listMapping.get(item.id) || item));\n return (\n <Row gutter={[12, 12]}>\n <Col span={12}>\n <div className={style['list-outer']}>\n {totalCount > 0 && <div className={style['list-header']}>{selectedTitle || formatMessage({ id: 'selected' })}</div>}\n <SimpleBar className={style['list-scroll']} autoHide={false}>\n {value && value.length > 0 ? (\n <List className={style['list']} size=\"small\">\n <ReactSortable\n filter=\".ignore-elements\"\n dragClass={style['sortable-drag']}\n ghostClass={style['sortable-ghost']}\n forceFallback\n animation={300}\n delayOnTouchStart\n delay={2}\n list={currentList}\n setList={list => {\n onChange(value => {\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return list.map(({ id }) => {\n return mapping.get(id);\n });\n });\n }}\n >\n {currentList.map((item, index) => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return (\n <List.Item key={item.id} className={classnames(style['columns-control-content-item'], style['is-drag'])}>\n <HolderOutlined className={style['columns-control-content-item-icon']} />\n <div className={style['list-index']}>{index + 1}</div>\n <Flex vertical flex={1}>\n {typeof renderSelectedItem === 'function'\n ? renderSelectedItem(mapping.get(item.id), {\n el: defaultItem,\n target: item,\n fetchApi,\n searchProps,\n setSearchProps,\n onChange: targetItem => {\n return onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n const currentItem = newValue[index];\n if (index > -1) {\n newValue.splice(index, 1, Object.assign({}, typeof targetItem === 'function' ? targetItem(currentItem) : targetItem));\n }\n return newValue;\n });\n }\n })\n : defaultItem}\n </Flex>\n </List.Item>\n );\n })}\n </ReactSortable>\n </List>\n ) : (\n <Flex className={style['list']} justify=\"center\" align=\"center\">\n <Empty />\n </Flex>\n )}\n </SimpleBar>\n </div>\n </Col>\n <Col span={12}>\n <div className={style['list-outer']}>\n <Flex className={style['list-header']} justify=\"space-between\">\n <div className={style['list-header-title']}>\n {listTitle ||\n (typeof renderListTitle === 'function' &&\n renderListTitle({\n fetchApi,\n searchProps,\n setSearchProps\n })) ||\n formatMessage({ id: 'list' })}\n </div>\n <div>\n {typeof getSearchProps === 'function' && (\n <SearchInput\n size=\"small\"\n placeholder={searchPlaceholder || formatMessage({ id: 'searchPlaceholder' })}\n value={searchProps.searchText}\n onSearch={value => {\n setSearchProps(searchProps => Object.assign({}, searchProps, { searchText: value }));\n }}\n />\n )}\n </div>\n </Flex>\n {children}\n </div>\n </Col>\n </Row>\n );\n }}\n >\n {({ fetchApi, list }) => {\n return (\n <List\n className={classnames(style['list'], style['list-lib'])}\n size=\"small\"\n dataSource={list}\n renderItem={item => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const targetOptions =\n typeof renderOptions === 'function'\n ? renderOptions(item, {\n searchProps,\n setSearchProps,\n fetchApi,\n options\n })\n : options;\n return (\n <List.Item\n key={item.id}\n onClick={() => {\n onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n if (index > -1) {\n newValue.splice(index, 1);\n } else {\n newValue.push(Object.assign({}, item));\n }\n\n return newValue;\n });\n }}\n >\n <Checkbox checked={(value || []).findIndex(({ id }) => id === item.id) > -1} />\n <Flex vertical flex={1}>\n {typeof renderItem === 'function'\n ? renderItem(item, {\n fetchApi,\n el: defaultItem,\n searchProps,\n setSearchProps\n })\n : defaultItem}\n </Flex>\n {targetOptions && (\n <Flex\n flex={'0 0 50px'}\n onClick={e => {\n e.stopPropagation();\n }}\n >\n <ButtonGroup more={<Button type=\"link\" icon={<MoreOutlined />} />} list={targetOptions} />\n </Flex>\n )}\n </List.Item>\n );\n }}\n />\n );\n }}\n </FetchScrollLoader>\n </Flex>\n );\n});\n\nexport default EntrySelector;\n"],"names":["locale","add","selected","list","searchPlaceholder","EntrySelector","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","_ref","onAdd","api","options","selectedTitle","listTitle","renderListTitle","renderSelectedItem","renderItem","renderOptions","getSearchProps","maxScrollerHeight","props","_objectWithoutPropertiesLoose","_excluded","value","onChange","useControllerValue","searchProps","setSearchProps","useState","formatMessage","useIntl","ref","useRef","selectedMappingRef","Map","React","createElement","Flex","vertical","gap","className","style","Button","shape","size","type","onClick","fetchApi","current","id","FetchScrollLoader","_extends","completeTips","autoHide","render","children","data","pageData","totalCount","Object","assign","forEach","item","set","listMapping","currentList","map","get","Row","gutter","Col","span","SimpleBar","length","List","ReactSortable","filter","dragClass","ghostClass","forceFallback","animation","delayOnTouchStart","delay","setList","mapping","index","defaultItem","title","Item","key","classnames","HolderOutlined","flex","el","target","targetItem","newValue","slice","findIndex","currentItem","splice","justify","align","Empty","SearchInput","placeholder","searchText","onSearch","dataSource","targetOptions","push","Checkbox","checked","e","stopPropagation","ButtonGroup","more","icon","MoreOutlined"],"mappings":"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"}
1
+ {"version":3,"file":"index.modern.js","sources":["../src/locale/zh-CN.js","../src/locale/en-US.js","../src/index.js"],"sourcesContent":["const locale = {\n add: '添加',\n selected: '已选择',\n list: '列表',\n searchPlaceholder: '请输入关键字'\n};\n\nexport default locale;\n","const locale = {\n add: 'Add',\n selected: 'Selected',\n list: 'List',\n searchPlaceholder: 'Please input keyword'\n};\n\nexport default locale;\n","import React, { useRef, useState } from 'react';\nimport zhCn from './locale/zh-CN';\nimport enUS from './locale/en-US';\nimport { ReactSortable } from 'react-sortablejs';\nimport { createWithIntlProvider, useIntl } from '@kne/react-intl';\nimport { MoreOutlined, HolderOutlined, DeleteOutlined } from '@ant-design/icons';\nimport ButtonGroup, { ConfirmButton } from '@kne/button-group';\nimport useControllerValue from '@kne/use-control-value';\nimport { FetchScrollLoader } from '@kne/scroll-loader';\nimport classnames from 'classnames';\nimport SearchInput from '@kne/search-input';\nimport { Flex, Button, Row, Col, List, Empty, Checkbox } from 'antd';\nimport SimpleBar from 'simplebar-react';\nimport 'simplebar/dist/simplebar.min.css';\nimport '@kne/button-group/dist/index.css';\nimport style from './style.module.scss';\n\nconst EntrySelector = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCn,\n 'en-US': enUS\n },\n namespace: 'entry-selector'\n})(({ onAdd, api, options, selectedTitle, listTitle, renderListTitle, renderSelectedItem, renderItem, renderOptions, getSearchProps, searchPlaceholder, maxScrollerHeight = 800, ...props }) => {\n const [value, onChange] = useControllerValue(props);\n const [searchProps, setSearchProps] = useState({});\n const { formatMessage } = useIntl();\n const ref = useRef(null);\n const selectedMappingRef = useRef(new Map());\n const onSelected = item => {\n return onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n if (index > -1) {\n newValue.splice(index, 1);\n } else {\n newValue.push(Object.assign({}, item));\n }\n\n return newValue;\n });\n };\n\n return (\n <Flex\n vertical\n gap={8}\n className={style['entry-selector']}\n style={{\n '--max-scroller-height': `${maxScrollerHeight}px`\n }}\n >\n {typeof onAdd === 'function' && (\n <Flex>\n <Button\n shape=\"round\"\n size=\"small\"\n type=\"primary\"\n onClick={() => {\n onAdd({ fetchApi: ref.current, value, onChange });\n }}\n >\n {formatMessage({ id: 'add' })}\n </Button>\n </Flex>\n )}\n <FetchScrollLoader\n {...props}\n completeTips={null}\n searchProps={searchProps}\n getSearchProps={getSearchProps}\n api={api}\n ref={ref}\n className={style['list-scroll']}\n autoHide={false}\n render={({ fetchApi, children }) => {\n const { data } = fetchApi;\n const { pageData, totalCount } = Object.assign(\n {},\n {\n pageData: [],\n totalCount: 0\n },\n data\n );\n pageData.forEach(item => {\n selectedMappingRef.current.set(item.id, item);\n });\n const listMapping = selectedMappingRef.current;\n const currentList = (value || []).map(item => Object.assign({}, listMapping.get(item.id) || item));\n return (\n <Row gutter={[12, 12]}>\n <Col span={12}>\n <div className={style['list-outer']}>\n {totalCount > 0 && <div className={style['list-header']}>{selectedTitle || formatMessage({ id: 'selected' })}</div>}\n <SimpleBar className={style['list-scroll']} autoHide={false}>\n {value && value.length > 0 ? (\n <List className={style['list']} size=\"small\">\n <ReactSortable\n filter=\".sortable-ignore-elements\"\n handle=\".sortable-drag-handle\"\n dragClass={style['sortable-drag']}\n ghostClass={style['sortable-ghost']}\n forceFallback\n animation={300}\n delayOnTouchStart\n delay={2}\n list={currentList}\n setList={list => {\n onChange(value => {\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return list.map(({ id }) => {\n return mapping.get(id);\n });\n });\n }}\n >\n {currentList.map((item, index) => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const removeOption = (\n <ConfirmButton\n color=\"danger\"\n variant=\"filled\"\n className={'list-item-remove-btn'}\n icon={<DeleteOutlined />}\n onClick={() => {\n onSelected(item);\n }}\n />\n );\n const mapping = new Map((value || []).map(item => [item.id, item]));\n return (\n <List.Item key={item.id} className={classnames(style['columns-control-content-item'], style['is-drag'])}>\n <HolderOutlined className={classnames('sortable-drag-handle', style['columns-control-content-item-icon'])} />\n <div className={style['list-index']}>{index + 1}</div>\n <Flex justify=\"space-between\" gap={8} flex={1} className={style['list-item-content']}>\n <Flex vertical flex={1}>\n {typeof renderSelectedItem === 'function'\n ? renderSelectedItem(mapping.get(item.id), {\n el: defaultItem,\n removeOptionEl: removeOption,\n target: item,\n fetchApi,\n searchProps,\n setSearchProps,\n onChange,\n onSelected,\n onReplace: targetItem => {\n return onChange(value => {\n const newValue = (value || []).slice(0);\n const index = newValue.findIndex(({ id }) => id === item.id);\n const currentItem = newValue[index];\n if (index > -1) {\n newValue.splice(index, 1, Object.assign({}, typeof targetItem === 'function' ? targetItem(currentItem) : targetItem));\n }\n return newValue;\n });\n }\n })\n : defaultItem}\n </Flex>\n {removeOption}\n </Flex>\n </List.Item>\n );\n })}\n </ReactSortable>\n </List>\n ) : (\n <Flex className={style['list']} justify=\"center\" align=\"center\">\n <Empty />\n </Flex>\n )}\n </SimpleBar>\n </div>\n </Col>\n <Col span={12}>\n <div className={style['list-outer']}>\n <Flex className={style['list-header']} justify=\"space-between\">\n <div className={style['list-header-title']}>\n {listTitle ||\n (typeof renderListTitle === 'function' &&\n renderListTitle({\n fetchApi,\n defaultTitle: formatMessage({ id: 'list' }),\n searchProps,\n setSearchProps\n })) ||\n formatMessage({ id: 'list' })}\n </div>\n <div>\n {typeof getSearchProps === 'function' && (\n <SearchInput\n size=\"small\"\n placeholder={searchPlaceholder || formatMessage({ id: 'searchPlaceholder' })}\n value={searchProps.searchText}\n onSearch={value => {\n setSearchProps(searchProps => Object.assign({}, searchProps, { searchText: value }));\n }}\n />\n )}\n </div>\n </Flex>\n {children}\n </div>\n </Col>\n </Row>\n );\n }}\n >\n {({ fetchApi, list }) => {\n return (\n <List\n className={classnames(style['list'], style['list-lib'])}\n size=\"small\"\n dataSource={list}\n renderItem={item => {\n const defaultItem = <span className={'list-item-title'}>{item.title}</span>;\n const targetOptions =\n typeof renderOptions === 'function'\n ? renderOptions(item, {\n searchProps,\n setSearchProps,\n fetchApi,\n options\n })\n : options;\n return (\n <List.Item\n key={item.id}\n onClick={() => {\n onSelected(item);\n }}\n >\n <Checkbox checked={(value || []).findIndex(({ id }) => id === item.id) > -1} />\n <Flex vertical flex={1}>\n {typeof renderItem === 'function'\n ? renderItem(item, {\n fetchApi,\n el: defaultItem,\n searchProps,\n setSearchProps\n })\n : defaultItem}\n </Flex>\n {targetOptions && (\n <Flex\n flex={'0 0 50px'}\n onClick={e => {\n e.stopPropagation();\n }}\n >\n <ButtonGroup more={<Button type=\"link\" icon={<MoreOutlined />} />} list={targetOptions} />\n </Flex>\n )}\n </List.Item>\n );\n }}\n />\n );\n }}\n </FetchScrollLoader>\n </Flex>\n );\n});\n\nexport default EntrySelector;\n"],"names":["locale","add","selected","list","searchPlaceholder","EntrySelector","createWithIntlProvider","defaultLocale","messages","zhCn","enUS","namespace","_ref","onAdd","api","options","selectedTitle","listTitle","renderListTitle","renderSelectedItem","renderItem","renderOptions","getSearchProps","maxScrollerHeight","props","_objectWithoutPropertiesLoose","_excluded","value","onChange","useControllerValue","searchProps","setSearchProps","useState","formatMessage","useIntl","ref","useRef","selectedMappingRef","Map","onSelected","item","newValue","slice","index","findIndex","id","splice","push","Object","assign","React","createElement","Flex","vertical","gap","className","style","Button","shape","size","type","onClick","fetchApi","current","FetchScrollLoader","_extends","completeTips","autoHide","render","children","data","pageData","totalCount","forEach","set","listMapping","currentList","map","get","Row","gutter","Col","span","SimpleBar","length","List","ReactSortable","filter","handle","dragClass","ghostClass","forceFallback","animation","delayOnTouchStart","delay","setList","mapping","defaultItem","title","removeOption","ConfirmButton","color","variant","icon","DeleteOutlined","Item","key","classnames","HolderOutlined","justify","flex","el","removeOptionEl","target","onReplace","targetItem","currentItem","align","Empty","defaultTitle","SearchInput","placeholder","searchText","onSearch","dataSource","targetOptions","Checkbox","checked","e","stopPropagation","ButtonGroup","more","MoreOutlined"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kne/entry-selector",
3
- "version": "0.1.7",
3
+ "version": "0.2.1",
4
4
  "description": "EntrySelector是一个用于选择和管理条目列表的 React 组件。它提供了一个直观的界面,允许用户从可选列表中选择条目,并对已选条目进行管理,包括排序、搜索和删除等操作。",
5
5
  "syntax": {
6
6
  "esmodules": true