linkmore-design 1.0.55 → 1.0.58

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 (192) hide show
  1. package/dist/Button/index.d.ts +4 -0
  2. package/dist/CardTable/LmCardTable.d.ts +1 -0
  3. package/dist/CardTable/card/PictureTextRowOperate.d.ts +7 -0
  4. package/dist/CustomTableOption/cardSort.d.ts +4 -0
  5. package/dist/CustomTableOption/index.d.ts +1 -0
  6. package/dist/DatePicker/PickerButton.d.ts +2 -0
  7. package/dist/DatePicker/PickerTag.d.ts +2 -0
  8. package/dist/DatePicker/demos/basic.d.ts +2 -0
  9. package/dist/DatePicker/generatePicker/generateRangePicker.d.ts +4 -0
  10. package/dist/DatePicker/generatePicker/generateSinglePicker.d.ts +14 -0
  11. package/dist/DatePicker/generatePicker/index.d.ts +106 -0
  12. package/dist/DatePicker/generatePicker/interface.d.ts +12 -0
  13. package/dist/DatePicker/index.d.ts +17 -0
  14. package/dist/DatePicker/style/index.d.ts +1 -0
  15. package/dist/DatePicker/util.d.ts +14 -0
  16. package/dist/Empty/demos/custom.d.ts +2 -0
  17. package/dist/Empty/empty.d.ts +2 -0
  18. package/dist/Empty/index.d.ts +18 -3
  19. package/dist/Empty/simple.d.ts +2 -0
  20. package/dist/LmEditTable/demos/basic copy.d.ts +2 -0
  21. package/dist/LmFilter/Controls/CheckboxTags.d.ts +6 -0
  22. package/dist/LmFilter/Controls/index.d.ts +2 -0
  23. package/dist/LmFilter/LmFilter.d.ts +4 -1
  24. package/dist/LmFilter/complexFilter/drawer.d.ts +4 -0
  25. package/dist/LmFilter/complexFilter/index.d.ts +3 -1
  26. package/dist/LmFilter/complexFilter/valueDrawer.d.ts +4 -0
  27. package/dist/LmFilter/localization.d.ts +8 -0
  28. package/dist/LmFilter/utils.d.ts +1 -1
  29. package/dist/Switch/demos/table.d.ts +2 -0
  30. package/dist/Switch/index.d.ts +2 -1
  31. package/dist/_util/motion.d.ts +8 -0
  32. package/dist/_util/statusUtils.d.ts +6 -0
  33. package/dist/_util/type.d.ts +9 -0
  34. package/dist/_util/warning.d.ts +6 -0
  35. package/dist/index.d.ts +3 -0
  36. package/dist/index.umd.js +10609 -284
  37. package/dist/index.umd.min.js +6 -6
  38. package/es/Button/index.d.ts +4 -0
  39. package/es/Button/index.js +1 -1
  40. package/es/CardTable/LmCardTable.js +4 -1
  41. package/es/CardTable/body/TableBodyCell.js +3 -0
  42. package/es/CardTable/card/PictureTextRow.js +19 -51
  43. package/es/CardTable/card/PictureTextRowOperate.js +130 -0
  44. package/es/CardTable/style/index.css +165 -10
  45. package/es/CustomTableOption/cardSort.d.ts +4 -0
  46. package/es/CustomTableOption/cardSort.js +219 -0
  47. package/es/CustomTableOption/columnsSort.js +2 -4
  48. package/es/CustomTableOption/filterSort.js +0 -3
  49. package/es/CustomTableOption/index.d.ts +1 -0
  50. package/es/CustomTableOption/index.js +37 -13
  51. package/es/CustomTableOption/style/index.css +3 -0
  52. package/es/DatePicker/PickerButton.d.ts +2 -0
  53. package/es/DatePicker/PickerButton.js +8 -0
  54. package/es/DatePicker/PickerTag.d.ts +2 -0
  55. package/es/DatePicker/PickerTag.js +7 -0
  56. package/es/DatePicker/generatePicker/generateRangePicker.d.ts +4 -0
  57. package/es/DatePicker/generatePicker/generateRangePicker.js +142 -0
  58. package/es/DatePicker/generatePicker/generateSinglePicker.d.ts +14 -0
  59. package/es/DatePicker/generatePicker/generateSinglePicker.js +170 -0
  60. package/es/DatePicker/generatePicker/index.d.ts +106 -0
  61. package/es/DatePicker/generatePicker/index.js +84 -0
  62. package/es/DatePicker/generatePicker/interface.d.ts +12 -0
  63. package/es/DatePicker/generatePicker/interface.js +1 -0
  64. package/es/DatePicker/index.d.ts +17 -0
  65. package/es/DatePicker/index.js +7 -0
  66. package/es/DatePicker/style/index.css +505 -0
  67. package/es/DatePicker/style/index.d.ts +1 -0
  68. package/es/DatePicker/style/index.js +1 -0
  69. package/es/DatePicker/util.d.ts +14 -0
  70. package/es/DatePicker/util.js +111 -0
  71. package/es/Empty/empty.d.ts +2 -0
  72. package/es/Empty/empty.js +55 -0
  73. package/es/Empty/index.d.ts +18 -3
  74. package/es/Empty/index.js +100 -1
  75. package/es/Empty/simple.d.ts +2 -0
  76. package/es/Empty/simple.js +36 -0
  77. package/es/Empty/style/index.css +44 -0
  78. package/es/IconFont/index.js +1 -1
  79. package/es/LmEditTable/DragHandle.js +1 -1
  80. package/es/LmEditTable/EditTable.js +27 -35
  81. package/es/LmFilter/Controls/CheckboxTags.js +53 -0
  82. package/es/LmFilter/Controls/index.js +77 -0
  83. package/es/LmFilter/LmFilter.js +17 -5
  84. package/es/LmFilter/complexFilter/drawer.js +362 -0
  85. package/es/LmFilter/complexFilter/index.js +50 -3
  86. package/es/LmFilter/complexFilter/valueDrawer.js +238 -0
  87. package/es/LmFilter/components/CascaderFilter.js +19 -32
  88. package/es/LmFilter/components/CheckboxFilter.js +13 -21
  89. package/es/LmFilter/components/DateFilter.js +50 -22
  90. package/es/LmFilter/components/DropdownFIlter.js +45 -25
  91. package/es/LmFilter/components/SelectFilter.js +2 -3
  92. package/es/LmFilter/components/index.js +5 -61
  93. package/es/LmFilter/filterFns/index.js +22 -3
  94. package/es/LmFilter/localization.d.ts +8 -0
  95. package/es/LmFilter/localization.js +12 -0
  96. package/es/LmFilter/style/style.css +13 -5
  97. package/es/LmFilter/utils.js +63 -14
  98. package/es/LmFilter/wrapper/FilterRoot.js +40 -3
  99. package/es/LmTable/Table.js +15 -8
  100. package/es/QuickMenu/index.js +5 -3
  101. package/es/Switch/index.d.ts +2 -1
  102. package/es/Switch/index.js +33 -1
  103. package/es/Switch/style/index.css +41 -0
  104. package/es/_util/motion.d.ts +8 -0
  105. package/es/_util/motion.js +60 -0
  106. package/es/_util/statusUtils.d.ts +6 -0
  107. package/es/_util/statusUtils.js +12 -0
  108. package/es/_util/type.d.ts +9 -0
  109. package/es/_util/type.js +15 -0
  110. package/es/_util/warning.d.ts +6 -0
  111. package/es/_util/warning.js +17 -0
  112. package/es/index.d.ts +3 -0
  113. package/es/index.js +2 -1
  114. package/es/message/index.d.ts +5 -5
  115. package/lib/Button/index.d.ts +4 -0
  116. package/lib/Button/index.js +1 -1
  117. package/lib/CardTable/LmCardTable.js +4 -1
  118. package/lib/CardTable/body/TableBodyCell.js +3 -0
  119. package/lib/CardTable/card/PictureTextRow.js +19 -51
  120. package/lib/CardTable/card/PictureTextRowOperate.js +130 -0
  121. package/lib/CardTable/style/index.css +165 -10
  122. package/lib/CustomTableOption/cardSort.d.ts +4 -0
  123. package/lib/CustomTableOption/cardSort.js +239 -0
  124. package/lib/CustomTableOption/columnsSort.js +2 -4
  125. package/lib/CustomTableOption/filterSort.js +0 -3
  126. package/lib/CustomTableOption/index.d.ts +1 -0
  127. package/lib/CustomTableOption/index.js +38 -13
  128. package/lib/CustomTableOption/style/index.css +3 -0
  129. package/lib/DatePicker/PickerButton.d.ts +2 -0
  130. package/lib/DatePicker/PickerButton.js +19 -0
  131. package/lib/DatePicker/PickerTag.d.ts +2 -0
  132. package/lib/DatePicker/PickerTag.js +18 -0
  133. package/lib/DatePicker/generatePicker/generateRangePicker.d.ts +4 -0
  134. package/lib/DatePicker/generatePicker/generateRangePicker.js +168 -0
  135. package/lib/DatePicker/generatePicker/generateSinglePicker.d.ts +14 -0
  136. package/lib/DatePicker/generatePicker/generateSinglePicker.js +196 -0
  137. package/lib/DatePicker/generatePicker/index.d.ts +106 -0
  138. package/lib/DatePicker/generatePicker/index.js +102 -0
  139. package/lib/DatePicker/generatePicker/interface.d.ts +12 -0
  140. package/lib/DatePicker/generatePicker/interface.js +5 -0
  141. package/lib/DatePicker/index.d.ts +17 -0
  142. package/lib/DatePicker/index.js +21 -0
  143. package/lib/DatePicker/style/index.css +505 -0
  144. package/lib/DatePicker/style/index.d.ts +1 -0
  145. package/lib/DatePicker/style/index.js +3 -0
  146. package/lib/DatePicker/util.d.ts +14 -0
  147. package/lib/DatePicker/util.js +122 -0
  148. package/lib/Empty/empty.d.ts +2 -0
  149. package/lib/Empty/empty.js +66 -0
  150. package/lib/Empty/index.d.ts +18 -3
  151. package/lib/Empty/index.js +107 -1
  152. package/lib/Empty/simple.d.ts +2 -0
  153. package/lib/Empty/simple.js +47 -0
  154. package/lib/Empty/style/index.css +44 -0
  155. package/lib/IconFont/index.js +1 -1
  156. package/lib/LmEditTable/DragHandle.js +1 -1
  157. package/lib/LmEditTable/EditTable.js +26 -36
  158. package/lib/LmFilter/Controls/CheckboxTags.js +53 -0
  159. package/lib/LmFilter/Controls/index.js +77 -0
  160. package/lib/LmFilter/LmFilter.js +17 -5
  161. package/lib/LmFilter/complexFilter/drawer.js +362 -0
  162. package/lib/LmFilter/complexFilter/index.js +50 -3
  163. package/lib/LmFilter/complexFilter/valueDrawer.js +238 -0
  164. package/lib/LmFilter/components/CascaderFilter.js +19 -32
  165. package/lib/LmFilter/components/CheckboxFilter.js +13 -21
  166. package/lib/LmFilter/components/DateFilter.js +50 -22
  167. package/lib/LmFilter/components/DropdownFIlter.js +45 -25
  168. package/lib/LmFilter/components/SelectFilter.js +2 -3
  169. package/lib/LmFilter/components/index.js +5 -61
  170. package/lib/LmFilter/filterFns/index.js +22 -3
  171. package/lib/LmFilter/localization.d.ts +8 -0
  172. package/lib/LmFilter/localization.js +19 -0
  173. package/lib/LmFilter/style/style.css +13 -5
  174. package/lib/LmFilter/utils.js +63 -14
  175. package/lib/LmFilter/wrapper/FilterRoot.js +40 -3
  176. package/lib/LmTable/Table.js +15 -8
  177. package/lib/QuickMenu/index.js +4 -2
  178. package/lib/Switch/index.d.ts +2 -1
  179. package/lib/Switch/index.js +34 -1
  180. package/lib/Switch/style/index.css +41 -0
  181. package/lib/_util/motion.d.ts +8 -0
  182. package/lib/_util/motion.js +71 -0
  183. package/lib/_util/statusUtils.d.ts +6 -0
  184. package/lib/_util/statusUtils.js +29 -0
  185. package/lib/_util/type.d.ts +9 -0
  186. package/lib/_util/type.js +27 -0
  187. package/lib/_util/warning.d.ts +6 -0
  188. package/lib/_util/warning.js +35 -0
  189. package/lib/index.d.ts +3 -0
  190. package/lib/index.js +9 -1
  191. package/lib/message/index.d.ts +5 -5
  192. package/package.json +1 -1
@@ -0,0 +1,219 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ import React, { useState, useMemo, useEffect, useImperativeHandle, forwardRef } from 'react';
3
+ import { DndContext, closestCenter, KeyboardSensor, PointerSensor, useSensor, useSensors } from '@dnd-kit/core';
4
+ import { arrayMove, useSortable, SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy } from '@dnd-kit/sortable';
5
+ import { Checkbox, Input } from 'linkmore-design';
6
+ import { HolderOutlined } from '@ant-design/icons';
7
+ import { CSS } from '@dnd-kit/utilities';
8
+ import { cloneDeep } from 'lodash';
9
+ var UNLLVALUE = [null, undefined];
10
+ var Search = Input.Search;
11
+
12
+ var SortItem = function SortItem(props) {
13
+ var _a, _b;
14
+
15
+ var _useSortable = useSortable({
16
+ id: "".concat(props.id)
17
+ }),
18
+ attributes = _useSortable.attributes,
19
+ listeners = _useSortable.listeners,
20
+ setNodeRef = _useSortable.setNodeRef,
21
+ transform = _useSortable.transform,
22
+ transition = _useSortable.transition;
23
+
24
+ var style = {
25
+ transform: CSS.Transform.toString(transform),
26
+ transition: transition
27
+ };
28
+ return /*#__PURE__*/React.createElement("div", Object.assign({
29
+ ref: setNodeRef,
30
+ className: 'lm_custom_item',
31
+ style: style
32
+ }, attributes), /*#__PURE__*/React.createElement(Checkbox, {
33
+ checked: ((_a = props.item) === null || _a === void 0 ? void 0 : _a.show) === false ? false : true,
34
+ onChange: function onChange(e) {
35
+ return props.toggleShow(e.target.checked, props.id);
36
+ },
37
+ className: "filter_item-content"
38
+ }, (_b = props.item) === null || _b === void 0 ? void 0 : _b.title), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(HolderOutlined, Object.assign({}, listeners, {
39
+ className: 'lm_custom_icon sort_item'
40
+ }))));
41
+ };
42
+ /** order show */
43
+
44
+
45
+ var FilterSort = /*#__PURE__*/forwardRef(function (_ref, ref) {
46
+ var _ref$card = _ref.card,
47
+ card = _ref$card === void 0 ? [] : _ref$card,
48
+ _ref$cardStateValue = _ref.cardStateValue,
49
+ cardStateValue = _ref$cardStateValue === void 0 ? {} : _ref$cardStateValue;
50
+
51
+ var _useState = useState([]),
52
+ _useState2 = _slicedToArray(_useState, 2),
53
+ localCard = _useState2[0],
54
+ setLocalCard = _useState2[1];
55
+
56
+ var _useState3 = useState({}),
57
+ _useState4 = _slicedToArray(_useState3, 2),
58
+ colStateValue = _useState4[0],
59
+ setColStateValue = _useState4[1];
60
+ /** 正在输入的查询条件 */
61
+
62
+
63
+ var _useState5 = useState(''),
64
+ _useState6 = _slicedToArray(_useState5, 2),
65
+ searchIngValue = _useState6[0],
66
+ setSearchIngValue = _useState6[1];
67
+
68
+ var _useState7 = useState(''),
69
+ _useState8 = _slicedToArray(_useState7, 2),
70
+ searchValue = _useState8[0],
71
+ setSearchValue = _useState8[1];
72
+
73
+ var sortMenu = useMemo(function () {
74
+ var cloneCol = cloneDeep(localCard);
75
+ cloneCol.forEach(function (item, index) {
76
+ var _a, _b;
77
+
78
+ var order = (_a = colStateValue[item.field]) === null || _a === void 0 ? void 0 : _a.order;
79
+ item.order = order !== undefined && order !== null ? order : UNLLVALUE.includes(item.order) ? index : item.order;
80
+ item.show = ((_b = colStateValue[item.field]) === null || _b === void 0 ? void 0 : _b.show) === false ? false : UNLLVALUE.includes(item.show) ? true : !!item.show;
81
+ });
82
+ return cloneCol.filter(function (item) {
83
+ var _a;
84
+
85
+ return ((_a = item.title) === null || _a === void 0 ? void 0 : _a.indexOf(searchValue)) > -1;
86
+ });
87
+ }, [localCard, colStateValue, searchValue]);
88
+ var isCheckAll = useMemo(function () {
89
+ var showLength = localCard.filter(function (item) {
90
+ return item.show !== false;
91
+ });
92
+ return {
93
+ indeterminate: (showLength === null || showLength === void 0 ? void 0 : showLength.length) && showLength.length !== localCard.length ? true : false,
94
+ checkAll: showLength.length === localCard.length
95
+ };
96
+ }, [localCard]);
97
+ /** 将当前输入的值,进行最后赋值,作自动计算使用 */
98
+
99
+ var handleSearch = function handleSearch() {
100
+ setSearchValue(searchIngValue);
101
+ };
102
+
103
+ useEffect(function () {
104
+ setLocalCard(card);
105
+ setColStateValue(cardStateValue);
106
+ }, [card]);
107
+ var sensors = useSensors(useSensor(PointerSensor), useSensor(KeyboardSensor, {
108
+ coordinateGetter: sortableKeyboardCoordinates
109
+ }));
110
+ /** 排序结束回调 */
111
+
112
+ var handleDragEnd = function handleDragEnd(event) {
113
+ var active = event.active,
114
+ over = event.over;
115
+
116
+ if (active.id !== over.id) {
117
+ setLocalCard(function (items) {
118
+ var oldIndex = items.findIndex(function (s) {
119
+ return s.dataIndex === active.id;
120
+ });
121
+ var newIndex = items.findIndex(function (s) {
122
+ return s.dataIndex === over.id;
123
+ });
124
+ return arrayMove(items, oldIndex, newIndex).map(function (item, index) {
125
+ return Object.assign(Object.assign({}, item), {
126
+ order: index
127
+ });
128
+ });
129
+ });
130
+ }
131
+ };
132
+ /** 添加是否显示 */
133
+
134
+
135
+ var toggleShow = function toggleShow(value, id) {
136
+ var resultColumns = localCard.map(function (item) {
137
+ if (item.dataIndex === id) {
138
+ return Object.assign(Object.assign({}, item), {
139
+ show: item.show === false ? true : false
140
+ });
141
+ }
142
+
143
+ return Object.assign({}, item);
144
+ });
145
+ setLocalCard(resultColumns);
146
+ };
147
+ /** 切换是否全选 */
148
+
149
+
150
+ var onCheckAllChange = function onCheckAllChange() {
151
+ var resultColumns = localCard.map(function (item) {
152
+ return Object.assign(Object.assign({}, item), {
153
+ show: isCheckAll.checkAll ? false : true
154
+ });
155
+ });
156
+ setLocalCard(resultColumns);
157
+ };
158
+
159
+ useImperativeHandle(ref, function () {
160
+ return {
161
+ getLocalFilter: function getLocalFilter() {
162
+ return localCard;
163
+ },
164
+ getFilterStateValue: function getFilterStateValue() {
165
+ var obj = {};
166
+ localCard.forEach(function (item) {
167
+ obj[item.dataIndex] = {};
168
+
169
+ if (![undefined, null].includes(item.order)) {
170
+ obj[item.dataIndex]['order'] = item.order;
171
+ }
172
+
173
+ if (![undefined, null].includes(item.show)) {
174
+ obj[item.dataIndex]['show'] = item.show;
175
+ }
176
+ });
177
+ return obj;
178
+ }
179
+ };
180
+ });
181
+ return /*#__PURE__*/React.createElement("div", {
182
+ className: 'lm_custom_option_columns'
183
+ }, /*#__PURE__*/React.createElement("div", {
184
+ className: 'global_search'
185
+ }, /*#__PURE__*/React.createElement(Search, {
186
+ value: searchIngValue,
187
+ onChange: function onChange(e) {
188
+ return setSearchIngValue(e.target.value);
189
+ },
190
+ onSearch: handleSearch
191
+ })), /*#__PURE__*/React.createElement("div", {
192
+ className: 'global_setting'
193
+ }, /*#__PURE__*/React.createElement(Checkbox, {
194
+ indeterminate: isCheckAll.indeterminate,
195
+ onChange: onCheckAllChange,
196
+ checked: isCheckAll.checkAll
197
+ }, "\u5168\u9009"), /*#__PURE__*/React.createElement("span", {
198
+ onClick: function onClick() {
199
+ return setLocalCard(card);
200
+ }
201
+ }, "\u91CD\u7F6E")), !!(sortMenu === null || sortMenu === void 0 ? void 0 : sortMenu.length) && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DndContext, {
202
+ sensors: sensors,
203
+ collisionDetection: closestCenter,
204
+ onDragEnd: handleDragEnd
205
+ }, /*#__PURE__*/React.createElement(SortableContext, {
206
+ items: sortMenu === null || sortMenu === void 0 ? void 0 : sortMenu.map(function (v) {
207
+ return "".concat(v.dataIndex);
208
+ }),
209
+ strategy: verticalListSortingStrategy
210
+ }, sortMenu === null || sortMenu === void 0 ? void 0 : sortMenu.map(function (item) {
211
+ return /*#__PURE__*/React.createElement(SortItem, {
212
+ key: item.dataIndex,
213
+ toggleShow: toggleShow,
214
+ item: item,
215
+ id: item.dataIndex
216
+ });
217
+ })))));
218
+ });
219
+ export default FilterSort;
@@ -45,7 +45,6 @@ var SortItem = function SortItem(props) {
45
45
  type: "lmweb-vertical-align-top",
46
46
  className: "lm_custom_icon hover_show icon_top",
47
47
  onClick: function onClick(e) {
48
- console.log(e, 'eee');
49
48
  e.stopPropagation();
50
49
  props.addFiexd(props.id, 'left');
51
50
  }
@@ -67,8 +66,7 @@ var SortItem = function SortItem(props) {
67
66
 
68
67
 
69
68
  var ColumnsSort = /*#__PURE__*/forwardRef(function (_ref, ref) {
70
- var _ref$columns = _ref.columns,
71
- columns = _ref$columns === void 0 ? [] : _ref$columns,
69
+ var columns = _ref.columns,
72
70
  _ref$ColumnsStateValu = _ref.ColumnsStateValue,
73
71
  ColumnsStateValue = _ref$ColumnsStateValu === void 0 ? {} : _ref$ColumnsStateValu;
74
72
 
@@ -148,7 +146,7 @@ var ColumnsSort = /*#__PURE__*/forwardRef(function (_ref, ref) {
148
146
  };
149
147
 
150
148
  useEffect(function () {
151
- setLocalColumns(columns);
149
+ setLocalColumns(columns || []);
152
150
  setColStateValue(ColumnsStateValue);
153
151
  }, [columns]);
154
152
  var leftSensors = useSensors(useSensor(PointerSensor), useSensor(KeyboardSensor, {
@@ -100,9 +100,6 @@ var FilterSort = /*#__PURE__*/forwardRef(function (_ref, ref) {
100
100
  setSearchValue(searchIngValue);
101
101
  };
102
102
 
103
- useEffect(function () {
104
- console.log(localFilter, 'localFilter');
105
- }, [localFilter]);
106
103
  useEffect(function () {
107
104
  setLocalFilter(filter);
108
105
  setColStateValue(filterStateValue);
@@ -7,6 +7,7 @@ export interface ICustomTableOptionProps {
7
7
  tooltip?: TooltipProps;
8
8
  filter?: Record<string, any>[];
9
9
  columns?: TableProps<any>['columns'];
10
+ card?: TableProps<any>['columns'];
10
11
  onSave?: (data: any) => void;
11
12
  }
12
13
  declare const LMCustomTableOption: React.FC<ICustomTableOptionProps>;
@@ -4,6 +4,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
4
  import React, { forwardRef, useState, useEffect, useRef } from 'react';
5
5
  import { Drawer, Tabs, Radio, IconFont, Space, Button, Switch } from 'linkmore-design';
6
6
  import ColumnsSort from './columnsSort';
7
+ import CardSort from './cardSort';
7
8
  import FilterSort from './filterSort';
8
9
  import classNames from 'classnames';
9
10
 
@@ -17,23 +18,29 @@ var TabPane = Tabs.TabPane;
17
18
  var optionsWithDisabled = [{
18
19
  label: '默认',
19
20
  value: 'default',
20
- imgUrl: DefaultImg
21
+ imgUrl: DefaultImg,
22
+ icon: 'lmweb-icon_default'
21
23
  }, {
22
24
  label: '紧凑',
23
25
  value: 'small',
24
- imgUrl: SmallImg
26
+ imgUrl: SmallImg,
27
+ icon: 'lmweb-icon_compact'
25
28
  }, {
26
29
  label: '宽松',
27
30
  value: 'middle',
28
- imgUrl: MiddleImg
31
+ imgUrl: MiddleImg,
32
+ icon: 'lmweb-icon_large'
29
33
  }];
30
34
  var prefixCls = 'lm_custom-table-option';
31
35
  var LMCustomTableOption = /*#__PURE__*/forwardRef(function (props, ref) {
36
+ var _a;
37
+
32
38
  var className = props.className,
33
39
  _props$tooltip = props.tooltip,
34
40
  tooltip = _props$tooltip === void 0 ? {} : _props$tooltip;
35
41
  var filterRef = useRef(null);
36
- var columnsRef = useRef(null); // const sizeRef = useRef(null)
42
+ var columnsRef = useRef(null);
43
+ var cardRef = useRef(null); // const sizeRef = useRef(null)
37
44
 
38
45
  var _useState = useState(false),
39
46
  _useState2 = _slicedToArray(_useState, 2),
@@ -50,6 +57,7 @@ var LMCustomTableOption = /*#__PURE__*/forwardRef(function (props, ref) {
50
57
  var _useState5 = useState({
51
58
  filter: [],
52
59
  columns: [],
60
+ card: [],
53
61
  size: 'default'
54
62
  }),
55
63
  _useState6 = _slicedToArray(_useState5, 2),
@@ -62,15 +70,16 @@ var LMCustomTableOption = /*#__PURE__*/forwardRef(function (props, ref) {
62
70
 
63
71
  useEffect(function () {
64
72
  setLmOptions({
65
- filter: props.filter,
66
- columns: props.columns,
67
- size: props.size || 'default'
73
+ filter: props.filter || [],
74
+ columns: props.columns || [],
75
+ size: props.size || 'default',
76
+ card: props.card || []
68
77
  });
69
- }, [props.filter, props.columns, props.size]);
78
+ }, [props.filter, props.columns, props.size, props.card]);
70
79
  /** 提交按钮 */
71
80
 
72
81
  var onOk = function onOk() {
73
- var _a, _b, _c, _d, _e;
82
+ var _a, _b, _c, _d, _e, _f, _g;
74
83
  /** tableInfo */
75
84
 
76
85
 
@@ -80,15 +89,20 @@ var LMCustomTableOption = /*#__PURE__*/forwardRef(function (props, ref) {
80
89
 
81
90
  var filterData = (_c = filterRef.current) === null || _c === void 0 ? void 0 : _c.getLocalFilter();
82
91
  var filterStateValue = (_d = filterRef.current) === null || _d === void 0 ? void 0 : _d.getFilterStateValue();
92
+ var cardData = ((_e = cardRef.current) === null || _e === void 0 ? void 0 : _e.getLocalFilter()) || [];
93
+ var cardStateValue = ((_f = cardRef.current) === null || _f === void 0 ? void 0 : _f.getFilterStateValue()) || {};
83
94
  console.log('--columnsData:', columnsData, ColStateValue, '--filterData:', filterData, filterStateValue, 'size:', lmOptions.size);
84
- (_e = props.onSave) === null || _e === void 0 ? void 0 : _e.call(props, {
95
+ (_g = props.onSave) === null || _g === void 0 ? void 0 : _g.call(props, Object.assign({
85
96
  columnsData: columnsData,
86
97
  ColStateValue: ColStateValue,
87
98
  filterData: filterData,
88
99
  filterStateValue: filterStateValue,
89
100
  size: lmOptions.size,
90
101
  saveSetting: saveSetting
91
- });
102
+ }, lmOptions.card.length ? {
103
+ cardData: cardData,
104
+ cardStateValue: cardStateValue
105
+ } : {}));
92
106
  setVisible(false);
93
107
  };
94
108
 
@@ -130,6 +144,13 @@ var LMCustomTableOption = /*#__PURE__*/forwardRef(function (props, ref) {
130
144
  }, /*#__PURE__*/React.createElement(ColumnsSort, {
131
145
  ref: columnsRef,
132
146
  columns: lmOptions.columns
147
+ })), ((_a = lmOptions.card) === null || _a === void 0 ? void 0 : _a.length) && /*#__PURE__*/React.createElement(TabPane, {
148
+ tab: "\u5361\u7247\u5B57\u6BB5\u8BBE\u7F6E",
149
+ key: "4",
150
+ forceRender: true
151
+ }, /*#__PURE__*/React.createElement(CardSort, {
152
+ ref: cardRef,
153
+ card: lmOptions.card
133
154
  })), /*#__PURE__*/React.createElement(TabPane, {
134
155
  tab: "\u5176\u4ED6",
135
156
  key: "3",
@@ -146,13 +167,16 @@ var LMCustomTableOption = /*#__PURE__*/forwardRef(function (props, ref) {
146
167
  return /*#__PURE__*/React.createElement("div", {
147
168
  className: 'lm_custom_size_warp',
148
169
  key: item.value
149
- }, /*#__PURE__*/React.createElement("img", {
170
+ }, /*#__PURE__*/React.createElement(IconFont, {
150
171
  onClick: function onClick() {
151
172
  return setLmOptions(Object.assign(Object.assign({}, lmOptions), {
152
173
  size: item.value
153
174
  }));
154
175
  },
155
- src: item.imgUrl
176
+ type: item.icon,
177
+ style: {
178
+ fontSize: '100px'
179
+ }
156
180
  }), /*#__PURE__*/React.createElement(Radio, {
157
181
  value: item.value
158
182
  }, item.label));
@@ -574,6 +574,9 @@ html {
574
574
  justify-content: center;
575
575
  cursor: pointer;
576
576
  }
577
+ .lm_custom_size_warp > .anticon {
578
+ margin: 8px 0;
579
+ }
577
580
  .lm_custom_size_warp > img {
578
581
  width: 100px;
579
582
  height: 100px;
@@ -0,0 +1,2 @@
1
+ import type { ButtonProps } from 'antd';
2
+ export default function PickerButton(props: ButtonProps): JSX.Element;
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ import { Button } from 'linkmore-design';
3
+ export default function PickerButton(props) {
4
+ return /*#__PURE__*/React.createElement(Button, Object.assign({
5
+ size: "small",
6
+ type: "primary"
7
+ }, props));
8
+ }
@@ -0,0 +1,2 @@
1
+ import type { ILMTagProps } from '../Tag';
2
+ export default function PickerTag(props: ILMTagProps): JSX.Element;
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import { Tag } from 'linkmore-design';
3
+ export default function PickerTag(props) {
4
+ return /*#__PURE__*/React.createElement(Tag, Object.assign({
5
+ color: "blue"
6
+ }, props));
7
+ }
@@ -0,0 +1,4 @@
1
+ import type { GenerateConfig } from 'rc-picker/lib/generate/index';
2
+ import type { RangePickerProps } from '.';
3
+ import type { PickerComponentClass } from './interface';
4
+ export default function generateRangePicker<DateType>(generateConfig: GenerateConfig<DateType>): PickerComponentClass<RangePickerProps<DateType>>;
@@ -0,0 +1,142 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+
3
+ var __rest = this && this.__rest || function (s, e) {
4
+ var t = {};
5
+
6
+ for (var p in s) {
7
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
8
+ }
9
+
10
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
11
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
12
+ }
13
+ return t;
14
+ };
15
+
16
+ import CalendarOutlined from '@ant-design/icons/CalendarOutlined';
17
+ import ClockCircleOutlined from '@ant-design/icons/ClockCircleOutlined';
18
+ import CloseCircleFilled from '@ant-design/icons/CloseCircleFilled';
19
+ import SwapRightOutlined from '@ant-design/icons/SwapRightOutlined';
20
+ import classNames from 'classnames';
21
+ import { RangePicker as RCRangePicker } from 'rc-picker';
22
+ import * as React from 'react';
23
+ import { forwardRef, useContext, useImperativeHandle } from 'react';
24
+ import { Components, getTimeProps } from '.';
25
+ import { ConfigContext } from 'antd/es/config-provider';
26
+ import DisabledContext from 'antd/es/config-provider/DisabledContext';
27
+ import SizeContext from 'antd/es/config-provider/SizeContext';
28
+ import { FormItemInputContext } from 'antd/es/form/context';
29
+ import LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver';
30
+ import { getMergedStatus, getStatusClassNames } from '../../_util/statusUtils';
31
+ import enUS from 'antd/es/date-picker/locale/en_US';
32
+ import { getRangePlaceholder, transPlacement2DropdownAlign } from '../util';
33
+ export default function generateRangePicker(generateConfig) {
34
+ var RangePicker = /*#__PURE__*/forwardRef(function (props, ref) {
35
+ var customizePrefixCls = props.prefixCls,
36
+ customGetPopupContainer = props.getPopupContainer,
37
+ className = props.className,
38
+ placement = props.placement,
39
+ customizeSize = props.size,
40
+ customDisabled = props.disabled,
41
+ _props$bordered = props.bordered,
42
+ bordered = _props$bordered === void 0 ? true : _props$bordered,
43
+ placeholder = props.placeholder,
44
+ customStatus = props.status,
45
+ restProps = __rest(props, ["prefixCls", "getPopupContainer", "className", "placement", "size", "disabled", "bordered", "placeholder", "status"]);
46
+
47
+ var innerRef = React.useRef(null);
48
+
49
+ var _useContext = useContext(ConfigContext),
50
+ getPrefixCls = _useContext.getPrefixCls,
51
+ direction = _useContext.direction,
52
+ getPopupContainer = _useContext.getPopupContainer;
53
+
54
+ var prefixCls = getPrefixCls('picker', customizePrefixCls);
55
+ var format = props.format,
56
+ showTime = props.showTime,
57
+ picker = props.picker;
58
+ var rootPrefixCls = getPrefixCls();
59
+ var additionalOverrideProps = {};
60
+ additionalOverrideProps = Object.assign(Object.assign(Object.assign({}, additionalOverrideProps), showTime ? getTimeProps(Object.assign({
61
+ format: format,
62
+ picker: picker
63
+ }, showTime)) : {}), picker === 'time' ? getTimeProps(Object.assign(Object.assign({
64
+ format: format
65
+ }, props), {
66
+ picker: picker
67
+ })) : {}); // ===================== Size =====================
68
+
69
+ var size = React.useContext(SizeContext);
70
+ var mergedSize = customizeSize || size; // ===================== Disabled =====================
71
+
72
+ var disabled = React.useContext(DisabledContext);
73
+ var mergedDisabled = customDisabled || disabled; // ===================== FormItemInput =====================
74
+
75
+ var formItemContext = useContext(FormItemInputContext);
76
+ var hasFeedback = formItemContext.hasFeedback,
77
+ contextStatus = formItemContext.status,
78
+ feedbackIcon = formItemContext.feedbackIcon;
79
+ var suffixNode = /*#__PURE__*/React.createElement(React.Fragment, null, picker === 'time' ? /*#__PURE__*/React.createElement(ClockCircleOutlined, null) : /*#__PURE__*/React.createElement(CalendarOutlined, null), hasFeedback && feedbackIcon);
80
+ useImperativeHandle(ref, function () {
81
+ return {
82
+ focus: function focus() {
83
+ var _a;
84
+
85
+ return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
86
+ },
87
+ blur: function blur() {
88
+ var _a;
89
+
90
+ return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.blur();
91
+ }
92
+ };
93
+ });
94
+ return (
95
+ /*#__PURE__*/
96
+ // @ts-ignore
97
+ React.createElement(LocaleReceiver, {
98
+ componentName: "DatePicker",
99
+ defaultLocale: enUS
100
+ }, function (contextLocale) {
101
+ var _classNames;
102
+
103
+ var locale = Object.assign(Object.assign({}, contextLocale), props.locale);
104
+ return /*#__PURE__*/React.createElement(RCRangePicker, Object.assign({
105
+ separator: /*#__PURE__*/React.createElement("span", {
106
+ "aria-label": "to",
107
+ className: "".concat(prefixCls, "-separator")
108
+ }, /*#__PURE__*/React.createElement(SwapRightOutlined, null)),
109
+ disabled: mergedDisabled,
110
+ ref: innerRef,
111
+ dropdownAlign: transPlacement2DropdownAlign(direction, placement),
112
+ placeholder: getRangePlaceholder(picker, locale, placeholder),
113
+ suffixIcon: suffixNode,
114
+ clearIcon: /*#__PURE__*/React.createElement(CloseCircleFilled, null),
115
+ prevIcon: /*#__PURE__*/React.createElement("span", {
116
+ className: "".concat(prefixCls, "-prev-icon")
117
+ }),
118
+ nextIcon: /*#__PURE__*/React.createElement("span", {
119
+ className: "".concat(prefixCls, "-next-icon")
120
+ }),
121
+ superPrevIcon: /*#__PURE__*/React.createElement("span", {
122
+ className: "".concat(prefixCls, "-super-prev-icon")
123
+ }),
124
+ superNextIcon: /*#__PURE__*/React.createElement("span", {
125
+ className: "".concat(prefixCls, "-super-next-icon")
126
+ }),
127
+ allowClear: true,
128
+ transitionName: "".concat(rootPrefixCls, "-slide-up")
129
+ }, restProps, additionalOverrideProps, {
130
+ className: classNames((_classNames = {}, _defineProperty(_classNames, "".concat(prefixCls, "-").concat(mergedSize), mergedSize), _defineProperty(_classNames, "".concat(prefixCls, "-borderless"), !bordered), _classNames), getStatusClassNames(prefixCls, getMergedStatus(contextStatus, customStatus), hasFeedback), className),
131
+ locale: locale.lang,
132
+ prefixCls: prefixCls,
133
+ getPopupContainer: customGetPopupContainer || getPopupContainer,
134
+ generateConfig: generateConfig,
135
+ components: Components,
136
+ direction: direction
137
+ }));
138
+ })
139
+ );
140
+ });
141
+ return RangePicker;
142
+ }
@@ -0,0 +1,14 @@
1
+ import type { GenerateConfig } from 'rc-picker/lib/generate/index';
2
+ import type { PickerDateProps, PickerProps, PickerTimeProps } from '.';
3
+ import type { InputStatus } from '../../_util/statusUtils';
4
+ import type { PickerComponentClass } from './interface';
5
+ export default function generatePicker<DateType>(generateConfig: GenerateConfig<DateType>): {
6
+ DatePicker: PickerComponentClass<PickerProps<DateType> & {
7
+ status?: InputStatus;
8
+ }, unknown>;
9
+ WeekPicker: PickerComponentClass<Omit<PickerDateProps<DateType>, "picker">, unknown>;
10
+ MonthPicker: PickerComponentClass<Omit<PickerDateProps<DateType>, "picker">, unknown>;
11
+ YearPicker: PickerComponentClass<Omit<PickerDateProps<DateType>, "picker">, unknown>;
12
+ TimePicker: PickerComponentClass<Omit<PickerTimeProps<DateType>, "picker">, unknown>;
13
+ QuarterPicker: PickerComponentClass<Omit<PickerTimeProps<DateType>, "picker">, unknown>;
14
+ };