@os-design/core 1.0.156 → 1.0.158

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 (383) hide show
  1. package/dist/cjs/Alert/index.js +4 -30
  2. package/dist/cjs/Alert/index.js.map +1 -1
  3. package/dist/cjs/Avatar/index.js +15 -39
  4. package/dist/cjs/Avatar/index.js.map +1 -1
  5. package/dist/cjs/Avatar/utils/nameToInitials.js +1 -3
  6. package/dist/cjs/Avatar/utils/nameToInitials.js.map +1 -1
  7. package/dist/cjs/Avatar/utils/strToHue.js +0 -4
  8. package/dist/cjs/Avatar/utils/strToHue.js.map +1 -1
  9. package/dist/cjs/AvatarSkeleton/index.js +3 -20
  10. package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
  11. package/dist/cjs/Breadcrumb/index.js +4 -30
  12. package/dist/cjs/Breadcrumb/index.js.map +1 -1
  13. package/dist/cjs/BreadcrumbItem/index.js +8 -28
  14. package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
  15. package/dist/cjs/Button/ButtonContent.js +7 -20
  16. package/dist/cjs/Button/ButtonContent.js.map +1 -1
  17. package/dist/cjs/Button/index.js +23 -53
  18. package/dist/cjs/Button/index.js.map +1 -1
  19. package/dist/cjs/Button/utils/useButtonColors.js +3 -12
  20. package/dist/cjs/Button/utils/useButtonColors.js.map +1 -1
  21. package/dist/cjs/Checkbox/index.js +20 -59
  22. package/dist/cjs/Checkbox/index.js.map +1 -1
  23. package/dist/cjs/CheckboxSkeleton/index.js +2 -22
  24. package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
  25. package/dist/cjs/DatePicker/DatePickerCalendar.js +11 -48
  26. package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
  27. package/dist/cjs/DatePicker/index.js +32 -68
  28. package/dist/cjs/DatePicker/index.js.map +1 -1
  29. package/dist/cjs/Drawer/index.js +14 -44
  30. package/dist/cjs/Drawer/index.js.map +1 -1
  31. package/dist/cjs/Form/FormConfigContext.js +0 -4
  32. package/dist/cjs/Form/FormConfigContext.js.map +1 -1
  33. package/dist/cjs/Form/index.js +3 -20
  34. package/dist/cjs/Form/index.js.map +1 -1
  35. package/dist/cjs/FormDivider/index.js +3 -24
  36. package/dist/cjs/FormDivider/index.js.map +1 -1
  37. package/dist/cjs/FormItem/index.js +12 -42
  38. package/dist/cjs/FormItem/index.js.map +1 -1
  39. package/dist/cjs/FormItem/utils/firstChildHasType.js +0 -5
  40. package/dist/cjs/FormItem/utils/firstChildHasType.js.map +1 -1
  41. package/dist/cjs/Gallery/Status.js +2 -12
  42. package/dist/cjs/Gallery/Status.js.map +1 -1
  43. package/dist/cjs/Gallery/index.js +27 -61
  44. package/dist/cjs/Gallery/index.js.map +1 -1
  45. package/dist/cjs/GlobalStyles/index.js +0 -8
  46. package/dist/cjs/GlobalStyles/index.js.map +1 -1
  47. package/dist/cjs/GlobalStyles/resetStyles.js +0 -5
  48. package/dist/cjs/GlobalStyles/resetStyles.js.map +1 -1
  49. package/dist/cjs/GlobalStyles/typographyStyles.js +0 -11
  50. package/dist/cjs/GlobalStyles/typographyStyles.js.map +1 -1
  51. package/dist/cjs/HeaderSkeleton/index.js +7 -26
  52. package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
  53. package/dist/cjs/Image/index.js +11 -31
  54. package/dist/cjs/Image/index.js.map +1 -1
  55. package/dist/cjs/ImageSkeleton/index.js +1 -12
  56. package/dist/cjs/ImageSkeleton/index.js.map +1 -1
  57. package/dist/cjs/Input/index.js +23 -57
  58. package/dist/cjs/Input/index.js.map +1 -1
  59. package/dist/cjs/Input/utils/getFocusableElements.js +0 -8
  60. package/dist/cjs/Input/utils/getFocusableElements.js.map +1 -1
  61. package/dist/cjs/InputNumber/index.js +49 -72
  62. package/dist/cjs/InputNumber/index.js.map +1 -1
  63. package/dist/cjs/InputNumber/utils/defaultLocale.js.map +1 -1
  64. package/dist/cjs/InputPassword/index.js +39 -77
  65. package/dist/cjs/InputPassword/index.js.map +1 -1
  66. package/dist/cjs/InputPassword/utils/defaultLocale.js.map +1 -1
  67. package/dist/cjs/InputSearch/index.js +22 -51
  68. package/dist/cjs/InputSearch/index.js.map +1 -1
  69. package/dist/cjs/InputSearch/utils/defaultLocale.js.map +1 -1
  70. package/dist/cjs/InputSkeleton/index.js +1 -14
  71. package/dist/cjs/InputSkeleton/index.js.map +1 -1
  72. package/dist/cjs/Layout/LayoutContext.js +0 -4
  73. package/dist/cjs/Layout/LayoutContext.js.map +1 -1
  74. package/dist/cjs/Layout/index.js +4 -12
  75. package/dist/cjs/Layout/index.js.map +1 -1
  76. package/dist/cjs/Link/index.js +8 -30
  77. package/dist/cjs/Link/index.js.map +1 -1
  78. package/dist/cjs/LinkButton/index.js +26 -49
  79. package/dist/cjs/LinkButton/index.js.map +1 -1
  80. package/dist/cjs/List/WindowScroller.js +4 -12
  81. package/dist/cjs/List/WindowScroller.js.map +1 -1
  82. package/dist/cjs/List/index.js +35 -68
  83. package/dist/cjs/List/index.js.map +1 -1
  84. package/dist/cjs/List/utils/bodyPointerEvents.js +0 -9
  85. package/dist/cjs/List/utils/bodyPointerEvents.js.map +1 -1
  86. package/dist/cjs/List/utils/frameTimeout.js +1 -8
  87. package/dist/cjs/List/utils/frameTimeout.js.map +1 -1
  88. package/dist/cjs/List/utils/useRWLoadNext.js +6 -9
  89. package/dist/cjs/List/utils/useRWLoadNext.js.map +1 -1
  90. package/dist/cjs/ListItem/ListItemContent.js +12 -44
  91. package/dist/cjs/ListItem/ListItemContent.js.map +1 -1
  92. package/dist/cjs/ListItem/index.js +15 -39
  93. package/dist/cjs/ListItem/index.js.map +1 -1
  94. package/dist/cjs/ListItemLink/index.js +18 -51
  95. package/dist/cjs/ListItemLink/index.js.map +1 -1
  96. package/dist/cjs/ListSkeleton/index.js +11 -32
  97. package/dist/cjs/ListSkeleton/index.js.map +1 -1
  98. package/dist/cjs/LogoLink/index.js +6 -27
  99. package/dist/cjs/LogoLink/index.js.map +1 -1
  100. package/dist/cjs/Menu/index.js +20 -47
  101. package/dist/cjs/Menu/index.js.map +1 -1
  102. package/dist/cjs/Menu/utils/useFocusWithArrows.js +1 -13
  103. package/dist/cjs/Menu/utils/useFocusWithArrows.js.map +1 -1
  104. package/dist/cjs/MenuDivider/index.js +1 -13
  105. package/dist/cjs/MenuDivider/index.js.map +1 -1
  106. package/dist/cjs/MenuGroup/index.js +19 -52
  107. package/dist/cjs/MenuGroup/index.js.map +1 -1
  108. package/dist/cjs/MenuItem/index.js +9 -32
  109. package/dist/cjs/MenuItem/index.js.map +1 -1
  110. package/dist/cjs/Modal/index.js +25 -65
  111. package/dist/cjs/Modal/index.js.map +1 -1
  112. package/dist/cjs/Modal/utils/defaultLocale.js.map +1 -1
  113. package/dist/cjs/Navigation/index.js +6 -35
  114. package/dist/cjs/Navigation/index.js.map +1 -1
  115. package/dist/cjs/Navigation/utils/useScrollFlags.js +6 -19
  116. package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
  117. package/dist/cjs/NavigationItem/index.js +8 -32
  118. package/dist/cjs/NavigationItem/index.js.map +1 -1
  119. package/dist/cjs/PageContent/index.js +6 -30
  120. package/dist/cjs/PageContent/index.js.map +1 -1
  121. package/dist/cjs/PageHeader/index.js +13 -46
  122. package/dist/cjs/PageHeader/index.js.map +1 -1
  123. package/dist/cjs/PageHeader/utils/defaultLocale.js.map +1 -1
  124. package/dist/cjs/PageHeaderInputSearch/index.js +10 -46
  125. package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
  126. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js +0 -7
  127. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  128. package/dist/cjs/PageHeaderSkeleton/index.js +3 -18
  129. package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
  130. package/dist/cjs/ParagraphSkeleton/index.js +7 -25
  131. package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
  132. package/dist/cjs/Popover/index.js +46 -77
  133. package/dist/cjs/Popover/index.js.map +1 -1
  134. package/dist/cjs/Popover/utils/usePopoverPosition.js +21 -43
  135. package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
  136. package/dist/cjs/Progress/index.js +6 -25
  137. package/dist/cjs/Progress/index.js.map +1 -1
  138. package/dist/cjs/RadioGroup/index.js +25 -55
  139. package/dist/cjs/RadioGroup/index.js.map +1 -1
  140. package/dist/cjs/RadioGroupSkeleton/index.js +3 -20
  141. package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
  142. package/dist/cjs/Result/index.js +6 -30
  143. package/dist/cjs/Result/index.js.map +1 -1
  144. package/dist/cjs/ScrollButton/index.js +15 -40
  145. package/dist/cjs/ScrollButton/index.js.map +1 -1
  146. package/dist/cjs/ScrollButton/utils/useContainerPosition.js +10 -23
  147. package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
  148. package/dist/cjs/ScrollButton/utils/useVisibility.js +6 -19
  149. package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
  150. package/dist/cjs/Select/SelectList.js +27 -53
  151. package/dist/cjs/Select/SelectList.js.map +1 -1
  152. package/dist/cjs/Select/SelectToggle.js +17 -52
  153. package/dist/cjs/Select/SelectToggle.js.map +1 -1
  154. package/dist/cjs/Select/index.js +60 -103
  155. package/dist/cjs/Select/index.js.map +1 -1
  156. package/dist/cjs/Select/utils/defaultLocale.js.map +1 -1
  157. package/dist/cjs/Skeleton/index.js +3 -20
  158. package/dist/cjs/Skeleton/index.js.map +1 -1
  159. package/dist/cjs/Switch/index.js +17 -52
  160. package/dist/cjs/Switch/index.js.map +1 -1
  161. package/dist/cjs/SwitchSkeleton/index.js +1 -14
  162. package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
  163. package/dist/cjs/Tag/index.js +4 -26
  164. package/dist/cjs/Tag/index.js.map +1 -1
  165. package/dist/cjs/TagLink/index.js +7 -25
  166. package/dist/cjs/TagLink/index.js.map +1 -1
  167. package/dist/cjs/TagList/index.js +8 -38
  168. package/dist/cjs/TagList/index.js.map +1 -1
  169. package/dist/cjs/TagListSkeleton/index.js +4 -17
  170. package/dist/cjs/TagListSkeleton/index.js.map +1 -1
  171. package/dist/cjs/TagSkeleton/index.js +3 -20
  172. package/dist/cjs/TagSkeleton/index.js.map +1 -1
  173. package/dist/cjs/TextArea/index.js +6 -21
  174. package/dist/cjs/TextArea/index.js.map +1 -1
  175. package/dist/cjs/TextAreaSkeleton/index.js +1 -12
  176. package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
  177. package/dist/cjs/ThemeSwitcher/index.js +4 -20
  178. package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
  179. package/dist/cjs/TimePicker/index.js +140 -0
  180. package/dist/cjs/TimePicker/index.js.map +1 -0
  181. package/dist/cjs/Video/index.js +2 -18
  182. package/dist/cjs/Video/index.js.map +1 -1
  183. package/dist/cjs/index.js +0 -126
  184. package/dist/cjs/index.js.map +1 -1
  185. package/dist/cjs/message/AlertIcon.js +15 -26
  186. package/dist/cjs/message/AlertIcon.js.map +1 -1
  187. package/dist/cjs/message/Message.js +1 -17
  188. package/dist/cjs/message/Message.js.map +1 -1
  189. package/dist/cjs/message/index.js +7 -21
  190. package/dist/cjs/message/index.js.map +1 -1
  191. package/dist/cjs/message/styles.js +2 -12
  192. package/dist/cjs/message/styles.js.map +1 -1
  193. package/dist/esm/Alert/index.js +1 -10
  194. package/dist/esm/Alert/index.js.map +1 -1
  195. package/dist/esm/Avatar/index.js +5 -4
  196. package/dist/esm/Avatar/index.js.map +1 -1
  197. package/dist/esm/Avatar/utils/nameToInitials.js +0 -1
  198. package/dist/esm/Avatar/utils/nameToInitials.js.map +1 -1
  199. package/dist/esm/Avatar/utils/strToHue.js +0 -3
  200. package/dist/esm/Avatar/utils/strToHue.js.map +1 -1
  201. package/dist/esm/AvatarSkeleton/index.js +1 -2
  202. package/dist/esm/AvatarSkeleton/index.js.map +1 -1
  203. package/dist/esm/Breadcrumb/index.js +3 -5
  204. package/dist/esm/Breadcrumb/index.js.map +1 -1
  205. package/dist/esm/BreadcrumbItem/index.js +1 -2
  206. package/dist/esm/BreadcrumbItem/index.js.map +1 -1
  207. package/dist/esm/Button/ButtonContent.js +2 -2
  208. package/dist/esm/Button/ButtonContent.js.map +1 -1
  209. package/dist/esm/Button/index.js +1 -10
  210. package/dist/esm/Button/index.js.map +1 -1
  211. package/dist/esm/Button/utils/useButtonColors.js +0 -5
  212. package/dist/esm/Button/utils/useButtonColors.js.map +1 -1
  213. package/dist/esm/Checkbox/index.js +1 -15
  214. package/dist/esm/Checkbox/index.js.map +1 -1
  215. package/dist/esm/CheckboxSkeleton/index.js +1 -2
  216. package/dist/esm/CheckboxSkeleton/index.js.map +1 -1
  217. package/dist/esm/DatePicker/DatePickerCalendar.js +0 -7
  218. package/dist/esm/DatePicker/DatePickerCalendar.js.map +1 -1
  219. package/dist/esm/DatePicker/index.js +0 -5
  220. package/dist/esm/DatePicker/index.js.map +1 -1
  221. package/dist/esm/Drawer/index.js +1 -7
  222. package/dist/esm/Drawer/index.js.map +1 -1
  223. package/dist/esm/Form/FormConfigContext.js.map +1 -1
  224. package/dist/esm/Form/index.js +1 -2
  225. package/dist/esm/Form/index.js.map +1 -1
  226. package/dist/esm/FormDivider/index.js +1 -2
  227. package/dist/esm/FormDivider/index.js.map +1 -1
  228. package/dist/esm/FormItem/index.js +1 -4
  229. package/dist/esm/FormItem/index.js.map +1 -1
  230. package/dist/esm/FormItem/utils/firstChildHasType.js +0 -2
  231. package/dist/esm/FormItem/utils/firstChildHasType.js.map +1 -1
  232. package/dist/esm/Gallery/Status.js +0 -2
  233. package/dist/esm/Gallery/Status.js.map +1 -1
  234. package/dist/esm/Gallery/index.js +3 -7
  235. package/dist/esm/Gallery/index.js.map +1 -1
  236. package/dist/esm/GlobalStyles/index.js +0 -2
  237. package/dist/esm/GlobalStyles/index.js.map +1 -1
  238. package/dist/esm/GlobalStyles/resetStyles.js +0 -2
  239. package/dist/esm/GlobalStyles/resetStyles.js.map +1 -1
  240. package/dist/esm/GlobalStyles/typographyStyles.js +0 -4
  241. package/dist/esm/GlobalStyles/typographyStyles.js.map +1 -1
  242. package/dist/esm/HeaderSkeleton/index.js +1 -4
  243. package/dist/esm/HeaderSkeleton/index.js.map +1 -1
  244. package/dist/esm/Image/index.js +1 -6
  245. package/dist/esm/Image/index.js.map +1 -1
  246. package/dist/esm/ImageSkeleton/index.js +1 -2
  247. package/dist/esm/ImageSkeleton/index.js.map +1 -1
  248. package/dist/esm/Input/index.js +1 -10
  249. package/dist/esm/Input/index.js.map +1 -1
  250. package/dist/esm/Input/utils/getFocusableElements.js +0 -1
  251. package/dist/esm/Input/utils/getFocusableElements.js.map +1 -1
  252. package/dist/esm/InputNumber/index.js +10 -7
  253. package/dist/esm/InputNumber/index.js.map +1 -1
  254. package/dist/esm/InputNumber/utils/defaultLocale.js.map +1 -1
  255. package/dist/esm/InputPassword/index.js +3 -8
  256. package/dist/esm/InputPassword/index.js.map +1 -1
  257. package/dist/esm/InputPassword/utils/defaultLocale.js.map +1 -1
  258. package/dist/esm/InputSearch/index.js +1 -2
  259. package/dist/esm/InputSearch/index.js.map +1 -1
  260. package/dist/esm/InputSearch/utils/defaultLocale.js.map +1 -1
  261. package/dist/esm/InputSkeleton/index.js +1 -2
  262. package/dist/esm/InputSkeleton/index.js.map +1 -1
  263. package/dist/esm/Layout/LayoutContext.js.map +1 -1
  264. package/dist/esm/Layout/index.js +0 -2
  265. package/dist/esm/Layout/index.js.map +1 -1
  266. package/dist/esm/Link/index.js +3 -8
  267. package/dist/esm/Link/index.js.map +1 -1
  268. package/dist/esm/LinkButton/index.js +1 -4
  269. package/dist/esm/LinkButton/index.js.map +1 -1
  270. package/dist/esm/List/WindowScroller.js +2 -4
  271. package/dist/esm/List/WindowScroller.js.map +1 -1
  272. package/dist/esm/List/index.js +10 -9
  273. package/dist/esm/List/index.js.map +1 -1
  274. package/dist/esm/List/utils/bodyPointerEvents.js +0 -1
  275. package/dist/esm/List/utils/bodyPointerEvents.js.map +1 -1
  276. package/dist/esm/List/utils/frameTimeout.js +1 -4
  277. package/dist/esm/List/utils/frameTimeout.js.map +1 -1
  278. package/dist/esm/List/utils/useRWLoadNext.js +0 -2
  279. package/dist/esm/List/utils/useRWLoadNext.js.map +1 -1
  280. package/dist/esm/ListItem/ListItemContent.js +2 -6
  281. package/dist/esm/ListItem/ListItemContent.js.map +1 -1
  282. package/dist/esm/ListItem/index.js +1 -2
  283. package/dist/esm/ListItem/index.js.map +1 -1
  284. package/dist/esm/ListItemLink/index.js +1 -4
  285. package/dist/esm/ListItemLink/index.js.map +1 -1
  286. package/dist/esm/ListSkeleton/index.js +1 -2
  287. package/dist/esm/ListSkeleton/index.js.map +1 -1
  288. package/dist/esm/LogoLink/index.js +1 -4
  289. package/dist/esm/LogoLink/index.js.map +1 -1
  290. package/dist/esm/Menu/index.js +3 -3
  291. package/dist/esm/Menu/index.js.map +1 -1
  292. package/dist/esm/Menu/utils/useFocusWithArrows.js +0 -4
  293. package/dist/esm/Menu/utils/useFocusWithArrows.js.map +1 -1
  294. package/dist/esm/MenuDivider/index.js +1 -2
  295. package/dist/esm/MenuDivider/index.js.map +1 -1
  296. package/dist/esm/MenuGroup/index.js +1 -2
  297. package/dist/esm/MenuGroup/index.js.map +1 -1
  298. package/dist/esm/MenuItem/index.js +1 -4
  299. package/dist/esm/MenuItem/index.js.map +1 -1
  300. package/dist/esm/Modal/index.js +1 -8
  301. package/dist/esm/Modal/index.js.map +1 -1
  302. package/dist/esm/Modal/utils/defaultLocale.js.map +1 -1
  303. package/dist/esm/Navigation/index.js +1 -7
  304. package/dist/esm/Navigation/index.js.map +1 -1
  305. package/dist/esm/Navigation/utils/useScrollFlags.js +0 -2
  306. package/dist/esm/Navigation/utils/useScrollFlags.js.map +1 -1
  307. package/dist/esm/NavigationItem/index.js +1 -4
  308. package/dist/esm/NavigationItem/index.js.map +1 -1
  309. package/dist/esm/PageContent/index.js +1 -7
  310. package/dist/esm/PageContent/index.js.map +1 -1
  311. package/dist/esm/PageHeader/index.js +1 -8
  312. package/dist/esm/PageHeader/index.js.map +1 -1
  313. package/dist/esm/PageHeader/utils/defaultLocale.js.map +1 -1
  314. package/dist/esm/PageHeaderInputSearch/index.js +1 -5
  315. package/dist/esm/PageHeaderInputSearch/index.js.map +1 -1
  316. package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js +2 -1
  317. package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  318. package/dist/esm/PageHeaderSkeleton/index.js +0 -2
  319. package/dist/esm/PageHeaderSkeleton/index.js.map +1 -1
  320. package/dist/esm/ParagraphSkeleton/index.js +1 -4
  321. package/dist/esm/ParagraphSkeleton/index.js.map +1 -1
  322. package/dist/esm/Popover/index.js +12 -13
  323. package/dist/esm/Popover/index.js.map +1 -1
  324. package/dist/esm/Popover/utils/usePopoverPosition.js +8 -19
  325. package/dist/esm/Popover/utils/usePopoverPosition.js.map +1 -1
  326. package/dist/esm/Progress/index.js +1 -2
  327. package/dist/esm/Progress/index.js.map +1 -1
  328. package/dist/esm/RadioGroup/index.js +1 -5
  329. package/dist/esm/RadioGroup/index.js.map +1 -1
  330. package/dist/esm/RadioGroupSkeleton/index.js +1 -2
  331. package/dist/esm/RadioGroupSkeleton/index.js.map +1 -1
  332. package/dist/esm/Result/index.js +1 -2
  333. package/dist/esm/Result/index.js.map +1 -1
  334. package/dist/esm/ScrollButton/index.js +7 -9
  335. package/dist/esm/ScrollButton/index.js.map +1 -1
  336. package/dist/esm/ScrollButton/utils/useContainerPosition.js +0 -2
  337. package/dist/esm/ScrollButton/utils/useContainerPosition.js.map +1 -1
  338. package/dist/esm/ScrollButton/utils/useVisibility.js +2 -5
  339. package/dist/esm/ScrollButton/utils/useVisibility.js.map +1 -1
  340. package/dist/esm/Select/SelectList.js +11 -12
  341. package/dist/esm/Select/SelectList.js.map +1 -1
  342. package/dist/esm/Select/SelectToggle.js +0 -14
  343. package/dist/esm/Select/SelectToggle.js.map +1 -1
  344. package/dist/esm/Select/index.js +4 -10
  345. package/dist/esm/Select/index.js.map +1 -1
  346. package/dist/esm/Select/utils/defaultLocale.js.map +1 -1
  347. package/dist/esm/Skeleton/index.js +1 -2
  348. package/dist/esm/Skeleton/index.js.map +1 -1
  349. package/dist/esm/Switch/index.js +1 -11
  350. package/dist/esm/Switch/index.js.map +1 -1
  351. package/dist/esm/SwitchSkeleton/index.js +1 -2
  352. package/dist/esm/SwitchSkeleton/index.js.map +1 -1
  353. package/dist/esm/Tag/index.js +1 -2
  354. package/dist/esm/Tag/index.js.map +1 -1
  355. package/dist/esm/TagLink/index.js +1 -2
  356. package/dist/esm/TagLink/index.js.map +1 -1
  357. package/dist/esm/TagList/index.js +1 -4
  358. package/dist/esm/TagList/index.js.map +1 -1
  359. package/dist/esm/TagListSkeleton/index.js +1 -2
  360. package/dist/esm/TagListSkeleton/index.js.map +1 -1
  361. package/dist/esm/TagSkeleton/index.js +1 -2
  362. package/dist/esm/TagSkeleton/index.js.map +1 -1
  363. package/dist/esm/TextArea/index.js +1 -2
  364. package/dist/esm/TextArea/index.js.map +1 -1
  365. package/dist/esm/TextAreaSkeleton/index.js +1 -2
  366. package/dist/esm/TextAreaSkeleton/index.js.map +1 -1
  367. package/dist/esm/ThemeSwitcher/index.js +0 -2
  368. package/dist/esm/ThemeSwitcher/index.js.map +1 -1
  369. package/dist/esm/TimePicker/index.js +105 -0
  370. package/dist/esm/TimePicker/index.js.map +1 -0
  371. package/dist/esm/Video/index.js +1 -2
  372. package/dist/esm/Video/index.js.map +1 -1
  373. package/dist/esm/emotion.d.js.map +1 -1
  374. package/dist/esm/index.js.map +1 -1
  375. package/dist/esm/message/AlertIcon.js +0 -2
  376. package/dist/esm/message/AlertIcon.js.map +1 -1
  377. package/dist/esm/message/Message.js.map +1 -1
  378. package/dist/esm/message/index.js +7 -9
  379. package/dist/esm/message/index.js.map +1 -1
  380. package/dist/esm/message/styles.js.map +1 -1
  381. package/dist/types/TimePicker/index.d.ts +11 -0
  382. package/dist/types/TimePicker/index.d.ts.map +1 -0
  383. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","Container","styled","PageHeaderContainer","omitEmotionProps","CloseButton","Button","pageHeaderAddonPaddingHorizontal","PageHeaderInputSearch","forwardRef","ref","locale","defaultLocale","onClose","rest","useState","setVisible","useTheme","mounted","useClosable","useContext","LayoutContext","hasNavigation","searchLabel","t","buttonPaddingHorizontal","pageHeaderButtonPaddingHorizontal","closeLabel","displayName"],"sources":["../../../src/PageHeaderInputSearch/index.tsx"],"sourcesContent":["import React, { forwardRef, useContext, useState } from 'react';\nimport { Close, Search } from '@os-design/icons';\nimport styled from '@emotion/styled';\nimport { useClosable, omitEmotionProps } from '@os-design/utils';\nimport { ThemeOverrider, useTheme } from '@os-design/theming';\nimport { css, keyframes } from '@emotion/react';\nimport InputSearch, { InputSearchProps } from '../InputSearch';\nimport Button from '../Button';\nimport { PageHeaderContainer } from '../PageHeader';\nimport LayoutContext from '../Layout/LayoutContext';\nimport defaultLocale, {\n PageHeaderInputSearchLocale,\n} from './utils/defaultLocale';\n\nexport interface PageHeaderInputSearchProps\n extends Omit<InputSearchProps, 'size' | 'locale'> {\n /**\n * The locale.\n * @default undefined\n */\n locale?: PageHeaderInputSearchLocale;\n /**\n * The close event handler.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst fadeIn = keyframes`\n from { transform: translateY(-100%); }\n to { transform: translateY(0); }\n`;\n\nconst fadeOut = keyframes`\n from { transform: translateY(0); }\n to { transform: translateY(-100%); }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface ContainerProps {\n visible: boolean;\n}\nconst Container = styled(\n PageHeaderContainer,\n omitEmotionProps('visible')\n)<ContainerProps>`\n z-index: 102; // After PageHeaderContainer\n ${visibleStyles};\n ${invisibleStyles};\n`;\n\nconst CloseButton = styled(Button)`\n margin-left: ${(p) => p.theme.pageHeaderAddonPaddingHorizontal}em;\n`;\n\n/**\n * The search input for the page header.\n */\nconst PageHeaderInputSearch = forwardRef<\n HTMLInputElement,\n PageHeaderInputSearchProps\n>(({ locale = defaultLocale, onClose = () => {}, ...rest }, ref) => {\n const [visible, setVisible] = useState(false);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n const { hasNavigation } = useContext(LayoutContext);\n\n return (\n <>\n <Button\n type='ghost'\n wide='never'\n onClick={() => setVisible(true)}\n aria-label={locale.searchLabel}\n >\n <Search />\n </Button>\n\n {mounted && (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal: t.pageHeaderButtonPaddingHorizontal,\n })}\n >\n <Container\n visible={visible}\n rightIsGhostButton\n hasNavigationIndent={hasNavigation}\n >\n <InputSearch autoFocus locale={locale} {...rest} ref={ref} />\n <CloseButton\n type='ghost'\n wide='never'\n onClick={() => {\n setVisible(false);\n onClose();\n }}\n aria-label={locale.closeLabel}\n >\n <Close />\n </CloseButton>\n </Container>\n </ThemeOverrider>\n )}\n </>\n );\n});\n\nPageHeaderInputSearch.displayName = 'PageHeaderInputSearch';\n\nexport default PageHeaderInputSearch;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBA,IAAMA,MAAM,OAAGC,iBAAH,sJAAZ;AAKA,IAAMC,OAAO,OAAGD,iBAAH,wJAAb;;AAKA,IAAME,aAAa,GAAG,SAAhBA,aAAgB,CAACC,CAAD;EAAA,OACpBA,CAAC,CAACC,OAAF,QACAC,WADA,mHAEeN,MAFf,EAEyBI,CAAC,CAACG,KAAF,CAAQC,eAFjC,CADoB;AAAA,CAAtB;;AAMA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAACL,CAAD;EAAA,OACtB,CAACA,CAAC,CAACC,OAAH,QACAC,WADA,mHAEeJ,OAFf,EAE0BE,CAAC,CAACG,KAAF,CAAQC,eAFlC,CADsB;AAAA,CAAxB;;AASA,IAAME,SAAS,GAAG,IAAAC,kBAAA,EAChBC,+BADgB,EAEhB,IAAAC,uBAAA,EAAiB,SAAjB,CAFgB,CAAH,0IAKXV,aALW,EAMXM,eANW,CAAf;AASA,IAAMK,WAAW,GAAG,IAAAH,kBAAA,EAAOI,kBAAP,CAAH,kGACA,UAACX,CAAD;EAAA,OAAOA,CAAC,CAACG,KAAF,CAAQS,gCAAf;AAAA,CADA,CAAjB;AAIA;AACA;AACA;;AACA,IAAMC,qBAAqB,gBAAG,IAAAC,iBAAA,EAG5B,gBAA0DC,GAA1D,EAAkE;EAAA,uBAA/DC,MAA+D;EAAA,IAA/DA,MAA+D,4BAAtDC,yBAAsD;EAAA,wBAAvCC,OAAuC;EAAA,IAAvCA,OAAuC,6BAA7B,YAAM,CAAE,CAAqB;EAAA,IAAhBC,IAAgB;;EAClE,gBAA8B,IAAAC,eAAA,EAAS,KAAT,CAA9B;EAAA;EAAA,IAAOnB,OAAP;EAAA,IAAgBoB,UAAhB;;EACA,gBAAkB,IAAAC,iBAAA,GAAlB;EAAA,IAAQnB,KAAR,aAAQA,KAAR;;EACA,IAAMoB,OAAO,GAAG,IAAAC,kBAAA,EAAYvB,OAAZ,EAAqBE,KAAK,CAACC,eAA3B,CAAhB;;EACA,kBAA0B,IAAAqB,iBAAA,EAAWC,yBAAX,CAA1B;EAAA,IAAQC,aAAR,eAAQA,aAAR;;EAEA,oBACE,+EACE,gCAAC,kBAAD;IACE,IAAI,EAAC,OADP;IAEE,IAAI,EAAC,OAFP;IAGE,OAAO,EAAE;MAAA,OAAMN,UAAU,CAAC,IAAD,CAAhB;IAAA,CAHX;IAIE,cAAYL,MAAM,CAACY;EAJrB,gBAME,gCAAC,aAAD,OANF,CADF,EAUGL,OAAO,iBACN,gCAAC,uBAAD;IACE,SAAS,EAAE,mBAACM,CAAD;MAAA,OAAQ;QACjBC,uBAAuB,EAAED,CAAC,CAACE;MADV,CAAR;IAAA;EADb,gBAKE,gCAAC,SAAD;IACE,OAAO,EAAE9B,OADX;IAEE,kBAAkB,MAFpB;IAGE,mBAAmB,EAAE0B;EAHvB,gBAKE,gCAAC,uBAAD;IAAa,SAAS,MAAtB;IAAuB,MAAM,EAAEX;EAA/B,GAA2CG,IAA3C;IAAiD,GAAG,EAAEJ;EAAtD,GALF,eAME,gCAAC,WAAD;IACE,IAAI,EAAC,OADP;IAEE,IAAI,EAAC,OAFP;IAGE,OAAO,EAAE,mBAAM;MACbM,UAAU,CAAC,KAAD,CAAV;MACAH,OAAO;IACR,CANH;IAOE,cAAYF,MAAM,CAACgB;EAPrB,gBASE,gCAAC,YAAD,OATF,CANF,CALF,CAXJ,CADF;AAuCD,CAhD6B,CAA9B;AAkDAnB,qBAAqB,CAACoB,WAAtB,GAAoC,uBAApC;eAEepB,qB"}
1
+ {"version":3,"file":"index.js","names":["fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","Container","styled","PageHeaderContainer","omitEmotionProps","CloseButton","Button","pageHeaderAddonPaddingHorizontal","PageHeaderInputSearch","forwardRef","ref","locale","defaultLocale","onClose","rest","useState","setVisible","useTheme","mounted","useClosable","useContext","LayoutContext","hasNavigation","searchLabel","t","buttonPaddingHorizontal","pageHeaderButtonPaddingHorizontal","closeLabel","displayName"],"sources":["../../../src/PageHeaderInputSearch/index.tsx"],"sourcesContent":["import React, { forwardRef, useContext, useState } from 'react';\nimport { Close, Search } from '@os-design/icons';\nimport styled from '@emotion/styled';\nimport { useClosable, omitEmotionProps } from '@os-design/utils';\nimport { ThemeOverrider, useTheme } from '@os-design/theming';\nimport { css, keyframes } from '@emotion/react';\nimport InputSearch, { InputSearchProps } from '../InputSearch';\nimport Button from '../Button';\nimport { PageHeaderContainer } from '../PageHeader';\nimport LayoutContext from '../Layout/LayoutContext';\nimport defaultLocale, {\n PageHeaderInputSearchLocale,\n} from './utils/defaultLocale';\n\nexport interface PageHeaderInputSearchProps\n extends Omit<InputSearchProps, 'size' | 'locale'> {\n /**\n * The locale.\n * @default undefined\n */\n locale?: PageHeaderInputSearchLocale;\n /**\n * The close event handler.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst fadeIn = keyframes`\n from { transform: translateY(-100%); }\n to { transform: translateY(0); }\n`;\n\nconst fadeOut = keyframes`\n from { transform: translateY(0); }\n to { transform: translateY(-100%); }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface ContainerProps {\n visible: boolean;\n}\nconst Container = styled(\n PageHeaderContainer,\n omitEmotionProps('visible')\n)<ContainerProps>`\n z-index: 102; // After PageHeaderContainer\n ${visibleStyles};\n ${invisibleStyles};\n`;\n\nconst CloseButton = styled(Button)`\n margin-left: ${(p) => p.theme.pageHeaderAddonPaddingHorizontal}em;\n`;\n\n/**\n * The search input for the page header.\n */\nconst PageHeaderInputSearch = forwardRef<\n HTMLInputElement,\n PageHeaderInputSearchProps\n>(({ locale = defaultLocale, onClose = () => {}, ...rest }, ref) => {\n const [visible, setVisible] = useState(false);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n const { hasNavigation } = useContext(LayoutContext);\n\n return (\n <>\n <Button\n type='ghost'\n wide='never'\n onClick={() => setVisible(true)}\n aria-label={locale.searchLabel}\n >\n <Search />\n </Button>\n\n {mounted && (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal: t.pageHeaderButtonPaddingHorizontal,\n })}\n >\n <Container\n visible={visible}\n rightIsGhostButton\n hasNavigationIndent={hasNavigation}\n >\n <InputSearch autoFocus locale={locale} {...rest} ref={ref} />\n <CloseButton\n type='ghost'\n wide='never'\n onClick={() => {\n setVisible(false);\n onClose();\n }}\n aria-label={locale.closeLabel}\n >\n <Close />\n </CloseButton>\n </Container>\n </ThemeOverrider>\n )}\n </>\n );\n});\n\nPageHeaderInputSearch.displayName = 'PageHeaderInputSearch';\n\nexport default PageHeaderInputSearch;\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAE+B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgB/B,IAAMA,MAAM,OAAGC,iBAAS,sJAGvB;AAED,IAAMC,OAAO,OAAGD,iBAAS,wJAGxB;AAED,IAAME,aAAa,GAAG,SAAhBA,aAAa,CAAIC,CAAC;EAAA,OACtBA,CAAC,CAACC,OAAO,QACTC,WAAG,mHACYN,MAAM,EAAII,CAAC,CAACG,KAAK,CAACC,eAAe,CAC/C;AAAA;AAEH,IAAMC,eAAe,GAAG,SAAlBA,eAAe,CAAIL,CAAC;EAAA,OACxB,CAACA,CAAC,CAACC,OAAO,QACVC,WAAG,mHACYJ,OAAO,EAAIE,CAAC,CAACG,KAAK,CAACC,eAAe,CAChD;AAAA;AAKH,IAAME,SAAS,GAAG,IAAAC,kBAAM,EACtBC,+BAAmB,EACnB,IAAAC,uBAAgB,EAAC,SAAS,CAAC,CAC5B,0IAEGV,aAAa,EACbM,eAAe,CAClB;AAED,IAAMK,WAAW,GAAG,IAAAH,kBAAM,EAACI,kBAAM,CAAC,kGACjB,UAACX,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACS,gCAAgC;AAAA,EAC/D;;AAED;AACA;AACA;AACA,IAAMC,qBAAqB,gBAAG,IAAAC,iBAAU,EAGtC,gBAA0DC,GAAG,EAAK;EAAA,uBAA/DC,MAAM;IAANA,MAAM,4BAAGC,yBAAa;IAAA,oBAAEC,OAAO;IAAPA,OAAO,6BAAG,YAAM,CAAC,CAAC;IAAKC,IAAI;EACtD,gBAA8B,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAA;IAAtCnB,OAAO;IAAEoB,UAAU;EAC1B,gBAAkB,IAAAC,iBAAQ,GAAE;IAApBnB,KAAK,aAALA,KAAK;EACb,IAAMoB,OAAO,GAAG,IAAAC,kBAAW,EAACvB,OAAO,EAAEE,KAAK,CAACC,eAAe,CAAC;EAC3D,kBAA0B,IAAAqB,iBAAU,EAACC,yBAAa,CAAC;IAA3CC,aAAa,eAAbA,aAAa;EAErB,oBACE,+EACE,gCAAC,kBAAM;IACL,IAAI,EAAC,OAAO;IACZ,IAAI,EAAC,OAAO;IACZ,OAAO,EAAE;MAAA,OAAMN,UAAU,CAAC,IAAI,CAAC;IAAA,CAAC;IAChC,cAAYL,MAAM,CAACY;EAAY,gBAE/B,gCAAC,aAAM,OAAG,CACH,EAERL,OAAO,iBACN,gCAAC,uBAAc;IACb,SAAS,EAAE,mBAACM,CAAC;MAAA,OAAM;QACjBC,uBAAuB,EAAED,CAAC,CAACE;MAC7B,CAAC;IAAA;EAAE,gBAEH,gCAAC,SAAS;IACR,OAAO,EAAE9B,OAAQ;IACjB,kBAAkB;IAClB,mBAAmB,EAAE0B;EAAc,gBAEnC,gCAAC,uBAAW;IAAC,SAAS;IAAC,MAAM,EAAEX;EAAO,GAAKG,IAAI;IAAE,GAAG,EAAEJ;EAAI,GAAG,eAC7D,gCAAC,WAAW;IACV,IAAI,EAAC,OAAO;IACZ,IAAI,EAAC,OAAO;IACZ,OAAO,EAAE,mBAAM;MACbM,UAAU,CAAC,KAAK,CAAC;MACjBH,OAAO,EAAE;IACX,CAAE;IACF,cAAYF,MAAM,CAACgB;EAAW,gBAE9B,gCAAC,YAAK,OAAG,CACG,CACJ,CAEf,CACA;AAEP,CAAC,CAAC;AAEFnB,qBAAqB,CAACoB,WAAW,GAAG,uBAAuB;AAAC,eAE7CpB,qBAAqB;AAAA"}
@@ -4,22 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  var _defaultLocale = _interopRequireDefault(require("../../InputSearch/utils/defaultLocale"));
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
-
12
9
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
-
14
10
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
-
16
11
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
-
18
12
  var defaultLocale = _objectSpread(_objectSpread({}, _defaultLocale["default"]), {}, {
19
13
  searchLabel: 'Search',
20
14
  closeLabel: 'Close search'
21
15
  });
22
-
23
16
  var _default = defaultLocale;
24
17
  exports["default"] = _default;
25
18
  //# sourceMappingURL=defaultLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaultLocale.js","names":["defaultLocale","inputSearchDefaultLocale","searchLabel","closeLabel"],"sources":["../../../../src/PageHeaderInputSearch/utils/defaultLocale.ts"],"sourcesContent":["import inputSearchDefaultLocale, {\n InputSearchLocale,\n} from '../../InputSearch/utils/defaultLocale';\n\nexport interface PageHeaderInputSearchLocale extends InputSearchLocale {\n searchLabel: string;\n closeLabel: string;\n}\n\nconst defaultLocale: PageHeaderInputSearchLocale = {\n ...inputSearchDefaultLocale,\n searchLabel: 'Search',\n closeLabel: 'Close search',\n};\n\nexport default defaultLocale;\n"],"mappings":";;;;;;;AAAA;;;;;;;;;;AASA,IAAMA,aAA0C,mCAC3CC,yBAD2C;EAE9CC,WAAW,EAAE,QAFiC;EAG9CC,UAAU,EAAE;AAHkC,EAAhD;;eAMeH,a"}
1
+ {"version":3,"file":"defaultLocale.js","names":["defaultLocale","inputSearchDefaultLocale","searchLabel","closeLabel"],"sources":["../../../../src/PageHeaderInputSearch/utils/defaultLocale.ts"],"sourcesContent":["import inputSearchDefaultLocale, {\n InputSearchLocale,\n} from '../../InputSearch/utils/defaultLocale';\n\nexport interface PageHeaderInputSearchLocale extends InputSearchLocale {\n searchLabel: string;\n closeLabel: string;\n}\n\nconst defaultLocale: PageHeaderInputSearchLocale = {\n ...inputSearchDefaultLocale,\n searchLabel: 'Search',\n closeLabel: 'Close search',\n};\n\nexport default defaultLocale;\n"],"mappings":";;;;;;AAAA;AAE+C;AAAA;AAAA;AAAA;AAO/C,IAAMA,aAA0C,mCAC3CC,yBAAwB;EAC3BC,WAAW,EAAE,QAAQ;EACrBC,UAAU,EAAE;AAAc,EAC3B;AAAC,eAEaH,aAAa;AAAA"}
@@ -1,46 +1,31 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _react = _interopRequireWildcard(require("react"));
11
-
12
9
  var _Skeleton = _interopRequireDefault(require("../Skeleton"));
13
-
14
10
  var _PageHeader = require("../PageHeader");
15
-
16
11
  var _LayoutContext = _interopRequireDefault(require("../Layout/LayoutContext"));
17
-
18
12
  var _excluded = ["width"];
19
-
20
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
21
-
22
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
-
24
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
-
26
16
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
27
-
28
17
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
29
-
30
18
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
31
-
32
19
  /**
33
20
  * Provides a page header placeholder while a user waits for
34
21
  * the content to load.
35
22
  */
36
23
  var PageHeaderSkeleton = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
37
24
  var _ref$width = _ref.width,
38
- width = _ref$width === void 0 ? '30%' : _ref$width,
39
- rest = _objectWithoutProperties(_ref, _excluded);
40
-
25
+ width = _ref$width === void 0 ? '30%' : _ref$width,
26
+ rest = _objectWithoutProperties(_ref, _excluded);
41
27
  var _useContext = (0, _react.useContext)(_LayoutContext["default"]),
42
- hasNavigation = _useContext.hasNavigation;
43
-
28
+ hasNavigation = _useContext.hasNavigation;
44
29
  return /*#__PURE__*/_react["default"].createElement(_PageHeader.PageHeaderContainer, _extends({
45
30
  hasNavigationIndent: hasNavigation
46
31
  }, rest, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["PageHeaderSkeleton","forwardRef","ref","width","rest","useContext","LayoutContext","hasNavigation","displayName"],"sources":["../../../src/PageHeaderSkeleton/index.tsx"],"sourcesContent":["import React, { forwardRef, useContext } from 'react';\nimport { WithSize } from '@os-design/styles';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\nimport { PageHeaderContainer } from '../PageHeader';\nimport LayoutContext from '../Layout/LayoutContext';\n\nexport type PageHeaderSkeletonProps = SkeletonProps & WithSize;\n\n/**\n * Provides a page header placeholder while a user waits for\n * the content to load.\n */\nconst PageHeaderSkeleton = forwardRef<HTMLDivElement, PageHeaderSkeletonProps>(\n ({ width = '30%', ...rest }, ref) => {\n const { hasNavigation } = useContext(LayoutContext);\n\n return (\n <PageHeaderContainer\n hasNavigationIndent={hasNavigation}\n {...rest}\n ref={ref}\n >\n <Skeleton width={width} />\n </PageHeaderContainer>\n );\n }\n);\n\nPageHeaderSkeleton.displayName = 'PageHeaderSkeleton';\n\nexport default PageHeaderSkeleton;\n"],"mappings":";;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;;;;;;;;;;;;;;;AAIA;AACA;AACA;AACA;AACA,IAAMA,kBAAkB,gBAAG,IAAAC,iBAAA,EACzB,gBAA6BC,GAA7B,EAAqC;EAAA,sBAAlCC,KAAkC;EAAA,IAAlCA,KAAkC,2BAA1B,KAA0B;EAAA,IAAhBC,IAAgB;;EACnC,kBAA0B,IAAAC,iBAAA,EAAWC,yBAAX,CAA1B;EAAA,IAAQC,aAAR,eAAQA,aAAR;;EAEA,oBACE,gCAAC,+BAAD;IACE,mBAAmB,EAAEA;EADvB,GAEMH,IAFN;IAGE,GAAG,EAAEF;EAHP,iBAKE,gCAAC,oBAAD;IAAU,KAAK,EAAEC;EAAjB,EALF,CADF;AASD,CAbwB,CAA3B;AAgBAH,kBAAkB,CAACQ,WAAnB,GAAiC,oBAAjC;eAEeR,kB"}
1
+ {"version":3,"file":"index.js","names":["PageHeaderSkeleton","forwardRef","ref","width","rest","useContext","LayoutContext","hasNavigation","displayName"],"sources":["../../../src/PageHeaderSkeleton/index.tsx"],"sourcesContent":["import React, { forwardRef, useContext } from 'react';\nimport { WithSize } from '@os-design/styles';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\nimport { PageHeaderContainer } from '../PageHeader';\nimport LayoutContext from '../Layout/LayoutContext';\n\nexport type PageHeaderSkeletonProps = SkeletonProps & WithSize;\n\n/**\n * Provides a page header placeholder while a user waits for\n * the content to load.\n */\nconst PageHeaderSkeleton = forwardRef<HTMLDivElement, PageHeaderSkeletonProps>(\n ({ width = '30%', ...rest }, ref) => {\n const { hasNavigation } = useContext(LayoutContext);\n\n return (\n <PageHeaderContainer\n hasNavigationIndent={hasNavigation}\n {...rest}\n ref={ref}\n >\n <Skeleton width={width} />\n </PageHeaderContainer>\n );\n }\n);\n\nPageHeaderSkeleton.displayName = 'PageHeaderSkeleton';\n\nexport default PageHeaderSkeleton;\n"],"mappings":";;;;;;;AAAA;AAEA;AACA;AACA;AAAoD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIpD;AACA;AACA;AACA;AACA,IAAMA,kBAAkB,gBAAG,IAAAC,iBAAU,EACnC,gBAA6BC,GAAG,EAAK;EAAA,sBAAlCC,KAAK;IAALA,KAAK,2BAAG,KAAK;IAAKC,IAAI;EACvB,kBAA0B,IAAAC,iBAAU,EAACC,yBAAa,CAAC;IAA3CC,aAAa,eAAbA,aAAa;EAErB,oBACE,gCAAC,+BAAmB;IAClB,mBAAmB,EAAEA;EAAc,GAC/BH,IAAI;IACR,GAAG,EAAEF;EAAI,iBAET,gCAAC,oBAAQ;IAAC,KAAK,EAAEC;EAAM,EAAG,CACN;AAE1B,CAAC,CACF;AAEDH,kBAAkB,CAACQ,WAAW,GAAG,oBAAoB;AAAC,eAEvCR,kBAAkB;AAAA"}
@@ -1,61 +1,43 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _styled = _interopRequireDefault(require("@emotion/styled"));
11
-
12
9
  var _react = _interopRequireWildcard(require("react"));
13
-
14
10
  var _utils = require("@os-design/utils");
15
-
16
11
  var _react2 = require("@emotion/react");
17
-
18
12
  var _Skeleton = _interopRequireDefault(require("../Skeleton"));
19
-
20
13
  var _excluded = ["rows", "width", "hasMargin"];
21
-
22
14
  var _templateObject, _templateObject2;
23
-
24
15
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
-
26
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
-
28
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
29
-
30
18
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
31
-
32
19
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
33
-
34
20
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
35
-
36
21
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
37
-
38
22
  var hasMarginStyles = function hasMarginStyles(p) {
39
23
  return p.hasMargin && (0, _react2.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n margin-bottom: ", "em;\n "])), p.theme.paragraphMarginBottom + (p.theme.lineHeight - 1));
40
24
  };
41
-
42
25
  var Container = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('hasMargin'))(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n & > *:not(:last-of-type) {\n margin-bottom: ", "em;\n }\n ", ";\n"])), function (p) {
43
26
  return p.theme.lineHeight - 1;
44
27
  }, hasMarginStyles);
45
28
  var key = 0;
29
+
46
30
  /**
47
31
  * Provides a paragraph placeholder while a user waits for the content to load.
48
32
  */
49
-
50
33
  var ParagraphSkeleton = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
51
34
  var _ref$rows = _ref.rows,
52
- rows = _ref$rows === void 0 ? 4 : _ref$rows,
53
- _ref$width = _ref.width,
54
- width = _ref$width === void 0 ? '70%' : _ref$width,
55
- _ref$hasMargin = _ref.hasMargin,
56
- hasMargin = _ref$hasMargin === void 0 ? false : _ref$hasMargin,
57
- rest = _objectWithoutProperties(_ref, _excluded);
58
-
35
+ rows = _ref$rows === void 0 ? 4 : _ref$rows,
36
+ _ref$width = _ref.width,
37
+ width = _ref$width === void 0 ? '70%' : _ref$width,
38
+ _ref$hasMargin = _ref.hasMargin,
39
+ hasMargin = _ref$hasMargin === void 0 ? false : _ref$hasMargin,
40
+ rest = _objectWithoutProperties(_ref, _excluded);
59
41
  return /*#__PURE__*/_react["default"].createElement(Container, _extends({
60
42
  hasMargin: hasMargin
61
43
  }, rest, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["hasMarginStyles","p","hasMargin","css","theme","paragraphMarginBottom","lineHeight","Container","styled","omitEmotionProps","key","ParagraphSkeleton","forwardRef","ref","rows","width","rest","Array","fill","map","_","index","displayName"],"sources":["../../../src/ParagraphSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { css } from '@emotion/react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface ParagraphSkeletonProps extends SkeletonProps {\n /**\n * The number of rows.\n * @default 4\n */\n rows?: number;\n /**\n * The width of the last row.\n * @default 70%\n */\n width?: string;\n /**\n * Whether the paragraph has a bottom margin.\n * @default false\n */\n hasMargin?: boolean;\n}\n\nconst hasMarginStyles = (p) =>\n p.hasMargin &&\n css`\n margin-bottom: ${p.theme.paragraphMarginBottom +\n (p.theme.lineHeight - 1)}em;\n `;\n\ntype ContainerProps = Pick<ParagraphSkeletonProps, 'hasMargin'>;\nconst Container = styled('div', omitEmotionProps('hasMargin'))<ContainerProps>`\n & > *:not(:last-of-type) {\n margin-bottom: ${(p) => p.theme.lineHeight - 1}em;\n }\n ${hasMarginStyles};\n`;\n\nlet key = 0;\n\n/**\n * Provides a paragraph placeholder while a user waits for the content to load.\n */\nconst ParagraphSkeleton = forwardRef<HTMLDivElement, ParagraphSkeletonProps>(\n ({ rows = 4, width = '70%', hasMargin = false, ...rest }, ref) => (\n <Container hasMargin={hasMargin} {...rest} ref={ref}>\n {Array(rows)\n .fill({})\n .map((_, index) => {\n key += 1;\n return (\n <Skeleton key={key} width={index < rows - 1 ? '100%' : width} />\n );\n })}\n </Container>\n )\n);\n\nParagraphSkeleton.displayName = 'ParagraphSkeleton';\n\nexport default ParagraphSkeleton;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAoBA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,CAAD;EAAA,OACtBA,CAAC,CAACC,SAAF,QACAC,WADA,uGAEmBF,CAAC,CAACG,KAAF,CAAQC,qBAAR,IAChBJ,CAAC,CAACG,KAAF,CAAQE,UAAR,GAAqB,CADL,CAFnB,CADsB;AAAA,CAAxB;;AAQA,IAAMC,SAAS,GAAG,IAAAC,kBAAA,EAAO,KAAP,EAAc,IAAAC,uBAAA,EAAiB,WAAjB,CAAd,CAAH,kJAEM,UAACR,CAAD;EAAA,OAAOA,CAAC,CAACG,KAAF,CAAQE,UAAR,GAAqB,CAA5B;AAAA,CAFN,EAIXN,eAJW,CAAf;AAOA,IAAIU,GAAG,GAAG,CAAV;AAEA;AACA;AACA;;AACA,IAAMC,iBAAiB,gBAAG,IAAAC,iBAAA,EACxB,gBAA0DC,GAA1D;EAAA,qBAAGC,IAAH;EAAA,IAAGA,IAAH,0BAAU,CAAV;EAAA,sBAAaC,KAAb;EAAA,IAAaA,KAAb,2BAAqB,KAArB;EAAA,0BAA4Bb,SAA5B;EAAA,IAA4BA,SAA5B,+BAAwC,KAAxC;EAAA,IAAkDc,IAAlD;;EAAA,oBACE,gCAAC,SAAD;IAAW,SAAS,EAAEd;EAAtB,GAAqCc,IAArC;IAA2C,GAAG,EAAEH;EAAhD,IACGI,KAAK,CAACH,IAAD,CAAL,CACEI,IADF,CACO,EADP,EAEEC,GAFF,CAEM,UAACC,CAAD,EAAIC,KAAJ,EAAc;IACjBX,GAAG,IAAI,CAAP;IACA,oBACE,gCAAC,oBAAD;MAAU,GAAG,EAAEA,GAAf;MAAoB,KAAK,EAAEW,KAAK,GAAGP,IAAI,GAAG,CAAf,GAAmB,MAAnB,GAA4BC;IAAvD,EADF;EAGD,CAPF,CADH,CADF;AAAA,CADwB,CAA1B;AAeAJ,iBAAiB,CAACW,WAAlB,GAAgC,mBAAhC;eAEeX,iB"}
1
+ {"version":3,"file":"index.js","names":["hasMarginStyles","p","hasMargin","css","theme","paragraphMarginBottom","lineHeight","Container","styled","omitEmotionProps","key","ParagraphSkeleton","forwardRef","ref","rows","width","rest","Array","fill","map","_","index","displayName"],"sources":["../../../src/ParagraphSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { css } from '@emotion/react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface ParagraphSkeletonProps extends SkeletonProps {\n /**\n * The number of rows.\n * @default 4\n */\n rows?: number;\n /**\n * The width of the last row.\n * @default 70%\n */\n width?: string;\n /**\n * Whether the paragraph has a bottom margin.\n * @default false\n */\n hasMargin?: boolean;\n}\n\nconst hasMarginStyles = (p) =>\n p.hasMargin &&\n css`\n margin-bottom: ${p.theme.paragraphMarginBottom +\n (p.theme.lineHeight - 1)}em;\n `;\n\ntype ContainerProps = Pick<ParagraphSkeletonProps, 'hasMargin'>;\nconst Container = styled('div', omitEmotionProps('hasMargin'))<ContainerProps>`\n & > *:not(:last-of-type) {\n margin-bottom: ${(p) => p.theme.lineHeight - 1}em;\n }\n ${hasMarginStyles};\n`;\n\nlet key = 0;\n\n/**\n * Provides a paragraph placeholder while a user waits for the content to load.\n */\nconst ParagraphSkeleton = forwardRef<HTMLDivElement, ParagraphSkeletonProps>(\n ({ rows = 4, width = '70%', hasMargin = false, ...rest }, ref) => (\n <Container hasMargin={hasMargin} {...rest} ref={ref}>\n {Array(rows)\n .fill({})\n .map((_, index) => {\n key += 1;\n return (\n <Skeleton key={key} width={index < rows - 1 ? '100%' : width} />\n );\n })}\n </Container>\n )\n);\n\nParagraphSkeleton.displayName = 'ParagraphSkeleton';\n\nexport default ParagraphSkeleton;\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AAAsD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBtD,IAAMA,eAAe,GAAG,SAAlBA,eAAe,CAAIC,CAAC;EAAA,OACxBA,CAAC,CAACC,SAAS,QACXC,WAAG,uGACgBF,CAAC,CAACG,KAAK,CAACC,qBAAqB,IAC7CJ,CAAC,CAACG,KAAK,CAACE,UAAU,GAAG,CAAC,CAAC,CACzB;AAAA;AAGH,IAAMC,SAAS,GAAG,IAAAC,kBAAM,EAAC,KAAK,EAAE,IAAAC,uBAAgB,EAAC,WAAW,CAAC,CAAC,kJAEzC,UAACR,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACE,UAAU,GAAG,CAAC;AAAA,GAE9CN,eAAe,CAClB;AAED,IAAIU,GAAG,GAAG,CAAC;;AAEX;AACA;AACA;AACA,IAAMC,iBAAiB,gBAAG,IAAAC,iBAAU,EAClC,gBAA0DC,GAAG;EAAA,qBAA1DC,IAAI;IAAJA,IAAI,0BAAG,CAAC;IAAA,kBAAEC,KAAK;IAALA,KAAK,2BAAG,KAAK;IAAA,sBAAEb,SAAS;IAATA,SAAS,+BAAG,KAAK;IAAKc,IAAI;EAAA,oBACpD,gCAAC,SAAS;IAAC,SAAS,EAAEd;EAAU,GAAKc,IAAI;IAAE,GAAG,EAAEH;EAAI,IACjDI,KAAK,CAACH,IAAI,CAAC,CACTI,IAAI,CAAC,CAAC,CAAC,CAAC,CACRC,GAAG,CAAC,UAACC,CAAC,EAAEC,KAAK,EAAK;IACjBX,GAAG,IAAI,CAAC;IACR,oBACE,gCAAC,oBAAQ;MAAC,GAAG,EAAEA,GAAI;MAAC,KAAK,EAAEW,KAAK,GAAGP,IAAI,GAAG,CAAC,GAAG,MAAM,GAAGC;IAAM,EAAG;EAEpE,CAAC,CAAC,CACM;AAAA,CACb,CACF;AAEDJ,iBAAiB,CAACW,WAAW,GAAG,mBAAmB;AAAC,eAErCX,iBAAiB;AAAA"}
@@ -1,69 +1,41 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _react = _interopRequireWildcard(require("react"));
11
-
12
9
  var _styles = require("@os-design/styles");
13
-
14
10
  var _utils = require("@os-design/utils");
15
-
16
11
  var _styled = _interopRequireDefault(require("@emotion/styled"));
17
-
18
12
  var _theming = require("@os-design/theming");
19
-
20
13
  var _react2 = require("@emotion/react");
21
-
22
14
  var _portal = _interopRequireDefault(require("@os-design/portal"));
23
-
24
15
  var _usePopoverPosition2 = _interopRequireDefault(require("./utils/usePopoverPosition"));
25
-
26
16
  var _excluded = ["trigger", "placement", "gap", "flip", "visible", "onClose", "id", "children"];
27
-
28
17
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
29
-
30
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
31
-
32
19
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
-
34
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
-
36
21
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
37
-
38
22
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
39
-
40
23
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
41
-
42
24
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
43
-
44
25
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
45
-
46
26
  function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
47
-
48
27
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
49
-
50
28
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
51
-
52
29
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
53
-
54
30
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
55
-
56
31
  var fadeIn = (0, _react2.keyframes)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from { opacity: 0; }\n to { opacity: 1; }\n"])));
57
32
  var fadeOut = (0, _react2.keyframes)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n from { opacity: 1; }\n to { opacity: 0; }\n"])));
58
-
59
33
  var visibleStyles = function visibleStyles(p) {
60
34
  return p.visible && (0, _react2.css)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n animation: ", " ", "ms forwards;\n "])), fadeIn, p.theme.transitionDelay);
61
35
  };
62
-
63
36
  var invisibleStyles = function invisibleStyles(p) {
64
37
  return !p.visible && (0, _react2.css)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n animation: ", " ", "ms forwards;\n "])), fadeOut, p.theme.transitionDelay);
65
38
  };
66
-
67
39
  var Container = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('top', 'left', 'visible', 'size'))(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n position: absolute;\n top: ", "px;\n left: ", "px;\n\n border-radius: ", "em;\n background-color: ", ";\n color: ", ";\n border: 1px solid ", ";\n box-shadow: 0 0.15em 0.8em ", ";\n z-index: 1000; // Greater than the z-index of the Drawer\n\n ", ";\n ", ";\n ", ";\n"])), function (p) {
68
40
  return p.top;
69
41
  }, function (p) {
@@ -85,46 +57,42 @@ var emptyRect = {
85
57
  width: 0,
86
58
  height: 0
87
59
  };
60
+
88
61
  /**
89
62
  * The pop-up window located next to the element.
90
63
  */
91
-
92
64
  var Popover = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
93
65
  var trigger = _ref.trigger,
94
- _ref$placement = _ref.placement,
95
- placement = _ref$placement === void 0 ? 'top' : _ref$placement,
96
- _ref$gap = _ref.gap,
97
- gap = _ref$gap === void 0 ? 0.2 : _ref$gap,
98
- _ref$flip = _ref.flip,
99
- flip = _ref$flip === void 0 ? true : _ref$flip,
100
- _ref$visible = _ref.visible,
101
- visible = _ref$visible === void 0 ? false : _ref$visible,
102
- _ref$onClose = _ref.onClose,
103
- onClose = _ref$onClose === void 0 ? function () {} : _ref$onClose,
104
- id = _ref.id,
105
- children = _ref.children,
106
- rest = _objectWithoutProperties(_ref, _excluded);
107
-
66
+ _ref$placement = _ref.placement,
67
+ placement = _ref$placement === void 0 ? 'top' : _ref$placement,
68
+ _ref$gap = _ref.gap,
69
+ gap = _ref$gap === void 0 ? 0.2 : _ref$gap,
70
+ _ref$flip = _ref.flip,
71
+ flip = _ref$flip === void 0 ? true : _ref$flip,
72
+ _ref$visible = _ref.visible,
73
+ visible = _ref$visible === void 0 ? false : _ref$visible,
74
+ _ref$onClose = _ref.onClose,
75
+ onClose = _ref$onClose === void 0 ? function () {} : _ref$onClose,
76
+ id = _ref.id,
77
+ children = _ref.children,
78
+ rest = _objectWithoutProperties(_ref, _excluded);
108
79
  var _useForwardedRef = (0, _utils.useForwardedRef)(ref),
109
- _useForwardedRef2 = _slicedToArray(_useForwardedRef, 2),
110
- popoverRef = _useForwardedRef2[0],
111
- mergedPopoverRef = _useForwardedRef2[1];
112
-
80
+ _useForwardedRef2 = _slicedToArray(_useForwardedRef, 2),
81
+ popoverRef = _useForwardedRef2[0],
82
+ mergedPopoverRef = _useForwardedRef2[1];
113
83
  var _useState = (0, _react.useState)(emptyRect),
114
- _useState2 = _slicedToArray(_useState, 2),
115
- popoverRect = _useState2[0],
116
- setPopoverRect = _useState2[1];
117
-
84
+ _useState2 = _slicedToArray(_useState, 2),
85
+ popoverRect = _useState2[0],
86
+ setPopoverRect = _useState2[1];
118
87
  var _useState3 = (0, _react.useState)(emptyRect),
119
- _useState4 = _slicedToArray(_useState3, 2),
120
- triggerRect = _useState4[0],
121
- setTriggerRect = _useState4[1];
122
-
88
+ _useState4 = _slicedToArray(_useState3, 2),
89
+ triggerRect = _useState4[0],
90
+ setTriggerRect = _useState4[1];
123
91
  var _useTheme = (0, _theming.useTheme)(),
124
- theme = _useTheme.theme;
125
-
126
- var mounted = (0, _utils.useClosable)(visible, theme.transitionDelay); // Init the rect of the popover and update it when the popover size changes
92
+ theme = _useTheme.theme;
93
+ var mounted = (0, _utils.useClosable)(visible, theme.transitionDelay);
127
94
 
95
+ // Init the rect of the popover and update it when the popover size changes
128
96
  var popoverResizeListener = (0, _react.useCallback)(function () {
129
97
  if (!popoverRef.current) return;
130
98
  setPopoverRect(popoverRef.current.getBoundingClientRect());
@@ -134,14 +102,15 @@ var Popover = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
134
102
  if (node === null) return;
135
103
  setPopoverRect(node.getBoundingClientRect());
136
104
  mergedPopoverRef(node);
137
- }, [mergedPopoverRef]); // Init the rect of the trigger and update it when the window was resized
138
- // or scrolled
105
+ }, [mergedPopoverRef]);
139
106
 
107
+ // Init the rect of the trigger and update it when the window was resized
108
+ // or scrolled
140
109
  var triggerResizeListener = (0, _react.useCallback)(function () {
141
110
  window.requestAnimationFrame(function () {
142
111
  if (!trigger) return;
143
112
  var _ref2 = trigger,
144
- current = _ref2.current;
113
+ current = _ref2.current;
145
114
  if (!current) return;
146
115
  setTriggerRect(current.getBoundingClientRect());
147
116
  });
@@ -159,39 +128,39 @@ var Popover = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
159
128
  }, [trigger]);
160
129
  var popoverId = (0, _react.useMemo)(function () {
161
130
  return id || "popover-".concat(Math.random().toString(36).slice(2, 11));
162
- }, [id]); // Set the aria tags to support accessibility features
131
+ }, [id]);
163
132
 
133
+ // Set the aria tags to support accessibility features
164
134
  (0, _utils.useBrowserLayoutEffect)(function () {
165
135
  if (!trigger) return;
166
136
  var _ref3 = trigger,
167
- current = _ref3.current;
137
+ current = _ref3.current;
168
138
  if (!current) return;
169
-
170
139
  if (current.getAttribute('aria-haspopup') === null) {
171
140
  current.setAttribute('aria-haspopup', 'dialog');
172
141
  }
173
-
174
142
  current.setAttribute('aria-controls', popoverId);
175
143
  }, []);
176
144
  (0, _utils.useBrowserLayoutEffect)(function () {
177
145
  if (!trigger) return;
178
146
  var _ref4 = trigger,
179
- current = _ref4.current;
147
+ current = _ref4.current;
180
148
  if (!current) return;
181
149
  current.setAttribute('aria-expanded', visible.toString());
182
- }, [visible]); // Get the popover coordinates
150
+ }, [visible]);
183
151
 
152
+ // Get the popover coordinates
184
153
  var _usePopoverPosition = (0, _usePopoverPosition2["default"])({
185
- elementRect: triggerRect,
186
- popoverRect: popoverRect,
187
- placement: placement,
188
- gap: gap,
189
- flip: flip
190
- }),
191
- top = _usePopoverPosition.top,
192
- left = _usePopoverPosition.left; // Close the popover when the user clicks outside of it
193
-
194
-
154
+ elementRect: triggerRect,
155
+ popoverRect: popoverRect,
156
+ placement: placement,
157
+ gap: gap,
158
+ flip: flip
159
+ }),
160
+ top = _usePopoverPosition.top,
161
+ left = _usePopoverPosition.left;
162
+
163
+ // Close the popover when the user clicks outside of it
195
164
  (0, _utils.useClickOutside)(popoverRef, onClose);
196
165
  if (!mounted) return null;
197
166
  return /*#__PURE__*/_react["default"].createElement(_portal["default"], null, /*#__PURE__*/_react["default"].createElement(Container, _extends({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","Container","styled","omitEmotionProps","top","left","borderRadius","clr","popoverColorBg","popoverColorText","popoverColorBorder","popoverColorBoxShadow","sizeStyles","emptyRect","width","height","Popover","forwardRef","ref","trigger","placement","gap","flip","onClose","id","children","rest","useForwardedRef","popoverRef","mergedPopoverRef","useState","popoverRect","setPopoverRect","triggerRect","setTriggerRect","useTheme","mounted","useClosable","popoverResizeListener","useCallback","current","getBoundingClientRect","useResizeObserver","measuredPopoverRef","node","triggerResizeListener","window","requestAnimationFrame","useBrowserLayoutEffect","useEvent","document","useEffect","undefined","popoverId","useMemo","Math","random","toString","slice","getAttribute","setAttribute","usePopoverPosition","elementRect","useClickOutside","displayName"],"sources":["../../../src/Popover/index.tsx"],"sourcesContent":["import React, {\n forwardRef,\n RefCallback,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport {\n omitEmotionProps,\n useClickOutside,\n useClosable,\n useEvent,\n useForwardedRef,\n useResizeObserver,\n useBrowserLayoutEffect,\n} from '@os-design/utils';\nimport styled from '@emotion/styled';\nimport { clr, useTheme } from '@os-design/theming';\nimport { css, keyframes } from '@emotion/react';\nimport Portal from '@os-design/portal';\nimport usePopoverPosition, {\n Placement,\n Rect,\n} from './utils/usePopoverPosition';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface PopoverProps extends JsxDivProps, WithSize {\n /**\n * The element next to which the popover appears.\n * @default undefined\n */\n trigger?: RefObject<Element> | Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.2\n */\n gap?: number;\n /**\n * Whether the popover to flip if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n /**\n * Whether the popover is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The close event handler.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface ContainerProps extends Pick<PopoverProps, 'visible' | 'size'> {\n top: number;\n left: number;\n}\nconst Container = styled(\n 'div',\n omitEmotionProps('top', 'left', 'visible', 'size')\n)<ContainerProps>`\n position: absolute;\n top: ${(p) => p.top}px;\n left: ${(p) => p.left}px;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n background-color: ${(p) => clr(p.theme.popoverColorBg)};\n color: ${(p) => clr(p.theme.popoverColorText)};\n border: 1px solid ${(p) => clr(p.theme.popoverColorBorder)};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.popoverColorBoxShadow)};\n z-index: 1000; // Greater than the z-index of the Drawer\n\n ${visibleStyles};\n ${invisibleStyles};\n ${sizeStyles};\n`;\n\nconst emptyRect: Rect = {\n top: 0,\n left: 0,\n width: 0,\n height: 0,\n};\n\n/**\n * The pop-up window located next to the element.\n */\nconst Popover = forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n trigger,\n placement = 'top',\n gap = 0.2,\n flip = true,\n visible = false,\n onClose = () => {},\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const [popoverRef, mergedPopoverRef] = useForwardedRef(ref);\n const [popoverRect, setPopoverRect] = useState(emptyRect);\n const [triggerRect, setTriggerRect] = useState(emptyRect);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Init the rect of the popover and update it when the popover size changes\n const popoverResizeListener = useCallback(() => {\n if (!popoverRef.current) return;\n setPopoverRect(popoverRef.current.getBoundingClientRect());\n }, [popoverRef]);\n useResizeObserver(\n popoverRef.current as HTMLDivElement,\n popoverResizeListener\n );\n\n const measuredPopoverRef = useCallback<RefCallback<HTMLDivElement>>(\n (node) => {\n if (node === null) return;\n setPopoverRect(node.getBoundingClientRect());\n mergedPopoverRef(node);\n },\n [mergedPopoverRef]\n );\n\n // Init the rect of the trigger and update it when the window was resized\n // or scrolled\n const triggerResizeListener = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n setTriggerRect(current.getBoundingClientRect());\n });\n }, [trigger]);\n useBrowserLayoutEffect(() => {\n if (!visible) return;\n triggerResizeListener();\n }, [triggerResizeListener, visible]);\n useResizeObserver(trigger as never, triggerResizeListener);\n useEvent(\n (typeof window === 'undefined' ? null : window) as never,\n 'resize',\n triggerResizeListener\n );\n useEvent(document, 'scroll', triggerResizeListener);\n\n useEffect(() => {\n if (!trigger || (trigger as RefObject<Element>).current !== undefined)\n return;\n setTriggerRect(trigger as Rect);\n }, [trigger]);\n\n const popoverId = useMemo(\n () => id || `popover-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n // Set the aria tags to support accessibility features\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n if (current.getAttribute('aria-haspopup') === null) {\n current.setAttribute('aria-haspopup', 'dialog');\n }\n current.setAttribute('aria-controls', popoverId);\n }, []);\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n current.setAttribute('aria-expanded', visible.toString());\n }, [visible]);\n\n // Get the popover coordinates\n const { top, left } = usePopoverPosition({\n elementRect: triggerRect,\n popoverRect,\n placement,\n gap,\n flip,\n });\n\n // Close the popover when the user clicks outside of it\n useClickOutside(popoverRef, onClose);\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <Container\n top={top}\n left={left}\n visible={visible}\n id={popoverId}\n role='dialog'\n {...rest}\n ref={measuredPopoverRef}\n >\n {children}\n </Container>\n </Portal>\n );\n }\n);\n\nPopover.displayName = 'Popover';\n\nexport default Popover;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","Container","styled","omitEmotionProps","top","left","borderRadius","clr","popoverColorBg","popoverColorText","popoverColorBorder","popoverColorBoxShadow","sizeStyles","emptyRect","width","height","Popover","forwardRef","ref","trigger","placement","gap","flip","onClose","id","children","rest","useForwardedRef","popoverRef","mergedPopoverRef","useState","popoverRect","setPopoverRect","triggerRect","setTriggerRect","useTheme","mounted","useClosable","popoverResizeListener","useCallback","current","getBoundingClientRect","useResizeObserver","measuredPopoverRef","node","triggerResizeListener","window","requestAnimationFrame","useBrowserLayoutEffect","useEvent","document","useEffect","undefined","popoverId","useMemo","Math","random","toString","slice","getAttribute","setAttribute","usePopoverPosition","elementRect","useClickOutside","displayName"],"sources":["../../../src/Popover/index.tsx"],"sourcesContent":["import React, {\n forwardRef,\n RefCallback,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport {\n omitEmotionProps,\n useClickOutside,\n useClosable,\n useEvent,\n useForwardedRef,\n useResizeObserver,\n useBrowserLayoutEffect,\n} from '@os-design/utils';\nimport styled from '@emotion/styled';\nimport { clr, useTheme } from '@os-design/theming';\nimport { css, keyframes } from '@emotion/react';\nimport Portal from '@os-design/portal';\nimport usePopoverPosition, {\n Placement,\n Rect,\n} from './utils/usePopoverPosition';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface PopoverProps extends JsxDivProps, WithSize {\n /**\n * The element next to which the popover appears.\n * @default undefined\n */\n trigger?: RefObject<Element> | Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.2\n */\n gap?: number;\n /**\n * Whether the popover to flip if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n /**\n * Whether the popover is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The close event handler.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface ContainerProps extends Pick<PopoverProps, 'visible' | 'size'> {\n top: number;\n left: number;\n}\nconst Container = styled(\n 'div',\n omitEmotionProps('top', 'left', 'visible', 'size')\n)<ContainerProps>`\n position: absolute;\n top: ${(p) => p.top}px;\n left: ${(p) => p.left}px;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n background-color: ${(p) => clr(p.theme.popoverColorBg)};\n color: ${(p) => clr(p.theme.popoverColorText)};\n border: 1px solid ${(p) => clr(p.theme.popoverColorBorder)};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.popoverColorBoxShadow)};\n z-index: 1000; // Greater than the z-index of the Drawer\n\n ${visibleStyles};\n ${invisibleStyles};\n ${sizeStyles};\n`;\n\nconst emptyRect: Rect = {\n top: 0,\n left: 0,\n width: 0,\n height: 0,\n};\n\n/**\n * The pop-up window located next to the element.\n */\nconst Popover = forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n trigger,\n placement = 'top',\n gap = 0.2,\n flip = true,\n visible = false,\n onClose = () => {},\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const [popoverRef, mergedPopoverRef] = useForwardedRef(ref);\n const [popoverRect, setPopoverRect] = useState(emptyRect);\n const [triggerRect, setTriggerRect] = useState(emptyRect);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Init the rect of the popover and update it when the popover size changes\n const popoverResizeListener = useCallback(() => {\n if (!popoverRef.current) return;\n setPopoverRect(popoverRef.current.getBoundingClientRect());\n }, [popoverRef]);\n useResizeObserver(\n popoverRef.current as HTMLDivElement,\n popoverResizeListener\n );\n\n const measuredPopoverRef = useCallback<RefCallback<HTMLDivElement>>(\n (node) => {\n if (node === null) return;\n setPopoverRect(node.getBoundingClientRect());\n mergedPopoverRef(node);\n },\n [mergedPopoverRef]\n );\n\n // Init the rect of the trigger and update it when the window was resized\n // or scrolled\n const triggerResizeListener = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n setTriggerRect(current.getBoundingClientRect());\n });\n }, [trigger]);\n useBrowserLayoutEffect(() => {\n if (!visible) return;\n triggerResizeListener();\n }, [triggerResizeListener, visible]);\n useResizeObserver(trigger as never, triggerResizeListener);\n useEvent(\n (typeof window === 'undefined' ? null : window) as never,\n 'resize',\n triggerResizeListener\n );\n useEvent(document, 'scroll', triggerResizeListener);\n\n useEffect(() => {\n if (!trigger || (trigger as RefObject<Element>).current !== undefined)\n return;\n setTriggerRect(trigger as Rect);\n }, [trigger]);\n\n const popoverId = useMemo(\n () => id || `popover-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n // Set the aria tags to support accessibility features\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n if (current.getAttribute('aria-haspopup') === null) {\n current.setAttribute('aria-haspopup', 'dialog');\n }\n current.setAttribute('aria-controls', popoverId);\n }, []);\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n current.setAttribute('aria-expanded', visible.toString());\n }, [visible]);\n\n // Get the popover coordinates\n const { top, left } = usePopoverPosition({\n elementRect: triggerRect,\n popoverRect,\n placement,\n gap,\n flip,\n });\n\n // Close the popover when the user clicks outside of it\n useClickOutside(popoverRef, onClose);\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <Container\n top={top}\n left={left}\n visible={visible}\n id={popoverId}\n role='dialog'\n {...rest}\n ref={measuredPopoverRef}\n >\n {children}\n </Container>\n </Portal>\n );\n }\n);\n\nPopover.displayName = 'Popover';\n\nexport default Popover;\n"],"mappings":"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"}