@onesy/ui-react 1.0.130 → 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 (444) 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/Buttons/Buttons.js +1 -1
  423. package/esm/index.js +1 -1
  424. package/index.js +4053 -660
  425. package/package.json +1 -1
  426. package/types.js +4 -1
  427. package/useForm/index.js +25 -11
  428. package/useForm/useForm.js +203 -174
  429. package/useForm/validate.js +215 -203
  430. package/useLocation/index.js +12 -7
  431. package/useLocation/useLocation.js +54 -49
  432. package/useMediaQuery/index.js +12 -7
  433. package/useMediaQuery/useMediaQuery.js +44 -43
  434. package/useQuery/index.js +12 -7
  435. package/useQuery/useQuery.js +14 -10
  436. package/useScroll/index.js +12 -7
  437. package/useScroll/useScroll.js +61 -56
  438. package/useSubscription/index.js +12 -7
  439. package/useSubscription/useSubscription.js +35 -35
  440. package/useSwipe/index.js +12 -7
  441. package/useSwipe/useSwipe.js +157 -131
  442. package/useVisible/index.js +12 -7
  443. package/useVisible/useVisible.js +86 -76
  444. package/utils.js +1224 -1362
package/Medias/Medias.js CHANGED
@@ -1,405 +1,443 @@
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 IconMaterialDraftW100_1 = __importDefault(require("@onesy/icons-material-rounded-react/IconMaterialDraftW100"));
22
- const Link_1 = __importDefault(require("../Link"));
23
- const Type_1 = __importDefault(require("../Type"));
24
- const Interaction_1 = __importDefault(require("../Interaction"));
25
- const Line_1 = __importDefault(require("../Line/Line"));
26
- const AudioPlayer_1 = __importDefault(require("../AudioPlayer"));
27
- const VideoPlayer_1 = __importDefault(require("../VideoPlayer"));
28
- const Portal_1 = __importDefault(require("../Portal"));
29
- const ImageGallery_1 = __importDefault(require("../ImageGallery"));
30
- const utils_2 = require("../utils");
31
- const useStyle = (0, style_react_1.style)(theme => ({
32
- root: {},
33
- items: {
34
- maxWidth: '100%',
35
- padding: theme.methods.space.value(0.5, 'px'),
36
- overflow: 'auto hidden'
37
- },
38
- item: {},
39
- wrapper: {
40
- position: 'relative',
41
- flex: '0 0 auto'
42
- },
43
- wrapper_image: {
44
- transition: theme.methods.transitions.make('transform'),
45
- '&:active': {
46
- transform: 'scale(0.94)'
47
- }
48
- },
49
- wrapper_other: {
50
- transition: theme.methods.transitions.make('transform'),
51
- '&:active': {
52
- transform: 'scale(0.94)'
53
- }
54
- },
55
- name: {
56
- wordBreak: 'break-word'
57
- },
58
- image: {
59
- position: 'relative',
60
- backgroundSize: 'cover',
61
- backgroundPosition: 'center',
62
- backgroundRepeat: 'no-repeat',
63
- aspectRatio: '16 / 9'
64
- },
65
- imageWrapper_size_small: {
66
- width: '174px'
67
- },
68
- imageWrapper_size_regular: {
69
- width: '214px'
70
- },
71
- imageWrapper_size_large: {
72
- width: '254px'
73
- },
74
- image_size_small: {
75
- borderRadius: theme.methods.shape.radius.value(1)
76
- },
77
- image_size_regular: {
78
- borderRadius: theme.methods.shape.radius.value(2)
79
- },
80
- image_size_large: {
81
- borderRadius: theme.methods.shape.radius.value(3)
82
- },
83
- audioWrapper_size_small: {
84
- width: '324px'
85
- },
86
- audioWrapper_size_regular: {
87
- width: '340px'
88
- },
89
- audioWrapper_size_large: {
90
- width: '440px'
91
- },
92
- videoWrapper_size_small: {
93
- width: '324px'
94
- },
95
- videoWrapper_size_regular: {
96
- width: '340px'
97
- },
98
- videoWrapper_size_large: {
99
- width: '440px'
100
- },
101
- other: {
102
- position: 'relative',
103
- aspectRatio: '3 / 4',
104
- cursor: 'pointer',
105
- userSelect: 'none',
106
- background: theme.palette.background.secondary.tertiary,
107
- boxShadow: theme.shadows.values.default[1]
108
- },
109
- otherWrapper_size_small: {
110
- width: '74px'
111
- },
112
- otherWrapper_size_regular: {
113
- width: '94px'
114
- },
115
- otherWrapper_size_large: {
116
- width: '114px'
117
- },
118
- other_size_small: {
119
- borderRadius: theme.methods.shape.radius.value(1)
120
- },
121
- other_size_regular: {
122
- borderRadius: theme.methods.shape.radius.value(2)
123
- },
124
- other_size_large: {
125
- borderRadius: theme.methods.shape.radius.value(3)
126
- },
127
- externalLinks: {
128
- overflow: 'auto hidden'
129
- },
130
- aspectRatioYoutube: {
131
- aspectRatio: '16 / 9',
132
- width: '100%',
133
- maxWidth: '750px'
134
- },
135
- aspectRatioVimeo: {
136
- aspectRatio: '16 / 9',
137
- width: '440px'
138
- },
139
- aspectRatioInstagram: {
140
- aspectRatio: '3 / 5.6',
141
- width: '340px'
142
- },
143
- aspectRatioTiktok: {
144
- aspectRatio: '3 / 6.84',
145
- width: '324px'
146
- },
147
- customEmbed: {
148
- maxWidth: '750px'
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 _IconMaterialDraftW = _interopRequireDefault(require("@onesy/icons-material-rounded-react/IconMaterialDraftW100"));
15
+ var _Link = _interopRequireDefault(require("../Link"));
16
+ var _Type = _interopRequireDefault(require("../Type"));
17
+ var _Interaction = _interopRequireDefault(require("../Interaction"));
18
+ var _Line = _interopRequireDefault(require("../Line/Line"));
19
+ var _AudioPlayer = _interopRequireDefault(require("../AudioPlayer"));
20
+ var _VideoPlayer = _interopRequireDefault(require("../VideoPlayer"));
21
+ var _Portal = _interopRequireDefault(require("../Portal"));
22
+ var _ImageGallery = _interopRequireDefault(require("../ImageGallery"));
23
+ var _utils2 = require("../utils");
24
+ const _excluded = ["size", "values", "imageGallery", "show", "noName", "IconDocument", "NameProps", "WrapperProps", "EmbedProps", "ImageProps", "AudioProps", "VideoProps", "OtherProps", "ItemsProps", "EmbedItemsProps", "ImageItemsProps", "AudioItemsProps", "VideoItemsProps", "OtherItemsProps", "className", "children"];
25
+ 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; }
26
+ 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; }
27
+ const useStyle = (0, _styleReact.style)(theme => ({
28
+ root: {},
29
+ items: {
30
+ maxWidth: '100%',
31
+ padding: theme.methods.space.value(0.5, 'px'),
32
+ overflow: 'auto hidden'
33
+ },
34
+ item: {},
35
+ wrapper: {
36
+ position: 'relative',
37
+ flex: '0 0 auto'
38
+ },
39
+ wrapper_image: {
40
+ transition: theme.methods.transitions.make('transform'),
41
+ '&:active': {
42
+ transform: 'scale(0.94)'
149
43
  }
150
- }), { name: 'onesy-Medias' });
151
- const Medias = react_1.default.forwardRef((props_, ref) => {
152
- var _a, _b, _c;
153
- const theme = (0, style_react_1.useOnesyTheme)();
154
- const l = theme.l;
155
- 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.onesyMedias) === null || _g === void 0 ? void 0 : _g.props) === null || _h === void 0 ? void 0 : _h.default), props_)); }, [props_]);
156
- const Line = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Line) || Line_1.default; }, [theme]);
157
- const Link = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Link) || Link_1.default; }, [theme]);
158
- 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]);
159
- 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]);
160
- const AudioPlayer = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.AudioPlayer) || AudioPlayer_1.default; }, [theme]);
161
- const VideoPlayer = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.VideoPlayer) || VideoPlayer_1.default; }, [theme]);
162
- 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]);
163
- const ImageGallery = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.ImageGallery) || ImageGallery_1.default; }, [theme]);
164
- const { size = 'regular', values: values_ = [], imageGallery = true, show = ['embed', 'image', 'video', 'audio', 'other'], noName = true, IconDocument = IconMaterialDraftW100_1.default, NameProps, WrapperProps, EmbedProps, ImageProps, AudioProps, VideoProps, OtherProps, ItemsProps, EmbedItemsProps = { fullWidth: true }, ImageItemsProps, AudioItemsProps, VideoItemsProps, OtherItemsProps, className, children } = props, other = __rest(props, ["size", "values", "imageGallery", "show", "noName", "IconDocument", "NameProps", "WrapperProps", "EmbedProps", "ImageProps", "AudioProps", "VideoProps", "OtherProps", "ItemsProps", "EmbedItemsProps", "ImageItemsProps", "AudioItemsProps", "VideoItemsProps", "OtherItemsProps", "className", "children"]);
165
- const { classes } = useStyle();
166
- const [open, setOpen] = react_1.default.useState();
167
- const refs = {
168
- root: react_1.default.useRef(undefined)
169
- };
170
- const values = (0, utils_1.is)('array', values_) ? values_ : [values_];
171
- const onOpen = react_1.default.useCallback((index) => {
172
- setOpen({
173
- index
174
- });
175
- }, []);
176
- const onClose = react_1.default.useCallback(() => {
177
- setOpen(null);
178
- }, []);
179
- const onOpenMedia = react_1.default.useCallback((media) => {
180
- window.open(media.url || media.urlSmall, 'blank_');
181
- }, []);
182
- const items = react_1.default.useMemo(() => {
183
- const items_ = {
184
- image: [],
185
- audio: [],
186
- video: [],
187
- other: [],
188
- embed: []
189
- };
190
- values.filter(item => (item === null || item === void 0 ? void 0 : item.value) && !!Object.keys(item.value).length).forEach(item => {
191
- var _a, _b, _c;
192
- const media = item.value;
193
- if (media) {
194
- if (media.urlEmbed !== undefined)
195
- items_.embed.push(item);
196
- else if ((_a = media.mime) === null || _a === void 0 ? void 0 : _a.startsWith('image'))
197
- items_.image.push(item);
198
- else if ((_b = media.mime) === null || _b === void 0 ? void 0 : _b.startsWith('audio'))
199
- items_.audio.push(item);
200
- else if ((_c = media.mime) === null || _c === void 0 ? void 0 : _c.startsWith('video'))
201
- items_.video.push(item);
202
- else
203
- items_.other.push(item);
204
- }
205
- });
206
- return items_;
207
- }, [values]);
208
- const getLink = react_1.default.useCallback((item, index) => {
209
- var _a;
210
- const urlEmbed = item === null || item === void 0 ? void 0 : item.urlEmbed;
211
- if (!urlEmbed)
212
- return null;
213
- const otherProps = Object.assign({ key: index }, EmbedProps);
214
- const urlEmbedStart = urlEmbed.replace('http://', '').replace('https://', '');
215
- const isPlatform = (urlEmbedStart.startsWith('youtu') ||
216
- urlEmbedStart.startsWith('www.youtu') ||
217
- urlEmbedStart.startsWith('instagram') ||
218
- urlEmbedStart.startsWith('www.instagram') ||
219
- urlEmbedStart.startsWith('tiktok') ||
220
- urlEmbedStart.startsWith('www.tiktok') ||
221
- urlEmbedStart.startsWith('vimeo') ||
222
- urlEmbedStart.startsWith('www.vimeo'));
223
- // predefined
224
- if (isPlatform) {
225
- let url;
226
- try {
227
- url = new URL(item.urlEmbed);
228
- }
229
- catch (error) {
230
- console.log('Invalid embed URL', item);
231
- return null;
232
- }
233
- const id = (_a = url.pathname) === null || _a === void 0 ? void 0 : _a.split('/').filter(Boolean).slice(-1)[0];
234
- if (!(url === null || url === void 0 ? void 0 : url.hostname) || !id)
235
- return null;
236
- if (item.urlEmbed.includes('youtu.be')) {
237
- return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://www.youtube.com/embed/${id}`, allow: 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share', allowFullScreen: true, className: (0, style_react_1.classNames)([
238
- otherProps === null || otherProps === void 0 ? void 0 : otherProps.className,
239
- classes.aspectRatioYoutube
240
- ]) })));
241
- }
242
- if (item.urlEmbed.includes('instagram.com')) {
243
- return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://www.instagram.com/reel/${id}/embed`, allowFullScreen: true, className: (0, style_react_1.classNames)([
244
- otherProps === null || otherProps === void 0 ? void 0 : otherProps.className,
245
- classes.aspectRatioInstagram
246
- ]) })));
247
- }
248
- if (item.urlEmbed.includes('tiktok.com')) {
249
- return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://www.tiktok.com/embed/v2/${id}`, allowFullScreen: true, className: (0, style_react_1.classNames)([
250
- otherProps === null || otherProps === void 0 ? void 0 : otherProps.className,
251
- classes.aspectRatioTiktok
252
- ]) })));
253
- }
254
- if (item.urlEmbed.includes('vimeo.com')) {
255
- return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://player.vimeo.com/video/${id}`, allowFullScreen: true, className: (0, style_react_1.classNames)([
256
- otherProps === null || otherProps === void 0 ? void 0 : otherProps.className,
257
- classes.aspectRatioVimeo
258
- ]) })));
259
- }
260
- return ((0, jsx_runtime_1.jsx)(Link, Object.assign({}, otherProps, { href: item === null || item === void 0 ? void 0 : item.urlEmbed, target: 'blank' }, { children: item.name || item.urlEmbed })));
261
- }
262
- // custom embed code
263
- return ((0, jsx_runtime_1.jsx)(Line, Object.assign({}, otherProps, { className: (0, style_react_1.classNames)([
264
- otherProps === null || otherProps === void 0 ? void 0 : otherProps.className,
265
- classes.customEmbed
266
- ]), fullWidth: true, dangerouslySetInnerHTML: {
267
- __html: urlEmbed
268
- } })));
269
- }, [EmbedProps]);
270
- const getItem = (version, item, index) => {
271
- var _a, _b, _c, _d, _e, _f;
272
- const media = item.value;
273
- const name = (((_a = item === null || item === void 0 ? void 0 : item.props) === null || _a === void 0 ? void 0 : _a.name) || !noName) && ((0, jsx_runtime_1.jsx)(Type, Object.assign({ version: size === 'large' ? 'l2' : size === 'regular' ? 'l3' : 'l3' }, NameProps, { className: (0, style_react_1.classNames)([
274
- (0, utils_2.staticClassName)('Medias', theme) && [
275
- 'onesy-Medias-name'
276
- ],
277
- NameProps === null || NameProps === void 0 ? void 0 : NameProps.className,
278
- classes.name
279
- ]) }, { children: (media === null || media === void 0 ? void 0 : media.name) || l('No name') })));
280
- if (version === 'embed') {
281
- return getLink(media, index);
282
- }
283
- if (version === 'image') {
284
- return ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 1 }, WrapperProps, { onClick: () => imageGallery && onOpen(index), className: (0, style_react_1.classNames)([
285
- (0, utils_2.staticClassName)('Medias', theme) && [
286
- 'onesy-Medias-wrapper',
287
- 'onesy-Medias-wrapper-image'
288
- ],
289
- WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className,
290
- classes.wrapper,
291
- classes.wrapper_image,
292
- classes[`imageWrapper_size_${size}`]
293
- ]) }, { children: [(0, jsx_runtime_1.jsx)(Line, Object.assign({}, ImageProps, item === null || item === void 0 ? void 0 : item.props, { fullWidth: true, className: (0, style_react_1.classNames)([
294
- (0, utils_2.staticClassName)('Medias', theme) && [
295
- 'onesy-Medias-item',
296
- 'onesy-Medias-item-image'
297
- ],
298
- ImageProps === null || ImageProps === void 0 ? void 0 : ImageProps.className,
299
- (_b = item === null || item === void 0 ? void 0 : item.props) === null || _b === void 0 ? void 0 : _b.className,
300
- classes.item,
301
- classes.image,
302
- classes[`image_size_${size}`]
303
- ]), style: Object.assign({ backgroundImage: `url(${media.urlSmall || media.url})` }, (_c = item === null || item === void 0 ? void 0 : item.props) === null || _c === void 0 ? void 0 : _c.style) }, { children: (0, jsx_runtime_1.jsx)(Interaction, {}) }), index), name] }), index));
304
- }
305
- if (version === 'audio') {
306
- return ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 1 }, WrapperProps, { className: (0, style_react_1.classNames)([
307
- (0, utils_2.staticClassName)('Medias', theme) && [
308
- 'onesy-Medias-wrapper',
309
- 'onesy-Medias-wrapper-audio'
310
- ],
311
- WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className,
312
- classes.wrapper,
313
- classes[`audioWrapper_size_${size}`]
314
- ]) }, { children: [(0, jsx_runtime_1.jsx)(AudioPlayer, Object.assign({ tonal: true, color: 'primary', src: media.url || media.urlSmall, size: size }, media, AudioProps, item === null || item === void 0 ? void 0 : item.props, { fullWidth: true, className: (0, style_react_1.classNames)([
315
- (0, utils_2.staticClassName)('Medias', theme) && [
316
- 'onesy-Medias-item',
317
- 'onesy-Medias-item-audio'
318
- ],
319
- VideoProps === null || VideoProps === void 0 ? void 0 : VideoProps.className,
320
- (_d = item === null || item === void 0 ? void 0 : item.props) === null || _d === void 0 ? void 0 : _d.className,
321
- classes.item,
322
- classes.audio
323
- ]) }), index), name] }), index));
324
- }
325
- if (version === 'video') {
326
- return ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 1 }, WrapperProps, { className: (0, style_react_1.classNames)([
327
- (0, utils_2.staticClassName)('Medias', theme) && [
328
- 'onesy-Medias-wrapper',
329
- 'onesy-Medias-wrapper-video'
330
- ],
331
- WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className,
332
- classes.wrapper,
333
- classes[`videoWrapper_size_${size}`]
334
- ]) }, { children: [(0, jsx_runtime_1.jsx)(VideoPlayer, Object.assign({ tonal: true, color: 'primary', src: media.url || media.urlSmall, size: size }, media, VideoProps, item === null || item === void 0 ? void 0 : item.props, { fullWidth: true, className: (0, style_react_1.classNames)([
335
- (0, utils_2.staticClassName)('Medias', theme) && [
336
- 'onesy-Medias-item',
337
- 'onesy-Medias-item-video'
338
- ],
339
- VideoProps === null || VideoProps === void 0 ? void 0 : VideoProps.className,
340
- (_e = item === null || item === void 0 ? void 0 : item.props) === null || _e === void 0 ? void 0 : _e.className,
341
- classes.item,
342
- classes.video
343
- ]) }), index), name] }), index));
344
- }
345
- if (version === 'other') {
346
- return ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 1 }, WrapperProps, { className: (0, style_react_1.classNames)([
347
- (0, utils_2.staticClassName)('Medias', theme) && [
348
- 'onesy-Medias-wrapper',
349
- 'onesy-Medias-wrapper-other'
350
- ],
351
- WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className,
352
- classes.wrapper,
353
- classes[`otherWrapper_size_${size}`]
354
- ]) }, { children: [(0, jsx_runtime_1.jsxs)(Line, Object.assign({}, OtherProps, item === null || item === void 0 ? void 0 : item.props, { align: 'center', justify: 'center', onClick: () => onOpenMedia(media), fullWidth: true, className: (0, style_react_1.classNames)([
355
- (0, utils_2.staticClassName)('Medias', theme) && [
356
- 'onesy-Medias-item',
357
- 'onesy-Medias-item-other'
358
- ],
359
- OtherProps === null || OtherProps === void 0 ? void 0 : OtherProps.className,
360
- (_f = item === null || item === void 0 ? void 0 : item.props) === null || _f === void 0 ? void 0 : _f.className,
361
- classes.item,
362
- classes.other,
363
- classes[`other_size_${size}`]
364
- ]) }, { children: [(0, jsx_runtime_1.jsx)(Interaction, {}), (0, jsx_runtime_1.jsx)(IconDocument, { size: size === 'large' ? 44 : size === 'regular' ? 34 : 24 })] }), index), name] }), index));
365
- }
366
- return null;
44
+ },
45
+ wrapper_other: {
46
+ transition: theme.methods.transitions.make('transform'),
47
+ '&:active': {
48
+ transform: 'scale(0.94)'
49
+ }
50
+ },
51
+ name: {
52
+ wordBreak: 'break-word'
53
+ },
54
+ image: {
55
+ position: 'relative',
56
+ backgroundSize: 'cover',
57
+ backgroundPosition: 'center',
58
+ backgroundRepeat: 'no-repeat',
59
+ aspectRatio: '16 / 9'
60
+ },
61
+ imageWrapper_size_small: {
62
+ width: '174px'
63
+ },
64
+ imageWrapper_size_regular: {
65
+ width: '214px'
66
+ },
67
+ imageWrapper_size_large: {
68
+ width: '254px'
69
+ },
70
+ image_size_small: {
71
+ borderRadius: theme.methods.shape.radius.value(1)
72
+ },
73
+ image_size_regular: {
74
+ borderRadius: theme.methods.shape.radius.value(2)
75
+ },
76
+ image_size_large: {
77
+ borderRadius: theme.methods.shape.radius.value(3)
78
+ },
79
+ audioWrapper_size_small: {
80
+ width: '324px'
81
+ },
82
+ audioWrapper_size_regular: {
83
+ width: '340px'
84
+ },
85
+ audioWrapper_size_large: {
86
+ width: '440px'
87
+ },
88
+ videoWrapper_size_small: {
89
+ width: '324px'
90
+ },
91
+ videoWrapper_size_regular: {
92
+ width: '340px'
93
+ },
94
+ videoWrapper_size_large: {
95
+ width: '440px'
96
+ },
97
+ other: {
98
+ position: 'relative',
99
+ aspectRatio: '3 / 4',
100
+ cursor: 'pointer',
101
+ userSelect: 'none',
102
+ background: theme.palette.background.secondary.tertiary,
103
+ boxShadow: theme.shadows.values.default[1]
104
+ },
105
+ otherWrapper_size_small: {
106
+ width: '74px'
107
+ },
108
+ otherWrapper_size_regular: {
109
+ width: '94px'
110
+ },
111
+ otherWrapper_size_large: {
112
+ width: '114px'
113
+ },
114
+ other_size_small: {
115
+ borderRadius: theme.methods.shape.radius.value(1)
116
+ },
117
+ other_size_regular: {
118
+ borderRadius: theme.methods.shape.radius.value(2)
119
+ },
120
+ other_size_large: {
121
+ borderRadius: theme.methods.shape.radius.value(3)
122
+ },
123
+ externalLinks: {
124
+ overflow: 'auto hidden'
125
+ },
126
+ aspectRatioYoutube: {
127
+ aspectRatio: '16 / 9',
128
+ width: '100%',
129
+ maxWidth: '750px'
130
+ },
131
+ aspectRatioVimeo: {
132
+ aspectRatio: '16 / 9',
133
+ width: '440px'
134
+ },
135
+ aspectRatioInstagram: {
136
+ aspectRatio: '3 / 5.6',
137
+ width: '340px'
138
+ },
139
+ aspectRatioTiktok: {
140
+ aspectRatio: '3 / 6.84',
141
+ width: '324px'
142
+ },
143
+ customEmbed: {
144
+ maxWidth: '750px'
145
+ }
146
+ }), {
147
+ name: 'onesy-Medias'
148
+ });
149
+ const Medias = /*#__PURE__*/_react.default.forwardRef((props_, ref) => {
150
+ var _items$image, _refs$root$current;
151
+ const theme = (0, _styleReact.useOnesyTheme)();
152
+ const l = theme.l;
153
+ const props = _react.default.useMemo(() => {
154
+ var _theme$ui, _theme$ui2;
155
+ 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.onesyMedias) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.props) === null || _theme$ui2 === void 0 ? void 0 : _theme$ui2.default), props_);
156
+ }, [props_]);
157
+ const Line = _react.default.useMemo(() => {
158
+ var _theme$elements;
159
+ return (theme === null || theme === void 0 || (_theme$elements = theme.elements) === null || _theme$elements === void 0 ? void 0 : _theme$elements.Line) || _Line.default;
160
+ }, [theme]);
161
+ const Link = _react.default.useMemo(() => {
162
+ var _theme$elements2;
163
+ return (theme === null || theme === void 0 || (_theme$elements2 = theme.elements) === null || _theme$elements2 === void 0 ? void 0 : _theme$elements2.Link) || _Link.default;
164
+ }, [theme]);
165
+ const Type = _react.default.useMemo(() => {
166
+ var _theme$elements3;
167
+ return (theme === null || theme === void 0 || (_theme$elements3 = theme.elements) === null || _theme$elements3 === void 0 ? void 0 : _theme$elements3.Type) || _Type.default;
168
+ }, [theme]);
169
+ const Interaction = _react.default.useMemo(() => {
170
+ var _theme$elements4;
171
+ return (theme === null || theme === void 0 || (_theme$elements4 = theme.elements) === null || _theme$elements4 === void 0 ? void 0 : _theme$elements4.Interaction) || _Interaction.default;
172
+ }, [theme]);
173
+ const AudioPlayer = _react.default.useMemo(() => {
174
+ var _theme$elements5;
175
+ return (theme === null || theme === void 0 || (_theme$elements5 = theme.elements) === null || _theme$elements5 === void 0 ? void 0 : _theme$elements5.AudioPlayer) || _AudioPlayer.default;
176
+ }, [theme]);
177
+ const VideoPlayer = _react.default.useMemo(() => {
178
+ var _theme$elements6;
179
+ return (theme === null || theme === void 0 || (_theme$elements6 = theme.elements) === null || _theme$elements6 === void 0 ? void 0 : _theme$elements6.VideoPlayer) || _VideoPlayer.default;
180
+ }, [theme]);
181
+ const Portal = _react.default.useMemo(() => {
182
+ var _theme$elements7;
183
+ return (theme === null || theme === void 0 || (_theme$elements7 = theme.elements) === null || _theme$elements7 === void 0 ? void 0 : _theme$elements7.Portal) || _Portal.default;
184
+ }, [theme]);
185
+ const ImageGallery = _react.default.useMemo(() => {
186
+ var _theme$elements8;
187
+ return (theme === null || theme === void 0 || (_theme$elements8 = theme.elements) === null || _theme$elements8 === void 0 ? void 0 : _theme$elements8.ImageGallery) || _ImageGallery.default;
188
+ }, [theme]);
189
+ const {
190
+ size = 'regular',
191
+ values: values_ = [],
192
+ imageGallery = true,
193
+ show = ['embed', 'image', 'video', 'audio', 'other'],
194
+ noName = true,
195
+ IconDocument = _IconMaterialDraftW.default,
196
+ NameProps,
197
+ WrapperProps,
198
+ EmbedProps,
199
+ ImageProps,
200
+ AudioProps,
201
+ VideoProps,
202
+ OtherProps,
203
+ ItemsProps,
204
+ EmbedItemsProps = {
205
+ fullWidth: true
206
+ },
207
+ ImageItemsProps,
208
+ AudioItemsProps,
209
+ VideoItemsProps,
210
+ OtherItemsProps,
211
+ className,
212
+ children
213
+ } = props,
214
+ other = (0, _objectWithoutProperties2.default)(props, _excluded);
215
+ const {
216
+ classes
217
+ } = useStyle();
218
+ const [open, setOpen] = _react.default.useState();
219
+ const refs = {
220
+ root: _react.default.useRef(undefined)
221
+ };
222
+ const values = (0, _utils.is)('array', values_) ? values_ : [values_];
223
+ const onOpen = _react.default.useCallback(index => {
224
+ setOpen({
225
+ index
226
+ });
227
+ }, []);
228
+ const onClose = _react.default.useCallback(() => {
229
+ setOpen(null);
230
+ }, []);
231
+ const onOpenMedia = _react.default.useCallback(media => {
232
+ window.open(media.url || media.urlSmall, 'blank_');
233
+ }, []);
234
+ const items = _react.default.useMemo(() => {
235
+ const items_ = {
236
+ image: [],
237
+ audio: [],
238
+ video: [],
239
+ other: [],
240
+ embed: []
367
241
  };
368
- const usable = show.filter(item => {
369
- var _a;
370
- return (!!((_a = items[item]) === null || _a === void 0 ? void 0 : _a.length) &&
371
- !!items[item].map((itemMedia, indexItemMedia) => getItem(item, itemMedia, indexItemMedia)).filter(Boolean).length);
242
+ values.filter(item => (item === null || item === void 0 ? void 0 : item.value) && !!Object.keys(item.value).length).forEach(item => {
243
+ const media = item.value;
244
+ if (media) {
245
+ var _media$mime, _media$mime2, _media$mime3;
246
+ if (media.urlEmbed !== undefined) items_.embed.push(item);else if ((_media$mime = media.mime) !== null && _media$mime !== void 0 && _media$mime.startsWith('image')) items_.image.push(item);else if ((_media$mime2 = media.mime) !== null && _media$mime2 !== void 0 && _media$mime2.startsWith('audio')) items_.audio.push(item);else if ((_media$mime3 = media.mime) !== null && _media$mime3 !== void 0 && _media$mime3.startsWith('video')) items_.video.push(item);else items_.other.push(item);
247
+ }
372
248
  });
373
- if (!(usable === null || usable === void 0 ? void 0 : usable.length))
249
+ return items_;
250
+ }, [values]);
251
+ const getLink = _react.default.useCallback((item, index) => {
252
+ const urlEmbed = item === null || item === void 0 ? void 0 : item.urlEmbed;
253
+ if (!urlEmbed) return null;
254
+ const otherProps = _objectSpread({
255
+ key: index
256
+ }, EmbedProps);
257
+ const urlEmbedStart = urlEmbed.replace('http://', '').replace('https://', '');
258
+ const isPlatform = urlEmbedStart.startsWith('youtu') || urlEmbedStart.startsWith('www.youtu') || urlEmbedStart.startsWith('instagram') || urlEmbedStart.startsWith('www.instagram') || urlEmbedStart.startsWith('tiktok') || urlEmbedStart.startsWith('www.tiktok') || urlEmbedStart.startsWith('vimeo') || urlEmbedStart.startsWith('www.vimeo');
259
+
260
+ // predefined
261
+ if (isPlatform) {
262
+ var _url$pathname, _url;
263
+ let url;
264
+ try {
265
+ url = new URL(item.urlEmbed);
266
+ } catch (error) {
267
+ console.log('Invalid embed URL', item);
374
268
  return null;
375
- return ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ ref: (item) => {
376
- if (ref) {
377
- if ((0, utils_1.is)('function', ref))
378
- ref(item);
379
- else
380
- ref.current = item;
381
- }
382
- refs.root.current = item;
383
- }, gap: size === 'large' ? 3 : size === 'regular' ? 2 : 1.5, fullWidth: true, className: (0, style_react_1.classNames)([
384
- (0, utils_2.staticClassName)('Medias', theme) && [
385
- 'onesy-Medias-root',
386
- `onesy-Medias-size-${size}`
387
- ],
388
- className,
389
- classes.root
390
- ]) }, other, { children: [usable.map(item => ((0, jsx_runtime_1.jsx)(Line, Object.assign({ gap: size === 'large' ? 2 : size === 'regular' ? 1.5 : 1, direction: item === 'embed' ? 'column' : 'row', align: item === 'embed' ? 'center' : 'flex-start', justify: item === 'embed' ? 'center' : 'flex-start', fullWidth: true }, ItemsProps, (item === 'embed' && EmbedItemsProps), (item === 'image' && ImageItemsProps), (item === 'audio' && AudioItemsProps), (item === 'video' && VideoItemsProps), (item === 'other' && OtherItemsProps), { className: (0, style_react_1.classNames)([
391
- (0, utils_2.staticClassName)('Medias', theme) && [
392
- 'onesy-Medias-items',
393
- `onesy-Medias-items-${item}`
394
- ],
395
- ItemsProps === null || ItemsProps === void 0 ? void 0 : ItemsProps.className,
396
- item === 'embed' && (EmbedItemsProps === null || EmbedItemsProps === void 0 ? void 0 : EmbedItemsProps.className),
397
- item === 'image' && (ImageItemsProps === null || ImageItemsProps === void 0 ? void 0 : ImageItemsProps.className),
398
- item === 'audio' && (AudioItemsProps === null || AudioItemsProps === void 0 ? void 0 : AudioItemsProps.className),
399
- item === 'video' && (VideoItemsProps === null || VideoItemsProps === void 0 ? void 0 : VideoItemsProps.className),
400
- item === 'other' && (OtherItemsProps === null || OtherItemsProps === void 0 ? void 0 : OtherItemsProps.className),
401
- classes.items
402
- ]) }, { children: items[item].map((itemMedia, indexItemMedia) => getItem(item, itemMedia, indexItemMedia)) }), item))), refs.root.current && imageGallery && !!((_a = items.image) === null || _a === void 0 ? void 0 : _a.length) && ((0, jsx_runtime_1.jsx)(Portal, Object.assign({ element: (_c = (_b = refs.root.current) === null || _b === void 0 ? void 0 : _b.ownerDocument) === null || _c === void 0 ? void 0 : _c.body }, { children: (0, jsx_runtime_1.jsx)(ImageGallery, { open: !!open, onClose: onClose, value: open === null || open === void 0 ? void 0 : open.index, items: items.image.map(item => (Object.assign(Object.assign({}, item.value), { url: item.value.url || item.value.urlSmall, urlSmall: item.value.urlSmall || item.value.url }))) }) })))] })));
269
+ }
270
+ const id = (_url$pathname = url.pathname) === null || _url$pathname === void 0 ? void 0 : _url$pathname.split('/').filter(Boolean).slice(-1)[0];
271
+ if (!((_url = url) !== null && _url !== void 0 && _url.hostname) || !id) return null;
272
+ if (item.urlEmbed.includes('youtu.be')) {
273
+ return /*#__PURE__*/_react.default.createElement("iframe", (0, _extends2.default)({}, otherProps, {
274
+ title: item.name || '',
275
+ src: `https://www.youtube.com/embed/${id}`,
276
+ allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
277
+ allowFullScreen: true,
278
+ className: (0, _styleReact.classNames)([otherProps === null || otherProps === void 0 ? void 0 : otherProps.className, classes.aspectRatioYoutube])
279
+ }));
280
+ }
281
+ if (item.urlEmbed.includes('instagram.com')) {
282
+ return /*#__PURE__*/_react.default.createElement("iframe", (0, _extends2.default)({}, otherProps, {
283
+ title: item.name || '',
284
+ src: `https://www.instagram.com/reel/${id}/embed`,
285
+ allowFullScreen: true,
286
+ className: (0, _styleReact.classNames)([otherProps === null || otherProps === void 0 ? void 0 : otherProps.className, classes.aspectRatioInstagram])
287
+ }));
288
+ }
289
+ if (item.urlEmbed.includes('tiktok.com')) {
290
+ return /*#__PURE__*/_react.default.createElement("iframe", (0, _extends2.default)({}, otherProps, {
291
+ title: item.name || '',
292
+ src: `https://www.tiktok.com/embed/v2/${id}`,
293
+ allowFullScreen: true,
294
+ className: (0, _styleReact.classNames)([otherProps === null || otherProps === void 0 ? void 0 : otherProps.className, classes.aspectRatioTiktok])
295
+ }));
296
+ }
297
+ if (item.urlEmbed.includes('vimeo.com')) {
298
+ return /*#__PURE__*/_react.default.createElement("iframe", (0, _extends2.default)({}, otherProps, {
299
+ title: item.name || '',
300
+ src: `https://player.vimeo.com/video/${id}`,
301
+ allowFullScreen: true,
302
+ className: (0, _styleReact.classNames)([otherProps === null || otherProps === void 0 ? void 0 : otherProps.className, classes.aspectRatioVimeo])
303
+ }));
304
+ }
305
+ return /*#__PURE__*/_react.default.createElement(Link, (0, _extends2.default)({}, otherProps, {
306
+ href: item === null || item === void 0 ? void 0 : item.urlEmbed,
307
+ target: "blank"
308
+ }), item.name || item.urlEmbed);
309
+ }
310
+
311
+ // custom embed code
312
+ return /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({}, otherProps, {
313
+ className: (0, _styleReact.classNames)([otherProps === null || otherProps === void 0 ? void 0 : otherProps.className, classes.customEmbed]),
314
+ fullWidth: true,
315
+ dangerouslySetInnerHTML: {
316
+ __html: urlEmbed
317
+ }
318
+ }));
319
+ }, [EmbedProps]);
320
+ const getItem = (version, item, index) => {
321
+ var _item$props;
322
+ const media = item.value;
323
+ const name = ((item === null || item === void 0 || (_item$props = item.props) === null || _item$props === void 0 ? void 0 : _item$props.name) || !noName) && /*#__PURE__*/_react.default.createElement(Type, (0, _extends2.default)({
324
+ version: size === 'large' ? 'l2' : size === 'regular' ? 'l3' : 'l3'
325
+ }, NameProps, {
326
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-name'], NameProps === null || NameProps === void 0 ? void 0 : NameProps.className, classes.name])
327
+ }), (media === null || media === void 0 ? void 0 : media.name) || l('No name'));
328
+ if (version === 'embed') {
329
+ return getLink(media, index);
330
+ }
331
+ if (version === 'image') {
332
+ var _item$props2, _item$props3;
333
+ return /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
334
+ key: index,
335
+ gap: 1
336
+ }, WrapperProps, {
337
+ onClick: () => imageGallery && onOpen(index),
338
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-wrapper', 'onesy-Medias-wrapper-image'], WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className, classes.wrapper, classes.wrapper_image, classes[`imageWrapper_size_${size}`]])
339
+ }), /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
340
+ key: index
341
+ }, ImageProps, item === null || item === void 0 ? void 0 : item.props, {
342
+ fullWidth: true,
343
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-item', 'onesy-Medias-item-image'], ImageProps === null || ImageProps === void 0 ? void 0 : ImageProps.className, item === null || item === void 0 || (_item$props2 = item.props) === null || _item$props2 === void 0 ? void 0 : _item$props2.className, classes.item, classes.image, classes[`image_size_${size}`]]),
344
+ style: _objectSpread({
345
+ backgroundImage: `url(${media.urlSmall || media.url})`
346
+ }, item === null || item === void 0 || (_item$props3 = item.props) === null || _item$props3 === void 0 ? void 0 : _item$props3.style)
347
+ }), /*#__PURE__*/_react.default.createElement(Interaction, null)), name);
348
+ }
349
+ if (version === 'audio') {
350
+ var _item$props4;
351
+ return /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
352
+ key: index,
353
+ gap: 1
354
+ }, WrapperProps, {
355
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-wrapper', 'onesy-Medias-wrapper-audio'], WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className, classes.wrapper, classes[`audioWrapper_size_${size}`]])
356
+ }), /*#__PURE__*/_react.default.createElement(AudioPlayer, (0, _extends2.default)({
357
+ key: index,
358
+ tonal: true,
359
+ color: "primary",
360
+ src: media.url || media.urlSmall,
361
+ size: size
362
+ }, media, AudioProps, item === null || item === void 0 ? void 0 : item.props, {
363
+ fullWidth: true,
364
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-item', 'onesy-Medias-item-audio'], VideoProps === null || VideoProps === void 0 ? void 0 : VideoProps.className, item === null || item === void 0 || (_item$props4 = item.props) === null || _item$props4 === void 0 ? void 0 : _item$props4.className, classes.item, classes.audio])
365
+ })), name);
366
+ }
367
+ if (version === 'video') {
368
+ var _item$props5;
369
+ return /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
370
+ key: index,
371
+ gap: 1
372
+ }, WrapperProps, {
373
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-wrapper', 'onesy-Medias-wrapper-video'], WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className, classes.wrapper, classes[`videoWrapper_size_${size}`]])
374
+ }), /*#__PURE__*/_react.default.createElement(VideoPlayer, (0, _extends2.default)({
375
+ key: index,
376
+ tonal: true,
377
+ color: "primary",
378
+ src: media.url || media.urlSmall,
379
+ size: size
380
+ }, media, VideoProps, item === null || item === void 0 ? void 0 : item.props, {
381
+ fullWidth: true,
382
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-item', 'onesy-Medias-item-video'], VideoProps === null || VideoProps === void 0 ? void 0 : VideoProps.className, item === null || item === void 0 || (_item$props5 = item.props) === null || _item$props5 === void 0 ? void 0 : _item$props5.className, classes.item, classes.video])
383
+ })), name);
384
+ }
385
+ if (version === 'other') {
386
+ var _item$props6;
387
+ return /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
388
+ key: index,
389
+ gap: 1
390
+ }, WrapperProps, {
391
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-wrapper', 'onesy-Medias-wrapper-other'], WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className, classes.wrapper, classes[`otherWrapper_size_${size}`]])
392
+ }), /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
393
+ key: index
394
+ }, OtherProps, item === null || item === void 0 ? void 0 : item.props, {
395
+ align: "center",
396
+ justify: "center",
397
+ onClick: () => onOpenMedia(media),
398
+ fullWidth: true,
399
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-item', 'onesy-Medias-item-other'], OtherProps === null || OtherProps === void 0 ? void 0 : OtherProps.className, item === null || item === void 0 || (_item$props6 = item.props) === null || _item$props6 === void 0 ? void 0 : _item$props6.className, classes.item, classes.other, classes[`other_size_${size}`]])
400
+ }), /*#__PURE__*/_react.default.createElement(Interaction, null), /*#__PURE__*/_react.default.createElement(IconDocument, {
401
+ size: size === 'large' ? 44 : size === 'regular' ? 34 : 24
402
+ })), name);
403
+ }
404
+ return null;
405
+ };
406
+ const usable = show.filter(item => {
407
+ var _items$item;
408
+ return !!((_items$item = items[item]) !== null && _items$item !== void 0 && _items$item.length) && !!items[item].map((itemMedia, indexItemMedia) => getItem(item, itemMedia, indexItemMedia)).filter(Boolean).length;
409
+ });
410
+ if (!(usable !== null && usable !== void 0 && usable.length)) return null;
411
+ return /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
412
+ ref: item => {
413
+ if (ref) {
414
+ if ((0, _utils.is)('function', ref)) ref(item);else ref.current = item;
415
+ }
416
+ refs.root.current = item;
417
+ },
418
+ gap: size === 'large' ? 3 : size === 'regular' ? 2 : 1.5,
419
+ fullWidth: true,
420
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-root', `onesy-Medias-size-${size}`], className, classes.root])
421
+ }, other), usable.map(item => /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
422
+ key: item,
423
+ gap: size === 'large' ? 2 : size === 'regular' ? 1.5 : 1,
424
+ direction: item === 'embed' ? 'column' : 'row',
425
+ align: item === 'embed' ? 'center' : 'flex-start',
426
+ justify: item === 'embed' ? 'center' : 'flex-start',
427
+ fullWidth: true
428
+ }, ItemsProps, item === 'embed' && EmbedItemsProps, item === 'image' && ImageItemsProps, item === 'audio' && AudioItemsProps, item === 'video' && VideoItemsProps, item === 'other' && OtherItemsProps, {
429
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Medias', theme) && ['onesy-Medias-items', `onesy-Medias-items-${item}`], ItemsProps === null || ItemsProps === void 0 ? void 0 : ItemsProps.className, item === 'embed' && (EmbedItemsProps === null || EmbedItemsProps === void 0 ? void 0 : EmbedItemsProps.className), item === 'image' && (ImageItemsProps === null || ImageItemsProps === void 0 ? void 0 : ImageItemsProps.className), item === 'audio' && (AudioItemsProps === null || AudioItemsProps === void 0 ? void 0 : AudioItemsProps.className), item === 'video' && (VideoItemsProps === null || VideoItemsProps === void 0 ? void 0 : VideoItemsProps.className), item === 'other' && (OtherItemsProps === null || OtherItemsProps === void 0 ? void 0 : OtherItemsProps.className), classes.items])
430
+ }), items[item].map((itemMedia, indexItemMedia) => getItem(item, itemMedia, indexItemMedia)))), refs.root.current && imageGallery && !!((_items$image = items.image) !== null && _items$image !== void 0 && _items$image.length) && /*#__PURE__*/_react.default.createElement(Portal, {
431
+ element: (_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.body
432
+ }, /*#__PURE__*/_react.default.createElement(ImageGallery, {
433
+ open: !!open,
434
+ onClose: onClose,
435
+ value: open === null || open === void 0 ? void 0 : open.index,
436
+ items: items.image.map(item => _objectSpread(_objectSpread({}, item.value), {}, {
437
+ url: item.value.url || item.value.urlSmall,
438
+ urlSmall: item.value.urlSmall || item.value.url
439
+ }))
440
+ })));
403
441
  });
404
442
  Medias.displayName = 'onesy-Medias';
405
- exports.default = Medias;
443
+ var _default = exports.default = Medias;