@onesy/ui-react 1.0.129 → 1.0.131

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 (445) hide show
  1. package/Accordion/Accordion.js +342 -242
  2. package/Accordion/index.js +12 -7
  3. package/AdvancedTextField/AdvancedTextField.js +165 -157
  4. package/AdvancedTextField/index.js +12 -7
  5. package/Append/Append.js +502 -519
  6. package/Append/index.js +12 -7
  7. package/AreaChart/AreaChart.js +53 -40
  8. package/AreaChart/index.js +12 -7
  9. package/AreaChartItem/AreaChartItem.js +325 -237
  10. package/AreaChartItem/index.js +12 -7
  11. package/AudioPlayer/AudioPlayer.js +683 -466
  12. package/AudioPlayer/index.js +12 -7
  13. package/AudioRecorder/AudioRecorder.js +359 -259
  14. package/AudioRecorder/index.js +12 -7
  15. package/AutoComplete/AutoComplete.js +693 -568
  16. package/AutoComplete/index.js +12 -7
  17. package/AutoCompleteCountry/AutoCompleteCountry.js +99 -62
  18. package/AutoCompleteCountry/index.js +12 -7
  19. package/AutoCompleteCurrency/AutoCompleteCurrency.js +73 -61
  20. package/AutoCompleteCurrency/index.js +12 -7
  21. package/Avatar/Avatar.js +113 -86
  22. package/Avatar/index.js +12 -7
  23. package/AvatarGroup/AvatarGroup.js +104 -87
  24. package/AvatarGroup/index.js +12 -7
  25. package/Backdrop/Backdrop.js +160 -139
  26. package/Backdrop/index.js +12 -7
  27. package/Badge/Badge.js +116 -96
  28. package/Badge/index.js +12 -7
  29. package/Banner/Banner.js +126 -85
  30. package/Banner/index.js +12 -7
  31. package/BottomAppBar/BottomAppBar.js +89 -60
  32. package/BottomAppBar/index.js +12 -7
  33. package/BottomSheet/BottomSheet.js +66 -59
  34. package/BottomSheet/index.js +12 -7
  35. package/Box/Box.js +43 -35
  36. package/Box/index.js +12 -7
  37. package/Breadcrumbs/Breadcrumbs.js +168 -144
  38. package/Breadcrumbs/index.js +12 -7
  39. package/BubbleChart/BubbleChart.js +261 -132
  40. package/BubbleChart/index.js +12 -7
  41. package/BubbleChartItem/BubbleChartItem.js +228 -161
  42. package/BubbleChartItem/index.js +12 -7
  43. package/Button/Button.js +488 -467
  44. package/Button/index.js +12 -7
  45. package/Buttons/Buttons.js +366 -293
  46. package/Buttons/index.js +12 -7
  47. package/Calendar/Calendar.js +715 -452
  48. package/Calendar/index.js +12 -7
  49. package/CalendarAvailability/CalendarAvailability.js +709 -388
  50. package/CalendarAvailability/index.js +12 -7
  51. package/CalendarMenu/CalendarMenu.js +430 -303
  52. package/CalendarMenu/index.js +12 -7
  53. package/CalendarMonth/CalendarMonth.js +537 -498
  54. package/CalendarMonth/index.js +12 -7
  55. package/CalendarViews/CalendarViews.js +403 -254
  56. package/CalendarViews/index.js +12 -7
  57. package/CalendarWeek/CalendarWeek.js +536 -395
  58. package/CalendarWeek/index.js +12 -7
  59. package/Card/Card.js +133 -101
  60. package/Card/index.js +12 -7
  61. package/CardButton/CardButton.js +78 -58
  62. package/CardButton/index.js +12 -7
  63. package/CardFooter/CardFooter.js +58 -39
  64. package/CardFooter/index.js +12 -7
  65. package/CardHeader/CardHeader.js +61 -44
  66. package/CardHeader/index.js +12 -7
  67. package/CardImage/CardImage.js +80 -67
  68. package/CardImage/index.js +12 -7
  69. package/CardMain/CardMain.js +53 -39
  70. package/CardMain/index.js +12 -7
  71. package/Carousel/Carousel.js +1025 -913
  72. package/Carousel/index.js +12 -7
  73. package/Chart/Chart.js +1325 -1174
  74. package/Chart/index.js +12 -7
  75. package/Checkbox/Checkbox.js +339 -325
  76. package/Checkbox/index.js +12 -7
  77. package/Chip/Chip.js +131 -102
  78. package/Chip/index.js +12 -7
  79. package/Chips/Chips.js +121 -94
  80. package/Chips/index.js +12 -7
  81. package/ClickListener/ClickListener.js +86 -89
  82. package/ClickListener/index.js +12 -7
  83. package/Clock/Clock.js +470 -417
  84. package/Clock/index.js +12 -7
  85. package/ColorTextField/ColorTextField.js +234 -171
  86. package/ColorTextField/index.js +12 -7
  87. package/ColumnChart/ColumnChart.js +63 -46
  88. package/ColumnChart/index.js +12 -7
  89. package/ColumnChartItem/ColumnChartItem.js +208 -149
  90. package/ColumnChartItem/index.js +12 -7
  91. package/Confirm/Confirm.js +184 -129
  92. package/Confirm/Context.js +9 -7
  93. package/Confirm/index.js +32 -13
  94. package/Confirm/useConfirm.js +11 -10
  95. package/Container/Container.js +154 -133
  96. package/Container/index.js +12 -7
  97. package/CookieBanner/CookieBanner.js +142 -76
  98. package/CookieBanner/index.js +12 -7
  99. package/Countdown/Countdown.js +403 -255
  100. package/Countdown/index.js +12 -7
  101. package/DatePicker/DatePicker.js +802 -547
  102. package/DatePicker/index.js +12 -7
  103. package/DateRangePicker/DateRangePicker.js +44 -37
  104. package/DateRangePicker/index.js +12 -7
  105. package/DateTimePicker/DateTimePicker.js +672 -459
  106. package/DateTimePicker/index.js +12 -7
  107. package/DateTimeRangePicker/DateTimeRangePicker.js +44 -37
  108. package/DateTimeRangePicker/index.js +12 -7
  109. package/Divider/Divider.js +198 -185
  110. package/Divider/index.js +12 -7
  111. package/DonutChart/DonutChart.js +49 -42
  112. package/DonutChart/index.js +12 -7
  113. package/DragAndDropList/DragAndDropList.js +160 -156
  114. package/DragAndDropList/index.js +12 -7
  115. package/Drawing/Drawing.js +850 -523
  116. package/Drawing/index.js +12 -7
  117. package/DropZone/DropZone.js +239 -201
  118. package/DropZone/index.js +12 -7
  119. package/Emojis/Emojis.js +409 -317
  120. package/Emojis/emojis_list.js +7279 -9250
  121. package/Emojis/index.js +19 -9
  122. package/Expand/Expand.js +201 -149
  123. package/Expand/index.js +12 -7
  124. package/Fab/Fab.js +46 -26
  125. package/Fab/index.js +12 -7
  126. package/Fade/Fade.js +131 -101
  127. package/Fade/index.js +12 -7
  128. package/FileChoose/FileChoose.js +218 -150
  129. package/FileChoose/index.js +12 -7
  130. package/Focus/Focus.js +87 -88
  131. package/Focus/index.js +12 -7
  132. package/Form/Form.js +194 -120
  133. package/Form/index.js +12 -7
  134. package/FormRow/FormRow.js +123 -78
  135. package/FormRow/index.js +12 -7
  136. package/Forms/Forms.js +55 -41
  137. package/Forms/index.js +12 -7
  138. package/Frame/Frame.js +212 -150
  139. package/Frame/index.js +12 -7
  140. package/Grid/Grid.js +231 -166
  141. package/Grid/index.js +12 -7
  142. package/Grow/Grow.js +137 -109
  143. package/Grow/index.js +12 -7
  144. package/HTMLCanvas/HTMLCanvas.js +752 -542
  145. package/HTMLCanvas/index.js +24 -21
  146. package/IFrame/IFrame.js +122 -104
  147. package/IFrame/index.js +12 -7
  148. package/Icon/Icon.js +112 -95
  149. package/Icon/index.js +24 -21
  150. package/IconButton/IconButton.js +49 -37
  151. package/IconButton/index.js +12 -7
  152. package/Image/Image.js +285 -252
  153. package/Image/index.js +12 -7
  154. package/ImageCrop/ImageCrop.js +1073 -1048
  155. package/ImageCrop/index.js +12 -7
  156. package/ImageEdit/ImageEdit.js +1088 -783
  157. package/ImageEdit/index.js +12 -7
  158. package/ImageGallery/ImageGallery.js +518 -473
  159. package/ImageGallery/index.js +12 -7
  160. package/ImageList/ImageList.js +136 -129
  161. package/ImageList/index.js +12 -7
  162. package/ImageListItem/ImageListItem.js +101 -87
  163. package/ImageListItem/index.js +12 -7
  164. package/ImageListItemBox/ImageListItemBox.js +61 -50
  165. package/ImageListItemBox/index.js +12 -7
  166. package/Info/Info.js +99 -63
  167. package/Info/index.js +12 -7
  168. package/Interaction/Interaction.js +405 -345
  169. package/Interaction/index.js +12 -7
  170. package/Keyframes/Context.js +9 -7
  171. package/Keyframes/Keyframes.js +189 -174
  172. package/Keyframes/index.js +42 -25
  173. package/Keyframes/useKeyframes.js +11 -10
  174. package/Label/Label.js +177 -151
  175. package/Label/index.js +12 -7
  176. package/Labels/Labels.js +126 -98
  177. package/Labels/index.js +12 -7
  178. package/Line/Line.js +296 -174
  179. package/Line/index.js +12 -7
  180. package/LineChart/LineChart.js +57 -40
  181. package/LineChart/index.js +12 -7
  182. package/LineChartItem/LineChartItem.js +239 -177
  183. package/LineChartItem/index.js +12 -7
  184. package/LinearMeter/LinearMeter.js +453 -377
  185. package/LinearMeter/index.js +12 -7
  186. package/LinearProgress/LinearProgress.js +324 -255
  187. package/LinearProgress/index.js +12 -7
  188. package/Link/Link.js +182 -127
  189. package/Link/index.js +12 -7
  190. package/Links/Links.js +277 -156
  191. package/Links/index.js +12 -7
  192. package/List/List.js +148 -113
  193. package/List/index.js +12 -7
  194. package/ListItem/ListItem.js +388 -362
  195. package/ListItem/index.js +12 -7
  196. package/ListSubheader/ListSubheader.js +52 -44
  197. package/ListSubheader/index.js +12 -7
  198. package/MainProgress/Context.js +9 -7
  199. package/MainProgress/MainProgress.js +193 -161
  200. package/MainProgress/index.js +32 -13
  201. package/MainProgress/useMainProgress.js +11 -10
  202. package/Markdown/Markdown.js +676 -704
  203. package/Markdown/index.js +12 -7
  204. package/Masonry/Masonry.js +207 -181
  205. package/Masonry/index.js +12 -7
  206. package/Medias/Medias.js +436 -398
  207. package/Medias/index.js +12 -7
  208. package/Menu/Menu.js +278 -243
  209. package/Menu/index.js +12 -7
  210. package/MenuDesktop/MenuDesktop.js +496 -419
  211. package/MenuDesktop/index.js +12 -7
  212. package/MenuItem/MenuItem.js +286 -231
  213. package/MenuItem/index.js +12 -7
  214. package/Meta/Meta.js +78 -54
  215. package/Meta/index.js +12 -7
  216. package/Modal/Modal.js +333 -272
  217. package/Modal/index.js +12 -7
  218. package/ModalFooter/ModalFooter.js +50 -39
  219. package/ModalFooter/index.js +12 -7
  220. package/ModalHeader/ModalHeader.js +51 -39
  221. package/ModalHeader/index.js +12 -7
  222. package/ModalIcon/ModalIcon.js +29 -23
  223. package/ModalIcon/index.js +12 -7
  224. package/ModalMain/ModalMain.js +50 -41
  225. package/ModalMain/index.js +12 -7
  226. package/ModalText/ModalText.js +47 -37
  227. package/ModalText/index.js +12 -7
  228. package/ModalTitle/ModalTitle.js +47 -37
  229. package/ModalTitle/index.js +12 -7
  230. package/MoreOptions/MoreOptions.js +72 -52
  231. package/MoreOptions/index.js +12 -7
  232. package/Move/Move.js +166 -141
  233. package/Move/index.js +12 -7
  234. package/NavigationBar/NavigationBar.js +133 -109
  235. package/NavigationBar/index.js +12 -7
  236. package/NavigationDrawer/NavigationDrawer.js +241 -211
  237. package/NavigationDrawer/index.js +12 -7
  238. package/NavigationItem/NavigationItem.js +293 -262
  239. package/NavigationItem/index.js +12 -7
  240. package/NavigationRail/NavigationRail.js +187 -150
  241. package/NavigationRail/index.js +12 -7
  242. package/NotFound/NotFound.js +89 -66
  243. package/NotFound/index.js +12 -7
  244. package/NumericTextField/NumericTextField.js +217 -212
  245. package/NumericTextField/index.js +12 -7
  246. package/Page/Page.js +131 -67
  247. package/Page/index.js +12 -7
  248. package/PageTransition/PageTransition.js +112 -102
  249. package/PageTransition/index.js +12 -7
  250. package/Pagination/Pagination.js +153 -98
  251. package/Pagination/index.js +12 -7
  252. package/PaginationItem/PaginationItem.js +85 -65
  253. package/PaginationItem/index.js +12 -7
  254. package/Parallax/Parallax.js +138 -145
  255. package/Parallax/index.js +12 -7
  256. package/Path/Path.js +40 -35
  257. package/Path/index.js +12 -7
  258. package/PieChart/PieChart.js +382 -267
  259. package/PieChart/index.js +12 -7
  260. package/Placeholder/Placeholder.js +125 -117
  261. package/Placeholder/index.js +12 -7
  262. package/Portal/Portal.js +37 -38
  263. package/Portal/index.js +12 -7
  264. package/Properties/Properties.js +85 -64
  265. package/Properties/index.js +12 -7
  266. package/Property/Property.js +120 -108
  267. package/Property/index.js +12 -7
  268. package/Radio/Radio.js +211 -181
  269. package/Radio/index.js +12 -7
  270. package/Radios/Radios.js +124 -92
  271. package/Radios/index.js +12 -7
  272. package/Rating/Rating.js +353 -360
  273. package/Rating/index.js +12 -7
  274. package/Reset/Reset.js +19 -24
  275. package/Reset/index.js +12 -7
  276. package/Reveal/Reveal.js +98 -89
  277. package/Reveal/index.js +12 -7
  278. package/RichTextEditor/RichTextEditor.js +1764 -972
  279. package/RichTextEditor/index.js +12 -7
  280. package/RoundMeter/RoundMeter.js +629 -537
  281. package/RoundMeter/index.js +12 -7
  282. package/RoundProgress/RoundProgress.js +233 -174
  283. package/RoundProgress/index.js +12 -7
  284. package/ScatterChart/ScatterChart.js +53 -40
  285. package/ScatterChart/index.js +12 -7
  286. package/ScatterChartItem/ScatterChartItem.js +214 -153
  287. package/ScatterChartItem/index.js +12 -7
  288. package/ScreenCapture/ScreenCapture.js +427 -335
  289. package/ScreenCapture/index.js +12 -7
  290. package/Section/Section.js +380 -319
  291. package/Section/index.js +12 -7
  292. package/SectionAction/SectionAction.js +72 -61
  293. package/SectionAction/index.js +12 -7
  294. package/SectionBoxes/SectionBoxes.js +240 -208
  295. package/SectionBoxes/index.js +12 -7
  296. package/SectionCards/SectionCards.js +256 -217
  297. package/SectionCards/index.js +12 -7
  298. package/SectionCarousel/SectionCarousel.js +284 -242
  299. package/SectionCarousel/index.js +12 -7
  300. package/SectionContact/SectionContact.js +174 -116
  301. package/SectionContact/index.js +12 -7
  302. package/SectionImageGallery/SectionImageGallery.js +64 -51
  303. package/SectionImageGallery/index.js +12 -7
  304. package/SectionLogos/SectionLogos.js +123 -109
  305. package/SectionLogos/index.js +12 -7
  306. package/SectionMedia/SectionMedia.js +170 -152
  307. package/SectionMedia/index.js +12 -7
  308. package/SectionReviews/SectionReviews.js +170 -129
  309. package/SectionReviews/index.js +12 -7
  310. package/SectionTextMedia/SectionTextMedia.js +187 -142
  311. package/SectionTextMedia/index.js +12 -7
  312. package/SectionTimeline/SectionTimeline.js +126 -95
  313. package/SectionTimeline/index.js +12 -7
  314. package/SectionWatch/SectionWatch.js +65 -53
  315. package/SectionWatch/index.js +12 -7
  316. package/Select/Select.js +517 -406
  317. package/Select/index.js +12 -7
  318. package/Share/Share.js +458 -319
  319. package/Share/index.js +12 -7
  320. package/Slide/Slide.js +184 -140
  321. package/Slide/index.js +12 -7
  322. package/Slider/Slider.js +927 -837
  323. package/Slider/index.js +12 -7
  324. package/SmartTextField/SmartTextField.js +1406 -1014
  325. package/SmartTextField/index.js +12 -7
  326. package/Snackbar/Snackbar.js +227 -185
  327. package/Snackbar/index.js +12 -7
  328. package/Snackbars/Context.js +9 -7
  329. package/Snackbars/Snackbars.js +234 -210
  330. package/Snackbars/index.js +32 -13
  331. package/Snackbars/useSnackbars.js +11 -10
  332. package/Space/Space.js +1683 -968
  333. package/Space/index.js +24 -21
  334. package/SpeechToText/SpeechToText.js +207 -172
  335. package/SpeechToText/index.js +12 -7
  336. package/SpeedDial/SpeedDial.js +434 -398
  337. package/SpeedDial/index.js +12 -7
  338. package/SpeedDialItem/SpeedDialItem.js +89 -63
  339. package/SpeedDialItem/index.js +12 -7
  340. package/SpyScroll/SpyScroll.js +154 -142
  341. package/SpyScroll/index.js +12 -7
  342. package/Step/Step.js +181 -127
  343. package/Step/index.js +12 -7
  344. package/Stepper/Stepper.js +159 -139
  345. package/Stepper/index.js +12 -7
  346. package/Surface/Surface.js +760 -798
  347. package/Surface/index.js +12 -7
  348. package/Switch/Switch.js +688 -532
  349. package/Switch/index.js +12 -7
  350. package/Tab/Tab.js +185 -150
  351. package/Tab/index.js +12 -7
  352. package/Table/Table.js +100 -77
  353. package/Table/index.js +12 -7
  354. package/TableBody/TableBody.js +76 -63
  355. package/TableBody/index.js +12 -7
  356. package/TableCell/TableCell.js +258 -220
  357. package/TableCell/index.js +12 -7
  358. package/TableFooter/TableFooter.js +60 -48
  359. package/TableFooter/index.js +12 -7
  360. package/TableHead/TableHead.js +139 -120
  361. package/TableHead/index.js +12 -7
  362. package/TableHeader/TableHeader.js +65 -50
  363. package/TableHeader/index.js +12 -7
  364. package/TablePagination/TablePagination.js +171 -98
  365. package/TablePagination/index.js +12 -7
  366. package/TableRow/TableRow.js +77 -64
  367. package/TableRow/index.js +12 -7
  368. package/Tabs/Tabs.js +425 -377
  369. package/Tabs/index.js +12 -7
  370. package/Text/Text.js +131 -113
  371. package/Text/index.js +12 -7
  372. package/TextField/TextField.js +940 -879
  373. package/TextField/index.js +12 -7
  374. package/TextToSpeech/TextToSpeech.js +176 -153
  375. package/TextToSpeech/index.js +12 -7
  376. package/TimePicker/TimePicker.js +985 -718
  377. package/TimePicker/index.js +12 -7
  378. package/TimeRangePicker/TimeRangePicker.js +44 -37
  379. package/TimeRangePicker/index.js +12 -7
  380. package/Timeline/Timeline.js +54 -42
  381. package/Timeline/index.js +12 -7
  382. package/TimelineItem/TimelineItem.js +144 -147
  383. package/TimelineItem/index.js +12 -7
  384. package/Timer/Timer.js +321 -204
  385. package/Timer/index.js +12 -7
  386. package/ToggleButton/ToggleButton.js +67 -58
  387. package/ToggleButton/index.js +12 -7
  388. package/ToggleButtons/ToggleButtons.js +46 -37
  389. package/ToggleButtons/index.js +12 -7
  390. package/Tooltip/Tooltip.js +489 -454
  391. package/Tooltip/index.js +12 -7
  392. package/TopAppBar/TopAppBar.js +237 -197
  393. package/TopAppBar/index.js +12 -7
  394. package/Transition/Context.js +9 -7
  395. package/Transition/Transition.js +321 -339
  396. package/Transition/index.js +42 -25
  397. package/Transition/useTransition.js +11 -10
  398. package/Transitions/Transitions.js +215 -179
  399. package/Transitions/index.js +12 -7
  400. package/Tree/Tree.js +375 -312
  401. package/Tree/index.js +12 -7
  402. package/Type/Type.js +251 -152
  403. package/Type/index.js +12 -7
  404. package/VideoPlayer/VideoPlayer.js +866 -656
  405. package/VideoPlayer/index.js +12 -7
  406. package/ViewSplit/ViewSplit.js +413 -387
  407. package/ViewSplit/index.js +12 -7
  408. package/Watch/Watch.js +436 -290
  409. package/Watch/index.js +12 -7
  410. package/Weather/Weather.js +294 -247
  411. package/Weather/index.js +12 -7
  412. package/Whiteboard/Whiteboard.js +1392 -1292
  413. package/Whiteboard/index.js +12 -7
  414. package/Widgets/Context.js +9 -7
  415. package/Widgets/Widgets.js +220 -168
  416. package/Widgets/index.js +32 -13
  417. package/Widgets/useWidgets.js +11 -10
  418. package/WindowSplit/WindowSplit.js +381 -336
  419. package/WindowSplit/index.js +12 -7
  420. package/Zoom/Zoom.js +126 -99
  421. package/Zoom/index.js +12 -7
  422. package/esm/BottomAppBar/BottomAppBar.js +5 -4
  423. package/esm/Buttons/Buttons.js +1 -1
  424. package/esm/index.js +1 -1
  425. package/index.js +4053 -660
  426. package/package.json +1 -1
  427. package/types.js +4 -1
  428. package/useForm/index.js +25 -11
  429. package/useForm/useForm.js +203 -174
  430. package/useForm/validate.js +215 -203
  431. package/useLocation/index.js +12 -7
  432. package/useLocation/useLocation.js +54 -49
  433. package/useMediaQuery/index.js +12 -7
  434. package/useMediaQuery/useMediaQuery.js +44 -43
  435. package/useQuery/index.js +12 -7
  436. package/useQuery/useQuery.js +14 -10
  437. package/useScroll/index.js +12 -7
  438. package/useScroll/useScroll.js +61 -56
  439. package/useSubscription/index.js +12 -7
  440. package/useSubscription/useSubscription.js +35 -35
  441. package/useSwipe/index.js +12 -7
  442. package/useSwipe/useSwipe.js +157 -131
  443. package/useVisible/index.js +12 -7
  444. package/useVisible/useVisible.js +86 -76
  445. package/utils.js +1224 -1362
@@ -1,365 +1,391 @@
1
1
  "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- const jsx_runtime_1 = require("react/jsx-runtime");
18
- const react_1 = __importDefault(require("react"));
19
- const utils_1 = require("@onesy/utils");
20
- const style_react_1 = require("@onesy/style-react");
21
- const Surface_1 = __importDefault(require("../Surface"));
22
- const Interaction_1 = __importDefault(require("../Interaction"));
23
- const Type_1 = __importDefault(require("../Type"));
24
- const utils_2 = require("../utils");
25
- const useStyle = (0, style_react_1.style)(theme => {
26
- const overflow = {
27
- width: '100%',
28
- overflow: 'hidden',
29
- textOverflow: 'ellipsis'
30
- };
31
- return {
32
- wrapper: {},
33
- wrapper_fullWidth: {
34
- width: '100%'
35
- },
36
- root: {
37
- // Reset
38
- margin: '0',
39
- padding: '0',
40
- '-webkit-appearance': 'none',
41
- appearance: 'none',
42
- border: 'none',
43
- textDecoration: 'none',
44
- color: 'inherit',
45
- boxSizing: 'border-box',
46
- position: 'relative',
47
- display: 'inline-flex',
48
- width: '100%'
49
- },
50
- shape_round_position_both: {
51
- borderRadius: theme.methods.shape.radius.value(40, 'px')
52
- },
53
- shape_round_position_start: {
54
- borderEndStartRadius: theme.methods.shape.radius.value(40, 'px'),
55
- borderStartStartRadius: theme.methods.shape.radius.value(40, 'px')
56
- },
57
- shape_round_position_end: {
58
- borderStartEndRadius: theme.methods.shape.radius.value(40, 'px'),
59
- borderEndEndRadius: theme.methods.shape.radius.value(40, 'px')
60
- },
61
- shape_round_position_none: {
62
- borderRadius: '0'
63
- },
64
- button: {
65
- cursor: 'pointer',
66
- userSelect: 'none'
67
- },
68
- size_small: {
69
- padding: `${theme.methods.space.value(1, 'px')} ${theme.methods.space.value(1.5, 'px')}`,
70
- minHeight: '24px'
71
- },
72
- size_regular: {
73
- padding: `${theme.methods.space.value(2, 'px')} ${theme.methods.space.value(2, 'px')}`,
74
- minHeight: '40px'
75
- },
76
- size_large: {
77
- padding: `${theme.methods.space.value(3, 'px')} ${theme.methods.space.value(2.5, 'px')}`,
78
- minHeight: '56px'
79
- },
80
- menuItem_size_small: {
81
- padding: `${theme.methods.space.value(0.5, 'px')} ${theme.methods.space.value(1.5, 'px')}`
82
- },
83
- menuItem_size_regular: {
84
- padding: `${theme.methods.space.value(0.75, 'px')} ${theme.methods.space.value(2, 'px')}`
85
- },
86
- menuItem_size_large: {
87
- padding: `${theme.methods.space.value(1, 'px')} ${theme.methods.space.value(2.5, 'px')}`
88
- },
89
- inset_size_small: {
90
- paddingInlineStart: `${(56 + theme.methods.space.value('rg')) * 0.75}px`
91
- },
92
- inset_size_regular: {
93
- paddingInlineStart: `${56 + theme.methods.space.value('rg')}px`
94
- },
95
- inset_size_large: {
96
- paddingInlineStart: `${(56 + theme.methods.space.value('rg')) * 1.25}px`
97
- },
98
- menuItem_inset_size_small: {
99
- paddingInlineStart: theme.methods.space.value(7, 'px')
100
- },
101
- menuItem_inset_size_regular: {
102
- paddingInlineStart: theme.methods.space.value(7, 'px')
103
- },
104
- menuItem_inset_size_large: {
105
- paddingInlineStart: theme.methods.space.value(7, 'px')
106
- },
107
- middle: {
108
- position: 'relative',
109
- display: 'inline-flex',
110
- flex: '1 1 auto',
111
- width: '100%',
112
- flexDirection: 'column',
113
- // Fix for white-space: nowrap & flex: 1 1 auto
114
- minWidth: '0',
115
- alignSelf: 'center'
116
- },
117
- menuItem_middle: {
118
- marginInlineEnd: '44px'
119
- },
120
- text: Object.assign(Object.assign({}, overflow), { whiteSpace: 'pre-wrap', textAlign: 'start' }),
121
- text_primary: {
122
- opacity: '1'
123
- },
124
- text_primary_weight: {
125
- fontWeight: '500'
126
- },
127
- text_secondary: {
128
- opacity: theme.palette.visual_contrast.default.opacity.primary
129
- },
130
- text_tertiary: {
131
- opacity: theme.palette.visual_contrast.default.opacity.secondary
132
- },
133
- aside: {
134
- position: 'relative',
135
- display: 'inline-flex',
136
- flex: '0 0 auto',
137
- alignSelf: 'flex-start'
138
- },
139
- align_start: {
140
- alignSelf: 'flex-start'
141
- },
142
- align_center: {
143
- alignSelf: 'center'
144
- },
145
- align_end: {
146
- alignSelf: 'flex-end'
147
- },
148
- start_icon: {
149
- paddingInline: `0 ${theme.methods.space.value(1.5, 'px')}`
150
- },
151
- start_button: {
152
- paddingInline: `0 ${theme.methods.space.value(1.5, 'px')}`
153
- },
154
- start_switch: {
155
- paddingInline: `0 ${theme.methods.space.value(1.5, 'px')}`
156
- },
157
- menuItem_start_icon_size_small: {
158
- paddingInlineEnd: theme.methods.space.value(1.5, 'px')
159
- },
160
- menuItem_start_icon_size_regular: {
161
- paddingInlineEnd: theme.methods.space.value(2, 'px')
162
- },
163
- menuItem_start_icon_size_large: {
164
- paddingInlineEnd: theme.methods.space.value(2.5, 'px')
165
- },
166
- menuItem_start_button_size_small: {
167
- paddingInlineEnd: theme.methods.space.value(1.5, 'px')
168
- },
169
- menuItem_start_button_size_regular: {
170
- paddingInlineEnd: theme.methods.space.value(2, 'px')
171
- },
172
- menuItem_start_button_size_large: {
173
- paddingInlineEnd: theme.methods.space.value(2.5, 'px')
174
- },
175
- menuItem_start_switch_size_small: {
176
- paddingInlineEnd: theme.methods.space.value(1.5, 'px')
177
- },
178
- menuItem_start_switch_size_regular: {
179
- paddingInlineEnd: theme.methods.space.value(2, 'px')
180
- },
181
- menuItem_start_switch_size_large: {
182
- paddingInlineEnd: theme.methods.space.value(2.5, 'px')
183
- },
184
- end_icon: {
185
- paddingInlineStart: theme.methods.space.value(1.5, 'px'),
186
- paddingInlineEnd: theme.methods.space.value(1, 'px')
187
- },
188
- end_button: {
189
- paddingInlineStart: theme.methods.space.value(1.5, 'px'),
190
- paddingInlineEnd: '0'
191
- },
192
- end_switch: {
193
- paddingInlineStart: theme.methods.space.value(1.5, 'px'),
194
- paddingInlineEnd: '0'
195
- },
196
- menuItem_end_icon: {
197
- paddingInlineStart: theme.methods.space.value(1.5, 'px')
198
- },
199
- menuItem_end_button: {
200
- paddingInlineStart: theme.methods.space.value(1.5, 'px')
201
- },
202
- menuItem_end_switch: {
203
- paddingInlineStart: theme.methods.space.value(1.5, 'px')
204
- },
205
- middle_disabled: {
206
- opacity: theme.palette.visual_contrast.default.opacity.disabled
207
- },
208
- noPadding: {
209
- padding: '0px'
210
- },
211
- noBackground: {
212
- '&.onesy-Surface-root': {
213
- background: 'none'
214
- }
215
- },
216
- disabled: {
217
- pointerEvents: 'none',
218
- userSelect: 'none',
219
- cursor: 'default'
220
- }
221
- };
222
- }, { name: 'onesy-ListItem' });
223
- const ListItem = react_1.default.forwardRef((props_, ref) => {
224
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
225
- const theme = (0, style_react_1.useOnesyTheme)();
226
- 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.onesyListItem) === null || _g === void 0 ? void 0 : _g.props) === null || _h === void 0 ? void 0 : _h.default), props_)); }, [props_]);
227
- const Interaction = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Interaction) || Interaction_1.default; }, [theme]);
228
- const Surface = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Surface) || Surface_1.default; }, [theme]);
229
- const Type = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Type) || Type_1.default; }, [theme]);
230
- const { tonal = true, color = 'default', colorSelected = props.color, inset, primary = props.children, secondary, tertiary, preselected, selected, start, startAlign = 'center', end, endAlign = 'center', size = 'regular', noPadding, href, button, shape = 'round', shapePosition = 'none', menuItem, footer, tabIndex, interaction, fullWidth = true, noOutline, noBackground, disabled, onClick, onFocus, onBlur, onMouseEnter, onMouseLeave, onClose: onClose_, RootComponent: RootComponent_ = 'div', WrapperProps, RootProps, InteractionProps, PrimaryProps, SecondaryProps, TertiaryProps, MainProps, AsideProps, AsideStartProps, AsideEndProps, Component = 'li', className, style, children } = props, other = __rest(props, ["tonal", "color", "colorSelected", "inset", "primary", "secondary", "tertiary", "preselected", "selected", "start", "startAlign", "end", "endAlign", "size", "noPadding", "href", "button", "shape", "shapePosition", "menuItem", "footer", "tabIndex", "interaction", "fullWidth", "noOutline", "noBackground", "disabled", "onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave", "onClose", "RootComponent", "WrapperProps", "RootProps", "InteractionProps", "PrimaryProps", "SecondaryProps", "TertiaryProps", "MainProps", "AsideProps", "AsideStartProps", "AsideEndProps", "Component", "className", "style", "children"]);
231
- const { classes } = useStyle();
232
- const refs = {
233
- root: react_1.default.useRef(undefined),
234
- props: react_1.default.useRef(undefined),
235
- ids: {
236
- primary: react_1.default.useId(),
237
- secondary: react_1.default.useId()
238
- }
239
- };
240
- refs.props.current = props;
241
- const styles = {
242
- root: {},
243
- icon: { color: 'default' },
244
- wrapper: {},
245
- primary: {},
246
- secondary: {},
247
- tertiary: {}
248
- };
249
- let RootComponent = RootComponent_;
250
- if (href)
251
- RootComponent = 'a';
252
- const colorToUse = selected ? colorSelected : color;
253
- return ((0, jsx_runtime_1.jsxs)(Surface, Object.assign({ ref: item => {
254
- if (ref) {
255
- if ((0, utils_1.is)('function', ref))
256
- ref(item);
257
- else if (ref === null || ref === void 0 ? void 0 : ref.current)
258
- ref.current = item;
259
- }
260
- refs.root.current = item;
261
- }, tonal: tonal, color: colorToUse, tabIndex: tabIndex !== undefined ? tabIndex : (button && !disabled) ? 0 : undefined, "aria-labelledby": refs.ids.primary, "aria-describedby": refs.ids.secondary, "aria-selected": selected, Component: Component }, WrapperProps, { className: (0, style_react_1.classNames)([
262
- (0, utils_2.staticClassName)('ListItem', theme) && [
263
- 'onesy-ListItem-wrapper'
264
- ],
265
- WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className,
266
- className,
267
- classes.wrapper,
268
- fullWidth && classes.wrapper_fullWidth,
269
- noBackground && classes.noBackground
270
- ]), noOutline: noOutline, style: Object.assign(Object.assign({}, styles.wrapper), WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.style) }, other, { children: [(0, jsx_runtime_1.jsxs)(RootComponent, Object.assign({ href: href, onClick: onClick, onFocus: onFocus, onBlur: onBlur, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave }, RootProps, { className: (0, style_react_1.classNames)([
271
- (0, utils_2.staticClassName)('ListItem', theme) && [
272
- 'onesy-ListItem-root',
273
- `onesy-ListItem-size-${size}`,
274
- preselected && `onesy-ListItem-preselected`,
275
- selected && `onesy-ListItem-selected`,
276
- disabled && `onesy-ListItem-disabled`,
277
- inset && !start && `onesy-ListItem-inset`
278
- ],
279
- RootProps === null || RootProps === void 0 ? void 0 : RootProps.className,
280
- classes.root,
281
- !menuItem && classes[`size_${size}`],
282
- classes[`shape_${shape}_position_${shapePosition}`],
283
- inset && !start && classes[`inset_size_${size}`],
284
- menuItem && [
285
- classes[`menuItem_size_${size}`],
286
- inset && classes[`menuItem_inset_size_${size}`]
287
- ],
288
- (href || button) && classes.button,
289
- noPadding && classes.noPadding,
290
- disabled && classes.disabled
291
- ]), style: Object.assign(Object.assign({}, style), styles.root), disabled: disabled }, { children: [(href || button || interaction) && ((0, jsx_runtime_1.jsx)(Interaction, Object.assign({ border: false, preselected: (InteractionProps === null || InteractionProps === void 0 ? void 0 : InteractionProps.focus) || preselected || undefined, selected: selected, disabled: disabled }, InteractionProps))), start && ((0, jsx_runtime_1.jsx)("span", Object.assign({}, AsideProps, AsideStartProps, { className: (0, style_react_1.classNames)([
292
- (0, utils_2.staticClassName)('ListItem', theme) && [
293
- 'onesy-ListItem-aside',
294
- 'onesy-ListItem-start',
295
- `onesy-ListItem-start-${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes((_a = start === null || start === void 0 ? void 0 : start.type) === null || _a === void 0 ? void 0 : _a.displayName) ? 'button' : ['onesy-Switch'].includes((_b = start === null || start === void 0 ? void 0 : start.type) === null || _b === void 0 ? void 0 : _b.displayName) ? 'switch' : 'icon'}`
296
- ],
297
- AsideProps === null || AsideProps === void 0 ? void 0 : AsideProps.className,
298
- AsideStartProps === null || AsideStartProps === void 0 ? void 0 : AsideStartProps.className,
299
- classes.aside,
300
- classes.start,
301
- classes[`align_${startAlign}`],
302
- classes[`${menuItem ? 'menuItem_' : ''}start_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes((_c = start === null || start === void 0 ? void 0 : start.type) === null || _c === void 0 ? void 0 : _c.displayName) ? 'button' : ['onesy-Switch'].includes((_d = start === null || start === void 0 ? void 0 : start.type) === null || _d === void 0 ? void 0 : _d.displayName) ? 'switch' : 'icon'}`],
303
- classes[`${menuItem ? 'menuItem_' : ''}start_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes((_e = start === null || start === void 0 ? void 0 : start.type) === null || _e === void 0 ? void 0 : _e.displayName) ? 'button' : ['onesy-Switch'].includes((_f = start === null || start === void 0 ? void 0 : start.type) === null || _f === void 0 ? void 0 : _f.displayName) ? 'switch' : 'icon'}_size_${size}`]
304
- ]) }, { children: (0, utils_1.is)('string', start) ? start : react_1.default.cloneElement(start, {
305
- color: ((_g = start.props) === null || _g === void 0 ? void 0 : _g.color) || 'inherit',
306
- size: ((_h = start.props) === null || _h === void 0 ? void 0 : _h.size) !== undefined ? (_j = start.props) === null || _j === void 0 ? void 0 : _j.size : ['onesy-Switch'].includes((_k = start === null || start === void 0 ? void 0 : start.type) === null || _k === void 0 ? void 0 : _k.displayName) ? 'small' : 'regular',
307
- disabled
308
- }) }))), (0, jsx_runtime_1.jsxs)("span", Object.assign({}, MainProps, { className: (0, style_react_1.classNames)([
309
- (0, utils_2.staticClassName)('ListItem', theme) && [
310
- 'onesy-ListItem-middle'
311
- ],
312
- MainProps === null || MainProps === void 0 ? void 0 : MainProps.className,
313
- classes.middle,
314
- menuItem && classes.menuItem_middle,
315
- disabled && classes.middle_disabled
316
- ]) }, { children: [primary !== undefined && ((0, utils_1.is)('simple', primary) ? ((0, jsx_runtime_1.jsx)(Type, Object.assign({ version: 'b2', id: refs.ids.primary }, PrimaryProps, { className: (0, style_react_1.classNames)([
317
- (0, utils_2.staticClassName)('ListItem', theme) && [
318
- 'onesy-ListItem-text',
319
- 'onesy-ListItem-text-primary'
320
- ],
321
- PrimaryProps === null || PrimaryProps === void 0 ? void 0 : PrimaryProps.className,
322
- classes.text,
323
- classes.text_primary,
324
- !menuItem && classes.text_primary_weight
325
- ]), style: Object.assign(Object.assign({}, styles.primary), PrimaryProps === null || PrimaryProps === void 0 ? void 0 : PrimaryProps.style) }, { children: primary }))) : react_1.default.cloneElement(primary, {
326
- id: refs.ids.primary
327
- })), secondary !== undefined && ((0, utils_1.is)('simple', secondary) ? ((0, jsx_runtime_1.jsx)(Type, Object.assign({ version: 'b2', id: refs.ids.secondary }, SecondaryProps, { className: (0, style_react_1.classNames)([
328
- (0, utils_2.staticClassName)('ListItem', theme) && [
329
- 'onesy-ListItem-text',
330
- 'onesy-ListItem-text-secondary'
331
- ],
332
- SecondaryProps === null || SecondaryProps === void 0 ? void 0 : SecondaryProps.className,
333
- classes.text,
334
- classes.text_secondary
335
- ]), style: Object.assign(Object.assign({}, styles.secondary), SecondaryProps === null || SecondaryProps === void 0 ? void 0 : SecondaryProps.style) }, { children: secondary }))) : react_1.default.cloneElement(secondary, {
336
- id: refs.ids.secondary
337
- })), tertiary !== undefined && ((0, utils_1.is)('simple', tertiary) ? ((0, jsx_runtime_1.jsx)(Type, Object.assign({ version: 'b2' }, TertiaryProps, { className: (0, style_react_1.classNames)([
338
- (0, utils_2.staticClassName)('ListItem', theme) && [
339
- 'onesy-ListItem-text',
340
- 'onesy-ListItem-text-tertiary'
341
- ],
342
- TertiaryProps === null || TertiaryProps === void 0 ? void 0 : TertiaryProps.className,
343
- classes.text,
344
- classes.text_tertiary
345
- ]), style: Object.assign(Object.assign({}, styles.tertiary), TertiaryProps === null || TertiaryProps === void 0 ? void 0 : TertiaryProps.style) }, { children: tertiary }))) : tertiary)] })), end && ((0, jsx_runtime_1.jsx)("span", Object.assign({}, AsideProps, AsideEndProps, { className: (0, style_react_1.classNames)([
346
- (0, utils_2.staticClassName)('ListItem', theme) && [
347
- 'onesy-ListItem-aside',
348
- 'onesy-ListItem-end',
349
- `onesy-ListItem-end-${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes((_l = end === null || end === void 0 ? void 0 : end.type) === null || _l === void 0 ? void 0 : _l.displayName) ? 'button' : ['onesy-Switch'].includes((_m = end === null || end === void 0 ? void 0 : end.type) === null || _m === void 0 ? void 0 : _m.displayName) ? 'switch' : 'icon'}`
350
- ],
351
- AsideProps === null || AsideProps === void 0 ? void 0 : AsideProps.className,
352
- AsideEndProps === null || AsideEndProps === void 0 ? void 0 : AsideEndProps.classname,
353
- classes.aside,
354
- classes.end,
355
- classes[`align_${endAlign}`],
356
- classes[`${menuItem ? 'menuItem_' : ''}end_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes((_o = end === null || end === void 0 ? void 0 : end.type) === null || _o === void 0 ? void 0 : _o.displayName) ? 'button' : ['onesy-Switch'].includes((_p = end === null || end === void 0 ? void 0 : end.type) === null || _p === void 0 ? void 0 : _p.displayName) ? 'switch' : 'icon'}`],
357
- classes[`${menuItem ? 'menuItem_' : ''}end_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes((_q = end === null || end === void 0 ? void 0 : end.type) === null || _q === void 0 ? void 0 : _q.displayName) ? 'button' : ['onesy-Switch'].includes((_r = end === null || end === void 0 ? void 0 : end.type) === null || _r === void 0 ? void 0 : _r.displayName) ? 'switch' : 'icon'}_size_${size}`]
358
- ]) }, { children: (0, utils_1.is)('string', end) ? end : react_1.default.cloneElement(end, {
359
- color: ((_s = end.props) === null || _s === void 0 ? void 0 : _s.color) || 'inherit',
360
- size: ((_t = end.props) === null || _t === void 0 ? void 0 : _t.size) !== undefined ? (_u = end.props) === null || _u === void 0 ? void 0 : _u.size : ['onesy-Switch'].includes((_v = end === null || end === void 0 ? void 0 : end.type) === null || _v === void 0 ? void 0 : _v.displayName) ? 'small' : 'regular',
361
- disabled
362
- }) })))] })), footer] })));
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _utils = require("@onesy/utils");
13
+ var _styleReact = require("@onesy/style-react");
14
+ var _Surface = _interopRequireDefault(require("../Surface"));
15
+ var _Interaction = _interopRequireDefault(require("../Interaction"));
16
+ var _Type = _interopRequireDefault(require("../Type"));
17
+ var _utils2 = require("../utils");
18
+ const _excluded = ["tonal", "color", "colorSelected", "inset", "primary", "secondary", "tertiary", "preselected", "selected", "start", "startAlign", "end", "endAlign", "size", "noPadding", "href", "button", "shape", "shapePosition", "menuItem", "footer", "tabIndex", "interaction", "fullWidth", "noOutline", "noBackground", "disabled", "onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave", "onClose", "RootComponent", "WrapperProps", "RootProps", "InteractionProps", "PrimaryProps", "SecondaryProps", "TertiaryProps", "MainProps", "AsideProps", "AsideStartProps", "AsideEndProps", "Component", "className", "style", "children"];
19
+ 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; }
20
+ 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; }
21
+ const useStyle = (0, _styleReact.style)(theme => {
22
+ const overflow = {
23
+ width: '100%',
24
+ overflow: 'hidden',
25
+ textOverflow: 'ellipsis'
26
+ };
27
+ return {
28
+ wrapper: {},
29
+ wrapper_fullWidth: {
30
+ width: '100%'
31
+ },
32
+ root: {
33
+ // Reset
34
+ margin: '0',
35
+ padding: '0',
36
+ '-webkit-appearance': 'none',
37
+ appearance: 'none',
38
+ border: 'none',
39
+ textDecoration: 'none',
40
+ color: 'inherit',
41
+ boxSizing: 'border-box',
42
+ position: 'relative',
43
+ display: 'inline-flex',
44
+ width: '100%'
45
+ },
46
+ shape_round_position_both: {
47
+ borderRadius: theme.methods.shape.radius.value(40, 'px')
48
+ },
49
+ shape_round_position_start: {
50
+ borderEndStartRadius: theme.methods.shape.radius.value(40, 'px'),
51
+ borderStartStartRadius: theme.methods.shape.radius.value(40, 'px')
52
+ },
53
+ shape_round_position_end: {
54
+ borderStartEndRadius: theme.methods.shape.radius.value(40, 'px'),
55
+ borderEndEndRadius: theme.methods.shape.radius.value(40, 'px')
56
+ },
57
+ shape_round_position_none: {
58
+ borderRadius: '0'
59
+ },
60
+ button: {
61
+ cursor: 'pointer',
62
+ userSelect: 'none'
63
+ },
64
+ size_small: {
65
+ padding: `${theme.methods.space.value(1, 'px')} ${theme.methods.space.value(1.5, 'px')}`,
66
+ minHeight: '24px'
67
+ },
68
+ size_regular: {
69
+ padding: `${theme.methods.space.value(2, 'px')} ${theme.methods.space.value(2, 'px')}`,
70
+ minHeight: '40px'
71
+ },
72
+ size_large: {
73
+ padding: `${theme.methods.space.value(3, 'px')} ${theme.methods.space.value(2.5, 'px')}`,
74
+ minHeight: '56px'
75
+ },
76
+ menuItem_size_small: {
77
+ padding: `${theme.methods.space.value(0.5, 'px')} ${theme.methods.space.value(1.5, 'px')}`
78
+ },
79
+ menuItem_size_regular: {
80
+ padding: `${theme.methods.space.value(0.75, 'px')} ${theme.methods.space.value(2, 'px')}`
81
+ },
82
+ menuItem_size_large: {
83
+ padding: `${theme.methods.space.value(1, 'px')} ${theme.methods.space.value(2.5, 'px')}`
84
+ },
85
+ inset_size_small: {
86
+ paddingInlineStart: `${(56 + theme.methods.space.value('rg')) * 0.75}px`
87
+ },
88
+ inset_size_regular: {
89
+ paddingInlineStart: `${56 + theme.methods.space.value('rg')}px`
90
+ },
91
+ inset_size_large: {
92
+ paddingInlineStart: `${(56 + theme.methods.space.value('rg')) * 1.25}px`
93
+ },
94
+ menuItem_inset_size_small: {
95
+ paddingInlineStart: theme.methods.space.value(7, 'px')
96
+ },
97
+ menuItem_inset_size_regular: {
98
+ paddingInlineStart: theme.methods.space.value(7, 'px')
99
+ },
100
+ menuItem_inset_size_large: {
101
+ paddingInlineStart: theme.methods.space.value(7, 'px')
102
+ },
103
+ middle: {
104
+ position: 'relative',
105
+ display: 'inline-flex',
106
+ flex: '1 1 auto',
107
+ width: '100%',
108
+ flexDirection: 'column',
109
+ // Fix for white-space: nowrap & flex: 1 1 auto
110
+ minWidth: '0',
111
+ alignSelf: 'center'
112
+ },
113
+ menuItem_middle: {
114
+ marginInlineEnd: '44px'
115
+ },
116
+ text: _objectSpread(_objectSpread({}, overflow), {}, {
117
+ whiteSpace: 'pre-wrap',
118
+ textAlign: 'start'
119
+ }),
120
+ text_primary: {
121
+ opacity: '1'
122
+ },
123
+ text_primary_weight: {
124
+ fontWeight: '500'
125
+ },
126
+ text_secondary: {
127
+ opacity: theme.palette.visual_contrast.default.opacity.primary
128
+ },
129
+ text_tertiary: {
130
+ opacity: theme.palette.visual_contrast.default.opacity.secondary
131
+ },
132
+ aside: {
133
+ position: 'relative',
134
+ display: 'inline-flex',
135
+ flex: '0 0 auto',
136
+ alignSelf: 'flex-start'
137
+ },
138
+ align_start: {
139
+ alignSelf: 'flex-start'
140
+ },
141
+ align_center: {
142
+ alignSelf: 'center'
143
+ },
144
+ align_end: {
145
+ alignSelf: 'flex-end'
146
+ },
147
+ start_icon: {
148
+ paddingInline: `0 ${theme.methods.space.value(1.5, 'px')}`
149
+ },
150
+ start_button: {
151
+ paddingInline: `0 ${theme.methods.space.value(1.5, 'px')}`
152
+ },
153
+ start_switch: {
154
+ paddingInline: `0 ${theme.methods.space.value(1.5, 'px')}`
155
+ },
156
+ menuItem_start_icon_size_small: {
157
+ paddingInlineEnd: theme.methods.space.value(1.5, 'px')
158
+ },
159
+ menuItem_start_icon_size_regular: {
160
+ paddingInlineEnd: theme.methods.space.value(2, 'px')
161
+ },
162
+ menuItem_start_icon_size_large: {
163
+ paddingInlineEnd: theme.methods.space.value(2.5, 'px')
164
+ },
165
+ menuItem_start_button_size_small: {
166
+ paddingInlineEnd: theme.methods.space.value(1.5, 'px')
167
+ },
168
+ menuItem_start_button_size_regular: {
169
+ paddingInlineEnd: theme.methods.space.value(2, 'px')
170
+ },
171
+ menuItem_start_button_size_large: {
172
+ paddingInlineEnd: theme.methods.space.value(2.5, 'px')
173
+ },
174
+ menuItem_start_switch_size_small: {
175
+ paddingInlineEnd: theme.methods.space.value(1.5, 'px')
176
+ },
177
+ menuItem_start_switch_size_regular: {
178
+ paddingInlineEnd: theme.methods.space.value(2, 'px')
179
+ },
180
+ menuItem_start_switch_size_large: {
181
+ paddingInlineEnd: theme.methods.space.value(2.5, 'px')
182
+ },
183
+ end_icon: {
184
+ paddingInlineStart: theme.methods.space.value(1.5, 'px'),
185
+ paddingInlineEnd: theme.methods.space.value(1, 'px')
186
+ },
187
+ end_button: {
188
+ paddingInlineStart: theme.methods.space.value(1.5, 'px'),
189
+ paddingInlineEnd: '0'
190
+ },
191
+ end_switch: {
192
+ paddingInlineStart: theme.methods.space.value(1.5, 'px'),
193
+ paddingInlineEnd: '0'
194
+ },
195
+ menuItem_end_icon: {
196
+ paddingInlineStart: theme.methods.space.value(1.5, 'px')
197
+ },
198
+ menuItem_end_button: {
199
+ paddingInlineStart: theme.methods.space.value(1.5, 'px')
200
+ },
201
+ menuItem_end_switch: {
202
+ paddingInlineStart: theme.methods.space.value(1.5, 'px')
203
+ },
204
+ middle_disabled: {
205
+ opacity: theme.palette.visual_contrast.default.opacity.disabled
206
+ },
207
+ noPadding: {
208
+ padding: '0px'
209
+ },
210
+ noBackground: {
211
+ '&.onesy-Surface-root': {
212
+ background: 'none'
213
+ }
214
+ },
215
+ disabled: {
216
+ pointerEvents: 'none',
217
+ userSelect: 'none',
218
+ cursor: 'default'
219
+ }
220
+ };
221
+ }, {
222
+ name: 'onesy-ListItem'
223
+ });
224
+ const ListItem = /*#__PURE__*/_react.default.forwardRef((props_, ref) => {
225
+ var _type, _type2, _type3, _type4, _type5, _type6, _props, _props2, _props3, _type7, _type8, _type9, _type10, _type11, _type12, _type13, _props4, _props5, _props6, _type14;
226
+ const theme = (0, _styleReact.useOnesyTheme)();
227
+ const props = _react.default.useMemo(() => {
228
+ var _theme$ui, _theme$ui2;
229
+ 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.onesyListItem) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.props) === null || _theme$ui2 === void 0 ? void 0 : _theme$ui2.default), props_);
230
+ }, [props_]);
231
+ const Interaction = _react.default.useMemo(() => {
232
+ var _theme$elements;
233
+ return (theme === null || theme === void 0 || (_theme$elements = theme.elements) === null || _theme$elements === void 0 ? void 0 : _theme$elements.Interaction) || _Interaction.default;
234
+ }, [theme]);
235
+ const Surface = _react.default.useMemo(() => {
236
+ var _theme$elements2;
237
+ return (theme === null || theme === void 0 || (_theme$elements2 = theme.elements) === null || _theme$elements2 === void 0 ? void 0 : _theme$elements2.Surface) || _Surface.default;
238
+ }, [theme]);
239
+ const Type = _react.default.useMemo(() => {
240
+ var _theme$elements3;
241
+ return (theme === null || theme === void 0 || (_theme$elements3 = theme.elements) === null || _theme$elements3 === void 0 ? void 0 : _theme$elements3.Type) || _Type.default;
242
+ }, [theme]);
243
+ const {
244
+ tonal = true,
245
+ color = 'default',
246
+ colorSelected = props.color,
247
+ inset,
248
+ primary = props.children,
249
+ secondary,
250
+ tertiary,
251
+ preselected,
252
+ selected,
253
+ start,
254
+ startAlign = 'center',
255
+ end,
256
+ endAlign = 'center',
257
+ size = 'regular',
258
+ noPadding,
259
+ href,
260
+ button,
261
+ shape = 'round',
262
+ shapePosition = 'none',
263
+ menuItem,
264
+ footer,
265
+ tabIndex,
266
+ interaction,
267
+ fullWidth = true,
268
+ noOutline,
269
+ noBackground,
270
+ disabled,
271
+ onClick,
272
+ onFocus,
273
+ onBlur,
274
+ onMouseEnter,
275
+ onMouseLeave,
276
+ onClose: onClose_,
277
+ RootComponent: RootComponent_ = 'div',
278
+ WrapperProps,
279
+ RootProps,
280
+ InteractionProps,
281
+ PrimaryProps,
282
+ SecondaryProps,
283
+ TertiaryProps,
284
+ MainProps,
285
+ AsideProps,
286
+ AsideStartProps,
287
+ AsideEndProps,
288
+ Component = 'li',
289
+ className,
290
+ style,
291
+ children
292
+ } = props,
293
+ other = (0, _objectWithoutProperties2.default)(props, _excluded);
294
+ const {
295
+ classes
296
+ } = useStyle();
297
+ const refs = {
298
+ root: _react.default.useRef(undefined),
299
+ props: _react.default.useRef(undefined),
300
+ ids: {
301
+ primary: _react.default.useId(),
302
+ secondary: _react.default.useId()
303
+ }
304
+ };
305
+ refs.props.current = props;
306
+ const styles = {
307
+ root: {},
308
+ icon: {
309
+ color: 'default'
310
+ },
311
+ wrapper: {},
312
+ primary: {},
313
+ secondary: {},
314
+ tertiary: {}
315
+ };
316
+ let RootComponent = RootComponent_;
317
+ if (href) RootComponent = 'a';
318
+ const colorToUse = selected ? colorSelected : color;
319
+ return /*#__PURE__*/_react.default.createElement(Surface, (0, _extends2.default)({
320
+ ref: item => {
321
+ if (ref) {
322
+ if ((0, _utils.is)('function', ref)) ref(item);else if (ref !== null && ref !== void 0 && ref.current) ref.current = item;
323
+ }
324
+ refs.root.current = item;
325
+ },
326
+ tonal: tonal,
327
+ color: colorToUse,
328
+ tabIndex: tabIndex !== undefined ? tabIndex : button && !disabled ? 0 : undefined,
329
+ "aria-labelledby": refs.ids.primary,
330
+ "aria-describedby": refs.ids.secondary,
331
+ "aria-selected": selected,
332
+ Component: Component
333
+ }, WrapperProps, {
334
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-wrapper'], WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className, className, classes.wrapper, fullWidth && classes.wrapper_fullWidth, noBackground && classes.noBackground]),
335
+ noOutline: noOutline,
336
+ style: _objectSpread(_objectSpread({}, styles.wrapper), WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.style)
337
+ }, other), /*#__PURE__*/_react.default.createElement(RootComponent, (0, _extends2.default)({
338
+ href: href,
339
+ onClick: onClick,
340
+ onFocus: onFocus,
341
+ onBlur: onBlur,
342
+ onMouseEnter: onMouseEnter,
343
+ onMouseLeave: onMouseLeave
344
+ }, RootProps, {
345
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-root', `onesy-ListItem-size-${size}`, preselected && `onesy-ListItem-preselected`, selected && `onesy-ListItem-selected`, disabled && `onesy-ListItem-disabled`, inset && !start && `onesy-ListItem-inset`], RootProps === null || RootProps === void 0 ? void 0 : RootProps.className, classes.root, !menuItem && classes[`size_${size}`], classes[`shape_${shape}_position_${shapePosition}`], inset && !start && classes[`inset_size_${size}`], menuItem && [classes[`menuItem_size_${size}`], inset && classes[`menuItem_inset_size_${size}`]], (href || button) && classes.button, noPadding && classes.noPadding, disabled && classes.disabled]),
346
+ style: _objectSpread(_objectSpread({}, style), styles.root),
347
+ disabled: disabled
348
+ }), (href || button || interaction) && /*#__PURE__*/_react.default.createElement(Interaction, (0, _extends2.default)({
349
+ border: false,
350
+ preselected: (InteractionProps === null || InteractionProps === void 0 ? void 0 : InteractionProps.focus) || preselected || undefined,
351
+ selected: selected,
352
+ disabled: disabled
353
+ }, InteractionProps)), start && /*#__PURE__*/_react.default.createElement("span", (0, _extends2.default)({}, AsideProps, AsideStartProps, {
354
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-aside', 'onesy-ListItem-start', `onesy-ListItem-start-${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes(start === null || start === void 0 || (_type = start.type) === null || _type === void 0 ? void 0 : _type.displayName) ? 'button' : ['onesy-Switch'].includes(start === null || start === void 0 || (_type2 = start.type) === null || _type2 === void 0 ? void 0 : _type2.displayName) ? 'switch' : 'icon'}`], AsideProps === null || AsideProps === void 0 ? void 0 : AsideProps.className, AsideStartProps === null || AsideStartProps === void 0 ? void 0 : AsideStartProps.className, classes.aside, classes.start, classes[`align_${startAlign}`], classes[`${menuItem ? 'menuItem_' : ''}start_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes(start === null || start === void 0 || (_type3 = start.type) === null || _type3 === void 0 ? void 0 : _type3.displayName) ? 'button' : ['onesy-Switch'].includes(start === null || start === void 0 || (_type4 = start.type) === null || _type4 === void 0 ? void 0 : _type4.displayName) ? 'switch' : 'icon'}`], classes[`${menuItem ? 'menuItem_' : ''}start_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes(start === null || start === void 0 || (_type5 = start.type) === null || _type5 === void 0 ? void 0 : _type5.displayName) ? 'button' : ['onesy-Switch'].includes(start === null || start === void 0 || (_type6 = start.type) === null || _type6 === void 0 ? void 0 : _type6.displayName) ? 'switch' : 'icon'}_size_${size}`]])
355
+ }), (0, _utils.is)('string', start) ? start : /*#__PURE__*/_react.default.cloneElement(start, {
356
+ color: ((_props = start.props) === null || _props === void 0 ? void 0 : _props.color) || 'inherit',
357
+ size: ((_props2 = start.props) === null || _props2 === void 0 ? void 0 : _props2.size) !== undefined ? (_props3 = start.props) === null || _props3 === void 0 ? void 0 : _props3.size : ['onesy-Switch'].includes(start === null || start === void 0 || (_type7 = start.type) === null || _type7 === void 0 ? void 0 : _type7.displayName) ? 'small' : 'regular',
358
+ disabled
359
+ })), /*#__PURE__*/_react.default.createElement("span", (0, _extends2.default)({}, MainProps, {
360
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-middle'], MainProps === null || MainProps === void 0 ? void 0 : MainProps.className, classes.middle, menuItem && classes.menuItem_middle, disabled && classes.middle_disabled])
361
+ }), primary !== undefined && ((0, _utils.is)('simple', primary) ? /*#__PURE__*/_react.default.createElement(Type, (0, _extends2.default)({
362
+ version: "b2",
363
+ id: refs.ids.primary
364
+ }, PrimaryProps, {
365
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-text', 'onesy-ListItem-text-primary'], PrimaryProps === null || PrimaryProps === void 0 ? void 0 : PrimaryProps.className, classes.text, classes.text_primary, !menuItem && classes.text_primary_weight]),
366
+ style: _objectSpread(_objectSpread({}, styles.primary), PrimaryProps === null || PrimaryProps === void 0 ? void 0 : PrimaryProps.style)
367
+ }), primary) : /*#__PURE__*/_react.default.cloneElement(primary, {
368
+ id: refs.ids.primary
369
+ })), secondary !== undefined && ((0, _utils.is)('simple', secondary) ? /*#__PURE__*/_react.default.createElement(Type, (0, _extends2.default)({
370
+ version: "b2",
371
+ id: refs.ids.secondary
372
+ }, SecondaryProps, {
373
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-text', 'onesy-ListItem-text-secondary'], SecondaryProps === null || SecondaryProps === void 0 ? void 0 : SecondaryProps.className, classes.text, classes.text_secondary]),
374
+ style: _objectSpread(_objectSpread({}, styles.secondary), SecondaryProps === null || SecondaryProps === void 0 ? void 0 : SecondaryProps.style)
375
+ }), secondary) : /*#__PURE__*/_react.default.cloneElement(secondary, {
376
+ id: refs.ids.secondary
377
+ })), tertiary !== undefined && ((0, _utils.is)('simple', tertiary) ? /*#__PURE__*/_react.default.createElement(Type, (0, _extends2.default)({
378
+ version: "b2"
379
+ }, TertiaryProps, {
380
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-text', 'onesy-ListItem-text-tertiary'], TertiaryProps === null || TertiaryProps === void 0 ? void 0 : TertiaryProps.className, classes.text, classes.text_tertiary]),
381
+ style: _objectSpread(_objectSpread({}, styles.tertiary), TertiaryProps === null || TertiaryProps === void 0 ? void 0 : TertiaryProps.style)
382
+ }), tertiary) : tertiary)), end && /*#__PURE__*/_react.default.createElement("span", (0, _extends2.default)({}, AsideProps, AsideEndProps, {
383
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-aside', 'onesy-ListItem-end', `onesy-ListItem-end-${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes(end === null || end === void 0 || (_type8 = end.type) === null || _type8 === void 0 ? void 0 : _type8.displayName) ? 'button' : ['onesy-Switch'].includes(end === null || end === void 0 || (_type9 = end.type) === null || _type9 === void 0 ? void 0 : _type9.displayName) ? 'switch' : 'icon'}`], AsideProps === null || AsideProps === void 0 ? void 0 : AsideProps.className, AsideEndProps === null || AsideEndProps === void 0 ? void 0 : AsideEndProps.classname, classes.aside, classes.end, classes[`align_${endAlign}`], classes[`${menuItem ? 'menuItem_' : ''}end_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes(end === null || end === void 0 || (_type10 = end.type) === null || _type10 === void 0 ? void 0 : _type10.displayName) ? 'button' : ['onesy-Switch'].includes(end === null || end === void 0 || (_type11 = end.type) === null || _type11 === void 0 ? void 0 : _type11.displayName) ? 'switch' : 'icon'}`], classes[`${menuItem ? 'menuItem_' : ''}end_${['onesy-Avatar', 'onesy-IconButton', 'onesy-Checkbox', 'onesy-Radio'].includes(end === null || end === void 0 || (_type12 = end.type) === null || _type12 === void 0 ? void 0 : _type12.displayName) ? 'button' : ['onesy-Switch'].includes(end === null || end === void 0 || (_type13 = end.type) === null || _type13 === void 0 ? void 0 : _type13.displayName) ? 'switch' : 'icon'}_size_${size}`]])
384
+ }), (0, _utils.is)('string', end) ? end : /*#__PURE__*/_react.default.cloneElement(end, {
385
+ color: ((_props4 = end.props) === null || _props4 === void 0 ? void 0 : _props4.color) || 'inherit',
386
+ size: ((_props5 = end.props) === null || _props5 === void 0 ? void 0 : _props5.size) !== undefined ? (_props6 = end.props) === null || _props6 === void 0 ? void 0 : _props6.size : ['onesy-Switch'].includes(end === null || end === void 0 || (_type14 = end.type) === null || _type14 === void 0 ? void 0 : _type14.displayName) ? 'small' : 'regular',
387
+ disabled
388
+ }))), footer);
363
389
  });
364
390
  ListItem.displayName = 'onesy-ListItem';
365
- exports.default = ListItem;
391
+ var _default = exports.default = ListItem;