linkmore-design 1.0.3

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 (239) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +81 -0
  3. package/dist/40b22ad7b4ea2a7e.jpg +0 -0
  4. package/dist/566891e3103ae07a.png +0 -0
  5. package/dist/9f788f660abc173c.png +0 -0
  6. package/dist/f8940d62d6a40f71.png +0 -0
  7. package/dist/index.umd.css +2167 -0
  8. package/dist/index.umd.js +69587 -0
  9. package/dist/index.umd.min.css +1 -0
  10. package/dist/index.umd.min.js +31 -0
  11. package/es/ButtonTags/ButtonTags.js +59 -0
  12. package/es/ButtonTags/index.js +13 -0
  13. package/es/ButtonTags/style/index.js +3 -0
  14. package/es/ButtonTags/style/style.css +221 -0
  15. package/es/CkFilter/baseFilter/filterMenu.js +177 -0
  16. package/es/CkFilter/baseFilter/index.js +91 -0
  17. package/es/CkFilter/baseFilter/moreFilters.js +198 -0
  18. package/es/CkFilter/complexFilter/drawer.js +337 -0
  19. package/es/CkFilter/complexFilter/index.js +69 -0
  20. package/es/CkFilter/components/filterTypes.js +530 -0
  21. package/es/CkFilter/components/modal.js +275 -0
  22. package/es/CkFilter/context.js +152 -0
  23. package/es/CkFilter/customFilter/drawer.js +364 -0
  24. package/es/CkFilter/customFilter/index.js +130 -0
  25. package/es/CkFilter/customFilter/radioGroup.js +65 -0
  26. package/es/CkFilter/filter.js +115 -0
  27. package/es/CkFilter/index.js +13 -0
  28. package/es/CkFilter/style/index.js +3 -0
  29. package/es/CkFilter/style/style.css +586 -0
  30. package/es/CkFilter/utils.js +65 -0
  31. package/es/CustomerService/assets/question01.png +0 -0
  32. package/es/CustomerService/assets/send.png +0 -0
  33. package/es/CustomerService/assets/service.png +0 -0
  34. package/es/CustomerService/assets/shuoming01.png +0 -0
  35. package/es/CustomerService/assets/shuoming02.png +0 -0
  36. package/es/CustomerService/components/question.js +120 -0
  37. package/es/CustomerService/index.js +291 -0
  38. package/es/CustomerService/style/index.js +3 -0
  39. package/es/CustomerService/style/style.css +402 -0
  40. package/es/EditTable/EditTable.js +489 -0
  41. package/es/EditTable/index.js +13 -0
  42. package/es/EditTable/style/index.js +3 -0
  43. package/es/EditTable/style/style.css +165 -0
  44. package/es/EnlargeImg/index.js +109 -0
  45. package/es/EnlargeImg/style/index.js +3 -0
  46. package/es/EnlargeImg/style/style.css +4 -0
  47. package/es/Filter/Popover.js +199 -0
  48. package/es/Filter/baseFilter/Popover.js +214 -0
  49. package/es/Filter/baseFilter/ToggleFilter.js +112 -0
  50. package/es/Filter/baseFilter/index.js +100 -0
  51. package/es/Filter/complex/ComplexFilter.js +149 -0
  52. package/es/Filter/complex/ComplexItem.js +157 -0
  53. package/es/Filter/components/Checkbox.js +94 -0
  54. package/es/Filter/components/Date.js +87 -0
  55. package/es/Filter/components/Input.js +63 -0
  56. package/es/Filter/components/Select.js +89 -0
  57. package/es/Filter/components/Tree.js +64 -0
  58. package/es/Filter/components/header.js +60 -0
  59. package/es/Filter/components/index.js +47 -0
  60. package/es/Filter/context.js +15 -0
  61. package/es/Filter/edit/editFilter.js +277 -0
  62. package/es/Filter/index.js +174 -0
  63. package/es/Filter/popContext.js +15 -0
  64. package/es/Filter/remember.js +137 -0
  65. package/es/Filter/style/index.js +3 -0
  66. package/es/Filter/style/style.css +420 -0
  67. package/es/Icon/index.js +20 -0
  68. package/es/Icon/style/index.js +1 -0
  69. package/es/Icon/style/style.css +0 -0
  70. package/es/IconFont/index.js +15 -0
  71. package/es/IconFont/style/index.js +1 -0
  72. package/es/IconFont/style/style.css +0 -0
  73. package/es/LeftTable/assets/imgTest.jpg +0 -0
  74. package/es/LeftTable/index.js +116 -0
  75. package/es/LeftTable/style/index.js +3 -0
  76. package/es/LeftTable/style/style.css +231 -0
  77. package/es/LoadingPage/index.js +33 -0
  78. package/es/LoadingPage/style/index.js +1 -0
  79. package/es/LoadingPage/style/style.css +0 -0
  80. package/es/Modal/add.js +68 -0
  81. package/es/Modal/confirm.js +88 -0
  82. package/es/Modal/edit.js +44 -0
  83. package/es/Modal/exportModal.js +300 -0
  84. package/es/Modal/index.js +24 -0
  85. package/es/Modal/style/index.js +3 -0
  86. package/es/Modal/style/style.css +119 -0
  87. package/es/PopTable/BseTable.js +113 -0
  88. package/es/PopTable/index.js +151 -0
  89. package/es/PopTable/style/index.js +3 -0
  90. package/es/PopTable/style/style.css +363 -0
  91. package/es/ProTable/ImgList/body.js +111 -0
  92. package/es/ProTable/ImgList/cardCell.js +179 -0
  93. package/es/ProTable/ImgList/context.js +12 -0
  94. package/es/ProTable/ImgList/empty.js +24 -0
  95. package/es/ProTable/ImgList/footer.js +59 -0
  96. package/es/ProTable/ImgList/imgCell.js +181 -0
  97. package/es/ProTable/ImgList/imgTable.js +110 -0
  98. package/es/ProTable/ImgList/index.js +13 -0
  99. package/es/ProTable/Table.js +321 -0
  100. package/es/ProTable/VList.js +594 -0
  101. package/es/ProTable/context.js +12 -0
  102. package/es/ProTable/index.js +16 -0
  103. package/es/ProTable/resetConfig.js +39 -0
  104. package/es/ProTable/style/index.js +3 -0
  105. package/es/ProTable/style/style.css +693 -0
  106. package/es/TableRender/index.js +15 -0
  107. package/es/TableRender/state.js +72 -0
  108. package/es/TableRender/style/index.js +3 -0
  109. package/es/TableRender/style/style.css +0 -0
  110. package/es/UploadOss/index.js +18 -0
  111. package/es/UploadOss/style/index.js +3 -0
  112. package/es/UploadOss/style/style.css +121 -0
  113. package/es/UploadOss/uploadBtn.js +141 -0
  114. package/es/UploadOss/uploadImg.js +282 -0
  115. package/es/VirtualList/index.js +84 -0
  116. package/es/VirtualList/style/index.js +3 -0
  117. package/es/VirtualList/style/style.css +0 -0
  118. package/es/index.js +135 -0
  119. package/es/services/newRequest.js +201 -0
  120. package/es/services/utils.js +72 -0
  121. package/es/styles/icon.css +15 -0
  122. package/es/styles/main.css +149 -0
  123. package/es/styles/resetAntd.css +62 -0
  124. package/es/styles/them.css +0 -0
  125. package/lib/ButtonTags/ButtonTags.js +59 -0
  126. package/lib/ButtonTags/index.js +13 -0
  127. package/lib/ButtonTags/style/index.js +3 -0
  128. package/lib/ButtonTags/style/style.css +221 -0
  129. package/lib/CkFilter/baseFilter/filterMenu.js +177 -0
  130. package/lib/CkFilter/baseFilter/index.js +91 -0
  131. package/lib/CkFilter/baseFilter/moreFilters.js +198 -0
  132. package/lib/CkFilter/complexFilter/drawer.js +337 -0
  133. package/lib/CkFilter/complexFilter/index.js +69 -0
  134. package/lib/CkFilter/components/filterTypes.js +530 -0
  135. package/lib/CkFilter/components/modal.js +275 -0
  136. package/lib/CkFilter/context.js +152 -0
  137. package/lib/CkFilter/customFilter/drawer.js +364 -0
  138. package/lib/CkFilter/customFilter/index.js +130 -0
  139. package/lib/CkFilter/customFilter/radioGroup.js +65 -0
  140. package/lib/CkFilter/filter.js +115 -0
  141. package/lib/CkFilter/index.js +13 -0
  142. package/lib/CkFilter/style/index.js +3 -0
  143. package/lib/CkFilter/style/style.css +586 -0
  144. package/lib/CkFilter/utils.js +65 -0
  145. package/lib/CustomerService/assets/question01.png +0 -0
  146. package/lib/CustomerService/assets/send.png +0 -0
  147. package/lib/CustomerService/assets/service.png +0 -0
  148. package/lib/CustomerService/assets/shuoming01.png +0 -0
  149. package/lib/CustomerService/assets/shuoming02.png +0 -0
  150. package/lib/CustomerService/components/question.js +120 -0
  151. package/lib/CustomerService/index.js +291 -0
  152. package/lib/CustomerService/style/index.js +3 -0
  153. package/lib/CustomerService/style/style.css +402 -0
  154. package/lib/EditTable/EditTable.js +489 -0
  155. package/lib/EditTable/index.js +13 -0
  156. package/lib/EditTable/style/index.js +3 -0
  157. package/lib/EditTable/style/style.css +165 -0
  158. package/lib/EnlargeImg/index.js +109 -0
  159. package/lib/EnlargeImg/style/index.js +3 -0
  160. package/lib/EnlargeImg/style/style.css +4 -0
  161. package/lib/Filter/Popover.js +199 -0
  162. package/lib/Filter/baseFilter/Popover.js +214 -0
  163. package/lib/Filter/baseFilter/ToggleFilter.js +112 -0
  164. package/lib/Filter/baseFilter/index.js +100 -0
  165. package/lib/Filter/complex/ComplexFilter.js +149 -0
  166. package/lib/Filter/complex/ComplexItem.js +157 -0
  167. package/lib/Filter/components/Checkbox.js +94 -0
  168. package/lib/Filter/components/Date.js +87 -0
  169. package/lib/Filter/components/Input.js +63 -0
  170. package/lib/Filter/components/Select.js +89 -0
  171. package/lib/Filter/components/Tree.js +64 -0
  172. package/lib/Filter/components/header.js +60 -0
  173. package/lib/Filter/components/index.js +47 -0
  174. package/lib/Filter/context.js +15 -0
  175. package/lib/Filter/edit/editFilter.js +277 -0
  176. package/lib/Filter/index.js +174 -0
  177. package/lib/Filter/popContext.js +15 -0
  178. package/lib/Filter/remember.js +137 -0
  179. package/lib/Filter/style/index.js +3 -0
  180. package/lib/Filter/style/style.css +420 -0
  181. package/lib/Icon/index.js +20 -0
  182. package/lib/Icon/style/index.js +1 -0
  183. package/lib/Icon/style/style.css +0 -0
  184. package/lib/IconFont/index.js +15 -0
  185. package/lib/IconFont/style/index.js +1 -0
  186. package/lib/IconFont/style/style.css +0 -0
  187. package/lib/LeftTable/assets/imgTest.jpg +0 -0
  188. package/lib/LeftTable/index.js +116 -0
  189. package/lib/LeftTable/style/index.js +3 -0
  190. package/lib/LeftTable/style/style.css +231 -0
  191. package/lib/LoadingPage/index.js +33 -0
  192. package/lib/LoadingPage/style/index.js +1 -0
  193. package/lib/LoadingPage/style/style.css +0 -0
  194. package/lib/Modal/add.js +68 -0
  195. package/lib/Modal/confirm.js +88 -0
  196. package/lib/Modal/edit.js +44 -0
  197. package/lib/Modal/exportModal.js +300 -0
  198. package/lib/Modal/index.js +24 -0
  199. package/lib/Modal/style/index.js +3 -0
  200. package/lib/Modal/style/style.css +119 -0
  201. package/lib/PopTable/BseTable.js +113 -0
  202. package/lib/PopTable/index.js +151 -0
  203. package/lib/PopTable/style/index.js +3 -0
  204. package/lib/PopTable/style/style.css +363 -0
  205. package/lib/ProTable/ImgList/body.js +111 -0
  206. package/lib/ProTable/ImgList/cardCell.js +179 -0
  207. package/lib/ProTable/ImgList/context.js +12 -0
  208. package/lib/ProTable/ImgList/empty.js +24 -0
  209. package/lib/ProTable/ImgList/footer.js +59 -0
  210. package/lib/ProTable/ImgList/imgCell.js +181 -0
  211. package/lib/ProTable/ImgList/imgTable.js +110 -0
  212. package/lib/ProTable/ImgList/index.js +13 -0
  213. package/lib/ProTable/Table.js +321 -0
  214. package/lib/ProTable/VList.js +594 -0
  215. package/lib/ProTable/context.js +12 -0
  216. package/lib/ProTable/index.js +16 -0
  217. package/lib/ProTable/resetConfig.js +39 -0
  218. package/lib/ProTable/style/index.js +3 -0
  219. package/lib/ProTable/style/style.css +693 -0
  220. package/lib/TableRender/index.js +15 -0
  221. package/lib/TableRender/state.js +72 -0
  222. package/lib/TableRender/style/index.js +3 -0
  223. package/lib/TableRender/style/style.css +0 -0
  224. package/lib/UploadOss/index.js +18 -0
  225. package/lib/UploadOss/style/index.js +3 -0
  226. package/lib/UploadOss/style/style.css +121 -0
  227. package/lib/UploadOss/uploadBtn.js +141 -0
  228. package/lib/UploadOss/uploadImg.js +282 -0
  229. package/lib/VirtualList/index.js +84 -0
  230. package/lib/VirtualList/style/index.js +3 -0
  231. package/lib/VirtualList/style/style.css +0 -0
  232. package/lib/index.js +135 -0
  233. package/lib/services/newRequest.js +201 -0
  234. package/lib/services/utils.js +72 -0
  235. package/lib/styles/icon.css +15 -0
  236. package/lib/styles/main.css +149 -0
  237. package/lib/styles/resetAntd.css +62 -0
  238. package/lib/styles/them.css +0 -0
  239. package/package.json +102 -0
@@ -0,0 +1,489 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
+
14
+ require("antd/es/button/style");
15
+
16
+ var _button = _interopRequireDefault(require("antd/es/button"));
17
+
18
+ require("antd/es/table/style");
19
+
20
+ var _table = _interopRequireDefault(require("antd/es/table"));
21
+
22
+ require("antd/es/radio/style");
23
+
24
+ var _radio = _interopRequireDefault(require("antd/es/radio"));
25
+
26
+ require("antd/es/checkbox/style");
27
+
28
+ var _checkbox = _interopRequireDefault(require("antd/es/checkbox"));
29
+
30
+ require("antd/es/select/style");
31
+
32
+ var _select = _interopRequireDefault(require("antd/es/select"));
33
+
34
+ require("antd/es/date-picker/style");
35
+
36
+ var _datePicker = _interopRequireDefault(require("antd/es/date-picker"));
37
+
38
+ require("antd/es/input-number/style");
39
+
40
+ var _inputNumber = _interopRequireDefault(require("antd/es/input-number"));
41
+
42
+ var _objectSpread4 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
43
+
44
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
45
+
46
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
47
+
48
+ require("antd/es/form/style");
49
+
50
+ var _form = _interopRequireDefault(require("antd/es/form"));
51
+
52
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
53
+
54
+ require("antd/es/input/style");
55
+
56
+ var _input = _interopRequireDefault(require("antd/es/input"));
57
+
58
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
59
+
60
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
61
+
62
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
63
+
64
+ var _react = _interopRequireWildcard(require("react"));
65
+
66
+ var _dayjs = _interopRequireDefault(require("dayjs"));
67
+
68
+ var _UploadOss = _interopRequireDefault(require("../UploadOss"));
69
+
70
+ var _IconFont = _interopRequireDefault(require("../IconFont"));
71
+
72
+ var _excluded = ["value", "onChange"],
73
+ _excluded2 = ["index"],
74
+ _excluded3 = ["isEdit", "editEnum", "valueType", "editable", "children", "dataIndex", "record", "handleSave"],
75
+ _excluded4 = ["value", "onChange", "columns", "isEdit", "isAdd", "rowKey"];
76
+ var UploadBtn = _UploadOss.default.UploadBtn;
77
+
78
+ var EditableContext = /*#__PURE__*/_react.default.createContext(null);
79
+
80
+ var UploadSingle = function UploadSingle(props) {
81
+ var value = props.value,
82
+ onChange = props.onChange,
83
+ editEnum = props.editEnum;
84
+
85
+ var handleDelete = function handleDelete() {
86
+ onChange === null || onChange === void 0 ? void 0 : onChange();
87
+ };
88
+
89
+ return /*#__PURE__*/_react.default.createElement("div", {
90
+ className: "upload_single"
91
+ }, value ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_IconFont.default, {
92
+ type: "lmweb-link",
93
+ style: {
94
+ fontSize: 14,
95
+ color: '#1890ff'
96
+ }
97
+ }), /*#__PURE__*/_react.default.createElement("a", {
98
+ href: "".concat(value === null || value === void 0 ? void 0 : value.externalUrl, "/").concat(value === null || value === void 0 ? void 0 : value.filePath).concat(value === null || value === void 0 ? void 0 : value.realFileName),
99
+ target: "_blank",
100
+ rel: "noreferrer"
101
+ }, value === null || value === void 0 ? void 0 : value.fileName), /*#__PURE__*/_react.default.createElement(_IconFont.default, {
102
+ type: "lmweb-delete",
103
+ style: {
104
+ fontSize: 14,
105
+ color: '#1890ff'
106
+ },
107
+ onClick: handleDelete
108
+ })) : /*#__PURE__*/_react.default.createElement(UploadBtn, (0, _extends2.default)({}, editEnum, {
109
+ value: value,
110
+ onChange: onChange
111
+ })));
112
+ };
113
+
114
+ var InputRange = function InputRange(_ref) {
115
+ var _ref$value = _ref.value,
116
+ value = _ref$value === void 0 ? ['', ''] : _ref$value,
117
+ onChange = _ref.onChange,
118
+ editEnum = (0, _objectWithoutProperties2.default)(_ref, _excluded);
119
+
120
+ // 输入值改变
121
+ var handleInput = function handleInput(e, type) {
122
+ var v = e.target.value;
123
+ var nValue = (0, _toConsumableArray2.default)(value);
124
+
125
+ if (type === 'prev') {
126
+ nValue[0] = v;
127
+ }
128
+
129
+ if (type === 'next') {
130
+ nValue[1] = v;
131
+ }
132
+
133
+ onChange(nValue);
134
+ };
135
+
136
+ return /*#__PURE__*/_react.default.createElement("div", {
137
+ className: "lm_base_editTable_wrapperRange"
138
+ }, /*#__PURE__*/_react.default.createElement("div", {
139
+ className: "inputRange"
140
+ }, /*#__PURE__*/_react.default.createElement(_input.default, (0, _extends2.default)({
141
+ value: value === null || value === void 0 ? void 0 : value[0],
142
+ placeholder: "\u8BF7\u8F93\u5165",
143
+ onChange: function onChange(e) {
144
+ return handleInput(e, 'prev');
145
+ }
146
+ }, editEnum)), "~", /*#__PURE__*/_react.default.createElement(_input.default, (0, _extends2.default)({
147
+ value: value === null || value === void 0 ? void 0 : value[1],
148
+ placeholder: "\u8BF7\u8F93\u5165",
149
+ onChange: function onChange(e) {
150
+ return handleInput(e, 'next');
151
+ }
152
+ }, editEnum))));
153
+ }; // 表格行
154
+
155
+
156
+ var EditableRow = function EditableRow(_ref2) {
157
+ var index = _ref2.index,
158
+ props = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
159
+
160
+ var _Form$useForm = _form.default.useForm(),
161
+ _Form$useForm2 = (0, _slicedToArray2.default)(_Form$useForm, 1),
162
+ form = _Form$useForm2[0];
163
+
164
+ return /*#__PURE__*/_react.default.createElement(_form.default, {
165
+ form: form,
166
+ component: false
167
+ }, /*#__PURE__*/_react.default.createElement(EditableContext.Provider, {
168
+ value: form
169
+ }, /*#__PURE__*/_react.default.createElement("tr", props)));
170
+ };
171
+ /*
172
+ 表格单元格
173
+ editEnum: 下拉框时的数据数组(非数组时是配置设置)
174
+ valueType: 编辑框配置(多选)
175
+ */
176
+
177
+
178
+ var EditableCell = function EditableCell(props) {
179
+ var isEdit = props.isEdit,
180
+ editEnum = props.editEnum,
181
+ valueType = props.valueType,
182
+ editable = props.editable,
183
+ children = props.children,
184
+ dataIndex = props.dataIndex,
185
+ record = props.record,
186
+ handleSave = props.handleSave,
187
+ restProps = (0, _objectWithoutProperties2.default)(props, _excluded3);
188
+
189
+ var _useState = (0, _react.useState)(true),
190
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
191
+ editing = _useState2[0],
192
+ setEditing = _useState2[1];
193
+
194
+ var form = (0, _react.useContext)(EditableContext); // useEffect(() => {
195
+ // if (editing) {
196
+ // inputRef.current.focus();
197
+ // }
198
+ // }, [editing]);
199
+ // 出现死循环找我
200
+
201
+ (0, _react.useEffect)(function () {
202
+ if (isEdit && editable && record[dataIndex]) {
203
+ form.setFieldsValue((0, _defineProperty2.default)({}, dataIndex, editable === 'date' ? (0, _dayjs.default)(record[dataIndex]) : record[dataIndex]));
204
+ }
205
+ }, [record]); // 切换编辑状态
206
+
207
+ var toggleEdit = function toggleEdit() {
208
+ setEditing(!editing);
209
+ form.setFieldsValue((0, _defineProperty2.default)({}, dataIndex, record[dataIndex]));
210
+ };
211
+
212
+ var save = /*#__PURE__*/function () {
213
+ var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
214
+ var values;
215
+ return _regenerator.default.wrap(function _callee$(_context) {
216
+ while (1) {
217
+ switch (_context.prev = _context.next) {
218
+ case 0:
219
+ _context.prev = 0;
220
+ _context.next = 3;
221
+ return form.validateFields();
222
+
223
+ case 3:
224
+ values = _context.sent;
225
+ // 传入服务器时格式化mount
226
+ // values.endTime = values.endTime.format('YYYY-MM-DD');
227
+ // toggleEdit();
228
+ handleSave((0, _objectSpread4.default)((0, _objectSpread4.default)({}, record), values));
229
+ _context.next = 10;
230
+ break;
231
+
232
+ case 7:
233
+ _context.prev = 7;
234
+ _context.t0 = _context["catch"](0);
235
+ console.log('Save failedtext:', _context.t0);
236
+
237
+ case 10:
238
+ case "end":
239
+ return _context.stop();
240
+ }
241
+ }
242
+ }, _callee, null, [[0, 7]]);
243
+ }));
244
+
245
+ return function save() {
246
+ return _ref3.apply(this, arguments);
247
+ };
248
+ }();
249
+
250
+ var childNode = children; // 输入框
251
+
252
+ function Control(con) {
253
+ switch (con) {
254
+ case 'input':
255
+ return /*#__PURE__*/_react.default.createElement(_input.default, (0, _extends2.default)({
256
+ onPressEnter: save,
257
+ onBlur: save,
258
+ placeholder: "\u8BF7\u8F93\u5165"
259
+ }, editEnum));
260
+
261
+ case 'inputRange':
262
+ return /*#__PURE__*/_react.default.createElement(InputRange, (0, _extends2.default)({
263
+ onChange: save
264
+ }, editEnum));
265
+
266
+ case 'number':
267
+ return /*#__PURE__*/_react.default.createElement(_inputNumber.default, (0, _extends2.default)({
268
+ onPressEnter: save,
269
+ onChange: save,
270
+ style: {
271
+ width: (editEnum === null || editEnum === void 0 ? void 0 : editEnum.width) || '100%'
272
+ },
273
+ placeholder: "\u8BF7\u8F93\u5165"
274
+ }, editEnum));
275
+
276
+ case 'date':
277
+ return /*#__PURE__*/_react.default.createElement(_datePicker.default, (0, _extends2.default)({
278
+ onChange: save
279
+ }, editEnum));
280
+
281
+ case 'select':
282
+ return /*#__PURE__*/_react.default.createElement(_select.default, (0, _extends2.default)({
283
+ onSelect: save,
284
+ onClear: save,
285
+ showSearch: true,
286
+ allowClear: true,
287
+ placeholder: "\u8BF7\u9009\u62E9",
288
+ filterOption: function filterOption(input, option) {
289
+ return option.children.toLowerCase().indexOf(input.toLowerCase()) >= 0;
290
+ }
291
+ }, valueType), editEnum === null || editEnum === void 0 ? void 0 : editEnum.map(function (v) {
292
+ return /*#__PURE__*/_react.default.createElement(_select.default.Option, {
293
+ key: v.value,
294
+ value: v.value
295
+ }, v.label);
296
+ }));
297
+
298
+ case 'multiple':
299
+ return /*#__PURE__*/_react.default.createElement(_select.default, (0, _extends2.default)({
300
+ mode: "multiple",
301
+ onSelect: save,
302
+ onClear: save,
303
+ showSearch: true,
304
+ allowClear: true,
305
+ placeholder: "\u8BF7\u9009\u62E9",
306
+ filterOption: function filterOption(input, option) {
307
+ return option.children.toLowerCase().indexOf(input.toLowerCase()) >= 0;
308
+ }
309
+ }, valueType), editEnum === null || editEnum === void 0 ? void 0 : editEnum.map(function (v) {
310
+ return /*#__PURE__*/_react.default.createElement(_select.default.Option, {
311
+ key: v.value,
312
+ value: v.value
313
+ }, v.label);
314
+ }));
315
+
316
+ case 'checkbox':
317
+ return /*#__PURE__*/_react.default.createElement(_checkbox.default.Group, {
318
+ onChange: save
319
+ }, editEnum === null || editEnum === void 0 ? void 0 : editEnum.map(function (v) {
320
+ return /*#__PURE__*/_react.default.createElement(_checkbox.default, {
321
+ key: v.value,
322
+ value: v.value
323
+ }, v.label);
324
+ }));
325
+
326
+ case 'radio':
327
+ return /*#__PURE__*/_react.default.createElement(_radio.default.Group, {
328
+ onChange: save
329
+ }, editEnum === null || editEnum === void 0 ? void 0 : editEnum.map(function (v) {
330
+ return /*#__PURE__*/_react.default.createElement(_radio.default, {
331
+ key: v.value,
332
+ value: v.value
333
+ }, v.label);
334
+ }));
335
+
336
+ case 'upload':
337
+ return /*#__PURE__*/_react.default.createElement(UploadSingle, {
338
+ editEnum: editEnum,
339
+ onChange: save
340
+ });
341
+
342
+ case 'render':
343
+ {
344
+ var render = editEnum.render;
345
+ return render === null || render === void 0 ? void 0 : render((0, _objectSpread4.default)((0, _objectSpread4.default)({}, record), {}, {
346
+ onChange: save
347
+ }));
348
+ }
349
+
350
+ default:
351
+ return /*#__PURE__*/_react.default.createElement(_input.default, {
352
+ onPressEnter: save,
353
+ onBlur: save
354
+ });
355
+ }
356
+ }
357
+
358
+ if (isEdit && editable) {
359
+ childNode = /*#__PURE__*/_react.default.createElement(_form.default.Item, {
360
+ style: {
361
+ margin: 0
362
+ },
363
+ name: dataIndex
364
+ }, Control(editable));
365
+ }
366
+
367
+ return /*#__PURE__*/_react.default.createElement("td", restProps, childNode);
368
+ };
369
+
370
+ var EditTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
371
+ var defaultData = props.value,
372
+ onChange = props.onChange,
373
+ columns = props.columns,
374
+ isEdit = props.isEdit,
375
+ _props$isAdd = props.isAdd,
376
+ isAdd = _props$isAdd === void 0 ? true : _props$isAdd,
377
+ _props$rowKey = props.rowKey,
378
+ _rowKey = _props$rowKey === void 0 ? '_ID' : _props$rowKey,
379
+ resetProps = (0, _objectWithoutProperties2.default)(props, _excluded4);
380
+
381
+ var _useState3 = (0, _react.useState)(function () {
382
+ return defaultData === null || defaultData === void 0 ? void 0 : defaultData.map(function (v, idx) {
383
+ return (0, _objectSpread4.default)((0, _defineProperty2.default)({}, _rowKey, "v".concat(idx + 1)), v);
384
+ });
385
+ }),
386
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
387
+ dataSource = _useState4[0],
388
+ setDataSource = _useState4[1];
389
+
390
+ var _useState5 = (0, _react.useState)(2),
391
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
392
+ count = _useState6[0],
393
+ setCount = _useState6[1]; // 删除
394
+
395
+
396
+ var handleDelete = function handleDelete(key) {
397
+ var nValue = dataSource.filter(function (item) {
398
+ return item.key !== key;
399
+ });
400
+ setDataSource(nValue);
401
+ };
402
+
403
+ var handleAdd = function handleAdd() {
404
+ var newData = (0, _defineProperty2.default)({}, _rowKey, count + 1);
405
+ var nValue = [].concat((0, _toConsumableArray2.default)(dataSource), [newData]);
406
+ setDataSource(nValue);
407
+ setCount(count + 1);
408
+ };
409
+
410
+ var handleSave = function handleSave(row) {
411
+ var newData = (0, _toConsumableArray2.default)(dataSource);
412
+ var index = newData.findIndex(function (item) {
413
+ return row[_rowKey] === item[_rowKey];
414
+ });
415
+ var item = newData[index];
416
+ newData.splice(index, 1, (0, _objectSpread4.default)((0, _objectSpread4.default)({}, item), row));
417
+ setDataSource(newData);
418
+ onChange === null || onChange === void 0 ? void 0 : onChange(newData);
419
+ };
420
+
421
+ var config = (0, _react.useMemo)(function () {
422
+ return (0, _objectSpread4.default)({
423
+ size: 'small',
424
+ pagination: false,
425
+ tableLayout: 'fixed',
426
+ scroll: {
427
+ x: '100%'
428
+ },
429
+ rowKey: function rowKey(record) {
430
+ return record[_rowKey] || record.index || Math.random();
431
+ },
432
+ components: {
433
+ body: {
434
+ row: EditableRow,
435
+ cell: EditableCell
436
+ }
437
+ },
438
+ columns: columns.map(function (col) {
439
+ if (!col.editable) {
440
+ return col;
441
+ }
442
+
443
+ return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, col), {}, {
444
+ onCell: function onCell(record) {
445
+ return {
446
+ record: record,
447
+ isEdit: isEdit,
448
+ editable: col.editable,
449
+ dataIndex: col.dataIndex,
450
+ editEnum: typeof col.editEnum === 'function' ? col.editEnum(record) : col.editEnum,
451
+ valueType: typeof col.valueType === 'function' ? col.valueType(record) : col.valueType,
452
+ handleSave: handleSave
453
+ };
454
+ }
455
+ });
456
+ })
457
+ }, resetProps);
458
+ }, [columns, dataSource]);
459
+ (0, _react.useEffect)(function () {
460
+ setDataSource(defaultData === null || defaultData === void 0 ? void 0 : defaultData.map(function (v, idx) {
461
+ return (0, _objectSpread4.default)((0, _defineProperty2.default)({}, _rowKey, "v".concat(idx + 1)), v);
462
+ }));
463
+ }, [defaultData]);
464
+ (0, _react.useImperativeHandle)(ref, function () {
465
+ return {
466
+ setRow: handleSave
467
+ };
468
+ });
469
+ return /*#__PURE__*/_react.default.createElement("div", {
470
+ className: "lm_base_editTable_warpper"
471
+ }, /*#__PURE__*/_react.default.createElement(_table.default, (0, _extends2.default)({}, config, {
472
+ rowClassName: function rowClassName() {
473
+ return 'editable-row';
474
+ },
475
+ bordered: true,
476
+ dataSource: dataSource
477
+ })), isEdit && isAdd && /*#__PURE__*/_react.default.createElement(_button.default, {
478
+ type: "dashed",
479
+ block: true,
480
+ onClick: handleAdd,
481
+ style: {
482
+ marginTop: 8
483
+ }
484
+ }, /*#__PURE__*/_react.default.createElement("i", {
485
+ className: "iconfont lmweb-plus"
486
+ }), "\u65B0\u589E"));
487
+ });
488
+ var _default = EditTable;
489
+ exports.default = _default;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _EditTable = _interopRequireDefault(require("./EditTable"));
11
+
12
+ var _default = _EditTable.default;
13
+ exports.default = _default;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ require("./style.css");
@@ -0,0 +1,165 @@
1
+ .ant-layout-sider {
2
+ min-height: 100vh;
3
+ background-color: #022766;
4
+ }
5
+ .ant-menu-dark .ant-menu-inline.ant-menu-sub {
6
+ box-shadow: none;
7
+ }
8
+ .ant-menu-submenu-placement-rightTop {
9
+ display: none;
10
+ }
11
+ .ant-table .row-active .ant-table-cell {
12
+ background-color: #FEFFD3 !important;
13
+ }
14
+ .ant-dropdown-menu-item {
15
+ font-size: 12px;
16
+ height: 32px;
17
+ }
18
+ .ant-tabs .ant-tabs-nav .ant-tabs-tab {
19
+ font-size: 14px;
20
+ }
21
+ .ant-tabs.auto_tabs {
22
+ display: flex;
23
+ flex-flow: column;
24
+ height: 100%;
25
+ }
26
+ .ant-tabs.auto_tabs .ant-tabs-nav {
27
+ height: 48px;
28
+ }
29
+ .ant-tabs.auto_tabs .ant-tabs-content-holder {
30
+ flex: 1;
31
+ overflow: auto;
32
+ }
33
+ .ant-drawer.drawer_wrapper .ant-drawer-header {
34
+ padding: 0 24px;
35
+ }
36
+ .ant-drawer.drawer_wrapper .ant-drawer-body {
37
+ position: relative;
38
+ flex: 1;
39
+ padding: 0 24px;
40
+ }
41
+ .ant-modal-wrap.plugin_modal {
42
+ display: flex;
43
+ flex-flow: column;
44
+ justify-content: flex-end;
45
+ }
46
+ .ant-modal-wrap.plugin_modal .ant-modal {
47
+ left: 56px;
48
+ top: 0;
49
+ margin: 0 0 8px 8px;
50
+ padding: 0;
51
+ }
52
+ .ant-modal-wrap.lm_modal_confirm .anticon {
53
+ margin-top: -1px;
54
+ margin-right: 8px;
55
+ }
56
+ .ant-modal-wrap.lm_modal_confirm .ant-modal-body {
57
+ padding: 16px 24px;
58
+ }
59
+ .ant-popover.pop_img .ant-popover-inner-content {
60
+ line-height: 1;
61
+ padding: var(--gap);
62
+ }
63
+ @font-face {
64
+ font-family: 'iconfont';
65
+ /* Project id 2966019 */
66
+ src: url('//at.alicdn.com/t/font_2966019_i3eb1wwkoo.woff2?t=1641546077924') format('woff2'), url('//at.alicdn.com/t/font_2966019_i3eb1wwkoo.woff?t=1641546077924') format('woff'), url('//at.alicdn.com/t/font_2966019_i3eb1wwkoo.ttf?t=1641546077924') format('truetype');
67
+ }
68
+ .icon_ {
69
+ font-family: 'iconfont';
70
+ font-size: 14px;
71
+ }
72
+ .iconfont {
73
+ font-size: 12px;
74
+ }
75
+ .icon_home::before {
76
+ content: '\e7fc';
77
+ }
78
+ :root {
79
+ --them-color: #1890fc;
80
+ --main-color: #1890fc;
81
+ --primary-color: #1890fc;
82
+ --primary2-color: rgba(24, 144, 252, 0.08);
83
+ --success-color: #56C22D;
84
+ --warning-color: #FD9727;
85
+ --error-color: #FA4F53;
86
+ --aside-bg-color: #022766;
87
+ --font-color: rgba(0, 0, 0, 0.85);
88
+ --font2-color: rgba(0, 0, 0, 0.65);
89
+ --text-color: rgba(0, 0, 0, 0.45);
90
+ --box-shadow-color: rgba(0, 0, 0, 0.15);
91
+ --background-color: rgba(0, 0, 0, 0.04);
92
+ --background-color-hover: rgba(0, 0, 0, 0.08);
93
+ --border-color: #f0f0f0;
94
+ --stripe-color: #f5f5f5;
95
+ --border-hover-color: #f2f5f7;
96
+ --gap: 8px;
97
+ --basic-height: 24px;
98
+ }
99
+ .ant-input,
100
+ .ant-select {
101
+ font-size: 12px;
102
+ }
103
+ .ant-select-dropdown .ant-select-item {
104
+ font-size: 12px;
105
+ align-items: center;
106
+ }
107
+ .react-resizable {
108
+ position: relative;
109
+ background-clip: padding-box;
110
+ }
111
+ .react-resizable-handle {
112
+ position: absolute;
113
+ right: 0;
114
+ top: 0;
115
+ z-index: 1;
116
+ width: 3px;
117
+ height: 40px;
118
+ cursor: col-resize;
119
+ }
120
+ .react-resizable-handle:hover {
121
+ background-color: var(--primary-color);
122
+ }
123
+ .react-resizable-handle:active {
124
+ background-color: var(--primary-color);
125
+ }
126
+ .yf_resizable_bar {
127
+ position: absolute;
128
+ left: 0;
129
+ top: 0;
130
+ z-index: 2;
131
+ height: 0;
132
+ }
133
+ .resizable_line {
134
+ position: absolute;
135
+ left: 0;
136
+ top: 0;
137
+ height: 100%;
138
+ width: 1px;
139
+ background-color: var(--primary-color);
140
+ z-index: 1;
141
+ }
142
+ .handle_resizable {
143
+ position: absolute;
144
+ right: 0;
145
+ top: 0;
146
+ height: 100%;
147
+ width: 5px;
148
+ z-index: 2;
149
+ }
150
+ .lm_base_editTable_warpper .ant-picker {
151
+ width: 100%;
152
+ }
153
+ .lm_base_editTable_warpper .upload_single {
154
+ display: inline-flex;
155
+ align-items: center;
156
+ line-height: 1;
157
+ gap: 8px;
158
+ }
159
+ .lm_base_editTable_warpper .ant-table-cell:empty::before {
160
+ content: '-';
161
+ }
162
+ .lm_base_editTable_wrapperRange .inputRange {
163
+ display: inline-flex;
164
+ align-items: center;
165
+ }