amis 1.5.7 → 1.5.8-beta.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 (350) hide show
  1. package/.husky/pre-commit +1 -1
  2. package/lib/Schema.d.ts +3 -2
  3. package/lib/Schema.js.map +1 -1
  4. package/lib/components/AssociatedSelection.d.ts +84 -84
  5. package/lib/components/AssociatedSelection.js +2 -2
  6. package/lib/components/AssociatedSelection.js.map +2 -2
  7. package/lib/components/Avatar.d.ts +135 -0
  8. package/lib/components/Avatar.js +120 -0
  9. package/lib/components/Avatar.js.map +13 -0
  10. package/lib/components/BaiduMapPicker.js.map +2 -2
  11. package/lib/components/CalendarMobile.d.ts +547 -0
  12. package/lib/components/CalendarMobile.js +432 -0
  13. package/lib/components/CalendarMobile.js.map +13 -0
  14. package/lib/components/Card.d.ts +20 -20
  15. package/lib/components/ChainedSelection.d.ts +84 -84
  16. package/lib/components/ChainedSelection.js +15 -3
  17. package/lib/components/ChainedSelection.js.map +2 -2
  18. package/lib/components/ColorPicker.d.ts +84 -84
  19. package/lib/components/ColorPicker.js.map +2 -2
  20. package/lib/components/DatePicker.d.ts +84 -84
  21. package/lib/components/DatePicker.js +10 -4
  22. package/lib/components/DatePicker.js.map +2 -2
  23. package/lib/components/DateRangePicker.d.ts +85 -84
  24. package/lib/components/DateRangePicker.js +21 -6
  25. package/lib/components/DateRangePicker.js.map +2 -2
  26. package/lib/components/GroupedSelection.d.ts +84 -84
  27. package/lib/components/GroupedSelection.js +14 -2
  28. package/lib/components/GroupedSelection.js.map +2 -2
  29. package/lib/components/MonthRangePicker.d.ts +85 -84
  30. package/lib/components/MonthRangePicker.js +19 -6
  31. package/lib/components/MonthRangePicker.js.map +2 -2
  32. package/lib/components/Overlay.d.ts +1 -1
  33. package/lib/components/Overlay.js.map +1 -1
  34. package/lib/components/Picker.js +9 -4
  35. package/lib/components/Picker.js.map +2 -2
  36. package/lib/components/PickerColumn.js +0 -1
  37. package/lib/components/PickerColumn.js.map +2 -2
  38. package/lib/components/PickerContainer.d.ts +3 -0
  39. package/lib/components/PickerContainer.js +12 -5
  40. package/lib/components/PickerContainer.js.map +2 -2
  41. package/lib/components/PopUp.d.ts +1 -0
  42. package/lib/components/PopUp.js +5 -5
  43. package/lib/components/PopUp.js.map +2 -2
  44. package/lib/components/ResultBox.js +2 -1
  45. package/lib/components/ResultBox.js.map +2 -2
  46. package/lib/components/ResultList.d.ts +9 -2
  47. package/lib/components/ResultList.js +22 -2
  48. package/lib/components/ResultList.js.map +2 -2
  49. package/lib/components/Select.d.ts +237 -237
  50. package/lib/components/Select.js +1 -1
  51. package/lib/components/Select.js.map +1 -1
  52. package/lib/components/Selection.d.ts +94 -86
  53. package/lib/components/Selection.js +11 -2
  54. package/lib/components/Selection.js.map +2 -2
  55. package/lib/components/Steps.js.map +2 -2
  56. package/lib/components/TableSelection.d.ts +85 -85
  57. package/lib/components/TableSelection.js +1 -9
  58. package/lib/components/TableSelection.js.map +2 -2
  59. package/lib/components/Tabs.js +31 -33
  60. package/lib/components/Tabs.js.map +2 -2
  61. package/lib/components/TabsTransfer.d.ts +87 -256
  62. package/lib/components/TabsTransfer.js +52 -9
  63. package/lib/components/TabsTransfer.js.map +2 -2
  64. package/lib/components/TabsTransferPicker.d.ts +1 -1
  65. package/lib/components/TabsTransferPicker.js +20 -18
  66. package/lib/components/TabsTransferPicker.js.map +2 -2
  67. package/lib/components/Timeline.d.ts +69 -0
  68. package/lib/components/Timeline.js +16 -0
  69. package/lib/components/Timeline.js.map +13 -0
  70. package/lib/components/TimelineItem.d.ts +516 -0
  71. package/lib/components/TimelineItem.js +41 -0
  72. package/lib/components/TimelineItem.js.map +13 -0
  73. package/lib/components/Transfer.d.ts +100 -98
  74. package/lib/components/Transfer.js +2 -3
  75. package/lib/components/Transfer.js.map +2 -2
  76. package/lib/components/TransferDropDown.d.ts +84 -84
  77. package/lib/components/TransferDropDown.js +1 -5
  78. package/lib/components/TransferDropDown.js.map +2 -2
  79. package/lib/components/TransferPicker.d.ts +1 -0
  80. package/lib/components/TransferPicker.js +19 -4
  81. package/lib/components/TransferPicker.js.map +2 -2
  82. package/lib/components/TreeSelection.d.ts +85 -85
  83. package/lib/components/TreeSelection.js +7 -1
  84. package/lib/components/TreeSelection.js.map +2 -2
  85. package/lib/components/calendar/Calendar.d.ts +5 -0
  86. package/lib/components/calendar/Calendar.js +15 -2
  87. package/lib/components/calendar/Calendar.js.map +2 -2
  88. package/lib/components/calendar/DaysView.d.ts +1 -0
  89. package/lib/components/calendar/DaysView.js +25 -13
  90. package/lib/components/calendar/DaysView.js.map +2 -2
  91. package/lib/components/calendar/MonthsView.d.ts +28 -0
  92. package/lib/components/calendar/MonthsView.js +79 -3
  93. package/lib/components/calendar/MonthsView.js.map +2 -2
  94. package/lib/components/calendar/QuartersView.d.ts +1 -0
  95. package/lib/components/calendar/QuartersView.js +2 -2
  96. package/lib/components/calendar/QuartersView.js.map +2 -2
  97. package/lib/components/calendar/TimeView.d.ts +5 -0
  98. package/lib/components/calendar/TimeView.js +8 -5
  99. package/lib/components/calendar/TimeView.js.map +2 -2
  100. package/lib/components/calendar/YearsView.js +6 -4
  101. package/lib/components/calendar/YearsView.js.map +2 -2
  102. package/lib/components/condition-builder/Field.js +1 -4
  103. package/lib/components/condition-builder/Field.js.map +2 -2
  104. package/lib/components/condition-builder/Func.js +1 -1
  105. package/lib/components/condition-builder/Func.js.map +2 -2
  106. package/lib/components/formula/Editor.d.ts +3 -0
  107. package/lib/components/formula/Editor.js +3 -2
  108. package/lib/components/formula/Editor.js.map +2 -2
  109. package/lib/components/formula/FuncList.js +2 -1
  110. package/lib/components/formula/FuncList.js.map +2 -2
  111. package/lib/components/formula/Picker.js +1 -1
  112. package/lib/components/formula/Picker.js.map +2 -2
  113. package/lib/components/icons.js +2 -0
  114. package/lib/components/icons.js.map +2 -2
  115. package/lib/components/index.d.ts +2 -1
  116. package/lib/components/index.js +4 -2
  117. package/lib/components/index.js.map +2 -2
  118. package/lib/components/virtual-list/SizeAndPositionManager.js.map +2 -2
  119. package/lib/components/virtual-list/index.js +1 -2
  120. package/lib/components/virtual-list/index.js.map +2 -2
  121. package/lib/factory.js +5 -0
  122. package/lib/factory.js.map +2 -2
  123. package/lib/icons/tree-down.js +7 -0
  124. package/lib/index.d.ts +1 -0
  125. package/lib/index.js +2 -1
  126. package/lib/index.js.map +2 -2
  127. package/lib/locale/de-DE.js +13 -2
  128. package/lib/locale/de-DE.js.map +2 -2
  129. package/lib/locale/en-US.js +13 -2
  130. package/lib/locale/en-US.js.map +2 -2
  131. package/lib/locale/zh-CN.js +12 -1
  132. package/lib/locale/zh-CN.js.map +2 -2
  133. package/lib/renderers/Avatar.d.ts +35 -26
  134. package/lib/renderers/Avatar.js +14 -19
  135. package/lib/renderers/Avatar.js.map +2 -2
  136. package/lib/renderers/Card.js +6 -5
  137. package/lib/renderers/Card.js.map +2 -2
  138. package/lib/renderers/Custom.js.map +2 -2
  139. package/lib/renderers/Each.js +5 -2
  140. package/lib/renderers/Each.js.map +2 -2
  141. package/lib/renderers/Flex.js +1 -5
  142. package/lib/renderers/Flex.js.map +2 -2
  143. package/lib/renderers/Form/ChartRadios.js.map +2 -2
  144. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  145. package/lib/renderers/Form/DiffEditor.js +2 -1
  146. package/lib/renderers/Form/DiffEditor.js.map +2 -2
  147. package/lib/renderers/Form/InputCity.d.ts +84 -84
  148. package/lib/renderers/Form/InputColor.d.ts +84 -84
  149. package/lib/renderers/Form/InputColor.js +1 -1
  150. package/lib/renderers/Form/InputColor.js.map +2 -2
  151. package/lib/renderers/Form/InputDate.js +6 -4
  152. package/lib/renderers/Form/InputDate.js.map +2 -2
  153. package/lib/renderers/Form/InputDateRange.js +1 -1
  154. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  155. package/lib/renderers/Form/InputFormula.d.ts +4 -1
  156. package/lib/renderers/Form/InputFormula.js +2 -2
  157. package/lib/renderers/Form/InputFormula.js.map +2 -2
  158. package/lib/renderers/Form/InputImage.d.ts +1 -0
  159. package/lib/renderers/Form/InputImage.js +8 -4
  160. package/lib/renderers/Form/InputImage.js.map +2 -2
  161. package/lib/renderers/Form/InputMonthRange.js +1 -1
  162. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  163. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  164. package/lib/renderers/Form/InputQuarterRange.js.map +2 -2
  165. package/lib/renderers/Form/InputYearRange.js +1 -1
  166. package/lib/renderers/Form/InputYearRange.js.map +2 -2
  167. package/lib/renderers/Form/Item.js +11 -4
  168. package/lib/renderers/Form/Item.js.map +2 -2
  169. package/lib/renderers/Form/NestedSelect.js +1 -1
  170. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  171. package/lib/renderers/Form/Select.js +1 -1
  172. package/lib/renderers/Form/Select.js.map +2 -2
  173. package/lib/renderers/Form/TabsTransfer.d.ts +5 -32
  174. package/lib/renderers/Form/TabsTransfer.js +20 -1
  175. package/lib/renderers/Form/TabsTransfer.js.map +2 -2
  176. package/lib/renderers/Form/TabsTransferPicker.d.ts +5 -35
  177. package/lib/renderers/Form/TabsTransferPicker.js +21 -2
  178. package/lib/renderers/Form/TabsTransferPicker.js.map +2 -2
  179. package/lib/renderers/Form/Transfer.d.ts +15 -4
  180. package/lib/renderers/Form/Transfer.js +55 -18
  181. package/lib/renderers/Form/Transfer.js.map +2 -2
  182. package/lib/renderers/Form/TransferPicker.d.ts +3 -32
  183. package/lib/renderers/Form/TransferPicker.js +1 -1
  184. package/lib/renderers/Form/TransferPicker.js.map +2 -2
  185. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  186. package/lib/renderers/IFrame.js +0 -2
  187. package/lib/renderers/IFrame.js.map +2 -2
  188. package/lib/renderers/Remark.d.ts +4 -0
  189. package/lib/renderers/Remark.js +38 -7
  190. package/lib/renderers/Remark.js.map +2 -2
  191. package/lib/renderers/Steps.js +5 -5
  192. package/lib/renderers/Steps.js.map +2 -2
  193. package/lib/renderers/Table/index.js +4 -1
  194. package/lib/renderers/Table/index.js.map +2 -2
  195. package/lib/renderers/Tabs.js +1 -1
  196. package/lib/renderers/Tabs.js.map +2 -2
  197. package/lib/renderers/Timeline.d.ts +65 -0
  198. package/lib/renderers/Timeline.js +54 -0
  199. package/lib/renderers/Timeline.js.map +13 -0
  200. package/lib/renderers/Video.js.map +2 -2
  201. package/lib/store/combo.js.map +2 -2
  202. package/lib/themes/ang-ie11.css +659 -25
  203. package/lib/themes/ang.css +659 -25
  204. package/lib/themes/ang.css.map +1 -1
  205. package/lib/themes/antd-ie11.css +694 -25
  206. package/lib/themes/antd.css +694 -25
  207. package/lib/themes/antd.css.map +1 -1
  208. package/lib/themes/cxd-ie11.css +696 -25
  209. package/lib/themes/cxd.css +696 -25
  210. package/lib/themes/cxd.css.map +1 -1
  211. package/lib/themes/dark-ie11.css +660 -25
  212. package/lib/themes/dark.css +660 -25
  213. package/lib/themes/dark.css.map +1 -1
  214. package/lib/themes/default.css +696 -25
  215. package/lib/themes/default.css.map +1 -1
  216. package/lib/utils/RootClose.js +3 -1
  217. package/lib/utils/RootClose.js.map +2 -2
  218. package/lib/utils/helper.d.ts +1 -1
  219. package/lib/utils/helper.js +1 -1
  220. package/lib/utils/helper.js.map +2 -2
  221. package/package.json +13 -6
  222. package/schema.json +1042 -541
  223. package/scss/_properties.scss +8 -0
  224. package/scss/components/_avatar.scss +27 -9
  225. package/scss/components/_calendar.scss +280 -0
  226. package/scss/components/_card.scss +1 -1
  227. package/scss/components/_collapse-group.scss +1 -3
  228. package/scss/components/_formula.scss +30 -6
  229. package/scss/components/_modal.scss +18 -0
  230. package/scss/components/_panel.scss +45 -0
  231. package/scss/components/_popup.scss +10 -6
  232. package/scss/components/_timeline.scss +198 -0
  233. package/scss/components/form/_form.scss +168 -0
  234. package/scss/components/form/_result-list.scss +2 -0
  235. package/scss/components/form/_selection.scss +5 -4
  236. package/scss/themes/_antd-variables.scss +42 -0
  237. package/scss/themes/_common.scss +1 -0
  238. package/scss/themes/_cxd-variables.scss +47 -0
  239. package/scss/themes/_dark-variables.scss +1 -0
  240. package/sdk/ang-ie11.css +782 -23
  241. package/sdk/ang.css +791 -26
  242. package/sdk/antd-ie11.css +782 -23
  243. package/sdk/antd.css +826 -26
  244. package/sdk/charts.js +17 -17
  245. package/sdk/codemirror.js +7 -7
  246. package/sdk/color-picker.js +65 -65
  247. package/sdk/cropperjs.js +3 -3
  248. package/sdk/cxd-ie11.css +782 -23
  249. package/sdk/cxd.css +828 -26
  250. package/sdk/dark-ie11.css +783 -24
  251. package/sdk/dark.css +792 -26
  252. package/sdk/exceljs.js +1 -1
  253. package/sdk/locale/de-DE.js +13 -2
  254. package/sdk/markdown.js +69 -69
  255. package/sdk/papaparse.js +1 -1
  256. package/sdk/renderers/Form/CityDB.js +1 -1
  257. package/sdk/rest.js +18 -18
  258. package/sdk/rich-text.js +62 -62
  259. package/sdk/sdk-ie11.css +782 -23
  260. package/sdk/sdk.css +828 -26
  261. package/sdk/sdk.js +1225 -1285
  262. package/sdk/thirds/hls.js/hls.js +18 -18
  263. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  264. package/sdk/tinymce.js +57 -57
  265. package/src/Schema.ts +3 -0
  266. package/src/components/AssociatedSelection.tsx +5 -1
  267. package/src/components/Avatar.tsx +253 -0
  268. package/src/components/BaiduMapPicker.tsx +19 -14
  269. package/src/components/CalendarMobile.tsx +563 -0
  270. package/src/components/ChainedSelection.tsx +16 -3
  271. package/src/components/ColorPicker.tsx +37 -39
  272. package/src/components/DatePicker.tsx +41 -35
  273. package/src/components/DateRangePicker.tsx +61 -16
  274. package/src/components/GroupedSelection.tsx +14 -2
  275. package/src/components/MonthRangePicker.tsx +57 -17
  276. package/src/components/Overlay.tsx +1 -1
  277. package/src/components/Picker.tsx +41 -36
  278. package/src/components/PickerColumn.tsx +22 -25
  279. package/src/components/PickerContainer.tsx +13 -1
  280. package/src/components/PopUp.tsx +34 -49
  281. package/src/components/ResultBox.tsx +4 -1
  282. package/src/components/ResultList.tsx +36 -6
  283. package/src/components/Select.tsx +1 -1
  284. package/src/components/Selection.tsx +21 -3
  285. package/src/components/Steps.tsx +23 -10
  286. package/src/components/TableSelection.tsx +1 -44
  287. package/src/components/Tabs.tsx +65 -54
  288. package/src/components/TabsTransfer.tsx +78 -9
  289. package/src/components/TabsTransferPicker.tsx +25 -13
  290. package/src/components/Timeline.tsx +31 -0
  291. package/src/components/TimelineItem.tsx +107 -0
  292. package/src/components/Transfer.tsx +11 -8
  293. package/src/components/TransferDropDown.tsx +1 -7
  294. package/src/components/TransferPicker.tsx +25 -4
  295. package/src/components/TreeSelection.tsx +7 -1
  296. package/src/components/calendar/Calendar.tsx +26 -6
  297. package/src/components/calendar/DaysView.tsx +79 -31
  298. package/src/components/calendar/MonthsView.tsx +116 -2
  299. package/src/components/calendar/QuartersView.tsx +3 -2
  300. package/src/components/calendar/TimeView.tsx +26 -16
  301. package/src/components/calendar/YearsView.tsx +14 -16
  302. package/src/components/condition-builder/Field.tsx +1 -3
  303. package/src/components/condition-builder/Func.tsx +1 -1
  304. package/src/components/formula/Editor.tsx +16 -11
  305. package/src/components/formula/FuncList.tsx +3 -1
  306. package/src/components/formula/Picker.tsx +2 -1
  307. package/src/components/icons.tsx +2 -0
  308. package/src/components/index.tsx +2 -0
  309. package/src/components/virtual-list/SizeAndPositionManager.ts +6 -3
  310. package/src/components/virtual-list/index.tsx +4 -6
  311. package/src/factory.tsx +6 -0
  312. package/src/icons/tree-down.svg +5 -0
  313. package/src/index.tsx +1 -0
  314. package/src/locale/de-DE.ts +13 -2
  315. package/src/locale/en-US.ts +13 -2
  316. package/src/locale/zh-CN.ts +12 -1
  317. package/src/renderers/Avatar.tsx +83 -74
  318. package/src/renderers/Card.tsx +10 -6
  319. package/src/renderers/Custom.tsx +6 -3
  320. package/src/renderers/Each.tsx +4 -4
  321. package/src/renderers/Flex.tsx +3 -7
  322. package/src/renderers/Form/ChartRadios.tsx +2 -7
  323. package/src/renderers/Form/Checkboxes.tsx +1 -1
  324. package/src/renderers/Form/DiffEditor.tsx +2 -3
  325. package/src/renderers/Form/InputColor.tsx +1 -1
  326. package/src/renderers/Form/InputDate.tsx +38 -19
  327. package/src/renderers/Form/InputDateRange.tsx +0 -1
  328. package/src/renderers/Form/InputFormula.tsx +9 -4
  329. package/src/renderers/Form/InputImage.tsx +9 -4
  330. package/src/renderers/Form/InputMonthRange.tsx +0 -1
  331. package/src/renderers/Form/InputQuarterRange.tsx +0 -1
  332. package/src/renderers/Form/InputYearRange.tsx +0 -1
  333. package/src/renderers/Form/Item.tsx +15 -4
  334. package/src/renderers/Form/NestedSelect.tsx +1 -1
  335. package/src/renderers/Form/Select.tsx +0 -1
  336. package/src/renderers/Form/TabsTransfer.tsx +28 -38
  337. package/src/renderers/Form/TabsTransferPicker.tsx +28 -46
  338. package/src/renderers/Form/Transfer.tsx +75 -24
  339. package/src/renderers/Form/TransferPicker.tsx +6 -38
  340. package/src/renderers/Form/TreeSelect.tsx +12 -14
  341. package/src/renderers/IFrame.tsx +0 -2
  342. package/src/renderers/Remark.tsx +67 -18
  343. package/src/renderers/Steps.tsx +11 -13
  344. package/src/renderers/Table/index.tsx +7 -1
  345. package/src/renderers/Tabs.tsx +6 -2
  346. package/src/renderers/Timeline.tsx +141 -0
  347. package/src/renderers/Video.tsx +4 -20
  348. package/src/store/combo.ts +1 -3
  349. package/src/utils/RootClose.ts +5 -1
  350. package/src/utils/helper.ts +1 -1
@@ -41,13 +41,14 @@ interface CustomDaysViewProps extends LocaleProps {
41
41
  handleClickOutside: () => void;
42
42
  classnames: ClassNamesFn;
43
43
  schedules?: Array<{
44
- startTime: Date,
45
- endTime: Date,
46
- content: any,
47
- className?: string
44
+ startTime: Date;
45
+ endTime: Date;
46
+ content: any;
47
+ className?: string;
48
48
  }>;
49
49
  largeMode?: boolean;
50
50
  onScheduleClick?: (scheduleData: any) => void;
51
+ hideHeader?: boolean;
51
52
  }
52
53
 
53
54
  export class CustomDaysView extends DaysView {
@@ -129,7 +130,12 @@ export class CustomDaysView extends DaysView {
129
130
  if (this.props.schedules) {
130
131
  let schedule: any[] = [];
131
132
  this.props.schedules.forEach((item: any) => {
132
- if (currentDate.isSameOrAfter(moment(item.startTime).subtract(1, 'days')) && currentDate.isSameOrBefore(item.endTime)) {
133
+ if (
134
+ currentDate.isSameOrAfter(
135
+ moment(item.startTime).subtract(1, 'days')
136
+ ) &&
137
+ currentDate.isSameOrBefore(item.endTime)
138
+ ) {
133
139
  schedule.push(item);
134
140
  }
135
141
  });
@@ -141,8 +147,11 @@ export class CustomDaysView extends DaysView {
141
147
  scheduleData: schedule.map((item: any) => {
142
148
  return {
143
149
  ...item,
144
- time: moment(item.startTime).format('YYYY-MM-DD HH:mm:ss') + ' - ' + moment(item.endTime).format('YYYY-MM-DD HH:mm:ss'),
145
- }
150
+ time:
151
+ moment(item.startTime).format('YYYY-MM-DD HH:mm:ss') +
152
+ ' - ' +
153
+ moment(item.endTime).format('YYYY-MM-DD HH:mm:ss')
154
+ };
146
155
  }),
147
156
  currentDate
148
157
  };
@@ -156,8 +165,7 @@ export class CustomDaysView extends DaysView {
156
165
  }
157
166
  if (moment(schedule[i].startTime).isSame(currentDate, 'day')) {
158
167
  showSchedule.push(schedule[i]);
159
- }
160
- else if (currentDate.weekday() === 0) {
168
+ } else if (currentDate.weekday() === 0) {
161
169
  // 周一重新设置日程
162
170
  showSchedule.push({
163
171
  ...schedule[i],
@@ -166,46 +174,86 @@ export class CustomDaysView extends DaysView {
166
174
  }
167
175
  }
168
176
  [0, 1, 2].forEach((i: number) => {
169
- const findSchedule = find(schedule, (item: any) => item.height === i);
170
- if (findSchedule && findSchedule !== showSchedule[i] && currentDate.weekday() !== 0) {
177
+ const findSchedule = find(
178
+ schedule,
179
+ (item: any) => item.height === i
180
+ );
181
+ if (
182
+ findSchedule &&
183
+ findSchedule !== showSchedule[i] &&
184
+ currentDate.weekday() !== 0
185
+ ) {
171
186
  // 生成一个空白格占位
172
187
  showSchedule.splice(i, 0, {
173
188
  width: 1,
174
189
  className: 'bg-transparent',
175
190
  content: ''
176
191
  });
177
- }
178
- else {
192
+ } else {
179
193
  showSchedule[i] && (showSchedule[i].height = i);
180
194
  }
181
195
  });
182
196
  // 最多展示3个
183
197
  showSchedule = showSchedule.slice(0, 3);
184
198
  const scheduleDiv = showSchedule.map((item: any, index: number) => {
185
- const width = item.width || Math.min(moment(item.endTime).diff(moment(item.startTime), 'days') + 1, 7 - moment(item.startTime).weekday());
186
- return <div key={props.key + 'content' + index}
187
- className={cx('ScheduleCalendar-large-schedule-content', item.className)}
188
- style={{width: width + '00%'}}
189
- onClick={() => this.props.onScheduleClick && this.props.onScheduleClick(scheduleData)}>
190
- <div className={cx('ScheduleCalendar-text-overflow')}>{item.content}</div>
191
- </div>;
199
+ const width =
200
+ item.width ||
201
+ Math.min(
202
+ moment(item.endTime).diff(moment(item.startTime), 'days') + 1,
203
+ 7 - moment(item.startTime).weekday()
204
+ );
205
+ return (
206
+ <div
207
+ key={props.key + 'content' + index}
208
+ className={cx(
209
+ 'ScheduleCalendar-large-schedule-content',
210
+ item.className
211
+ )}
212
+ style={{width: width + '00%'}}
213
+ onClick={() =>
214
+ this.props.onScheduleClick &&
215
+ this.props.onScheduleClick(scheduleData)
216
+ }
217
+ >
218
+ <div className={cx('ScheduleCalendar-text-overflow')}>
219
+ {item.content}
220
+ </div>
221
+ </div>
222
+ );
192
223
  });
193
- return <td {...props}>
224
+ return (
225
+ <td {...props}>
194
226
  <div className={cx('ScheduleCalendar-large-day-wrap')}>
195
- <div className={cx('ScheduleCalendar-large-schedule-header')}>{currentDate.date()}</div>
227
+ <div className={cx('ScheduleCalendar-large-schedule-header')}>
228
+ {currentDate.date()}
229
+ </div>
196
230
  {scheduleDiv}
197
- {schedule.length > 3 && <div className={cx('ScheduleCalendar-large-schedule-footer')}>{schedule.length - 3} {__('more')}</div>}
231
+ {schedule.length > 3 && (
232
+ <div className={cx('ScheduleCalendar-large-schedule-footer')}>
233
+ {schedule.length - 3} {__('more')}
234
+ </div>
235
+ )}
198
236
  </div>
199
- </td>
237
+ </td>
238
+ );
200
239
  }
201
240
 
202
241
  // 正常模式
203
- const ScheduleIcon = <span className={cx('ScheduleCalendar-icon', schedule[0].className)}
204
- onClick={() => this.props.onScheduleClick && this.props.onScheduleClick(scheduleData)}></span>;
205
- return <td {...props}>
206
- {currentDate.date()}
207
- {ScheduleIcon}
208
- </td>;
242
+ const ScheduleIcon = (
243
+ <span
244
+ className={cx('ScheduleCalendar-icon', schedule[0].className)}
245
+ onClick={() =>
246
+ this.props.onScheduleClick &&
247
+ this.props.onScheduleClick(scheduleData)
248
+ }
249
+ ></span>
250
+ );
251
+ return (
252
+ <td {...props}>
253
+ {currentDate.date()}
254
+ {ScheduleIcon}
255
+ </td>
256
+ );
209
257
  }
210
258
  }
211
259
  return <td {...props}>{currentDate.date()}</td>;
@@ -364,7 +412,7 @@ export class CustomDaysView extends DaysView {
364
412
  const __ = this.props.translate;
365
413
 
366
414
  const tableChildren = [
367
- <thead key="th">
415
+ this.props.hideHeader ? null : <thead key="th">
368
416
  <tr>
369
417
  <th colSpan={7}>
370
418
  <div className="rdtHeader">
@@ -3,14 +3,18 @@ import MonthsView from 'react-datetime/src/MonthsView';
3
3
  import moment from 'moment';
4
4
  import React from 'react';
5
5
  import {LocaleProps, localeable, TranslateFn} from '../../locale';
6
+ import Picker from '../Picker';
7
+ import {convertDateToObject, getRange, isMobile} from '../../utils/helper';
6
8
 
7
9
  export interface OtherProps {
8
10
  inputFormat?: string;
11
+ hideHeader?: boolean;
9
12
  }
10
13
 
11
14
  export class CustomMonthsView extends MonthsView {
12
15
  props: {
13
16
  viewDate: moment.Moment;
17
+ selectedDate: moment.Moment;
14
18
  subtractTime: (
15
19
  amount: number,
16
20
  type: string,
@@ -22,9 +26,59 @@ export class CustomMonthsView extends MonthsView {
22
26
  toSelected?: moment.Moment
23
27
  ) => () => void;
24
28
  showView: (view: string) => () => void;
29
+ minDate?: moment.Moment;
30
+ maxDate?: moment.Moment;
31
+ onChange?: () => void;
32
+ onClose?: () => void;
33
+ onConfirm?: (value: number[], types: string[]) => void;
34
+ useMobileUI: boolean;
25
35
  } & LocaleProps &
26
36
  OtherProps;
37
+ maxDateObject: {year: number; month: number; day?: number};
38
+ minDateObject: {year: number; month: number; day?: number};
39
+ state: {columns: {options: number[]}[]};
40
+ setState: (arg0: any) => () => any;
27
41
  renderMonths: () => JSX.Element;
42
+
43
+ constructor(props: any) {
44
+ super(props);
45
+
46
+ const {minDate, maxDate, selectedDate, viewDate} = props;
47
+ const currentDate = selectedDate || viewDate || moment();
48
+ const year = currentDate.year();
49
+ this.maxDateObject = maxDate
50
+ ? convertDateToObject(maxDate)
51
+ : {
52
+ year: year + 100,
53
+ month: 12
54
+ };
55
+ this.minDateObject = minDate
56
+ ? convertDateToObject(minDate)
57
+ : {
58
+ year: year - 100,
59
+ month: 1
60
+ };
61
+
62
+ const columns = ['year', 'month'].map((type: 'year' | 'month') => {
63
+ if (type === 'month') {
64
+ const minMonth =
65
+ year === this.minDateObject.year ? this.minDateObject.month : 1;
66
+ const maxMonth =
67
+ year === this.maxDateObject.year ? this.maxDateObject.month : 12;
68
+ return {
69
+ options: getRange(minMonth, maxMonth, 1)
70
+ };
71
+ }
72
+ return {
73
+ options: getRange(this.minDateObject[type], this.maxDateObject[type], 1)
74
+ };
75
+ });
76
+
77
+ this.state = {
78
+ columns
79
+ };
80
+ }
81
+
28
82
  renderMonth = (props: any, month: number) => {
29
83
  var localMoment = this.props.viewDate;
30
84
  var monthStr = localMoment
@@ -40,11 +94,71 @@ export class CustomMonthsView extends MonthsView {
40
94
  </td>
41
95
  );
42
96
  };
97
+
98
+ onConfirm = (value: number[]) => {
99
+ // 将月份的值减1 ,月份是0-11
100
+ value[1] && --value[1];
101
+ this.props.onConfirm && this.props.onConfirm(value, ['year', 'month']);
102
+ };
103
+
104
+ onPickerChange = (value: number[], index: number) => {
105
+ const columns = [...this.state.columns];
106
+ // 选择年份是最大值的年或者最小值的月时,需要重新计算月分选择的cloumn
107
+ if (index === 0) {
108
+ if (
109
+ value[0] === this.minDateObject.year &&
110
+ value[0] === this.maxDateObject.year
111
+ ) {
112
+ columns[1] = {
113
+ options: getRange(
114
+ this.minDateObject.month,
115
+ this.maxDateObject.month,
116
+ 1
117
+ )
118
+ };
119
+ } else if (value[0] === this.minDateObject.year) {
120
+ columns[1] = {
121
+ options: getRange(this.minDateObject.month, 12, 1)
122
+ };
123
+ } else if (value[0] === this.maxDateObject.year) {
124
+ columns[1] = {
125
+ options: getRange(1, this.maxDateObject.month, 1)
126
+ };
127
+ } else {
128
+ columns[1] = {
129
+ options: getRange(1, 12, 1)
130
+ };
131
+ }
132
+ this.setState({columns});
133
+ }
134
+ };
135
+
136
+ renderPicker = () => {
137
+ const {selectedDate, viewDate} = this.props;
138
+ const currentDate = selectedDate || viewDate || moment();
139
+ const year = currentDate.year();
140
+ const month = parseInt(currentDate.format('MM'), 10);
141
+
142
+ return (
143
+ <Picker
144
+ translate={this.props.translate}
145
+ locale={this.props.locale}
146
+ columns={this.state.columns}
147
+ value={[year, month]}
148
+ onChange={this.onPickerChange}
149
+ onConfirm={this.onConfirm}
150
+ onClose={this.props.onClose}
151
+ />
152
+ );
153
+ };
154
+
43
155
  render() {
44
156
  const __ = this.props.translate;
45
- const showYearHead = !/^mm$/i.test(this.props.inputFormat || '');
157
+ const showYearHead = !/^mm$/i.test(this.props.inputFormat || '') && !this.props.hideHeader;
46
158
  const canClick = /yy/i.test(this.props.inputFormat || '');
47
-
159
+ if (isMobile() && this.props.useMobileUI) {
160
+ return <div className="rdtYears">{this.renderPicker()}</div>;
161
+ }
48
162
  return (
49
163
  <div className="rdtMonths">
50
164
  {showYearHead && (
@@ -23,6 +23,7 @@ export interface QuarterViewProps extends LocaleProps, ThemeProps {
23
23
  updateSelectedDate: (e: any, close?: boolean) => void;
24
24
  renderQuarter: any;
25
25
  isValidDate: (date: moment.Moment) => boolean;
26
+ hideHeader?: boolean;
26
27
  }
27
28
 
28
29
  export class QuarterView extends React.Component<QuarterViewProps> {
@@ -140,11 +141,11 @@ export class QuarterView extends React.Component<QuarterViewProps> {
140
141
  }
141
142
 
142
143
  render() {
143
- const {classnames: cx} = this.props;
144
+ const {classnames: cx, hideHeader} = this.props;
144
145
 
145
146
  return (
146
147
  <div className={cx('ClalendarQuarter')}>
147
- {this.renderYear()}
148
+ {hideHeader ? null : this.renderYear()}
148
149
  <table>
149
150
  <tbody>{this.renderQuarters()}</tbody>
150
151
  </table>
@@ -7,7 +7,7 @@ import {Icon} from '../icons';
7
7
  import {ClassNamesFn} from '../../theme';
8
8
  import Picker from '../Picker';
9
9
  import {PickerColumnItem} from '../PickerColumn';
10
- import {getRange, isMobile} from "../../utils/helper";
10
+ import {getRange, isMobile} from '../../utils/helper';
11
11
 
12
12
  export class CustomTimeView extends TimeView {
13
13
  props: {
@@ -29,6 +29,8 @@ export class CustomTimeView extends TimeView {
29
29
  onClose?: () => void;
30
30
  onConfirm?: (value: number[], types: string[]) => void;
31
31
  useMobileUI: boolean;
32
+ showToolbar?: boolean;
33
+ onChange?: (value: any) => void;
32
34
  } & LocaleProps;
33
35
  onStartClicking: any;
34
36
  disableContextMenu: any;
@@ -44,6 +46,10 @@ export class CustomTimeView extends TimeView {
44
46
  milliseconds: 3
45
47
  };
46
48
 
49
+ static defaultProps = {
50
+ showToolbar: true
51
+ };
52
+
47
53
  renderDayPart = () => {
48
54
  const {translate: __, classnames: cx} = this.props;
49
55
  return (
@@ -90,7 +96,7 @@ export class CustomTimeView extends TimeView {
90
96
  return parseInt(value);
91
97
  }
92
98
  return 0;
93
- }
99
+ };
94
100
 
95
101
  renderCounter = (type: string) => {
96
102
  const cx = this.props.classnames;
@@ -150,12 +156,12 @@ export class CustomTimeView extends TimeView {
150
156
 
151
157
  onConfirm = (value: number[]) => {
152
158
  this.props.onConfirm && this.props.onConfirm(value, this.state.counters);
153
- }
159
+ };
154
160
 
155
161
  getDayPartOptions = () => {
156
162
  const {translate: __} = this.props;
157
163
  let options = ['am', 'pm'];
158
- if ( this.props.timeFormat.indexOf( ' A' ) !== -1 ) {
164
+ if (this.props.timeFormat.indexOf(' A') !== -1) {
159
165
  options = ['AM', 'PM'];
160
166
  }
161
167
 
@@ -163,7 +169,7 @@ export class CustomTimeView extends TimeView {
163
169
  text: __(daypart),
164
170
  value: daypart
165
171
  }));
166
- }
172
+ };
167
173
 
168
174
  renderTimeViewPicker = () => {
169
175
  const columns: PickerColumnItem[] = [];
@@ -174,10 +180,12 @@ export class CustomTimeView extends TimeView {
174
180
  const counterValue: number = this.getCounterValue(type);
175
181
  let {min, max, step} = this.timeConstraints[type];
176
182
  // 修正am pm时hours可选最大值
177
- if (type === 'hours'
178
- && this.state.daypart !== false
179
- && this.props.timeFormat.toLowerCase().indexOf(' a') !== -1) {
180
- max = max > 12 ? 12 : max;
183
+ if (
184
+ type === 'hours' &&
185
+ this.state.daypart !== false &&
186
+ this.props.timeFormat.toLowerCase().indexOf(' a') !== -1
187
+ ) {
188
+ max = max > 12 ? 12 : max;
181
189
  }
182
190
  columns.push({
183
191
  options: getRange(min, max, step)
@@ -189,7 +197,7 @@ export class CustomTimeView extends TimeView {
189
197
  columns.push({
190
198
  options: this.getDayPartOptions()
191
199
  });
192
- values.push(this.state.daypart)
200
+ values.push(this.state.daypart);
193
201
  }
194
202
 
195
203
  return (
@@ -197,21 +205,23 @@ export class CustomTimeView extends TimeView {
197
205
  translate={this.props.translate}
198
206
  locale={this.props.locale}
199
207
  columns={columns}
200
- value={values}
208
+ value={values}
201
209
  onConfirm={this.onConfirm}
202
210
  onClose={this.props.onClose}
211
+ showToolbar={this.props.showToolbar}
212
+ onChange={this.props.onChange}
203
213
  />
204
214
  );
205
- }
215
+ };
206
216
 
207
217
  render() {
208
218
  let counters: Array<JSX.Element | null> = [];
209
219
  const cx = this.props.classnames;
210
-
220
+
211
221
  if (isMobile() && this.props.useMobileUI) {
212
- return <div className={cx('CalendarTime')}>
213
- {this.renderTimeViewPicker()}
214
- </div>
222
+ return (
223
+ <div className={cx('CalendarTime')}>{this.renderTimeViewPicker()}</div>
224
+ );
215
225
  }
216
226
  this.state.counters.forEach(c => {
217
227
  if (counters.length) {
@@ -4,7 +4,7 @@ import moment from 'moment';
4
4
  import React from 'react';
5
5
  import {LocaleProps, localeable} from '../../locale';
6
6
  import Picker from '../Picker';
7
- import {convertDateToObject, getRange, isMobile} from "../../utils/helper";
7
+ import {convertDateToObject, getRange, isMobile} from '../../utils/helper';
8
8
 
9
9
  export class CustomYearsView extends YearsView {
10
10
  props: {
@@ -38,28 +38,30 @@ export class CustomYearsView extends YearsView {
38
38
  };
39
39
 
40
40
  onConfirm = (value: number[]) => {
41
- this.props.onConfirm && this.props.onConfirm(value, ["year"])
42
- }
41
+ this.props.onConfirm && this.props.onConfirm(value, ['year']);
42
+ };
43
43
 
44
44
  renderYearPicker = () => {
45
- const {minDate, maxDate, selectedDate, viewDate} = this.props;
45
+ const {minDate, maxDate, selectedDate, viewDate} = this.props;
46
46
  const year = (selectedDate || viewDate || moment()).year();
47
47
  const maxYear = maxDate ? convertDateToObject(maxDate)!.year : year + 100;
48
48
  const minYear = minDate ? convertDateToObject(minDate)!.year : year - 100;
49
-
50
- const columns = [{
51
- options: getRange(minYear, maxYear, 1)
52
- }];
49
+
50
+ const columns = [
51
+ {
52
+ options: getRange(minYear, maxYear, 1)
53
+ }
54
+ ];
53
55
 
54
56
  return (
55
57
  <Picker
56
58
  translate={this.props.translate}
57
59
  locale={this.props.locale}
58
60
  columns={columns}
59
- value={[year]}
61
+ value={[year]}
60
62
  onConfirm={this.onConfirm}
61
63
  onClose={this.props.onClose}
62
- />
64
+ />
63
65
  );
64
66
  };
65
67
 
@@ -67,13 +69,9 @@ export class CustomYearsView extends YearsView {
67
69
  let year = this.props.viewDate.year();
68
70
  year = year - (year % 10);
69
71
  const __ = this.props.translate;
70
-
72
+
71
73
  if (isMobile() && this.props.useMobileUI) {
72
- return (
73
- <div className="rdtYears">
74
- {this.renderYearPicker()}
75
- </div>
76
- );
74
+ return <div className="rdtYears">{this.renderYearPicker()}</div>;
77
75
  }
78
76
  return (
79
77
  <div className="rdtYears">
@@ -114,9 +114,7 @@ export class ConditionField extends React.Component<
114
114
  ref={ref}
115
115
  allowInput={false}
116
116
  result={
117
- value
118
- ? findTree(options, item => item.name === value)?.label
119
- : ''
117
+ value ? findTree(options, item => item.name === value) : ''
120
118
  }
121
119
  onResultChange={noop}
122
120
  onResultClick={onClick}
@@ -97,7 +97,7 @@ export class ConditionFunc extends React.Component<ConditionFuncProps> {
97
97
  )}
98
98
  ref={ref}
99
99
  allowInput={false}
100
- result={func?.label}
100
+ result={func}
101
101
  onResultChange={noop}
102
102
  onResultClick={onClick}
103
103
  placeholder="请选择字段"
@@ -45,6 +45,9 @@ export interface FormulaEditorProps extends ThemeProps, LocaleProps {
45
45
  */
46
46
  variables: Array<VariableItem>;
47
47
 
48
+ /**
49
+ * 变量展现模式,可选值:'tabs' | 'tree'
50
+ */
48
51
  variableMode?: 'tabs' | 'tree';
49
52
 
50
53
  /**
@@ -216,17 +219,19 @@ export class FormulaEditor extends React.Component<
216
219
  'is-focused': focused
217
220
  })}
218
221
  >
219
- <div className={cx(`FormulaEditor-header`)}>{header ?? '表达式'}</div>
220
-
221
- <CodeMirrorEditor
222
- className={cx('FormulaEditor-editor')}
223
- value={value}
224
- onChange={this.handleOnChange}
225
- editorFactory={this.editorFactory}
226
- editorDidMount={this.handleEditorMounted}
227
- onFocus={this.handleFocus}
228
- onBlur={this.handleBlur}
229
- ></CodeMirrorEditor>
222
+ <div className={cx(`FormulaEditor-content`)}>
223
+ <div className={cx(`FormulaEditor-header`)}>{header ?? '表达式'}</div>
224
+
225
+ <CodeMirrorEditor
226
+ className={cx('FormulaEditor-editor')}
227
+ value={value}
228
+ onChange={this.handleOnChange}
229
+ editorFactory={this.editorFactory}
230
+ editorDidMount={this.handleEditorMounted}
231
+ onFocus={this.handleFocus}
232
+ onBlur={this.handleBlur}
233
+ ></CodeMirrorEditor>
234
+ </div>
230
235
 
231
236
  <div className={cx('FormulaEditor-settings')}>
232
237
  {Array.isArray(functions) && functions.length ? (
@@ -69,7 +69,9 @@ export function FuncList(props: FuncListProps) {
69
69
  <div className={cx('FormulaFuncList-column')}>
70
70
  {activeFunc ? (
71
71
  <div className={cx('FormulaFuncList-funcDetail')}>
72
- <p>{activeFunc.example}</p>
72
+ <pre>
73
+ <code>{activeFunc.example}</code>
74
+ </pre>
73
75
  <div>{activeFunc.description}</div>
74
76
  </div>
75
77
  ) : null}
@@ -1,7 +1,7 @@
1
1
  import {uncontrollable} from 'uncontrollable';
2
2
  import React from 'react';
3
3
  import {FormulaEditor, FormulaEditorProps} from './Editor';
4
- import {autobind} from '../../utils/helper';
4
+ import {autobind, noop} from '../../utils/helper';
5
5
  import PickerContainer from '../PickerContainer';
6
6
  import Editor from './Editor';
7
7
  import ResultBox from '../ResultBox';
@@ -63,6 +63,7 @@ export class FormulaPicker extends React.Component<FormulaPickerProps> {
63
63
  rest.variables,
64
64
  rest.functions
65
65
  )}
66
+ onResultChange={noop}
66
67
  onResultClick={onClick}
67
68
  disabled={disabled}
68
69
  borderMode={borderMode}
@@ -43,6 +43,7 @@ import ExchangeIcon from '../icons/exchange.svg';
43
43
  import ColmunsIcon from '../icons/columns.svg';
44
44
  import CalendarIcon from '../icons/calendar.svg';
45
45
  import ClockIcon from '../icons/clock.svg';
46
+ import TreeDownIcon from '../icons/tree-down.svg';
46
47
 
47
48
  import CopyIcon from '../icons/copy.svg';
48
49
  import FilterIcon from '../icons/filter.svg';
@@ -176,6 +177,7 @@ registerIcon('alert-success', AlertSuccess);
176
177
  registerIcon('alert-info', AlertInfo);
177
178
  registerIcon('alert-warning', AlertWarning);
178
179
  registerIcon('alert-danger', AlertDanger);
180
+ registerIcon('tree-down', TreeDownIcon);
179
181
 
180
182
  export function Icon({
181
183
  icon,
@@ -8,6 +8,7 @@ import NotFound from './404';
8
8
  import {default as Alert, alert, confirm, prompt} from './Alert';
9
9
  import {default as ContextMenu, openContextMenus} from './ContextMenu';
10
10
  import AsideNav from './AsideNav';
11
+ import Avatar from './Avatar';
11
12
  import Button from './Button';
12
13
  import Checkbox from './Checkbox';
13
14
  import Checkboxes from './Selection';
@@ -60,6 +61,7 @@ export {
60
61
  NotFound,
61
62
  Alert as AlertComponent,
62
63
  alert,
64
+ Avatar,
63
65
  confirm,
64
66
  prompt,
65
67
  ContextMenu,