tntd 3.0.0-beta.9 → 3.0.2

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.
Files changed (316) hide show
  1. package/es/array-input/index.js +57 -42
  2. package/es/array-input/index.js.map +1 -1
  3. package/es/array-input/index.less +4 -1
  4. package/es/button/button.js +3 -7
  5. package/es/button/button.js.map +1 -1
  6. package/es/button/button.less +17 -12
  7. package/es/collapse/collapse.less +3 -3
  8. package/es/date-picker/index.less +6 -6
  9. package/es/date-picker/style/Calendar.less +1 -1
  10. package/es/date-picker/style/RangePicker.less +3 -3
  11. package/es/descriptions/descriptions.js +36 -18
  12. package/es/descriptions/descriptions.js.map +1 -1
  13. package/es/descriptions/descriptions.less +6 -2
  14. package/es/descriptions/style/index.less +1 -0
  15. package/es/drawer/drawer.js +32 -22
  16. package/es/drawer/drawer.js.map +1 -1
  17. package/es/drawer/index.less +13 -14
  18. package/es/drawer/style/drawer.less +2 -4
  19. package/es/form/form.less +12 -6
  20. package/es/form/style/index.less +6 -6
  21. package/es/handle-icon/index.js +201 -0
  22. package/es/handle-icon/index.js.map +1 -0
  23. package/es/handle-icon/index.less +53 -0
  24. package/es/icon/style/style.less +1 -1
  25. package/es/index.js +1 -0
  26. package/es/index.js.map +1 -1
  27. package/es/input/input.js +10 -6
  28. package/es/input/input.js.map +1 -1
  29. package/es/input/style/mixin.less +1 -2
  30. package/es/locale/en_US.js +3 -0
  31. package/es/locale/en_US.js.map +1 -1
  32. package/es/locale/zh_CN.js +3 -0
  33. package/es/locale/zh_CN.js.map +1 -1
  34. package/es/mentions/style/index.less +1 -0
  35. package/es/modal/style/confirm.less +6 -10
  36. package/es/modal/style/modal.less +1 -1
  37. package/es/page-container/index.js +1 -1
  38. package/es/page-container/index.js.map +1 -1
  39. package/es/page-container/index.less +1 -0
  40. package/es/page-loading/index.js +1 -1
  41. package/es/page-loading/index.js.map +1 -1
  42. package/es/query-form/Field/SelectInput.js +4 -22
  43. package/es/query-form/Field/SelectInput.js.map +1 -1
  44. package/es/query-form/Field/fieldsMap.js +2 -2
  45. package/es/query-form/Field/fieldsMap.js.map +1 -1
  46. package/es/query-form/Field/index.js +0 -1
  47. package/es/query-form/Field/index.js.map +1 -1
  48. package/es/query-form/index.js +127 -117
  49. package/es/query-form/index.js.map +1 -1
  50. package/es/query-form/index.less +9 -12
  51. package/es/{query-form → query-form-backup}/Field/Composition/index.less +1 -1
  52. package/es/query-form-backup/index.less +90 -0
  53. package/es/query-list-scene/QueryForm.js +1 -3
  54. package/es/query-list-scene/QueryForm.js.map +1 -1
  55. package/es/select/select.js +5 -3
  56. package/es/select/select.js.map +1 -1
  57. package/es/select/select.less +1 -3
  58. package/es/select/style/index.less +7 -6
  59. package/es/spin/index.js +3 -2
  60. package/es/spin/index.js.map +1 -1
  61. package/es/spin/spin.js +36 -0
  62. package/es/spin/spin.js.map +1 -0
  63. package/es/spin/spin.less +9 -0
  64. package/es/style/themes/default.less +1 -1
  65. package/es/table/expand.less +49 -0
  66. package/es/table/hooks/index.js +2 -1
  67. package/es/table/hooks/index.js.map +1 -1
  68. package/es/table/hooks/use-expand-fixed.js +80 -0
  69. package/es/table/hooks/use-expand-fixed.js.map +1 -0
  70. package/es/table/index.js +1 -0
  71. package/es/table/index.js.map +1 -1
  72. package/es/table/style/index.less +58 -88
  73. package/es/table/table.js +48 -14
  74. package/es/table/table.js.map +1 -1
  75. package/es/table/table.less +13 -22
  76. package/es/table/table.stories.js +413 -2
  77. package/es/table/table.stories.js.map +1 -1
  78. package/es/table/utils.js +11 -0
  79. package/es/table/utils.js.map +1 -1
  80. package/es/table-container/index.js +1 -1
  81. package/es/table-container/index.js.map +1 -1
  82. package/es/table-container/index.less +14 -14
  83. package/es/tabs/tabs.js +9 -1
  84. package/es/tabs/tabs.js.map +1 -1
  85. package/es/tabs/tabs.less +52 -62
  86. package/es/tabs-container/index.js +1 -1
  87. package/es/tabs-container/index.js.map +1 -1
  88. package/es/tag/color.less +28 -18
  89. package/es/tag/index.js +1 -1
  90. package/es/tag/index.js.map +1 -1
  91. package/es/tag/tag.less +41 -5
  92. package/es/title/index.js +4 -3
  93. package/es/title/index.js.map +1 -1
  94. package/es/tntd-action/Action.js +58 -12
  95. package/es/tntd-action/Action.js.map +1 -1
  96. package/es/tntd-action/index.less +5 -3
  97. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +5 -11
  98. package/es/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -1
  99. package/es/tntd-cascader/AntdCascader/index.less +14 -2
  100. package/es/tntd-cascader/rc-cascader/OptionList/Column.js +3 -2
  101. package/es/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -1
  102. package/es/tntd-cascader/rc-cascader/OptionList/index.js +1 -0
  103. package/es/tntd-cascader/rc-cascader/OptionList/index.js.map +1 -1
  104. package/es/tntd-form/FormItem/ItemHolder.js +1 -6
  105. package/es/tntd-form/FormItem/ItemHolder.js.map +1 -1
  106. package/es/tntd-form/FormItemLabel.js +2 -0
  107. package/es/tntd-form/FormItemLabel.js.map +1 -1
  108. package/es/tntd-select/index.js +13 -9
  109. package/es/tntd-select/index.js.map +1 -1
  110. package/es/tntd-select/index.less +7 -0
  111. package/es/tooltip/index.js +1 -0
  112. package/es/tooltip/index.js.map +1 -1
  113. package/es/tooltip/index.less +1 -2
  114. package/lib/array-input/index.d.ts +1 -12
  115. package/lib/array-input/index.d.ts.map +1 -1
  116. package/lib/array-input/index.js +62 -55
  117. package/lib/array-input/index.js.map +1 -1
  118. package/lib/array-input/index.less +4 -1
  119. package/lib/button/button.d.ts.map +1 -1
  120. package/lib/button/button.js +3 -15
  121. package/lib/button/button.js.map +1 -1
  122. package/lib/button/button.less +17 -12
  123. package/lib/collapse/collapse.less +3 -3
  124. package/lib/date-picker/index.less +6 -6
  125. package/lib/date-picker/style/Calendar.less +1 -1
  126. package/lib/date-picker/style/RangePicker.less +3 -3
  127. package/lib/descriptions/descriptions.d.ts.map +1 -1
  128. package/lib/descriptions/descriptions.js +40 -20
  129. package/lib/descriptions/descriptions.js.map +1 -1
  130. package/lib/descriptions/descriptions.less +6 -2
  131. package/lib/descriptions/style/index.less +1 -0
  132. package/lib/drawer/drawer.d.ts +3 -0
  133. package/lib/drawer/drawer.d.ts.map +1 -1
  134. package/lib/drawer/drawer.js +30 -20
  135. package/lib/drawer/drawer.js.map +1 -1
  136. package/lib/drawer/index.less +13 -14
  137. package/lib/drawer/style/drawer.less +2 -4
  138. package/lib/form/form.less +12 -6
  139. package/lib/form/style/index.less +6 -6
  140. package/lib/handle-icon/index.d.ts +7 -0
  141. package/lib/handle-icon/index.d.ts.map +1 -0
  142. package/lib/handle-icon/index.js +221 -0
  143. package/lib/handle-icon/index.js.map +1 -0
  144. package/lib/handle-icon/index.less +53 -0
  145. package/lib/icon/style/style.less +1 -1
  146. package/lib/index.d.ts +1 -0
  147. package/lib/index.d.ts.map +1 -1
  148. package/lib/index.js +7 -0
  149. package/lib/index.js.map +1 -1
  150. package/lib/input/input.js +8 -4
  151. package/lib/input/input.js.map +1 -1
  152. package/lib/input/style/mixin.less +1 -2
  153. package/lib/locale/default.d.ts +3 -0
  154. package/lib/locale/default.d.ts.map +1 -1
  155. package/lib/locale/en_US.d.ts +3 -0
  156. package/lib/locale/en_US.d.ts.map +1 -1
  157. package/lib/locale/en_US.js +3 -0
  158. package/lib/locale/en_US.js.map +1 -1
  159. package/lib/locale/zh_CN.d.ts +3 -0
  160. package/lib/locale/zh_CN.d.ts.map +1 -1
  161. package/lib/locale/zh_CN.js +3 -0
  162. package/lib/locale/zh_CN.js.map +1 -1
  163. package/lib/mentions/style/index.less +1 -0
  164. package/lib/modal/style/confirm.less +6 -10
  165. package/lib/modal/style/modal.less +1 -1
  166. package/lib/page-container/index.js +1 -1
  167. package/lib/page-container/index.js.map +1 -1
  168. package/lib/page-container/index.less +1 -0
  169. package/lib/page-loading/index.js +1 -1
  170. package/lib/page-loading/index.js.map +1 -1
  171. package/lib/query-form/Field/SelectInput.d.ts.map +1 -1
  172. package/lib/query-form/Field/SelectInput.js +3 -15
  173. package/lib/query-form/Field/SelectInput.js.map +1 -1
  174. package/lib/query-form/Field/fieldsMap.d.ts +3 -6
  175. package/lib/query-form/Field/fieldsMap.js +2 -2
  176. package/lib/query-form/Field/fieldsMap.js.map +1 -1
  177. package/lib/query-form/Field/index.d.ts.map +1 -1
  178. package/lib/query-form/Field/index.js +0 -1
  179. package/lib/query-form/Field/index.js.map +1 -1
  180. package/lib/query-form/index.d.ts +7 -4
  181. package/lib/query-form/index.d.ts.map +1 -1
  182. package/lib/query-form/index.js +149 -143
  183. package/lib/query-form/index.js.map +1 -1
  184. package/lib/query-form/index.less +9 -12
  185. package/lib/{query-form → query-form-backup}/Field/Composition/index.less +1 -1
  186. package/lib/query-form-backup/index.less +90 -0
  187. package/lib/query-list-scene/QueryForm.js +2 -3
  188. package/lib/query-list-scene/QueryForm.js.map +1 -1
  189. package/lib/select/select.d.ts.map +1 -1
  190. package/lib/select/select.js +4 -2
  191. package/lib/select/select.js.map +1 -1
  192. package/lib/select/select.less +1 -3
  193. package/lib/select/style/index.less +7 -6
  194. package/lib/spin/index.d.ts +3 -2
  195. package/lib/spin/index.d.ts.map +1 -1
  196. package/lib/spin/index.js +4 -6
  197. package/lib/spin/index.js.map +1 -1
  198. package/lib/spin/spin.d.ts +9 -0
  199. package/lib/spin/spin.d.ts.map +1 -0
  200. package/lib/spin/spin.js +44 -0
  201. package/lib/spin/spin.js.map +1 -0
  202. package/lib/spin/spin.less +9 -0
  203. package/lib/style/themes/default.less +1 -1
  204. package/lib/table/expand.less +49 -0
  205. package/lib/table/hooks/index.d.ts +1 -0
  206. package/lib/table/hooks/index.d.ts.map +1 -1
  207. package/lib/table/hooks/index.js +11 -0
  208. package/lib/table/hooks/index.js.map +1 -1
  209. package/lib/table/hooks/use-expand-fixed.d.ts +4 -0
  210. package/lib/table/hooks/use-expand-fixed.d.ts.map +1 -0
  211. package/lib/table/hooks/use-expand-fixed.js +110 -0
  212. package/lib/table/hooks/use-expand-fixed.js.map +1 -0
  213. package/lib/table/index.d.ts +1 -0
  214. package/lib/table/index.d.ts.map +1 -1
  215. package/lib/table/index.js +1 -0
  216. package/lib/table/index.js.map +1 -1
  217. package/lib/table/style/index.less +58 -88
  218. package/lib/table/table.d.ts +3 -1
  219. package/lib/table/table.d.ts.map +1 -1
  220. package/lib/table/table.js +49 -11
  221. package/lib/table/table.js.map +1 -1
  222. package/lib/table/table.less +13 -22
  223. package/lib/table/table.stories.d.ts +106 -29
  224. package/lib/table/table.stories.d.ts.map +1 -1
  225. package/lib/table/table.stories.js +426 -3
  226. package/lib/table/table.stories.js.map +1 -1
  227. package/lib/table/utils.d.ts +1 -0
  228. package/lib/table/utils.d.ts.map +1 -1
  229. package/lib/table/utils.js +13 -0
  230. package/lib/table/utils.js.map +1 -1
  231. package/lib/table-container/index.d.ts.map +1 -1
  232. package/lib/table-container/index.js +1 -1
  233. package/lib/table-container/index.js.map +1 -1
  234. package/lib/table-container/index.less +14 -14
  235. package/lib/tabs/tabs.d.ts.map +1 -1
  236. package/lib/tabs/tabs.js +8 -0
  237. package/lib/tabs/tabs.js.map +1 -1
  238. package/lib/tabs/tabs.less +52 -62
  239. package/lib/tabs-container/index.js +1 -1
  240. package/lib/tabs-container/index.js.map +1 -1
  241. package/lib/tag/color.less +28 -18
  242. package/lib/tag/index.js +1 -1
  243. package/lib/tag/index.js.map +1 -1
  244. package/lib/tag/tag.less +41 -5
  245. package/lib/title/index.d.ts +1 -0
  246. package/lib/title/index.d.ts.map +1 -1
  247. package/lib/title/index.js +3 -2
  248. package/lib/title/index.js.map +1 -1
  249. package/lib/tntd-action/Action.d.ts +1 -1
  250. package/lib/tntd-action/Action.js +63 -13
  251. package/lib/tntd-action/Action.js.map +1 -1
  252. package/lib/tntd-action/index.less +5 -3
  253. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.d.ts.map +1 -1
  254. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js +5 -11
  255. package/lib/tntd-cascader/AntdCascader/component/defaultRenderEmpty.js.map +1 -1
  256. package/lib/tntd-cascader/AntdCascader/index.less +14 -2
  257. package/lib/tntd-cascader/rc-cascader/OptionList/Column.d.ts +1 -1
  258. package/lib/tntd-cascader/rc-cascader/OptionList/Column.d.ts.map +1 -1
  259. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js +3 -2
  260. package/lib/tntd-cascader/rc-cascader/OptionList/Column.js.map +1 -1
  261. package/lib/tntd-cascader/rc-cascader/OptionList/index.d.ts.map +1 -1
  262. package/lib/tntd-cascader/rc-cascader/OptionList/index.js +1 -0
  263. package/lib/tntd-cascader/rc-cascader/OptionList/index.js.map +1 -1
  264. package/lib/tntd-form/FormItem/ItemHolder.js +1 -6
  265. package/lib/tntd-form/FormItem/ItemHolder.js.map +1 -1
  266. package/lib/tntd-form/FormItemLabel.d.ts.map +1 -1
  267. package/lib/tntd-form/FormItemLabel.js +2 -0
  268. package/lib/tntd-form/FormItemLabel.js.map +1 -1
  269. package/lib/tntd-select/index.d.ts.map +1 -1
  270. package/lib/tntd-select/index.js +12 -8
  271. package/lib/tntd-select/index.js.map +1 -1
  272. package/lib/tntd-select/index.less +7 -0
  273. package/lib/tooltip/index.d.ts +1 -0
  274. package/lib/tooltip/index.d.ts.map +1 -1
  275. package/lib/tooltip/index.js +1 -0
  276. package/lib/tooltip/index.js.map +1 -1
  277. package/lib/tooltip/index.less +1 -2
  278. package/package.json +4 -3
  279. package/themes/default/variables.less +2 -2
  280. package/themes/default/variablesVar.less +2 -2
  281. package/es/array-input/1.png +0 -1
  282. package/es/array-input/111.gif +0 -0
  283. package/es/array-input/icon.js +0 -25
  284. package/es/array-input/icon.js.map +0 -1
  285. package/es/query-form/Field/Composition/FieldPopover.js +0 -308
  286. package/es/query-form/Field/Composition/FieldPopover.js.map +0 -1
  287. package/es/query-form/Field/Composition/Select.js +0 -104
  288. package/es/query-form/Field/Composition/Select.js.map +0 -1
  289. package/es/query-form/Field/Composition/index.js +0 -299
  290. package/es/query-form/Field/Composition/index.js.map +0 -1
  291. package/es/query-form/Field/Composition/utils.js +0 -19
  292. package/es/query-form/Field/Composition/utils.js.map +0 -1
  293. package/lib/array-input/1.png +0 -1
  294. package/lib/array-input/111.gif +0 -0
  295. package/lib/array-input/icon.d.ts +0 -4
  296. package/lib/array-input/icon.d.ts.map +0 -1
  297. package/lib/array-input/icon.js +0 -32
  298. package/lib/array-input/icon.js.map +0 -1
  299. package/lib/query-form/Field/Composition/FieldPopover.d.ts +0 -19
  300. package/lib/query-form/Field/Composition/FieldPopover.d.ts.map +0 -1
  301. package/lib/query-form/Field/Composition/FieldPopover.js +0 -347
  302. package/lib/query-form/Field/Composition/FieldPopover.js.map +0 -1
  303. package/lib/query-form/Field/Composition/Select.d.ts +0 -4
  304. package/lib/query-form/Field/Composition/Select.d.ts.map +0 -1
  305. package/lib/query-form/Field/Composition/Select.js +0 -128
  306. package/lib/query-form/Field/Composition/Select.js.map +0 -1
  307. package/lib/query-form/Field/Composition/index.d.ts +0 -14
  308. package/lib/query-form/Field/Composition/index.d.ts.map +0 -1
  309. package/lib/query-form/Field/Composition/index.js +0 -349
  310. package/lib/query-form/Field/Composition/index.js.map +0 -1
  311. package/lib/query-form/Field/Composition/utils.d.ts +0 -6
  312. package/lib/query-form/Field/Composition/utils.d.ts.map +0 -1
  313. package/lib/query-form/Field/Composition/utils.js +0 -27
  314. package/lib/query-form/Field/Composition/utils.js.map +0 -1
  315. /package/es/{query-form → query-form-backup}/Field/Composition/FieldPopover.less +0 -0
  316. /package/lib/{query-form → query-form-backup}/Field/Composition/FieldPopover.less +0 -0
@@ -1,299 +0,0 @@
1
- import React, { useEffect, useLayoutEffect, useState, useRef, useImperativeHandle, forwardRef } from 'react';
2
- import LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver';
3
- import Icon from '../../../icon';
4
- import Tag from '../../../tag';
5
- import Input from '../../../input';
6
- import FieldPopover from './FieldPopover';
7
- import './index.less';
8
- const parseObjectToArray = (value, data) => {
9
- var _a, _b;
10
- return (_b = (_a = Object.keys(value)) === null || _a === void 0 ? void 0 : _a.map(key => {
11
- var _a, _b, _c;
12
- const target = data === null || data === void 0 ? void 0 : data.find(item => {
13
- var _a;
14
- return ((_a = item.props) === null || _a === void 0 ? void 0 : _a.name) === key;
15
- });
16
- if (!target) return null;
17
- const dataItem = (target === null || target === void 0 ? void 0 : target.props) || {};
18
- const {
19
- type,
20
- component,
21
- setLabel,
22
- props: fieldProps,
23
- propsTitle,
24
- title,
25
- name
26
- } = dataItem || {};
27
- const _propsTitle = propsTitle || title || name;
28
- const {
29
- options
30
- } = fieldProps || {};
31
- const fieldNames = ((_a = dataItem === null || dataItem === void 0 ? void 0 : dataItem.props) === null || _a === void 0 ? void 0 : _a.fieldNames) || {
32
- label: 'label',
33
- value: 'value'
34
- };
35
- let labelValue = value[key];
36
- if (!type && component) {
37
- if (!setLabel) {
38
- console.error('自定义组件需要传入setLabel()方法');
39
- }
40
- } else if (options) {
41
- if (type === 'selectInput') {
42
- const selectKey = (_b = Object.keys(labelValue)) === null || _b === void 0 ? void 0 : _b[0];
43
- const inputValue = labelValue[selectKey];
44
- const selectLabel = (_c = options === null || options === void 0 ? void 0 : options.find(v => v.value === selectKey)) === null || _c === void 0 ? void 0 : _c.label;
45
- return {
46
- key,
47
- value: value[key],
48
- closable: true,
49
- label: selectLabel + ':' + inputValue
50
- };
51
- }
52
- const target = options === null || options === void 0 ? void 0 : options.find(item => {
53
- const valueKey = fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value;
54
- const itemValue = item instanceof Object ? item[valueKey] : item;
55
- return itemValue === value[key];
56
- });
57
- labelValue = target instanceof Object ? target === null || target === void 0 ? void 0 : target[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label] : target;
58
- }
59
- // setLabel: 对于自定义组件,无法控制label的显示,可以通过setLabel方法控制
60
- return {
61
- key,
62
- value: value[key],
63
- closable: true,
64
- label: setLabel ? setLabel(labelValue) : _propsTitle + ':' + labelValue
65
- };
66
- })) === null || _b === void 0 ? void 0 : _b.filter(item => !!item);
67
- };
68
- const parseArrayToObject = value => value === null || value === void 0 ? void 0 : value.reduce((acc, v) => {
69
- acc[v.key] = v.value;
70
- return acc;
71
- }, {});
72
- /**
73
- * @param value: [{
74
- key: 'key1',
75
- value: 'value1',
76
- label: 'key1:value1'
77
- }, {
78
- key: 'key2',
79
- value: ['value2', 'value3'],
80
- label: 'key1:value2|value3'
81
- }]
82
- * @param {*} ref
83
- * @returns
84
- */
85
- const regex = /^.+:.*$/;
86
- const CompositionInput = ({
87
- value: _value,
88
- fieldItems,
89
- initialValues,
90
- onChange,
91
- placeholder,
92
- disabled,
93
- form,
94
- style,
95
- clsPrefix
96
- }, ref) => {
97
- const prefix = `${clsPrefix}-composition-input`;
98
- const [value, setValue] = useState([]);
99
- const [tempItem, setTempItem] = useState();
100
- const [searchText, setSearchText] = useState('');
101
- const [visible, setVisible] = useState(false);
102
- const [fieldItem, setFieldItem] = useState(undefined);
103
- const {
104
- props
105
- } = fieldItem || {};
106
- const inputRef = useRef(null);
107
- const widthRef = useRef(null);
108
- const fieldRef = useRef(null);
109
- const handleFocus = e => {
110
- var _a;
111
- e.preventDefault();
112
- (_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
113
- if (!visible && !regex.test(searchText)) {
114
- setVisible(true);
115
- }
116
- };
117
- useImperativeHandle(ref, () => ({
118
- changeVal: () => {
119
- return value;
120
- }
121
- }));
122
- useEffect(() => {
123
- let values = form.getValues();
124
- if (values) {
125
- setValue(parseObjectToArray(values, fieldItems));
126
- }
127
- }, [fieldItems, form]);
128
- // useEffect(() => {
129
- // if (!visible) {
130
- // const newValues = value?.filter((v) => !!v?.value)
131
- // if (newValues.length !== value?.length) {
132
- // setValue(newValues)
133
- // }
134
- // }
135
- // }, [visible, value])
136
- useLayoutEffect(() => {
137
- const target = document.querySelector(`.${prefix} .inputClass`);
138
- if (!target) return;
139
- if (searchText && widthRef.current.clientWidth > 50) {
140
- target.style.width = widthRef.current.clientWidth + 10 + 'px';
141
- } else if (!(value === null || value === void 0 ? void 0 : value.length)) {
142
- target.style.width = '300px';
143
- } else {
144
- target.style.width = '100px';
145
- }
146
- }, [searchText, value]);
147
- const onFormChange = formData => {
148
- setValue(parseObjectToArray(formData, data));
149
- };
150
- const onClear = e => {
151
- e.stopPropagation();
152
- const deleteKeys = value === null || value === void 0 ? void 0 : value.map(({
153
- key
154
- }) => key);
155
- setValue([]);
156
- onChange([], deleteKeys);
157
- };
158
- const onDelete = (key, e) => {
159
- e.preventDefault();
160
- if (value.length > 0) {
161
- const newValue = value.filter(v => v.key !== key);
162
- setValue(newValue);
163
- const deleteKeys = [key];
164
- onChange(parseArrayToObject(newValue), deleteKeys);
165
- }
166
- };
167
- const handleFieldChange = (value, isInput, hasValue) => {
168
- if (isInput) {
169
- setSearchText(value === null || value === void 0 ? void 0 : value.label);
170
- setTempItem(value);
171
- return;
172
- }
173
- setValue(value);
174
- setSearchText('');
175
- setTempItem();
176
- if (hasValue) onChange(parseArrayToObject(value));
177
- };
178
- // 输入框事件方法
179
- const onInputChange = e => {
180
- const value = e.target.value;
181
- if (tempItem) {
182
- if (regex.test(value)) {
183
- // 有输入值
184
- setSearchText(value);
185
- } else {
186
- // 没有输入值, 清空选择的属性类型重新显示属性列表
187
- setSearchText('');
188
- setTempItem();
189
- }
190
- } else {
191
- setSearchText(value);
192
- }
193
- };
194
- const onPressEnter = e => {
195
- var _a;
196
- const inputValue = ((_a = searchText === null || searchText === void 0 ? void 0 : searchText.match(/[^:]+:(.*)/)) === null || _a === void 0 ? void 0 : _a[1]) || null;
197
- if (tempItem && inputValue) {
198
- setVisible(false);
199
- tempItem.label = searchText;
200
- tempItem.closable = true;
201
- tempItem.value = inputValue; // 得到输入值
202
- if (!(value === null || value === void 0 ? void 0 : value.find(v => v.key === tempItem.key))) {
203
- const newValue = [...value, tempItem];
204
- setValue(newValue);
205
- onChange(parseArrayToObject(newValue));
206
- } else {
207
- const newValue = value.map(v => v.key === tempItem.key ? tempItem : v);
208
- setValue(newValue);
209
- onChange(parseArrayToObject(newValue));
210
- }
211
- e.target.value = inputValue;
212
- form.emit('search', {
213
- [tempItem.key]: inputValue,
214
- current: 1
215
- });
216
- (props === null || props === void 0 ? void 0 : props.onPressEnter) && props.onPressEnter(e);
217
- }
218
- setTempItem();
219
- setSearchText('');
220
- };
221
- const handleTag = obj => {
222
- let curItem = undefined;
223
- for (let index = 0; index < fieldItems.length; index++) {
224
- const item = fieldItems[index];
225
- if (item.props.name === obj.key) {
226
- curItem = item;
227
- break;
228
- }
229
- }
230
- // setSearchText(obj.label)
231
- fieldRef.current.onPropsClick(curItem.props);
232
- };
233
- return React.createElement(LocaleReceiver, {
234
- componentName: "QueryForm"
235
- }, locale => {
236
- return React.createElement("div", {
237
- className: prefix,
238
- style: style,
239
- onClick: handleFocus
240
- }, React.createElement("span", {
241
- className: `${prefix}-width`,
242
- ref: widthRef
243
- }, searchText), React.createElement("ul", {
244
- className: `${prefix}-items`
245
- }, value && value.map((item, index) => React.createElement("li", {
246
- key: index,
247
- className: `${prefix}-items-item`
248
- }, React.createElement(Tag, {
249
- closable: !disabled && item.closable,
250
- onClick: e => {
251
- e.preventDefault();
252
- e.stopPropagation();
253
- handleTag(item);
254
- },
255
- onClose: e => onDelete(item.key, e),
256
- ellipsisOptions: {
257
- widthLimit: "140px"
258
- }
259
- }, item === null || item === void 0 ? void 0 : item.label))), React.createElement("li", {
260
- className: `${prefix}-items-input`
261
- }, React.createElement(FieldPopover, {
262
- ref: fieldRef,
263
- onChange: handleFieldChange,
264
- clsPrefix: clsPrefix,
265
- fieldItems: fieldItems,
266
- propItem: fieldItem,
267
- setFieldItem: setFieldItem,
268
- form: form,
269
- regex: regex,
270
- visible: visible,
271
- value: value,
272
- setVisible: setVisible,
273
- searchText: searchText,
274
- locale: locale
275
- }, React.createElement(Input, Object.assign({
276
- ref: inputRef,
277
- value: searchText,
278
- className: "inputClass",
279
- placeholder: !(value === null || value === void 0 ? void 0 : value.length) ? placeholder || locale.placeholder : undefined,
280
- disabled: disabled
281
- }, props, {
282
- onPressEnter: onPressEnter,
283
- onChange: e => {
284
- onInputChange(e);
285
- }
286
- }))))), React.createElement("div", {
287
- className: `${prefix}-prefix`
288
- }, React.createElement(Icon, {
289
- type: "filter"
290
- })), React.createElement("div", {
291
- className: `${prefix}-clear`
292
- }, React.createElement(Icon, {
293
- onClick: onClear,
294
- type: "close-circle",
295
- theme: "filled"
296
- })));
297
- });
298
- };
299
- export default forwardRef(CompositionInput);
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, {\n useEffect,\n useLayoutEffect,\n useState,\n useRef,\n useImperativeHandle,\n forwardRef,\n} from 'react'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport Icon from '../../../icon'\n\nimport Tag from '../../../tag'\nimport Input from '../../../input'\nimport FieldPopover from './FieldPopover'\nimport './index.less'\n\nconst parseObjectToArray = (value, data) => {\n return Object.keys(value)\n ?.map((key) => {\n const target = data?.find((item) => item.props?.name === key)\n if (!target) return null\n const dataItem = target?.props || {}\n const {\n type,\n component,\n setLabel,\n props: fieldProps,\n propsTitle,\n title,\n name,\n } = dataItem || {}\n const _propsTitle = propsTitle || title || name\n const { options } = fieldProps || {}\n const fieldNames = dataItem?.props?.fieldNames || {\n label: 'label',\n value: 'value',\n }\n let labelValue = value[key]\n if (!type && component) {\n if (!setLabel) {\n console.error('自定义组件需要传入setLabel()方法')\n }\n } else if (options) {\n if (type === 'selectInput') {\n const selectKey = Object.keys(labelValue)?.[0]\n const inputValue = labelValue[selectKey]\n const selectLabel = options?.find((v) => v.value === selectKey)?.label\n return {\n key,\n value: value[key],\n closable: true,\n label: selectLabel + ':' + inputValue,\n }\n }\n const target = options?.find((item) => {\n const valueKey = fieldNames?.value\n const itemValue = item instanceof Object ? item[valueKey] : item\n return itemValue === value[key]\n })\n labelValue = target instanceof Object ? target?.[fieldNames?.label] : target\n }\n // setLabel: 对于自定义组件,无法控制label的显示,可以通过setLabel方法控制\n return {\n key,\n value: value[key],\n closable: true,\n label: setLabel ? setLabel(labelValue) : _propsTitle + ':' + labelValue,\n }\n })\n ?.filter((item) => !!item)\n}\n\nconst parseArrayToObject = (value) =>\n value?.reduce((acc, v) => {\n acc[v.key] = v.value\n return acc\n }, {})\n\n/**\n * @param value: [{\n key: 'key1',\n value: 'value1',\n label: 'key1:value1'\n }, {\n key: 'key2',\n value: ['value2', 'value3'],\n label: 'key1:value2|value3'\n }]\n * @param {*} ref \n * @returns \n */\nconst regex = /^.+:.*$/\n\nconst CompositionInput = (\n { value: _value, fieldItems, initialValues, onChange, placeholder, disabled, form, style, clsPrefix },\n ref\n) => {\n const prefix = `${clsPrefix}-composition-input`;\n const [value, setValue] = useState([])\n const [tempItem, setTempItem] = useState()\n const [searchText, setSearchText] = useState('')\n const [visible, setVisible] = useState(false)\n const [fieldItem, setFieldItem] = useState(undefined)\n const { props } = fieldItem || {}\n\n const inputRef = useRef(null)\n const widthRef = useRef(null)\n const fieldRef = useRef(null)\n\n const handleFocus = (e) => {\n e.preventDefault()\n inputRef?.current?.focus()\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n }\n }\n useImperativeHandle(ref, () => ({\n changeVal: () => {\n return value\n },\n }))\n\n useEffect(() => {\n let values = form.getValues();\n if (values) {\n setValue(parseObjectToArray(values, fieldItems))\n }\n }, [fieldItems, form])\n\n // useEffect(() => {\n // if (!visible) {\n // const newValues = value?.filter((v) => !!v?.value)\n // if (newValues.length !== value?.length) {\n // setValue(newValues)\n // }\n // }\n // }, [visible, value])\n\n useLayoutEffect(() => {\n const target = document.querySelector(`.${prefix} .inputClass`)\n\n if (!target) return\n if (searchText && widthRef.current.clientWidth > 50) {\n target.style.width = widthRef.current.clientWidth + 10 + 'px'\n } else if (!value?.length) {\n target.style.width = '300px'\n } else {\n target.style.width = '100px'\n }\n }, [searchText, value])\n\n\n const onFormChange = (formData) => {\n setValue(parseObjectToArray(formData, data))\n }\n\n const onClear = (e) => {\n e.stopPropagation()\n const deleteKeys = value?.map(({ key }) => key)\n setValue([])\n onChange([], deleteKeys)\n }\n const onDelete = (key, e) => {\n e.preventDefault()\n if (value.length > 0) {\n const newValue = value.filter((v) => v.key !== key)\n setValue(newValue)\n const deleteKeys = [key]\n onChange(parseArrayToObject(newValue), deleteKeys)\n }\n }\n const handleFieldChange = (value, isInput, hasValue) => {\n if (isInput) {\n setSearchText(value?.label)\n setTempItem(value)\n return\n }\n setValue(value)\n setSearchText('')\n setTempItem()\n if (hasValue) onChange(parseArrayToObject(value))\n }\n\n // 输入框事件方法\n const onInputChange = (e) => {\n const value = e.target.value\n if (tempItem) {\n if (regex.test(value)) {\n // 有输入值\n setSearchText(value)\n } else {\n // 没有输入值, 清空选择的属性类型重新显示属性列表\n setSearchText('')\n setTempItem()\n }\n } else {\n setSearchText(value)\n }\n }\n\n const onPressEnter = (e) => {\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n setVisible(false)\n tempItem.label = searchText\n tempItem.closable = true\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n props?.onPressEnter && props.onPressEnter(e)\n }\n setTempItem()\n setSearchText('')\n }\n\n const handleTag = (obj) => {\n let curItem = undefined\n for (let index = 0; index < fieldItems.length; index++) {\n const item = fieldItems[index];\n if (item.props.name === obj.key) {\n curItem = item\n break;\n }\n }\n // setSearchText(obj.label)\n fieldRef.current.onPropsClick(curItem.props)\n }\n return (\n <LocaleReceiver componentName=\"QueryForm\">\n {(locale) => {\n return (\n <div className={prefix} style={style} onClick={handleFocus}>\n <span className={`${prefix}-width`} ref={widthRef}>\n {searchText}\n </span>\n <ul className={`${prefix}-items`}>\n {value &&\n value.map((item, index) => (\n <li key={index} className={`${prefix}-items-item`}>\n <Tag closable={!disabled && item.closable} onClick={(e) => {\n e.preventDefault()\n e.stopPropagation()\n handleTag(item)\n }} onClose={(e) => onDelete(item.key, e)} ellipsisOptions={{widthLimit:\"140px\"}}>\n {item?.label}\n </Tag>\n </li>\n ))}\n <li className={`${prefix}-items-input`}>\n <FieldPopover\n ref={fieldRef}\n onChange={handleFieldChange}\n clsPrefix={clsPrefix}\n fieldItems={fieldItems}\n propItem={fieldItem}\n setFieldItem={setFieldItem}\n form={form}\n regex={regex}\n visible={visible}\n value={value}\n setVisible={setVisible}\n searchText={searchText}\n locale={locale}\n >\n <Input\n ref={inputRef}\n value={searchText}\n className=\"inputClass\"\n placeholder={!value?.length ? placeholder || locale.placeholder : undefined}\n disabled={disabled}\n {...props}\n onPressEnter={onPressEnter}\n onChange={(e) => {\n onInputChange(e)\n }}\n />\n </FieldPopover>\n </li>\n </ul>\n <div className={`${prefix}-prefix`}>\n <Icon type=\"filter\" />\n </div>\n <div className={`${prefix}-clear`}>\n <Icon\n onClick={onClear}\n type=\"close-circle\"\n theme=\"filled\"\n />\n </div>\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\nexport default forwardRef(CompositionInput)\n"]}
@@ -1,19 +0,0 @@
1
- export function highlightSubstring(str, substring) {
2
- const highlighted = `<span class="tnt-highlight">${substring}</span>`;
3
- return str.replace(new RegExp(substring, 'g'), highlighted);
4
- }
5
- export function getLabelFromOptions(key, options, fieldNames = {
6
- label: 'label',
7
- value: 'value'
8
- }) {
9
- let labelValue = key;
10
- if (options) {
11
- const target = options === null || options === void 0 ? void 0 : options.find(item => {
12
- const valueKey = fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value;
13
- const itemValue = item instanceof Object ? item[valueKey] : item;
14
- return itemValue === key;
15
- });
16
- labelValue = target instanceof Object ? target === null || target === void 0 ? void 0 : target[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label] : target;
17
- }
18
- return labelValue;
19
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/utils.js"],"names":[],"mappings":"AAAA,MAAM,UAAU,kBAAkB,CAAC,GAAG,EAAE,SAAS;IAC/C,MAAM,WAAW,GAAG,+BAA+B,SAAS,SAAS,CAAA;IACrE,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,CAAA;AAC7D,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,GAAG,EACH,OAAO,EACP,UAAU,GAAG;IACX,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACf;IAED,IAAI,UAAU,GAAG,GAAG,CAAA;IACpB,IAAI,OAAO,EAAE;QACX,MAAM,MAAM,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACpC,MAAM,QAAQ,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAA;YAClC,MAAM,SAAS,GAAG,IAAI,YAAY,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAChE,OAAO,SAAS,KAAK,GAAG,CAAA;QAC1B,CAAC,CAAC,CAAA;QACF,UAAU,GAAG,MAAM,YAAY,MAAM,CAAC,CAAC,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;KAC7E;IACD,OAAO,UAAU,CAAA;AACnB,CAAC","sourcesContent":["export function highlightSubstring(str, substring) {\n const highlighted = `<span class=\"tnt-highlight\">${substring}</span>`\n return str.replace(new RegExp(substring, 'g'), highlighted)\n}\n\nexport function getLabelFromOptions(\n key,\n options,\n fieldNames = {\n label: 'label',\n value: 'value',\n }\n) {\n let labelValue = key\n if (options) {\n const target = options?.find((item) => {\n const valueKey = fieldNames?.value\n const itemValue = item instanceof Object ? item[valueKey] : item\n return itemValue === key\n })\n labelValue = target instanceof Object ? target?.[fieldNames?.label] : target\n }\n return labelValue\n}\n"]}
@@ -1 +0,0 @@
1
- <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1715845363423" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="19285" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M421.472 96c-95.904 0-172.8 78.88-172.8 175.104 0 96.224 76.896 175.104 172.8 175.104 95.936 0 172.8-78.88 172.8-175.104 0-96.224-76.864-175.104-172.8-175.104z m-108.8 175.104C312.672 209.28 361.92 160 421.472 160c59.616 0 108.8 49.28 108.8 111.104 0 61.856-49.184 111.104-108.8 111.104-59.584 0-108.8-49.248-108.8-111.104z" p-id="19286"></path><path d="M320 544a192 192 0 0 0-192 192v96a64 64 0 0 0 64 64h384a32 32 0 1 0 0-64H192v-96a128 128 0 0 1 128-128h256a32 32 0 1 0 0-64h-256zM672 672a32 32 0 1 0 0 64h192a32 32 0 1 0 0-64h-192z" p-id="19287"></path></svg>
Binary file
@@ -1,4 +0,0 @@
1
- export const plusIcon: React.JSX.Element;
2
- export const deleteIcon: React.JSX.Element;
3
- import React from "react";
4
- //# sourceMappingURL=icon.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../src/array-input/icon.js"],"names":[],"mappings":"AAEA,yCAaC;AAED,2CAYC"}
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.plusIcon = exports.deleteIcon = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- var plusIcon = exports.plusIcon = _react["default"].createElement("svg", {
10
- viewBox: "64 64 896 896",
11
- focusable: "false",
12
- "data-icon": "plus-circle",
13
- width: "1em",
14
- height: "1em",
15
- fill: "currentColor",
16
- "aria-hidden": "true"
17
- }, _react["default"].createElement("path", {
18
- d: "M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"
19
- }), _react["default"].createElement("path", {
20
- d: "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"
21
- }));
22
- var deleteIcon = exports.deleteIcon = _react["default"].createElement("svg", {
23
- viewBox: "64 64 896 896",
24
- focusable: "false",
25
- "data-icon": "delete",
26
- width: "1em",
27
- height: "1em",
28
- fill: "currentColor",
29
- "aria-hidden": "true"
30
- }, _react["default"].createElement("path", {
31
- d: "M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"
32
- }));
@@ -1 +0,0 @@
1
- {"version":3,"file":"icon.js","sourceRoot":"","sources":["../../src/array-input/icon.js"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAEZ,QAAA,QAAQ,GAAG,CACtB,uCACE,OAAO,EAAC,eAAe,EACvB,SAAS,EAAC,OAAO,eACP,aAAa,EACvB,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,EACZ,IAAI,EAAC,cAAc,iBACP,MAAM;IAElB,wCAAM,CAAC,EAAC,2LAA2L,GAAQ;IAC3M,wCAAM,CAAC,EAAC,+KAA+K,GAAQ,CAC3L,CACP,CAAA;AAEY,QAAA,UAAU,GAAG,CACxB,uCACE,OAAO,EAAC,eAAe,EACvB,SAAS,EAAC,OAAO,eACP,QAAQ,EAClB,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,KAAK,EACZ,IAAI,EAAC,cAAc,iBACP,MAAM;IAElB,wCAAM,CAAC,EAAC,qVAAqV,GAAQ,CACjW,CACP,CAAA","sourcesContent":["import React from 'react'\n\nexport const plusIcon = (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"plus-circle\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"></path>\n <path d=\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"></path>\n </svg>\n)\n\nexport const deleteIcon = (\n <svg\n viewBox=\"64 64 896 896\"\n focusable=\"false\"\n data-icon=\"delete\"\n width=\"1em\"\n height=\"1em\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n >\n <path d=\"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z\"></path>\n </svg>\n)\n"]}
@@ -1,19 +0,0 @@
1
- declare var _default: React.ForwardRefExoticComponent<Pick<{
2
- [x: string]: any;
3
- visible: any;
4
- setVisible: any;
5
- searchText: any;
6
- children: any;
7
- value: any;
8
- regex: any;
9
- fieldItems: any;
10
- propItem: any;
11
- setFieldItem: any;
12
- onChange: any;
13
- form: any;
14
- locale: any;
15
- clsPrefix: any;
16
- }, string | number> & React.RefAttributes<any>>;
17
- export default _default;
18
- import React from "react";
19
- //# sourceMappingURL=FieldPopover.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FieldPopover.d.ts","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/FieldPopover.js"],"names":[],"mappings":""}