@onesy/ui-react 1.0.130 → 1.0.132

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 (712) hide show
  1. package/Accordion/Accordion.d.ts +2 -2
  2. package/Accordion/Accordion.js +342 -242
  3. package/Accordion/index.js +12 -7
  4. package/AdvancedTextField/AdvancedTextField.d.ts +1 -1
  5. package/AdvancedTextField/AdvancedTextField.js +165 -157
  6. package/AdvancedTextField/index.js +12 -7
  7. package/Append/Append.d.ts +3 -3
  8. package/Append/Append.js +502 -519
  9. package/Append/index.js +12 -7
  10. package/AreaChart/AreaChart.d.ts +1 -1
  11. package/AreaChart/AreaChart.js +53 -40
  12. package/AreaChart/index.js +12 -7
  13. package/AreaChartItem/AreaChartItem.d.ts +1 -1
  14. package/AreaChartItem/AreaChartItem.js +325 -237
  15. package/AreaChartItem/index.js +12 -7
  16. package/AudioPlayer/AudioPlayer.d.ts +1 -1
  17. package/AudioPlayer/AudioPlayer.js +683 -466
  18. package/AudioPlayer/index.js +12 -7
  19. package/AudioRecorder/AudioRecorder.d.ts +1 -1
  20. package/AudioRecorder/AudioRecorder.js +359 -259
  21. package/AudioRecorder/index.js +12 -7
  22. package/AutoComplete/AutoComplete.d.ts +3 -3
  23. package/AutoComplete/AutoComplete.js +693 -568
  24. package/AutoComplete/index.js +12 -7
  25. package/AutoCompleteCountry/AutoCompleteCountry.d.ts +1 -1
  26. package/AutoCompleteCountry/AutoCompleteCountry.js +99 -62
  27. package/AutoCompleteCountry/index.js +12 -7
  28. package/AutoCompleteCurrency/AutoCompleteCurrency.d.ts +1 -1
  29. package/AutoCompleteCurrency/AutoCompleteCurrency.js +73 -61
  30. package/AutoCompleteCurrency/index.js +12 -7
  31. package/Avatar/Avatar.d.ts +1 -1
  32. package/Avatar/Avatar.js +113 -86
  33. package/Avatar/index.js +12 -7
  34. package/AvatarGroup/AvatarGroup.d.ts +1 -1
  35. package/AvatarGroup/AvatarGroup.js +104 -87
  36. package/AvatarGroup/index.js +12 -7
  37. package/Backdrop/Backdrop.d.ts +1 -1
  38. package/Backdrop/Backdrop.js +160 -139
  39. package/Backdrop/index.js +12 -7
  40. package/Badge/Badge.d.ts +1 -1
  41. package/Badge/Badge.js +116 -96
  42. package/Badge/index.js +12 -7
  43. package/Banner/Banner.d.ts +1 -1
  44. package/Banner/Banner.js +126 -85
  45. package/Banner/index.js +12 -7
  46. package/BottomAppBar/BottomAppBar.d.ts +1 -1
  47. package/BottomAppBar/BottomAppBar.js +89 -60
  48. package/BottomAppBar/index.js +12 -7
  49. package/BottomSheet/BottomSheet.d.ts +1 -1
  50. package/BottomSheet/BottomSheet.js +66 -59
  51. package/BottomSheet/index.js +12 -7
  52. package/Box/Box.d.ts +1 -1
  53. package/Box/Box.js +43 -35
  54. package/Box/index.js +12 -7
  55. package/Breadcrumbs/Breadcrumbs.d.ts +1 -1
  56. package/Breadcrumbs/Breadcrumbs.js +168 -144
  57. package/Breadcrumbs/index.js +12 -7
  58. package/BubbleChart/BubbleChart.d.ts +1 -1
  59. package/BubbleChart/BubbleChart.js +261 -132
  60. package/BubbleChart/index.js +12 -7
  61. package/BubbleChartItem/BubbleChartItem.d.ts +1 -1
  62. package/BubbleChartItem/BubbleChartItem.js +228 -161
  63. package/BubbleChartItem/index.js +12 -7
  64. package/Button/Button.d.ts +1 -1
  65. package/Button/Button.js +488 -467
  66. package/Button/index.js +12 -7
  67. package/Buttons/Buttons.d.ts +1 -1
  68. package/Buttons/Buttons.js +343 -294
  69. package/Buttons/index.js +12 -7
  70. package/Calendar/Calendar.d.ts +3 -3
  71. package/Calendar/Calendar.js +715 -452
  72. package/Calendar/index.js +12 -7
  73. package/CalendarAvailability/CalendarAvailability.d.ts +2 -2
  74. package/CalendarAvailability/CalendarAvailability.js +709 -388
  75. package/CalendarAvailability/index.js +12 -7
  76. package/CalendarMenu/CalendarMenu.d.ts +1 -1
  77. package/CalendarMenu/CalendarMenu.js +430 -303
  78. package/CalendarMenu/index.js +12 -7
  79. package/CalendarMonth/CalendarMonth.d.ts +5 -5
  80. package/CalendarMonth/CalendarMonth.js +537 -498
  81. package/CalendarMonth/index.js +12 -7
  82. package/CalendarViews/CalendarViews.d.ts +2 -2
  83. package/CalendarViews/CalendarViews.js +403 -254
  84. package/CalendarViews/index.js +12 -7
  85. package/CalendarWeek/CalendarWeek.d.ts +1 -1
  86. package/CalendarWeek/CalendarWeek.js +536 -395
  87. package/CalendarWeek/index.js +12 -7
  88. package/Card/Card.d.ts +1 -1
  89. package/Card/Card.js +133 -101
  90. package/Card/index.js +12 -7
  91. package/CardButton/CardButton.d.ts +1 -1
  92. package/CardButton/CardButton.js +78 -58
  93. package/CardButton/index.js +12 -7
  94. package/CardFooter/CardFooter.d.ts +1 -1
  95. package/CardFooter/CardFooter.js +58 -39
  96. package/CardFooter/index.js +12 -7
  97. package/CardHeader/CardHeader.d.ts +1 -1
  98. package/CardHeader/CardHeader.js +61 -44
  99. package/CardHeader/index.js +12 -7
  100. package/CardImage/CardImage.d.ts +1 -1
  101. package/CardImage/CardImage.js +80 -67
  102. package/CardImage/index.js +12 -7
  103. package/CardMain/CardMain.d.ts +1 -1
  104. package/CardMain/CardMain.js +53 -39
  105. package/CardMain/index.js +12 -7
  106. package/Carousel/Carousel.d.ts +4 -4
  107. package/Carousel/Carousel.js +1025 -913
  108. package/Carousel/index.js +12 -7
  109. package/Chart/Chart.d.ts +4 -4
  110. package/Chart/Chart.js +1325 -1174
  111. package/Chart/index.js +12 -7
  112. package/Checkbox/Checkbox.d.ts +1 -1
  113. package/Checkbox/Checkbox.js +339 -325
  114. package/Checkbox/index.js +12 -7
  115. package/Chip/Chip.d.ts +1 -1
  116. package/Chip/Chip.js +131 -102
  117. package/Chip/index.js +12 -7
  118. package/Chips/Chips.d.ts +1 -1
  119. package/Chips/Chips.js +121 -94
  120. package/Chips/index.js +12 -7
  121. package/ClickListener/ClickListener.d.ts +1 -1
  122. package/ClickListener/ClickListener.js +86 -89
  123. package/ClickListener/index.js +12 -7
  124. package/Clock/Clock.d.ts +5 -5
  125. package/Clock/Clock.js +470 -417
  126. package/Clock/index.js +12 -7
  127. package/ColorTextField/ColorTextField.d.ts +1 -1
  128. package/ColorTextField/ColorTextField.js +234 -171
  129. package/ColorTextField/index.js +12 -7
  130. package/ColumnChart/ColumnChart.d.ts +1 -1
  131. package/ColumnChart/ColumnChart.js +63 -46
  132. package/ColumnChart/index.js +12 -7
  133. package/ColumnChartItem/ColumnChartItem.d.ts +1 -1
  134. package/ColumnChartItem/ColumnChartItem.js +208 -149
  135. package/ColumnChartItem/index.js +12 -7
  136. package/Confirm/Confirm.d.ts +4 -4
  137. package/Confirm/Confirm.js +184 -129
  138. package/Confirm/Context.js +9 -7
  139. package/Confirm/index.js +32 -13
  140. package/Confirm/useConfirm.js +11 -10
  141. package/Container/Container.d.ts +1 -1
  142. package/Container/Container.js +154 -133
  143. package/Container/index.js +12 -7
  144. package/CookieBanner/CookieBanner.d.ts +1 -1
  145. package/CookieBanner/CookieBanner.js +142 -76
  146. package/CookieBanner/index.js +12 -7
  147. package/Countdown/Countdown.d.ts +1 -1
  148. package/Countdown/Countdown.js +403 -255
  149. package/Countdown/index.js +12 -7
  150. package/DatePicker/DatePicker.d.ts +1 -1
  151. package/DatePicker/DatePicker.js +802 -547
  152. package/DatePicker/index.js +12 -7
  153. package/DateRangePicker/DateRangePicker.d.ts +1 -1
  154. package/DateRangePicker/DateRangePicker.js +44 -37
  155. package/DateRangePicker/index.js +12 -7
  156. package/DateTimePicker/DateTimePicker.d.ts +2 -2
  157. package/DateTimePicker/DateTimePicker.js +672 -459
  158. package/DateTimePicker/index.js +12 -7
  159. package/DateTimeRangePicker/DateTimeRangePicker.d.ts +1 -1
  160. package/DateTimeRangePicker/DateTimeRangePicker.js +44 -37
  161. package/DateTimeRangePicker/index.js +12 -7
  162. package/Divider/Divider.d.ts +1 -1
  163. package/Divider/Divider.js +198 -185
  164. package/Divider/index.js +12 -7
  165. package/DonutChart/DonutChart.d.ts +1 -1
  166. package/DonutChart/DonutChart.js +49 -42
  167. package/DonutChart/index.js +12 -7
  168. package/DragAndDropList/DragAndDropList.d.ts +1 -1
  169. package/DragAndDropList/DragAndDropList.js +160 -156
  170. package/DragAndDropList/index.js +12 -7
  171. package/Drawing/Drawing.d.ts +2 -2
  172. package/Drawing/Drawing.js +850 -523
  173. package/Drawing/index.js +12 -7
  174. package/DropZone/DropZone.d.ts +1 -1
  175. package/DropZone/DropZone.js +239 -201
  176. package/DropZone/index.js +12 -7
  177. package/Emojis/Emojis.d.ts +3 -3
  178. package/Emojis/Emojis.js +409 -317
  179. package/Emojis/emojis_list.js +7279 -9250
  180. package/Emojis/index.js +19 -9
  181. package/Expand/Expand.d.ts +1 -1
  182. package/Expand/Expand.js +201 -149
  183. package/Expand/index.js +12 -7
  184. package/Fab/Fab.d.ts +1 -1
  185. package/Fab/Fab.js +46 -26
  186. package/Fab/index.js +12 -7
  187. package/Fade/Fade.d.ts +1 -1
  188. package/Fade/Fade.js +131 -101
  189. package/Fade/index.js +12 -7
  190. package/FileChoose/FileChoose.d.ts +2 -2
  191. package/FileChoose/FileChoose.js +218 -150
  192. package/FileChoose/index.js +12 -7
  193. package/Focus/Focus.d.ts +1 -1
  194. package/Focus/Focus.js +87 -88
  195. package/Focus/index.js +12 -7
  196. package/Form/Form.d.ts +1 -1
  197. package/Form/Form.js +194 -120
  198. package/Form/index.js +12 -7
  199. package/FormRow/FormRow.d.ts +1 -1
  200. package/FormRow/FormRow.js +123 -78
  201. package/FormRow/index.js +12 -7
  202. package/Forms/Forms.d.ts +1 -1
  203. package/Forms/Forms.js +55 -41
  204. package/Forms/index.js +12 -7
  205. package/Frame/Frame.d.ts +1 -1
  206. package/Frame/Frame.js +212 -150
  207. package/Frame/index.js +12 -7
  208. package/Grid/Grid.d.ts +2 -2
  209. package/Grid/Grid.js +231 -166
  210. package/Grid/index.js +12 -7
  211. package/Grow/Grow.d.ts +1 -1
  212. package/Grow/Grow.js +137 -109
  213. package/Grow/index.js +12 -7
  214. package/HTMLCanvas/HTMLCanvas.d.ts +2 -2
  215. package/HTMLCanvas/HTMLCanvas.js +752 -542
  216. package/HTMLCanvas/index.js +23 -21
  217. package/IFrame/IFrame.d.ts +1 -1
  218. package/IFrame/IFrame.js +122 -104
  219. package/IFrame/index.js +12 -7
  220. package/Icon/Icon.d.ts +1 -1
  221. package/Icon/Icon.js +112 -95
  222. package/Icon/index.js +23 -21
  223. package/IconButton/IconButton.d.ts +1 -1
  224. package/IconButton/IconButton.js +49 -37
  225. package/IconButton/index.js +12 -7
  226. package/Image/Image.d.ts +1 -1
  227. package/Image/Image.js +285 -252
  228. package/Image/index.js +12 -7
  229. package/ImageCrop/ImageCrop.d.ts +2 -2
  230. package/ImageCrop/ImageCrop.js +1073 -1048
  231. package/ImageCrop/index.js +12 -7
  232. package/ImageEdit/ImageEdit.d.ts +2 -2
  233. package/ImageEdit/ImageEdit.js +1088 -783
  234. package/ImageEdit/index.js +12 -7
  235. package/ImageGallery/ImageGallery.d.ts +1 -1
  236. package/ImageGallery/ImageGallery.js +518 -473
  237. package/ImageGallery/index.js +12 -7
  238. package/ImageList/ImageList.d.ts +1 -1
  239. package/ImageList/ImageList.js +136 -129
  240. package/ImageList/index.js +12 -7
  241. package/ImageListItem/ImageListItem.d.ts +1 -1
  242. package/ImageListItem/ImageListItem.js +101 -87
  243. package/ImageListItem/index.js +12 -7
  244. package/ImageListItemBox/ImageListItemBox.d.ts +1 -1
  245. package/ImageListItemBox/ImageListItemBox.js +61 -50
  246. package/ImageListItemBox/index.js +12 -7
  247. package/Info/Info.d.ts +1 -1
  248. package/Info/Info.js +99 -63
  249. package/Info/index.js +12 -7
  250. package/Interaction/Interaction.d.ts +2 -2
  251. package/Interaction/Interaction.js +405 -345
  252. package/Interaction/index.js +12 -7
  253. package/Keyframes/Context.js +9 -7
  254. package/Keyframes/Keyframes.d.ts +3 -3
  255. package/Keyframes/Keyframes.js +189 -174
  256. package/Keyframes/index.js +41 -25
  257. package/Keyframes/useKeyframes.js +11 -10
  258. package/Label/Label.d.ts +1 -1
  259. package/Label/Label.js +177 -151
  260. package/Label/index.js +12 -7
  261. package/Labels/Labels.d.ts +1 -1
  262. package/Labels/Labels.js +126 -98
  263. package/Labels/index.js +12 -7
  264. package/Line/Line.d.ts +6 -6
  265. package/Line/Line.js +296 -174
  266. package/Line/index.js +12 -7
  267. package/LineChart/LineChart.d.ts +1 -1
  268. package/LineChart/LineChart.js +57 -40
  269. package/LineChart/index.js +12 -7
  270. package/LineChartItem/LineChartItem.d.ts +1 -1
  271. package/LineChartItem/LineChartItem.js +239 -177
  272. package/LineChartItem/index.js +12 -7
  273. package/LinearMeter/LinearMeter.d.ts +1 -1
  274. package/LinearMeter/LinearMeter.js +453 -377
  275. package/LinearMeter/index.js +12 -7
  276. package/LinearProgress/LinearProgress.d.ts +1 -1
  277. package/LinearProgress/LinearProgress.js +324 -255
  278. package/LinearProgress/index.js +12 -7
  279. package/Link/Link.d.ts +1 -1
  280. package/Link/Link.js +182 -127
  281. package/Link/index.js +12 -7
  282. package/Links/Links.d.ts +2 -2
  283. package/Links/Links.js +277 -156
  284. package/Links/index.js +12 -7
  285. package/List/List.d.ts +1 -1
  286. package/List/List.js +148 -113
  287. package/List/index.js +12 -7
  288. package/ListItem/ListItem.d.ts +1 -1
  289. package/ListItem/ListItem.js +388 -362
  290. package/ListItem/index.js +12 -7
  291. package/ListSubheader/ListSubheader.d.ts +1 -1
  292. package/ListSubheader/ListSubheader.js +52 -44
  293. package/ListSubheader/index.js +12 -7
  294. package/MainProgress/Context.js +9 -7
  295. package/MainProgress/MainProgress.d.ts +3 -3
  296. package/MainProgress/MainProgress.js +193 -161
  297. package/MainProgress/index.js +32 -13
  298. package/MainProgress/useMainProgress.js +11 -10
  299. package/Markdown/Markdown.d.ts +1 -1
  300. package/Markdown/Markdown.js +676 -704
  301. package/Markdown/index.js +12 -7
  302. package/Masonry/Masonry.d.ts +1 -1
  303. package/Masonry/Masonry.js +207 -181
  304. package/Masonry/index.js +12 -7
  305. package/Medias/Medias.d.ts +3 -3
  306. package/Medias/Medias.js +436 -398
  307. package/Medias/index.js +12 -7
  308. package/Menu/Menu.d.ts +1 -1
  309. package/Menu/Menu.js +278 -243
  310. package/Menu/index.js +12 -7
  311. package/MenuDesktop/MenuDesktop.d.ts +3 -3
  312. package/MenuDesktop/MenuDesktop.js +496 -419
  313. package/MenuDesktop/index.js +12 -7
  314. package/MenuItem/MenuItem.d.ts +1 -1
  315. package/MenuItem/MenuItem.js +286 -231
  316. package/MenuItem/index.js +12 -7
  317. package/Meta/Meta.d.ts +1 -1
  318. package/Meta/Meta.js +78 -54
  319. package/Meta/index.js +12 -7
  320. package/Modal/Modal.d.ts +1 -1
  321. package/Modal/Modal.js +333 -272
  322. package/Modal/index.js +12 -7
  323. package/ModalFooter/ModalFooter.d.ts +1 -1
  324. package/ModalFooter/ModalFooter.js +50 -39
  325. package/ModalFooter/index.js +12 -7
  326. package/ModalHeader/ModalHeader.d.ts +1 -1
  327. package/ModalHeader/ModalHeader.js +51 -39
  328. package/ModalHeader/index.js +12 -7
  329. package/ModalIcon/ModalIcon.d.ts +1 -1
  330. package/ModalIcon/ModalIcon.js +29 -23
  331. package/ModalIcon/index.js +12 -7
  332. package/ModalMain/ModalMain.d.ts +1 -1
  333. package/ModalMain/ModalMain.js +50 -41
  334. package/ModalMain/index.js +12 -7
  335. package/ModalText/ModalText.d.ts +1 -1
  336. package/ModalText/ModalText.js +47 -37
  337. package/ModalText/index.js +12 -7
  338. package/ModalTitle/ModalTitle.d.ts +1 -1
  339. package/ModalTitle/ModalTitle.js +47 -37
  340. package/ModalTitle/index.js +12 -7
  341. package/MoreOptions/MoreOptions.d.ts +1 -1
  342. package/MoreOptions/MoreOptions.js +72 -52
  343. package/MoreOptions/index.js +12 -7
  344. package/Move/Move.d.ts +1 -1
  345. package/Move/Move.js +166 -141
  346. package/Move/index.js +12 -7
  347. package/NavigationBar/NavigationBar.d.ts +2 -2
  348. package/NavigationBar/NavigationBar.js +133 -109
  349. package/NavigationBar/index.js +12 -7
  350. package/NavigationDrawer/NavigationDrawer.d.ts +1 -1
  351. package/NavigationDrawer/NavigationDrawer.js +241 -211
  352. package/NavigationDrawer/index.js +12 -7
  353. package/NavigationItem/NavigationItem.d.ts +2 -2
  354. package/NavigationItem/NavigationItem.js +293 -262
  355. package/NavigationItem/index.js +12 -7
  356. package/NavigationRail/NavigationRail.d.ts +1 -1
  357. package/NavigationRail/NavigationRail.js +187 -150
  358. package/NavigationRail/index.js +12 -7
  359. package/NotFound/NotFound.d.ts +1 -1
  360. package/NotFound/NotFound.js +89 -66
  361. package/NotFound/index.js +12 -7
  362. package/NumericTextField/NumericTextField.d.ts +1 -1
  363. package/NumericTextField/NumericTextField.js +217 -212
  364. package/NumericTextField/index.js +12 -7
  365. package/Page/Page.d.ts +2 -2
  366. package/Page/Page.js +131 -67
  367. package/Page/index.js +12 -7
  368. package/PageTransition/PageTransition.d.ts +1 -1
  369. package/PageTransition/PageTransition.js +112 -102
  370. package/PageTransition/index.js +12 -7
  371. package/Pagination/Pagination.d.ts +1 -1
  372. package/Pagination/Pagination.js +153 -98
  373. package/Pagination/index.js +12 -7
  374. package/PaginationItem/PaginationItem.d.ts +1 -1
  375. package/PaginationItem/PaginationItem.js +85 -65
  376. package/PaginationItem/index.js +12 -7
  377. package/Parallax/Parallax.d.ts +2 -2
  378. package/Parallax/Parallax.js +138 -145
  379. package/Parallax/index.js +12 -7
  380. package/Path/Path.d.ts +1 -1
  381. package/Path/Path.js +40 -35
  382. package/Path/index.js +12 -7
  383. package/PieChart/PieChart.d.ts +1 -1
  384. package/PieChart/PieChart.js +382 -267
  385. package/PieChart/index.js +12 -7
  386. package/Placeholder/Placeholder.d.ts +1 -1
  387. package/Placeholder/Placeholder.js +125 -117
  388. package/Placeholder/index.js +12 -7
  389. package/Portal/Portal.d.ts +1 -1
  390. package/Portal/Portal.js +37 -38
  391. package/Portal/index.js +12 -7
  392. package/Properties/Properties.d.ts +2 -2
  393. package/Properties/Properties.js +85 -64
  394. package/Properties/index.js +12 -7
  395. package/Property/Property.d.ts +1 -1
  396. package/Property/Property.js +120 -108
  397. package/Property/index.js +12 -7
  398. package/Radio/Radio.d.ts +1 -1
  399. package/Radio/Radio.js +211 -181
  400. package/Radio/index.js +12 -7
  401. package/Radios/Radios.d.ts +1 -1
  402. package/Radios/Radios.js +124 -92
  403. package/Radios/index.js +12 -7
  404. package/Rating/Rating.d.ts +1 -1
  405. package/Rating/Rating.js +353 -360
  406. package/Rating/index.js +12 -7
  407. package/Reset/Reset.d.ts +1 -1
  408. package/Reset/Reset.js +19 -24
  409. package/Reset/index.js +12 -7
  410. package/Reveal/Reveal.d.ts +1 -1
  411. package/Reveal/Reveal.js +98 -89
  412. package/Reveal/index.js +12 -7
  413. package/RichTextEditor/RichTextEditor.d.ts +1 -1
  414. package/RichTextEditor/RichTextEditor.js +1764 -972
  415. package/RichTextEditor/index.js +12 -7
  416. package/RoundMeter/RoundMeter.d.ts +1 -1
  417. package/RoundMeter/RoundMeter.js +629 -537
  418. package/RoundMeter/index.js +12 -7
  419. package/RoundProgress/RoundProgress.d.ts +1 -1
  420. package/RoundProgress/RoundProgress.js +233 -174
  421. package/RoundProgress/index.js +12 -7
  422. package/ScatterChart/ScatterChart.d.ts +1 -1
  423. package/ScatterChart/ScatterChart.js +53 -40
  424. package/ScatterChart/index.js +12 -7
  425. package/ScatterChartItem/ScatterChartItem.d.ts +1 -1
  426. package/ScatterChartItem/ScatterChartItem.js +214 -153
  427. package/ScatterChartItem/index.js +12 -7
  428. package/ScreenCapture/ScreenCapture.d.ts +2 -2
  429. package/ScreenCapture/ScreenCapture.js +427 -335
  430. package/ScreenCapture/index.js +12 -7
  431. package/Section/Section.d.ts +2 -2
  432. package/Section/Section.js +380 -319
  433. package/Section/index.js +12 -7
  434. package/SectionAction/SectionAction.d.ts +1 -1
  435. package/SectionAction/SectionAction.js +72 -61
  436. package/SectionAction/index.js +12 -7
  437. package/SectionBoxes/SectionBoxes.d.ts +2 -2
  438. package/SectionBoxes/SectionBoxes.js +240 -208
  439. package/SectionBoxes/index.js +12 -7
  440. package/SectionCards/SectionCards.d.ts +2 -2
  441. package/SectionCards/SectionCards.js +256 -217
  442. package/SectionCards/index.js +12 -7
  443. package/SectionCarousel/SectionCarousel.d.ts +2 -2
  444. package/SectionCarousel/SectionCarousel.js +284 -242
  445. package/SectionCarousel/index.js +12 -7
  446. package/SectionContact/SectionContact.d.ts +1 -1
  447. package/SectionContact/SectionContact.js +174 -116
  448. package/SectionContact/index.js +12 -7
  449. package/SectionImageGallery/SectionImageGallery.d.ts +1 -1
  450. package/SectionImageGallery/SectionImageGallery.js +64 -51
  451. package/SectionImageGallery/index.js +12 -7
  452. package/SectionLogos/SectionLogos.d.ts +1 -1
  453. package/SectionLogos/SectionLogos.js +123 -109
  454. package/SectionLogos/index.js +12 -7
  455. package/SectionMedia/SectionMedia.d.ts +1 -1
  456. package/SectionMedia/SectionMedia.js +170 -152
  457. package/SectionMedia/index.js +12 -7
  458. package/SectionReviews/SectionReviews.d.ts +2 -2
  459. package/SectionReviews/SectionReviews.js +170 -129
  460. package/SectionReviews/index.js +12 -7
  461. package/SectionTextMedia/SectionTextMedia.d.ts +1 -1
  462. package/SectionTextMedia/SectionTextMedia.js +187 -142
  463. package/SectionTextMedia/index.js +12 -7
  464. package/SectionTimeline/SectionTimeline.d.ts +2 -2
  465. package/SectionTimeline/SectionTimeline.js +126 -95
  466. package/SectionTimeline/index.js +12 -7
  467. package/SectionWatch/SectionWatch.d.ts +1 -1
  468. package/SectionWatch/SectionWatch.js +65 -53
  469. package/SectionWatch/index.js +12 -7
  470. package/Select/Select.d.ts +1 -1
  471. package/Select/Select.js +517 -406
  472. package/Select/index.js +12 -7
  473. package/Share/Share.d.ts +1 -1
  474. package/Share/Share.js +458 -319
  475. package/Share/index.js +12 -7
  476. package/Slide/Slide.d.ts +1 -1
  477. package/Slide/Slide.js +184 -140
  478. package/Slide/index.js +12 -7
  479. package/Slider/Slider.d.ts +2 -2
  480. package/Slider/Slider.js +927 -837
  481. package/Slider/index.js +12 -7
  482. package/SmartTextField/SmartTextField.d.ts +1 -1
  483. package/SmartTextField/SmartTextField.js +1406 -1014
  484. package/SmartTextField/index.js +12 -7
  485. package/Snackbar/Snackbar.d.ts +1 -1
  486. package/Snackbar/Snackbar.js +227 -185
  487. package/Snackbar/index.js +12 -7
  488. package/Snackbars/Context.d.ts +1 -1
  489. package/Snackbars/Context.js +9 -7
  490. package/Snackbars/Snackbars.d.ts +2 -2
  491. package/Snackbars/Snackbars.js +234 -210
  492. package/Snackbars/index.js +32 -13
  493. package/Snackbars/useSnackbars.js +11 -10
  494. package/Space/Space.d.ts +1 -1
  495. package/Space/Space.js +1683 -968
  496. package/Space/index.js +23 -21
  497. package/SpeechToText/SpeechToText.d.ts +1 -1
  498. package/SpeechToText/SpeechToText.js +207 -172
  499. package/SpeechToText/index.js +12 -7
  500. package/SpeedDial/SpeedDial.d.ts +1 -1
  501. package/SpeedDial/SpeedDial.js +434 -398
  502. package/SpeedDial/index.js +12 -7
  503. package/SpeedDialItem/SpeedDialItem.d.ts +1 -1
  504. package/SpeedDialItem/SpeedDialItem.js +89 -63
  505. package/SpeedDialItem/index.js +12 -7
  506. package/SpyScroll/SpyScroll.d.ts +1 -1
  507. package/SpyScroll/SpyScroll.js +154 -142
  508. package/SpyScroll/index.js +12 -7
  509. package/Step/Step.d.ts +1 -1
  510. package/Step/Step.js +181 -127
  511. package/Step/index.js +12 -7
  512. package/Stepper/Stepper.d.ts +1 -1
  513. package/Stepper/Stepper.js +159 -139
  514. package/Stepper/index.js +12 -7
  515. package/Surface/Surface.d.ts +1 -1
  516. package/Surface/Surface.js +760 -798
  517. package/Surface/index.js +12 -7
  518. package/Switch/Switch.d.ts +1 -1
  519. package/Switch/Switch.js +688 -532
  520. package/Switch/index.js +12 -7
  521. package/Tab/Tab.d.ts +1 -1
  522. package/Tab/Tab.js +185 -150
  523. package/Tab/index.js +12 -7
  524. package/Table/Table.d.ts +1 -1
  525. package/Table/Table.js +100 -77
  526. package/Table/index.js +12 -7
  527. package/TableBody/TableBody.d.ts +1 -1
  528. package/TableBody/TableBody.js +76 -63
  529. package/TableBody/index.js +12 -7
  530. package/TableCell/TableCell.d.ts +2 -2
  531. package/TableCell/TableCell.js +258 -220
  532. package/TableCell/index.js +12 -7
  533. package/TableFooter/TableFooter.d.ts +1 -1
  534. package/TableFooter/TableFooter.js +60 -48
  535. package/TableFooter/index.js +12 -7
  536. package/TableHead/TableHead.d.ts +1 -1
  537. package/TableHead/TableHead.js +139 -120
  538. package/TableHead/index.js +12 -7
  539. package/TableHeader/TableHeader.d.ts +1 -1
  540. package/TableHeader/TableHeader.js +65 -50
  541. package/TableHeader/index.js +12 -7
  542. package/TablePagination/TablePagination.d.ts +1 -1
  543. package/TablePagination/TablePagination.js +171 -98
  544. package/TablePagination/index.js +12 -7
  545. package/TableRow/TableRow.d.ts +1 -1
  546. package/TableRow/TableRow.js +77 -64
  547. package/TableRow/index.js +12 -7
  548. package/Tabs/Tabs.d.ts +1 -1
  549. package/Tabs/Tabs.js +425 -377
  550. package/Tabs/index.js +12 -7
  551. package/Text/Text.d.ts +1 -1
  552. package/Text/Text.js +131 -113
  553. package/Text/index.js +12 -7
  554. package/TextField/TextField.d.ts +1 -1
  555. package/TextField/TextField.js +940 -879
  556. package/TextField/index.js +12 -7
  557. package/TextToSpeech/TextToSpeech.d.ts +1 -1
  558. package/TextToSpeech/TextToSpeech.js +176 -153
  559. package/TextToSpeech/index.js +12 -7
  560. package/TimePicker/TimePicker.d.ts +3 -3
  561. package/TimePicker/TimePicker.js +985 -718
  562. package/TimePicker/index.js +12 -7
  563. package/TimeRangePicker/TimeRangePicker.d.ts +1 -1
  564. package/TimeRangePicker/TimeRangePicker.js +44 -37
  565. package/TimeRangePicker/index.js +12 -7
  566. package/Timeline/Timeline.d.ts +1 -1
  567. package/Timeline/Timeline.js +54 -42
  568. package/Timeline/index.js +12 -7
  569. package/TimelineItem/TimelineItem.d.ts +1 -1
  570. package/TimelineItem/TimelineItem.js +144 -147
  571. package/TimelineItem/index.js +12 -7
  572. package/Timer/Timer.d.ts +1 -1
  573. package/Timer/Timer.js +321 -204
  574. package/Timer/index.js +12 -7
  575. package/ToggleButton/ToggleButton.d.ts +1 -1
  576. package/ToggleButton/ToggleButton.js +67 -58
  577. package/ToggleButton/index.js +12 -7
  578. package/ToggleButtons/ToggleButtons.d.ts +1 -1
  579. package/ToggleButtons/ToggleButtons.js +46 -37
  580. package/ToggleButtons/index.js +12 -7
  581. package/Tooltip/Tooltip.d.ts +1 -1
  582. package/Tooltip/Tooltip.js +489 -454
  583. package/Tooltip/index.js +12 -7
  584. package/TopAppBar/TopAppBar.d.ts +1 -1
  585. package/TopAppBar/TopAppBar.js +237 -197
  586. package/TopAppBar/index.js +12 -7
  587. package/Transition/Context.js +9 -7
  588. package/Transition/Transition.d.ts +3 -3
  589. package/Transition/Transition.js +321 -339
  590. package/Transition/index.js +41 -25
  591. package/Transition/useTransition.js +11 -10
  592. package/Transitions/Transitions.d.ts +2 -2
  593. package/Transitions/Transitions.js +215 -179
  594. package/Transitions/index.js +12 -7
  595. package/Tree/Tree.d.ts +1 -1
  596. package/Tree/Tree.js +375 -312
  597. package/Tree/index.js +12 -7
  598. package/Type/Type.d.ts +1 -1
  599. package/Type/Type.js +251 -152
  600. package/Type/index.js +12 -7
  601. package/VideoPlayer/VideoPlayer.d.ts +1 -1
  602. package/VideoPlayer/VideoPlayer.js +866 -656
  603. package/VideoPlayer/index.js +12 -7
  604. package/ViewSplit/ViewSplit.d.ts +1 -1
  605. package/ViewSplit/ViewSplit.js +413 -387
  606. package/ViewSplit/index.js +12 -7
  607. package/Watch/Watch.d.ts +1 -1
  608. package/Watch/Watch.js +436 -290
  609. package/Watch/index.js +12 -7
  610. package/Weather/Weather.d.ts +4 -4
  611. package/Weather/Weather.js +294 -247
  612. package/Weather/index.js +12 -7
  613. package/Whiteboard/Whiteboard.d.ts +5 -5
  614. package/Whiteboard/Whiteboard.js +1392 -1292
  615. package/Whiteboard/index.js +12 -7
  616. package/Widgets/Context.js +9 -7
  617. package/Widgets/Widgets.d.ts +2 -2
  618. package/Widgets/Widgets.js +220 -168
  619. package/Widgets/index.js +32 -13
  620. package/Widgets/useWidgets.js +11 -10
  621. package/WindowSplit/WindowSplit.d.ts +1 -1
  622. package/WindowSplit/WindowSplit.js +381 -336
  623. package/WindowSplit/index.js +12 -7
  624. package/Zoom/Zoom.d.ts +1 -1
  625. package/Zoom/Zoom.js +126 -99
  626. package/Zoom/index.js +12 -7
  627. package/esm/Append/Append.js +6 -8
  628. package/esm/AutoComplete/AutoComplete.js +8 -20
  629. package/esm/Breadcrumbs/Breadcrumbs.js +1 -3
  630. package/esm/Buttons/Buttons.js +8 -33
  631. package/esm/Calendar/Calendar.js +74 -80
  632. package/esm/CalendarAvailability/CalendarAvailability.js +1 -2
  633. package/esm/CalendarMenu/CalendarMenu.js +2 -2
  634. package/esm/CalendarMonth/CalendarMonth.js +65 -68
  635. package/esm/CalendarWeek/CalendarWeek.js +3 -7
  636. package/esm/Carousel/Carousel.js +4 -12
  637. package/esm/Chart/Chart.js +19 -25
  638. package/esm/Clock/Clock.js +5 -8
  639. package/esm/Confirm/Confirm.js +1 -2
  640. package/esm/DatePicker/DatePicker.js +8 -13
  641. package/esm/DateTimePicker/DateTimePicker.js +6 -9
  642. package/esm/Drawing/Drawing.js +1 -6
  643. package/esm/Expand/Expand.js +1 -2
  644. package/esm/Fade/Fade.js +1 -2
  645. package/esm/Focus/Focus.js +1 -2
  646. package/esm/Grow/Grow.js +1 -2
  647. package/esm/HTMLCanvas/HTMLCanvas.js +2 -5
  648. package/esm/ImageCrop/ImageCrop.js +2 -5
  649. package/esm/ImageEdit/ImageEdit.js +5 -12
  650. package/esm/ImageGallery/ImageGallery.js +1 -2
  651. package/esm/Interaction/Interaction.js +1 -2
  652. package/esm/Keyframes/Keyframes.js +1 -2
  653. package/esm/LinearMeter/LinearMeter.js +77 -80
  654. package/esm/Markdown/Markdown.js +41 -144
  655. package/esm/MenuDesktop/MenuDesktop.js +5 -6
  656. package/esm/Rating/Rating.js +2 -4
  657. package/esm/RichTextEditor/RichTextEditor.js +36 -50
  658. package/esm/RoundMeter/RoundMeter.js +70 -73
  659. package/esm/ScreenCapture/ScreenCapture.js +2 -5
  660. package/esm/Select/Select.js +5 -9
  661. package/esm/Share/Share.js +4 -5
  662. package/esm/Slide/Slide.js +2 -4
  663. package/esm/Slider/Slider.js +3 -6
  664. package/esm/SmartTextField/SmartTextField.js +2 -4
  665. package/esm/Snackbar/Snackbar.js +1 -2
  666. package/esm/Snackbars/Snackbars.js +3 -3
  667. package/esm/Space/Space.js +3 -6
  668. package/esm/Switch/Switch.js +1 -2
  669. package/esm/Tabs/Tabs.js +1 -2
  670. package/esm/TimePicker/TimePicker.js +27 -38
  671. package/esm/Timer/Timer.js +3 -4
  672. package/esm/Tooltip/Tooltip.js +1 -2
  673. package/esm/ViewSplit/ViewSplit.js +1 -2
  674. package/esm/Watch/Watch.js +4 -5
  675. package/esm/Weather/Weather.js +14 -17
  676. package/esm/Whiteboard/Whiteboard.js +1 -4
  677. package/esm/WindowSplit/WindowSplit.js +1 -2
  678. package/esm/Zoom/Zoom.js +1 -2
  679. package/esm/index.js +1 -1
  680. package/esm/useForm/useForm.js +1 -4
  681. package/esm/useLocation/useLocation.js +1 -2
  682. package/esm/useSwipe/useSwipe.js +1 -2
  683. package/esm/utils.js +3 -11
  684. package/index.js +4052 -660
  685. package/package.json +3 -3
  686. package/types.d.ts +27 -27
  687. package/types.js +4 -1
  688. package/useForm/index.js +25 -11
  689. package/useForm/useForm.d.ts +2 -2
  690. package/useForm/useForm.js +203 -174
  691. package/useForm/validate.d.ts +12 -12
  692. package/useForm/validate.js +215 -203
  693. package/useLocation/index.js +12 -7
  694. package/useLocation/useLocation.d.ts +1 -1
  695. package/useLocation/useLocation.js +54 -49
  696. package/useMediaQuery/index.js +12 -7
  697. package/useMediaQuery/useMediaQuery.d.ts +1 -1
  698. package/useMediaQuery/useMediaQuery.js +44 -43
  699. package/useQuery/index.js +12 -7
  700. package/useQuery/useQuery.js +14 -10
  701. package/useScroll/index.js +12 -7
  702. package/useScroll/useScroll.d.ts +2 -2
  703. package/useScroll/useScroll.js +61 -56
  704. package/useSubscription/index.js +12 -7
  705. package/useSubscription/useSubscription.js +35 -35
  706. package/useSwipe/index.js +12 -7
  707. package/useSwipe/useSwipe.d.ts +2 -2
  708. package/useSwipe/useSwipe.js +157 -131
  709. package/useVisible/index.js +12 -7
  710. package/useVisible/useVisible.d.ts +2 -2
  711. package/useVisible/useVisible.js +86 -76
  712. package/utils.js +1224 -1362
package/Append/Append.js CHANGED
@@ -1,532 +1,515 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const jsx_runtime_1 = require("react/jsx-runtime");
7
- const react_1 = __importDefault(require("react"));
8
- const utils_1 = require("@onesy/utils");
9
- const style_react_1 = require("@onesy/style-react");
10
- const Portal_1 = __importDefault(require("../Portal"));
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _utils = require("@onesy/utils");
11
+ var _styleReact = require("@onesy/style-react");
12
+ var _Portal = _interopRequireDefault(require("../Portal"));
13
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
14
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11
15
  const valuesDefault = {
12
- x: 0,
13
- y: 0,
14
- switch: false,
15
- init: true
16
+ x: 0,
17
+ y: 0,
18
+ switch: false,
19
+ init: true
16
20
  };
17
- const Append = (props_) => {
18
- var _a, _b;
19
- const theme = (0, style_react_1.useOnesyTheme)();
20
- const props = react_1.default.useMemo(() => { var _a, _b, _c, _d, _e, _f, _g, _h; return (Object.assign(Object.assign(Object.assign({}, (_d = (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.all) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.default), (_h = (_g = (_f = (_e = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _e === void 0 ? void 0 : _e.elements) === null || _f === void 0 ? void 0 : _f.onesyAppend) === null || _g === void 0 ? void 0 : _g.props) === null || _h === void 0 ? void 0 : _h.default), props_)); }, [props_]);
21
- const Portal = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Portal) || Portal_1.default; }, [theme]);
22
- const { open, portal = false, accelerated = true, anchor, anchorElement: anchorElement_, offset = [0, 0], padding = [0, 0], paddingUnfollow = props.padding || [0, 0], inset: inset_, position: position_ = 'bottom', alignment: alignment_ = 'end', switch: switch_ = true, overflow = true, unfollow = false, onScreen = true, style: style_, update, element, parent: parentElement, additional, children } = props;
23
- const [init, setInit] = react_1.default.useState(false);
24
- const [values, setValues] = react_1.default.useState(valuesDefault);
25
- const refs = {
26
- root: react_1.default.useRef(undefined),
27
- element: react_1.default.useRef(undefined),
28
- values: react_1.default.useRef(values),
29
- alignment: react_1.default.useRef(undefined),
30
- position: react_1.default.useRef(undefined),
31
- portal: react_1.default.useRef(undefined),
32
- props: react_1.default.useRef(undefined),
33
- anchor: react_1.default.useRef(undefined),
34
- additional: react_1.default.useRef(undefined)
21
+ const Append = props_ => {
22
+ var _props, _refs$root$current4;
23
+ const theme = (0, _styleReact.useOnesyTheme)();
24
+ const props = _react.default.useMemo(() => {
25
+ var _theme$ui, _theme$ui2;
26
+ return _objectSpread(_objectSpread(_objectSpread({}, theme === null || theme === void 0 || (_theme$ui = theme.ui) === null || _theme$ui === void 0 || (_theme$ui = _theme$ui.elements) === null || _theme$ui === void 0 || (_theme$ui = _theme$ui.all) === null || _theme$ui === void 0 || (_theme$ui = _theme$ui.props) === null || _theme$ui === void 0 ? void 0 : _theme$ui.default), theme === null || theme === void 0 || (_theme$ui2 = theme.ui) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.elements) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.onesyAppend) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.props) === null || _theme$ui2 === void 0 ? void 0 : _theme$ui2.default), props_);
27
+ }, [props_]);
28
+ const Portal = _react.default.useMemo(() => {
29
+ var _theme$elements;
30
+ return (theme === null || theme === void 0 || (_theme$elements = theme.elements) === null || _theme$elements === void 0 ? void 0 : _theme$elements.Portal) || _Portal.default;
31
+ }, [theme]);
32
+ const {
33
+ open,
34
+ portal = false,
35
+ accelerated = true,
36
+ anchor,
37
+ anchorElement: anchorElement_,
38
+ offset = [0, 0],
39
+ padding = [0, 0],
40
+ paddingUnfollow = props.padding || [0, 0],
41
+ inset: inset_,
42
+ position: position_ = 'bottom',
43
+ alignment: alignment_ = 'end',
44
+ switch: switch_ = true,
45
+ overflow = true,
46
+ unfollow = false,
47
+ onScreen = true,
48
+ style: style_,
49
+ update,
50
+ element,
51
+ parent: parentElement,
52
+ additional,
53
+ children
54
+ } = props;
55
+ const [init, setInit] = _react.default.useState(false);
56
+ const [values, setValues] = _react.default.useState(valuesDefault);
57
+ const refs = {
58
+ root: _react.default.useRef(undefined),
59
+ element: _react.default.useRef(undefined),
60
+ values: _react.default.useRef(values),
61
+ alignment: _react.default.useRef(undefined),
62
+ position: _react.default.useRef(undefined),
63
+ portal: _react.default.useRef(undefined),
64
+ props: _react.default.useRef(undefined),
65
+ anchor: _react.default.useRef(undefined),
66
+ additional: _react.default.useRef(undefined)
67
+ };
68
+ refs.alignment.current = alignment_;
69
+ if (theme.direction === 'rtl' && ['top', 'bottom'].includes(position_)) {
70
+ if (alignment_ === 'start') refs.alignment.current = 'end';else if (alignment_ === 'end') refs.alignment.current = 'start';
71
+ }
72
+ refs.position.current = position_;
73
+ refs.portal.current = portal;
74
+ refs.anchor.current = anchor;
75
+ refs.additional.current = additional;
76
+ const anchorElement = anchorElement_ !== null && anchorElement_ !== void 0 && anchorElement_.current ? anchorElement_ === null || anchorElement_ === void 0 ? void 0 : anchorElement_.current : anchorElement_;
77
+ if (anchorElement) refs.root.current = anchorElement;
78
+ refs.props.current = props;
79
+ const onScroll = _react.default.useCallback(event => {
80
+ // Only if it's parent's scroll event
81
+ // if (event.target.contains(refs.root.current) && anchor === undefined) make();
82
+
83
+ make();
84
+ }, [anchor]);
85
+ const observerMethod = _react.default.useCallback(mutations => {
86
+ for (const mutation of mutations) {
87
+ if (mutation.target === refs.root.current ?
88
+ // Root attributes or childList
89
+ ['attributes', 'childList'].includes(mutation.type) && [null, undefined, 'style'].includes(mutation.attributeName) :
90
+ // or subtree's childList
91
+ ['attributes', 'childList'].includes(mutation.type) && [null, undefined, 'style'].includes(mutation.attributeName)) {
92
+ if (refs.anchor.current === undefined) make();
93
+ }
94
+ }
95
+ }, []);
96
+ const observerResizeMethod = _react.default.useCallback(() => {
97
+ if (refs.anchor.current === undefined) make();
98
+ }, []);
99
+ _react.default.useEffect(() => {
100
+ var _refs$root$current;
101
+ const rootWindow = (0, _utils.isEnvironment)('browser') ? ((_refs$root$current = refs.root.current) === null || _refs$root$current === void 0 || (_refs$root$current = _refs$root$current.ownerDocument) === null || _refs$root$current === void 0 ? void 0 : _refs$root$current.defaultView) || window : undefined;
102
+ make();
103
+
104
+ // Scroll
105
+ rootWindow.addEventListener('scroll', onScroll, true);
106
+
107
+ // Init
108
+ setInit(true);
109
+ return () => {
110
+ rootWindow.removeEventListener('scroll', onScroll);
35
111
  };
36
- refs.alignment.current = alignment_;
37
- if (theme.direction === 'rtl' && ['top', 'bottom'].includes(position_)) {
38
- if (alignment_ === 'start')
39
- refs.alignment.current = 'end';
40
- else if (alignment_ === 'end')
41
- refs.alignment.current = 'start';
112
+ }, []);
113
+
114
+ // Anchor
115
+ _react.default.useEffect(() => {
116
+ if (init) {
117
+ if (open) make();else {
118
+ if (refs.props.current.clearOnClose) setValues(valuesDefault);
119
+ }
42
120
  }
43
- refs.position.current = position_;
44
- refs.portal.current = portal;
45
- refs.anchor.current = anchor;
46
- refs.additional.current = additional;
47
- const anchorElement = (anchorElement_ === null || anchorElement_ === void 0 ? void 0 : anchorElement_.current) ? anchorElement_ === null || anchorElement_ === void 0 ? void 0 : anchorElement_.current : anchorElement_;
48
- if (anchorElement)
49
- refs.root.current = anchorElement;
50
- refs.props.current = props;
51
- const onScroll = react_1.default.useCallback((event) => {
52
- // Only if it's parent's scroll event
53
- // if (event.target.contains(refs.root.current) && anchor === undefined) make();
54
- make();
55
- }, [anchor]);
56
- const observerMethod = react_1.default.useCallback((mutations) => {
57
- for (const mutation of mutations) {
58
- if (mutation.target === refs.root.current ?
59
- // Root attributes or childList
60
- ['attributes', 'childList'].includes(mutation.type) && [null, undefined, 'style'].includes(mutation.attributeName) :
61
- // or subtree's childList
62
- ['attributes', 'childList'].includes(mutation.type) && [null, undefined, 'style'].includes(mutation.attributeName)) {
63
- if (refs.anchor.current === undefined)
64
- make();
65
- }
66
- }
67
- }, []);
68
- const observerResizeMethod = react_1.default.useCallback(() => {
69
- if (refs.anchor.current === undefined)
70
- make();
71
- }, []);
72
- react_1.default.useEffect(() => {
73
- var _a, _b;
74
- const rootWindow = (0, utils_1.isEnvironment)('browser') ? (((_b = (_a = refs.root.current) === null || _a === void 0 ? void 0 : _a.ownerDocument) === null || _b === void 0 ? void 0 : _b.defaultView) || window) : undefined;
75
- make();
76
- // Scroll
77
- rootWindow.addEventListener('scroll', onScroll, true);
78
- // Init
79
- setInit(true);
80
- return () => {
81
- rootWindow.removeEventListener('scroll', onScroll);
82
- };
83
- }, []);
84
- // Anchor
85
- react_1.default.useEffect(() => {
86
- if (init) {
87
- if (open)
88
- make();
89
- else {
90
- if (refs.props.current.clearOnClose)
91
- setValues(valuesDefault);
92
- }
93
- }
94
- }, [open]);
95
- // Anchor
96
- react_1.default.useEffect(() => {
97
- if (init) {
98
- if ((anchor === null || anchor === void 0 ? void 0 : anchor.x) && (anchor === null || anchor === void 0 ? void 0 : anchor.y))
99
- make();
100
- }
101
- }, [anchor]);
102
- // Anchor
103
- react_1.default.useEffect(() => {
104
- make();
105
- }, [anchorElement]);
106
- // Anchor element
107
- react_1.default.useEffect(() => {
108
- // Resize
109
- const observer = new MutationObserver(observerMethod);
110
- try {
111
- if (refs.root.current) {
112
- observer.observe(refs.root.current, { attributes: true, childList: true, subtree: true });
113
- }
114
- }
115
- catch (error) { }
116
- return () => {
117
- if (refs.root.current) {
118
- observer.disconnect();
119
- }
120
- };
121
- }, [anchor, refs.root.current]);
122
- // Element resize
123
- react_1.default.useEffect(() => {
124
- // Resize
125
- const observer = new MutationObserver(observerMethod);
126
- try {
127
- if (refs.element.current) {
128
- observer.observe(refs.element.current, { attributes: true, childList: true, subtree: true });
129
- }
130
- }
131
- catch (error) { }
132
- return () => {
133
- if (refs.element.current) {
134
- observer.disconnect();
135
- }
136
- };
137
- }, [anchor, refs.element.current]);
138
- // Update
139
- react_1.default.useEffect(() => {
140
- if (init)
141
- make();
142
- }, [update]);
143
- // Update
144
- react_1.default.useEffect(() => {
145
- if (init) {
146
- if ((0, utils_1.is)('function', refs.props.current.onUpdate))
147
- refs.props.current.onUpdate(values);
148
- }
149
- }, [values]);
150
- const getBoundingRect = react_1.default.useCallback((elementHTML) => new Promise(async (resolve, reject) => {
151
- if (!(elementHTML === null || elementHTML === void 0 ? void 0 : elementHTML.getBoundingClientRect))
152
- return;
153
- let tries = 5;
154
- while (tries) {
155
- const valueRect = elementHTML.getBoundingClientRect();
156
- if ((valueRect === null || valueRect === void 0 ? void 0 : valueRect.height) && (valueRect === null || valueRect === void 0 ? void 0 : valueRect.width))
157
- return resolve(valueRect);
158
- tries--;
159
- await (0, utils_1.wait)(40);
160
- }
161
- }), []);
162
- const getValues = async () => {
163
- var _a;
164
- if (!((refs.root.current || refs.anchor.current) && refs.element.current))
165
- return;
166
- const wrapperRect = await getBoundingRect((_a = (refs.root.current || refs.element.current)) === null || _a === void 0 ? void 0 : _a.parentElement);
167
- if (!wrapperRect)
168
- return;
169
- const resolve = () => {
170
- if (!anchor)
171
- return;
172
- if (!portal) {
173
- anchor.x = anchor.x - wrapperRect.x;
174
- anchor.y = anchor.y - wrapperRect.y;
175
- }
176
- return anchor;
177
- };
178
- // Anchor relative to parent values
179
- const anchor_ = resolve();
180
- const rect = {
181
- root: anchor_ || await getBoundingRect(refs.root.current),
182
- element: await getBoundingRect(refs.element.current)
183
- };
184
- const rectOffset = {
185
- root: {
186
- x: refs.root.current ? refs.root.current.offsetLeft : anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.x,
187
- y: refs.root.current ? refs.root.current.offsetTop : anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.y,
188
- width: refs.root.current ? refs.root.current.offsetLeft + refs.root.current.offsetWidth : (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.x) + (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.width),
189
- height: refs.root.current ? refs.root.current.offsetTop + refs.root.current.offsetHeight : (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.y) + (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.height)
190
- },
191
- element: {
192
- x: refs.element.current.offsetLeft,
193
- y: refs.element.current.offsetTop,
194
- width: refs.element.current.offsetLeft + refs.element.current.offsetWidth,
195
- height: refs.element.current.offsetTop + refs.element.current.offsetHeight
196
- }
197
- };
198
- return {
199
- rect,
200
- rectOffset
201
- };
121
+ }, [open]);
122
+
123
+ // Anchor
124
+ _react.default.useEffect(() => {
125
+ if (init) {
126
+ if (anchor !== null && anchor !== void 0 && anchor.x && anchor !== null && anchor !== void 0 && anchor.y) make();
127
+ }
128
+ }, [anchor]);
129
+
130
+ // Anchor
131
+ _react.default.useEffect(() => {
132
+ make();
133
+ }, [anchorElement]);
134
+
135
+ // Anchor element
136
+ _react.default.useEffect(() => {
137
+ // Resize
138
+ const observer = new MutationObserver(observerMethod);
139
+ try {
140
+ if (refs.root.current) {
141
+ observer.observe(refs.root.current, {
142
+ attributes: true,
143
+ childList: true,
144
+ subtree: true
145
+ });
146
+ }
147
+ } catch (error) {}
148
+ return () => {
149
+ if (refs.root.current) {
150
+ observer.disconnect();
151
+ }
202
152
  };
203
- const make = async (value = { position: refs.position.current, alignment: refs.alignment.current, inset: inset_, switch: false }, valueMeasurements_) => {
204
- var _a, _b, _c;
205
- const valueMeasurements = valueMeasurements_ !== undefined ? valueMeasurements_ : await getValues();
206
- if (!valueMeasurements || (valueMeasurements.rect.element.width === 0 && valueMeasurements.rect.element.height === 0))
207
- return;
208
- const rootDocument = (0, utils_1.isEnvironment)('browser') ? (((_a = refs.root.current) === null || _a === void 0 ? void 0 : _a.ownerDocument) || window.document) : undefined;
209
- const wrapperRect = (overflow || switch_) && (refs.root.current || refs.element.current).parentElement.getBoundingClientRect();
210
- const scrollableParents = (0, utils_1.element)(refs.root.current).parents().filter(item => {
211
- if (!(item instanceof Element))
212
- return;
213
- const overflow_ = window.getComputedStyle(item).overflow;
214
- return ((overflow_.includes('auto') ||
215
- overflow_.includes('hidden')) &&
216
- (!refs.portal.current ||
217
- (item.clientHeight !== item.scrollHeight) ||
218
- ((item.clientHeight > window.innerHeight) ||
219
- (item.clientWidth > window.innerWidth))));
153
+ }, [anchor, refs.root.current]);
154
+
155
+ // Element resize
156
+ _react.default.useEffect(() => {
157
+ // Resize
158
+ const observer = new MutationObserver(observerMethod);
159
+ try {
160
+ if (refs.element.current) {
161
+ observer.observe(refs.element.current, {
162
+ attributes: true,
163
+ childList: true,
164
+ subtree: true
220
165
  });
221
- // If no parents, ie. anchor
222
- // add rootDocument.body as an only value
223
- if (!scrollableParents.length)
224
- scrollableParents.push(rootDocument.body);
225
- const { position, alignment, inset, switch: switched } = value;
226
- const { rect } = valueMeasurements;
227
- let { rectOffset } = valueMeasurements;
228
- // We need both root and element refs
229
- // to make our values for it
230
- const values_ = {
231
- x: 0,
232
- y: 0
233
- };
234
- const rootX = portal ? rect.root.x : rectOffset.root.x;
235
- const rootY = portal ? rect.root.y : rectOffset.root.y;
236
- const rootBottom = portal ? rect.root.bottom : rectOffset.root.y + rect.root.height;
237
- const rootRight = portal ? rect.root.right : rectOffset.root.x + rect.root.width;
238
- const parent_ = (_c = (parentElement !== undefined ? parentElement : portal ? rootDocument.body : (_b = refs.root.current) === null || _b === void 0 ? void 0 : _b.parentElement)) === null || _c === void 0 ? void 0 : _c.getBoundingClientRect();
239
- // Top, Bottom
240
- if (['top', 'bottom'].includes(position)) {
241
- if (alignment === 'start')
242
- values_.x = rootX;
243
- if (!alignment || alignment === 'center')
244
- values_.x = rootX + ((rect.root.width - rect.element.width) / 2);
245
- if (alignment === 'end')
246
- values_.x = rootX + rect.root.width - rect.element.width;
247
- if (position === 'top') {
248
- values_.y = rootBottom - (parent_.height || 0) - offset[1] - rect.root.height;
249
- if (inset)
250
- values_.y = rootBottom - (parent_.height || 0) - rect.root.height + rect.element.height + offset[1];
251
- }
252
- else {
253
- values_.y = rootY + offset[1] + rect.root.height;
254
- if (inset)
255
- values_.y = rootY + rect.root.height - rect.element.height - offset[1];
256
- }
257
- }
258
- // Left
259
- if (['left', 'right'].includes(position)) {
260
- if (alignment === 'start')
261
- values_.y = rootY;
262
- if (!alignment || alignment === 'center')
263
- values_.y = rootY + ((rect.root.height - rect.element.height) / 2);
264
- if (alignment === 'end')
265
- values_.y = rootY + rect.root.height - rect.element.height;
266
- if (position === 'left') {
267
- values_.x = rootRight - (parent_.width || 0) - offset[0] - rect.root.width;
268
- if (inset)
269
- values_.x = rootRight - (parent_.width || 0) - rect.root.width + rect.element.width + offset[0];
270
- }
271
- else {
272
- values_.x = rootX + offset[0] + rect.root.width;
273
- if (inset)
274
- values_.x = rootX + rect.root.width - rect.element.width - offset[0];
275
- }
276
- }
277
- // Absolute position
278
- if (portal) {
279
- values_.y += rootDocument.documentElement.scrollTop;
280
- values_.x += rootDocument.documentElement.scrollLeft;
281
- }
282
- // Overflow
283
- if (overflow) {
284
- // If x or y is out of bounds of the parent
285
- // or window push them to 0 value
286
- // only if that value doesn't unfollow them from the element
287
- // or unfollow them if unfollow is true
288
- if (portal)
289
- rectOffset = rect;
290
- const top = (portal ? rootDocument.documentElement.scrollTop : 0);
291
- const left = (portal ? rootDocument.documentElement.scrollLeft : 0);
292
- const rootY_ = !portal ? wrapperRect.y + rectOffset.root.y : rect.root.y;
293
- const valueY = !portal ? wrapperRect.y + values_.y : values_.y;
294
- const rootX_ = !portal ? wrapperRect.x + rectOffset.root.x : rect.root.x;
295
- const valueX = !portal ? wrapperRect.x + values_.x : values_.x;
296
- const wrapperRectY = !portal ? wrapperRect.y : 0;
297
- const wrapperRectX = !portal ? wrapperRect.x : 0;
298
- if (['left', 'right'].includes(position)) {
299
- // All parents that are scrollable
300
- const valuesY = [values_.y];
301
- let result = values_.y;
302
- scrollableParents.forEach((parent) => {
303
- const scrollParentRect = parent.getBoundingClientRect();
304
- const scrollParentY = scrollParentRect.y - Math.abs(rect.root.y);
305
- const valueScrollParentY = valueY - scrollParentRect.y;
306
- // top
307
- if ((valueY - top <= 0 + padding[1]) ||
308
- (valueScrollParentY - top <= 0 + padding[1])) {
309
- if ((rootY_ + rect.root.height) > 0 || unfollow) {
310
- const mathValues = [
311
- values_.y,
312
- top,
313
- scrollParentY,
314
- scrollParentRect.y - wrapperRectY + top,
315
- 0
316
- ];
317
- if (!portal)
318
- mathValues.push(rectOffset.root.y - rootY_);
319
- values_.y = Math.max(...mathValues);
320
- // padding
321
- const padding_ = values_.y > (rectOffset.root.y + rect.root.height + top) && unfollow ? paddingUnfollow : padding;
322
- const scrollRoot = scrollParentRect.y - wrapperRectY >= 0;
323
- values_.y += (0, utils_1.clamp)(Math.abs(values_.y - (scrollRoot ? scrollParentRect.y : 0) + wrapperRectY - padding_[1]), 0, padding_[1]);
324
- if (!unfollow)
325
- values_.y = (0, utils_1.clamp)(values_.y, Number.MIN_SAFE_INTEGER, rectOffset.root.y + rect.root.height + top);
326
- }
327
- else
328
- values_.y = rectOffset.root.y + rect.root.height + top;
329
- valuesY.push(values_.y);
330
- result = Math.max(...valuesY);
331
- }
332
- // bottom
333
- if ((valueY + rect.element.height - top >= window.innerHeight - padding[1]) ||
334
- (values_.y + rect.element.height - top >= scrollParentRect.y + scrollParentRect.height - wrapperRectY - padding[1])) {
335
- if (((rect.root.y < window.innerHeight) ||
336
- (rectOffset.root.y < scrollParentRect.y + scrollParentRect.height - wrapperRectY))
337
- || unfollow) {
338
- const mathValues = [
339
- values_.y,
340
- window.innerHeight - wrapperRectY - rect.element.height + top,
341
- scrollParentRect.y + scrollParentRect.height - wrapperRectY - rect.element.height + top
342
- ];
343
- values_.y = Math.abs(Math.min(...mathValues));
344
- // padding
345
- const padding_ = values_.y < (rectOffset.root.y - rect.element.height + top) && unfollow ? paddingUnfollow : padding;
346
- const scrollRoot = scrollParentRect.y - wrapperRectY >= 0;
347
- values_.y -= (0, utils_1.clamp)(Math.abs(values_.y - ((scrollRoot ? scrollParentRect.y + scrollParentRect.height : window.innerHeight) - wrapperRectY - rect.element.height - padding_[1])), 0, padding_[1]);
348
- if (!unfollow)
349
- values_.y = (0, utils_1.clamp)(values_.y, rectOffset.root.y - rect.element.height + top, Number.MAX_SAFE_INTEGER);
350
- }
351
- else
352
- values_.y = rectOffset.root.y - rect.element.height + top;
353
- valuesY.push(values_.y);
354
- result = Math.min(...valuesY);
355
- }
356
- // Reset
357
- values_.y = valuesY[0];
358
- });
359
- values_.y = result;
360
- }
361
- if (['top', 'bottom'].includes(position)) {
362
- // All parents that are scrollable
363
- const valuesX = [values_.x];
364
- let result = values_.x;
365
- scrollableParents.forEach((parent) => {
366
- const scrollParentRect = parent.getBoundingClientRect();
367
- const scrollParentX = scrollParentRect.x - Math.abs(rect.root.x);
368
- const valueScrollParentX = valueX - scrollParentRect.x;
369
- // left
370
- if ((valueX - left <= 0 + padding[0]) ||
371
- (valueScrollParentX - left <= 0 + padding[0])) {
372
- if ((rootX_ + rect.root.width) > 0 || unfollow) {
373
- const mathValues = [
374
- values_.x,
375
- left,
376
- scrollParentX,
377
- scrollParentRect.x - wrapperRectX + left,
378
- 0
379
- ];
380
- if (!portal)
381
- mathValues.push(rectOffset.root.x - rootX_);
382
- values_.x = Math.max(...mathValues);
383
- // padding
384
- const padding_ = (values_.x > rectOffset.root.x + rect.root.width + left) && unfollow ? paddingUnfollow : padding;
385
- const scrollRoot = scrollParentRect.x - wrapperRectX >= 0;
386
- values_.x += (0, utils_1.clamp)(Math.abs(values_.x - (scrollRoot ? scrollParentRect.x : 0) + wrapperRectX - padding_[0]), 0, padding_[0]);
387
- if (!unfollow)
388
- values_.x = (0, utils_1.clamp)(values_.x, Number.MIN_SAFE_INTEGER, rectOffset.root.x + rect.root.width + left);
389
- }
390
- else
391
- values_.x = rectOffset.root.x + rect.root.width + left;
392
- valuesX.push(values_.x);
393
- result = Math.max(...valuesX);
394
- }
395
- // right
396
- if ((valueX + rect.element.width - left >= window.innerWidth - padding[0]) ||
397
- (values_.x + rect.element.width - left >= scrollParentRect.x + scrollParentRect.width - wrapperRectX - padding[0])) {
398
- if (((rect.root.x < window.innerWidth) ||
399
- (rectOffset.root.x < scrollParentRect.x + scrollParentRect.width - wrapperRectX))
400
- || unfollow) {
401
- const mathValues = [
402
- values_.x,
403
- window.innerWidth - wrapperRectX - rect.element.width + left,
404
- scrollParentRect.x + scrollParentRect.width - wrapperRectX - rect.element.width + left
405
- ];
406
- values_.x = Math.abs(Math.min(...mathValues));
407
- // padding
408
- const padding_ = (values_.x < rectOffset.root.x - rect.element.width + left) && unfollow ? paddingUnfollow : padding;
409
- const scrollRoot = scrollParentRect.x - wrapperRectX >= 0;
410
- values_.x -= (0, utils_1.clamp)(Math.abs(values_.x - ((scrollRoot ? scrollParentRect.x + scrollParentRect.width : window.innerWidth) - wrapperRectX - rect.element.width - padding_[1])), 0, padding_[1]);
411
- if (!unfollow)
412
- values_.x = (0, utils_1.clamp)(values_.x, rectOffset.root.x - rect.element.width + left, Number.MAX_SAFE_INTEGER);
413
- }
414
- else
415
- values_.x = rectOffset.root.x - rect.element.width + left;
416
- valuesX.push(values_.x);
417
- result = Math.min(...valuesX);
418
- }
419
- // Reset
420
- values_.x = valuesX[0];
421
- });
422
- values_.x = result;
423
- }
424
- }
425
- // Switch
426
- if (switch_ && !value.switch) {
427
- let newPosition = position;
428
- const rectValue = {
429
- element: {}
430
- };
431
- if (position_ === 'top')
432
- rectValue.element.y = rect.root.y - offset[1] - rect.element.height;
433
- if (position_ === 'bottom')
434
- rectValue.element.y = rect.root.y + rect.root.height + offset[1];
435
- if (position_ === 'left')
436
- rectValue.element.x = rect.root.x - offset[0] - rect.element.width;
437
- if (position_ === 'right')
438
- rectValue.element.x = rect.root.x + rect.root.width + offset[0];
439
- const update_ = scrollableParents.some(parent => {
440
- const rectParent = parent.getBoundingClientRect();
441
- if (position_ === 'top')
442
- return !(rectValue.element.y - (['top', 'bottom'].includes(position_) ? padding[0] : 0) >= 0 &&
443
- rectValue.element.y - (['top', 'bottom'].includes(position_) ? padding[0] : 0) >= rectParent.y);
444
- if (position_ === 'bottom')
445
- return !(rectValue.element.y + rect.element.height + (['top', 'bottom'].includes(position_) ? padding[0] : 0) <= window.innerHeight &&
446
- rectValue.element.y + rect.element.height + (['top', 'bottom'].includes(position_) ? padding[0] : 0) <= rectParent.y + rectParent.height);
447
- if (position_ === 'left')
448
- return !(rectValue.element.x - (['left', 'right'].includes(position_) ? padding[1] : 0) >= 0 &&
449
- rectValue.element.x - (['left', 'right'].includes(position_) ? padding[1] : 0) >= rectParent.x);
450
- if (position_ === 'right')
451
- return !(rectValue.element.x + rect.element.width + (['left', 'right'].includes(position_) ? padding[1] : 0) <= window.innerWidth &&
452
- rectValue.element.x + rect.element.width + (['left', 'right'].includes(position_) ? padding[1] : 0) <= rectParent.x + rectParent.width);
453
- });
454
- if (update_) {
455
- if (position_ === 'top')
456
- newPosition = 'bottom';
457
- if (position_ === 'left')
458
- newPosition = 'right';
459
- if (position_ === 'right')
460
- newPosition = 'left';
461
- if (position_ === 'bottom')
462
- newPosition = 'top';
463
- return make({ position: newPosition, alignment: alignment_, inset: inset_, switch: true });
464
- }
465
- }
466
- refs.values.current = Object.assign({ position: value.position, alignment: value.alignment, switch: switched, init: false }, values_);
467
- if ((0, utils_1.is)('function', refs.additional.current)) {
468
- refs.values.current = Object.assign(Object.assign({}, refs.values.current), additional(rect, rectOffset));
469
- }
470
- if (portal) {
471
- const paddingX = padding[1] || 0;
472
- refs.values.current.x = (0, utils_1.clamp)(refs.values.current.x, paddingX, (window.innerWidth - rect.element.width - paddingX));
473
- }
474
- // Update
475
- setValues(refs.values.current);
166
+ }
167
+ } catch (error) {}
168
+ return () => {
169
+ if (refs.element.current) {
170
+ observer.disconnect();
171
+ }
172
+ };
173
+ }, [anchor, refs.element.current]);
174
+
175
+ // Update
176
+ _react.default.useEffect(() => {
177
+ if (init) make();
178
+ }, [update]);
179
+
180
+ // Update
181
+ _react.default.useEffect(() => {
182
+ if (init) {
183
+ if ((0, _utils.is)('function', refs.props.current.onUpdate)) refs.props.current.onUpdate(values);
184
+ }
185
+ }, [values]);
186
+ const getBoundingRect = _react.default.useCallback(elementHTML => new Promise(async (resolve, reject) => {
187
+ if (!(elementHTML !== null && elementHTML !== void 0 && elementHTML.getBoundingClientRect)) return;
188
+ let tries = 5;
189
+ while (tries) {
190
+ const valueRect = elementHTML.getBoundingClientRect();
191
+ if (valueRect !== null && valueRect !== void 0 && valueRect.height && valueRect !== null && valueRect !== void 0 && valueRect.width) return resolve(valueRect);
192
+ tries--;
193
+ await (0, _utils.wait)(40);
194
+ }
195
+ }), []);
196
+ const getValues = async () => {
197
+ var _ref;
198
+ if (!((refs.root.current || refs.anchor.current) && refs.element.current)) return;
199
+ const wrapperRect = await getBoundingRect((_ref = refs.root.current || refs.element.current) === null || _ref === void 0 ? void 0 : _ref.parentElement);
200
+ if (!wrapperRect) return;
201
+ const resolve = () => {
202
+ if (!anchor) return;
203
+ if (!portal) {
204
+ anchor.x = anchor.x - wrapperRect.x;
205
+ anchor.y = anchor.y - wrapperRect.y;
206
+ }
207
+ return anchor;
208
+ };
209
+
210
+ // Anchor relative to parent values
211
+ const anchor_ = resolve();
212
+ const rect = {
213
+ root: anchor_ || (await getBoundingRect(refs.root.current)),
214
+ element: await getBoundingRect(refs.element.current)
215
+ };
216
+ const rectOffset = {
217
+ root: {
218
+ x: refs.root.current ? refs.root.current.offsetLeft : anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.x,
219
+ y: refs.root.current ? refs.root.current.offsetTop : anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.y,
220
+ width: refs.root.current ? refs.root.current.offsetLeft + refs.root.current.offsetWidth : (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.x) + (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.width),
221
+ height: refs.root.current ? refs.root.current.offsetTop + refs.root.current.offsetHeight : (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.y) + (anchor_ === null || anchor_ === void 0 ? void 0 : anchor_.height)
222
+ },
223
+ element: {
224
+ x: refs.element.current.offsetLeft,
225
+ y: refs.element.current.offsetTop,
226
+ width: refs.element.current.offsetLeft + refs.element.current.offsetWidth,
227
+ height: refs.element.current.offsetTop + refs.element.current.offsetHeight
228
+ }
476
229
  };
477
- let style = {};
478
- style.position = 'absolute';
479
- if (values.position === 'top')
480
- style.inset = 'auto auto 0px 0px';
481
- else if (values.position === 'left')
482
- style.inset = '0px 0px auto auto';
483
- else
484
- style.inset = '0px auto auto 0px';
485
- if (accelerated) {
486
- const ppiHigh = (0, utils_1.isEnvironment)('browser') && window.devicePixelRatio > 1;
487
- if (ppiHigh)
488
- style.transform = `translate3d(${values.x}px, ${values.y}px, 0px)`;
489
- else
490
- style.transform = `translate(${values.x}px, ${values.y}px)`;
230
+ return {
231
+ rect,
232
+ rectOffset
233
+ };
234
+ };
235
+ const make = async (value = {
236
+ position: refs.position.current,
237
+ alignment: refs.alignment.current,
238
+ inset: inset_,
239
+ switch: false
240
+ }, valueMeasurements_) => {
241
+ var _refs$root$current2, _ref2, _refs$root$current3;
242
+ const valueMeasurements = valueMeasurements_ !== undefined ? valueMeasurements_ : await getValues();
243
+ if (!valueMeasurements || valueMeasurements.rect.element.width === 0 && valueMeasurements.rect.element.height === 0) return;
244
+ const rootDocument = (0, _utils.isEnvironment)('browser') ? ((_refs$root$current2 = refs.root.current) === null || _refs$root$current2 === void 0 ? void 0 : _refs$root$current2.ownerDocument) || window.document : undefined;
245
+ const wrapperRect = (overflow || switch_) && (refs.root.current || refs.element.current).parentElement.getBoundingClientRect();
246
+ const scrollableParents = (0, _utils.element)(refs.root.current).parents().filter(item => {
247
+ if (!(item instanceof Element)) return;
248
+ const overflow_ = window.getComputedStyle(item).overflow;
249
+ return (overflow_.includes('auto') || overflow_.includes('hidden')) && (!refs.portal.current || item.clientHeight !== item.scrollHeight || item.clientHeight > window.innerHeight || item.clientWidth > window.innerWidth);
250
+ });
251
+
252
+ // If no parents, ie. anchor
253
+ // add rootDocument.body as an only value
254
+ if (!scrollableParents.length) scrollableParents.push(rootDocument.body);
255
+ const {
256
+ position,
257
+ alignment,
258
+ inset,
259
+ switch: switched
260
+ } = value;
261
+ const {
262
+ rect
263
+ } = valueMeasurements;
264
+ let {
265
+ rectOffset
266
+ } = valueMeasurements;
267
+
268
+ // We need both root and element refs
269
+ // to make our values for it
270
+ const values_ = {
271
+ x: 0,
272
+ y: 0
273
+ };
274
+ const rootX = portal ? rect.root.x : rectOffset.root.x;
275
+ const rootY = portal ? rect.root.y : rectOffset.root.y;
276
+ const rootBottom = portal ? rect.root.bottom : rectOffset.root.y + rect.root.height;
277
+ const rootRight = portal ? rect.root.right : rectOffset.root.x + rect.root.width;
278
+ const parent_ = (_ref2 = parentElement !== undefined ? parentElement : portal ? rootDocument.body : (_refs$root$current3 = refs.root.current) === null || _refs$root$current3 === void 0 ? void 0 : _refs$root$current3.parentElement) === null || _ref2 === void 0 ? void 0 : _ref2.getBoundingClientRect();
279
+
280
+ // Top, Bottom
281
+ if (['top', 'bottom'].includes(position)) {
282
+ if (alignment === 'start') values_.x = rootX;
283
+ if (!alignment || alignment === 'center') values_.x = rootX + (rect.root.width - rect.element.width) / 2;
284
+ if (alignment === 'end') values_.x = rootX + rect.root.width - rect.element.width;
285
+ if (position === 'top') {
286
+ values_.y = rootBottom - (parent_.height || 0) - offset[1] - rect.root.height;
287
+ if (inset) values_.y = rootBottom - (parent_.height || 0) - rect.root.height + rect.element.height + offset[1];
288
+ } else {
289
+ values_.y = rootY + offset[1] + rect.root.height;
290
+ if (inset) values_.y = rootY + rect.root.height - rect.element.height - offset[1];
291
+ }
292
+ }
293
+
294
+ // Left
295
+ if (['left', 'right'].includes(position)) {
296
+ if (alignment === 'start') values_.y = rootY;
297
+ if (!alignment || alignment === 'center') values_.y = rootY + (rect.root.height - rect.element.height) / 2;
298
+ if (alignment === 'end') values_.y = rootY + rect.root.height - rect.element.height;
299
+ if (position === 'left') {
300
+ values_.x = rootRight - (parent_.width || 0) - offset[0] - rect.root.width;
301
+ if (inset) values_.x = rootRight - (parent_.width || 0) - rect.root.width + rect.element.width + offset[0];
302
+ } else {
303
+ values_.x = rootX + offset[0] + rect.root.width;
304
+ if (inset) values_.x = rootX + rect.root.width - rect.element.width - offset[0];
305
+ }
491
306
  }
492
- else {
493
- style.top = values.y;
494
- style.left = values.x;
307
+
308
+ // Absolute position
309
+ if (portal) {
310
+ values_.y += rootDocument.documentElement.scrollTop;
311
+ values_.x += rootDocument.documentElement.scrollLeft;
312
+ }
313
+
314
+ // Overflow
315
+ if (overflow) {
316
+ // If x or y is out of bounds of the parent
317
+ // or window push them to 0 value
318
+ // only if that value doesn't unfollow them from the element
319
+ // or unfollow them if unfollow is true
320
+ if (portal) rectOffset = rect;
321
+ const top = portal ? rootDocument.documentElement.scrollTop : 0;
322
+ const left = portal ? rootDocument.documentElement.scrollLeft : 0;
323
+ const rootY_ = !portal ? wrapperRect.y + rectOffset.root.y : rect.root.y;
324
+ const valueY = !portal ? wrapperRect.y + values_.y : values_.y;
325
+ const rootX_ = !portal ? wrapperRect.x + rectOffset.root.x : rect.root.x;
326
+ const valueX = !portal ? wrapperRect.x + values_.x : values_.x;
327
+ const wrapperRectY = !portal ? wrapperRect.y : 0;
328
+ const wrapperRectX = !portal ? wrapperRect.x : 0;
329
+ if (['left', 'right'].includes(position)) {
330
+ // All parents that are scrollable
331
+ const valuesY = [values_.y];
332
+ let result = values_.y;
333
+ scrollableParents.forEach(parent => {
334
+ const scrollParentRect = parent.getBoundingClientRect();
335
+ const scrollParentY = scrollParentRect.y - Math.abs(rect.root.y);
336
+ const valueScrollParentY = valueY - scrollParentRect.y;
337
+
338
+ // top
339
+ if (valueY - top <= 0 + padding[1] || valueScrollParentY - top <= 0 + padding[1]) {
340
+ if (rootY_ + rect.root.height > 0 || unfollow) {
341
+ const mathValues = [values_.y, top, scrollParentY, scrollParentRect.y - wrapperRectY + top, 0];
342
+ if (!portal) mathValues.push(rectOffset.root.y - rootY_);
343
+ values_.y = Math.max(...mathValues);
344
+
345
+ // padding
346
+ const padding_ = values_.y > rectOffset.root.y + rect.root.height + top && unfollow ? paddingUnfollow : padding;
347
+ const scrollRoot = scrollParentRect.y - wrapperRectY >= 0;
348
+ values_.y += (0, _utils.clamp)(Math.abs(values_.y - (scrollRoot ? scrollParentRect.y : 0) + wrapperRectY - padding_[1]), 0, padding_[1]);
349
+ if (!unfollow) values_.y = (0, _utils.clamp)(values_.y, Number.MIN_SAFE_INTEGER, rectOffset.root.y + rect.root.height + top);
350
+ } else values_.y = rectOffset.root.y + rect.root.height + top;
351
+ valuesY.push(values_.y);
352
+ result = Math.max(...valuesY);
353
+ }
354
+
355
+ // bottom
356
+ if (valueY + rect.element.height - top >= window.innerHeight - padding[1] || values_.y + rect.element.height - top >= scrollParentRect.y + scrollParentRect.height - wrapperRectY - padding[1]) {
357
+ if (rect.root.y < window.innerHeight || rectOffset.root.y < scrollParentRect.y + scrollParentRect.height - wrapperRectY || unfollow) {
358
+ const mathValues = [values_.y, window.innerHeight - wrapperRectY - rect.element.height + top, scrollParentRect.y + scrollParentRect.height - wrapperRectY - rect.element.height + top];
359
+ values_.y = Math.abs(Math.min(...mathValues));
360
+
361
+ // padding
362
+ const padding_ = values_.y < rectOffset.root.y - rect.element.height + top && unfollow ? paddingUnfollow : padding;
363
+ const scrollRoot = scrollParentRect.y - wrapperRectY >= 0;
364
+ values_.y -= (0, _utils.clamp)(Math.abs(values_.y - ((scrollRoot ? scrollParentRect.y + scrollParentRect.height : window.innerHeight) - wrapperRectY - rect.element.height - padding_[1])), 0, padding_[1]);
365
+ if (!unfollow) values_.y = (0, _utils.clamp)(values_.y, rectOffset.root.y - rect.element.height + top, Number.MAX_SAFE_INTEGER);
366
+ } else values_.y = rectOffset.root.y - rect.element.height + top;
367
+ valuesY.push(values_.y);
368
+ result = Math.min(...valuesY);
369
+ }
370
+
371
+ // Reset
372
+ values_.y = valuesY[0];
373
+ });
374
+ values_.y = result;
375
+ }
376
+ if (['top', 'bottom'].includes(position)) {
377
+ // All parents that are scrollable
378
+ const valuesX = [values_.x];
379
+ let result = values_.x;
380
+ scrollableParents.forEach(parent => {
381
+ const scrollParentRect = parent.getBoundingClientRect();
382
+ const scrollParentX = scrollParentRect.x - Math.abs(rect.root.x);
383
+ const valueScrollParentX = valueX - scrollParentRect.x;
384
+
385
+ // left
386
+ if (valueX - left <= 0 + padding[0] || valueScrollParentX - left <= 0 + padding[0]) {
387
+ if (rootX_ + rect.root.width > 0 || unfollow) {
388
+ const mathValues = [values_.x, left, scrollParentX, scrollParentRect.x - wrapperRectX + left, 0];
389
+ if (!portal) mathValues.push(rectOffset.root.x - rootX_);
390
+ values_.x = Math.max(...mathValues);
391
+
392
+ // padding
393
+ const padding_ = values_.x > rectOffset.root.x + rect.root.width + left && unfollow ? paddingUnfollow : padding;
394
+ const scrollRoot = scrollParentRect.x - wrapperRectX >= 0;
395
+ values_.x += (0, _utils.clamp)(Math.abs(values_.x - (scrollRoot ? scrollParentRect.x : 0) + wrapperRectX - padding_[0]), 0, padding_[0]);
396
+ if (!unfollow) values_.x = (0, _utils.clamp)(values_.x, Number.MIN_SAFE_INTEGER, rectOffset.root.x + rect.root.width + left);
397
+ } else values_.x = rectOffset.root.x + rect.root.width + left;
398
+ valuesX.push(values_.x);
399
+ result = Math.max(...valuesX);
400
+ }
401
+
402
+ // right
403
+ if (valueX + rect.element.width - left >= window.innerWidth - padding[0] || values_.x + rect.element.width - left >= scrollParentRect.x + scrollParentRect.width - wrapperRectX - padding[0]) {
404
+ if (rect.root.x < window.innerWidth || rectOffset.root.x < scrollParentRect.x + scrollParentRect.width - wrapperRectX || unfollow) {
405
+ const mathValues = [values_.x, window.innerWidth - wrapperRectX - rect.element.width + left, scrollParentRect.x + scrollParentRect.width - wrapperRectX - rect.element.width + left];
406
+ values_.x = Math.abs(Math.min(...mathValues));
407
+
408
+ // padding
409
+ const padding_ = values_.x < rectOffset.root.x - rect.element.width + left && unfollow ? paddingUnfollow : padding;
410
+ const scrollRoot = scrollParentRect.x - wrapperRectX >= 0;
411
+ values_.x -= (0, _utils.clamp)(Math.abs(values_.x - ((scrollRoot ? scrollParentRect.x + scrollParentRect.width : window.innerWidth) - wrapperRectX - rect.element.width - padding_[1])), 0, padding_[1]);
412
+ if (!unfollow) values_.x = (0, _utils.clamp)(values_.x, rectOffset.root.x - rect.element.width + left, Number.MAX_SAFE_INTEGER);
413
+ } else values_.x = rectOffset.root.x - rect.element.width + left;
414
+ valuesX.push(values_.x);
415
+ result = Math.min(...valuesX);
416
+ }
417
+
418
+ // Reset
419
+ values_.x = valuesX[0];
420
+ });
421
+ values_.x = result;
422
+ }
495
423
  }
496
- style = Object.assign(Object.assign(Object.assign(Object.assign({}, (_a = element === null || element === void 0 ? void 0 : element.props) === null || _a === void 0 ? void 0 : _a.style), style), style_), values === null || values === void 0 ? void 0 : values.style);
497
- const PortalComponent = portal ? Portal : react_1.default.Fragment;
498
- const PortalComponentProps = {};
499
- const rootDocumentElement = (0, utils_1.isEnvironment)('browser') ? (((_b = refs.root.current) === null || _b === void 0 ? void 0 : _b.ownerDocument) || window.document) : undefined;
500
- if (portal && (0, utils_1.isEnvironment)('browser')) {
501
- PortalComponentProps.element = rootDocumentElement.body;
502
- // relative
503
- rootDocumentElement.body.style.position = rootDocumentElement.body.style.position || 'relative';
504
- rootDocumentElement.body.style.margin = rootDocumentElement.body.style.margin || '0';
424
+
425
+ // Switch
426
+ if (switch_ && !value.switch) {
427
+ let newPosition = position;
428
+ const rectValue = {
429
+ element: {}
430
+ };
431
+ if (position_ === 'top') rectValue.element.y = rect.root.y - offset[1] - rect.element.height;
432
+ if (position_ === 'bottom') rectValue.element.y = rect.root.y + rect.root.height + offset[1];
433
+ if (position_ === 'left') rectValue.element.x = rect.root.x - offset[0] - rect.element.width;
434
+ if (position_ === 'right') rectValue.element.x = rect.root.x + rect.root.width + offset[0];
435
+ const update_ = scrollableParents.some(parent => {
436
+ const rectParent = parent.getBoundingClientRect();
437
+ if (position_ === 'top') return !(rectValue.element.y - (['top', 'bottom'].includes(position_) ? padding[0] : 0) >= 0 && rectValue.element.y - (['top', 'bottom'].includes(position_) ? padding[0] : 0) >= rectParent.y);
438
+ if (position_ === 'bottom') return !(rectValue.element.y + rect.element.height + (['top', 'bottom'].includes(position_) ? padding[0] : 0) <= window.innerHeight && rectValue.element.y + rect.element.height + (['top', 'bottom'].includes(position_) ? padding[0] : 0) <= rectParent.y + rectParent.height);
439
+ if (position_ === 'left') return !(rectValue.element.x - (['left', 'right'].includes(position_) ? padding[1] : 0) >= 0 && rectValue.element.x - (['left', 'right'].includes(position_) ? padding[1] : 0) >= rectParent.x);
440
+ if (position_ === 'right') return !(rectValue.element.x + rect.element.width + (['left', 'right'].includes(position_) ? padding[1] : 0) <= window.innerWidth && rectValue.element.x + rect.element.width + (['left', 'right'].includes(position_) ? padding[1] : 0) <= rectParent.x + rectParent.width);
441
+ });
442
+ if (update_) {
443
+ if (position_ === 'top') newPosition = 'bottom';
444
+ if (position_ === 'left') newPosition = 'right';
445
+ if (position_ === 'right') newPosition = 'left';
446
+ if (position_ === 'bottom') newPosition = 'top';
447
+ return make({
448
+ position: newPosition,
449
+ alignment: alignment_,
450
+ inset: inset_,
451
+ switch: true
452
+ });
453
+ }
454
+ }
455
+ refs.values.current = _objectSpread({
456
+ position: value.position,
457
+ alignment: value.alignment,
458
+ switch: switched,
459
+ init: false
460
+ }, values_);
461
+ if ((0, _utils.is)('function', refs.additional.current)) {
462
+ refs.values.current = _objectSpread(_objectSpread({}, refs.values.current), additional(rect, rectOffset));
463
+ }
464
+ if (portal) {
465
+ const paddingX = padding[1] || 0;
466
+ refs.values.current.x = (0, _utils.clamp)(refs.values.current.x, paddingX, window.innerWidth - rect.element.width - paddingX);
467
+ }
468
+
469
+ // Update
470
+ setValues(refs.values.current);
471
+ };
472
+ let style = {};
473
+ style.position = 'absolute';
474
+ if (values.position === 'top') style.inset = 'auto auto 0px 0px';else if (values.position === 'left') style.inset = '0px 0px auto auto';else style.inset = '0px auto auto 0px';
475
+ if (accelerated) {
476
+ const ppiHigh = (0, _utils.isEnvironment)('browser') && window.devicePixelRatio > 1;
477
+ if (ppiHigh) style.transform = `translate3d(${values.x}px, ${values.y}px, 0px)`;else style.transform = `translate(${values.x}px, ${values.y}px)`;
478
+ } else {
479
+ style.top = values.y;
480
+ style.left = values.x;
481
+ }
482
+ style = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, element === null || element === void 0 || (_props = element.props) === null || _props === void 0 ? void 0 : _props.style), style), style_), values === null || values === void 0 ? void 0 : values.style);
483
+ const PortalComponent = portal ? Portal : _react.default.Fragment;
484
+ const PortalComponentProps = {};
485
+ const rootDocumentElement = (0, _utils.isEnvironment)('browser') ? ((_refs$root$current4 = refs.root.current) === null || _refs$root$current4 === void 0 ? void 0 : _refs$root$current4.ownerDocument) || window.document : undefined;
486
+ if (portal && (0, _utils.isEnvironment)('browser')) {
487
+ PortalComponentProps.element = rootDocumentElement.body;
488
+
489
+ // relative
490
+ rootDocumentElement.body.style.position = rootDocumentElement.body.style.position || 'relative';
491
+ rootDocumentElement.body.style.margin = rootDocumentElement.body.style.margin || '0';
492
+ }
493
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children && /*#__PURE__*/_react.default.cloneElement(children, {
494
+ ref: item => {
495
+ if (children.ref) {
496
+ if ((0, _utils.is)('function', children.ref)) children.ref(item);else children.ref.current = item;
497
+ }
498
+ refs.root.current = item;
505
499
  }
506
- return ((0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [children && react_1.default.cloneElement(children, {
507
- ref: (item) => {
508
- if (children.ref) {
509
- if ((0, utils_1.is)('function', children.ref))
510
- children.ref(item);
511
- else
512
- children.ref.current = item;
513
- }
514
- refs.root.current = item;
515
- }
516
- }), open && (children || anchorElement || anchor) && ((0, jsx_runtime_1.jsx)(PortalComponent, Object.assign({}, PortalComponentProps, { children: (0, utils_1.is)('function', element) ?
517
- element({ ref: refs.element, values, style }) :
518
- react_1.default.cloneElement(element, {
519
- ref: (item) => {
520
- if (element === null || element === void 0 ? void 0 : element.ref) {
521
- if ((0, utils_1.is)('function', element.ref))
522
- element.ref(item);
523
- else
524
- element.ref.current = item;
525
- }
526
- refs.element.current = item;
527
- },
528
- style
529
- }) })))] }));
500
+ }), open && (children || anchorElement || anchor) && /*#__PURE__*/_react.default.createElement(PortalComponent, PortalComponentProps, (0, _utils.is)('function', element) ? element({
501
+ ref: refs.element,
502
+ values,
503
+ style
504
+ }) : /*#__PURE__*/_react.default.cloneElement(element, {
505
+ ref: item => {
506
+ if (element !== null && element !== void 0 && element.ref) {
507
+ if ((0, _utils.is)('function', element.ref)) element.ref(item);else element.ref.current = item;
508
+ }
509
+ refs.element.current = item;
510
+ },
511
+ style
512
+ })));
530
513
  };
531
514
  Append.displayName = 'onesy-Append';
532
- exports.default = Append;
515
+ var _default = exports.default = Append;