amis 1.8.0-beta.2 → 1.8.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. package/lib/Root.js +2 -2
  2. package/lib/Root.js.map +1 -1
  3. package/lib/RootRenderer.js +1 -1
  4. package/lib/RootRenderer.js.map +1 -1
  5. package/lib/SchemaRenderer.js +4 -4
  6. package/lib/SchemaRenderer.js.map +2 -2
  7. package/lib/Scoped.js +1 -1
  8. package/lib/Scoped.js.map +1 -1
  9. package/lib/WithRootStore.js +1 -1
  10. package/lib/WithRootStore.js.map +1 -1
  11. package/lib/WithStore.js +1 -1
  12. package/lib/WithStore.js.map +1 -1
  13. package/lib/actions/AjaxAction.js +1 -1
  14. package/lib/actions/AjaxAction.js.map +1 -1
  15. package/lib/actions/Decorators.js +1 -1
  16. package/lib/actions/Decorators.js.map +1 -1
  17. package/lib/actions/EmailAction.js +1 -1
  18. package/lib/actions/EmailAction.js.map +1 -1
  19. package/lib/actions/LoopAction.js +2 -2
  20. package/lib/actions/LoopAction.js.map +1 -1
  21. package/lib/compat.js +1 -1
  22. package/lib/compat.js.map +1 -1
  23. package/lib/components/Alert2.js +2 -2
  24. package/lib/components/Alert2.js.map +1 -1
  25. package/lib/components/AnchorNav.js +1 -1
  26. package/lib/components/AnchorNav.js.map +1 -1
  27. package/lib/components/ArrayInput.js +2 -2
  28. package/lib/components/ArrayInput.js.map +1 -1
  29. package/lib/components/AsideNav.js +4 -4
  30. package/lib/components/AsideNav.js.map +1 -1
  31. package/lib/components/Avatar.js +3 -3
  32. package/lib/components/Avatar.js.map +1 -1
  33. package/lib/components/Badge.js +10 -10
  34. package/lib/components/Badge.js.map +1 -1
  35. package/lib/components/BaiduMapPicker.js +1 -1
  36. package/lib/components/BaiduMapPicker.js.map +1 -1
  37. package/lib/components/BarCode.js +1 -1
  38. package/lib/components/BarCode.js.map +2 -2
  39. package/lib/components/Breadcrumb.js +1 -1
  40. package/lib/components/Breadcrumb.js.map +1 -1
  41. package/lib/components/Button.js +3 -3
  42. package/lib/components/Button.js.map +1 -1
  43. package/lib/components/CalendarMobile.js +2 -2
  44. package/lib/components/CalendarMobile.js.map +1 -1
  45. package/lib/components/Card.js +1 -1
  46. package/lib/components/Card.js.map +1 -1
  47. package/lib/components/ChainedSelection.js +1 -1
  48. package/lib/components/ChainedSelection.js.map +1 -1
  49. package/lib/components/Checkbox.js +2 -2
  50. package/lib/components/Checkbox.js.map +1 -1
  51. package/lib/components/Collapse.js +3 -3
  52. package/lib/components/Collapse.js.map +1 -1
  53. package/lib/components/ColorPicker.js +5 -5
  54. package/lib/components/ColorPicker.js.map +1 -1
  55. package/lib/components/ContextMenu.js +3 -3
  56. package/lib/components/ContextMenu.js.map +1 -1
  57. package/lib/components/DatePicker.js +19 -8
  58. package/lib/components/DatePicker.js.map +2 -2
  59. package/lib/components/DateRangePicker.d.ts +92 -84
  60. package/lib/components/DateRangePicker.js +213 -20
  61. package/lib/components/DateRangePicker.js.map +2 -2
  62. package/lib/components/Drawer.js +10 -10
  63. package/lib/components/Drawer.js.map +1 -1
  64. package/lib/components/Editor.js +3 -3
  65. package/lib/components/Editor.js.map +1 -1
  66. package/lib/components/GridNav.js +11 -11
  67. package/lib/components/GridNav.js.map +1 -1
  68. package/lib/components/InputBox.js +1 -1
  69. package/lib/components/InputBox.js.map +1 -1
  70. package/lib/components/Layout.js +1 -1
  71. package/lib/components/Layout.js.map +1 -1
  72. package/lib/components/ListGroup.js +1 -1
  73. package/lib/components/ListGroup.js.map +1 -1
  74. package/lib/components/Modal.js +4 -4
  75. package/lib/components/Modal.js.map +1 -1
  76. package/lib/components/MonthRangePicker.d.ts +84 -84
  77. package/lib/components/MonthRangePicker.js +13 -13
  78. package/lib/components/MonthRangePicker.js.map +1 -1
  79. package/lib/components/NumberInput.js +2 -2
  80. package/lib/components/NumberInput.js.map +1 -1
  81. package/lib/components/Picker.js +4 -4
  82. package/lib/components/Picker.js.map +1 -1
  83. package/lib/components/PickerColumn.js +4 -4
  84. package/lib/components/PickerColumn.js.map +1 -1
  85. package/lib/components/PopOver.js +2 -2
  86. package/lib/components/PopOver.js.map +1 -1
  87. package/lib/components/PopUp.js +10 -10
  88. package/lib/components/PopUp.js.map +1 -1
  89. package/lib/components/Progress.js +5 -5
  90. package/lib/components/Progress.js.map +1 -1
  91. package/lib/components/Radios.d.ts +1 -1
  92. package/lib/components/Radios.js +5 -7
  93. package/lib/components/Radios.js.map +2 -2
  94. package/lib/components/Range.d.ts +2 -2
  95. package/lib/components/Range.js +25 -12
  96. package/lib/components/Range.js.map +2 -2
  97. package/lib/components/Rating.js +1 -1
  98. package/lib/components/Rating.js.map +1 -1
  99. package/lib/components/ResultBox.js +2 -2
  100. package/lib/components/ResultBox.js.map +1 -1
  101. package/lib/components/ResultList.js +5 -5
  102. package/lib/components/ResultList.js.map +1 -1
  103. package/lib/components/Select.js +7 -7
  104. package/lib/components/Select.js.map +1 -1
  105. package/lib/components/SparkLine.js +3 -3
  106. package/lib/components/SparkLine.js.map +1 -1
  107. package/lib/components/Spinner.js +2 -2
  108. package/lib/components/Spinner.js.map +1 -1
  109. package/lib/components/Steps.d.ts +6 -0
  110. package/lib/components/Steps.js +13 -9
  111. package/lib/components/Steps.js.map +2 -2
  112. package/lib/components/Switch.js +2 -2
  113. package/lib/components/Switch.js.map +1 -1
  114. package/lib/components/Tabs.js +5 -5
  115. package/lib/components/Tabs.js.map +1 -1
  116. package/lib/components/Timeline.js +1 -1
  117. package/lib/components/Timeline.js.map +1 -1
  118. package/lib/components/TimelineItem.js +3 -3
  119. package/lib/components/TimelineItem.js.map +1 -1
  120. package/lib/components/Toast.js +3 -3
  121. package/lib/components/Toast.js.map +1 -1
  122. package/lib/components/Tooltip.js +1 -1
  123. package/lib/components/Tooltip.js.map +1 -1
  124. package/lib/components/Tree.js +5 -5
  125. package/lib/components/Tree.js.map +1 -1
  126. package/lib/components/TreeSelection.js +2 -2
  127. package/lib/components/TreeSelection.js.map +1 -1
  128. package/lib/components/WithRemoteConfig.js +1 -1
  129. package/lib/components/WithRemoteConfig.js.map +1 -1
  130. package/lib/components/WithStore.js +1 -1
  131. package/lib/components/WithStore.js.map +1 -1
  132. package/lib/components/calendar/DaysView.js +1 -1
  133. package/lib/components/calendar/DaysView.js.map +1 -1
  134. package/lib/components/calendar/QuartersView.js +1 -1
  135. package/lib/components/calendar/QuartersView.js.map +1 -1
  136. package/lib/components/calendar/TimeView.js +1 -1
  137. package/lib/components/calendar/TimeView.js.map +1 -1
  138. package/lib/components/calendar/YearsView.js +3 -3
  139. package/lib/components/calendar/YearsView.js.map +2 -2
  140. package/lib/components/condition-builder/Group.js +2 -2
  141. package/lib/components/condition-builder/Group.js.map +1 -1
  142. package/lib/components/condition-builder/GroupOrItem.js +1 -1
  143. package/lib/components/condition-builder/GroupOrItem.js.map +1 -1
  144. package/lib/components/formula/Editor.js +3 -3
  145. package/lib/components/formula/Editor.js.map +1 -1
  146. package/lib/components/formula/VariableList.js +5 -5
  147. package/lib/components/formula/VariableList.js.map +1 -1
  148. package/lib/components/formula/plugin.js +1 -1
  149. package/lib/components/formula/plugin.js.map +1 -1
  150. package/lib/components/icons.js +1 -1
  151. package/lib/components/icons.js.map +1 -1
  152. package/lib/components/virtual-list/SizeAndPositionManager.js +4 -4
  153. package/lib/components/virtual-list/SizeAndPositionManager.js.map +1 -1
  154. package/lib/env.js +1 -1
  155. package/lib/env.js.map +1 -1
  156. package/lib/factory.d.ts +4 -0
  157. package/lib/factory.js +9 -3
  158. package/lib/factory.js.map +2 -2
  159. package/lib/index.js +1 -1
  160. package/lib/locale/de-DE.js +13 -0
  161. package/lib/locale/de-DE.js.map +2 -2
  162. package/lib/locale/en-US.js +13 -0
  163. package/lib/locale/en-US.js.map +2 -2
  164. package/lib/locale/zh-CN.js +13 -0
  165. package/lib/locale/zh-CN.js.map +2 -2
  166. package/lib/locale.js +1 -1
  167. package/lib/locale.js.map +1 -1
  168. package/lib/renderers/AnchorNav.js +1 -1
  169. package/lib/renderers/AnchorNav.js.map +1 -1
  170. package/lib/renderers/App.js +2 -2
  171. package/lib/renderers/App.js.map +1 -1
  172. package/lib/renderers/Audio.js +2 -2
  173. package/lib/renderers/Audio.js.map +1 -1
  174. package/lib/renderers/CRUD.js +8 -8
  175. package/lib/renderers/CRUD.js.map +1 -1
  176. package/lib/renderers/Card.js +6 -6
  177. package/lib/renderers/Card.js.map +1 -1
  178. package/lib/renderers/Cards.js +10 -10
  179. package/lib/renderers/Cards.js.map +1 -1
  180. package/lib/renderers/Carousel.d.ts +1 -0
  181. package/lib/renderers/Carousel.js +15 -3
  182. package/lib/renderers/Carousel.js.map +2 -2
  183. package/lib/renderers/Chart.js +2 -2
  184. package/lib/renderers/Chart.js.map +1 -1
  185. package/lib/renderers/Dialog.js +5 -5
  186. package/lib/renderers/Dialog.js.map +1 -1
  187. package/lib/renderers/Divider.js +1 -1
  188. package/lib/renderers/Divider.js.map +1 -1
  189. package/lib/renderers/Drawer.js +6 -6
  190. package/lib/renderers/Drawer.js.map +1 -1
  191. package/lib/renderers/DropDownButton.js +5 -5
  192. package/lib/renderers/DropDownButton.js.map +1 -1
  193. package/lib/renderers/Each.js +1 -1
  194. package/lib/renderers/Each.js.map +1 -1
  195. package/lib/renderers/Flex.js +2 -2
  196. package/lib/renderers/Flex.js.map +1 -1
  197. package/lib/renderers/Form/ButtonGroupSelect.js +4 -4
  198. package/lib/renderers/Form/ButtonGroupSelect.js.map +1 -1
  199. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  200. package/lib/renderers/Form/ButtonToolbar.js.map +1 -1
  201. package/lib/renderers/Form/ChainedSelect.js +2 -2
  202. package/lib/renderers/Form/ChainedSelect.js.map +1 -1
  203. package/lib/renderers/Form/ChartRadios.js +1 -1
  204. package/lib/renderers/Form/ChartRadios.js.map +1 -1
  205. package/lib/renderers/Form/Checkbox.js +1 -1
  206. package/lib/renderers/Form/Checkbox.js.map +1 -1
  207. package/lib/renderers/Form/Checkboxes.d.ts +2 -2
  208. package/lib/renderers/Form/Checkboxes.js +2 -6
  209. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  210. package/lib/renderers/Form/Combo.js +7 -7
  211. package/lib/renderers/Form/Combo.js.map +1 -1
  212. package/lib/renderers/Form/DiffEditor.js +2 -2
  213. package/lib/renderers/Form/DiffEditor.js.map +1 -1
  214. package/lib/renderers/Form/Editor.js +4 -4
  215. package/lib/renderers/Form/Editor.js.map +1 -1
  216. package/lib/renderers/Form/FieldSet.js +1 -1
  217. package/lib/renderers/Form/FieldSet.js.map +1 -1
  218. package/lib/renderers/Form/Group.js +4 -4
  219. package/lib/renderers/Form/Group.js.map +1 -1
  220. package/lib/renderers/Form/IconPicker.js +2 -2
  221. package/lib/renderers/Form/IconPicker.js.map +1 -1
  222. package/lib/renderers/Form/InputCity.d.ts +3 -0
  223. package/lib/renderers/Form/InputCity.js +44 -2
  224. package/lib/renderers/Form/InputCity.js.map +2 -2
  225. package/lib/renderers/Form/InputColor.js +1 -1
  226. package/lib/renderers/Form/InputColor.js.map +1 -1
  227. package/lib/renderers/Form/InputDateRange.d.ts +5 -0
  228. package/lib/renderers/Form/InputDateRange.js +1 -1
  229. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  230. package/lib/renderers/Form/InputFile.js +11 -8
  231. package/lib/renderers/Form/InputFile.js.map +2 -2
  232. package/lib/renderers/Form/InputGroup.js +1 -1
  233. package/lib/renderers/Form/InputGroup.js.map +1 -1
  234. package/lib/renderers/Form/InputImage.js +8 -5
  235. package/lib/renderers/Form/InputImage.js.map +2 -2
  236. package/lib/renderers/Form/InputMonthRange.js +1 -1
  237. package/lib/renderers/Form/InputMonthRange.js.map +1 -1
  238. package/lib/renderers/Form/InputNumber.js +2 -2
  239. package/lib/renderers/Form/InputNumber.js.map +1 -1
  240. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  241. package/lib/renderers/Form/InputQuarterRange.js.map +1 -1
  242. package/lib/renderers/Form/InputRange.js +15 -16
  243. package/lib/renderers/Form/InputRange.js.map +2 -2
  244. package/lib/renderers/Form/InputRepeat.js +2 -2
  245. package/lib/renderers/Form/InputRepeat.js.map +1 -1
  246. package/lib/renderers/Form/InputRichText.js +2 -2
  247. package/lib/renderers/Form/InputRichText.js.map +1 -1
  248. package/lib/renderers/Form/InputSubForm.js +5 -5
  249. package/lib/renderers/Form/InputSubForm.js.map +1 -1
  250. package/lib/renderers/Form/InputTable.js +2 -2
  251. package/lib/renderers/Form/InputTable.js.map +1 -1
  252. package/lib/renderers/Form/InputTag.js +1 -1
  253. package/lib/renderers/Form/InputTag.js.map +1 -1
  254. package/lib/renderers/Form/InputText.js +9 -9
  255. package/lib/renderers/Form/InputText.js.map +1 -1
  256. package/lib/renderers/Form/InputTree.js +1 -1
  257. package/lib/renderers/Form/InputTree.js.map +1 -1
  258. package/lib/renderers/Form/InputYearRange.js +1 -1
  259. package/lib/renderers/Form/InputYearRange.js.map +1 -1
  260. package/lib/renderers/Form/Item.js +7 -7
  261. package/lib/renderers/Form/Item.js.map +1 -1
  262. package/lib/renderers/Form/ListSelect.js +2 -2
  263. package/lib/renderers/Form/ListSelect.js.map +1 -1
  264. package/lib/renderers/Form/NestedSelect.js +1 -1
  265. package/lib/renderers/Form/NestedSelect.js.map +1 -1
  266. package/lib/renderers/Form/Options.js +2 -2
  267. package/lib/renderers/Form/Options.js.map +1 -1
  268. package/lib/renderers/Form/Picker.js +3 -3
  269. package/lib/renderers/Form/Picker.js.map +1 -1
  270. package/lib/renderers/Form/Radios.js +1 -1
  271. package/lib/renderers/Form/Radios.js.map +1 -1
  272. package/lib/renderers/Form/Select.js +2 -2
  273. package/lib/renderers/Form/Select.js.map +1 -1
  274. package/lib/renderers/Form/Static.js +1 -1
  275. package/lib/renderers/Form/Static.js.map +1 -1
  276. package/lib/renderers/Form/TabsTransfer.js +1 -1
  277. package/lib/renderers/Form/TabsTransfer.js.map +1 -1
  278. package/lib/renderers/Form/TabsTransferPicker.js +1 -1
  279. package/lib/renderers/Form/TabsTransferPicker.js.map +1 -1
  280. package/lib/renderers/Form/Textarea.js +2 -2
  281. package/lib/renderers/Form/Textarea.js.map +1 -1
  282. package/lib/renderers/Form/Transfer.js +3 -3
  283. package/lib/renderers/Form/Transfer.js.map +1 -1
  284. package/lib/renderers/Form/TreeSelect.js +4 -4
  285. package/lib/renderers/Form/TreeSelect.js.map +1 -1
  286. package/lib/renderers/Form/index.js +6 -6
  287. package/lib/renderers/Form/index.js.map +1 -1
  288. package/lib/renderers/Grid.js +7 -7
  289. package/lib/renderers/Grid.js.map +1 -1
  290. package/lib/renderers/Grid2D.js +1 -1
  291. package/lib/renderers/Grid2D.js.map +1 -1
  292. package/lib/renderers/HBox.js +5 -5
  293. package/lib/renderers/HBox.js.map +1 -1
  294. package/lib/renderers/IFrame.js +1 -1
  295. package/lib/renderers/IFrame.js.map +1 -1
  296. package/lib/renderers/Icon.js +2 -2
  297. package/lib/renderers/Icon.js.map +1 -1
  298. package/lib/renderers/Image.js +3 -3
  299. package/lib/renderers/Image.js.map +1 -1
  300. package/lib/renderers/List.js +14 -14
  301. package/lib/renderers/List.js.map +1 -1
  302. package/lib/renderers/Mapping.js +1 -1
  303. package/lib/renderers/Mapping.js.map +1 -1
  304. package/lib/renderers/Nav.js +2 -2
  305. package/lib/renderers/Nav.js.map +2 -2
  306. package/lib/renderers/Operation.js +1 -1
  307. package/lib/renderers/Operation.js.map +1 -1
  308. package/lib/renderers/Page.js +6 -6
  309. package/lib/renderers/Page.js.map +1 -1
  310. package/lib/renderers/Panel.js +2 -2
  311. package/lib/renderers/Panel.js.map +1 -1
  312. package/lib/renderers/PopOver.js +2 -2
  313. package/lib/renderers/PopOver.js.map +1 -1
  314. package/lib/renderers/Portlet.js +10 -10
  315. package/lib/renderers/Portlet.js.map +1 -1
  316. package/lib/renderers/Property.js +3 -3
  317. package/lib/renderers/Property.js.map +1 -1
  318. package/lib/renderers/QRCode.js +1 -1
  319. package/lib/renderers/QRCode.js.map +1 -1
  320. package/lib/renderers/QuickEdit.js +11 -11
  321. package/lib/renderers/QuickEdit.js.map +1 -1
  322. package/lib/renderers/Service.js +2 -2
  323. package/lib/renderers/Service.js.map +1 -1
  324. package/lib/renderers/Status.js +1 -1
  325. package/lib/renderers/Status.js.map +1 -1
  326. package/lib/renderers/Steps.d.ts +8 -0
  327. package/lib/renderers/Steps.js +2 -2
  328. package/lib/renderers/Steps.js.map +2 -2
  329. package/lib/renderers/Table/ColumnToggler.js +5 -5
  330. package/lib/renderers/Table/ColumnToggler.js.map +1 -1
  331. package/lib/renderers/Table/HeadCellFilterDropdown.js +2 -2
  332. package/lib/renderers/Table/HeadCellFilterDropdown.js.map +1 -1
  333. package/lib/renderers/Table/HeadCellSearchDropdown.js +2 -2
  334. package/lib/renderers/Table/HeadCellSearchDropdown.js.map +1 -1
  335. package/lib/renderers/Table/ItemActionsWrapper.js +2 -2
  336. package/lib/renderers/Table/ItemActionsWrapper.js.map +1 -1
  337. package/lib/renderers/Table/TableBody.js +3 -3
  338. package/lib/renderers/Table/TableBody.js.map +1 -1
  339. package/lib/renderers/Table/TableContent.js +1 -1
  340. package/lib/renderers/Table/TableContent.js.map +1 -1
  341. package/lib/renderers/Table/TableRow.js +4 -4
  342. package/lib/renderers/Table/TableRow.js.map +1 -1
  343. package/lib/renderers/Table/index.js +35 -31
  344. package/lib/renderers/Table/index.js.map +2 -2
  345. package/lib/renderers/TableView.js +4 -4
  346. package/lib/renderers/TableView.js.map +1 -1
  347. package/lib/renderers/Tabs.js +4 -4
  348. package/lib/renderers/Tabs.js.map +1 -1
  349. package/lib/renderers/Tasks.js +1 -1
  350. package/lib/renderers/Tasks.js.map +1 -1
  351. package/lib/renderers/Tpl.js +1 -1
  352. package/lib/renderers/Tpl.js.map +1 -1
  353. package/lib/renderers/VBox.js +2 -2
  354. package/lib/renderers/VBox.js.map +1 -1
  355. package/lib/renderers/Video.js +4 -4
  356. package/lib/renderers/Video.js.map +1 -1
  357. package/lib/renderers/Wizard.js +7 -7
  358. package/lib/renderers/Wizard.js.map +1 -1
  359. package/lib/renderers/Wrapper.js +1 -1
  360. package/lib/renderers/Wrapper.js.map +1 -1
  361. package/lib/store/app.js +3 -3
  362. package/lib/store/app.js.map +1 -1
  363. package/lib/store/crud.js +1 -1
  364. package/lib/store/crud.js.map +1 -1
  365. package/lib/store/form.js +2 -2
  366. package/lib/store/form.js.map +1 -1
  367. package/lib/store/formItem.js +3 -3
  368. package/lib/store/formItem.js.map +1 -1
  369. package/lib/store/node.js +2 -2
  370. package/lib/store/node.js.map +1 -1
  371. package/lib/store/table.js +8 -8
  372. package/lib/store/table.js.map +2 -2
  373. package/lib/theme.js +1 -1
  374. package/lib/theme.js.map +1 -1
  375. package/lib/themes/ang-ie11.css +163 -18
  376. package/lib/themes/ang.css +162 -17
  377. package/lib/themes/ang.css.map +1 -1
  378. package/lib/themes/antd-ie11.css +163 -18
  379. package/lib/themes/antd.css +162 -17
  380. package/lib/themes/antd.css.map +1 -1
  381. package/lib/themes/cxd-ie11.css +163 -18
  382. package/lib/themes/cxd.css +162 -17
  383. package/lib/themes/cxd.css.map +1 -1
  384. package/lib/themes/dark-ie11.css +163 -18
  385. package/lib/themes/dark.css +162 -17
  386. package/lib/themes/dark.css.map +1 -1
  387. package/lib/themes/default-ie11.css +163 -18
  388. package/lib/themes/default.css +162 -17
  389. package/lib/themes/default.css.map +1 -1
  390. package/lib/utils/api.js +5 -5
  391. package/lib/utils/api.js.map +1 -1
  392. package/lib/utils/autobind.js +2 -2
  393. package/lib/utils/autobind.js.map +1 -1
  394. package/lib/utils/columnsSplit.d.ts +1 -0
  395. package/lib/utils/columnsSplit.js +40 -0
  396. package/lib/utils/columnsSplit.js.map +13 -0
  397. package/lib/utils/debug.d.ts +1 -1
  398. package/lib/utils/debug.js +29 -35
  399. package/lib/utils/debug.js.map +2 -2
  400. package/lib/utils/dom.js +1 -1
  401. package/lib/utils/dom.js.map +1 -1
  402. package/lib/utils/filter-schema.js +1 -1
  403. package/lib/utils/filter-schema.js.map +1 -1
  404. package/lib/utils/helper.js +6 -6
  405. package/lib/utils/helper.js.map +1 -1
  406. package/lib/utils/resize-sensor.js +1 -1
  407. package/lib/utils/resize-sensor.js.map +1 -1
  408. package/lib/utils/style.js +1 -1
  409. package/lib/utils/style.js.map +1 -1
  410. package/lib/utils/tpl-builtin.js +1 -1
  411. package/lib/utils/tpl-builtin.js.map +1 -1
  412. package/lib/utils/tpl-lodash.js +1 -1
  413. package/lib/utils/tpl-lodash.js.map +1 -1
  414. package/lib/utils/tpl.js +2 -2
  415. package/lib/utils/tpl.js.map +1 -1
  416. package/lib/utils/validations.js +2 -2
  417. package/lib/utils/validations.js.map +1 -1
  418. package/package.json +1 -1
  419. package/schema.json +521 -232
  420. package/scss/_properties.scss +2 -2
  421. package/scss/components/_barcode.scss +1 -1
  422. package/scss/components/_carousel.scss +1 -0
  423. package/scss/components/_debug.scss +3 -3
  424. package/scss/components/_steps.scss +199 -8
  425. package/scss/components/form/_date.scss +2 -1
  426. package/scss/components/form/_editor.scss +2 -1
  427. package/sdk/ang-ie11.css +197 -19
  428. package/sdk/ang.css +196 -18
  429. package/sdk/antd-ie11.css +197 -19
  430. package/sdk/antd.css +196 -18
  431. package/sdk/barcode.js +51 -51
  432. package/sdk/charts.js +17 -17
  433. package/sdk/codemirror.js +7 -7
  434. package/sdk/color-picker.js +65 -65
  435. package/sdk/cropperjs.js +3 -3
  436. package/sdk/cxd-ie11.css +197 -19
  437. package/sdk/cxd.css +196 -18
  438. package/sdk/dark-ie11.css +197 -19
  439. package/sdk/dark.css +196 -18
  440. package/sdk/exceljs.js +1 -1
  441. package/sdk/locale/de-DE.js +13 -0
  442. package/sdk/markdown.js +69 -69
  443. package/sdk/papaparse.js +3 -3
  444. package/sdk/renderers/Form/CityDB.js +1 -1
  445. package/sdk/rest.js +17 -17
  446. package/sdk/rich-text.js +62 -62
  447. package/sdk/sdk-ie11.css +197 -19
  448. package/sdk/sdk.css +196 -18
  449. package/sdk/sdk.js +1404 -1306
  450. package/sdk/thirds/hls.js/hls.js +19 -19
  451. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  452. package/sdk/tinymce.js +57 -57
  453. package/src/SchemaRenderer.tsx +2 -2
  454. package/src/components/BarCode.tsx +2 -2
  455. package/src/components/DatePicker.tsx +21 -4
  456. package/src/components/DateRangePicker.tsx +198 -4
  457. package/src/components/Radios.tsx +6 -17
  458. package/src/components/Range.tsx +26 -12
  459. package/src/components/Steps.tsx +28 -27
  460. package/src/components/calendar/YearsView.tsx +3 -4
  461. package/src/factory.tsx +13 -0
  462. package/src/locale/de-DE.ts +13 -0
  463. package/src/locale/en-US.ts +13 -0
  464. package/src/locale/zh-CN.ts +13 -0
  465. package/src/renderers/Carousel.tsx +8 -0
  466. package/src/renderers/Form/Checkboxes.tsx +5 -18
  467. package/src/renderers/Form/InputCity.tsx +33 -4
  468. package/src/renderers/Form/InputDateRange.tsx +8 -1
  469. package/src/renderers/Form/InputFile.tsx +7 -3
  470. package/src/renderers/Form/InputImage.tsx +7 -3
  471. package/src/renderers/Form/InputRange.tsx +18 -16
  472. package/src/renderers/Nav.tsx +1 -1
  473. package/src/renderers/Steps.tsx +14 -0
  474. package/src/renderers/Table/index.tsx +11 -2
  475. package/src/store/table.ts +2 -2
  476. package/src/utils/columnsSplit.tsx +57 -0
  477. package/src/utils/debug.tsx +17 -24
@@ -5,7 +5,7 @@
5
5
  * @author fex
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.DateRangePicker = exports.availableRanges = void 0;
8
+ exports.DateRangePicker = exports.advancedRanges = exports.availableRanges = void 0;
9
9
  var tslib_1 = require("tslib");
10
10
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
11
11
  var moment_1 = (0, tslib_1.__importDefault)(require("moment"));
@@ -39,8 +39,18 @@ exports.availableRanges = {
39
39
  return now.add(-1, 'days').endOf('day');
40
40
  }
41
41
  },
42
- '1dayago': {
43
- label: 'DateRange.1dayago',
42
+ 'tomorrow': {
43
+ label: 'Date.tomorrow',
44
+ startDate: function (now) {
45
+ return now.add(1, 'days').startOf('day');
46
+ },
47
+ endDate: function (now) {
48
+ return now.add(1, 'days').endOf('day');
49
+ }
50
+ },
51
+ // 兼容一下错误的用法
52
+ '1daysago': {
53
+ label: 'DateRange.1daysago',
44
54
  startDate: function (now) {
45
55
  return now.add(-1, 'days');
46
56
  },
@@ -148,6 +158,176 @@ exports.availableRanges = {
148
158
  }
149
159
  }
150
160
  };
161
+ exports.advancedRanges = [
162
+ {
163
+ regexp: /^(\d+)hoursago$/,
164
+ resolve: function (__, _, hours) {
165
+ return {
166
+ label: __('DateRange.hoursago', { hours: hours }),
167
+ startDate: function (now) {
168
+ return now.add(-hours, 'hours').startOf('hour');
169
+ },
170
+ endDate: function (now) {
171
+ return now.add(-1, 'hours').endOf('hours');
172
+ }
173
+ };
174
+ }
175
+ },
176
+ {
177
+ regexp: /^(\d+)hourslater$/,
178
+ resolve: function (__, _, hours) {
179
+ return {
180
+ label: __('DateRange.hourslater', { hours: hours }),
181
+ startDate: function (now) {
182
+ return now.startOf('hour');
183
+ },
184
+ endDate: function (now) {
185
+ return now.add(hours, 'hours').endOf('hour');
186
+ }
187
+ };
188
+ }
189
+ },
190
+ {
191
+ regexp: /^(\d+)daysago$/,
192
+ resolve: function (__, _, days) {
193
+ return {
194
+ label: __('DateRange.daysago', { days: days }),
195
+ startDate: function (now) {
196
+ return now.add(-days, 'days').startOf('day');
197
+ },
198
+ endDate: function (now) {
199
+ return now.add(-1, 'days').endOf('day');
200
+ }
201
+ };
202
+ }
203
+ },
204
+ {
205
+ regexp: /^(\d+)dayslater$/,
206
+ resolve: function (__, _, days) {
207
+ return {
208
+ label: __('DateRange.dayslater', { days: days }),
209
+ startDate: function (now) {
210
+ return now.startOf('day');
211
+ },
212
+ endDate: function (now) {
213
+ return now.add(days, 'days').endOf('day');
214
+ }
215
+ };
216
+ }
217
+ },
218
+ {
219
+ regexp: /^(\d+)weeksago$/,
220
+ resolve: function (__, _, weeks) {
221
+ return {
222
+ label: __('DateRange.weeksago', { weeks: weeks }),
223
+ startDate: function (now) {
224
+ return now.startOf('week').add(-weeks, 'weeks');
225
+ },
226
+ endDate: function (now) {
227
+ return now.startOf('week').add(-1, 'days').endOf('day');
228
+ }
229
+ };
230
+ }
231
+ },
232
+ {
233
+ regexp: /^(\d+)weekslater$/,
234
+ resolve: function (__, _, weeks) {
235
+ return {
236
+ label: __('DateRange.weekslater', { weeks: weeks }),
237
+ startDate: function (now) {
238
+ return now.startOf('week');
239
+ },
240
+ endDate: function (now) {
241
+ return now.startOf('week').add(weeks, 'weeks').endOf('day');
242
+ }
243
+ };
244
+ }
245
+ },
246
+ {
247
+ regexp: /^(\d+)monthsago$/,
248
+ resolve: function (__, _, months) {
249
+ return {
250
+ label: __('DateRange.monthsago', { months: months }),
251
+ startDate: function (now) {
252
+ return now.startOf('months').add(-months, 'months');
253
+ },
254
+ endDate: function (now) {
255
+ return now.startOf('month').add(-1, 'days').endOf('day');
256
+ }
257
+ };
258
+ }
259
+ },
260
+ {
261
+ regexp: /^(\d+)monthslater$/,
262
+ resolve: function (__, _, months) {
263
+ return {
264
+ label: __('DateRange.monthslater', { months: months }),
265
+ startDate: function (now) {
266
+ return now.startOf('month');
267
+ },
268
+ endDate: function (now) {
269
+ return now.startOf('month').add(months, 'months').endOf('day');
270
+ }
271
+ };
272
+ }
273
+ },
274
+ {
275
+ regexp: /^(\d+)quartersago$/,
276
+ resolve: function (__, _, quarters) {
277
+ return {
278
+ label: __('DateRange.quartersago', { quarters: quarters }),
279
+ startDate: function (now) {
280
+ return now.startOf('quarters').add(-quarters, 'quarters');
281
+ },
282
+ endDate: function (now) {
283
+ return now.startOf('quarter').add(-1, 'days').endOf('day');
284
+ }
285
+ };
286
+ }
287
+ },
288
+ {
289
+ regexp: /^(\d+)quarterslater$/,
290
+ resolve: function (__, _, quarters) {
291
+ return {
292
+ label: __('DateRange.quarterslater', { quarters: quarters }),
293
+ startDate: function (now) {
294
+ return now.startOf('quarter');
295
+ },
296
+ endDate: function (now) {
297
+ return now.startOf('quarter').add(quarters, 'quarters').endOf('day');
298
+ }
299
+ };
300
+ }
301
+ },
302
+ {
303
+ regexp: /^(\d+)yearsago$/,
304
+ resolve: function (__, _, years) {
305
+ return {
306
+ label: __('DateRange.yearsago', { years: years }),
307
+ startDate: function (now) {
308
+ return now.startOf('years').add(-years, 'years');
309
+ },
310
+ endDate: function (now) {
311
+ return now.startOf('year').add(-1, 'days').endOf('day');
312
+ }
313
+ };
314
+ }
315
+ },
316
+ {
317
+ regexp: /^(\d+)yearslater$/,
318
+ resolve: function (__, _, years) {
319
+ return {
320
+ label: __('DateRange.yearslater', { years: years }),
321
+ startDate: function (now) {
322
+ return now.startOf('year');
323
+ },
324
+ endDate: function (now) {
325
+ return now.startOf('year').add(years, 'years').endOf('day');
326
+ }
327
+ };
328
+ }
329
+ }
330
+ ];
151
331
  var DateRangePicker = /** @class */ (function (_super) {
152
332
  (0, tslib_1.__extends)(DateRangePicker, _super);
153
333
  function DateRangePicker(props) {
@@ -368,20 +548,33 @@ var DateRangePicker = /** @class */ (function (_super) {
368
548
  rangeArr = ranges;
369
549
  }
370
550
  var __ = this.props.translate;
371
- return (react_1.default.createElement("ul", { className: ns + "DateRangePicker-rangers" }, rangeArr.map(function (item) {
551
+ return (react_1.default.createElement("ul", { className: "".concat(ns, "DateRangePicker-rangers") }, rangeArr.map(function (item) {
372
552
  if (!item) {
373
553
  return null;
374
554
  }
375
555
  var range = {};
376
556
  if (typeof item === 'string') {
377
- range = exports.availableRanges[item];
378
- range.key = item;
557
+ if (exports.availableRanges[item]) {
558
+ range = exports.availableRanges[item];
559
+ range.key = item;
560
+ }
561
+ else {
562
+ // 通过正则尝试匹配
563
+ for (var i = 0, len = exports.advancedRanges.length; i < len; i++) {
564
+ var value = exports.advancedRanges[i];
565
+ var m = value.regexp.exec(item);
566
+ if (m) {
567
+ range = value.resolve.apply(item, (0, tslib_1.__spreadArray)([__], m, true));
568
+ range.key = item;
569
+ }
570
+ }
571
+ }
379
572
  }
380
573
  else if (item.startDate &&
381
574
  item.endDate) {
382
575
  range = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, item), { startDate: function () { return item.startDate; }, endDate: function () { return item.endDate; } });
383
576
  }
384
- return (react_1.default.createElement("li", { className: ns + "DateRangePicker-ranger", onClick: function () { return _this.selectRannge(range); }, key: range.key || range.label },
577
+ return (react_1.default.createElement("li", { className: "".concat(ns, "DateRangePicker-ranger"), onClick: function () { return _this.selectRannge(range); }, key: range.key || range.label },
385
578
  react_1.default.createElement("a", null, __(range.label))));
386
579
  })));
387
580
  };
@@ -475,11 +668,11 @@ var DateRangePicker = /** @class */ (function (_super) {
475
668
  var _a = this.props, ns = _a.classPrefix, cx = _a.classnames, dateFormat = _a.dateFormat, timeFormat = _a.timeFormat, inputFormat = _a.inputFormat, ranges = _a.ranges, locale = _a.locale, embed = _a.embed, _b = _a.viewMode, viewMode = _b === void 0 ? 'days' : _b;
476
669
  var __ = this.props.translate;
477
670
  var _c = this.state, startDate = _c.startDate, endDate = _c.endDate;
478
- return (react_1.default.createElement("div", { className: ns + "DateRangePicker-wrap" },
671
+ return (react_1.default.createElement("div", { className: "".concat(ns, "DateRangePicker-wrap") },
479
672
  this.renderRanges(ranges),
480
- react_1.default.createElement(Calendar_1.default, { className: ns + "DateRangePicker-start", value: startDate, onChange: this.handleSelectChange, requiredConfirm: false, dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, isValidDate: this.checkStartIsValidDate, viewMode: viewMode, input: false, onClose: this.close, renderDay: this.renderDay, renderQuarter: this.renderQuarter, locale: locale }),
481
- react_1.default.createElement(Calendar_1.default, { className: ns + "DateRangePicker-end", value: endDate, onChange: this.handleSelectChange, requiredConfirm: false, dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, viewDate: this.nextMonth, isEndDate: true, isValidDate: this.checkEndIsValidDate, viewMode: viewMode, input: false, onClose: this.close, renderDay: this.renderDay, renderQuarter: this.renderQuarter, locale: locale }),
482
- embed ? null : (react_1.default.createElement("div", { key: "button", className: ns + "DateRangePicker-actions" },
673
+ react_1.default.createElement(Calendar_1.default, { className: "".concat(ns, "DateRangePicker-start"), value: startDate, onChange: this.handleSelectChange, requiredConfirm: false, dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, isValidDate: this.checkStartIsValidDate, viewMode: viewMode, input: false, onClose: this.close, renderDay: this.renderDay, renderQuarter: this.renderQuarter, locale: locale }),
674
+ react_1.default.createElement(Calendar_1.default, { className: "".concat(ns, "DateRangePicker-end"), value: endDate, onChange: this.handleSelectChange, requiredConfirm: false, dateFormat: dateFormat, inputFormat: inputFormat, timeFormat: timeFormat, viewDate: this.nextMonth, isEndDate: true, isValidDate: this.checkEndIsValidDate, viewMode: viewMode, input: false, onClose: this.close, renderDay: this.renderDay, renderQuarter: this.renderQuarter, locale: locale }),
675
+ embed ? null : (react_1.default.createElement("div", { key: "button", className: "".concat(ns, "DateRangePicker-actions") },
483
676
  react_1.default.createElement("a", { className: cx('Button', 'Button--default'), onClick: this.close }, __('cancel')),
484
677
  react_1.default.createElement("a", { className: cx('Button', 'Button--primary', 'm-l-sm', {
485
678
  'is-disabled': !this.state.startDate || !this.state.endDate
@@ -506,25 +699,25 @@ var DateRangePicker = /** @class */ (function (_super) {
506
699
  var __ = this.props.translate;
507
700
  var calendarMobile = (react_1.default.createElement(CalendarMobile_1.default, { timeFormat: timeFormat, inputFormat: inputFormat, startDate: startDate, endDate: endDate, minDate: minDate, maxDate: maxDate, minDuration: minDuration, maxDuration: maxDuration, dateFormat: dateFormat, embed: embed, viewMode: viewMode, close: this.close, confirm: this.confirm, onChange: this.handleMobileChange, footerExtra: this.renderRanges(ranges), showViewMode: viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months' }));
508
701
  if (embed) {
509
- return (react_1.default.createElement("div", { className: (0, classnames_1.default)(ns + "DateRangeCalendar", {
702
+ return (react_1.default.createElement("div", { className: (0, classnames_1.default)("".concat(ns, "DateRangeCalendar"), {
510
703
  'is-disabled': disabled
511
704
  }, className) }, useCalendarMobile ? calendarMobile : this.renderCalendar()));
512
705
  }
513
- var CalendarMobileTitle = (react_1.default.createElement("div", { className: ns + "CalendarMobile-title" }, __('Calendar.datepicker')));
514
- return (react_1.default.createElement("div", { tabIndex: 0, onKeyPress: this.handleKeyPress, onFocus: this.handleFocus, onBlur: this.handleBlur, className: (0, classnames_1.default)(ns + "DateRangePicker", (_a = {
706
+ var CalendarMobileTitle = (react_1.default.createElement("div", { className: "".concat(ns, "CalendarMobile-title") }, __('Calendar.datepicker')));
707
+ return (react_1.default.createElement("div", { tabIndex: 0, onKeyPress: this.handleKeyPress, onFocus: this.handleFocus, onBlur: this.handleBlur, className: (0, classnames_1.default)("".concat(ns, "DateRangePicker"), (_a = {
515
708
  'is-disabled': disabled,
516
709
  'is-focused': isFocused
517
710
  },
518
- _a[ns + "DateRangePicker--border" + (0, helper_1.ucFirst)(borderMode)] = borderMode,
711
+ _a["".concat(ns, "DateRangePicker--border").concat((0, helper_1.ucFirst)(borderMode))] = borderMode,
519
712
  _a['is-mobile'] = useMobileUI && (0, helper_1.isMobile)(),
520
713
  _a), className), ref: this.dom, onClick: this.handleClick },
521
- arr.length ? (react_1.default.createElement("span", { className: ns + "DateRangePicker-value" }, arr.join(__('DateRange.valueConcat')))) : (react_1.default.createElement("span", { className: ns + "DateRangePicker-placeholder" }, __(placeholder))),
522
- clearable && !disabled && value ? (react_1.default.createElement("a", { className: ns + "DateRangePicker-clear", onClick: this.clearValue },
714
+ arr.length ? (react_1.default.createElement("span", { className: "".concat(ns, "DateRangePicker-value") }, arr.join(__('DateRange.valueConcat')))) : (react_1.default.createElement("span", { className: "".concat(ns, "DateRangePicker-placeholder") }, __(placeholder))),
715
+ clearable && !disabled && value ? (react_1.default.createElement("a", { className: "".concat(ns, "DateRangePicker-clear"), onClick: this.clearValue },
523
716
  react_1.default.createElement(icons_1.Icon, { icon: "input-clear", className: "icon" }))) : null,
524
- react_1.default.createElement("a", { className: ns + "DateRangePicker-toggler" },
717
+ react_1.default.createElement("a", { className: "".concat(ns, "DateRangePicker-toggler") },
525
718
  react_1.default.createElement(icons_1.Icon, { icon: "clock", className: "icon" })),
526
- isOpened ? (useMobileUI && (0, helper_1.isMobile)() ? (react_1.default.createElement(PopUp_1.default, { isShow: isOpened, container: popOverContainer, className: (0, classnames_1.default)(ns + "CalendarMobile-pop"), onHide: this.close, header: CalendarMobileTitle }, useCalendarMobile ? calendarMobile : this.renderCalendar())) : (react_1.default.createElement(Overlay_1.default, { target: function () { return _this.dom.current; }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, placement: overlayPlacement, show: true },
527
- react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: (0, classnames_1.default)(ns + "DateRangePicker-popover", popoverClassName), onHide: this.close, onClick: this.handlePopOverClick, overlay: true }, this.renderCalendar())))) : null));
719
+ isOpened ? (useMobileUI && (0, helper_1.isMobile)() ? (react_1.default.createElement(PopUp_1.default, { isShow: isOpened, container: popOverContainer, className: (0, classnames_1.default)("".concat(ns, "CalendarMobile-pop")), onHide: this.close, header: CalendarMobileTitle }, useCalendarMobile ? calendarMobile : this.renderCalendar())) : (react_1.default.createElement(Overlay_1.default, { target: function () { return _this.dom.current; }, onHide: this.close, container: popOverContainer || (function () { return (0, react_dom_1.findDOMNode)(_this); }), rootClose: false, placement: overlayPlacement, show: true },
720
+ react_1.default.createElement(PopOver_1.default, { classPrefix: ns, className: (0, classnames_1.default)("".concat(ns, "DateRangePicker-popover"), popoverClassName), onHide: this.close, onClick: this.handlePopOverClick, overlay: true }, this.renderCalendar())))) : null));
528
721
  };
529
722
  DateRangePicker.defaultProps = {
530
723
  placeholder: 'DateRange.placeholder',
@@ -6,8 +6,8 @@
6
6
  "/src/components/DateRangePicker.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": ";AAAA;;;;GAIG;;;;AAEH,6DAA0B;AAC1B,+DAA4B;AAC5B,uCAAsC;AACtC,uEAA4B;AAC5B,iCAA6B;AAC7B,mEAAgC;AAEhC,8EAA2C;AAC3C,mEAAgC;AAChC,+DAA4B;AAC5B,kCAA6D;AAE7D,0CAAwD;AACxD,oCAAkD;AAClD,iFAA8C;AA2CjC,QAAA,eAAe,GAA8B;IACxD,OAAO,EAAE;QACP,KAAK,EAAE,YAAY;QACnB,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC;QACb,CAAC;KACF;IAED,WAAW,EAAE;QACX,KAAK,EAAE,gBAAgB;QACvB,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;KACF;IAED,UAAU,EAAE;QACV,KAAK,EAAE,eAAe;QACtB,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;KACF;IAED,YAAY;IACZ,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC;QACb,CAAC;KACF;IAED,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;KACF;IAED,WAAW,EAAE;QACX,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;KACF;IAED,WAAW,EAAE;QACX,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;KACF;IAED,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;KACF;IAED,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;KACF;IAED,WAAW,EAAE;QACX,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;KACF;IAED,aAAa,EAAE;QACb,KAAK,EAAE,uBAAuB;QAC9B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC;KACF;IAED,WAAW,EAAE;QACX,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;KACF;IAED,aAAa,EAAE;QACb,KAAK,EAAE,uBAAuB;QAC9B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;KACF;IAED,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;KACF;IAED,UAAU,EAAE;QACV,KAAK,EAAE,oBAAoB;QAC3B,SAAS,EAAE,UAAC,GAAkB;YAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,EAAE,UAAC,GAAkB;YAC1B,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxD,CAAC;KACF;CACF,CAAC;AAEW,QAAA,cAAc,GAAG;IAC5B;QACE,MAAM,EAAE,iBAAiB;QACzB,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,KAAa;YACzC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,oBAAoB,EAAE,EAAC,KAAK,OAAA,EAAC,CAAC;gBACxC,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAClD,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7C,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,mBAAmB;QAC3B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,KAAa;YACzC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,sBAAsB,EAAE,EAAC,KAAK,OAAA,EAAC,CAAC;gBAC1C,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC/C,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,gBAAgB;QACxB,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,IAAY;YACxC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,mBAAmB,EAAE,EAAC,IAAI,MAAA,EAAC,CAAC;gBACtC,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC/C,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1C,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,kBAAkB;QAC1B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,IAAY;YACxC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,qBAAqB,EAAE,EAAC,IAAI,MAAA,EAAC,CAAC;gBACxC,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC5B,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC5C,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,iBAAiB;QACzB,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,KAAa;YACzC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,oBAAoB,EAAE,EAAC,KAAK,OAAA,EAAC,CAAC;gBACxC,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAClD,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1D,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,mBAAmB;QAC3B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,KAAa;YACzC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,sBAAsB,EAAE,EAAC,KAAK,OAAA,EAAC,CAAC;gBAC1C,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC9D,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,kBAAkB;QAC1B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,MAAc;YAC1C,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,qBAAqB,EAAE,EAAC,MAAM,QAAA,EAAC,CAAC;gBAC1C,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACtD,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3D,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,oBAAoB;QAC5B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,MAAc;YAC1C,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,uBAAuB,EAAE,EAAC,MAAM,QAAA,EAAC,CAAC;gBAC5C,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC9B,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACjE,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,oBAAoB;QAC5B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,QAAgB;YAC5C,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,uBAAuB,EAAE,EAAC,QAAQ,UAAA,EAAC,CAAC;gBAC9C,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC5D,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC7D,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,sBAAsB;QAC9B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,QAAgB;YAC5C,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,yBAAyB,EAAE,EAAC,QAAQ,UAAA,EAAC,CAAC;gBAChD,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAChC,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACvE,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,iBAAiB;QACzB,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,KAAa;YACzC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,oBAAoB,EAAE,EAAC,KAAK,OAAA,EAAC,CAAC;gBACxC,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACnD,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1D,CAAC;aACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,MAAM,EAAE,mBAAmB;QAC3B,OAAO,EAAE,UAAC,EAAO,EAAE,CAAS,EAAE,KAAa;YACzC,OAAO;gBACL,KAAK,EAAE,EAAE,CAAC,sBAAsB,EAAE,EAAC,KAAK,OAAA,EAAC,CAAC;gBAC1C,SAAS,EAAE,UAAC,GAAkB;oBAC5B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBACD,OAAO,EAAE,UAAC,GAAkB;oBAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC9D,CAAC;aACF,CAAC;QACJ,CAAC;KACF;CACF,CAAC;AAEF;IAAqC,gDAGpC;IAoEC,yBAAY,KAA2B;QAAvC,YACE,kBAAM,KAAK,CAAC,SAyBb;QA5ED,4BAA4B;QAC5B,kBAAY,GAAY,IAAI,CAAC;QA+C7B,eAAS,GAAG,IAAA,gBAAM,GAAE,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAKpC,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACjC,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACnC,KAAI,CAAC,kBAAkB,GAAG,KAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC7D,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC/C,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC7C,KAAI,CAAC,qBAAqB,GAAG,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACnE,KAAI,CAAC,mBAAmB,GAAG,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC/D,KAAI,CAAC,OAAO,GAAG,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACvC,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC7C,KAAI,CAAC,GAAG,GAAG,eAAK,CAAC,SAAS,EAAE,CAAC;QAC7B,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC/C,KAAI,CAAC,cAAc,GAAG,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACrD,KAAI,CAAC,kBAAkB,GAAG,KAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC7D,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QAC3C,KAAI,CAAC,aAAa,GAAG,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACnD,KAAI,CAAC,kBAAkB,GAAG,KAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAI,CAAC,CAAC;QACvD,IAAA,KAAyC,KAAI,CAAC,KAAK,EAAlD,MAAM,YAAA,EAAE,UAAU,gBAAA,EAAE,SAAS,eAAA,EAAE,KAAK,WAAc,CAAC;QAE1D,KAAI,CAAC,KAAK,2BACR,QAAQ,EAAE,KAAK,EACf,SAAS,EAAE,KAAK,IACb,eAAe,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CACvE,CAAC;;IACJ,CAAC;IAzEM,2BAAW,GAAlB,UACE,QAAa,EACb,MAAc,EACd,UAAmB,EACnB,SAAiB,EACjB,GAAW;QAAX,oBAAA,EAAA,WAAW;QAEX,QAAQ,GAAG;YACT,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM,CAChE,MAAM,CACP;YACD,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;SACvE,CAAC;QAEF,IAAI,UAAU,EAAE;YACd,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,6BAAa,GAApB,UACE,KAAU,EACV,MAAc,EACd,UAAmB,EACnB,SAAiB;QAEjB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO;gBACL,SAAS,EAAE,SAAS;gBACpB,OAAO,EAAE,SAAS;aACnB,CAAC;SACH;QAED,IAAI,UAAU,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3C,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAChC;QAED,OAAO;YACL,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,gBAAM,EAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YAC1D,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,gBAAM,EAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;SACzD,CAAC;IACJ,CAAC;IAiCD,4CAAkB,GAAlB,UAAmB,SAA+B;QAChD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAClB,IAAA,KAAK,GAAmC,KAAK,MAAxC,EAAE,MAAM,GAA2B,KAAK,OAAhC,EAAE,UAAU,GAAe,KAAK,WAApB,EAAE,SAAS,GAAI,KAAK,UAAT,CAAU;QAErD,IAAI,SAAS,CAAC,KAAK,KAAK,KAAK,EAAE;YAC7B,IAAI,CAAC,QAAQ,2BACR,eAAe,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,EACtE,CAAC;SACJ;IACH,CAAC;IAED,+BAAK,GAAL;QACE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC5C,OAAO;SACR;QAED,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,8BAAI,GAAJ;QACE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC5C,OAAO;SACR;QAED,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,qCAAW,GAAX,UAAY,CAAuC;QACjD,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QACI,IAAA,OAAO,GAAI,IAAI,CAAC,KAAK,QAAd,CAAe;QAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,oCAAU,GAAV,UAAW,CAAuC;QAChD,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QACI,IAAA,MAAM,GAAI,IAAI,CAAC,KAAK,OAAd,CAAe;QAC5B,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,8BAAI,GAAJ;QACE,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACvB,OAAO;SACR;QAED,IAAI,CAAC,QAAQ,CAAC;YACZ,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;IAED,+BAAK,GAAL;QACE,IAAI,CAAC,QAAQ,CACX;YACE,QAAQ,EAAE,KAAK;SAChB,EACD,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED,qCAAW,GAAX;QACE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACnD,CAAC;IAED,4CAAkB,GAAlB,UAAmB,CAAwB;QACzC,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,CAAC,CAAC,cAAc,EAAE,CAAC;IACrB,CAAC;IAED,wCAAc,GAAd,UAAe,CAAsB;QACnC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;YACjB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,CAAC,CAAC,cAAc,EAAE,CAAC;SACpB;IACH,CAAC;IAED,iCAAO,GAAP;QACE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAChD,OAAO;SACR;aAAM,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;YAC3D,OAAO;SACR;QAED,IAAI,CAAC,KAAK,CAAC,QAAQ,CACjB,eAAe,CAAC,WAAW,CACzB;YACE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;YAC/B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;SAC5B,EACD,IAAI,CAAC,KAAK,CAAC,MAAM,EACjB,IAAI,CAAC,KAAK,CAAC,UAAU,EACrB,IAAI,CAAC,KAAK,CAAC,SAAS,EACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CACf,CACF,CAAC;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,oCAAU,GAAV,UACE,IAAmB,EACnB,WAA2B,EAC3B,UAAmB,EACnB,IAA+B;QAA/B,qBAAA,EAAA,cAA+B;QAE/B,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QAEzB,QAAQ;QACR,IAAI,CAAC,WAAW,EAAE;YAChB,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9D;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAClE,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;SACjE;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAClE,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;SACjE;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACnE,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;SAC/D;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAClE,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;SAClE;aAAM;YACL,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9D;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4CAAkB,GAAlB,UAAmB,QAAuB;QAA1C,iBAiDC;QAhDO,IAAA,KAAyD,IAAI,CAAC,KAAK,EAAlE,KAAK,WAAA,EAAE,UAAU,gBAAA,EAAE,WAAW,iBAAA,EAAE,WAAW,iBAAA,EAAE,OAAO,aAAc,CAAC;QACtE,IAAA,KAAuB,IAAI,CAAC,KAAK,EAAhC,SAAS,eAAA,EAAE,OAAO,aAAc,CAAC;QAEtC,8BAA8B;QAC9B,IAAI,IAAI,CAAC,YAAY,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACrD,kCAAkC;YAClC,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBAChC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;aAC1B;YACD,IAAI,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBACzC,QAAQ,GAAG,OAAO,CAAC;aACpB;YACD,IAAI,CAAC,QAAQ,CAAC;gBACZ,SAAS,EAAE,IAAI,CAAC,UAAU,CACxB,QAAQ,EACR,SAAS,IAAI,OAAO,EACpB,UAAU,EACV,OAAO,CACR;gBACD,OAAO,EAAE,SAAS;aACnB,CAAC,CAAC;SACJ;aAAM;YACL,cAAc;YACd,IAAI,CAAC,SAAS,EAAE;gBACd,kBAAkB;gBAClB,SAAS,GAAG,QAAQ,CAAC;aACtB;YAED,IAAI,WAAW,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE;gBACvE,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aAC/C;YACD,IACE,WAAW;gBACX,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EACrD;gBACA,QAAQ,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aAC/C;YACD,IAAI,CAAC,QAAQ,CACX;gBACE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC;aAC/D,EACD;gBACE,KAAK,IAAI,KAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,CAAC,CACF,CAAC;SACH;QAED,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;IACzC,CAAC;IAED,4CAAkB,GAAlB,UAAmB,IAAS,EAAE,QAAqB;QACjD,IAAI,CAAC,QAAQ,CACX;YACE,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,EACD,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,sCAAY,GAAZ,UAAa,KAAkB;QACvB,IAAA,KAAoC,IAAI,CAAC,KAAK,EAA7C,aAAa,mBAAA,EAAE,OAAO,aAAA,EAAE,OAAO,aAAc,CAAC;QACrD,IAAM,GAAG,GAAG,IAAA,gBAAM,GAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,CACX;YACE,SAAS,EACP,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE;gBAC1B,CAAC,CAAC,gBAAM,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC;gBACnD,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YAClC,OAAO,EACL,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE;gBAC1B,CAAC,CAAC,gBAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;gBACjD,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;SACjC,EACD,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,aAAI,CACpC,CAAC;IACJ,CAAC;IAED,sCAAY,GAAZ,UAAa,MAA6C;QAA1D,iBAyDC;QAxDC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,IAAI,CAAC;SACb;QACM,IAAa,EAAE,GAAI,IAAI,CAAC,KAAK,YAAd,CAAe;QACrC,IAAI,QAAmC,CAAC;QACxC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SAC9B;aAAM;YACL,QAAQ,GAAG,MAAM,CAAC;SACnB;QACD,IAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEhC,OAAO,CACL,sCAAI,SAAS,EAAE,UAAG,EAAE,4BAAyB,IAC1C,QAAQ,CAAC,GAAG,CAAC,UAAA,IAAI;YAChB,IAAI,CAAC,IAAI,EAAE;gBACT,OAAO,IAAI,CAAC;aACb;YACD,IAAI,KAAK,GAAgB,EAAE,CAAC;YAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,IAAI,uBAAe,CAAC,IAAI,CAAC,EAAE;oBACzB,KAAK,GAAG,uBAAe,CAAC,IAAI,CAAC,CAAC;oBAC9B,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC;iBAClB;qBAAM;oBACL,WAAW;oBACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,sBAAc,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;wBACzD,IAAI,KAAK,GAAG,sBAAc,CAAC,CAAC,CAAC,CAAC;wBAC9B,IAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAClC,IAAI,CAAC,EAAE;4BACL,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,8BAAG,EAAE,GAAK,CAAC,QAAE,CAAC;4BAC9C,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC;yBAClB;qBACF;iBACF;aACF;iBAAM,IACJ,IAA0B,CAAC,SAAS;gBACpC,IAA0B,CAAC,OAAO,EACnC;gBACA,KAAK,mDACA,IAAI,KACP,SAAS,EAAE,cAAM,OAAC,IAA0B,CAAC,SAAS,EAArC,CAAqC,EACtD,OAAO,EAAE,cAAM,OAAC,IAA0B,CAAC,OAAO,EAAnC,CAAmC,GACnD,CAAC;aACH;YACD,OAAO,CACL,sCACE,SAAS,EAAE,UAAG,EAAE,2BAAwB,EACxC,OAAO,EAAE,cAAM,OAAA,KAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAxB,CAAwB,EACvC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK;gBAE7B,yCAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAK,CACrB,CACN,CAAC;QACJ,CAAC,CAAC,CACC,CACN,CAAC;IACJ,CAAC;IAED,oCAAU,GAAV,UAAW,CAAwB;QACjC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACd,IAAA,KAAyB,IAAI,CAAC,KAAK,EAAlC,UAAU,gBAAA,EAAE,QAAQ,cAAc,CAAC;QAE1C,QAAQ,CAAC,UAAU,CAAC,CAAC;IACvB,CAAC;IAED,+CAAqB,GAArB,UAAsB,WAA0B;QAC1C,IAAA,KAAuB,IAAI,CAAC,KAAK,EAAhC,OAAO,aAAA,EAAE,SAAS,eAAc,CAAC;QAClC,IAAA,KAAyD,IAAI,CAAC,KAAK,EAAlE,OAAO,aAAA,EAAE,OAAO,aAAA,EAAE,WAAW,iBAAA,EAAE,WAAW,iBAAA,EAAE,QAAQ,cAAc,CAAC;QACxE,IAAM,SAAS,GAAG,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC;QAEpE,OAAO;YACL,OAAO,IAAI,OAAO;gBAChB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;oBACzB,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,OAAO;gBACX,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;YACvD,OAAO,KAAK,CAAC;SACd;aAAM,IAAI,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;YAC7D,OAAO,KAAK,CAAC;SACd;aAAM;QACL,uDAAuD;QACvD,OAAO;YACP,WAAW;YACX,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,EAC1D;YACA,OAAO,KAAK,CAAC;SACd;aAAM,IACL,OAAO;YACP,WAAW;YACX,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,EAC3D;YACA,OAAO,KAAK,CAAC;SACd;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAAmB,GAAnB,UAAoB,WAA0B;QACvC,IAAA,SAAS,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;QACzB,IAAA,KAAyD,IAAI,CAAC,KAAK,EAAlE,OAAO,aAAA,EAAE,OAAO,aAAA,EAAE,WAAW,iBAAA,EAAE,WAAW,iBAAA,EAAE,QAAQ,cAAc,CAAC;QACxE,IAAM,SAAS,GAAG,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC;QAEpE,OAAO;YACL,OAAO,IAAI,SAAS;gBAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;oBAC1B,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,SAAS;gBACb,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;YACvD,OAAO,KAAK,CAAC;SACd;aAAM,IAAI,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;YAC7D,OAAO,KAAK,CAAC;SACd;aAAM,IACL,SAAS;YACT,WAAW;YACX,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EACxD;YACA,OAAO,KAAK,CAAC;SACd;aAAM,IACL,SAAS;YACT,WAAW;YACX,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EACvD;YACA,OAAO,KAAK,CAAC;SACd;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mCAAS,GAAT,UAAU,KAAU,EAAE,WAA0B;QAC1C,IAAA,KAAuB,IAAI,CAAC,KAAK,EAAhC,SAAS,eAAA,EAAE,OAAO,aAAc,CAAC;QAEtC,IACE,SAAS;YACT,OAAO;YACP,WAAW,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EACtD;YACA,KAAK,CAAC,SAAS,IAAI,aAAa,CAAC;SAClC;QAED,OAAO,8DAAQ,KAAK,GAAG,WAAW,CAAC,IAAI,EAAE,CAAM,CAAC;IAClD,CAAC;IAED,uCAAa,GAAb,UAAc,KAAU,EAAE,OAAe,EAAE,IAAY;QACrD,IAAM,WAAW,GAAG,IAAA,gBAAM,GAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnD,IAAA,KAAuB,IAAI,CAAC,KAAK,EAAhC,SAAS,eAAA,EAAE,OAAO,aAAc,CAAC;QAExC,IACE,SAAS;YACT,OAAO;YACP,WAAW,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,EAC1D;YACA,KAAK,CAAC,SAAS,IAAI,aAAa,CAAC;SAClC;QAED,OAAO,CACL,8DAAQ,KAAK;YACX;;gBAAQ,OAAO,CAAQ,CACpB,CACN,CAAC;IACJ,CAAC;IAED,wCAAc,GAAd;QACQ,IAAA,KAUF,IAAI,CAAC,KAAK,EATC,EAAE,iBAAA,EACH,EAAE,gBAAA,EACd,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,MAAM,YAAA,EACN,MAAM,YAAA,EACN,KAAK,WAAA,EACL,gBAAiB,EAAjB,QAAQ,mBAAG,MAAM,KACL,CAAC;QACf,IAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAE1B,IAAA,KAAuB,IAAI,CAAC,KAAK,EAAhC,SAAS,eAAA,EAAE,OAAO,aAAc,CAAC;QACxC,OAAO,CACL,uCAAK,SAAS,EAAE,UAAG,EAAE,yBAAsB;YACxC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAE1B,8BAAC,kBAAQ,IACP,SAAS,EAAE,UAAG,EAAE,0BAAuB,EACvC,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EACjC,eAAe,EAAE,KAAK,EACtB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,IAAI,CAAC,qBAAqB,EACvC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,IAAI,CAAC,KAAK,EACnB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,MAAM,EAAE,MAAM,GACd;YAEF,8BAAC,kBAAQ,IACP,SAAS,EAAE,UAAG,EAAE,wBAAqB,EACrC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EACjC,eAAe,EAAE,KAAK,EACtB,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,IAAI,CAAC,SAAS,EACxB,SAAS,QACT,WAAW,EAAE,IAAI,CAAC,mBAAmB,EACrC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,IAAI,CAAC,KAAK,EACnB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,MAAM,EAAE,MAAM,GACd;YAED,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACd,uCAAK,GAAG,EAAC,QAAQ,EAAC,SAAS,EAAE,UAAG,EAAE,4BAAyB;gBACzD,qCAAG,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,IAC/D,EAAE,CAAC,QAAQ,CAAC,CACX;gBACJ,qCACE,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE;wBACnD,aAAa,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO;qBAC5D,CAAC,EACF,OAAO,EAAE,IAAI,CAAC,OAAO,IAEpB,EAAE,CAAC,SAAS,CAAC,CACZ,CACA,CACP,CACG,CACP,CAAC;IACJ,CAAC;IAED,gCAAM,GAAN;;QAAA,iBAyKC;QAxKO,IAAA,KAyBF,IAAI,CAAC,KAAK,EAxBZ,SAAS,eAAA,EACT,gBAAgB,sBAAA,EACH,EAAE,iBAAA,EACf,KAAK,WAAA,EACL,WAAW,iBAAA,EACX,gBAAgB,sBAAA,EAChB,WAAW,iBAAA,EACX,MAAM,YAAA,EACN,UAAU,gBAAA,EACV,SAAS,eAAA,EACT,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,KAAK,WAAA,EACL,gBAAgB,sBAAA,EAChB,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,UAAU,gBAAA,EACV,OAAO,aAAA,EACP,OAAO,aAAA,EACP,WAAW,iBAAA,EACX,WAAW,iBAAA,EACX,UAAU,gBAAA,EACV,gBAAiB,EAAjB,QAAQ,mBAAG,MAAM,KAAA,EACjB,MAAM,YACM,CAAC;QACf,IAAM,iBAAiB,GACrB,WAAW;YACX,IAAA,iBAAQ,GAAE;YACV,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAElD,IAAA,KAA4C,IAAI,CAAC,KAAK,EAArD,QAAQ,cAAA,EAAE,SAAS,eAAA,EAAE,SAAS,eAAA,EAAE,OAAO,aAAc,CAAC;QAE7D,IAAM,YAAY,GAAG,eAAe,CAAC,aAAa,CAChD,KAAK,EACL,MAAM,EACN,UAAU,EACV,SAAS,CACV,CAAC;QACF,IAAM,cAAc,GAAG,YAAY,CAAC,SAAS;YAC3C,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC;YAC5C,CAAC,CAAC,EAAE,CAAC;QACP,IAAM,YAAY,GAAG,YAAY,CAAC,OAAO;YACvC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;YAC1C,CAAC,CAAC,EAAE,CAAC;QACP,IAAM,GAAG,GAAG,EAAE,CAAC;QACf,cAAc,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3C,YAAY,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,IAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEhC,IAAM,cAAc,GAAG,CACrB,8BAAC,wBAAc,IACb,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EACjC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EACtC,YAAY,EACV,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,GAEvE,CACH,CAAC;QAEF,IAAI,KAAK,EAAE;YACT,OAAO,CACL,uCACE,SAAS,EAAE,IAAA,oBAAE,EACX,UAAG,EAAE,sBAAmB,EACxB;oBACE,aAAa,EAAE,QAAQ;iBACxB,EACD,SAAS,CACV,IAEA,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CACvD,CACP,CAAC;SACH;QAED,IAAM,mBAAmB,GAAG,CAC1B,uCAAK,SAAS,EAAE,UAAG,EAAE,yBAAsB,IACxC,EAAE,CAAC,qBAAqB,CAAC,CACtB,CACP,CAAC;QAEF,OAAO,CACL,uCACE,QAAQ,EAAE,CAAC,EACX,UAAU,EAAE,IAAI,CAAC,cAAc,EAC/B,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,MAAM,EAAE,IAAI,CAAC,UAAU,EACvB,SAAS,EAAE,IAAA,oBAAE,EACX,UAAG,EAAE,oBAAiB;oBAEpB,aAAa,EAAE,QAAQ;oBACvB,YAAY,EAAE,SAAS;;gBACvB,GAAC,UAAG,EAAE,oCAA0B,IAAA,gBAAO,EAAC,UAAU,CAAC,CAAE,IAAG,UAAU;gBAClE,eAAW,GAAE,WAAW,IAAI,IAAA,iBAAQ,GAAE;qBAExC,SAAS,CACV,EACD,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,OAAO,EAAE,IAAI,CAAC,WAAW;YAExB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CACZ,wCAAM,SAAS,EAAE,UAAG,EAAE,0BAAuB,IAC1C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAC,CACjC,CACR,CAAC,CAAC,CAAC,CACF,wCAAM,SAAS,EAAE,UAAG,EAAE,gCAA6B,IAChD,EAAE,CAAC,WAAW,CAAC,CACX,CACR;YAEA,SAAS,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,CACjC,qCAAG,SAAS,EAAE,UAAG,EAAE,0BAAuB,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU;gBAClE,8BAAC,YAAI,IAAC,IAAI,EAAC,aAAa,EAAC,SAAS,EAAC,MAAM,GAAG,CAC1C,CACL,CAAC,CAAC,CAAC,IAAI;YAER,qCAAG,SAAS,EAAE,UAAG,EAAE,4BAAyB;gBAC1C,8BAAC,YAAI,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,GAAG,CACpC;YAEH,QAAQ,CAAC,CAAC,CAAC,CACV,WAAW,IAAI,IAAA,iBAAQ,GAAE,CAAC,CAAC,CAAC,CAC1B,8BAAC,eAAK,IACJ,MAAM,EAAE,QAAQ,EAChB,SAAS,EAAE,gBAAgB,EAC3B,SAAS,EAAE,IAAA,oBAAE,EAAC,UAAG,EAAE,uBAAoB,CAAC,EACxC,MAAM,EAAE,IAAI,CAAC,KAAK,EAClB,MAAM,EAAE,mBAAmB,IAE1B,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CACrD,CACT,CAAC,CAAC,CAAC,CACF,8BAAC,iBAAO,IACN,MAAM,EAAE,cAAM,OAAA,KAAI,CAAC,GAAG,CAAC,OAAO,EAAhB,CAAgB,EAC9B,MAAM,EAAE,IAAI,CAAC,KAAK,EAClB,SAAS,EAAE,gBAAgB,IAAI,CAAC,cAAM,OAAA,IAAA,uBAAW,EAAC,KAAI,CAAC,EAAjB,CAAiB,CAAC,EACxD,SAAS,EAAE,KAAK,EAChB,SAAS,EAAE,gBAAgB,EAC3B,IAAI;gBAEJ,8BAAC,iBAAO,IACN,WAAW,EAAE,EAAE,EACf,SAAS,EAAE,IAAA,oBAAE,EAAC,UAAG,EAAE,4BAAyB,EAAE,gBAAgB,CAAC,EAC/D,MAAM,EAAE,IAAI,CAAC,KAAK,EAClB,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAChC,OAAO,UAEN,IAAI,CAAC,cAAc,EAAE,CACd,CACF,CACX,CACF,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC;IACJ,CAAC;IAtsBM,4BAAY,GAAG;QACpB,WAAW,EAAE,uBAAuB;QACpC,MAAM,EAAE,GAAG;QACX,WAAW,EAAE,YAAY;QACzB,UAAU,EAAE,IAAI;QAChB,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,GAAG;QACd,MAAM,EAAE,6DAA6D;QACrE,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE,MAAM;KACzB,CAAC;IA4rBJ,sBAAC;CAAA,AA3sBD,CAAqC,eAAK,CAAC,SAAS,GA2sBnD;AA3sBY,0CAAe;AA6sB5B,kBAAe,IAAA,iBAAS,EAAC,IAAA,mBAAU,EAAC,eAAe,CAAC,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "/**\n * @file DateRangePicker\n * @description 自定义日期范围时间选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport moment from 'moment';\nimport {findDOMNode} from 'react-dom';\nimport cx from 'classnames';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {ShortCuts, ShortCutDateRange} from './DatePicker';\nimport Calendar from './calendar/Calendar';\nimport PopOver from './PopOver';\nimport PopUp from './PopUp';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {PlainObject} from '../types';\nimport {isMobile, noop, ucFirst} from '../utils/helper';\nimport {LocaleProps, localeable} from '../locale';\nimport CalendarMobile from './CalendarMobile';\n\nexport interface DateRangePickerProps extends ThemeProps, LocaleProps {\n className?: string;\n popoverClassName?: string;\n placeholder?: string;\n theme?: any;\n format: string;\n utc?: boolean;\n inputFormat?: string;\n ranges?: string | Array<ShortCuts>;\n clearable?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n minDuration?: moment.Duration;\n maxDuration?: moment.Duration;\n joinValues: boolean;\n delimiter: string;\n value?: any;\n onChange: (value: any) => void;\n data?: any;\n disabled?: boolean;\n closeOnSelect?: boolean;\n overlayPlacement: string;\n timeFormat?: string;\n resetValue?: any;\n popOverContainer?: any;\n dateFormat?: string;\n embed?: boolean;\n viewMode?: 'days' | 'months' | 'years' | 'time' | 'quarters';\n borderMode?: 'full' | 'half' | 'none';\n useMobileUI?: boolean;\n onFocus?: Function;\n onBlur?: Function;\n}\n\nexport interface DateRangePickerState {\n isOpened: boolean;\n isFocused: boolean;\n startDate?: moment.Moment;\n endDate?: moment.Moment;\n}\n\nexport const availableRanges: {[propName: string]: any} = {\n 'today': {\n label: 'Date.today',\n startDate: (now: moment.Moment) => {\n return now.startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n 'yesterday': {\n label: 'Date.yesterday',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '1dayago': {\n label: 'DateRange.1dayago',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n '7daysago': {\n label: 'DateRange.7daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-7, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '30daysago': {\n label: 'DateRange.30daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-30, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '90daysago': {\n label: 'DateRange.90daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-90, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n 'prevweek': {\n label: 'DateRange.lastWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'weeks');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'days').endOf('day');\n }\n },\n\n 'thisweek': {\n label: 'DateRange.thisWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('week');\n }\n },\n\n 'thismonth': {\n label: 'DateRange.thisMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('month');\n }\n },\n\n 'thisquarter': {\n label: 'DateRange.thisQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('quarter');\n }\n },\n\n 'prevmonth': {\n label: 'DateRange.lastMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'month');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'day').endOf('day');\n }\n },\n\n 'prevquarter': {\n label: 'DateRange.lastQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'day').endOf('day');\n }\n },\n\n 'thisyear': {\n label: 'DateRange.thisYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year');\n }\n },\n\n 'lastYear': {\n label: 'DateRange.lastYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year').add(-1, 'year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year').add(-1, 'year').endOf('day');\n }\n }\n};\n\nexport class DateRangePicker extends React.Component<\n DateRangePickerProps,\n DateRangePickerState\n> {\n static defaultProps = {\n placeholder: 'DateRange.placeholder',\n format: 'X',\n inputFormat: 'YYYY-MM-DD',\n joinValues: true,\n clearable: true,\n delimiter: ',',\n ranges: 'yesterday,7daysago,prevweek,thismonth,prevmonth,prevquarter',\n resetValue: '',\n closeOnSelect: true,\n overlayPlacement: 'auto'\n };\n\n innerDom: any;\n popover: any;\n input?: HTMLInputElement;\n\n // 是否是第一次点击,如果是第一次点击就可以点任意地址\n isFirstClick: boolean = true;\n\n static formatValue(\n newValue: any,\n format: string,\n joinValues: boolean,\n delimiter: string,\n utc = false\n ) {\n newValue = [\n (utc ? moment.utc(newValue.startDate) : newValue.startDate).format(\n format\n ),\n (utc ? moment.utc(newValue.endDate) : newValue.endDate).format(format)\n ];\n\n if (joinValues) {\n newValue = newValue.join(delimiter);\n }\n\n return newValue;\n }\n\n static unFormatValue(\n value: any,\n format: string,\n joinValues: boolean,\n delimiter: string\n ) {\n if (!value) {\n return {\n startDate: undefined,\n endDate: undefined\n };\n }\n\n if (joinValues && typeof value === 'string') {\n value = value.split(delimiter);\n }\n\n return {\n startDate: value[0] ? moment(value[0], format) : undefined,\n endDate: value[1] ? moment(value[1], format) : undefined\n };\n }\n\n dom: React.RefObject<HTMLDivElement>;\n nextMonth = moment().add(1, 'months');\n\n constructor(props: DateRangePickerProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleSelectChange = this.handleSelectChange.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.checkStartIsValidDate = this.checkStartIsValidDate.bind(this);\n this.checkEndIsValidDate = this.checkEndIsValidDate.bind(this);\n this.confirm = this.confirm.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.dom = React.createRef();\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handlePopOverClick = this.handlePopOverClick.bind(this);\n this.renderDay = this.renderDay.bind(this);\n this.renderQuarter = this.renderQuarter.bind(this);\n this.handleMobileChange = this.handleMobileChange.bind(this);\n const {format, joinValues, delimiter, value} = this.props;\n\n this.state = {\n isOpened: false,\n isFocused: false,\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n };\n }\n\n componentDidUpdate(prevProps: DateRangePickerProps) {\n const props = this.props;\n const {value, format, joinValues, delimiter} = props;\n\n if (prevProps.value !== value) {\n this.setState({\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n });\n }\n }\n\n focus() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.focus();\n }\n\n blur() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.blur();\n }\n\n handleFocus(e: React.SyntheticEvent<HTMLDivElement>) {\n this.setState({\n isFocused: true\n });\n const {onFocus} = this.props;\n onFocus && onFocus(e);\n }\n\n handleBlur(e: React.SyntheticEvent<HTMLDivElement>) {\n this.setState({\n isFocused: false\n });\n const {onBlur} = this.props;\n onBlur && onBlur(e);\n }\n\n open() {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({\n isOpened: true\n });\n }\n\n close() {\n this.setState(\n {\n isOpened: false\n },\n this.blur\n );\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open();\n }\n\n handlePopOverClick(e: React.MouseEvent<any>) {\n e.stopPropagation();\n e.preventDefault();\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleClick();\n e.preventDefault();\n }\n }\n\n confirm() {\n if (!this.state.startDate || !this.state.endDate) {\n return;\n } else if (this.state.startDate.isAfter(this.state.endDate)) {\n return;\n }\n\n this.props.onChange(\n DateRangePicker.formatValue(\n {\n startDate: this.state.startDate,\n endDate: this.state.endDate\n },\n this.props.format,\n this.props.joinValues,\n this.props.delimiter,\n this.props.utc\n )\n );\n this.close();\n }\n\n filterDate(\n date: moment.Moment,\n originValue?: moment.Moment,\n timeFormat?: string,\n type: 'start' | 'end' = 'start'\n ): moment.Moment {\n let value = date.clone();\n\n // 没有初始值\n if (!originValue) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n } else if (typeof timeFormat === 'string' && /ss/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('second');\n } else if (typeof timeFormat === 'string' && /mm/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('minute');\n } else if (typeof timeFormat === 'string' && /HH/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('hour');\n } else if (typeof timeFormat === 'string' && /Q/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('quarter');\n } else {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n }\n\n return value;\n }\n\n handleSelectChange(newValue: moment.Moment) {\n const {embed, timeFormat, minDuration, maxDuration, minDate} = this.props;\n let {startDate, endDate} = this.state;\n\n // 第一次点击只标记起始时间,或者点击了开始时间前面的时间\n if (this.isFirstClick || newValue.isBefore(startDate)) {\n // 这种情况说明第二次点击点击了前面的时间,这时要标记为第二次点击\n if (newValue.isBefore(startDate)) {\n this.isFirstClick = true;\n }\n if (minDate && newValue.isBefore(minDate)) {\n newValue = minDate;\n }\n this.setState({\n startDate: this.filterDate(\n newValue,\n startDate || minDate,\n timeFormat,\n 'start'\n ),\n endDate: undefined\n });\n } else {\n // 第二次点击作为结束时间\n if (!startDate) {\n // 不大可能,但只能作为开始时间了\n startDate = newValue;\n }\n\n if (minDuration && newValue.isAfter(startDate.clone().add(minDuration))) {\n newValue = startDate.clone().add(minDuration);\n }\n if (\n maxDuration &&\n newValue.isBefore(startDate.clone().add(maxDuration))\n ) {\n newValue = startDate.clone().add(maxDuration);\n }\n this.setState(\n {\n endDate: this.filterDate(newValue, endDate, timeFormat, 'end')\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n this.isFirstClick = !this.isFirstClick;\n }\n\n handleMobileChange(data: any, callback?: () => void) {\n this.setState(\n {\n startDate: data.startDate,\n endDate: data.endDate\n },\n callback\n );\n }\n\n selectRannge(range: PlainObject) {\n const {closeOnSelect, minDate, maxDate} = this.props;\n const now = moment();\n this.setState(\n {\n startDate:\n minDate && minDate.isValid()\n ? moment.max(range.startDate(now.clone()), minDate)\n : range.startDate(now.clone()),\n endDate:\n maxDate && maxDate.isValid()\n ? moment.min(maxDate, range.endDate(now.clone()))\n : range.endDate(now.clone())\n },\n closeOnSelect ? this.confirm : noop\n );\n }\n\n renderRanges(ranges: string | Array<ShortCuts> | undefined) {\n if (!ranges) {\n return null;\n }\n const {classPrefix: ns} = this.props;\n let rangeArr: Array<string | ShortCuts>;\n if (typeof ranges === 'string') {\n rangeArr = ranges.split(',');\n } else {\n rangeArr = ranges;\n }\n const __ = this.props.translate;\n\n return (\n <ul className={`${ns}DateRangePicker-rangers`}>\n {rangeArr.map(item => {\n if (!item) {\n return null;\n }\n let range: PlainObject = {};\n if (typeof item === 'string') {\n range = availableRanges[item];\n range.key = item;\n } else if (\n (item as ShortCutDateRange).startDate &&\n (item as ShortCutDateRange).endDate\n ) {\n range = {\n ...item,\n startDate: () => (item as ShortCutDateRange).startDate,\n endDate: () => (item as ShortCutDateRange).endDate\n };\n }\n return (\n <li\n className={`${ns}DateRangePicker-ranger`}\n onClick={() => this.selectRannge(range)}\n key={range.key || range.label}\n >\n <a>{__(range.label)}</a>\n </li>\n );\n })}\n </ul>\n );\n }\n\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n e.stopPropagation();\n const {resetValue, onChange} = this.props;\n\n onChange(resetValue);\n }\n\n checkStartIsValidDate(currentDate: moment.Moment) {\n let {endDate, startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n maxDate =\n maxDate && endDate\n ? maxDate.isBefore(endDate)\n ? maxDate\n : endDate\n : undefined;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n // 如果配置了 minDuration 那么 EndDate - minDuration 之后的天数也不能选\n endDate &&\n minDuration &&\n currentDate.isAfter(endDate.clone().subtract(minDuration))\n ) {\n return false;\n } else if (\n endDate &&\n maxDuration &&\n currentDate.isBefore(endDate.clone().subtract(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n checkEndIsValidDate(currentDate: moment.Moment) {\n let {startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n minDate =\n minDate && startDate\n ? minDate.isAfter(startDate)\n ? minDate\n : startDate\n : undefined;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n startDate &&\n minDuration &&\n currentDate.isBefore(startDate.clone().add(minDuration))\n ) {\n return false;\n } else if (\n startDate &&\n maxDuration &&\n currentDate.isAfter(startDate.clone().add(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n renderDay(props: any, currentDate: moment.Moment) {\n let {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'day', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return <td {...props}>{currentDate.date()}</td>;\n }\n\n renderQuarter(props: any, quarter: number, year: number) {\n const currentDate = moment().year(year).quarter(quarter);\n const {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'quarter', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return (\n <td {...props}>\n <span>Q{quarter}</span>\n </td>\n );\n }\n\n renderCalendar() {\n const {\n classPrefix: ns,\n classnames: cx,\n dateFormat,\n timeFormat,\n inputFormat,\n ranges,\n locale,\n embed,\n viewMode = 'days'\n } = this.props;\n const __ = this.props.translate;\n\n const {startDate, endDate} = this.state;\n return (\n <div className={`${ns}DateRangePicker-wrap`}>\n {this.renderRanges(ranges)}\n\n <Calendar\n className={`${ns}DateRangePicker-start`}\n value={startDate}\n onChange={this.handleSelectChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkStartIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n <Calendar\n className={`${ns}DateRangePicker-end`}\n value={endDate}\n onChange={this.handleSelectChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n viewDate={this.nextMonth}\n isEndDate\n isValidDate={this.checkEndIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n {embed ? null : (\n <div key=\"button\" className={`${ns}DateRangePicker-actions`}>\n <a className={cx('Button', 'Button--default')} onClick={this.close}>\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm', {\n 'is-disabled': !this.state.startDate || !this.state.endDate\n })}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n )}\n </div>\n );\n }\n\n render() {\n const {\n className,\n popoverClassName,\n classPrefix: ns,\n value,\n placeholder,\n popOverContainer,\n inputFormat,\n format,\n joinValues,\n delimiter,\n clearable,\n disabled,\n embed,\n overlayPlacement,\n borderMode,\n useMobileUI,\n timeFormat,\n minDate,\n maxDate,\n minDuration,\n maxDuration,\n dateFormat,\n viewMode = 'days',\n ranges\n } = this.props;\n const useCalendarMobile =\n useMobileUI &&\n isMobile() &&\n ['days', 'months', 'quarters'].indexOf(viewMode) > -1;\n\n const {isOpened, isFocused, startDate, endDate} = this.state;\n\n const selectedDate = DateRangePicker.unFormatValue(\n value,\n format,\n joinValues,\n delimiter\n );\n const startViewValue = selectedDate.startDate\n ? selectedDate.startDate.format(inputFormat)\n : '';\n const endViewValue = selectedDate.endDate\n ? selectedDate.endDate.format(inputFormat)\n : '';\n const arr = [];\n startViewValue && arr.push(startViewValue);\n endViewValue && arr.push(endViewValue);\n const __ = this.props.translate;\n\n const calendarMobile = (\n <CalendarMobile\n timeFormat={timeFormat}\n inputFormat={inputFormat}\n startDate={startDate}\n endDate={endDate}\n minDate={minDate}\n maxDate={maxDate}\n minDuration={minDuration}\n maxDuration={maxDuration}\n dateFormat={dateFormat}\n embed={embed}\n viewMode={viewMode}\n close={this.close}\n confirm={this.confirm}\n onChange={this.handleMobileChange}\n footerExtra={this.renderRanges(ranges)}\n showViewMode={\n viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months'\n }\n />\n );\n\n if (embed) {\n return (\n <div\n className={cx(\n `${ns}DateRangeCalendar`,\n {\n 'is-disabled': disabled\n },\n className\n )}\n >\n {useCalendarMobile ? calendarMobile : this.renderCalendar()}\n </div>\n );\n }\n\n const CalendarMobileTitle = (\n <div className={`${ns}CalendarMobile-title`}>\n {__('Calendar.datepicker')}\n </div>\n );\n\n return (\n <div\n tabIndex={0}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n `${ns}DateRangePicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': isFocused,\n [`${ns}DateRangePicker--border${ucFirst(borderMode)}`]: borderMode,\n 'is-mobile': useMobileUI && isMobile()\n },\n className\n )}\n ref={this.dom}\n onClick={this.handleClick}\n >\n {arr.length ? (\n <span className={`${ns}DateRangePicker-value`}>\n {arr.join(__('DateRange.valueConcat'))}\n </span>\n ) : (\n <span className={`${ns}DateRangePicker-placeholder`}>\n {__(placeholder)}\n </span>\n )}\n\n {clearable && !disabled && value ? (\n <a className={`${ns}DateRangePicker-clear`} onClick={this.clearValue}>\n <Icon icon=\"input-clear\" className=\"icon\" />\n </a>\n ) : null}\n\n <a className={`${ns}DateRangePicker-toggler`}>\n <Icon icon=\"clock\" className=\"icon\" />\n </a>\n\n {isOpened ? (\n useMobileUI && isMobile() ? (\n <PopUp\n isShow={isOpened}\n container={popOverContainer}\n className={cx(`${ns}CalendarMobile-pop`)}\n onHide={this.close}\n header={CalendarMobileTitle}\n >\n {useCalendarMobile ? calendarMobile : this.renderCalendar()}\n </PopUp>\n ) : (\n <Overlay\n target={() => this.dom.current}\n onHide={this.close}\n container={popOverContainer || (() => findDOMNode(this))}\n rootClose={false}\n placement={overlayPlacement}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(`${ns}DateRangePicker-popover`, popoverClassName)}\n onHide={this.close}\n onClick={this.handlePopOverClick}\n overlay\n >\n {this.renderCalendar()}\n </PopOver>\n </Overlay>\n )\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(localeable(DateRangePicker));\n"
11
+ "/**\n * @file DateRangePicker\n * @description 自定义日期范围时间选择器组件\n * @author fex\n */\n\nimport React from 'react';\nimport moment from 'moment';\nimport {findDOMNode} from 'react-dom';\nimport cx from 'classnames';\nimport {Icon} from './icons';\nimport Overlay from './Overlay';\nimport {ShortCuts, ShortCutDateRange} from './DatePicker';\nimport Calendar from './calendar/Calendar';\nimport PopOver from './PopOver';\nimport PopUp from './PopUp';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {PlainObject} from '../types';\nimport {isMobile, noop, ucFirst} from '../utils/helper';\nimport {LocaleProps, localeable} from '../locale';\nimport CalendarMobile from './CalendarMobile';\n\nexport interface DateRangePickerProps extends ThemeProps, LocaleProps {\n className?: string;\n popoverClassName?: string;\n placeholder?: string;\n theme?: any;\n format: string;\n utc?: boolean;\n inputFormat?: string;\n ranges?: string | Array<ShortCuts>;\n clearable?: boolean;\n minDate?: moment.Moment;\n maxDate?: moment.Moment;\n minDuration?: moment.Duration;\n maxDuration?: moment.Duration;\n joinValues: boolean;\n delimiter: string;\n value?: any;\n onChange: (value: any) => void;\n data?: any;\n disabled?: boolean;\n closeOnSelect?: boolean;\n overlayPlacement: string;\n timeFormat?: string;\n resetValue?: any;\n popOverContainer?: any;\n dateFormat?: string;\n embed?: boolean;\n viewMode?: 'days' | 'months' | 'years' | 'time' | 'quarters';\n borderMode?: 'full' | 'half' | 'none';\n useMobileUI?: boolean;\n onFocus?: Function;\n onBlur?: Function;\n}\n\nexport interface DateRangePickerState {\n isOpened: boolean;\n isFocused: boolean;\n startDate?: moment.Moment;\n endDate?: moment.Moment;\n}\n\nexport const availableRanges: {[propName: string]: any} = {\n 'today': {\n label: 'Date.today',\n startDate: (now: moment.Moment) => {\n return now.startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n 'yesterday': {\n label: 'Date.yesterday',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n 'tomorrow': {\n label: 'Date.tomorrow',\n startDate: (now: moment.Moment) => {\n return now.add(1, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(1, 'days').endOf('day');\n }\n },\n\n // 兼容一下错误的用法\n '1daysago': {\n label: 'DateRange.1daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-1, 'days');\n },\n endDate: (now: moment.Moment) => {\n return now;\n }\n },\n\n '7daysago': {\n label: 'DateRange.7daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-7, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '30daysago': {\n label: 'DateRange.30daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-30, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n '90daysago': {\n label: 'DateRange.90daysago',\n startDate: (now: moment.Moment) => {\n return now.add(-90, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n },\n\n 'prevweek': {\n label: 'DateRange.lastWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'weeks');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'days').endOf('day');\n }\n },\n\n 'thisweek': {\n label: 'DateRange.thisWeek',\n startDate: (now: moment.Moment) => {\n return now.startOf('week');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('week');\n }\n },\n\n 'thismonth': {\n label: 'DateRange.thisMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('month');\n }\n },\n\n 'thisquarter': {\n label: 'DateRange.thisQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('quarter');\n }\n },\n\n 'prevmonth': {\n label: 'DateRange.lastMonth',\n startDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'month');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'day').endOf('day');\n }\n },\n\n 'prevquarter': {\n label: 'DateRange.lastQuarter',\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'day').endOf('day');\n }\n },\n\n 'thisyear': {\n label: 'DateRange.thisYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year');\n }\n },\n\n 'lastYear': {\n label: 'DateRange.lastYear',\n startDate: (now: moment.Moment) => {\n return now.startOf('year').add(-1, 'year');\n },\n endDate: (now: moment.Moment) => {\n return now.endOf('year').add(-1, 'year').endOf('day');\n }\n }\n};\n\nexport const advancedRanges = [\n {\n regexp: /^(\\d+)hoursago$/,\n resolve: (__: any, _: string, hours: string) => {\n return {\n label: __('DateRange.hoursago', {hours}),\n startDate: (now: moment.Moment) => {\n return now.add(-hours, 'hours').startOf('hour');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'hours').endOf('hours');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)hourslater$/,\n resolve: (__: any, _: string, hours: string) => {\n return {\n label: __('DateRange.hourslater', {hours}),\n startDate: (now: moment.Moment) => {\n return now.startOf('hour');\n },\n endDate: (now: moment.Moment) => {\n return now.add(hours, 'hours').endOf('hour');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)daysago$/,\n resolve: (__: any, _: string, days: string) => {\n return {\n label: __('DateRange.daysago', {days}),\n startDate: (now: moment.Moment) => {\n return now.add(-days, 'days').startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(-1, 'days').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)dayslater$/,\n resolve: (__: any, _: string, days: string) => {\n return {\n label: __('DateRange.dayslater', {days}),\n startDate: (now: moment.Moment) => {\n return now.startOf('day');\n },\n endDate: (now: moment.Moment) => {\n return now.add(days, 'days').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)weeksago$/,\n resolve: (__: any, _: string, weeks: string) => {\n return {\n label: __('DateRange.weeksago', {weeks}),\n startDate: (now: moment.Moment) => {\n return now.startOf('week').add(-weeks, 'weeks');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('week').add(-1, 'days').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)weekslater$/,\n resolve: (__: any, _: string, weeks: string) => {\n return {\n label: __('DateRange.weekslater', {weeks}),\n startDate: (now: moment.Moment) => {\n return now.startOf('week');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('week').add(weeks, 'weeks').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)monthsago$/,\n resolve: (__: any, _: string, months: string) => {\n return {\n label: __('DateRange.monthsago', {months}),\n startDate: (now: moment.Moment) => {\n return now.startOf('months').add(-months, 'months');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('month').add(-1, 'days').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)monthslater$/,\n resolve: (__: any, _: string, months: string) => {\n return {\n label: __('DateRange.monthslater', {months}),\n startDate: (now: moment.Moment) => {\n return now.startOf('month');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('month').add(months, 'months').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)quartersago$/,\n resolve: (__: any, _: string, quarters: string) => {\n return {\n label: __('DateRange.quartersago', {quarters}),\n startDate: (now: moment.Moment) => {\n return now.startOf('quarters').add(-quarters, 'quarters');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(-1, 'days').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)quarterslater$/,\n resolve: (__: any, _: string, quarters: string) => {\n return {\n label: __('DateRange.quarterslater', {quarters}),\n startDate: (now: moment.Moment) => {\n return now.startOf('quarter');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('quarter').add(quarters, 'quarters').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)yearsago$/,\n resolve: (__: any, _: string, years: string) => {\n return {\n label: __('DateRange.yearsago', {years}),\n startDate: (now: moment.Moment) => {\n return now.startOf('years').add(-years, 'years');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('year').add(-1, 'days').endOf('day');\n }\n };\n }\n },\n {\n regexp: /^(\\d+)yearslater$/,\n resolve: (__: any, _: string, years: string) => {\n return {\n label: __('DateRange.yearslater', {years}),\n startDate: (now: moment.Moment) => {\n return now.startOf('year');\n },\n endDate: (now: moment.Moment) => {\n return now.startOf('year').add(years, 'years').endOf('day');\n }\n };\n }\n }\n];\n\nexport class DateRangePicker extends React.Component<\n DateRangePickerProps,\n DateRangePickerState\n> {\n static defaultProps = {\n placeholder: 'DateRange.placeholder',\n format: 'X',\n inputFormat: 'YYYY-MM-DD',\n joinValues: true,\n clearable: true,\n delimiter: ',',\n ranges: 'yesterday,7daysago,prevweek,thismonth,prevmonth,prevquarter',\n resetValue: '',\n closeOnSelect: true,\n overlayPlacement: 'auto'\n };\n\n innerDom: any;\n popover: any;\n input?: HTMLInputElement;\n\n // 是否是第一次点击,如果是第一次点击就可以点任意地址\n isFirstClick: boolean = true;\n\n static formatValue(\n newValue: any,\n format: string,\n joinValues: boolean,\n delimiter: string,\n utc = false\n ) {\n newValue = [\n (utc ? moment.utc(newValue.startDate) : newValue.startDate).format(\n format\n ),\n (utc ? moment.utc(newValue.endDate) : newValue.endDate).format(format)\n ];\n\n if (joinValues) {\n newValue = newValue.join(delimiter);\n }\n\n return newValue;\n }\n\n static unFormatValue(\n value: any,\n format: string,\n joinValues: boolean,\n delimiter: string\n ) {\n if (!value) {\n return {\n startDate: undefined,\n endDate: undefined\n };\n }\n\n if (joinValues && typeof value === 'string') {\n value = value.split(delimiter);\n }\n\n return {\n startDate: value[0] ? moment(value[0], format) : undefined,\n endDate: value[1] ? moment(value[1], format) : undefined\n };\n }\n\n dom: React.RefObject<HTMLDivElement>;\n nextMonth = moment().add(1, 'months');\n\n constructor(props: DateRangePickerProps) {\n super(props);\n\n this.open = this.open.bind(this);\n this.close = this.close.bind(this);\n this.handleSelectChange = this.handleSelectChange.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n this.checkStartIsValidDate = this.checkStartIsValidDate.bind(this);\n this.checkEndIsValidDate = this.checkEndIsValidDate.bind(this);\n this.confirm = this.confirm.bind(this);\n this.clearValue = this.clearValue.bind(this);\n this.dom = React.createRef();\n this.handleClick = this.handleClick.bind(this);\n this.handleKeyPress = this.handleKeyPress.bind(this);\n this.handlePopOverClick = this.handlePopOverClick.bind(this);\n this.renderDay = this.renderDay.bind(this);\n this.renderQuarter = this.renderQuarter.bind(this);\n this.handleMobileChange = this.handleMobileChange.bind(this);\n const {format, joinValues, delimiter, value} = this.props;\n\n this.state = {\n isOpened: false,\n isFocused: false,\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n };\n }\n\n componentDidUpdate(prevProps: DateRangePickerProps) {\n const props = this.props;\n const {value, format, joinValues, delimiter} = props;\n\n if (prevProps.value !== value) {\n this.setState({\n ...DateRangePicker.unFormatValue(value, format, joinValues, delimiter)\n });\n }\n }\n\n focus() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.focus();\n }\n\n blur() {\n if (!this.dom.current || this.props.disabled) {\n return;\n }\n\n this.dom.current.blur();\n }\n\n handleFocus(e: React.SyntheticEvent<HTMLDivElement>) {\n this.setState({\n isFocused: true\n });\n const {onFocus} = this.props;\n onFocus && onFocus(e);\n }\n\n handleBlur(e: React.SyntheticEvent<HTMLDivElement>) {\n this.setState({\n isFocused: false\n });\n const {onBlur} = this.props;\n onBlur && onBlur(e);\n }\n\n open() {\n if (this.props.disabled) {\n return;\n }\n\n this.setState({\n isOpened: true\n });\n }\n\n close() {\n this.setState(\n {\n isOpened: false\n },\n this.blur\n );\n }\n\n handleClick() {\n this.state.isOpened ? this.close() : this.open();\n }\n\n handlePopOverClick(e: React.MouseEvent<any>) {\n e.stopPropagation();\n e.preventDefault();\n }\n\n handleKeyPress(e: React.KeyboardEvent) {\n if (e.key === ' ') {\n this.handleClick();\n e.preventDefault();\n }\n }\n\n confirm() {\n if (!this.state.startDate || !this.state.endDate) {\n return;\n } else if (this.state.startDate.isAfter(this.state.endDate)) {\n return;\n }\n\n this.props.onChange(\n DateRangePicker.formatValue(\n {\n startDate: this.state.startDate,\n endDate: this.state.endDate\n },\n this.props.format,\n this.props.joinValues,\n this.props.delimiter,\n this.props.utc\n )\n );\n this.close();\n }\n\n filterDate(\n date: moment.Moment,\n originValue?: moment.Moment,\n timeFormat?: string,\n type: 'start' | 'end' = 'start'\n ): moment.Moment {\n let value = date.clone();\n\n // 没有初始值\n if (!originValue) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n } else if (typeof timeFormat === 'string' && /ss/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('second');\n } else if (typeof timeFormat === 'string' && /mm/.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('minute');\n } else if (typeof timeFormat === 'string' && /HH/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('hour');\n } else if (typeof timeFormat === 'string' && /Q/i.test(timeFormat)) {\n value = value[type === 'start' ? 'startOf' : 'endOf']('quarter');\n } else {\n value = value[type === 'start' ? 'startOf' : 'endOf']('day');\n }\n\n return value;\n }\n\n handleSelectChange(newValue: moment.Moment) {\n const {embed, timeFormat, minDuration, maxDuration, minDate} = this.props;\n let {startDate, endDate} = this.state;\n\n // 第一次点击只标记起始时间,或者点击了开始时间前面的时间\n if (this.isFirstClick || newValue.isBefore(startDate)) {\n // 这种情况说明第二次点击点击了前面的时间,这时要标记为第二次点击\n if (newValue.isBefore(startDate)) {\n this.isFirstClick = true;\n }\n if (minDate && newValue.isBefore(minDate)) {\n newValue = minDate;\n }\n this.setState({\n startDate: this.filterDate(\n newValue,\n startDate || minDate,\n timeFormat,\n 'start'\n ),\n endDate: undefined\n });\n } else {\n // 第二次点击作为结束时间\n if (!startDate) {\n // 不大可能,但只能作为开始时间了\n startDate = newValue;\n }\n\n if (minDuration && newValue.isAfter(startDate.clone().add(minDuration))) {\n newValue = startDate.clone().add(minDuration);\n }\n if (\n maxDuration &&\n newValue.isBefore(startDate.clone().add(maxDuration))\n ) {\n newValue = startDate.clone().add(maxDuration);\n }\n this.setState(\n {\n endDate: this.filterDate(newValue, endDate, timeFormat, 'end')\n },\n () => {\n embed && this.confirm();\n }\n );\n }\n\n this.isFirstClick = !this.isFirstClick;\n }\n\n handleMobileChange(data: any, callback?: () => void) {\n this.setState(\n {\n startDate: data.startDate,\n endDate: data.endDate\n },\n callback\n );\n }\n\n selectRannge(range: PlainObject) {\n const {closeOnSelect, minDate, maxDate} = this.props;\n const now = moment();\n this.setState(\n {\n startDate:\n minDate && minDate.isValid()\n ? moment.max(range.startDate(now.clone()), minDate)\n : range.startDate(now.clone()),\n endDate:\n maxDate && maxDate.isValid()\n ? moment.min(maxDate, range.endDate(now.clone()))\n : range.endDate(now.clone())\n },\n closeOnSelect ? this.confirm : noop\n );\n }\n\n renderRanges(ranges: string | Array<ShortCuts> | undefined) {\n if (!ranges) {\n return null;\n }\n const {classPrefix: ns} = this.props;\n let rangeArr: Array<string | ShortCuts>;\n if (typeof ranges === 'string') {\n rangeArr = ranges.split(',');\n } else {\n rangeArr = ranges;\n }\n const __ = this.props.translate;\n\n return (\n <ul className={`${ns}DateRangePicker-rangers`}>\n {rangeArr.map(item => {\n if (!item) {\n return null;\n }\n let range: PlainObject = {};\n if (typeof item === 'string') {\n if (availableRanges[item]) {\n range = availableRanges[item];\n range.key = item;\n } else {\n // 通过正则尝试匹配\n for (let i = 0, len = advancedRanges.length; i < len; i++) {\n let value = advancedRanges[i];\n const m = value.regexp.exec(item);\n if (m) {\n range = value.resolve.apply(item, [__, ...m]);\n range.key = item;\n }\n }\n }\n } else if (\n (item as ShortCutDateRange).startDate &&\n (item as ShortCutDateRange).endDate\n ) {\n range = {\n ...item,\n startDate: () => (item as ShortCutDateRange).startDate,\n endDate: () => (item as ShortCutDateRange).endDate\n };\n }\n return (\n <li\n className={`${ns}DateRangePicker-ranger`}\n onClick={() => this.selectRannge(range)}\n key={range.key || range.label}\n >\n <a>{__(range.label)}</a>\n </li>\n );\n })}\n </ul>\n );\n }\n\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n e.stopPropagation();\n const {resetValue, onChange} = this.props;\n\n onChange(resetValue);\n }\n\n checkStartIsValidDate(currentDate: moment.Moment) {\n let {endDate, startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n maxDate =\n maxDate && endDate\n ? maxDate.isBefore(endDate)\n ? maxDate\n : endDate\n : undefined;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n // 如果配置了 minDuration 那么 EndDate - minDuration 之后的天数也不能选\n endDate &&\n minDuration &&\n currentDate.isAfter(endDate.clone().subtract(minDuration))\n ) {\n return false;\n } else if (\n endDate &&\n maxDuration &&\n currentDate.isBefore(endDate.clone().subtract(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n checkEndIsValidDate(currentDate: moment.Moment) {\n let {startDate} = this.state;\n let {minDate, maxDate, minDuration, maxDuration, viewMode} = this.props;\n const precision = viewMode === 'time' ? 'hours' : viewMode || 'day';\n\n minDate =\n minDate && startDate\n ? minDate.isAfter(startDate)\n ? minDate\n : startDate\n : undefined;\n\n if (minDate && currentDate.isBefore(minDate, precision)) {\n return false;\n } else if (maxDate && currentDate.isAfter(maxDate, precision)) {\n return false;\n } else if (\n startDate &&\n minDuration &&\n currentDate.isBefore(startDate.clone().add(minDuration))\n ) {\n return false;\n } else if (\n startDate &&\n maxDuration &&\n currentDate.isAfter(startDate.clone().add(maxDuration))\n ) {\n return false;\n }\n\n return true;\n }\n\n renderDay(props: any, currentDate: moment.Moment) {\n let {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'day', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return <td {...props}>{currentDate.date()}</td>;\n }\n\n renderQuarter(props: any, quarter: number, year: number) {\n const currentDate = moment().year(year).quarter(quarter);\n const {startDate, endDate} = this.state;\n\n if (\n startDate &&\n endDate &&\n currentDate.isBetween(startDate, endDate, 'quarter', '[]')\n ) {\n props.className += ' rdtBetween';\n }\n\n return (\n <td {...props}>\n <span>Q{quarter}</span>\n </td>\n );\n }\n\n renderCalendar() {\n const {\n classPrefix: ns,\n classnames: cx,\n dateFormat,\n timeFormat,\n inputFormat,\n ranges,\n locale,\n embed,\n viewMode = 'days'\n } = this.props;\n const __ = this.props.translate;\n\n const {startDate, endDate} = this.state;\n return (\n <div className={`${ns}DateRangePicker-wrap`}>\n {this.renderRanges(ranges)}\n\n <Calendar\n className={`${ns}DateRangePicker-start`}\n value={startDate}\n onChange={this.handleSelectChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n isValidDate={this.checkStartIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n <Calendar\n className={`${ns}DateRangePicker-end`}\n value={endDate}\n onChange={this.handleSelectChange}\n requiredConfirm={false}\n dateFormat={dateFormat}\n inputFormat={inputFormat}\n timeFormat={timeFormat}\n viewDate={this.nextMonth}\n isEndDate\n isValidDate={this.checkEndIsValidDate}\n viewMode={viewMode}\n input={false}\n onClose={this.close}\n renderDay={this.renderDay}\n renderQuarter={this.renderQuarter}\n locale={locale}\n />\n\n {embed ? null : (\n <div key=\"button\" className={`${ns}DateRangePicker-actions`}>\n <a className={cx('Button', 'Button--default')} onClick={this.close}>\n {__('cancel')}\n </a>\n <a\n className={cx('Button', 'Button--primary', 'm-l-sm', {\n 'is-disabled': !this.state.startDate || !this.state.endDate\n })}\n onClick={this.confirm}\n >\n {__('confirm')}\n </a>\n </div>\n )}\n </div>\n );\n }\n\n render() {\n const {\n className,\n popoverClassName,\n classPrefix: ns,\n value,\n placeholder,\n popOverContainer,\n inputFormat,\n format,\n joinValues,\n delimiter,\n clearable,\n disabled,\n embed,\n overlayPlacement,\n borderMode,\n useMobileUI,\n timeFormat,\n minDate,\n maxDate,\n minDuration,\n maxDuration,\n dateFormat,\n viewMode = 'days',\n ranges\n } = this.props;\n const useCalendarMobile =\n useMobileUI &&\n isMobile() &&\n ['days', 'months', 'quarters'].indexOf(viewMode) > -1;\n\n const {isOpened, isFocused, startDate, endDate} = this.state;\n\n const selectedDate = DateRangePicker.unFormatValue(\n value,\n format,\n joinValues,\n delimiter\n );\n const startViewValue = selectedDate.startDate\n ? selectedDate.startDate.format(inputFormat)\n : '';\n const endViewValue = selectedDate.endDate\n ? selectedDate.endDate.format(inputFormat)\n : '';\n const arr = [];\n startViewValue && arr.push(startViewValue);\n endViewValue && arr.push(endViewValue);\n const __ = this.props.translate;\n\n const calendarMobile = (\n <CalendarMobile\n timeFormat={timeFormat}\n inputFormat={inputFormat}\n startDate={startDate}\n endDate={endDate}\n minDate={minDate}\n maxDate={maxDate}\n minDuration={minDuration}\n maxDuration={maxDuration}\n dateFormat={dateFormat}\n embed={embed}\n viewMode={viewMode}\n close={this.close}\n confirm={this.confirm}\n onChange={this.handleMobileChange}\n footerExtra={this.renderRanges(ranges)}\n showViewMode={\n viewMode === 'quarters' || viewMode === 'months' ? 'years' : 'months'\n }\n />\n );\n\n if (embed) {\n return (\n <div\n className={cx(\n `${ns}DateRangeCalendar`,\n {\n 'is-disabled': disabled\n },\n className\n )}\n >\n {useCalendarMobile ? calendarMobile : this.renderCalendar()}\n </div>\n );\n }\n\n const CalendarMobileTitle = (\n <div className={`${ns}CalendarMobile-title`}>\n {__('Calendar.datepicker')}\n </div>\n );\n\n return (\n <div\n tabIndex={0}\n onKeyPress={this.handleKeyPress}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n className={cx(\n `${ns}DateRangePicker`,\n {\n 'is-disabled': disabled,\n 'is-focused': isFocused,\n [`${ns}DateRangePicker--border${ucFirst(borderMode)}`]: borderMode,\n 'is-mobile': useMobileUI && isMobile()\n },\n className\n )}\n ref={this.dom}\n onClick={this.handleClick}\n >\n {arr.length ? (\n <span className={`${ns}DateRangePicker-value`}>\n {arr.join(__('DateRange.valueConcat'))}\n </span>\n ) : (\n <span className={`${ns}DateRangePicker-placeholder`}>\n {__(placeholder)}\n </span>\n )}\n\n {clearable && !disabled && value ? (\n <a className={`${ns}DateRangePicker-clear`} onClick={this.clearValue}>\n <Icon icon=\"input-clear\" className=\"icon\" />\n </a>\n ) : null}\n\n <a className={`${ns}DateRangePicker-toggler`}>\n <Icon icon=\"clock\" className=\"icon\" />\n </a>\n\n {isOpened ? (\n useMobileUI && isMobile() ? (\n <PopUp\n isShow={isOpened}\n container={popOverContainer}\n className={cx(`${ns}CalendarMobile-pop`)}\n onHide={this.close}\n header={CalendarMobileTitle}\n >\n {useCalendarMobile ? calendarMobile : this.renderCalendar()}\n </PopUp>\n ) : (\n <Overlay\n target={() => this.dom.current}\n onHide={this.close}\n container={popOverContainer || (() => findDOMNode(this))}\n rootClose={false}\n placement={overlayPlacement}\n show\n >\n <PopOver\n classPrefix={ns}\n className={cx(`${ns}DateRangePicker-popover`, popoverClassName)}\n onHide={this.close}\n onClick={this.handlePopOverClick}\n overlay\n >\n {this.renderCalendar()}\n </PopOver>\n </Overlay>\n )\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(localeable(DateRangePicker));\n"
12
12
  ]
13
13
  }
@@ -32,7 +32,7 @@ var Drawer = /** @class */ (function (_super) {
32
32
  document.body.scrollHeight > document.body.clientHeight) {
33
33
  var scrollbarWidth = (0, helper_1.getScrollbarWidth)();
34
34
  if (scrollbarWidth) {
35
- document.body.style.width = "calc(100% - " + scrollbarWidth + "px)";
35
+ document.body.style.width = "calc(100% - ".concat(scrollbarWidth, "px)");
36
36
  }
37
37
  }
38
38
  };
@@ -56,7 +56,7 @@ var Drawer = /** @class */ (function (_super) {
56
56
  _this.modalDom = ref;
57
57
  if (ref) {
58
58
  (0, ModalManager_1.addModal)(_this);
59
- ref.classList.add(_this.props.classPrefix + "Modal--" + (0, ModalManager_1.current)() + "th");
59
+ ref.classList.add("".concat(_this.props.classPrefix, "Modal--").concat((0, ModalManager_1.current)(), "th"));
60
60
  }
61
61
  else {
62
62
  (0, ModalManager_1.removeModal)(_this);
@@ -99,7 +99,7 @@ var Drawer = /** @class */ (function (_super) {
99
99
  target &&
100
100
  this.modalDom &&
101
101
  ((!this.modalDom.contains(target) && !target.closest('[role=dialog]')) ||
102
- (target.matches("." + ns + "Drawer-overlay") &&
102
+ (target.matches(".".concat(ns, "Drawer-overlay")) &&
103
103
  target.parentElement === this.modalDom))); // 干脆过滤掉来自弹框里面的点击
104
104
  };
105
105
  Drawer.prototype.handleRootClick = function (e) {
@@ -130,14 +130,14 @@ var Drawer = /** @class */ (function (_super) {
130
130
  // 否则看不到动画。
131
131
  _this.contentDom.offsetWidth;
132
132
  }
133
- return (react_1.default.createElement("div", { ref: _this.modalRef, role: "dialog", className: (0, classnames_1.default)("amis-dialog-widget " + ns + "Drawer", (_a = {},
134
- _a[ns + "Drawer--" + position] = position,
135
- _a[ns + "Drawer--" + size] = size,
136
- _a[ns + "Drawer--noOverlay"] = !overlay,
133
+ return (react_1.default.createElement("div", { ref: _this.modalRef, role: "dialog", className: (0, classnames_1.default)("amis-dialog-widget ".concat(ns, "Drawer"), (_a = {},
134
+ _a["".concat(ns, "Drawer--").concat(position)] = position,
135
+ _a["".concat(ns, "Drawer--").concat(size)] = size,
136
+ _a["".concat(ns, "Drawer--noOverlay")] = !overlay,
137
137
  _a), className) },
138
- overlay ? (react_1.default.createElement("div", { className: (0, classnames_1.default)(ns + "Drawer-overlay", fadeStyles[status]) })) : null,
139
- react_1.default.createElement("div", { ref: _this.contentRef, style: bodyStyle, className: (0, classnames_1.default)(ns + "Drawer-content", bodyClassName, fadeStyles[status]) },
140
- show && showCloseButton ? (react_1.default.createElement("a", { onClick: disabled ? undefined : onHide, className: ns + "Drawer-close" },
138
+ overlay ? (react_1.default.createElement("div", { className: (0, classnames_1.default)("".concat(ns, "Drawer-overlay"), fadeStyles[status]) })) : null,
139
+ react_1.default.createElement("div", { ref: _this.contentRef, style: bodyStyle, className: (0, classnames_1.default)("".concat(ns, "Drawer-content"), bodyClassName, fadeStyles[status]) },
140
+ show && showCloseButton ? (react_1.default.createElement("a", { onClick: disabled ? undefined : onHide, className: "".concat(ns, "Drawer-close") },
141
141
  react_1.default.createElement(icons_1.Icon, { icon: "close", className: "icon" }))) : null,
142
142
  status === Transition_1.EXITED ? null : children)));
143
143
  })));