@mirai/ui 2.0.43 → 2.1.1

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 (361) hide show
  1. package/build/components/Action/Action.js +24 -30
  2. package/build/components/Action/Action.js.map +1 -1
  3. package/build/components/Action/Action.stories.js +3 -6
  4. package/build/components/Action/Action.stories.js.map +1 -1
  5. package/build/components/Action/index.js +1 -1
  6. package/build/components/Action/index.js.map +1 -1
  7. package/build/components/Button/Button.js +32 -39
  8. package/build/components/Button/Button.js.map +1 -1
  9. package/build/components/Button/Button.stories.js +25 -48
  10. package/build/components/Button/Button.stories.js.map +1 -1
  11. package/build/components/Button/index.js +1 -1
  12. package/build/components/Button/index.js.map +1 -1
  13. package/build/components/Calendar/Calendar.Month.js +45 -57
  14. package/build/components/Calendar/Calendar.Month.js.map +1 -1
  15. package/build/components/Calendar/Calendar.Week.js +54 -83
  16. package/build/components/Calendar/Calendar.Week.js.map +1 -1
  17. package/build/components/Calendar/Calendar.Weekdays.js +15 -15
  18. package/build/components/Calendar/Calendar.Weekdays.js.map +1 -1
  19. package/build/components/Calendar/Calendar.constants.js +2 -4
  20. package/build/components/Calendar/Calendar.constants.js.map +1 -1
  21. package/build/components/Calendar/Calendar.js +110 -162
  22. package/build/components/Calendar/Calendar.js.map +1 -1
  23. package/build/components/Calendar/Calendar.stories.js +75 -90
  24. package/build/components/Calendar/Calendar.stories.js.map +1 -1
  25. package/build/components/Calendar/helpers/getFirstDateOfMonth.js +2 -2
  26. package/build/components/Calendar/helpers/getFirstDateOfMonth.js.map +1 -1
  27. package/build/components/Calendar/helpers/getFirstDateOfWeek.js +6 -6
  28. package/build/components/Calendar/helpers/getFirstDateOfWeek.js.map +1 -1
  29. package/build/components/Calendar/helpers/getFirstDayOfWeek.js +5 -5
  30. package/build/components/Calendar/helpers/getFirstDayOfWeek.js.map +1 -1
  31. package/build/components/Calendar/helpers/getHeader.js +6 -6
  32. package/build/components/Calendar/helpers/getHeader.js.map +1 -1
  33. package/build/components/Calendar/helpers/getMonthRef.js +9 -8
  34. package/build/components/Calendar/helpers/getMonthRef.js.map +1 -1
  35. package/build/components/Calendar/helpers/getScrollTo.js +8 -15
  36. package/build/components/Calendar/helpers/getScrollTo.js.map +1 -1
  37. package/build/components/Calendar/helpers/getToday.js +1 -3
  38. package/build/components/Calendar/helpers/getToday.js.map +1 -1
  39. package/build/components/Calendar/helpers/getWeekDays.js +8 -8
  40. package/build/components/Calendar/helpers/getWeekDays.js.map +1 -1
  41. package/build/components/Calendar/helpers/getWeekNumber.js +3 -3
  42. package/build/components/Calendar/helpers/getWeekNumber.js.map +1 -1
  43. package/build/components/Calendar/helpers/index.js +9 -9
  44. package/build/components/Calendar/helpers/index.js.map +1 -1
  45. package/build/components/Calendar/index.js +1 -1
  46. package/build/components/Calendar/index.js.map +1 -1
  47. package/build/components/Form/Form.constants.js +5 -10
  48. package/build/components/Form/Form.constants.js.map +1 -1
  49. package/build/components/Form/Form.js +86 -118
  50. package/build/components/Form/Form.js.map +1 -1
  51. package/build/components/Form/Form.stories.js +47 -83
  52. package/build/components/Form/Form.stories.js.map +1 -1
  53. package/build/components/Form/helpers/getChildrenErrors.js +18 -22
  54. package/build/components/Form/helpers/getChildrenErrors.js.map +1 -1
  55. package/build/components/Form/helpers/getChildrenValues.js +15 -22
  56. package/build/components/Form/helpers/getChildrenValues.js.map +1 -1
  57. package/build/components/Form/helpers/getField.js +5 -4
  58. package/build/components/Form/helpers/getField.js.map +1 -1
  59. package/build/components/Form/helpers/groupState.js +8 -10
  60. package/build/components/Form/helpers/groupState.js.map +1 -1
  61. package/build/components/Form/helpers/index.js +4 -4
  62. package/build/components/Form/helpers/index.js.map +1 -1
  63. package/build/components/Form/index.js +1 -1
  64. package/build/components/Form/index.js.map +1 -1
  65. package/build/components/InputDate/InputDate.js +23 -38
  66. package/build/components/InputDate/InputDate.js.map +1 -1
  67. package/build/components/InputDate/InputDate.stories.js +18 -34
  68. package/build/components/InputDate/InputDate.stories.js.map +1 -1
  69. package/build/components/InputDate/helpers/formatValue.js +11 -13
  70. package/build/components/InputDate/helpers/formatValue.js.map +1 -1
  71. package/build/components/InputDate/helpers/index.js +1 -1
  72. package/build/components/InputDate/helpers/index.js.map +1 -1
  73. package/build/components/InputDate/index.js +1 -1
  74. package/build/components/InputDate/index.js.map +1 -1
  75. package/build/components/InputNumber/InputNumber.js +31 -44
  76. package/build/components/InputNumber/InputNumber.js.map +1 -1
  77. package/build/components/InputNumber/InputNumber.stories.js +8 -20
  78. package/build/components/InputNumber/InputNumber.stories.js.map +1 -1
  79. package/build/components/InputNumber/index.js +1 -1
  80. package/build/components/InputNumber/index.js.map +1 -1
  81. package/build/components/InputOption/InputOption.constants.js +3 -6
  82. package/build/components/InputOption/InputOption.constants.js.map +1 -1
  83. package/build/components/InputOption/InputOption.js +34 -38
  84. package/build/components/InputOption/InputOption.js.map +1 -1
  85. package/build/components/InputOption/InputOption.stories.js +8 -20
  86. package/build/components/InputOption/InputOption.stories.js.map +1 -1
  87. package/build/components/InputOption/index.js +2 -2
  88. package/build/components/InputOption/index.js.map +1 -1
  89. package/build/components/InputPhone/InputPhone.js +99 -143
  90. package/build/components/InputPhone/InputPhone.js.map +1 -1
  91. package/build/components/InputPhone/InputPhone.stories.js +22 -45
  92. package/build/components/InputPhone/InputPhone.stories.js.map +1 -1
  93. package/build/components/InputPhone/helpers/index.js +2 -2
  94. package/build/components/InputPhone/helpers/index.js.map +1 -1
  95. package/build/components/InputPhone/helpers/parseValue.js +8 -17
  96. package/build/components/InputPhone/helpers/parseValue.js.map +1 -1
  97. package/build/components/InputPhone/helpers/sanitizePrefixes.js +4 -12
  98. package/build/components/InputPhone/helpers/sanitizePrefixes.js.map +1 -1
  99. package/build/components/InputPhone/index.js +1 -1
  100. package/build/components/InputPhone/index.js.map +1 -1
  101. package/build/components/InputSelect/InputSelect.js +47 -70
  102. package/build/components/InputSelect/InputSelect.js.map +1 -1
  103. package/build/components/InputSelect/InputSelect.stories.js +12 -26
  104. package/build/components/InputSelect/InputSelect.stories.js.map +1 -1
  105. package/build/components/InputSelect/index.js +1 -1
  106. package/build/components/InputSelect/index.js.map +1 -1
  107. package/build/components/InputSelect/partials/InputSelect.Expand.js +3 -3
  108. package/build/components/InputSelect/partials/InputSelect.Expand.js.map +1 -1
  109. package/build/components/InputSelect/partials/index.js +1 -1
  110. package/build/components/InputSelect/partials/index.js.map +1 -1
  111. package/build/components/InputText/InputText.js +54 -87
  112. package/build/components/InputText/InputText.js.map +1 -1
  113. package/build/components/InputText/InputText.stories.js +17 -36
  114. package/build/components/InputText/InputText.stories.js.map +1 -1
  115. package/build/components/InputText/index.js +1 -1
  116. package/build/components/InputText/index.js.map +1 -1
  117. package/build/components/InputText/partials/InputText.Hint.js +8 -9
  118. package/build/components/InputText/partials/InputText.Hint.js.map +1 -1
  119. package/build/components/InputText/partials/InputText.IconState.js +10 -8
  120. package/build/components/InputText/partials/InputText.IconState.js.map +1 -1
  121. package/build/components/InputText/partials/InputText.Label.js +13 -15
  122. package/build/components/InputText/partials/InputText.Label.js.map +1 -1
  123. package/build/components/InputText/partials/index.js +3 -3
  124. package/build/components/InputText/partials/index.js.map +1 -1
  125. package/build/components/Menu/Menu.Option.js +14 -15
  126. package/build/components/Menu/Menu.Option.js.map +1 -1
  127. package/build/components/Menu/Menu.js +30 -41
  128. package/build/components/Menu/Menu.js.map +1 -1
  129. package/build/components/Menu/Menu.stories.js +9 -23
  130. package/build/components/Menu/Menu.stories.js.map +1 -1
  131. package/build/components/Menu/index.js +1 -1
  132. package/build/components/Menu/index.js.map +1 -1
  133. package/build/components/Modal/Modal.constants.js +2 -4
  134. package/build/components/Modal/Modal.constants.js.map +1 -1
  135. package/build/components/Modal/Modal.js +70 -103
  136. package/build/components/Modal/Modal.js.map +1 -1
  137. package/build/components/Modal/Modal.stories.js +15 -36
  138. package/build/components/Modal/Modal.stories.js.map +1 -1
  139. package/build/components/Modal/index.js +2 -2
  140. package/build/components/Modal/index.js.map +1 -1
  141. package/build/components/Notification/Notification.js +24 -26
  142. package/build/components/Notification/Notification.js.map +1 -1
  143. package/build/components/Notification/Notification.stories.js +14 -17
  144. package/build/components/Notification/Notification.stories.js.map +1 -1
  145. package/build/components/Notification/index.js +1 -1
  146. package/build/components/Notification/index.js.map +1 -1
  147. package/build/components/Progress/Progress.js +11 -15
  148. package/build/components/Progress/Progress.js.map +1 -1
  149. package/build/components/Progress/Progress.stories.js +4 -7
  150. package/build/components/Progress/Progress.stories.js.map +1 -1
  151. package/build/components/Progress/index.js +1 -1
  152. package/build/components/Progress/index.js.map +1 -1
  153. package/build/components/Slider/Slider.Item.js +17 -25
  154. package/build/components/Slider/Slider.Item.js.map +1 -1
  155. package/build/components/Slider/Slider.constants.js +2 -4
  156. package/build/components/Slider/Slider.constants.js.map +1 -1
  157. package/build/components/Slider/Slider.js +78 -130
  158. package/build/components/Slider/Slider.js.map +1 -1
  159. package/build/components/Slider/Slider.stories.js +25 -30
  160. package/build/components/Slider/Slider.stories.js.map +1 -1
  161. package/build/components/Slider/index.js +1 -1
  162. package/build/components/Slider/index.js.map +1 -1
  163. package/build/components/Table/Table.ColumnFilter.js +77 -116
  164. package/build/components/Table/Table.ColumnFilter.js.map +1 -1
  165. package/build/components/Table/Table.Filter.js +31 -41
  166. package/build/components/Table/Table.Filter.js.map +1 -1
  167. package/build/components/Table/Table.Row.js +48 -65
  168. package/build/components/Table/Table.Row.js.map +1 -1
  169. package/build/components/Table/Table.constants.js +4 -7
  170. package/build/components/Table/Table.constants.js.map +1 -1
  171. package/build/components/Table/Table.js +96 -125
  172. package/build/components/Table/Table.js.map +1 -1
  173. package/build/components/Table/Table.stories.js +38 -70
  174. package/build/components/Table/Table.stories.js.map +1 -1
  175. package/build/components/Table/helpers/index.js +2 -2
  176. package/build/components/Table/helpers/index.js.map +1 -1
  177. package/build/components/Table/helpers/select.js +54 -68
  178. package/build/components/Table/helpers/select.js.map +1 -1
  179. package/build/components/Table/helpers/storage.js +5 -6
  180. package/build/components/Table/helpers/storage.js.map +1 -1
  181. package/build/components/Table/index.js +1 -1
  182. package/build/components/Table/index.js.map +1 -1
  183. package/build/components/Tooltip/Tooltip.js +63 -84
  184. package/build/components/Tooltip/Tooltip.js.map +1 -1
  185. package/build/components/Tooltip/Tooltip.stories.js +87 -100
  186. package/build/components/Tooltip/Tooltip.stories.js.map +1 -1
  187. package/build/components/Tooltip/helpers/index.js +1 -1
  188. package/build/components/Tooltip/helpers/index.js.map +1 -1
  189. package/build/components/Tooltip/helpers/isPressableInstance.js +6 -5
  190. package/build/components/Tooltip/helpers/isPressableInstance.js.map +1 -1
  191. package/build/components/Tooltip/index.js +1 -1
  192. package/build/components/Tooltip/index.js.map +1 -1
  193. package/build/components/components.customElements.js.map +1 -1
  194. package/build/components/index.js +17 -17
  195. package/build/components/index.js.map +1 -1
  196. package/build/helpers/CustomElement.js +9 -29
  197. package/build/helpers/CustomElement.js.map +1 -1
  198. package/build/helpers/getIconState.js +6 -5
  199. package/build/helpers/getIconState.js.map +1 -1
  200. package/build/helpers/getInputDateErrors.js +10 -10
  201. package/build/helpers/getInputDateErrors.js.map +1 -1
  202. package/build/helpers/getInputErrors.js +25 -28
  203. package/build/helpers/getInputErrors.js.map +1 -1
  204. package/build/helpers/getInputPhoneErrors.js +11 -13
  205. package/build/helpers/getInputPhoneErrors.js.map +1 -1
  206. package/build/helpers/getNavigator.js +10 -10
  207. package/build/helpers/getNavigator.js.map +1 -1
  208. package/build/helpers/index.js +9 -9
  209. package/build/helpers/index.js.map +1 -1
  210. package/build/helpers/isJest.js +4 -6
  211. package/build/helpers/isJest.js.map +1 -1
  212. package/build/helpers/isPlaywright.js +3 -4
  213. package/build/helpers/isPlaywright.js.map +1 -1
  214. package/build/helpers/isValidDate.js +21 -38
  215. package/build/helpers/isValidDate.js.map +1 -1
  216. package/build/helpers/isValidEmail.js +3 -3
  217. package/build/helpers/isValidEmail.js.map +1 -1
  218. package/build/helpers/isValidPhone.js +9 -8
  219. package/build/helpers/isValidPhone.js.map +1 -1
  220. package/build/helpers/styles.js +3 -7
  221. package/build/helpers/styles.js.map +1 -1
  222. package/build/hooks/helpers/getResolution.js +7 -8
  223. package/build/hooks/helpers/getResolution.js.map +1 -1
  224. package/build/hooks/helpers/index.js +2 -2
  225. package/build/hooks/helpers/index.js.map +1 -1
  226. package/build/hooks/helpers/sanitizePx.js +1 -3
  227. package/build/hooks/helpers/sanitizePx.js.map +1 -1
  228. package/build/hooks/index.js +1 -1
  229. package/build/hooks/index.js.map +1 -1
  230. package/build/hooks/useDevice.js +21 -39
  231. package/build/hooks/useDevice.js.map +1 -1
  232. package/build/hooks/useDevice.stories.js +7 -16
  233. package/build/hooks/useDevice.stories.js.map +1 -1
  234. package/build/index.js +5 -5
  235. package/build/index.js.map +1 -1
  236. package/build/primitives/Checkbox/Checkbox.js +18 -18
  237. package/build/primitives/Checkbox/Checkbox.js.map +1 -1
  238. package/build/primitives/Checkbox/Checkbox.stories.js +8 -20
  239. package/build/primitives/Checkbox/Checkbox.stories.js.map +1 -1
  240. package/build/primitives/Checkbox/index.js +1 -1
  241. package/build/primitives/Checkbox/index.js.map +1 -1
  242. package/build/primitives/Icon/Icon.constants.js +1 -2
  243. package/build/primitives/Icon/Icon.constants.js.map +1 -1
  244. package/build/primitives/Icon/Icon.js +34 -41
  245. package/build/primitives/Icon/Icon.js.map +1 -1
  246. package/build/primitives/Icon/Icon.stories.js +8 -10
  247. package/build/primitives/Icon/Icon.stories.js.map +1 -1
  248. package/build/primitives/Icon/index.js +2 -2
  249. package/build/primitives/Icon/index.js.map +1 -1
  250. package/build/primitives/Input/Input.js +49 -63
  251. package/build/primitives/Input/Input.js.map +1 -1
  252. package/build/primitives/Input/Input.stories.js +14 -29
  253. package/build/primitives/Input/Input.stories.js.map +1 -1
  254. package/build/primitives/Input/helpers/index.js +1 -1
  255. package/build/primitives/Input/helpers/index.js.map +1 -1
  256. package/build/primitives/Input/helpers/parseValue.js +5 -5
  257. package/build/primitives/Input/helpers/parseValue.js.map +1 -1
  258. package/build/primitives/Input/index.js +1 -1
  259. package/build/primitives/Input/index.js.map +1 -1
  260. package/build/primitives/Layer/Layer.js +79 -93
  261. package/build/primitives/Layer/Layer.js.map +1 -1
  262. package/build/primitives/Layer/Layer.stories.js +10 -13
  263. package/build/primitives/Layer/Layer.stories.js.map +1 -1
  264. package/build/primitives/Layer/LayerContent.js +5 -3
  265. package/build/primitives/Layer/LayerContent.js.map +1 -1
  266. package/build/primitives/Layer/helpers/getElementLayout.js +18 -15
  267. package/build/primitives/Layer/helpers/getElementLayout.js.map +1 -1
  268. package/build/primitives/Layer/helpers/getLayerPosition.js +66 -69
  269. package/build/primitives/Layer/helpers/getLayerPosition.js.map +1 -1
  270. package/build/primitives/Layer/helpers/getModalParent.js +10 -9
  271. package/build/primitives/Layer/helpers/getModalParent.js.map +1 -1
  272. package/build/primitives/Layer/helpers/getScrollParent.js +4 -3
  273. package/build/primitives/Layer/helpers/getScrollParent.js.map +1 -1
  274. package/build/primitives/Layer/helpers/index.js +5 -5
  275. package/build/primitives/Layer/helpers/index.js.map +1 -1
  276. package/build/primitives/Layer/helpers/isComponentFixed.js +8 -19
  277. package/build/primitives/Layer/helpers/isComponentFixed.js.map +1 -1
  278. package/build/primitives/Layer/index.js +2 -2
  279. package/build/primitives/Layer/index.js.map +1 -1
  280. package/build/primitives/Pressable/Pressable.constants.js +1 -2
  281. package/build/primitives/Pressable/Pressable.constants.js.map +1 -1
  282. package/build/primitives/Pressable/Pressable.js +34 -44
  283. package/build/primitives/Pressable/Pressable.js.map +1 -1
  284. package/build/primitives/Pressable/Pressable.stories.js +5 -8
  285. package/build/primitives/Pressable/Pressable.stories.js.map +1 -1
  286. package/build/primitives/Pressable/index.js +1 -1
  287. package/build/primitives/Pressable/index.js.map +1 -1
  288. package/build/primitives/Primitive/Primitive.constants.js +4 -8
  289. package/build/primitives/Primitive/Primitive.constants.js.map +1 -1
  290. package/build/primitives/Primitive/Primitive.js +20 -28
  291. package/build/primitives/Primitive/Primitive.js.map +1 -1
  292. package/build/primitives/Primitive/Primitive.stories.js +7 -10
  293. package/build/primitives/Primitive/Primitive.stories.js.map +1 -1
  294. package/build/primitives/Primitive/helpers/getProps.js +8 -17
  295. package/build/primitives/Primitive/helpers/getProps.js.map +1 -1
  296. package/build/primitives/Primitive/helpers/getTag.js +4 -4
  297. package/build/primitives/Primitive/helpers/getTag.js.map +1 -1
  298. package/build/primitives/Primitive/helpers/index.js +2 -2
  299. package/build/primitives/Primitive/helpers/index.js.map +1 -1
  300. package/build/primitives/Primitive/index.js +1 -1
  301. package/build/primitives/Primitive/index.js.map +1 -1
  302. package/build/primitives/Radio/Radio.js +11 -15
  303. package/build/primitives/Radio/Radio.js.map +1 -1
  304. package/build/primitives/Radio/Radio.stories.js +8 -20
  305. package/build/primitives/Radio/Radio.stories.js.map +1 -1
  306. package/build/primitives/Radio/index.js +1 -1
  307. package/build/primitives/Radio/index.js.map +1 -1
  308. package/build/primitives/ScrollView/ScrollView.js +73 -96
  309. package/build/primitives/ScrollView/ScrollView.js.map +1 -1
  310. package/build/primitives/ScrollView/ScrollView.stories.js +12 -17
  311. package/build/primitives/ScrollView/ScrollView.stories.js.map +1 -1
  312. package/build/primitives/ScrollView/index.js +1 -1
  313. package/build/primitives/ScrollView/index.js.map +1 -1
  314. package/build/primitives/Select/Select.js +44 -54
  315. package/build/primitives/Select/Select.js.map +1 -1
  316. package/build/primitives/Select/Select.stories.js +14 -29
  317. package/build/primitives/Select/Select.stories.js.map +1 -1
  318. package/build/primitives/Select/index.js +1 -1
  319. package/build/primitives/Select/index.js.map +1 -1
  320. package/build/primitives/Switch/Switch.js +14 -16
  321. package/build/primitives/Switch/Switch.js.map +1 -1
  322. package/build/primitives/Switch/Switch.stories.js +8 -20
  323. package/build/primitives/Switch/Switch.stories.js.map +1 -1
  324. package/build/primitives/Switch/index.js +1 -1
  325. package/build/primitives/Switch/index.js.map +1 -1
  326. package/build/primitives/Text/Text.js +43 -55
  327. package/build/primitives/Text/Text.js.map +1 -1
  328. package/build/primitives/Text/Text.stories.js +8 -10
  329. package/build/primitives/Text/Text.stories.js.map +1 -1
  330. package/build/primitives/Text/helpers/color.js +13 -12
  331. package/build/primitives/Text/helpers/color.js.map +1 -1
  332. package/build/primitives/Text/helpers/index.js +2 -2
  333. package/build/primitives/Text/helpers/index.js.map +1 -1
  334. package/build/primitives/Text/helpers/parseMarkdown.js +41 -54
  335. package/build/primitives/Text/helpers/parseMarkdown.js.map +1 -1
  336. package/build/primitives/Text/index.js +1 -1
  337. package/build/primitives/Text/index.js.map +1 -1
  338. package/build/primitives/View/View.js +16 -25
  339. package/build/primitives/View/View.js.map +1 -1
  340. package/build/primitives/View/View.stories.js +7 -10
  341. package/build/primitives/View/View.stories.js.map +1 -1
  342. package/build/primitives/View/index.js +1 -1
  343. package/build/primitives/View/index.js.map +1 -1
  344. package/build/primitives/index.js +12 -12
  345. package/build/primitives/index.js.map +1 -1
  346. package/build/primitives/primitives.customElements.js.map +1 -1
  347. package/build/theme/helpers/camelcase.js +3 -5
  348. package/build/theme/helpers/camelcase.js.map +1 -1
  349. package/build/theme/helpers/index.js +2 -2
  350. package/build/theme/helpers/index.js.map +1 -1
  351. package/build/theme/helpers/palette.js +18 -32
  352. package/build/theme/helpers/palette.js.map +1 -1
  353. package/build/theme/index.js +2 -2
  354. package/build/theme/index.js.map +1 -1
  355. package/build/theme/theme.constants.js +16 -23
  356. package/build/theme/theme.constants.js.map +1 -1
  357. package/build/theme/theme.js +61 -81
  358. package/build/theme/theme.js.map +1 -1
  359. package/build/theme/theme.stories.js +25 -38
  360. package/build/theme/theme.stories.js.map +1 -1
  361. package/package.json +18 -15
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
@@ -8,200 +7,155 @@ exports.Calendar = void 0;
8
7
  var _locale = require("@mirai/locale");
9
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
9
  var _react = _interopRequireWildcard(require("react"));
11
- var _helpers = require("../../helpers");
12
- var _hooks = require("../../hooks");
13
- var _primitives = require("../../primitives");
14
10
  var _CalendarModule = _interopRequireDefault(require("./Calendar.module.css"));
15
11
  var _Calendar = require("./Calendar.Month");
16
12
  var _Calendar2 = require("./Calendar.Weekdays");
17
- var _helpers2 = require("./helpers");
18
- var _excluded = ["autoScroll", "disabledDates", "disabledPast", "format", "from", "locale", "range", "rangeMaxDays", "to", "value", "vertical", "onChange", "onFocus", "onNavigation", "onScroll"],
19
- _excluded2 = ["className", "months"];
20
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
22
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
24
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
25
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
26
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
27
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
28
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
29
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
30
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
31
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
32
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
33
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
34
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
35
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
36
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
37
- var Calendar = function Calendar(_ref) {
38
- var _ref$autoScroll = _ref.autoScroll,
39
- autoScroll = _ref$autoScroll === void 0 ? false : _ref$autoScroll,
40
- _ref$disabledDates = _ref.disabledDates,
41
- disabledDates = _ref$disabledDates === void 0 ? [] : _ref$disabledDates,
42
- _ref$disabledPast = _ref.disabledPast,
43
- disabledPast = _ref$disabledPast === void 0 ? true : _ref$disabledPast,
44
- _ref$format = _ref.format,
45
- format = _ref$format === void 0 ? 'YYYY/MM/DD' : _ref$format,
46
- from = _ref.from,
47
- locale = _ref.locale,
48
- _ref$range = _ref.range,
49
- range = _ref$range === void 0 ? false : _ref$range,
50
- rangeMaxDays = _ref.rangeMaxDays,
51
- to = _ref.to,
52
- value = _ref.value,
53
- _ref$vertical = _ref.vertical,
54
- propVertical = _ref$vertical === void 0 ? false : _ref$vertical,
55
- _ref$onChange = _ref.onChange,
56
- onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
57
- _ref$onFocus = _ref.onFocus,
58
- onFocus = _ref$onFocus === void 0 ? function () {} : _ref$onFocus,
59
- _ref$onNavigation = _ref.onNavigation,
60
- onNavigation = _ref$onNavigation === void 0 ? function () {} : _ref$onNavigation,
61
- _ref$onScroll = _ref.onScroll,
62
- onScroll = _ref$onScroll === void 0 ? function () {} : _ref$onScroll,
63
- others = _objectWithoutProperties(_ref, _excluded);
64
- var _useDevice = (0, _hooks.useDevice)(),
65
- isMobile = _useDevice.isMobile;
66
- var _useState = (0, _react.useState)(),
67
- _useState2 = _slicedToArray(_useState, 2),
68
- behavior = _useState2[0],
69
- setBehavior = _useState2[1];
70
- var _useState3 = (0, _react.useState)(),
71
- _useState4 = _slicedToArray(_useState3, 2),
72
- focus = _useState4[0],
73
- setFocus = _useState4[1];
74
- var _useState5 = (0, _react.useState)((0, _helpers2.getFirstDateOfMonth)((0, _helpers2.getToday)())),
75
- _useState6 = _slicedToArray(_useState5, 2),
76
- instance = _useState6[0],
77
- setInstance = _useState6[1];
78
- var _useState7 = (0, _react.useState)(),
79
- _useState8 = _slicedToArray(_useState7, 2),
80
- scrollTo = _useState8[0],
81
- setScrollTo = _useState8[1];
82
- var _useState9 = (0, _react.useState)(),
83
- _useState10 = _slicedToArray(_useState9, 2),
84
- scrolling = _useState10[0],
85
- setScrolling = _useState10[1];
86
- var _useState11 = (0, _react.useState)(range ? [] : undefined),
87
- _useState12 = _slicedToArray(_useState11, 2),
88
- selected = _useState12[0],
89
- setSelected = _useState12[1];
90
- var _useState13 = (0, _react.useState)(),
91
- _useState14 = _slicedToArray(_useState13, 2),
92
- timestamp = _useState14[0],
93
- setTimestamp = _useState14[1];
94
- var _useState15 = (0, _react.useState)(propVertical),
95
- _useState16 = _slicedToArray(_useState15, 2),
96
- vertical = _useState16[0],
97
- setVertical = _useState16[1];
98
- var el = (0, _react.useRef)();
99
- (0, _react.useEffect)(function () {
13
+ var _helpers = require("./helpers");
14
+ var _helpers2 = require("../../helpers");
15
+ var _hooks = require("../../hooks");
16
+ var _primitives = require("../../primitives");
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
21
+ const Calendar = _ref => {
22
+ let {
23
+ autoScroll = false,
24
+ disabledDates = [],
25
+ disabledPast = true,
26
+ format = 'YYYY/MM/DD',
27
+ from,
28
+ locale,
29
+ range = false,
30
+ rangeMaxDays,
31
+ to,
32
+ value,
33
+ vertical: propVertical = false,
34
+ onChange = () => {},
35
+ onFocus = () => {},
36
+ onNavigation = () => {},
37
+ onScroll = () => {},
38
+ ...others
39
+ } = _ref;
40
+ const {
41
+ isMobile
42
+ } = (0, _hooks.useDevice)();
43
+ const [behavior, setBehavior] = (0, _react.useState)();
44
+ const [focus, setFocus] = (0, _react.useState)();
45
+ const [instance, setInstance] = (0, _react.useState)((0, _helpers.getFirstDateOfMonth)((0, _helpers.getToday)()));
46
+ const [scrollTo, setScrollTo] = (0, _react.useState)();
47
+ const [scrolling, setScrolling] = (0, _react.useState)();
48
+ const [selected, setSelected] = (0, _react.useState)(range ? [] : undefined);
49
+ const [timestamp, setTimestamp] = (0, _react.useState)();
50
+ const [vertical, setVertical] = (0, _react.useState)(propVertical);
51
+ const el = (0, _react.useRef)();
52
+ (0, _react.useEffect)(() => {
100
53
  setVertical(propVertical || isMobile);
101
54
  }, [isMobile, propVertical]);
102
- (0, _react.useEffect)(function () {
103
- if (!vertical || !(el !== null && el !== void 0 && el.current) || !value[0]) return;
55
+ (0, _react.useEffect)(() => {
56
+ if (!vertical || !el?.current || !value[0]) return;
104
57
  setBehavior('auto');
105
- setScrollTo((0, _helpers2.getScrollTo)((0, _locale.dateDiff)(instance, (0, _locale.parseDate)(value[0], format)).months));
58
+ setScrollTo((0, _helpers.getScrollTo)((0, _locale.dateDiff)(instance, (0, _locale.parseDate)(value[0], format)).months));
106
59
  // eslint-disable-next-line react-hooks/exhaustive-deps
107
- }, [el === null || el === void 0 ? void 0 : el.current, vertical]);
108
- (0, _react.useEffect)(function () {
109
- var date = range ? (value === null || value === void 0 ? void 0 : value.length) > 0 ? value[0] : undefined : value;
60
+ }, [el?.current, vertical]);
61
+ (0, _react.useEffect)(() => {
62
+ let date = range ? value?.length > 0 ? value[0] : undefined : value;
110
63
  if (from && date) {
111
- var dateFrom = (0, _locale.parseDate)(from, format);
112
- var _dateDiff = (0, _locale.dateDiff)(dateFrom, (0, _locale.parseDate)(date, format)),
113
- days = _dateDiff.days;
64
+ const dateFrom = (0, _locale.parseDate)(from, format);
65
+ const {
66
+ days
67
+ } = (0, _locale.dateDiff)(dateFrom, (0, _locale.parseDate)(date, format));
114
68
  if (days < 0) date = undefined;
115
69
  }
116
70
  if (!date) return setSelected(range ? [] : undefined);
117
71
  date = (0, _locale.parseDate)(date, format);
118
72
  if (range && (selected.length === 0 || value.length === 2) || !range) {
119
- var next = (0, _helpers2.getFirstDateOfMonth)(date);
120
- var _dateDiff2 = (0, _locale.dateDiff)(instance, date),
121
- diffMonths = _dateDiff2.months;
73
+ const next = (0, _helpers.getFirstDateOfMonth)(date);
74
+ const {
75
+ months: diffMonths
76
+ } = (0, _locale.dateDiff)(instance, date);
122
77
  if (!vertical && !isMobile && (diffMonths >= months || diffMonths < 0)) setInstance(next);else if (vertical || isMobile) {
123
- autoScroll && setScrollTo((0, _helpers2.getScrollTo)(diffMonths));
78
+ autoScroll && setScrollTo((0, _helpers.getScrollTo)(diffMonths));
124
79
  setScrolling(false);
125
80
  }
126
81
  }
127
82
  setSelected(range ? [(0, _locale.UTC)(date), value[1] ? (0, _locale.UTC)((0, _locale.parseDate)(value[1], format)) : undefined] : (0, _locale.UTC)(date));
128
83
  // eslint-disable-next-line react-hooks/exhaustive-deps
129
84
  }, [format, from, range, value]);
130
- (0, _react.useEffect)(function () {
131
- from && (!value || value.length === 0 || !value[0]) && setInstance((0, _helpers2.getFirstDateOfMonth)((0, _locale.parseDate)(from, format)));
85
+ (0, _react.useEffect)(() => {
86
+ from && (!value || value.length === 0 || !value[0]) && setInstance((0, _helpers.getFirstDateOfMonth)((0, _locale.parseDate)(from, format)));
132
87
  // eslint-disable-next-line react-hooks/exhaustive-deps
133
88
  }, [from]);
134
- (0, _react.useEffect)(function () {
89
+ (0, _react.useEffect)(() => {
135
90
  onFocus(focus);
136
91
  }, [focus, onFocus]);
137
- var handleChange = function handleChange(date) {
138
- setSelected(function () {
139
- var next;
92
+ const handleChange = date => {
93
+ setSelected(() => {
94
+ let next;
140
95
  if (!range) {
141
96
  next = date;
142
97
  } else if (selected[1] === undefined && date > selected[0]) {
143
98
  next = [selected[0], date];
144
99
  } else {
145
- var _selected$;
146
- next = [((_selected$ = selected[0]) === null || _selected$ === void 0 ? void 0 : _selected$.getTime()) === date.getTime() && selected[1] === undefined ? undefined : date];
100
+ next = [selected[0]?.getTime() === date.getTime() && selected[1] === undefined ? undefined : date];
147
101
  setFocus(undefined);
148
102
  }
149
103
  onChange(next);
150
104
  return next;
151
105
  });
152
106
  };
153
- var handleMonth = function handleMonth(month) {
154
- setInstance(function () {
155
- var addMonths = range && value[0] && !value[1] ? month > 0 ? 1 : -1 : month;
156
- var next = (0, _helpers2.getFirstDateOfMonth)(new Date(instance.getFullYear(), instance.getMonth() + addMonths));
107
+ const handleMonth = month => {
108
+ setInstance(() => {
109
+ const addMonths = range && value[0] && !value[1] ? month > 0 ? 1 : -1 : month;
110
+ const next = (0, _helpers.getFirstDateOfMonth)(new Date(instance.getFullYear(), instance.getMonth() + addMonths));
157
111
  onNavigation(next);
158
112
  return next;
159
113
  });
160
114
  };
161
- var handleScroll = function handleScroll(event) {
115
+ const handleScroll = event => {
162
116
  if (vertical) setScrolling(true);
163
117
  onScroll(event);
164
118
  setBehavior();
165
119
  setTimestamp(Date.now());
166
120
  };
167
- var testId = others.testId,
168
- scrollEventThrottle = others.scrollEventThrottle;
169
- var className = others.className,
170
- _others$months = others.months,
171
- months = _others$months === void 0 ? 2 : _others$months,
172
- props = _objectWithoutProperties(others, _excluded2);
173
- var today = (0, _helpers2.getToday)();
174
- var instanceTS = instance.getTime();
175
- var todayMonthTS = (0, _helpers2.getFirstDateOfMonth)(today).getTime();
176
- var disabledPrevious = disabledPast && instanceTS <= todayMonthTS || from && instanceTS <= (0, _helpers2.getFirstDateOfMonth)((0, _locale.parseDate)(from, format)).getTime();
177
- var disabledNext = to && (0, _locale.parseDate)(to, format).getTime() <= (0, _helpers2.getFirstDateOfMonth)((0, _locale.dateCalc)(instance, months, 'months')).getTime();
178
- props = _objectSpread(_objectSpread({}, props), {}, {
179
- disabledPast: disabledPast,
121
+ const {
122
+ testId,
123
+ scrollEventThrottle
124
+ } = others;
125
+ let {
126
+ className,
127
+ months = 2,
128
+ ...props
129
+ } = others;
130
+ const today = (0, _helpers.getToday)();
131
+ const instanceTS = instance.getTime();
132
+ const todayMonthTS = (0, _helpers.getFirstDateOfMonth)(today).getTime();
133
+ const disabledPrevious = disabledPast && instanceTS <= todayMonthTS || from && instanceTS <= (0, _helpers.getFirstDateOfMonth)((0, _locale.parseDate)(from, format)).getTime();
134
+ const disabledNext = to && (0, _locale.parseDate)(to, format).getTime() <= (0, _helpers.getFirstDateOfMonth)((0, _locale.dateCalc)(instance, months, 'months')).getTime();
135
+ props = {
136
+ ...props,
137
+ disabledPast,
180
138
  // eslint-disable-next-line react-hooks/exhaustive-deps
181
- disabledDatesTS: (0, _react.useMemo)(function () {
182
- return disabledDates.map(function (date) {
183
- return (0, _locale.parseDate)(date, format).getTime();
184
- });
185
- }, [disabledDates]),
186
- focus: focus,
187
- format: format,
139
+ disabledDatesTS: (0, _react.useMemo)(() => disabledDates.map(date => (0, _locale.parseDate)(date, format).getTime()), [disabledDates]),
140
+ focus,
141
+ format,
188
142
  from: from ? (0, _locale.parseDate)(from, format) : undefined,
189
- locale: locale,
190
- range: range,
143
+ locale,
144
+ range,
191
145
  role: others.role || 'calendar',
192
- selected: selected,
146
+ selected,
193
147
  tag: 'calendar',
194
- timestamp: timestamp,
148
+ timestamp,
195
149
  to: range && rangeMaxDays && selected[0] && !selected[1] && (!to || (0, _locale.dateCalc)(selected[0], rangeMaxDays, 'days') < (0, _locale.parseDate)(to, format)) ? (0, _locale.dateCalc)(selected[0], rangeMaxDays, 'days') : to ? (0, _locale.parseDate)(to, format) : undefined,
196
150
  tooltips: !vertical || !scrolling ? props.tooltips : {},
197
151
  onChange: handleChange,
198
152
  onFocus: !isMobile ? setFocus : undefined
199
- });
153
+ };
200
154
  if (vertical && to) months = (0, _locale.dateDiff)(today, (0, _locale.parseDate)(to, format)).months + 1;
201
155
  return /*#__PURE__*/_react.default.createElement(_primitives.View, {
202
156
  role: others.role,
203
157
  tag: "calendar",
204
- className: (0, _helpers.styles)(_CalendarModule.default.calendar, vertical && _CalendarModule.default.vertical, className),
158
+ className: (0, _helpers2.styles)(_CalendarModule.default.calendar, vertical && _CalendarModule.default.vertical, className),
205
159
  testId: testId
206
160
  }, vertical && /*#__PURE__*/_react.default.createElement(_Calendar2.Weekdays, {
207
161
  locale: locale,
@@ -215,29 +169,23 @@ var Calendar = function Calendar(_ref) {
215
169
  onScroll: handleScroll
216
170
  }, Array.from({
217
171
  length: months
218
- }, function (_, index) {
219
- return /*#__PURE__*/_react.default.createElement(_Calendar.Month, _extends({
220
- instance: new Date(instance.getFullYear(), instance.getMonth() + index, 1) // ! TODO: calc with mirai/locale
221
- ,
222
- key: index,
223
- ref: vertical && range ? (0, _helpers2.getMonthRef)({
224
- autoScroll: autoScroll,
225
- el: el,
226
- index: index,
227
- instance: instance,
228
- value: value
229
- }) : undefined,
230
- vertical: vertical,
231
- onNext: !vertical && index === months - 1 && !disabledNext ? function () {
232
- return handleMonth(months);
233
- } : undefined,
234
- onPrevious: !vertical && index === 0 && !disabledPrevious ? function () {
235
- return handleMonth(-months);
236
- } : undefined
237
- }, props, {
238
- testId: testId
239
- }));
240
- })));
172
+ }, (_, index) => /*#__PURE__*/_react.default.createElement(_Calendar.Month, _extends({
173
+ instance: new Date(instance.getFullYear(), instance.getMonth() + index, 1) // ! TODO: calc with mirai/locale
174
+ ,
175
+ key: index,
176
+ ref: vertical && range ? (0, _helpers.getMonthRef)({
177
+ autoScroll,
178
+ el,
179
+ index,
180
+ instance,
181
+ value
182
+ }) : undefined,
183
+ vertical: vertical,
184
+ onNext: !vertical && index === months - 1 && !disabledNext ? () => handleMonth(months) : undefined,
185
+ onPrevious: !vertical && index === 0 && !disabledPrevious ? () => handleMonth(-months) : undefined
186
+ }, props, {
187
+ testId: testId
188
+ })))));
241
189
  };
242
190
  exports.Calendar = Calendar;
243
191
  Calendar.displayName = 'Component:Calendar';
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","names":["Calendar","autoScroll","disabledDates","disabledPast","format","from","locale","range","rangeMaxDays","to","value","vertical","propVertical","onChange","onFocus","onNavigation","onScroll","others","useDevice","isMobile","useState","behavior","setBehavior","focus","setFocus","getFirstDateOfMonth","getToday","instance","setInstance","scrollTo","setScrollTo","scrolling","setScrolling","undefined","selected","setSelected","timestamp","setTimestamp","setVertical","el","useRef","useEffect","current","getScrollTo","dateDiff","parseDate","months","date","length","dateFrom","days","next","diffMonths","UTC","handleChange","getTime","handleMonth","month","addMonths","Date","getFullYear","getMonth","handleScroll","event","now","testId","scrollEventThrottle","className","props","today","instanceTS","todayMonthTS","disabledPrevious","disabledNext","dateCalc","disabledDatesTS","useMemo","map","role","tag","tooltips","styles","style","calendar","scrollview","Array","_","index","getMonthRef","displayName","propTypes","PropTypes","bool","captions","shape","arrayOf","string","highlights","number","rangeMinDays","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.jsx"],"sourcesContent":["import { dateCalc, dateDiff, parseDate, UTC } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\n\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { ScrollView, View } from '../../primitives';\nimport style from './Calendar.module.css';\nimport { Month } from './Calendar.Month';\nimport { Weekdays } from './Calendar.Weekdays';\nimport { getFirstDateOfMonth, getMonthRef, getScrollTo, getToday } from './helpers';\n\nexport const Calendar = ({\n autoScroll = false,\n disabledDates = [],\n disabledPast = true,\n format = 'YYYY/MM/DD',\n from,\n locale,\n range = false,\n rangeMaxDays,\n to,\n value,\n vertical: propVertical = false,\n onChange = () => {},\n onFocus = () => {},\n onNavigation = () => {},\n onScroll = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n\n const [behavior, setBehavior] = useState();\n const [focus, setFocus] = useState();\n const [instance, setInstance] = useState(getFirstDateOfMonth(getToday()));\n const [scrollTo, setScrollTo] = useState();\n const [scrolling, setScrolling] = useState();\n const [selected, setSelected] = useState(range ? [] : undefined);\n const [timestamp, setTimestamp] = useState();\n const [vertical, setVertical] = useState(propVertical);\n\n const el = useRef();\n\n useEffect(() => {\n setVertical(propVertical || isMobile);\n }, [isMobile, propVertical]);\n\n useEffect(() => {\n if (!vertical || !el?.current || !value[0]) return;\n\n setBehavior('auto');\n setScrollTo(getScrollTo(dateDiff(instance, parseDate(value[0], format)).months));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [el?.current, vertical]);\n\n useEffect(() => {\n let date = range ? (value?.length > 0 ? value[0] : undefined) : value;\n\n if (from && date) {\n const dateFrom = parseDate(from, format);\n const { days } = dateDiff(dateFrom, parseDate(date, format));\n\n if (days < 0) date = undefined;\n }\n if (!date) return setSelected(range ? [] : undefined);\n\n date = parseDate(date, format);\n if ((range && (selected.length === 0 || value.length === 2)) || !range) {\n const next = getFirstDateOfMonth(date);\n const { months: diffMonths } = dateDiff(instance, date);\n\n if (!vertical && !isMobile && (diffMonths >= months || diffMonths < 0)) setInstance(next);\n else if (vertical || isMobile) {\n autoScroll && setScrollTo(getScrollTo(diffMonths));\n setScrolling(false);\n }\n }\n\n setSelected(range ? [UTC(date), value[1] ? UTC(parseDate(value[1], format)) : undefined] : UTC(date));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [format, from, range, value]);\n\n useEffect(() => {\n from && (!value || value.length === 0 || !value[0]) && setInstance(getFirstDateOfMonth(parseDate(from, format)));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [from]);\n\n useEffect(() => {\n onFocus(focus);\n }, [focus, onFocus]);\n\n const handleChange = (date) => {\n setSelected(() => {\n let next;\n\n if (!range) {\n next = date;\n } else if (selected[1] === undefined && date > selected[0]) {\n next = [selected[0], date];\n } else {\n next = [selected[0]?.getTime() === date.getTime() && selected[1] === undefined ? undefined : date];\n setFocus(undefined);\n }\n onChange(next);\n\n return next;\n });\n };\n\n const handleMonth = (month) => {\n setInstance(() => {\n const addMonths = range && value[0] && !value[1] ? (month > 0 ? 1 : -1) : month;\n const next = getFirstDateOfMonth(new Date(instance.getFullYear(), instance.getMonth() + addMonths));\n\n onNavigation(next);\n return next;\n });\n };\n\n const handleScroll = (event) => {\n if (vertical) setScrolling(true);\n\n onScroll(event);\n setBehavior();\n setTimestamp(Date.now());\n };\n\n const { testId, scrollEventThrottle } = others;\n let { className, months = 2, ...props } = others;\n\n const today = getToday();\n const instanceTS = instance.getTime();\n const todayMonthTS = getFirstDateOfMonth(today).getTime();\n const disabledPrevious =\n (disabledPast && instanceTS <= todayMonthTS) ||\n (from && instanceTS <= getFirstDateOfMonth(parseDate(from, format)).getTime());\n\n const disabledNext =\n to && parseDate(to, format).getTime() <= getFirstDateOfMonth(dateCalc(instance, months, 'months')).getTime();\n\n props = {\n ...props,\n disabledPast,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n disabledDatesTS: useMemo(() => disabledDates.map((date) => parseDate(date, format).getTime()), [disabledDates]),\n focus,\n format,\n from: from ? parseDate(from, format) : undefined,\n locale,\n range,\n role: others.role || 'calendar',\n selected,\n tag: 'calendar',\n timestamp,\n to:\n range &&\n rangeMaxDays &&\n selected[0] &&\n !selected[1] &&\n (!to || dateCalc(selected[0], rangeMaxDays, 'days') < parseDate(to, format))\n ? dateCalc(selected[0], rangeMaxDays, 'days')\n : to\n ? parseDate(to, format)\n : undefined,\n tooltips: !vertical || !scrolling ? props.tooltips : {},\n onChange: handleChange,\n onFocus: !isMobile ? setFocus : undefined,\n };\n\n if (vertical && to) months = dateDiff(today, parseDate(to, format)).months + 1;\n\n return (\n <View\n role={others.role}\n tag=\"calendar\"\n className={styles(style.calendar, vertical && style.vertical, className)}\n testId={testId}\n >\n {vertical && <Weekdays locale={locale} vertical={vertical} />}\n <ScrollView\n behavior={behavior}\n horizontal={!vertical}\n scrollTo={scrollTo}\n className={style.scrollview}\n scrollEventThrottle={scrollEventThrottle}\n onScroll={handleScroll}\n >\n {Array.from({ length: months }, (_, index) => (\n <Month\n instance={new Date(instance.getFullYear(), instance.getMonth() + index, 1)} // ! TODO: calc with mirai/locale\n key={index}\n ref={vertical && range ? getMonthRef({ autoScroll, el, index, instance, value }) : undefined}\n vertical={vertical}\n onNext={!vertical && index === months - 1 && !disabledNext ? () => handleMonth(months) : undefined}\n onPrevious={!vertical && index === 0 && !disabledPrevious ? () => handleMonth(-months) : undefined}\n {...props}\n testId={testId}\n />\n ))}\n </ScrollView>\n </View>\n );\n};\n\nCalendar.displayName = 'Component:Calendar';\n\nCalendar.propTypes = {\n autoScroll: PropTypes.bool,\n captions: PropTypes.shape({}),\n disabledDates: PropTypes.arrayOf(PropTypes.string),\n disabledPast: PropTypes.bool,\n format: PropTypes.string,\n from: PropTypes.string,\n highlights: PropTypes.arrayOf(PropTypes.string),\n locale: PropTypes.string,\n months: PropTypes.number,\n range: PropTypes.bool,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n to: PropTypes.string,\n tooltips: PropTypes.shape({}),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n vertical: PropTypes.bool,\n onChange: PropTypes.func,\n onFocus: PropTypes.func,\n onNavigation: PropTypes.func,\n onScroll: PropTypes.func,\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAoF;EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAE7E,IAAMA,QAAQ,GAAG,SAAXA,QAAQ,OAiBf;EAAA,2BAhBJC,UAAU;IAAVA,UAAU,gCAAG,KAAK;IAAA,0BAClBC,aAAa;IAAbA,aAAa,mCAAG,EAAE;IAAA,yBAClBC,YAAY;IAAZA,YAAY,kCAAG,IAAI;IAAA,mBACnBC,MAAM;IAANA,MAAM,4BAAG,YAAY;IACrBC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IAAA,kBACNC,KAAK;IAALA,KAAK,2BAAG,KAAK;IACbC,YAAY,QAAZA,YAAY;IACZC,EAAE,QAAFA,EAAE;IACFC,KAAK,QAALA,KAAK;IAAA,qBACLC,QAAQ;IAAEC,YAAY,8BAAG,KAAK;IAAA,qBAC9BC,QAAQ;IAARA,QAAQ,8BAAG,YAAM,CAAC,CAAC;IAAA,oBACnBC,OAAO;IAAPA,OAAO,6BAAG,YAAM,CAAC,CAAC;IAAA,yBAClBC,YAAY;IAAZA,YAAY,kCAAG,YAAM,CAAC,CAAC;IAAA,qBACvBC,QAAQ;IAARA,QAAQ,8BAAG,YAAM,CAAC,CAAC;IAChBC,MAAM;EAET,iBAAqB,IAAAC,gBAAS,GAAE;IAAxBC,QAAQ,cAARA,QAAQ;EAEhB,gBAAgC,IAAAC,eAAQ,GAAE;IAAA;IAAnCC,QAAQ;IAAEC,WAAW;EAC5B,iBAA0B,IAAAF,eAAQ,GAAE;IAAA;IAA7BG,KAAK;IAAEC,QAAQ;EACtB,iBAAgC,IAAAJ,eAAQ,EAAC,IAAAK,6BAAmB,EAAC,IAAAC,kBAAQ,GAAE,CAAC,CAAC;IAAA;IAAlEC,QAAQ;IAAEC,WAAW;EAC5B,iBAAgC,IAAAR,eAAQ,GAAE;IAAA;IAAnCS,QAAQ;IAAEC,WAAW;EAC5B,iBAAkC,IAAAV,eAAQ,GAAE;IAAA;IAArCW,SAAS;IAAEC,YAAY;EAC9B,kBAAgC,IAAAZ,eAAQ,EAACb,KAAK,GAAG,EAAE,GAAG0B,SAAS,CAAC;IAAA;IAAzDC,QAAQ;IAAEC,WAAW;EAC5B,kBAAkC,IAAAf,eAAQ,GAAE;IAAA;IAArCgB,SAAS;IAAEC,YAAY;EAC9B,kBAAgC,IAAAjB,eAAQ,EAACR,YAAY,CAAC;IAAA;IAA/CD,QAAQ;IAAE2B,WAAW;EAE5B,IAAMC,EAAE,GAAG,IAAAC,aAAM,GAAE;EAEnB,IAAAC,gBAAS,EAAC,YAAM;IACdH,WAAW,CAAC1B,YAAY,IAAIO,QAAQ,CAAC;EACvC,CAAC,EAAE,CAACA,QAAQ,EAAEP,YAAY,CAAC,CAAC;EAE5B,IAAA6B,gBAAS,EAAC,YAAM;IACd,IAAI,CAAC9B,QAAQ,IAAI,EAAC4B,EAAE,aAAFA,EAAE,eAAFA,EAAE,CAAEG,OAAO,KAAI,CAAChC,KAAK,CAAC,CAAC,CAAC,EAAE;IAE5CY,WAAW,CAAC,MAAM,CAAC;IACnBQ,WAAW,CAAC,IAAAa,qBAAW,EAAC,IAAAC,gBAAQ,EAACjB,QAAQ,EAAE,IAAAkB,iBAAS,EAACnC,KAAK,CAAC,CAAC,CAAC,EAAEN,MAAM,CAAC,CAAC,CAAC0C,MAAM,CAAC,CAAC;IAChF;EACF,CAAC,EAAE,CAACP,EAAE,aAAFA,EAAE,uBAAFA,EAAE,CAAEG,OAAO,EAAE/B,QAAQ,CAAC,CAAC;EAE3B,IAAA8B,gBAAS,EAAC,YAAM;IACd,IAAIM,IAAI,GAAGxC,KAAK,GAAI,CAAAG,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEsC,MAAM,IAAG,CAAC,GAAGtC,KAAK,CAAC,CAAC,CAAC,GAAGuB,SAAS,GAAIvB,KAAK;IAErE,IAAIL,IAAI,IAAI0C,IAAI,EAAE;MAChB,IAAME,QAAQ,GAAG,IAAAJ,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC;MACxC,gBAAiB,IAAAwC,gBAAQ,EAACK,QAAQ,EAAE,IAAAJ,iBAAS,EAACE,IAAI,EAAE3C,MAAM,CAAC,CAAC;QAApD8C,IAAI,aAAJA,IAAI;MAEZ,IAAIA,IAAI,GAAG,CAAC,EAAEH,IAAI,GAAGd,SAAS;IAChC;IACA,IAAI,CAACc,IAAI,EAAE,OAAOZ,WAAW,CAAC5B,KAAK,GAAG,EAAE,GAAG0B,SAAS,CAAC;IAErDc,IAAI,GAAG,IAAAF,iBAAS,EAACE,IAAI,EAAE3C,MAAM,CAAC;IAC9B,IAAKG,KAAK,KAAK2B,QAAQ,CAACc,MAAM,KAAK,CAAC,IAAItC,KAAK,CAACsC,MAAM,KAAK,CAAC,CAAC,IAAK,CAACzC,KAAK,EAAE;MACtE,IAAM4C,IAAI,GAAG,IAAA1B,6BAAmB,EAACsB,IAAI,CAAC;MACtC,iBAA+B,IAAAH,gBAAQ,EAACjB,QAAQ,EAAEoB,IAAI,CAAC;QAAvCK,UAAU,cAAlBN,MAAM;MAEd,IAAI,CAACnC,QAAQ,IAAI,CAACQ,QAAQ,KAAKiC,UAAU,IAAIN,MAAM,IAAIM,UAAU,GAAG,CAAC,CAAC,EAAExB,WAAW,CAACuB,IAAI,CAAC,CAAC,KACrF,IAAIxC,QAAQ,IAAIQ,QAAQ,EAAE;QAC7BlB,UAAU,IAAI6B,WAAW,CAAC,IAAAa,qBAAW,EAACS,UAAU,CAAC,CAAC;QAClDpB,YAAY,CAAC,KAAK,CAAC;MACrB;IACF;IAEAG,WAAW,CAAC5B,KAAK,GAAG,CAAC,IAAA8C,WAAG,EAACN,IAAI,CAAC,EAAErC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAA2C,WAAG,EAAC,IAAAR,iBAAS,EAACnC,KAAK,CAAC,CAAC,CAAC,EAAEN,MAAM,CAAC,CAAC,GAAG6B,SAAS,CAAC,GAAG,IAAAoB,WAAG,EAACN,IAAI,CAAC,CAAC;IACrG;EACF,CAAC,EAAE,CAAC3C,MAAM,EAAEC,IAAI,EAAEE,KAAK,EAAEG,KAAK,CAAC,CAAC;EAEhC,IAAA+B,gBAAS,EAAC,YAAM;IACdpC,IAAI,KAAK,CAACK,KAAK,IAAIA,KAAK,CAACsC,MAAM,KAAK,CAAC,IAAI,CAACtC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAIkB,WAAW,CAAC,IAAAH,6BAAmB,EAAC,IAAAoB,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC,CAAC,CAAC;IAChH;EACF,CAAC,EAAE,CAACC,IAAI,CAAC,CAAC;EAEV,IAAAoC,gBAAS,EAAC,YAAM;IACd3B,OAAO,CAACS,KAAK,CAAC;EAChB,CAAC,EAAE,CAACA,KAAK,EAAET,OAAO,CAAC,CAAC;EAEpB,IAAMwC,YAAY,GAAG,SAAfA,YAAY,CAAIP,IAAI,EAAK;IAC7BZ,WAAW,CAAC,YAAM;MAChB,IAAIgB,IAAI;MAER,IAAI,CAAC5C,KAAK,EAAE;QACV4C,IAAI,GAAGJ,IAAI;MACb,CAAC,MAAM,IAAIb,QAAQ,CAAC,CAAC,CAAC,KAAKD,SAAS,IAAIc,IAAI,GAAGb,QAAQ,CAAC,CAAC,CAAC,EAAE;QAC1DiB,IAAI,GAAG,CAACjB,QAAQ,CAAC,CAAC,CAAC,EAAEa,IAAI,CAAC;MAC5B,CAAC,MAAM;QAAA;QACLI,IAAI,GAAG,CAAC,eAAAjB,QAAQ,CAAC,CAAC,CAAC,+CAAX,WAAaqB,OAAO,EAAE,MAAKR,IAAI,CAACQ,OAAO,EAAE,IAAIrB,QAAQ,CAAC,CAAC,CAAC,KAAKD,SAAS,GAAGA,SAAS,GAAGc,IAAI,CAAC;QAClGvB,QAAQ,CAACS,SAAS,CAAC;MACrB;MACApB,QAAQ,CAACsC,IAAI,CAAC;MAEd,OAAOA,IAAI;IACb,CAAC,CAAC;EACJ,CAAC;EAED,IAAMK,WAAW,GAAG,SAAdA,WAAW,CAAIC,KAAK,EAAK;IAC7B7B,WAAW,CAAC,YAAM;MAChB,IAAM8B,SAAS,GAAGnD,KAAK,IAAIG,KAAK,CAAC,CAAC,CAAC,IAAI,CAACA,KAAK,CAAC,CAAC,CAAC,GAAI+C,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAIA,KAAK;MAC/E,IAAMN,IAAI,GAAG,IAAA1B,6BAAmB,EAAC,IAAIkC,IAAI,CAAChC,QAAQ,CAACiC,WAAW,EAAE,EAAEjC,QAAQ,CAACkC,QAAQ,EAAE,GAAGH,SAAS,CAAC,CAAC;MAEnG3C,YAAY,CAACoC,IAAI,CAAC;MAClB,OAAOA,IAAI;IACb,CAAC,CAAC;EACJ,CAAC;EAED,IAAMW,YAAY,GAAG,SAAfA,YAAY,CAAIC,KAAK,EAAK;IAC9B,IAAIpD,QAAQ,EAAEqB,YAAY,CAAC,IAAI,CAAC;IAEhChB,QAAQ,CAAC+C,KAAK,CAAC;IACfzC,WAAW,EAAE;IACbe,YAAY,CAACsB,IAAI,CAACK,GAAG,EAAE,CAAC;EAC1B,CAAC;EAED,IAAQC,MAAM,GAA0BhD,MAAM,CAAtCgD,MAAM;IAAEC,mBAAmB,GAAKjD,MAAM,CAA9BiD,mBAAmB;EACnC,IAAMC,SAAS,GAA2BlD,MAAM,CAA1CkD,SAAS;IAAA,iBAA2BlD,MAAM,CAA/B6B,MAAM;IAANA,MAAM,+BAAG,CAAC;IAAKsB,KAAK,4BAAKnD,MAAM;EAEhD,IAAMoD,KAAK,GAAG,IAAA3C,kBAAQ,GAAE;EACxB,IAAM4C,UAAU,GAAG3C,QAAQ,CAAC4B,OAAO,EAAE;EACrC,IAAMgB,YAAY,GAAG,IAAA9C,6BAAmB,EAAC4C,KAAK,CAAC,CAACd,OAAO,EAAE;EACzD,IAAMiB,gBAAgB,GACnBrE,YAAY,IAAImE,UAAU,IAAIC,YAAY,IAC1ClE,IAAI,IAAIiE,UAAU,IAAI,IAAA7C,6BAAmB,EAAC,IAAAoB,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC,CAAC,CAACmD,OAAO,EAAG;EAEhF,IAAMkB,YAAY,GAChBhE,EAAE,IAAI,IAAAoC,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,CAACmD,OAAO,EAAE,IAAI,IAAA9B,6BAAmB,EAAC,IAAAiD,gBAAQ,EAAC/C,QAAQ,EAAEmB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAACS,OAAO,EAAE;EAE9Ga,KAAK,mCACAA,KAAK;IACRjE,YAAY,EAAZA,YAAY;IACZ;IACAwE,eAAe,EAAE,IAAAC,cAAO,EAAC;MAAA,OAAM1E,aAAa,CAAC2E,GAAG,CAAC,UAAC9B,IAAI;QAAA,OAAK,IAAAF,iBAAS,EAACE,IAAI,EAAE3C,MAAM,CAAC,CAACmD,OAAO,EAAE;MAAA,EAAC;IAAA,GAAE,CAACrD,aAAa,CAAC,CAAC;IAC/GqB,KAAK,EAALA,KAAK;IACLnB,MAAM,EAANA,MAAM;IACNC,IAAI,EAAEA,IAAI,GAAG,IAAAwC,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC,GAAG6B,SAAS;IAChD3B,MAAM,EAANA,MAAM;IACNC,KAAK,EAALA,KAAK;IACLuE,IAAI,EAAE7D,MAAM,CAAC6D,IAAI,IAAI,UAAU;IAC/B5C,QAAQ,EAARA,QAAQ;IACR6C,GAAG,EAAE,UAAU;IACf3C,SAAS,EAATA,SAAS;IACT3B,EAAE,EACAF,KAAK,IACLC,YAAY,IACZ0B,QAAQ,CAAC,CAAC,CAAC,IACX,CAACA,QAAQ,CAAC,CAAC,CAAC,KACX,CAACzB,EAAE,IAAI,IAAAiE,gBAAQ,EAACxC,QAAQ,CAAC,CAAC,CAAC,EAAE1B,YAAY,EAAE,MAAM,CAAC,GAAG,IAAAqC,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,CAAC,GACxE,IAAAsE,gBAAQ,EAACxC,QAAQ,CAAC,CAAC,CAAC,EAAE1B,YAAY,EAAE,MAAM,CAAC,GAC3CC,EAAE,GACF,IAAAoC,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,GACrB6B,SAAS;IACf+C,QAAQ,EAAE,CAACrE,QAAQ,IAAI,CAACoB,SAAS,GAAGqC,KAAK,CAACY,QAAQ,GAAG,CAAC,CAAC;IACvDnE,QAAQ,EAAEyC,YAAY;IACtBxC,OAAO,EAAE,CAACK,QAAQ,GAAGK,QAAQ,GAAGS;EAAS,EAC1C;EAED,IAAItB,QAAQ,IAAIF,EAAE,EAAEqC,MAAM,GAAG,IAAAF,gBAAQ,EAACyB,KAAK,EAAE,IAAAxB,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,CAAC,CAAC0C,MAAM,GAAG,CAAC;EAE9E,oBACE,6BAAC,gBAAI;IACH,IAAI,EAAE7B,MAAM,CAAC6D,IAAK;IAClB,GAAG,EAAC,UAAU;IACd,SAAS,EAAE,IAAAG,eAAM,EAACC,uBAAK,CAACC,QAAQ,EAAExE,QAAQ,IAAIuE,uBAAK,CAACvE,QAAQ,EAAEwD,SAAS,CAAE;IACzE,MAAM,EAAEF;EAAO,GAEdtD,QAAQ,iBAAI,6BAAC,mBAAQ;IAAC,MAAM,EAAEL,MAAO;IAAC,QAAQ,EAAEK;EAAS,EAAG,eAC7D,6BAAC,sBAAU;IACT,QAAQ,EAAEU,QAAS;IACnB,UAAU,EAAE,CAACV,QAAS;IACtB,QAAQ,EAAEkB,QAAS;IACnB,SAAS,EAAEqD,uBAAK,CAACE,UAAW;IAC5B,mBAAmB,EAAElB,mBAAoB;IACzC,QAAQ,EAAEJ;EAAa,GAEtBuB,KAAK,CAAChF,IAAI,CAAC;IAAE2C,MAAM,EAAEF;EAAO,CAAC,EAAE,UAACwC,CAAC,EAAEC,KAAK;IAAA,oBACvC,6BAAC,eAAK;MACJ,QAAQ,EAAE,IAAI5B,IAAI,CAAChC,QAAQ,CAACiC,WAAW,EAAE,EAAEjC,QAAQ,CAACkC,QAAQ,EAAE,GAAG0B,KAAK,EAAE,CAAC,CAAE,CAAC;MAAA;MAC5E,GAAG,EAAEA,KAAM;MACX,GAAG,EAAE5E,QAAQ,IAAIJ,KAAK,GAAG,IAAAiF,qBAAW,EAAC;QAAEvF,UAAU,EAAVA,UAAU;QAAEsC,EAAE,EAAFA,EAAE;QAAEgD,KAAK,EAALA,KAAK;QAAE5D,QAAQ,EAARA,QAAQ;QAAEjB,KAAK,EAALA;MAAM,CAAC,CAAC,GAAGuB,SAAU;MAC7F,QAAQ,EAAEtB,QAAS;MACnB,MAAM,EAAE,CAACA,QAAQ,IAAI4E,KAAK,KAAKzC,MAAM,GAAG,CAAC,IAAI,CAAC2B,YAAY,GAAG;QAAA,OAAMjB,WAAW,CAACV,MAAM,CAAC;MAAA,IAAGb,SAAU;MACnG,UAAU,EAAE,CAACtB,QAAQ,IAAI4E,KAAK,KAAK,CAAC,IAAI,CAACf,gBAAgB,GAAG;QAAA,OAAMhB,WAAW,CAAC,CAACV,MAAM,CAAC;MAAA,IAAGb;IAAU,GAC/FmC,KAAK;MACT,MAAM,EAAEH;IAAO,GACf;EAAA,CACH,CAAC,CACS,CACR;AAEX,CAAC;AAAC;AAEFjE,QAAQ,CAACyF,WAAW,GAAG,oBAAoB;AAE3CzF,QAAQ,CAAC0F,SAAS,GAAG;EACnBzF,UAAU,EAAE0F,kBAAS,CAACC,IAAI;EAC1BC,QAAQ,EAAEF,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7B5F,aAAa,EAAEyF,kBAAS,CAACI,OAAO,CAACJ,kBAAS,CAACK,MAAM,CAAC;EAClD7F,YAAY,EAAEwF,kBAAS,CAACC,IAAI;EAC5BxF,MAAM,EAAEuF,kBAAS,CAACK,MAAM;EACxB3F,IAAI,EAAEsF,kBAAS,CAACK,MAAM;EACtBC,UAAU,EAAEN,kBAAS,CAACI,OAAO,CAACJ,kBAAS,CAACK,MAAM,CAAC;EAC/C1F,MAAM,EAAEqF,kBAAS,CAACK,MAAM;EACxBlD,MAAM,EAAE6C,kBAAS,CAACO,MAAM;EACxB3F,KAAK,EAAEoF,kBAAS,CAACC,IAAI;EACrBpF,YAAY,EAAEmF,kBAAS,CAACO,MAAM;EAC9BC,YAAY,EAAER,kBAAS,CAACO,MAAM;EAC9BzF,EAAE,EAAEkF,kBAAS,CAACK,MAAM;EACpBhB,QAAQ,EAAEW,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7BpF,KAAK,EAAEiF,kBAAS,CAACS,SAAS,CAAC,CAACT,kBAAS,CAACK,MAAM,EAAEL,kBAAS,CAACI,OAAO,CAACJ,kBAAS,CAACK,MAAM,CAAC,CAAC,CAAC;EACnFrF,QAAQ,EAAEgF,kBAAS,CAACC,IAAI;EACxB/E,QAAQ,EAAE8E,kBAAS,CAACU,IAAI;EACxBvF,OAAO,EAAE6E,kBAAS,CAACU,IAAI;EACvBtF,YAAY,EAAE4E,kBAAS,CAACU,IAAI;EAC5BrF,QAAQ,EAAE2E,kBAAS,CAACU;AACtB,CAAC"}
1
+ {"version":3,"file":"Calendar.js","names":["_locale","require","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_CalendarModule","_Calendar","_Calendar2","_helpers","_helpers2","_hooks","_primitives","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","Calendar","_ref","autoScroll","disabledDates","disabledPast","format","from","locale","range","rangeMaxDays","to","value","vertical","propVertical","onChange","onFocus","onNavigation","onScroll","others","isMobile","useDevice","behavior","setBehavior","useState","focus","setFocus","instance","setInstance","getFirstDateOfMonth","getToday","scrollTo","setScrollTo","scrolling","setScrolling","selected","setSelected","undefined","timestamp","setTimestamp","setVertical","el","useRef","useEffect","current","getScrollTo","dateDiff","parseDate","months","date","dateFrom","days","next","diffMonths","UTC","handleChange","getTime","handleMonth","month","addMonths","Date","getFullYear","getMonth","handleScroll","event","now","testId","scrollEventThrottle","className","props","today","instanceTS","todayMonthTS","disabledPrevious","disabledNext","dateCalc","disabledDatesTS","useMemo","map","role","tag","tooltips","createElement","View","styles","style","calendar","Weekdays","ScrollView","horizontal","scrollview","Array","_","index","Month","key","ref","getMonthRef","onNext","onPrevious","exports","displayName","propTypes","PropTypes","bool","captions","shape","arrayOf","string","highlights","number","rangeMinDays","oneOfType","func"],"sources":["../../../src/components/Calendar/Calendar.jsx"],"sourcesContent":["import { dateCalc, dateDiff, parseDate, UTC } from '@mirai/locale';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useMemo, useRef, useState } from 'react';\n\nimport style from './Calendar.module.css';\nimport { Month } from './Calendar.Month';\nimport { Weekdays } from './Calendar.Weekdays';\nimport { getFirstDateOfMonth, getMonthRef, getScrollTo, getToday } from './helpers';\nimport { styles } from '../../helpers';\nimport { useDevice } from '../../hooks';\nimport { ScrollView, View } from '../../primitives';\n\nexport const Calendar = ({\n autoScroll = false,\n disabledDates = [],\n disabledPast = true,\n format = 'YYYY/MM/DD',\n from,\n locale,\n range = false,\n rangeMaxDays,\n to,\n value,\n vertical: propVertical = false,\n onChange = () => {},\n onFocus = () => {},\n onNavigation = () => {},\n onScroll = () => {},\n ...others\n}) => {\n const { isMobile } = useDevice();\n\n const [behavior, setBehavior] = useState();\n const [focus, setFocus] = useState();\n const [instance, setInstance] = useState(getFirstDateOfMonth(getToday()));\n const [scrollTo, setScrollTo] = useState();\n const [scrolling, setScrolling] = useState();\n const [selected, setSelected] = useState(range ? [] : undefined);\n const [timestamp, setTimestamp] = useState();\n const [vertical, setVertical] = useState(propVertical);\n\n const el = useRef();\n\n useEffect(() => {\n setVertical(propVertical || isMobile);\n }, [isMobile, propVertical]);\n\n useEffect(() => {\n if (!vertical || !el?.current || !value[0]) return;\n\n setBehavior('auto');\n setScrollTo(getScrollTo(dateDiff(instance, parseDate(value[0], format)).months));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [el?.current, vertical]);\n\n useEffect(() => {\n let date = range ? (value?.length > 0 ? value[0] : undefined) : value;\n\n if (from && date) {\n const dateFrom = parseDate(from, format);\n const { days } = dateDiff(dateFrom, parseDate(date, format));\n\n if (days < 0) date = undefined;\n }\n if (!date) return setSelected(range ? [] : undefined);\n\n date = parseDate(date, format);\n if ((range && (selected.length === 0 || value.length === 2)) || !range) {\n const next = getFirstDateOfMonth(date);\n const { months: diffMonths } = dateDiff(instance, date);\n\n if (!vertical && !isMobile && (diffMonths >= months || diffMonths < 0)) setInstance(next);\n else if (vertical || isMobile) {\n autoScroll && setScrollTo(getScrollTo(diffMonths));\n setScrolling(false);\n }\n }\n\n setSelected(range ? [UTC(date), value[1] ? UTC(parseDate(value[1], format)) : undefined] : UTC(date));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [format, from, range, value]);\n\n useEffect(() => {\n from && (!value || value.length === 0 || !value[0]) && setInstance(getFirstDateOfMonth(parseDate(from, format)));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [from]);\n\n useEffect(() => {\n onFocus(focus);\n }, [focus, onFocus]);\n\n const handleChange = (date) => {\n setSelected(() => {\n let next;\n\n if (!range) {\n next = date;\n } else if (selected[1] === undefined && date > selected[0]) {\n next = [selected[0], date];\n } else {\n next = [selected[0]?.getTime() === date.getTime() && selected[1] === undefined ? undefined : date];\n setFocus(undefined);\n }\n onChange(next);\n\n return next;\n });\n };\n\n const handleMonth = (month) => {\n setInstance(() => {\n const addMonths = range && value[0] && !value[1] ? (month > 0 ? 1 : -1) : month;\n const next = getFirstDateOfMonth(new Date(instance.getFullYear(), instance.getMonth() + addMonths));\n\n onNavigation(next);\n return next;\n });\n };\n\n const handleScroll = (event) => {\n if (vertical) setScrolling(true);\n\n onScroll(event);\n setBehavior();\n setTimestamp(Date.now());\n };\n\n const { testId, scrollEventThrottle } = others;\n let { className, months = 2, ...props } = others;\n\n const today = getToday();\n const instanceTS = instance.getTime();\n const todayMonthTS = getFirstDateOfMonth(today).getTime();\n const disabledPrevious =\n (disabledPast && instanceTS <= todayMonthTS) ||\n (from && instanceTS <= getFirstDateOfMonth(parseDate(from, format)).getTime());\n\n const disabledNext =\n to && parseDate(to, format).getTime() <= getFirstDateOfMonth(dateCalc(instance, months, 'months')).getTime();\n\n props = {\n ...props,\n disabledPast,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n disabledDatesTS: useMemo(() => disabledDates.map((date) => parseDate(date, format).getTime()), [disabledDates]),\n focus,\n format,\n from: from ? parseDate(from, format) : undefined,\n locale,\n range,\n role: others.role || 'calendar',\n selected,\n tag: 'calendar',\n timestamp,\n to:\n range &&\n rangeMaxDays &&\n selected[0] &&\n !selected[1] &&\n (!to || dateCalc(selected[0], rangeMaxDays, 'days') < parseDate(to, format))\n ? dateCalc(selected[0], rangeMaxDays, 'days')\n : to\n ? parseDate(to, format)\n : undefined,\n tooltips: !vertical || !scrolling ? props.tooltips : {},\n onChange: handleChange,\n onFocus: !isMobile ? setFocus : undefined,\n };\n\n if (vertical && to) months = dateDiff(today, parseDate(to, format)).months + 1;\n\n return (\n <View\n role={others.role}\n tag=\"calendar\"\n className={styles(style.calendar, vertical && style.vertical, className)}\n testId={testId}\n >\n {vertical && <Weekdays locale={locale} vertical={vertical} />}\n <ScrollView\n behavior={behavior}\n horizontal={!vertical}\n scrollTo={scrollTo}\n className={style.scrollview}\n scrollEventThrottle={scrollEventThrottle}\n onScroll={handleScroll}\n >\n {Array.from({ length: months }, (_, index) => (\n <Month\n instance={new Date(instance.getFullYear(), instance.getMonth() + index, 1)} // ! TODO: calc with mirai/locale\n key={index}\n ref={vertical && range ? getMonthRef({ autoScroll, el, index, instance, value }) : undefined}\n vertical={vertical}\n onNext={!vertical && index === months - 1 && !disabledNext ? () => handleMonth(months) : undefined}\n onPrevious={!vertical && index === 0 && !disabledPrevious ? () => handleMonth(-months) : undefined}\n {...props}\n testId={testId}\n />\n ))}\n </ScrollView>\n </View>\n );\n};\n\nCalendar.displayName = 'Component:Calendar';\n\nCalendar.propTypes = {\n autoScroll: PropTypes.bool,\n captions: PropTypes.shape({}),\n disabledDates: PropTypes.arrayOf(PropTypes.string),\n disabledPast: PropTypes.bool,\n format: PropTypes.string,\n from: PropTypes.string,\n highlights: PropTypes.arrayOf(PropTypes.string),\n locale: PropTypes.string,\n months: PropTypes.number,\n range: PropTypes.bool,\n rangeMaxDays: PropTypes.number,\n rangeMinDays: PropTypes.number,\n to: PropTypes.string,\n tooltips: PropTypes.shape({}),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),\n vertical: PropTypes.bool,\n onChange: PropTypes.func,\n onFocus: PropTypes.func,\n onNavigation: PropTypes.func,\n onScroll: PropTypes.func,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,MAAA,GAAAC,uBAAA,CAAAJ,OAAA;AAEA,IAAAK,eAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AAAoD,SAAAY,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAnB,uBAAAW,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAI,UAAA,GAAAJ,CAAA,KAAAK,OAAA,EAAAL,CAAA;AAAA,SAAAmB,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAR,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAE,CAAA,IAAAC,CAAA,OAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAD,CAAA,MAAAM,CAAA,CAAAN,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAM,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAE7C,MAAMG,QAAQ,GAAGC,IAAA,IAiBlB;EAAA,IAjBmB;IACvBC,UAAU,GAAG,KAAK;IAClBC,aAAa,GAAG,EAAE;IAClBC,YAAY,GAAG,IAAI;IACnBC,MAAM,GAAG,YAAY;IACrBC,IAAI;IACJC,MAAM;IACNC,KAAK,GAAG,KAAK;IACbC,YAAY;IACZC,EAAE;IACFC,KAAK;IACLC,QAAQ,EAAEC,YAAY,GAAG,KAAK;IAC9BC,QAAQ,GAAGA,CAAA,KAAM,CAAC,CAAC;IACnBC,OAAO,GAAGA,CAAA,KAAM,CAAC,CAAC;IAClBC,YAAY,GAAGA,CAAA,KAAM,CAAC,CAAC;IACvBC,QAAQ,GAAGA,CAAA,KAAM,CAAC,CAAC;IACnB,GAAGC;EACL,CAAC,GAAAjB,IAAA;EACC,MAAM;IAAEkB;EAAS,CAAC,GAAG,IAAAC,gBAAS,EAAC,CAAC;EAEhC,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAC1C,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC;EACpC,MAAM,CAACG,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAJ,eAAQ,EAAC,IAAAK,4BAAmB,EAAC,IAAAC,iBAAQ,EAAC,CAAC,CAAC,CAAC;EACzE,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAR,eAAQ,EAAC,CAAC;EAC1C,MAAM,CAACS,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAV,eAAQ,EAAC,CAAC;EAC5C,MAAM,CAACW,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAZ,eAAQ,EAACf,KAAK,GAAG,EAAE,GAAG4B,SAAS,CAAC;EAChE,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAf,eAAQ,EAAC,CAAC;EAC5C,MAAM,CAACX,QAAQ,EAAE2B,WAAW,CAAC,GAAG,IAAAhB,eAAQ,EAACV,YAAY,CAAC;EAEtD,MAAM2B,EAAE,GAAG,IAAAC,aAAM,EAAC,CAAC;EAEnB,IAAAC,gBAAS,EAAC,MAAM;IACdH,WAAW,CAAC1B,YAAY,IAAIM,QAAQ,CAAC;EACvC,CAAC,EAAE,CAACA,QAAQ,EAAEN,YAAY,CAAC,CAAC;EAE5B,IAAA6B,gBAAS,EAAC,MAAM;IACd,IAAI,CAAC9B,QAAQ,IAAI,CAAC4B,EAAE,EAAEG,OAAO,IAAI,CAAChC,KAAK,CAAC,CAAC,CAAC,EAAE;IAE5CW,WAAW,CAAC,MAAM,CAAC;IACnBS,WAAW,CAAC,IAAAa,oBAAW,EAAC,IAAAC,gBAAQ,EAACnB,QAAQ,EAAE,IAAAoB,iBAAS,EAACnC,KAAK,CAAC,CAAC,CAAC,EAAEN,MAAM,CAAC,CAAC,CAAC0C,MAAM,CAAC,CAAC;IAChF;EACF,CAAC,EAAE,CAACP,EAAE,EAAEG,OAAO,EAAE/B,QAAQ,CAAC,CAAC;EAE3B,IAAA8B,gBAAS,EAAC,MAAM;IACd,IAAIM,IAAI,GAAGxC,KAAK,GAAIG,KAAK,EAAEb,MAAM,GAAG,CAAC,GAAGa,KAAK,CAAC,CAAC,CAAC,GAAGyB,SAAS,GAAIzB,KAAK;IAErE,IAAIL,IAAI,IAAI0C,IAAI,EAAE;MAChB,MAAMC,QAAQ,GAAG,IAAAH,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC;MACxC,MAAM;QAAE6C;MAAK,CAAC,GAAG,IAAAL,gBAAQ,EAACI,QAAQ,EAAE,IAAAH,iBAAS,EAACE,IAAI,EAAE3C,MAAM,CAAC,CAAC;MAE5D,IAAI6C,IAAI,GAAG,CAAC,EAAEF,IAAI,GAAGZ,SAAS;IAChC;IACA,IAAI,CAACY,IAAI,EAAE,OAAOb,WAAW,CAAC3B,KAAK,GAAG,EAAE,GAAG4B,SAAS,CAAC;IAErDY,IAAI,GAAG,IAAAF,iBAAS,EAACE,IAAI,EAAE3C,MAAM,CAAC;IAC9B,IAAKG,KAAK,KAAK0B,QAAQ,CAACpC,MAAM,KAAK,CAAC,IAAIa,KAAK,CAACb,MAAM,KAAK,CAAC,CAAC,IAAK,CAACU,KAAK,EAAE;MACtE,MAAM2C,IAAI,GAAG,IAAAvB,4BAAmB,EAACoB,IAAI,CAAC;MACtC,MAAM;QAAED,MAAM,EAAEK;MAAW,CAAC,GAAG,IAAAP,gBAAQ,EAACnB,QAAQ,EAAEsB,IAAI,CAAC;MAEvD,IAAI,CAACpC,QAAQ,IAAI,CAACO,QAAQ,KAAKiC,UAAU,IAAIL,MAAM,IAAIK,UAAU,GAAG,CAAC,CAAC,EAAEzB,WAAW,CAACwB,IAAI,CAAC,CAAC,KACrF,IAAIvC,QAAQ,IAAIO,QAAQ,EAAE;QAC7BjB,UAAU,IAAI6B,WAAW,CAAC,IAAAa,oBAAW,EAACQ,UAAU,CAAC,CAAC;QAClDnB,YAAY,CAAC,KAAK,CAAC;MACrB;IACF;IAEAE,WAAW,CAAC3B,KAAK,GAAG,CAAC,IAAA6C,WAAG,EAACL,IAAI,CAAC,EAAErC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAA0C,WAAG,EAAC,IAAAP,iBAAS,EAACnC,KAAK,CAAC,CAAC,CAAC,EAAEN,MAAM,CAAC,CAAC,GAAG+B,SAAS,CAAC,GAAG,IAAAiB,WAAG,EAACL,IAAI,CAAC,CAAC;IACrG;EACF,CAAC,EAAE,CAAC3C,MAAM,EAAEC,IAAI,EAAEE,KAAK,EAAEG,KAAK,CAAC,CAAC;EAEhC,IAAA+B,gBAAS,EAAC,MAAM;IACdpC,IAAI,KAAK,CAACK,KAAK,IAAIA,KAAK,CAACb,MAAM,KAAK,CAAC,IAAI,CAACa,KAAK,CAAC,CAAC,CAAC,CAAC,IAAIgB,WAAW,CAAC,IAAAC,4BAAmB,EAAC,IAAAkB,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC,CAAC,CAAC;IAChH;EACF,CAAC,EAAE,CAACC,IAAI,CAAC,CAAC;EAEV,IAAAoC,gBAAS,EAAC,MAAM;IACd3B,OAAO,CAACS,KAAK,CAAC;EAChB,CAAC,EAAE,CAACA,KAAK,EAAET,OAAO,CAAC,CAAC;EAEpB,MAAMuC,YAAY,GAAIN,IAAI,IAAK;IAC7Bb,WAAW,CAAC,MAAM;MAChB,IAAIgB,IAAI;MAER,IAAI,CAAC3C,KAAK,EAAE;QACV2C,IAAI,GAAGH,IAAI;MACb,CAAC,MAAM,IAAId,QAAQ,CAAC,CAAC,CAAC,KAAKE,SAAS,IAAIY,IAAI,GAAGd,QAAQ,CAAC,CAAC,CAAC,EAAE;QAC1DiB,IAAI,GAAG,CAACjB,QAAQ,CAAC,CAAC,CAAC,EAAEc,IAAI,CAAC;MAC5B,CAAC,MAAM;QACLG,IAAI,GAAG,CAACjB,QAAQ,CAAC,CAAC,CAAC,EAAEqB,OAAO,CAAC,CAAC,KAAKP,IAAI,CAACO,OAAO,CAAC,CAAC,IAAIrB,QAAQ,CAAC,CAAC,CAAC,KAAKE,SAAS,GAAGA,SAAS,GAAGY,IAAI,CAAC;QAClGvB,QAAQ,CAACW,SAAS,CAAC;MACrB;MACAtB,QAAQ,CAACqC,IAAI,CAAC;MAEd,OAAOA,IAAI;IACb,CAAC,CAAC;EACJ,CAAC;EAED,MAAMK,WAAW,GAAIC,KAAK,IAAK;IAC7B9B,WAAW,CAAC,MAAM;MAChB,MAAM+B,SAAS,GAAGlD,KAAK,IAAIG,KAAK,CAAC,CAAC,CAAC,IAAI,CAACA,KAAK,CAAC,CAAC,CAAC,GAAI8C,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAIA,KAAK;MAC/E,MAAMN,IAAI,GAAG,IAAAvB,4BAAmB,EAAC,IAAI+B,IAAI,CAACjC,QAAQ,CAACkC,WAAW,CAAC,CAAC,EAAElC,QAAQ,CAACmC,QAAQ,CAAC,CAAC,GAAGH,SAAS,CAAC,CAAC;MAEnG1C,YAAY,CAACmC,IAAI,CAAC;MAClB,OAAOA,IAAI;IACb,CAAC,CAAC;EACJ,CAAC;EAED,MAAMW,YAAY,GAAIC,KAAK,IAAK;IAC9B,IAAInD,QAAQ,EAAEqB,YAAY,CAAC,IAAI,CAAC;IAEhChB,QAAQ,CAAC8C,KAAK,CAAC;IACfzC,WAAW,CAAC,CAAC;IACbgB,YAAY,CAACqB,IAAI,CAACK,GAAG,CAAC,CAAC,CAAC;EAC1B,CAAC;EAED,MAAM;IAAEC,MAAM;IAAEC;EAAoB,CAAC,GAAGhD,MAAM;EAC9C,IAAI;IAAEiD,SAAS;IAAEpB,MAAM,GAAG,CAAC;IAAE,GAAGqB;EAAM,CAAC,GAAGlD,MAAM;EAEhD,MAAMmD,KAAK,GAAG,IAAAxC,iBAAQ,EAAC,CAAC;EACxB,MAAMyC,UAAU,GAAG5C,QAAQ,CAAC6B,OAAO,CAAC,CAAC;EACrC,MAAMgB,YAAY,GAAG,IAAA3C,4BAAmB,EAACyC,KAAK,CAAC,CAACd,OAAO,CAAC,CAAC;EACzD,MAAMiB,gBAAgB,GACnBpE,YAAY,IAAIkE,UAAU,IAAIC,YAAY,IAC1CjE,IAAI,IAAIgE,UAAU,IAAI,IAAA1C,4BAAmB,EAAC,IAAAkB,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC,CAAC,CAACkD,OAAO,CAAC,CAAE;EAEhF,MAAMkB,YAAY,GAChB/D,EAAE,IAAI,IAAAoC,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,CAACkD,OAAO,CAAC,CAAC,IAAI,IAAA3B,4BAAmB,EAAC,IAAA8C,gBAAQ,EAAChD,QAAQ,EAAEqB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAACQ,OAAO,CAAC,CAAC;EAE9Ga,KAAK,GAAG;IACN,GAAGA,KAAK;IACRhE,YAAY;IACZ;IACAuE,eAAe,EAAE,IAAAC,cAAO,EAAC,MAAMzE,aAAa,CAAC0E,GAAG,CAAE7B,IAAI,IAAK,IAAAF,iBAAS,EAACE,IAAI,EAAE3C,MAAM,CAAC,CAACkD,OAAO,CAAC,CAAC,CAAC,EAAE,CAACpD,aAAa,CAAC,CAAC;IAC/GqB,KAAK;IACLnB,MAAM;IACNC,IAAI,EAAEA,IAAI,GAAG,IAAAwC,iBAAS,EAACxC,IAAI,EAAED,MAAM,CAAC,GAAG+B,SAAS;IAChD7B,MAAM;IACNC,KAAK;IACLsE,IAAI,EAAE5D,MAAM,CAAC4D,IAAI,IAAI,UAAU;IAC/B5C,QAAQ;IACR6C,GAAG,EAAE,UAAU;IACf1C,SAAS;IACT3B,EAAE,EACAF,KAAK,IACLC,YAAY,IACZyB,QAAQ,CAAC,CAAC,CAAC,IACX,CAACA,QAAQ,CAAC,CAAC,CAAC,KACX,CAACxB,EAAE,IAAI,IAAAgE,gBAAQ,EAACxC,QAAQ,CAAC,CAAC,CAAC,EAAEzB,YAAY,EAAE,MAAM,CAAC,GAAG,IAAAqC,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,CAAC,GACxE,IAAAqE,gBAAQ,EAACxC,QAAQ,CAAC,CAAC,CAAC,EAAEzB,YAAY,EAAE,MAAM,CAAC,GAC3CC,EAAE,GACF,IAAAoC,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,GACrB+B,SAAS;IACf4C,QAAQ,EAAE,CAACpE,QAAQ,IAAI,CAACoB,SAAS,GAAGoC,KAAK,CAACY,QAAQ,GAAG,CAAC,CAAC;IACvDlE,QAAQ,EAAEwC,YAAY;IACtBvC,OAAO,EAAE,CAACI,QAAQ,GAAGM,QAAQ,GAAGW;EAClC,CAAC;EAED,IAAIxB,QAAQ,IAAIF,EAAE,EAAEqC,MAAM,GAAG,IAAAF,gBAAQ,EAACwB,KAAK,EAAE,IAAAvB,iBAAS,EAACpC,EAAE,EAAEL,MAAM,CAAC,CAAC,CAAC0C,MAAM,GAAG,CAAC;EAE9E,oBACElF,MAAA,CAAAe,OAAA,CAAAqG,aAAA,CAAC5G,WAAA,CAAA6G,IAAI;IACHJ,IAAI,EAAE5D,MAAM,CAAC4D,IAAK;IAClBC,GAAG,EAAC,UAAU;IACdZ,SAAS,EAAE,IAAAgB,gBAAM,EAACC,uBAAK,CAACC,QAAQ,EAAEzE,QAAQ,IAAIwE,uBAAK,CAACxE,QAAQ,EAAEuD,SAAS,CAAE;IACzEF,MAAM,EAAEA;EAAO,GAEdrD,QAAQ,iBAAI/C,MAAA,CAAAe,OAAA,CAAAqG,aAAA,CAAChH,UAAA,CAAAqH,QAAQ;IAAC/E,MAAM,EAAEA,MAAO;IAACK,QAAQ,EAAEA;EAAS,CAAE,CAAC,eAC7D/C,MAAA,CAAAe,OAAA,CAAAqG,aAAA,CAAC5G,WAAA,CAAAkH,UAAU;IACTlE,QAAQ,EAAEA,QAAS;IACnBmE,UAAU,EAAE,CAAC5E,QAAS;IACtBkB,QAAQ,EAAEA,QAAS;IACnBqC,SAAS,EAAEiB,uBAAK,CAACK,UAAW;IAC5BvB,mBAAmB,EAAEA,mBAAoB;IACzCjD,QAAQ,EAAE6C;EAAa,GAEtB4B,KAAK,CAACpF,IAAI,CAAC;IAAER,MAAM,EAAEiD;EAAO,CAAC,EAAE,CAAC4C,CAAC,EAAEC,KAAK,kBACvC/H,MAAA,CAAAe,OAAA,CAAAqG,aAAA,CAACjH,SAAA,CAAA6H,KAAK,EAAAnG,QAAA;IACJgC,QAAQ,EAAE,IAAIiC,IAAI,CAACjC,QAAQ,CAACkC,WAAW,CAAC,CAAC,EAAElC,QAAQ,CAACmC,QAAQ,CAAC,CAAC,GAAG+B,KAAK,EAAE,CAAC,CAAE,CAAC;IAAA;IAC5EE,GAAG,EAAEF,KAAM;IACXG,GAAG,EAAEnF,QAAQ,IAAIJ,KAAK,GAAG,IAAAwF,oBAAW,EAAC;MAAE9F,UAAU;MAAEsC,EAAE;MAAEoD,KAAK;MAAElE,QAAQ;MAAEf;IAAM,CAAC,CAAC,GAAGyB,SAAU;IAC7FxB,QAAQ,EAAEA,QAAS;IACnBqF,MAAM,EAAE,CAACrF,QAAQ,IAAIgF,KAAK,KAAK7C,MAAM,GAAG,CAAC,IAAI,CAAC0B,YAAY,GAAG,MAAMjB,WAAW,CAACT,MAAM,CAAC,GAAGX,SAAU;IACnG8D,UAAU,EAAE,CAACtF,QAAQ,IAAIgF,KAAK,KAAK,CAAC,IAAI,CAACpB,gBAAgB,GAAG,MAAMhB,WAAW,CAAC,CAACT,MAAM,CAAC,GAAGX;EAAU,GAC/FgC,KAAK;IACTH,MAAM,EAAEA;EAAO,EAChB,CACF,CACS,CACR,CAAC;AAEX,CAAC;AAACkC,OAAA,CAAAnG,QAAA,GAAAA,QAAA;AAEFA,QAAQ,CAACoG,WAAW,GAAG,oBAAoB;AAE3CpG,QAAQ,CAACqG,SAAS,GAAG;EACnBnG,UAAU,EAAEoG,kBAAS,CAACC,IAAI;EAC1BC,QAAQ,EAAEF,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7BtG,aAAa,EAAEmG,kBAAS,CAACI,OAAO,CAACJ,kBAAS,CAACK,MAAM,CAAC;EAClDvG,YAAY,EAAEkG,kBAAS,CAACC,IAAI;EAC5BlG,MAAM,EAAEiG,kBAAS,CAACK,MAAM;EACxBrG,IAAI,EAAEgG,kBAAS,CAACK,MAAM;EACtBC,UAAU,EAAEN,kBAAS,CAACI,OAAO,CAACJ,kBAAS,CAACK,MAAM,CAAC;EAC/CpG,MAAM,EAAE+F,kBAAS,CAACK,MAAM;EACxB5D,MAAM,EAAEuD,kBAAS,CAACO,MAAM;EACxBrG,KAAK,EAAE8F,kBAAS,CAACC,IAAI;EACrB9F,YAAY,EAAE6F,kBAAS,CAACO,MAAM;EAC9BC,YAAY,EAAER,kBAAS,CAACO,MAAM;EAC9BnG,EAAE,EAAE4F,kBAAS,CAACK,MAAM;EACpB3B,QAAQ,EAAEsB,kBAAS,CAACG,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7B9F,KAAK,EAAE2F,kBAAS,CAACS,SAAS,CAAC,CAACT,kBAAS,CAACK,MAAM,EAAEL,kBAAS,CAACI,OAAO,CAACJ,kBAAS,CAACK,MAAM,CAAC,CAAC,CAAC;EACnF/F,QAAQ,EAAE0F,kBAAS,CAACC,IAAI;EACxBzF,QAAQ,EAAEwF,kBAAS,CAACU,IAAI;EACxBjG,OAAO,EAAEuF,kBAAS,CAACU,IAAI;EACvBhG,YAAY,EAAEsF,kBAAS,CAACU,IAAI;EAC5B/F,QAAQ,EAAEqF,kBAAS,CAACU;AACtB,CAAC","ignoreList":[]}