amis 1.5.6 → 1.6.1-beta.0

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 (538) hide show
  1. package/.husky/pre-commit +1 -1
  2. package/README.md +1 -0
  3. package/lib/RootRenderer.d.ts +2 -0
  4. package/lib/RootRenderer.js +19 -1
  5. package/lib/RootRenderer.js.map +2 -2
  6. package/lib/Schema.d.ts +3 -2
  7. package/lib/Schema.js.map +1 -1
  8. package/lib/SchemaRenderer.js +52 -1
  9. package/lib/SchemaRenderer.js.map +2 -2
  10. package/lib/Scoped.d.ts +2 -0
  11. package/lib/Scoped.js +27 -1
  12. package/lib/Scoped.js.map +2 -2
  13. package/lib/actions/Action.d.ts +33 -0
  14. package/lib/actions/Action.js +100 -0
  15. package/lib/actions/Action.js.map +13 -0
  16. package/lib/actions/AjaxAction.d.ts +14 -0
  17. package/lib/actions/AjaxAction.js +68 -0
  18. package/lib/actions/AjaxAction.js.map +13 -0
  19. package/lib/actions/BreakAction.d.ts +12 -0
  20. package/lib/actions/BreakAction.js +28 -0
  21. package/lib/actions/BreakAction.js.map +13 -0
  22. package/lib/actions/BroadcastAction.d.ts +12 -0
  23. package/lib/actions/BroadcastAction.js +40 -0
  24. package/lib/actions/BroadcastAction.js.map +13 -0
  25. package/lib/actions/CmptAction.d.ts +12 -0
  26. package/lib/actions/CmptAction.js +40 -0
  27. package/lib/actions/CmptAction.js.map +13 -0
  28. package/lib/actions/ContinueAction.d.ts +12 -0
  29. package/lib/actions/ContinueAction.js +28 -0
  30. package/lib/actions/ContinueAction.js.map +13 -0
  31. package/lib/actions/CopyAction.d.ts +12 -0
  32. package/lib/actions/CopyAction.js +35 -0
  33. package/lib/actions/CopyAction.js.map +13 -0
  34. package/lib/actions/CustomAction.d.ts +12 -0
  35. package/lib/actions/CustomAction.js +43 -0
  36. package/lib/actions/CustomAction.js.map +13 -0
  37. package/lib/actions/DialogAction.d.ts +12 -0
  38. package/lib/actions/DialogAction.js +31 -0
  39. package/lib/actions/DialogAction.js.map +13 -0
  40. package/lib/actions/DrawerAction.d.ts +12 -0
  41. package/lib/actions/DrawerAction.js +31 -0
  42. package/lib/actions/DrawerAction.js.map +13 -0
  43. package/lib/actions/EmailAction.d.ts +12 -0
  44. package/lib/actions/EmailAction.js +37 -0
  45. package/lib/actions/EmailAction.js.map +13 -0
  46. package/lib/actions/LoopAction.d.ts +12 -0
  47. package/lib/actions/LoopAction.js +93 -0
  48. package/lib/actions/LoopAction.js.map +13 -0
  49. package/lib/actions/OpenPageAction.d.ts +12 -0
  50. package/lib/actions/OpenPageAction.js +33 -0
  51. package/lib/actions/OpenPageAction.js.map +13 -0
  52. package/lib/actions/ParallelAction.d.ts +5 -0
  53. package/lib/actions/ParallelAction.js +33 -0
  54. package/lib/actions/ParallelAction.js.map +13 -0
  55. package/lib/actions/SwitchAction.d.ts +8 -0
  56. package/lib/actions/SwitchAction.js +45 -0
  57. package/lib/actions/SwitchAction.js.map +13 -0
  58. package/lib/actions/index.d.ts +18 -0
  59. package/lib/actions/index.js +22 -0
  60. package/lib/actions/index.js.map +13 -0
  61. package/lib/components/AnchorNav.d.ts +20 -20
  62. package/lib/components/AssociatedSelection.d.ts +84 -84
  63. package/lib/components/AssociatedSelection.js +2 -2
  64. package/lib/components/AssociatedSelection.js.map +2 -2
  65. package/lib/components/Avatar.d.ts +135 -0
  66. package/lib/components/Avatar.js +120 -0
  67. package/lib/components/Avatar.js.map +13 -0
  68. package/lib/components/BaiduMapPicker.js.map +2 -2
  69. package/lib/components/Button.d.ts +20 -20
  70. package/lib/components/CalendarMobile.d.ts +573 -0
  71. package/lib/components/CalendarMobile.js +486 -0
  72. package/lib/components/CalendarMobile.js.map +13 -0
  73. package/lib/components/Cascader.d.ts +123 -0
  74. package/lib/components/Cascader.js +487 -0
  75. package/lib/components/Cascader.js.map +13 -0
  76. package/lib/components/ChainedSelection.d.ts +84 -84
  77. package/lib/components/ChainedSelection.js +15 -3
  78. package/lib/components/ChainedSelection.js.map +2 -2
  79. package/lib/components/CityArea.d.ts +527 -0
  80. package/lib/components/CityArea.js +177 -0
  81. package/lib/components/CityArea.js.map +13 -0
  82. package/lib/components/Collapse.d.ts +20 -20
  83. package/lib/components/ColorPicker.d.ts +84 -84
  84. package/lib/components/ColorPicker.js +4 -3
  85. package/lib/components/ColorPicker.js.map +2 -2
  86. package/lib/components/DatePicker.d.ts +85 -84
  87. package/lib/components/DatePicker.js +21 -8
  88. package/lib/components/DatePicker.js.map +2 -2
  89. package/lib/components/DateRangePicker.d.ts +85 -84
  90. package/lib/components/DateRangePicker.js +19 -6
  91. package/lib/components/DateRangePicker.js.map +2 -2
  92. package/lib/components/GroupedSelection.d.ts +84 -84
  93. package/lib/components/GroupedSelection.js +14 -2
  94. package/lib/components/GroupedSelection.js.map +2 -2
  95. package/lib/components/InputBox.d.ts +21 -21
  96. package/lib/components/ListGroup.d.ts +21 -21
  97. package/lib/components/ListMenu.d.ts +84 -84
  98. package/lib/components/MonthRangePicker.d.ts +85 -84
  99. package/lib/components/MonthRangePicker.js +18 -7
  100. package/lib/components/MonthRangePicker.js.map +2 -2
  101. package/lib/components/Overlay.d.ts +1 -1
  102. package/lib/components/Overlay.js.map +1 -1
  103. package/lib/components/Picker.d.ts +1 -0
  104. package/lib/components/Picker.js +16 -7
  105. package/lib/components/Picker.js.map +2 -2
  106. package/lib/components/PickerColumn.d.ts +1 -0
  107. package/lib/components/PickerColumn.js +21 -18
  108. package/lib/components/PickerColumn.js.map +2 -2
  109. package/lib/components/PickerContainer.d.ts +3 -0
  110. package/lib/components/PickerContainer.js +12 -5
  111. package/lib/components/PickerContainer.js.map +2 -2
  112. package/lib/components/PopOverContainer.d.ts +1 -0
  113. package/lib/components/PopOverContainer.js +5 -3
  114. package/lib/components/PopOverContainer.js.map +2 -2
  115. package/lib/components/PopUp.d.ts +1041 -28
  116. package/lib/components/PopUp.js +32 -8
  117. package/lib/components/PopUp.js.map +2 -2
  118. package/lib/components/Radios.d.ts +21 -21
  119. package/lib/components/Rating.d.ts +21 -21
  120. package/lib/components/ResultBox.d.ts +85 -84
  121. package/lib/components/ResultBox.js +9 -4
  122. package/lib/components/ResultBox.js.map +2 -2
  123. package/lib/components/ResultList.d.ts +9 -2
  124. package/lib/components/ResultList.js +22 -2
  125. package/lib/components/ResultList.js.map +2 -2
  126. package/lib/components/Select.d.ts +238 -238
  127. package/lib/components/Select.js +13 -9
  128. package/lib/components/Select.js.map +2 -2
  129. package/lib/components/Selection.d.ts +94 -86
  130. package/lib/components/Selection.js +11 -2
  131. package/lib/components/Selection.js.map +2 -2
  132. package/lib/components/Steps.js.map +2 -2
  133. package/lib/components/TableSelection.d.ts +85 -85
  134. package/lib/components/TableSelection.js +1 -9
  135. package/lib/components/TableSelection.js.map +2 -2
  136. package/lib/components/Tabs.js +31 -33
  137. package/lib/components/Tabs.js.map +2 -2
  138. package/lib/components/TabsTransfer.d.ts +87 -256
  139. package/lib/components/TabsTransfer.js +52 -9
  140. package/lib/components/TabsTransfer.js.map +2 -2
  141. package/lib/components/TabsTransferPicker.d.ts +1 -1
  142. package/lib/components/TabsTransferPicker.js +20 -18
  143. package/lib/components/TabsTransferPicker.js.map +2 -2
  144. package/lib/components/Timeline.d.ts +69 -0
  145. package/lib/components/Timeline.js +16 -0
  146. package/lib/components/Timeline.js.map +13 -0
  147. package/lib/components/TimelineItem.d.ts +517 -0
  148. package/lib/components/TimelineItem.js +40 -0
  149. package/lib/components/TimelineItem.js.map +13 -0
  150. package/lib/components/Transfer.d.ts +100 -98
  151. package/lib/components/Transfer.js +2 -3
  152. package/lib/components/Transfer.js.map +2 -2
  153. package/lib/components/TransferDropDown.d.ts +85 -84
  154. package/lib/components/TransferDropDown.js +9 -10
  155. package/lib/components/TransferDropDown.js.map +2 -2
  156. package/lib/components/TransferPicker.d.ts +1 -0
  157. package/lib/components/TransferPicker.js +19 -4
  158. package/lib/components/TransferPicker.js.map +2 -2
  159. package/lib/components/Tree.d.ts +84 -84
  160. package/lib/components/TreeSelection.d.ts +85 -85
  161. package/lib/components/TreeSelection.js +7 -1
  162. package/lib/components/TreeSelection.js.map +2 -2
  163. package/lib/components/calendar/Calendar.d.ts +19 -0
  164. package/lib/components/calendar/Calendar.js +71 -1
  165. package/lib/components/calendar/Calendar.js.map +2 -2
  166. package/lib/components/calendar/DaysView.d.ts +21 -0
  167. package/lib/components/calendar/DaysView.js +76 -17
  168. package/lib/components/calendar/DaysView.js.map +2 -2
  169. package/lib/components/calendar/MonthsView.d.ts +34 -0
  170. package/lib/components/calendar/MonthsView.js +68 -3
  171. package/lib/components/calendar/MonthsView.js.map +2 -2
  172. package/lib/components/calendar/QuartersView.d.ts +1 -0
  173. package/lib/components/calendar/QuartersView.js +2 -2
  174. package/lib/components/calendar/QuartersView.js.map +2 -2
  175. package/lib/components/calendar/TimeView.d.ts +30 -18
  176. package/lib/components/calendar/TimeView.js +47 -8
  177. package/lib/components/calendar/TimeView.js.map +2 -2
  178. package/lib/components/calendar/YearsView.d.ts +6 -0
  179. package/lib/components/calendar/YearsView.js +21 -10
  180. package/lib/components/calendar/YearsView.js.map +2 -2
  181. package/lib/components/condition-builder/Field.js +1 -4
  182. package/lib/components/condition-builder/Field.js.map +2 -2
  183. package/lib/components/condition-builder/Func.js +1 -1
  184. package/lib/components/condition-builder/Func.js.map +2 -2
  185. package/lib/components/formula/Editor.d.ts +3 -0
  186. package/lib/components/formula/Editor.js +3 -2
  187. package/lib/components/formula/Editor.js.map +2 -2
  188. package/lib/components/formula/FuncList.js +2 -1
  189. package/lib/components/formula/FuncList.js.map +2 -2
  190. package/lib/components/formula/Picker.js +1 -1
  191. package/lib/components/formula/Picker.js.map +2 -2
  192. package/lib/components/formula/plugin.js +0 -1
  193. package/lib/components/formula/plugin.js.map +2 -2
  194. package/lib/components/icons.js +2 -0
  195. package/lib/components/icons.js.map +2 -2
  196. package/lib/components/index.d.ts +2 -1
  197. package/lib/components/index.js +4 -2
  198. package/lib/components/index.js.map +2 -2
  199. package/lib/components/virtual-list/SizeAndPositionManager.js.map +2 -2
  200. package/lib/components/virtual-list/index.js +1 -2
  201. package/lib/components/virtual-list/index.js.map +2 -2
  202. package/lib/env.d.ts +4 -0
  203. package/lib/env.js.map +2 -2
  204. package/lib/factory.d.ts +2 -1
  205. package/lib/factory.js +83 -0
  206. package/lib/factory.js.map +2 -2
  207. package/lib/helper.css.map +1 -1
  208. package/lib/icons/tree-down.js +7 -0
  209. package/lib/index.d.ts +3 -0
  210. package/lib/index.js +4 -1
  211. package/lib/index.js.map +2 -2
  212. package/lib/locale/de-DE.js +17 -2
  213. package/lib/locale/de-DE.js.map +2 -2
  214. package/lib/locale/en-US.js +17 -2
  215. package/lib/locale/en-US.js.map +2 -2
  216. package/lib/locale/zh-CN.js +16 -1
  217. package/lib/locale/zh-CN.js.map +2 -2
  218. package/lib/renderers/Action.d.ts +1 -1
  219. package/lib/renderers/Action.js +26 -10
  220. package/lib/renderers/Action.js.map +2 -2
  221. package/lib/renderers/Avatar.d.ts +35 -26
  222. package/lib/renderers/Avatar.js +14 -19
  223. package/lib/renderers/Avatar.js.map +2 -2
  224. package/lib/renderers/CRUD.js +1 -2
  225. package/lib/renderers/CRUD.js.map +2 -2
  226. package/lib/renderers/Card.js +6 -5
  227. package/lib/renderers/Card.js.map +2 -2
  228. package/lib/renderers/Custom.d.ts +1 -1
  229. package/lib/renderers/Custom.js +1 -1
  230. package/lib/renderers/Custom.js.map +2 -2
  231. package/lib/renderers/DropDownButton.d.ts +11 -2
  232. package/lib/renderers/DropDownButton.js +30 -12
  233. package/lib/renderers/DropDownButton.js.map +2 -2
  234. package/lib/renderers/Each.js +5 -2
  235. package/lib/renderers/Each.js.map +2 -2
  236. package/lib/renderers/Flex.js +1 -5
  237. package/lib/renderers/Flex.js.map +2 -2
  238. package/lib/renderers/Form/ChartRadios.js.map +2 -2
  239. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  240. package/lib/renderers/Form/CityDB.js +526 -2
  241. package/lib/renderers/Form/CityDB.js.map +2 -2
  242. package/lib/renderers/Form/DiffEditor.d.ts +6 -0
  243. package/lib/renderers/Form/DiffEditor.js +2 -1
  244. package/lib/renderers/Form/DiffEditor.js.map +2 -2
  245. package/lib/renderers/Form/Editor.d.ts +6 -0
  246. package/lib/renderers/Form/InputCity.d.ts +85 -84
  247. package/lib/renderers/Form/InputCity.js +4 -2
  248. package/lib/renderers/Form/InputCity.js.map +2 -2
  249. package/lib/renderers/Form/InputColor.d.ts +84 -84
  250. package/lib/renderers/Form/InputColor.js +6 -2
  251. package/lib/renderers/Form/InputColor.js.map +2 -2
  252. package/lib/renderers/Form/InputDate.js +10 -5
  253. package/lib/renderers/Form/InputDate.js.map +2 -2
  254. package/lib/renderers/Form/InputDateRange.js +6 -2
  255. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  256. package/lib/renderers/Form/InputFormula.d.ts +4 -1
  257. package/lib/renderers/Form/InputFormula.js +2 -2
  258. package/lib/renderers/Form/InputFormula.js.map +2 -2
  259. package/lib/renderers/Form/InputImage.d.ts +1 -0
  260. package/lib/renderers/Form/InputImage.js +8 -4
  261. package/lib/renderers/Form/InputImage.js.map +2 -2
  262. package/lib/renderers/Form/InputMonthRange.js +1 -1
  263. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  264. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  265. package/lib/renderers/Form/InputQuarterRange.js.map +2 -2
  266. package/lib/renderers/Form/InputYearRange.js +1 -1
  267. package/lib/renderers/Form/InputYearRange.js.map +2 -2
  268. package/lib/renderers/Form/Item.d.ts +10 -14
  269. package/lib/renderers/Form/Item.js +18 -9
  270. package/lib/renderers/Form/Item.js.map +2 -2
  271. package/lib/renderers/Form/NestedSelect.d.ts +1 -0
  272. package/lib/renderers/Form/NestedSelect.js +8 -4
  273. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  274. package/lib/renderers/Form/Options.js +9 -7
  275. package/lib/renderers/Form/Options.js.map +2 -2
  276. package/lib/renderers/Form/Select.d.ts +2 -0
  277. package/lib/renderers/Form/Select.js +9 -6
  278. package/lib/renderers/Form/Select.js.map +2 -2
  279. package/lib/renderers/Form/TabsTransfer.d.ts +5 -32
  280. package/lib/renderers/Form/TabsTransfer.js +20 -1
  281. package/lib/renderers/Form/TabsTransfer.js.map +2 -2
  282. package/lib/renderers/Form/TabsTransferPicker.d.ts +5 -35
  283. package/lib/renderers/Form/TabsTransferPicker.js +21 -2
  284. package/lib/renderers/Form/TabsTransferPicker.js.map +2 -2
  285. package/lib/renderers/Form/Transfer.d.ts +15 -4
  286. package/lib/renderers/Form/Transfer.js +55 -18
  287. package/lib/renderers/Form/Transfer.js.map +2 -2
  288. package/lib/renderers/Form/TransferPicker.d.ts +3 -32
  289. package/lib/renderers/Form/TransferPicker.js +1 -1
  290. package/lib/renderers/Form/TransferPicker.js.map +2 -2
  291. package/lib/renderers/Form/TreeSelect.js +4 -4
  292. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  293. package/lib/renderers/Form/index.js +10 -2
  294. package/lib/renderers/Form/index.js.map +2 -2
  295. package/lib/renderers/IFrame.js +0 -2
  296. package/lib/renderers/IFrame.js.map +2 -2
  297. package/lib/renderers/Link.d.ts +1 -1
  298. package/lib/renderers/Link.js +27 -6
  299. package/lib/renderers/Link.js.map +2 -2
  300. package/lib/renderers/Nav.d.ts +21 -21
  301. package/lib/renderers/Nav.js +4 -1
  302. package/lib/renderers/Nav.js.map +2 -2
  303. package/lib/renderers/Remark.d.ts +5 -1
  304. package/lib/renderers/Remark.js +39 -7
  305. package/lib/renderers/Remark.js.map +2 -2
  306. package/lib/renderers/Steps.js +5 -5
  307. package/lib/renderers/Steps.js.map +2 -2
  308. package/lib/renderers/Table/TableRow.js +4 -1
  309. package/lib/renderers/Table/TableRow.js.map +2 -2
  310. package/lib/renderers/Table/index.js +4 -1
  311. package/lib/renderers/Table/index.js.map +2 -2
  312. package/lib/renderers/Tabs.js +1 -1
  313. package/lib/renderers/Tabs.js.map +2 -2
  314. package/lib/renderers/Timeline.d.ts +65 -0
  315. package/lib/renderers/Timeline.js +54 -0
  316. package/lib/renderers/Timeline.js.map +13 -0
  317. package/lib/renderers/Video.js.map +2 -2
  318. package/lib/schemaExtend.js +23 -9
  319. package/lib/schemaExtend.js.map +2 -2
  320. package/lib/store/combo.js.map +2 -2
  321. package/lib/store/formItem.js +7 -7
  322. package/lib/store/formItem.js.map +2 -2
  323. package/lib/store/table.js +1 -1
  324. package/lib/store/table.js.map +2 -2
  325. package/lib/themes/ang-ie11.css +1149 -53
  326. package/lib/themes/ang.css +1149 -53
  327. package/lib/themes/ang.css.map +1 -1
  328. package/lib/themes/antd-ie11.css +1187 -53
  329. package/lib/themes/antd.css +1187 -53
  330. package/lib/themes/antd.css.map +1 -1
  331. package/lib/themes/cxd-ie11.css +1190 -71
  332. package/lib/themes/cxd.css +1190 -71
  333. package/lib/themes/cxd.css.map +1 -1
  334. package/lib/themes/dark-ie11.css +1152 -53
  335. package/lib/themes/dark.css +1152 -53
  336. package/lib/themes/dark.css.map +1 -1
  337. package/lib/themes/default.css +1190 -71
  338. package/lib/themes/default.css.map +1 -1
  339. package/lib/utils/RootClose.js +3 -1
  340. package/lib/utils/RootClose.js.map +2 -2
  341. package/lib/utils/api.js +14 -3
  342. package/lib/utils/api.js.map +2 -2
  343. package/lib/utils/debug.d.ts +26 -0
  344. package/lib/utils/debug.js +351 -0
  345. package/lib/utils/debug.js.map +13 -0
  346. package/lib/utils/helper.d.ts +1 -6
  347. package/lib/utils/helper.js +6 -17
  348. package/lib/utils/helper.js.map +2 -2
  349. package/lib/utils/renderer-event.d.ts +38 -0
  350. package/lib/utils/renderer-event.js +28 -0
  351. package/lib/utils/renderer-event.js.map +13 -0
  352. package/package.json +12 -6
  353. package/schema.json +3483 -810
  354. package/scss/_properties.scss +20 -6
  355. package/scss/_variables.scss +1 -0
  356. package/scss/components/_avatar.scss +27 -9
  357. package/scss/components/_calendar.scss +291 -0
  358. package/scss/components/_card.scss +1 -1
  359. package/scss/components/_cascader.scss +102 -0
  360. package/scss/components/_city-area.scss +27 -0
  361. package/scss/components/_collapse-group.scss +1 -3
  362. package/scss/components/_debug.scss +167 -0
  363. package/scss/components/_dropdown.scss +39 -9
  364. package/scss/components/_formula.scss +30 -6
  365. package/scss/components/_modal.scss +18 -0
  366. package/scss/components/_panel.scss +45 -0
  367. package/scss/components/_picker-columns.scss +15 -5
  368. package/scss/components/_popup.scss +43 -16
  369. package/scss/components/_result-box.scss +31 -0
  370. package/scss/components/_timeline.scss +198 -0
  371. package/scss/components/form/_checks.scss +2 -0
  372. package/scss/components/form/_color.scss +2 -2
  373. package/scss/components/form/_date-range.scss +34 -1
  374. package/scss/components/form/_date.scss +46 -1
  375. package/scss/components/form/_form.scss +170 -0
  376. package/scss/components/form/_nested-select.scss +3 -0
  377. package/scss/components/form/_result-list.scss +2 -0
  378. package/scss/components/form/_select.scss +32 -3
  379. package/scss/components/form/_selection.scss +5 -4
  380. package/scss/components/form/_transfer.scss +3 -0
  381. package/scss/components/form/_tree-select.scss +1 -1
  382. package/scss/themes/_antd-variables.scss +45 -0
  383. package/scss/themes/_common.scss +5 -0
  384. package/scss/themes/_cxd-variables.scss +51 -2
  385. package/scss/themes/_dark-variables.scss +4 -0
  386. package/scss/themes/cxd.scss +0 -19
  387. package/sdk/ang-ie11.css +1450 -142
  388. package/sdk/ang.css +1473 -159
  389. package/sdk/antd-ie11.css +1451 -142
  390. package/sdk/antd.css +1511 -159
  391. package/sdk/charts.js +15 -15
  392. package/sdk/codemirror.js +7 -7
  393. package/sdk/color-picker.js +65 -65
  394. package/sdk/cropperjs.js +2 -2
  395. package/sdk/cxd-ie11.css +1449 -159
  396. package/sdk/cxd.css +1514 -179
  397. package/sdk/dark-ie11.css +1450 -142
  398. package/sdk/dark.css +1476 -159
  399. package/sdk/exceljs.js +1 -1
  400. package/sdk/helper.css.map +1 -1
  401. package/sdk/locale/de-DE.js +17 -2
  402. package/sdk/markdown.js +69 -69
  403. package/sdk/papaparse.js +1 -1
  404. package/sdk/renderers/Form/CityDB.js +1 -1
  405. package/sdk/rest.js +18 -18
  406. package/sdk/rich-text.js +62 -62
  407. package/sdk/sdk-ie11.css +1449 -159
  408. package/sdk/sdk.css +1514 -179
  409. package/sdk/sdk.js +1311 -1253
  410. package/sdk/thirds/hls.js/hls.js +1 -1
  411. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  412. package/sdk/tinymce.js +57 -57
  413. package/src/RootRenderer.tsx +27 -1
  414. package/src/Schema.ts +3 -0
  415. package/src/SchemaRenderer.tsx +70 -4
  416. package/src/Scoped.tsx +46 -4
  417. package/src/actions/Action.ts +138 -0
  418. package/src/actions/AjaxAction.ts +58 -0
  419. package/src/actions/BreakAction.ts +27 -0
  420. package/src/actions/BroadcastAction.ts +41 -0
  421. package/src/actions/CmptAction.ts +36 -0
  422. package/src/actions/ContinueAction.ts +27 -0
  423. package/src/actions/CopyAction.ts +41 -0
  424. package/src/actions/CustomAction.ts +46 -0
  425. package/src/actions/DialogAction.ts +28 -0
  426. package/src/actions/DrawerAction.ts +28 -0
  427. package/src/actions/EmailAction.ts +38 -0
  428. package/src/actions/LoopAction.ts +77 -0
  429. package/src/actions/OpenPageAction.ts +39 -0
  430. package/src/actions/ParallelAction.ts +26 -0
  431. package/src/actions/SwitchAction.ts +35 -0
  432. package/src/actions/index.ts +20 -0
  433. package/src/components/AssociatedSelection.tsx +5 -1
  434. package/src/components/Avatar.tsx +253 -0
  435. package/src/components/BaiduMapPicker.tsx +19 -14
  436. package/src/components/CalendarMobile.tsx +658 -0
  437. package/src/components/Cascader.tsx +564 -0
  438. package/src/components/ChainedSelection.tsx +16 -3
  439. package/src/components/CityArea.tsx +315 -0
  440. package/src/components/ColorPicker.tsx +41 -40
  441. package/src/components/DatePicker.tsx +80 -34
  442. package/src/components/DateRangePicker.tsx +85 -30
  443. package/src/components/GroupedSelection.tsx +14 -2
  444. package/src/components/MonthRangePicker.tsx +78 -31
  445. package/src/components/Overlay.tsx +1 -1
  446. package/src/components/Picker.tsx +55 -35
  447. package/src/components/PickerColumn.tsx +43 -36
  448. package/src/components/PickerContainer.tsx +13 -1
  449. package/src/components/PopOverContainer.tsx +31 -17
  450. package/src/components/PopUp.tsx +84 -57
  451. package/src/components/ResultBox.tsx +14 -2
  452. package/src/components/ResultList.tsx +36 -6
  453. package/src/components/Select.tsx +24 -26
  454. package/src/components/Selection.tsx +21 -3
  455. package/src/components/Steps.tsx +23 -10
  456. package/src/components/TableSelection.tsx +1 -44
  457. package/src/components/Tabs.tsx +65 -54
  458. package/src/components/TabsTransfer.tsx +78 -9
  459. package/src/components/TabsTransferPicker.tsx +25 -13
  460. package/src/components/Timeline.tsx +36 -0
  461. package/src/components/TimelineItem.tsx +140 -0
  462. package/src/components/Transfer.tsx +11 -8
  463. package/src/components/TransferDropDown.tsx +20 -12
  464. package/src/components/TransferPicker.tsx +25 -4
  465. package/src/components/TreeSelection.tsx +7 -1
  466. package/src/components/calendar/Calendar.tsx +101 -4
  467. package/src/components/calendar/DaysView.tsx +165 -33
  468. package/src/components/calendar/MonthsView.tsx +108 -1
  469. package/src/components/calendar/QuartersView.tsx +3 -2
  470. package/src/components/calendar/TimeView.tsx +104 -41
  471. package/src/components/calendar/YearsView.tsx +34 -17
  472. package/src/components/condition-builder/Field.tsx +1 -3
  473. package/src/components/condition-builder/Func.tsx +1 -1
  474. package/src/components/formula/Editor.tsx +16 -11
  475. package/src/components/formula/FuncList.tsx +3 -1
  476. package/src/components/formula/Picker.tsx +2 -1
  477. package/src/components/formula/plugin.ts +0 -2
  478. package/src/components/icons.tsx +2 -0
  479. package/src/components/index.tsx +2 -0
  480. package/src/components/virtual-list/SizeAndPositionManager.ts +6 -3
  481. package/src/components/virtual-list/index.tsx +4 -6
  482. package/src/env.tsx +22 -0
  483. package/src/factory.tsx +93 -1
  484. package/src/icons/tree-down.svg +5 -0
  485. package/src/index.tsx +5 -0
  486. package/src/locale/de-DE.ts +17 -2
  487. package/src/locale/en-US.ts +17 -2
  488. package/src/locale/zh-CN.ts +16 -1
  489. package/src/renderers/Action.tsx +11 -2
  490. package/src/renderers/Avatar.tsx +83 -74
  491. package/src/renderers/CRUD.tsx +1 -3
  492. package/src/renderers/Card.tsx +10 -6
  493. package/src/renderers/Custom.tsx +7 -4
  494. package/src/renderers/DropDownButton.tsx +69 -35
  495. package/src/renderers/Each.tsx +4 -4
  496. package/src/renderers/Flex.tsx +3 -7
  497. package/src/renderers/Form/ChartRadios.tsx +2 -7
  498. package/src/renderers/Form/Checkboxes.tsx +1 -1
  499. package/src/renderers/Form/CityDB.ts +526 -2
  500. package/src/renderers/Form/DiffEditor.tsx +2 -3
  501. package/src/renderers/Form/InputCity.tsx +23 -3
  502. package/src/renderers/Form/InputColor.tsx +21 -2
  503. package/src/renderers/Form/InputDate.tsx +48 -20
  504. package/src/renderers/Form/InputDateRange.tsx +9 -2
  505. package/src/renderers/Form/InputFormula.tsx +9 -4
  506. package/src/renderers/Form/InputImage.tsx +9 -4
  507. package/src/renderers/Form/InputMonthRange.tsx +0 -1
  508. package/src/renderers/Form/InputQuarterRange.tsx +0 -1
  509. package/src/renderers/Form/InputYearRange.tsx +0 -1
  510. package/src/renderers/Form/Item.tsx +29 -8
  511. package/src/renderers/Form/NestedSelect.tsx +32 -4
  512. package/src/renderers/Form/Options.tsx +15 -7
  513. package/src/renderers/Form/Select.tsx +21 -5
  514. package/src/renderers/Form/TabsTransfer.tsx +28 -38
  515. package/src/renderers/Form/TabsTransferPicker.tsx +28 -46
  516. package/src/renderers/Form/Transfer.tsx +75 -24
  517. package/src/renderers/Form/TransferPicker.tsx +6 -38
  518. package/src/renderers/Form/TreeSelect.tsx +18 -16
  519. package/src/renderers/Form/index.tsx +9 -2
  520. package/src/renderers/IFrame.tsx +0 -2
  521. package/src/renderers/Link.tsx +18 -3
  522. package/src/renderers/Nav.tsx +4 -1
  523. package/src/renderers/Remark.tsx +68 -18
  524. package/src/renderers/Steps.tsx +11 -13
  525. package/src/renderers/Table/TableRow.tsx +3 -1
  526. package/src/renderers/Table/index.tsx +7 -1
  527. package/src/renderers/Tabs.tsx +6 -2
  528. package/src/renderers/Timeline.tsx +141 -0
  529. package/src/renderers/Video.tsx +4 -20
  530. package/src/schemaExtend.ts +22 -10
  531. package/src/store/combo.ts +1 -3
  532. package/src/store/formItem.ts +3 -3
  533. package/src/store/table.ts +2 -1
  534. package/src/utils/RootClose.ts +5 -1
  535. package/src/utils/api.ts +15 -2
  536. package/src/utils/debug.tsx +438 -0
  537. package/src/utils/helper.ts +6 -16
  538. package/src/utils/renderer-event.ts +75 -0
@@ -0,0 +1,315 @@
1
+ /**
2
+ * @file 移动端城市选择器
3
+ */
4
+ import React, {useEffect, useState, memo} from 'react';
5
+
6
+ import Picker from './Picker';
7
+ import ResultBox from './ResultBox';
8
+ import {useSetState, useUpdateEffect} from '../hooks';
9
+ import {localeable, LocaleProps} from '../locale';
10
+ import {themeable, ThemeProps} from '../theme';
11
+ import {uncontrollable} from 'uncontrollable';
12
+ import PopUp from './PopUp';
13
+ import {PickerObjectOption} from './PickerColumn';
14
+
15
+ export type AreaColumnOption = {
16
+ text: string;
17
+ value: number;
18
+ };
19
+
20
+ export interface AreaProps extends LocaleProps, ThemeProps {
21
+ value: any;
22
+ /**
23
+ * 允许选择城市?
24
+ */
25
+ allowCity?: boolean;
26
+ /**
27
+ * 允许选择地区?
28
+ */
29
+ allowDistrict?: boolean;
30
+ /**
31
+ * 允许选择街道?
32
+ */
33
+ allowStreet?: boolean;
34
+ /**
35
+ * 开启后只会存城市的 code 信息
36
+ */
37
+ extractValue?: boolean;
38
+ /**
39
+ * 是否将各个信息拼接成字符串。
40
+ */
41
+ joinValues?: boolean;
42
+ /**
43
+ * 拼接的符号是啥?
44
+ */
45
+ delimiter?: string;
46
+ /**
47
+ * 是否禁用
48
+ */
49
+ disabled?: boolean;
50
+ useMobileUI?: boolean;
51
+ onChange: (value: any) => void;
52
+ /** 点击完成按钮时触发 */
53
+ onConfirm?: (result: AreaColumnOption[], index: number) => void;
54
+ /** 点击取消按钮时触发 */
55
+ onCancel?: (...args: unknown[]) => void;
56
+
57
+ popOverContainer?: any;
58
+ }
59
+ /**
60
+ * 街道
61
+ */
62
+ type district = {
63
+ [propName: number]: {
64
+ [propName: number]: Array<number>;
65
+ };
66
+ };
67
+ interface DbState {
68
+ province: number[];
69
+ district: district;
70
+ [key: number]: string;
71
+ city: {
72
+ [key: number]: number[];
73
+ };
74
+ }
75
+ interface StateObj {
76
+ columns: {options: Array<AreaColumnOption>}[];
77
+ }
78
+
79
+ const CityArea = memo<AreaProps>(props => {
80
+ const {
81
+ joinValues = true,
82
+ extractValue = true,
83
+ delimiter = ',',
84
+ allowCity = true,
85
+ allowDistrict = true,
86
+ allowStreet = false,
87
+ // 默认北京东城区
88
+ value = 110101,
89
+ classnames: cx,
90
+ translate: __,
91
+ disabled = false,
92
+ popOverContainer,
93
+ useMobileUI
94
+ } = props;
95
+
96
+ const [values, setValues] = useState<Array<number>>([]);
97
+ const [street, setStreet] = useState('');
98
+ const [confirmValues, setConfirmValues] =
99
+ useState<Array<PickerObjectOption>>();
100
+ const [db, updateDb] = useSetState<DbState>();
101
+ const [state, updateState] = useSetState<StateObj>({
102
+ columns: []
103
+ });
104
+ const [isOpened, setIsOpened] = useState(false);
105
+
106
+ const onChange = (columnValues: Array<number>, columnIndex: number) => {
107
+ // 清空后面的值
108
+ while (columnValues[columnIndex++]) {
109
+ columnValues[columnIndex++] = -1;
110
+ }
111
+ let [provience, city, district] = columnValues;
112
+ if (city === -1) {
113
+ city = db.city?.[provience]?.[0];
114
+ }
115
+ if (district === -1) {
116
+ district = db.district?.[provience]?.[city]?.[0];
117
+ }
118
+ let tempValues = [provience, city, district];
119
+ if (!allowDistrict) {
120
+ tempValues.splice(2, 1);
121
+ }
122
+ if (!allowCity) {
123
+ tempValues.splice(1, 1);
124
+ }
125
+ setValues(tempValues);
126
+ };
127
+
128
+ const propsChange = () => {
129
+ const {onChange} = props;
130
+ const [province, city, district] = values;
131
+ const code =
132
+ allowDistrict && district
133
+ ? district
134
+ : allowCity && city
135
+ ? city
136
+ : province;
137
+ if (typeof extractValue === 'undefined' ? joinValues : extractValue) {
138
+ code
139
+ ? onChange(
140
+ allowStreet && street
141
+ ? [code, street].join(delimiter)
142
+ : String(code)
143
+ )
144
+ : onChange('');
145
+ } else {
146
+ onChange({
147
+ code,
148
+ province: db[province],
149
+ city: db[city],
150
+ district: db[district],
151
+ street
152
+ });
153
+ }
154
+ };
155
+
156
+ const onConfirm = () => {
157
+ const confirmValues = values.map((item: number) => ({
158
+ text: db[item],
159
+ value: item
160
+ }));
161
+ setConfirmValues(confirmValues);
162
+ propsChange();
163
+ setIsOpened(false);
164
+ };
165
+
166
+ const onCancel = () => {
167
+ setIsOpened(false);
168
+ if (props.onCancel) props.onCancel();
169
+ };
170
+
171
+ const getPropsValue = () => {
172
+ // 最后一项的值
173
+ let code =
174
+ (value && value.code) ||
175
+ (typeof value === 'number' && value) ||
176
+ (typeof value === 'string' && /(\d{6})/.test(value) && RegExp.$1);
177
+ const values: Array<number> = [];
178
+ if (code && db[code]) {
179
+ code = parseInt(code, 10);
180
+ let provinceCode = code - (code % 10000);
181
+ let cityCode = code - (code % 100);
182
+ if (db[provinceCode]) {
183
+ values[0] = provinceCode;
184
+ }
185
+ if (db[cityCode] && allowCity) {
186
+ values[1] = cityCode;
187
+ } else if (~db.city[provinceCode]?.indexOf(code) && allowCity) {
188
+ values[1] = code;
189
+ }
190
+
191
+ if (code % 100 && allowDistrict) {
192
+ values[2] = code;
193
+ }
194
+ setValues(values);
195
+ }
196
+ };
197
+
198
+ const updateColumns = () => {
199
+ if (!db) {
200
+ return;
201
+ }
202
+ let [provience, city, district] = values;
203
+ const provienceColumn = db.province.map((code: number) => {
204
+ return {text: db[code], value: code, disabled};
205
+ });
206
+ const cityColumn = city
207
+ ? db.city[provience].map((code: number) => {
208
+ return {text: db[code], value: code, disabled};
209
+ })
210
+ : [];
211
+ const districtColumn =
212
+ city && district
213
+ ? db.district[provience][city].map((code: number) => {
214
+ return {text: db[code], value: code, disabled};
215
+ })
216
+ : [];
217
+ const columns = [
218
+ {options: provienceColumn},
219
+ {options: cityColumn},
220
+ {options: districtColumn}
221
+ ];
222
+ if (!allowDistrict || !allowCity) {
223
+ columns.splice(2, 1);
224
+ }
225
+ if (!allowCity) {
226
+ columns.splice(1, 1);
227
+ }
228
+ updateState({columns});
229
+ };
230
+
231
+ const loadDb = () => {
232
+ import('../renderers/Form/CityDB').then(db => {
233
+ updateDb({
234
+ ...db.default,
235
+ province: db.province as any,
236
+ city: db.city,
237
+ district: db.district as district
238
+ });
239
+ });
240
+ };
241
+
242
+ useEffect(() => {
243
+ loadDb();
244
+ }, []);
245
+
246
+ useEffect(() => {
247
+ isOpened && db && getPropsValue();
248
+ }, [db, isOpened]);
249
+
250
+ useEffect(() => {
251
+ street && propsChange();
252
+ }, [street]);
253
+
254
+ useUpdateEffect(() => {
255
+ values.length && updateColumns();
256
+ }, [values]);
257
+
258
+ const result = confirmValues
259
+ ?.filter(item => item?.value)
260
+ ?.map(item => item.text)
261
+ .join(delimiter);
262
+
263
+ return (
264
+ <div className={cx(`CityArea`)}>
265
+ <ResultBox
266
+ className={cx('CityArea-Input', isOpened ? 'is-active' : '')}
267
+ allowInput={false}
268
+ result={result}
269
+ onResultChange={() => {}}
270
+ onResultClick={() => setIsOpened(!isOpened)}
271
+ placeholder={__('Condition.cond_placeholder')}
272
+ useMobileUI={useMobileUI}
273
+ ></ResultBox>
274
+ {allowStreet && values[0] ? (
275
+ <input
276
+ className={cx('CityArea-Input')}
277
+ value={street}
278
+ onChange={(e: React.ChangeEvent<HTMLInputElement>) =>
279
+ setStreet(e.currentTarget.value)
280
+ }
281
+ placeholder={__('City.street')}
282
+ disabled={disabled}
283
+ />
284
+ ) : null}
285
+ <PopUp
286
+ className={cx(`CityArea-popup`)}
287
+ container={popOverContainer}
288
+ isShow={isOpened}
289
+ showConfirm
290
+ onConfirm={onConfirm}
291
+ onHide={onCancel}
292
+ >
293
+ <Picker
294
+ className={'CityArea-picker'}
295
+ columns={state.columns}
296
+ onChange={onChange as any}
297
+ showToolbar={false}
298
+ labelField="text"
299
+ itemHeight={40}
300
+ value={values}
301
+ classnames={props.classnames}
302
+ classPrefix={props.classPrefix}
303
+ />
304
+ </PopUp>
305
+ </div>
306
+ );
307
+ });
308
+
309
+ export default themeable(
310
+ localeable(
311
+ uncontrollable(CityArea, {
312
+ value: 'onChange'
313
+ })
314
+ )
315
+ );
@@ -227,6 +227,7 @@ export class ColorControl extends React.PureComponent<
227
227
  const __ = this.props.translate;
228
228
  const isOpened = this.state.isOpened;
229
229
  const isFocused = this.state.isFocused;
230
+ const mobileUI = useMobileUI && isMobile();
230
231
 
231
232
  return (
232
233
  <div
@@ -261,6 +262,7 @@ export class ColorControl extends React.PureComponent<
261
262
  onFocus={this.handleFocus}
262
263
  onBlur={this.handleBlur}
263
264
  onClick={this.handleClick}
265
+ readOnly={mobileUI}
264
266
  />
265
267
 
266
268
  {clearable && !disabled && value ? (
@@ -273,7 +275,7 @@ export class ColorControl extends React.PureComponent<
273
275
  <Icon icon="caret" className="icon" onClick={this.handleClick} />
274
276
  </span>
275
277
 
276
- {!(useMobileUI && isMobile()) && isOpened ? (
278
+ {!mobileUI && isOpened ? (
277
279
  <Overlay
278
280
  placement={placement || 'auto'}
279
281
  target={() => findDOMNode(this)}
@@ -320,45 +322,44 @@ export class ColorControl extends React.PureComponent<
320
322
  </PopOver>
321
323
  </Overlay>
322
324
  ) : null}
323
- {
324
- useMobileUI && isMobile() && (
325
- <PopUp
326
- className={cx(`${ns}ColorPicker-popup`)}
327
- isShow={isOpened}
328
- onHide={this.handleClick}
329
- >
330
- {allowCustomColor ? (
331
- <SketchPicker
332
- styles={{}}
333
- disableAlpha={!!~['rgb', 'hex'].indexOf(format as string)}
334
- color={value}
335
- presetColors={presetColors}
336
- onChangeComplete={this.handleChange}
337
- />
338
- ) : (
339
- <GithubPicker
340
- color={value}
341
- colors={
342
- Array.isArray(presetColors)
343
- ? (presetColors
344
- .filter(
345
- item => typeof item === 'string' || isObject(item)
346
- )
347
- .map(item =>
348
- typeof item === 'string'
349
- ? item
350
- : isObject(item)
351
- ? item?.color
352
- : item
353
- ) as string[])
354
- : undefined
355
- }
356
- onChangeComplete={this.handleChange}
357
- />
358
- )}
359
- </PopUp>
360
- )
361
- }
325
+ {mobileUI && (
326
+ <PopUp
327
+ className={cx(`${ns}ColorPicker-popup`)}
328
+ container={popOverContainer}
329
+ isShow={isOpened}
330
+ onHide={this.handleClick}
331
+ >
332
+ {allowCustomColor ? (
333
+ <SketchPicker
334
+ styles={{}}
335
+ disableAlpha={!!~['rgb', 'hex'].indexOf(format as string)}
336
+ color={value}
337
+ presetColors={presetColors}
338
+ onChangeComplete={this.handleChange}
339
+ />
340
+ ) : (
341
+ <GithubPicker
342
+ color={value}
343
+ colors={
344
+ Array.isArray(presetColors)
345
+ ? (presetColors
346
+ .filter(
347
+ item => typeof item === 'string' || isObject(item)
348
+ )
349
+ .map(item =>
350
+ typeof item === 'string'
351
+ ? item
352
+ : isObject(item)
353
+ ? item?.color
354
+ : item
355
+ ) as string[])
356
+ : undefined
357
+ }
358
+ onChangeComplete={this.handleChange}
359
+ />
360
+ )}
361
+ </PopUp>
362
+ )}
362
363
  </div>
363
364
  );
364
365
  }
@@ -15,8 +15,9 @@ import {ClassNamesFn, themeable, ThemeProps} from '../theme';
15
15
  import {PlainObject} from '../types';
16
16
  import Calendar from './calendar/Calendar';
17
17
  import 'react-datetime/css/react-datetime.css';
18
- import { localeable, LocaleProps, TranslateFn } from '../locale';
18
+ import {localeable, LocaleProps, TranslateFn} from '../locale';
19
19
  import {isMobile, ucFirst} from '../utils/helper';
20
+ import CalendarMobile from './CalendarMobile';
20
21
 
21
22
  const availableShortcuts: {[propName: string]: any} = {
22
23
  now: {
@@ -280,16 +281,17 @@ export interface DateProps extends LocaleProps, ThemeProps {
280
281
  // 是否为内嵌模式,如果开启就不是 picker 了,直接页面点选。
281
282
  embed?: boolean;
282
283
  schedules?: Array<{
283
- startTime: Date,
284
- endTime: Date,
285
- content: any,
286
- className?: string
284
+ startTime: Date;
285
+ endTime: Date;
286
+ content: any;
287
+ className?: string;
287
288
  }>;
288
289
  scheduleClassNames?: Array<string>;
289
290
  largeMode?: boolean;
290
291
  onScheduleClick?: (scheduleData: any) => void;
291
-
292
292
  useMobileUI?: boolean;
293
+ // 在移动端日期展示有多种形式,一种是picker 滑动选择,一种是日历展开选择,mobileCalendarMode为calendar表示日历展开选择
294
+ mobileCalendarMode?: 'picker' | 'calendar';
293
295
 
294
296
  // 下面那个千万不要写,写了就会导致 keyof DateProps 得到的结果是 string | number;
295
297
  // [propName: string]: any;
@@ -315,7 +317,13 @@ export class DatePicker extends React.Component<DateProps, DatePickerState> {
315
317
  shortcuts: '',
316
318
  closeOnSelect: true,
317
319
  overlayPlacement: 'auto',
318
- scheduleClassNames: ['bg-warning', 'bg-danger', 'bg-success', 'bg-info', 'bg-secondary']
320
+ scheduleClassNames: [
321
+ 'bg-warning',
322
+ 'bg-danger',
323
+ 'bg-success',
324
+ 'bg-info',
325
+ 'bg-secondary'
326
+ ]
319
327
  };
320
328
  state: DatePickerState = {
321
329
  isOpened: false,
@@ -561,16 +569,37 @@ export class DatePicker extends React.Component<DateProps, DatePickerState> {
561
569
  embed,
562
570
  minDate,
563
571
  useMobileUI,
572
+ maxDate,
564
573
  schedules,
565
574
  largeMode,
566
575
  scheduleClassNames,
567
- onScheduleClick
576
+ onScheduleClick,
577
+ mobileCalendarMode
568
578
  } = this.props;
569
579
 
570
580
  const __ = this.props.translate;
571
581
  const isOpened = this.state.isOpened;
572
582
  let date: moment.Moment | undefined = this.state.value;
573
583
 
584
+ const calendarMobile = <CalendarMobile
585
+ isDatePicker={true}
586
+ timeFormat={timeFormat}
587
+ inputFormat={inputFormat}
588
+ startDate={date}
589
+ defaultDate={date}
590
+ minDate={minDate}
591
+ maxDate={maxDate}
592
+ dateFormat={dateFormat}
593
+ embed={embed}
594
+ viewMode={viewMode}
595
+ close={this.close}
596
+ confirm={this.handleChange}
597
+ footerExtra={this.renderShortCuts(shortcuts)}
598
+ showViewMode={viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months'}
599
+ timeConstraints={timeConstraints}
600
+ />;
601
+ const CalendarMobileTitle = <div className={`${ns}CalendarMobile-title`}>{__('Calendar.datepicker')}</div>;
602
+ const useCalendarMobile = useMobileUI && isMobile() && ['days', 'months', 'quarters'].indexOf(viewMode) > -1;
574
603
 
575
604
  if (embed) {
576
605
  let schedulesData: DateProps['schedules'] = undefined;
@@ -617,10 +646,13 @@ export class DatePicker extends React.Component<DateProps, DatePickerState> {
617
646
  onClose={this.close}
618
647
  locale={locale}
619
648
  minDate={minDate}
649
+ maxDate={maxDate}
620
650
  // utc={utc}
621
651
  schedules={schedulesData}
622
652
  largeMode={largeMode}
623
653
  onScheduleClick={onScheduleClick}
654
+ embed={embed}
655
+ useMobileUI={useMobileUI}
624
656
  />
625
657
  </div>
626
658
  );
@@ -637,7 +669,8 @@ export class DatePicker extends React.Component<DateProps, DatePickerState> {
637
669
  {
638
670
  'is-disabled': disabled,
639
671
  'is-focused': this.state.isFocused,
640
- [`DatePicker--border${ucFirst(borderMode)}`]: borderMode
672
+ [`DatePicker--border${ucFirst(borderMode)}`]: borderMode,
673
+ 'is-mobile': useMobileUI && isMobile()
641
674
  },
642
675
  className
643
676
  )}
@@ -695,39 +728,52 @@ export class DatePicker extends React.Component<DateProps, DatePickerState> {
695
728
  onClose={this.close}
696
729
  locale={locale}
697
730
  minDate={minDate}
731
+ maxDate={maxDate}
732
+ useMobileUI={useMobileUI}
698
733
  // utc={utc}
699
734
  />
700
735
  </PopOver>
701
736
  </Overlay>
702
737
  ) : null}
703
- {
704
- useMobileUI && isMobile() ? (
705
- <PopUp
706
- className={cx(`${ns}DatePicker-popup`)}
738
+ {useMobileUI && isMobile() ? (
739
+ mobileCalendarMode === 'calendar' && useCalendarMobile
740
+ ? <PopUp
707
741
  isShow={isOpened}
708
- onHide={this.handleClick}
742
+ className={cx(`${ns}CalendarMobile-pop`)}
743
+ onHide={this.close}
744
+ header={CalendarMobileTitle}
709
745
  >
710
- {this.renderShortCuts(shortcuts)}
711
-
712
- <Calendar
713
- value={date}
714
- onChange={this.handleChange}
715
- requiredConfirm={!!(dateFormat && timeFormat)}
716
- dateFormat={dateFormat}
717
- inputFormat={inputFormat}
718
- timeFormat={timeFormat}
719
- isValidDate={this.checkIsValidDate}
720
- viewMode={viewMode}
721
- timeConstraints={timeConstraints}
722
- input={false}
723
- onClose={this.close}
724
- locale={locale}
725
- minDate={minDate}
726
- // utc={utc}
727
- />
746
+ {calendarMobile}
728
747
  </PopUp>
729
- ) : null
730
- }
748
+ : <PopUp
749
+ className={cx(`${ns}DatePicker-popup DatePicker-mobile`)}
750
+ container={popOverContainer}
751
+ isShow={isOpened}
752
+ showClose={false}
753
+ onHide={this.handleClick}
754
+ >
755
+ {this.renderShortCuts(shortcuts)}
756
+
757
+ <Calendar
758
+ value={date}
759
+ onChange={this.handleChange}
760
+ requiredConfirm={!!(dateFormat && timeFormat)}
761
+ dateFormat={dateFormat}
762
+ inputFormat={inputFormat}
763
+ timeFormat={timeFormat}
764
+ isValidDate={this.checkIsValidDate}
765
+ viewMode={viewMode}
766
+ timeConstraints={timeConstraints}
767
+ input={false}
768
+ onClose={this.close}
769
+ locale={locale}
770
+ minDate={minDate}
771
+ maxDate={maxDate}
772
+ useMobileUI={useMobileUI}
773
+ // utc={utc}
774
+ />
775
+ </PopUp>
776
+ ) : null}
731
777
  </div>
732
778
  );
733
779
  }