@os-design/core 1.0.254 → 1.0.255

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 (329) hide show
  1. package/dist/cjs/Alert/index.js +5 -5
  2. package/dist/cjs/Alert/index.js.map +1 -1
  3. package/dist/cjs/Avatar/index.js +5 -5
  4. package/dist/cjs/Avatar/index.js.map +1 -1
  5. package/dist/cjs/AvatarSkeleton/index.js +5 -5
  6. package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
  7. package/dist/cjs/Badge/index.js +9 -9
  8. package/dist/cjs/Badge/index.js.map +1 -1
  9. package/dist/cjs/Breadcrumb/index.js +7 -7
  10. package/dist/cjs/Breadcrumb/index.js.map +1 -1
  11. package/dist/cjs/BreadcrumbItem/index.js +5 -5
  12. package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
  13. package/dist/cjs/Button/ButtonContent.js +2 -2
  14. package/dist/cjs/Button/ButtonContent.js.map +1 -1
  15. package/dist/cjs/Button/index.js +5 -5
  16. package/dist/cjs/Button/index.js.map +1 -1
  17. package/dist/cjs/ButtonLink/index.js +5 -5
  18. package/dist/cjs/ButtonLink/index.js.map +1 -1
  19. package/dist/cjs/Checkbox/index.js +9 -9
  20. package/dist/cjs/Checkbox/index.js.map +1 -1
  21. package/dist/cjs/CheckboxSkeleton/index.js +5 -5
  22. package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
  23. package/dist/cjs/DatePicker/DatePickerCalendar.js +8 -8
  24. package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
  25. package/dist/cjs/DatePicker/index.js +9 -9
  26. package/dist/cjs/DatePicker/index.js.map +1 -1
  27. package/dist/cjs/Drawer/index.js +5 -5
  28. package/dist/cjs/Drawer/index.js.map +1 -1
  29. package/dist/cjs/Form/FormConfigContext.js +1 -1
  30. package/dist/cjs/Form/FormConfigContext.js.map +1 -1
  31. package/dist/cjs/Form/index.js +5 -5
  32. package/dist/cjs/Form/index.js.map +1 -1
  33. package/dist/cjs/FormDivider/index.js +5 -5
  34. package/dist/cjs/FormDivider/index.js.map +1 -1
  35. package/dist/cjs/FormItem/index.js +5 -5
  36. package/dist/cjs/FormItem/index.js.map +1 -1
  37. package/dist/cjs/Gallery/Status.js +2 -2
  38. package/dist/cjs/Gallery/Status.js.map +1 -1
  39. package/dist/cjs/Gallery/index.js +9 -9
  40. package/dist/cjs/Gallery/index.js.map +1 -1
  41. package/dist/cjs/GlobalStyles/index.js +1 -1
  42. package/dist/cjs/GlobalStyles/index.js.map +1 -1
  43. package/dist/cjs/GlobalStyles/resetStyles.js +1 -1
  44. package/dist/cjs/GlobalStyles/resetStyles.js.map +1 -1
  45. package/dist/cjs/GlobalStyles/typographyStyles.js +2 -2
  46. package/dist/cjs/GlobalStyles/typographyStyles.js.map +1 -1
  47. package/dist/cjs/HeaderSkeleton/index.js +5 -5
  48. package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
  49. package/dist/cjs/Image/index.js +5 -5
  50. package/dist/cjs/Image/index.js.map +1 -1
  51. package/dist/cjs/ImageSkeleton/index.js +3 -3
  52. package/dist/cjs/ImageSkeleton/index.js.map +1 -1
  53. package/dist/cjs/Input/index.js +9 -9
  54. package/dist/cjs/Input/index.js.map +1 -1
  55. package/dist/cjs/Input/utils/getFocusableElements.js +5 -5
  56. package/dist/cjs/InputNumber/index.js +8 -8
  57. package/dist/cjs/InputNumber/index.js.map +1 -1
  58. package/dist/cjs/InputPassword/index.js +9 -9
  59. package/dist/cjs/InputPassword/index.js.map +1 -1
  60. package/dist/cjs/InputSearch/index.js +9 -9
  61. package/dist/cjs/InputSearch/index.js.map +1 -1
  62. package/dist/cjs/InputSkeleton/index.js +3 -3
  63. package/dist/cjs/InputSkeleton/index.js.map +1 -1
  64. package/dist/cjs/Layout/LayoutContext.js +1 -1
  65. package/dist/cjs/Layout/LayoutContext.js.map +1 -1
  66. package/dist/cjs/Layout/index.js +1 -1
  67. package/dist/cjs/Layout/index.js.map +1 -1
  68. package/dist/cjs/Link/index.js +5 -5
  69. package/dist/cjs/Link/index.js.map +1 -1
  70. package/dist/cjs/LinkButton/index.js +5 -5
  71. package/dist/cjs/LinkButton/index.js.map +1 -1
  72. package/dist/cjs/List/index.js +9 -9
  73. package/dist/cjs/List/index.js.map +1 -1
  74. package/dist/cjs/List/utils/frameTimeout.js +3 -3
  75. package/dist/cjs/List/utils/frameTimeout.js.map +1 -1
  76. package/dist/cjs/ListItem/index.js +5 -5
  77. package/dist/cjs/ListItem/index.js.map +1 -1
  78. package/dist/cjs/ListItemActions/index.js +12 -12
  79. package/dist/cjs/ListItemActions/index.js.map +1 -1
  80. package/dist/cjs/ListItemLink/index.js +10 -10
  81. package/dist/cjs/ListItemLink/index.js.map +1 -1
  82. package/dist/cjs/ListItemSkeleton/index.js +5 -5
  83. package/dist/cjs/ListItemSkeleton/index.js.map +1 -1
  84. package/dist/cjs/ListSkeleton/index.js +4 -4
  85. package/dist/cjs/ListSkeleton/index.js.map +1 -1
  86. package/dist/cjs/LogoLink/index.js +5 -5
  87. package/dist/cjs/LogoLink/index.js.map +1 -1
  88. package/dist/cjs/Menu/index.js +9 -9
  89. package/dist/cjs/Menu/index.js.map +1 -1
  90. package/dist/cjs/Menu/utils/useFocusWithArrows.js +5 -5
  91. package/dist/cjs/Menu/utils/useFocusWithArrows.js.map +1 -1
  92. package/dist/cjs/MenuDivider/index.js +3 -3
  93. package/dist/cjs/MenuDivider/index.js.map +1 -1
  94. package/dist/cjs/MenuGroup/index.js +13 -13
  95. package/dist/cjs/MenuGroup/index.js.map +1 -1
  96. package/dist/cjs/MenuItem/index.js +5 -5
  97. package/dist/cjs/MenuItem/index.js.map +1 -1
  98. package/dist/cjs/Modal/index.js +5 -5
  99. package/dist/cjs/Modal/index.js.map +1 -1
  100. package/dist/cjs/Navigation/index.js +5 -5
  101. package/dist/cjs/Navigation/index.js.map +1 -1
  102. package/dist/cjs/Navigation/utils/useScrollFlags.js +4 -4
  103. package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
  104. package/dist/cjs/NavigationItem/index.js +5 -5
  105. package/dist/cjs/NavigationItem/index.js.map +1 -1
  106. package/dist/cjs/PageContent/index.js +5 -5
  107. package/dist/cjs/PageContent/index.js.map +1 -1
  108. package/dist/cjs/PageHeader/index.js +5 -5
  109. package/dist/cjs/PageHeader/index.js.map +1 -1
  110. package/dist/cjs/PageHeaderInputSearch/index.js +9 -9
  111. package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
  112. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js +2 -2
  113. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  114. package/dist/cjs/PageHeaderSkeleton/index.js +4 -4
  115. package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
  116. package/dist/cjs/ParagraphSkeleton/index.js +5 -5
  117. package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
  118. package/dist/cjs/Popover/index.js +9 -9
  119. package/dist/cjs/Popover/index.js.map +1 -1
  120. package/dist/cjs/Popover/utils/usePopoverPosition.js +6 -6
  121. package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
  122. package/dist/cjs/Progress/index.js +5 -5
  123. package/dist/cjs/Progress/index.js.map +1 -1
  124. package/dist/cjs/RadioGroup/index.js +9 -9
  125. package/dist/cjs/RadioGroup/index.js.map +1 -1
  126. package/dist/cjs/RadioGroupSkeleton/index.js +5 -5
  127. package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
  128. package/dist/cjs/Result/index.js +5 -5
  129. package/dist/cjs/Result/index.js.map +1 -1
  130. package/dist/cjs/ScrollButton/index.js +5 -5
  131. package/dist/cjs/ScrollButton/index.js.map +1 -1
  132. package/dist/cjs/ScrollButton/utils/useContainerPosition.js +4 -4
  133. package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
  134. package/dist/cjs/ScrollButton/utils/useVisibility.js +4 -4
  135. package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
  136. package/dist/cjs/Select/index.js +13 -13
  137. package/dist/cjs/Select/index.js.map +1 -1
  138. package/dist/cjs/Skeleton/index.js +5 -5
  139. package/dist/cjs/Skeleton/index.js.map +1 -1
  140. package/dist/cjs/Switch/index.js +9 -9
  141. package/dist/cjs/Switch/index.js.map +1 -1
  142. package/dist/cjs/SwitchSkeleton/index.js +3 -3
  143. package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
  144. package/dist/cjs/Tag/index.js +5 -5
  145. package/dist/cjs/Tag/index.js.map +1 -1
  146. package/dist/cjs/TagLink/index.js +5 -5
  147. package/dist/cjs/TagLink/index.js.map +1 -1
  148. package/dist/cjs/TagList/index.js +9 -9
  149. package/dist/cjs/TagList/index.js.map +1 -1
  150. package/dist/cjs/TagListSkeleton/index.js +4 -4
  151. package/dist/cjs/TagListSkeleton/index.js.map +1 -1
  152. package/dist/cjs/TagSkeleton/index.js +5 -5
  153. package/dist/cjs/TagSkeleton/index.js.map +1 -1
  154. package/dist/cjs/TextArea/index.js +9 -9
  155. package/dist/cjs/TextArea/index.js.map +1 -1
  156. package/dist/cjs/TextAreaSkeleton/index.js +3 -3
  157. package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
  158. package/dist/cjs/ThemeSwitcher/index.js +4 -4
  159. package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
  160. package/dist/cjs/TimePicker/index.js +8 -8
  161. package/dist/cjs/TimePicker/index.js.map +1 -1
  162. package/dist/cjs/Video/index.js +5 -5
  163. package/dist/cjs/Video/index.js.map +1 -1
  164. package/dist/cjs/index.js +1 -1
  165. package/dist/cjs/index.js.map +1 -1
  166. package/dist/cjs/message/AlertIcon.js +2 -2
  167. package/dist/cjs/message/AlertIcon.js.map +1 -1
  168. package/dist/cjs/message/Message.js +2 -2
  169. package/dist/cjs/message/Message.js.map +1 -1
  170. package/dist/cjs/message/index.js +1 -1
  171. package/dist/cjs/message/index.js.map +1 -1
  172. package/dist/cjs/message/styles.js +4 -4
  173. package/dist/esm/Alert/index.js +1 -1
  174. package/dist/esm/Alert/index.js.map +1 -1
  175. package/dist/esm/Avatar/index.js +1 -1
  176. package/dist/esm/Avatar/index.js.map +1 -1
  177. package/dist/esm/Avatar/utils/nameToInitials.js.map +1 -1
  178. package/dist/esm/AvatarSkeleton/index.js +1 -1
  179. package/dist/esm/AvatarSkeleton/index.js.map +1 -1
  180. package/dist/esm/Badge/index.js +1 -1
  181. package/dist/esm/Badge/index.js.map +1 -1
  182. package/dist/esm/Breadcrumb/index.js +2 -2
  183. package/dist/esm/Breadcrumb/index.js.map +1 -1
  184. package/dist/esm/BreadcrumbItem/index.js +1 -1
  185. package/dist/esm/BreadcrumbItem/index.js.map +1 -1
  186. package/dist/esm/Button/ButtonContent.js.map +1 -1
  187. package/dist/esm/Button/index.js +1 -1
  188. package/dist/esm/Button/index.js.map +1 -1
  189. package/dist/esm/Button/utils/useButtonColors.js.map +1 -1
  190. package/dist/esm/ButtonLink/index.js +1 -1
  191. package/dist/esm/ButtonLink/index.js.map +1 -1
  192. package/dist/esm/Checkbox/index.js +1 -1
  193. package/dist/esm/Checkbox/index.js.map +1 -1
  194. package/dist/esm/CheckboxSkeleton/index.js +1 -1
  195. package/dist/esm/CheckboxSkeleton/index.js.map +1 -1
  196. package/dist/esm/DatePicker/DatePickerCalendar.js +1 -1
  197. package/dist/esm/DatePicker/DatePickerCalendar.js.map +1 -1
  198. package/dist/esm/DatePicker/index.js +1 -1
  199. package/dist/esm/DatePicker/index.js.map +1 -1
  200. package/dist/esm/Drawer/index.js +1 -1
  201. package/dist/esm/Drawer/index.js.map +1 -1
  202. package/dist/esm/Form/index.js +1 -1
  203. package/dist/esm/Form/index.js.map +1 -1
  204. package/dist/esm/FormDivider/index.js +1 -1
  205. package/dist/esm/FormDivider/index.js.map +1 -1
  206. package/dist/esm/FormItem/index.js +1 -1
  207. package/dist/esm/FormItem/index.js.map +1 -1
  208. package/dist/esm/Gallery/Status.js.map +1 -1
  209. package/dist/esm/Gallery/index.js +1 -1
  210. package/dist/esm/Gallery/index.js.map +1 -1
  211. package/dist/esm/GlobalStyles/resetStyles.js.map +1 -1
  212. package/dist/esm/GlobalStyles/typographyStyles.js.map +1 -1
  213. package/dist/esm/HeaderSkeleton/index.js +1 -1
  214. package/dist/esm/HeaderSkeleton/index.js.map +1 -1
  215. package/dist/esm/Image/index.js +1 -1
  216. package/dist/esm/Image/index.js.map +1 -1
  217. package/dist/esm/ImageSkeleton/index.js +1 -1
  218. package/dist/esm/ImageSkeleton/index.js.map +1 -1
  219. package/dist/esm/Input/index.js +1 -1
  220. package/dist/esm/Input/index.js.map +1 -1
  221. package/dist/esm/InputNumber/index.js +1 -1
  222. package/dist/esm/InputPassword/index.js +1 -1
  223. package/dist/esm/InputPassword/index.js.map +1 -1
  224. package/dist/esm/InputSearch/index.js +1 -1
  225. package/dist/esm/InputSearch/index.js.map +1 -1
  226. package/dist/esm/InputSkeleton/index.js +1 -1
  227. package/dist/esm/InputSkeleton/index.js.map +1 -1
  228. package/dist/esm/Link/index.js +1 -1
  229. package/dist/esm/Link/index.js.map +1 -1
  230. package/dist/esm/LinkButton/index.js +1 -1
  231. package/dist/esm/LinkButton/index.js.map +1 -1
  232. package/dist/esm/List/index.js +1 -1
  233. package/dist/esm/List/index.js.map +1 -1
  234. package/dist/esm/ListItem/index.js +1 -1
  235. package/dist/esm/ListItem/index.js.map +1 -1
  236. package/dist/esm/ListItemActions/index.js +1 -1
  237. package/dist/esm/ListItemActions/index.js.map +1 -1
  238. package/dist/esm/ListItemLink/index.js +1 -1
  239. package/dist/esm/ListItemLink/index.js.map +1 -1
  240. package/dist/esm/ListItemSkeleton/index.js +1 -1
  241. package/dist/esm/ListItemSkeleton/index.js.map +1 -1
  242. package/dist/esm/ListSkeleton/index.js +1 -1
  243. package/dist/esm/LogoLink/index.js +1 -1
  244. package/dist/esm/LogoLink/index.js.map +1 -1
  245. package/dist/esm/Menu/index.js +1 -1
  246. package/dist/esm/Menu/index.js.map +1 -1
  247. package/dist/esm/MenuDivider/index.js +1 -1
  248. package/dist/esm/MenuDivider/index.js.map +1 -1
  249. package/dist/esm/MenuGroup/index.js +1 -1
  250. package/dist/esm/MenuGroup/index.js.map +1 -1
  251. package/dist/esm/MenuItem/index.js +1 -1
  252. package/dist/esm/MenuItem/index.js.map +1 -1
  253. package/dist/esm/Modal/index.js +1 -1
  254. package/dist/esm/Modal/index.js.map +1 -1
  255. package/dist/esm/Navigation/index.js +1 -1
  256. package/dist/esm/Navigation/index.js.map +1 -1
  257. package/dist/esm/NavigationItem/index.js +1 -1
  258. package/dist/esm/NavigationItem/index.js.map +1 -1
  259. package/dist/esm/PageContent/index.js +1 -1
  260. package/dist/esm/PageContent/index.js.map +1 -1
  261. package/dist/esm/PageHeader/index.js +1 -1
  262. package/dist/esm/PageHeader/index.js.map +1 -1
  263. package/dist/esm/PageHeaderInputSearch/index.js +1 -1
  264. package/dist/esm/PageHeaderInputSearch/index.js.map +1 -1
  265. package/dist/esm/PageHeaderSkeleton/index.js +1 -1
  266. package/dist/esm/ParagraphSkeleton/index.js +1 -1
  267. package/dist/esm/ParagraphSkeleton/index.js.map +1 -1
  268. package/dist/esm/Popover/index.js +1 -1
  269. package/dist/esm/Popover/index.js.map +1 -1
  270. package/dist/esm/Progress/index.js +1 -1
  271. package/dist/esm/Progress/index.js.map +1 -1
  272. package/dist/esm/RadioGroup/index.js +1 -1
  273. package/dist/esm/RadioGroup/index.js.map +1 -1
  274. package/dist/esm/RadioGroupSkeleton/index.js +1 -1
  275. package/dist/esm/RadioGroupSkeleton/index.js.map +1 -1
  276. package/dist/esm/Result/index.js +1 -1
  277. package/dist/esm/Result/index.js.map +1 -1
  278. package/dist/esm/ScrollButton/index.js +1 -1
  279. package/dist/esm/ScrollButton/index.js.map +1 -1
  280. package/dist/esm/Select/index.js +1 -1
  281. package/dist/esm/Select/index.js.map +1 -1
  282. package/dist/esm/Skeleton/index.js +1 -1
  283. package/dist/esm/Skeleton/index.js.map +1 -1
  284. package/dist/esm/Switch/index.js +1 -1
  285. package/dist/esm/Switch/index.js.map +1 -1
  286. package/dist/esm/SwitchSkeleton/index.js +1 -1
  287. package/dist/esm/SwitchSkeleton/index.js.map +1 -1
  288. package/dist/esm/Tag/index.js +1 -1
  289. package/dist/esm/Tag/index.js.map +1 -1
  290. package/dist/esm/TagLink/index.js +1 -1
  291. package/dist/esm/TagLink/index.js.map +1 -1
  292. package/dist/esm/TagList/index.js +1 -1
  293. package/dist/esm/TagList/index.js.map +1 -1
  294. package/dist/esm/TagListSkeleton/index.js +1 -1
  295. package/dist/esm/TagSkeleton/index.js +1 -1
  296. package/dist/esm/TagSkeleton/index.js.map +1 -1
  297. package/dist/esm/TextArea/index.js +1 -1
  298. package/dist/esm/TextArea/index.js.map +1 -1
  299. package/dist/esm/TextAreaSkeleton/index.js +1 -1
  300. package/dist/esm/TextAreaSkeleton/index.js.map +1 -1
  301. package/dist/esm/ThemeSwitcher/index.js +1 -1
  302. package/dist/esm/TimePicker/index.js +1 -1
  303. package/dist/esm/Video/index.js +1 -1
  304. package/dist/esm/Video/index.js.map +1 -1
  305. package/dist/esm/message/AlertIcon.js.map +1 -1
  306. package/dist/esm/message/Message.js.map +1 -1
  307. package/dist/types/Button/index.d.ts +2 -2
  308. package/dist/types/Button/index.d.ts.map +1 -1
  309. package/dist/types/ButtonLink/index.d.ts +14 -13
  310. package/dist/types/ButtonLink/index.d.ts.map +1 -1
  311. package/dist/types/Input/index.d.ts +4 -4
  312. package/dist/types/Input/index.d.ts.map +1 -1
  313. package/dist/types/Link/index.d.ts +4 -4
  314. package/dist/types/Link/index.d.ts.map +1 -1
  315. package/dist/types/Menu/utils/useFocusWithArrows.d.ts.map +1 -1
  316. package/dist/types/Modal/index.d.ts +2 -2
  317. package/dist/types/Modal/index.d.ts.map +1 -1
  318. package/dist/types/Navigation/utils/useScrollFlags.d.ts.map +1 -1
  319. package/dist/types/PageHeader/index.d.ts +2 -2
  320. package/dist/types/PageHeader/index.d.ts.map +1 -1
  321. package/dist/types/ScrollButton/utils/useContainerPosition.d.ts.map +1 -1
  322. package/dist/types/Select/index.d.ts +21 -21
  323. package/dist/types/Select/index.d.ts.map +1 -1
  324. package/dist/types/Tag/index.d.ts +6 -6
  325. package/dist/types/Tag/index.d.ts.map +1 -1
  326. package/dist/types/ThemeSwitcher/index.d.ts +14 -13
  327. package/dist/types/ThemeSwitcher/index.d.ts.map +1 -1
  328. package/dist/types/message/styles.d.ts.map +1 -1
  329. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_utils","_react2","_interopRequireWildcard","_Skeleton","_excluded","_templateObject","_templateObject2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","hasMarginStyles","p","hasMargin","css","theme","paragraphMarginBottom","lineHeight","Container","styled","omitEmotionProps","ParagraphSkeleton","forwardRef","_ref","ref","_ref$rows","rows","_ref$width","width","_ref$hasMargin","rest","createElement","Array","fill","map","_","index","displayName","_default","exports"],"sources":["../../../src/ParagraphSkeleton/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from '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(0)\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":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_utils","_react2","_interopRequireWildcard","_Skeleton","_excluded","_templateObject","_templateObject2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","includes","propertyIsEnumerable","_taggedTemplateLiteral","slice","freeze","defineProperties","raw","value","hasMarginStyles","p","hasMargin","css","theme","paragraphMarginBottom","lineHeight","Container","styled","omitEmotionProps","key","ParagraphSkeleton","forwardRef","_ref","ref","_ref$rows","rows","_ref$width","width","_ref$hasMargin","rest","createElement","Array","fill","map","_","index","displayName","_default","exports"],"sources":["../../../src/ParagraphSkeleton/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from '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(0)\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":"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","ignoreList":[]}
@@ -17,17 +17,17 @@ var _excluded = ["trigger", "placement", "gap", "flip", "visible", "onClose", "i
17
17
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
18
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
19
19
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
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); }
22
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
20
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
21
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
22
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
23
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."); }
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); }
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; }
24
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
25
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
26
26
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
27
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
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; }
29
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
30
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
27
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
28
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
29
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
30
+ function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
31
31
  var fadeIn = (0, _react.keyframes)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from { opacity: 0; }\n to { opacity: 1; }\n"])));
32
32
  var fadeOut = (0, _react.keyframes)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n from { opacity: 1; }\n to { opacity: 0; }\n"])));
33
33
  var visibleStyles = function visibleStyles(p) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_portal","_styles","_theming","_utils","_react2","_interopRequireWildcard","_usePopoverPosition2","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","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","ref","trigger","_ref$placement","placement","_ref$gap","gap","_ref$flip","flip","_ref$visible","_ref$onClose","onClose","id","children","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","popoverRef","mergedPopoverRef","_useState","useState","_useState2","popoverRect","setPopoverRect","_useState3","_useState4","triggerRect","setTriggerRect","_useTheme","useTheme","mounted","useClosable","popoverResizeListener","useCallback","current","getBoundingClientRect","useResizeObserver","measuredPopoverRef","node","triggerResizeListener","window","requestAnimationFrame","_ref2","useBrowserLayoutEffect","useEvent","document","useEffect","undefined","popoverId","useMemo","concat","Math","random","_ref3","getAttribute","setAttribute","_ref4","_usePopoverPosition","usePopoverPosition","elementRect","useClickOutside","createElement","role","displayName","_default","exports"],"sources":["../../../src/Popover/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport Portal from '@os-design/portal';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { clr, useTheme } from '@os-design/theming';\nimport {\n omitEmotionProps,\n useBrowserLayoutEffect,\n useClickOutside,\n useClosable,\n useEvent,\n useForwardedRef,\n useResizeObserver,\n} from '@os-design/utils';\nimport React, {\n forwardRef,\n RefCallback,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\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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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_portal","_styles","_theming","_utils","_react2","_interopRequireWildcard","_usePopoverPosition2","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","f","o","next","done","push","value","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","includes","propertyIsEnumerable","_taggedTemplateLiteral","freeze","defineProperties","raw","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","ref","trigger","_ref$placement","placement","_ref$gap","gap","_ref$flip","flip","_ref$visible","_ref$onClose","onClose","id","children","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","popoverRef","mergedPopoverRef","_useState","useState","_useState2","popoverRect","setPopoverRect","_useState3","_useState4","triggerRect","setTriggerRect","_useTheme","useTheme","mounted","useClosable","popoverResizeListener","useCallback","current","getBoundingClientRect","useResizeObserver","measuredPopoverRef","node","triggerResizeListener","window","requestAnimationFrame","_ref2","useBrowserLayoutEffect","useEvent","document","useEffect","undefined","popoverId","useMemo","concat","Math","random","_ref3","getAttribute","setAttribute","_ref4","_usePopoverPosition","usePopoverPosition","elementRect","useClickOutside","createElement","role","displayName","_default","exports"],"sources":["../../../src/Popover/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport Portal from '@os-design/portal';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { clr, useTheme } from '@os-design/theming';\nimport {\n omitEmotionProps,\n useBrowserLayoutEffect,\n useClickOutside,\n useClosable,\n useEvent,\n useForwardedRef,\n useResizeObserver,\n} from '@os-design/utils';\nimport React, {\n forwardRef,\n RefCallback,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\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":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AASA,IAAAO,OAAA,GAAAC,uBAAA,CAAAR,OAAA;AASA,IAAAS,oBAAA,GAAAP,sBAAA,CAAAF,OAAA;AAGoC,IAAAU,SAAA;AAAA,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAvB,uBAAAe,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAI,UAAA,GAAAJ,CAAA,gBAAAA,CAAA;AAAA,SAAAmB,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAR,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAE,CAAA,IAAAC,CAAA,OAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAD,CAAA,MAAAM,CAAA,CAAAN,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAM,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAAA,SAAAG,eAAAvB,CAAA,EAAAF,CAAA,WAAA0B,eAAA,CAAAxB,CAAA,KAAAyB,qBAAA,CAAAzB,CAAA,EAAAF,CAAA,KAAA4B,2BAAA,CAAA1B,CAAA,EAAAF,CAAA,KAAA6B,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAA1B,CAAA,EAAAQ,CAAA,QAAAR,CAAA,2BAAAA,CAAA,SAAA6B,iBAAA,CAAA7B,CAAA,EAAAQ,CAAA,OAAAP,CAAA,MAAA6B,QAAA,CAAAhB,IAAA,CAAAd,CAAA,EAAA+B,KAAA,6BAAA9B,CAAA,IAAAD,CAAA,CAAAgC,WAAA,KAAA/B,CAAA,GAAAD,CAAA,CAAAgC,WAAA,CAAAC,IAAA,aAAAhC,CAAA,cAAAA,CAAA,GAAAiC,KAAA,CAAAC,IAAA,CAAAnC,CAAA,oBAAAC,CAAA,+CAAAmC,IAAA,CAAAnC,CAAA,IAAA4B,iBAAA,CAAA7B,CAAA,EAAAQ,CAAA;AAAA,SAAAqB,kBAAA7B,CAAA,EAAAQ,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAR,CAAA,CAAAqB,MAAA,MAAAb,CAAA,GAAAR,CAAA,CAAAqB,MAAA,YAAAvB,CAAA,MAAAQ,CAAA,GAAA4B,KAAA,CAAA1B,CAAA,GAAAV,CAAA,GAAAU,CAAA,EAAAV,CAAA,IAAAQ,CAAA,CAAAR,CAAA,IAAAE,CAAA,CAAAF,CAAA,UAAAQ,CAAA;AAAA,SAAAmB,sBAAAzB,CAAA,EAAAqC,CAAA,QAAApC,CAAA,WAAAD,CAAA,gCAAAsC,MAAA,IAAAtC,CAAA,CAAAsC,MAAA,CAAAC,QAAA,KAAAvC,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAQ,CAAA,EAAAS,CAAA,EAAAH,CAAA,EAAAJ,CAAA,OAAAgC,CAAA,OAAAC,CAAA,iBAAA1B,CAAA,IAAAd,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAd,CAAA,GAAA0C,IAAA,QAAAL,CAAA,QAAA5B,MAAA,CAAAR,CAAA,MAAAA,CAAA,UAAAuC,CAAA,uBAAAA,CAAA,IAAA1C,CAAA,GAAAiB,CAAA,CAAAD,IAAA,CAAAb,CAAA,GAAA0C,IAAA,MAAAnC,CAAA,CAAAoC,IAAA,CAAA9C,CAAA,CAAA+C,KAAA,GAAArC,CAAA,CAAAa,MAAA,KAAAgB,CAAA,GAAAG,CAAA,iBAAAxC,CAAA,IAAAyC,CAAA,OAAAnC,CAAA,GAAAN,CAAA,yBAAAwC,CAAA,YAAAvC,CAAA,eAAAW,CAAA,GAAAX,CAAA,cAAAQ,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAA6B,CAAA,QAAAnC,CAAA,aAAAE,CAAA;AAAA,SAAAgB,gBAAAxB,CAAA,QAAAkC,KAAA,CAAAY,OAAA,CAAA9C,CAAA,UAAAA,CAAA;AAAA,SAAA+C,yBAAAjD,CAAA,EAAAG,CAAA,gBAAAH,CAAA,iBAAA2C,CAAA,EAAAzC,CAAA,EAAAe,CAAA,GAAAiC,6BAAA,CAAAlD,CAAA,EAAAG,CAAA,OAAAQ,MAAA,CAAAwC,qBAAA,QAAAC,CAAA,GAAAzC,MAAA,CAAAwC,qBAAA,CAAAnD,CAAA,QAAAE,CAAA,MAAAA,CAAA,GAAAkD,CAAA,CAAA7B,MAAA,EAAArB,CAAA,IAAAyC,CAAA,GAAAS,CAAA,CAAAlD,CAAA,GAAAC,CAAA,CAAAkD,QAAA,CAAAV,CAAA,QAAAW,oBAAA,CAAAtC,IAAA,CAAAhB,CAAA,EAAA2C,CAAA,MAAA1B,CAAA,CAAA0B,CAAA,IAAA3C,CAAA,CAAA2C,CAAA,aAAA1B,CAAA;AAAA,SAAAiC,8BAAAhD,CAAA,EAAAF,CAAA,gBAAAE,CAAA,iBAAAC,CAAA,gBAAAK,CAAA,IAAAN,CAAA,SAAAa,cAAA,CAAAC,IAAA,CAAAd,CAAA,EAAAM,CAAA,SAAAR,CAAA,CAAAqD,QAAA,CAAA7C,CAAA,aAAAL,CAAA,CAAAK,CAAA,IAAAN,CAAA,CAAAM,CAAA,YAAAL,CAAA;AAAA,SAAAoD,uBAAAvD,CAAA,EAAAG,CAAA,WAAAA,CAAA,KAAAA,CAAA,GAAAH,CAAA,CAAAiC,KAAA,MAAAtB,MAAA,CAAA6C,MAAA,CAAA7C,MAAA,CAAA8C,gBAAA,CAAAzD,CAAA,IAAA0D,GAAA,IAAAX,KAAA,EAAApC,MAAA,CAAA6C,MAAA,CAAArD,CAAA;AAoCpC,IAAMwD,MAAM,OAAGC,gBAAS,EAAAlE,eAAA,KAAAA,eAAA,GAAA6D,sBAAA,wDAGvB;AAED,IAAMM,OAAO,OAAGD,gBAAS,EAAAjE,gBAAA,KAAAA,gBAAA,GAAA4D,sBAAA,wDAGxB;AAED,IAAMO,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,CAAC;EAAA,OACtBA,CAAC,CAACC,OAAO,QACTC,UAAG,EAAArE,gBAAA,KAAAA,gBAAA,GAAA2D,sBAAA,mDACYI,MAAM,EAAII,CAAC,CAACG,KAAK,CAACC,eAAe,CAC/C;AAAA;AAEH,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAIL,CAAC;EAAA,OACxB,CAACA,CAAC,CAACC,OAAO,QACVC,UAAG,EAAApE,gBAAA,KAAAA,gBAAA,GAAA0D,sBAAA,mDACYM,OAAO,EAAIE,CAAC,CAACG,KAAK,CAACC,eAAe,CAChD;AAAA;AAMH,IAAME,SAAS,GAAG,IAAAC,kBAAM,EACtB,KAAK,EACL,IAAAC,uBAAgB,EAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CACnD,CAAC,CAAAzE,gBAAA,KAAAA,gBAAA,GAAAyD,sBAAA,kSAEQ,UAACQ,CAAC;EAAA,OAAKA,CAAC,CAACS,GAAG;AAAA,GACX,UAACT,CAAC;EAAA,OAAKA,CAAC,CAACU,IAAI;AAAA,GAEJ,UAACV,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACQ,YAAY;AAAA,GACxB,UAACX,CAAC;EAAA,OAAK,IAAAY,YAAG,EAACZ,CAAC,CAACG,KAAK,CAACU,cAAc,CAAC;AAAA,GAC7C,UAACb,CAAC;EAAA,OAAK,IAAAY,YAAG,EAACZ,CAAC,CAACG,KAAK,CAACW,gBAAgB,CAAC;AAAA,GACzB,UAACd,CAAC;EAAA,OAAK,IAAAY,YAAG,EAACZ,CAAC,CAACG,KAAK,CAACY,kBAAkB,CAAC;AAAA,GAC7B,UAACf,CAAC;EAAA,OAAK,IAAAY,YAAG,EAACZ,CAAC,CAACG,KAAK,CAACa,qBAAqB,CAAC;AAAA,GAGpEjB,aAAa,EACbM,eAAe,EACfY,kBAAU,CACb;AAED,IAAMC,SAAe,GAAG;EACtBT,GAAG,EAAE,CAAC;EACNC,IAAI,EAAE,CAAC;EACPS,KAAK,EAAE,CAAC;EACRC,MAAM,EAAE;AACV,CAAC;;AAED;AACA;AACA;AACA,IAAMC,OAAO,gBAAG,IAAAC,kBAAU,EACxB,UAAAC,IAAA,EAYEC,GAAG,EACA;EAAA,IAXDC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IAAAC,cAAA,GAAAH,IAAA,CACPI,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,KAAK,GAAAA,cAAA;IAAAE,QAAA,GAAAL,IAAA,CACjBM,GAAG;IAAHA,GAAG,GAAAD,QAAA,cAAG,GAAG,GAAAA,QAAA;IAAAE,SAAA,GAAAP,IAAA,CACTQ,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,IAAI,GAAAA,SAAA;IAAAE,YAAA,GAAAT,IAAA,CACXtB,OAAO;IAAPA,OAAO,GAAA+B,YAAA,cAAG,KAAK,GAAAA,YAAA;IAAAC,YAAA,GAAAV,IAAA,CACfW,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,YAAA;IAClBE,EAAE,GAAAZ,IAAA,CAAFY,EAAE;IACFC,QAAQ,GAAAb,IAAA,CAARa,QAAQ;IACLC,IAAI,GAAAnD,wBAAA,CAAAqC,IAAA,EAAA7F,SAAA;EAIT,IAAA4G,gBAAA,GAAuC,IAAAC,sBAAe,EAACf,GAAG,CAAC;IAAAgB,iBAAA,GAAA9E,cAAA,CAAA4E,gBAAA;IAApDG,UAAU,GAAAD,iBAAA;IAAEE,gBAAgB,GAAAF,iBAAA;EACnC,IAAAG,SAAA,GAAsC,IAAAC,gBAAQ,EAAC1B,SAAS,CAAC;IAAA2B,UAAA,GAAAnF,cAAA,CAAAiF,SAAA;IAAlDG,WAAW,GAAAD,UAAA;IAAEE,cAAc,GAAAF,UAAA;EAClC,IAAAG,UAAA,GAAsC,IAAAJ,gBAAQ,EAAC1B,SAAS,CAAC;IAAA+B,UAAA,GAAAvF,cAAA,CAAAsF,UAAA;IAAlDE,WAAW,GAAAD,UAAA;IAAEE,cAAc,GAAAF,UAAA;EAClC,IAAAG,SAAA,GAAkB,IAAAC,iBAAQ,EAAC,CAAC;IAApBlD,KAAK,GAAAiD,SAAA,CAALjD,KAAK;EACb,IAAMmD,OAAO,GAAG,IAAAC,kBAAW,EAACtD,OAAO,EAAEE,KAAK,CAACC,eAAe,CAAC;;EAE3D;EACA,IAAMoD,qBAAqB,GAAG,IAAAC,mBAAW,EAAC,YAAM;IAC9C,IAAI,CAAChB,UAAU,CAACiB,OAAO,EAAE;IACzBX,cAAc,CAACN,UAAU,CAACiB,OAAO,CAACC,qBAAqB,CAAC,CAAC,CAAC;EAC5D,CAAC,EAAE,CAAClB,UAAU,CAAC,CAAC;EAChB,IAAAmB,wBAAiB,EACfnB,UAAU,CAACiB,OAAO,EAClBF,qBACF,CAAC;EAED,IAAMK,kBAAkB,GAAG,IAAAJ,mBAAW,EACpC,UAACK,IAAI,EAAK;IACR,IAAIA,IAAI,KAAK,IAAI,EAAE;IACnBf,cAAc,CAACe,IAAI,CAACH,qBAAqB,CAAC,CAAC,CAAC;IAC5CjB,gBAAgB,CAACoB,IAAI,CAAC;EACxB,CAAC,EACD,CAACpB,gBAAgB,CACnB,CAAC;;EAED;EACA;EACA,IAAMqB,qBAAqB,GAAG,IAAAN,mBAAW,EAAC,YAAM;IAC9CO,MAAM,CAACC,qBAAqB,CAAC,YAAM;MACjC,IAAI,CAACxC,OAAO,EAAE;MACd,IAAAyC,KAAA,GAAoBzC,OAAO;QAAnBiC,OAAO,GAAAQ,KAAA,CAAPR,OAAO;MACf,IAAI,CAACA,OAAO,EAAE;MACdP,cAAc,CAACO,OAAO,CAACC,qBAAqB,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC;EACJ,CAAC,EAAE,CAAClC,OAAO,CAAC,CAAC;EACb,IAAA0C,6BAAsB,EAAC,YAAM;IAC3B,IAAI,CAAClE,OAAO,EAAE;IACd8D,qBAAqB,CAAC,CAAC;EACzB,CAAC,EAAE,CAACA,qBAAqB,EAAE9D,OAAO,CAAC,CAAC;EACpC,IAAA2D,wBAAiB,EAACnC,OAAO,EAAWsC,qBAAqB,CAAC;EAC1D,IAAAK,eAAQ,EACL,OAAOJ,MAAM,KAAK,WAAW,GAAG,IAAI,GAAGA,MAAM,EAC9C,QAAQ,EACRD,qBACF,CAAC;EACD,IAAAK,eAAQ,EAACC,QAAQ,EAAE,QAAQ,EAAEN,qBAAqB,CAAC;EAEnD,IAAAO,iBAAS,EAAC,YAAM;IACd,IAAI,CAAC7C,OAAO,IAAKA,OAAO,CAAwBiC,OAAO,KAAKa,SAAS,EACnE;IACFpB,cAAc,CAAC1B,OAAe,CAAC;EACjC,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAM+C,SAAS,GAAG,IAAAC,eAAO,EACvB;IAAA,OAAMtC,EAAE,eAAAuC,MAAA,CAAeC,IAAI,CAACC,MAAM,CAAC,CAAC,CAAC3G,QAAQ,CAAC,EAAE,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE;EAAA,GAChE,CAACiE,EAAE,CACL,CAAC;;EAED;EACA,IAAAgC,6BAAsB,EAAC,YAAM;IAC3B,IAAI,CAAC1C,OAAO,EAAE;IACd,IAAAoD,KAAA,GAAoBpD,OAAO;MAAnBiC,OAAO,GAAAmB,KAAA,CAAPnB,OAAO;IACf,IAAI,CAACA,OAAO,EAAE;IACd,IAAIA,OAAO,CAACoB,YAAY,CAAC,eAAe,CAAC,KAAK,IAAI,EAAE;MAClDpB,OAAO,CAACqB,YAAY,CAAC,eAAe,EAAE,QAAQ,CAAC;IACjD;IACArB,OAAO,CAACqB,YAAY,CAAC,eAAe,EAAEP,SAAS,CAAC;EAClD,CAAC,EAAE,EAAE,CAAC;EACN,IAAAL,6BAAsB,EAAC,YAAM;IAC3B,IAAI,CAAC1C,OAAO,EAAE;IACd,IAAAuD,KAAA,GAAoBvD,OAAO;MAAnBiC,OAAO,GAAAsB,KAAA,CAAPtB,OAAO;IACf,IAAI,CAACA,OAAO,EAAE;IACdA,OAAO,CAACqB,YAAY,CAAC,eAAe,EAAE9E,OAAO,CAAChC,QAAQ,CAAC,CAAC,CAAC;EAC3D,CAAC,EAAE,CAACgC,OAAO,CAAC,CAAC;;EAEb;EACA,IAAAgF,mBAAA,GAAsB,IAAAC,+BAAkB,EAAC;MACvCC,WAAW,EAAEjC,WAAW;MACxBJ,WAAW,EAAXA,WAAW;MACXnB,SAAS,EAATA,SAAS;MACTE,GAAG,EAAHA,GAAG;MACHE,IAAI,EAAJA;IACF,CAAC,CAAC;IANMtB,GAAG,GAAAwE,mBAAA,CAAHxE,GAAG;IAAEC,IAAI,GAAAuE,mBAAA,CAAJvE,IAAI;;EAQjB;EACA,IAAA0E,sBAAe,EAAC3C,UAAU,EAAEP,OAAO,CAAC;EAEpC,IAAI,CAACoB,OAAO,EAAE,OAAO,IAAI;EAEzB,oBACE/H,OAAA,YAAA8J,aAAA,CAAClK,OAAA,WAAM,qBACLI,OAAA,YAAA8J,aAAA,CAAC/E,SAAS,EAAAlD,QAAA;IACRqD,GAAG,EAAEA,GAAI;IACTC,IAAI,EAAEA,IAAK;IACXT,OAAO,EAAEA,OAAQ;IACjBkC,EAAE,EAAEqC,SAAU;IACdc,IAAI,EAAC;EAAQ,GACTjD,IAAI;IACRb,GAAG,EAAEqC;EAAmB,IAEvBzB,QACQ,CACL,CAAC;AAEb,CACF,CAAC;AAEDf,OAAO,CAACkE,WAAW,GAAG,SAAS;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEjBpE,OAAO","ignoreList":[]}
@@ -7,15 +7,15 @@ exports["default"] = void 0;
7
7
  var _utils = require("@os-design/utils");
8
8
  var _react = require("react");
9
9
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
10
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
11
11
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
12
- 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); }
13
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
14
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
15
- 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; }
12
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
13
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
14
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
15
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
16
16
  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; }
17
17
  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) { _defineProperty(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; }
18
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
18
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
19
19
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
20
20
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
21
21
  var popoverPositionGetters = function popoverPositionGetters(rectKey) {
@@ -1 +1 @@
1
- {"version":3,"file":"usePopoverPosition.js","names":["_utils","require","_react","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","_toPrimitive","toPrimitive","String","Number","popoverPositionGetters","rectKey","sizeKey","windowSizeKey","windowOffsetKey","fitToWindow","start","_ref","elementRect","popoverRect","popoverStart","windowStart","window","windowEnd","elementStart","elementEnd","popoverEnd","before","options","gap","flip","afterPopoverStart","after","afterPopoverEnd","diffStart","diffEnd","beforePopoverStart","_ref2","end","_ref3","center","_ref4","getPopoverPosition","top","left","placementPositionKeysMap","bottom","right","usePopoverPosition","_ref5","_ref5$placement","placement","_ref5$gap","_ref5$flip","bodyFontSize","useFontSize","document","body","gapPx","useMemo","positionKeys","concat","_default","exports"],"sources":["../../../../src/Popover/utils/usePopoverPosition.ts"],"sourcesContent":["import { useFontSize } from '@os-design/utils';\nimport { useMemo } from 'react';\n\ntype Side = 'top' | 'left' | 'right' | 'bottom';\ntype Alignment = 'start' | 'end';\ntype AlignedPlacement = `${Side}-${Alignment}`;\n\nexport type Placement = Side | AlignedPlacement;\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\ninterface UsePopoverPositionProps {\n /**\n * The rect of the element.\n */\n elementRect: Rect;\n /**\n * The rect of the popover.\n */\n popoverRect: 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.5\n */\n gap?: number;\n /**\n * Whether to flip the popover if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n}\n\ninterface PopoverPositionGetterOptions {\n elementRect: Rect;\n popoverRect: Rect;\n gap: number;\n flip: boolean;\n}\ntype PositionKeys = 'before' | 'after' | 'start' | 'end' | 'center';\ntype PopoverPositionGetterFn = (\n options: PopoverPositionGetterOptions\n) => number;\ntype PopoverPositionGetters = Record<PositionKeys, PopoverPositionGetterFn>;\ntype FitToWindow = Pick<\n PopoverPositionGetterOptions,\n 'elementRect' | 'popoverRect'\n>;\n\nconst popoverPositionGetters = (\n rectKey: 'top' | 'left'\n): PopoverPositionGetters => {\n const sizeKey = rectKey === 'top' ? 'height' : 'width';\n const windowSizeKey = rectKey === 'top' ? 'innerHeight' : 'innerWidth';\n const windowOffsetKey = rectKey === 'top' ? 'pageYOffset' : 'pageXOffset';\n\n const fitToWindow = (\n start: number,\n { elementRect, popoverRect }: FitToWindow\n ): number => {\n let popoverStart = start;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n\n // Fit the popover to the end of the window\n if (popoverEnd > windowEnd) {\n if (elementEnd < windowEnd)\n popoverStart = windowEnd - popoverRect[sizeKey];\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementEnd - popoverRect[sizeKey];\n else if (windowEnd - elementStart > popoverRect[sizeKey])\n popoverStart = windowEnd - popoverRect[sizeKey];\n else popoverStart = elementStart;\n }\n\n // Fit the popover to the beginning of the window\n if (popoverStart < windowStart) {\n if (elementStart > windowStart) popoverStart = windowStart;\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementStart;\n else if (elementEnd - windowStart > popoverRect[sizeKey])\n popoverStart = windowStart;\n else popoverStart = elementEnd - popoverRect[sizeKey];\n }\n\n return popoverStart;\n };\n\n return {\n before(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart = elementStart - popoverRect[sizeKey] - gap;\n if (flip && popoverStart < windowStart) {\n const afterPopoverStart = this.after({ ...options, flip: false });\n const afterPopoverEnd = afterPopoverStart + popoverRect[sizeKey];\n const diffStart = windowStart - popoverStart;\n const diffEnd = afterPopoverEnd - windowEnd;\n if (afterPopoverEnd <= windowEnd || diffStart > diffEnd)\n return afterPopoverStart;\n }\n return popoverStart;\n },\n after(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd + gap;\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n if (flip && popoverEnd > windowEnd) {\n const beforePopoverStart = this.before({ ...options, flip: false });\n const diffStart = windowStart - beforePopoverStart;\n const diffEnd = popoverEnd - windowEnd;\n if (beforePopoverStart >= windowStart || diffEnd > diffStart)\n return beforePopoverStart;\n }\n return popoverStart;\n },\n start: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n return fitToWindow(elementStart, { elementRect, popoverRect });\n },\n end: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd - popoverRect[sizeKey];\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n center: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart =\n elementStart + (elementRect[sizeKey] - popoverRect[sizeKey]) / 2;\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n };\n};\n\nconst getPopoverPosition = (\n top: PositionKeys,\n left: PositionKeys,\n options: PopoverPositionGetterOptions\n) => ({\n top: popoverPositionGetters('top')[top](options),\n left: popoverPositionGetters('left')[left](options),\n});\n\ntype PlacementPositionKeysMap = Record<Placement, [PositionKeys, PositionKeys]>;\nconst placementPositionKeysMap: PlacementPositionKeysMap = {\n top: ['before', 'center'],\n bottom: ['after', 'center'],\n left: ['center', 'before'],\n right: ['center', 'after'],\n 'top-start': ['before', 'start'],\n 'top-end': ['before', 'end'],\n 'bottom-start': ['after', 'start'],\n 'bottom-end': ['after', 'end'],\n 'left-start': ['start', 'before'],\n 'left-end': ['end', 'before'],\n 'right-start': ['start', 'after'],\n 'right-end': ['end', 'after'],\n};\n\ninterface PopoverPosition {\n top: number;\n left: number;\n}\n\n/**\n * Computes the position of the popover.\n * Note that you must change the elementRect when the scroll and resize events of the parent scrollable container occur.\n * In most cases, it will be the window.\n */\nconst usePopoverPosition = ({\n elementRect,\n popoverRect,\n placement = 'top',\n gap = 0.5,\n flip = true,\n}: UsePopoverPositionProps): PopoverPosition => {\n const bodyFontSize = useFontSize(document.body);\n const gapPx = useMemo(() => gap * bodyFontSize, [gap, bodyFontSize]);\n\n const positionKeys = useMemo(() => {\n if (typeof placement === 'string' && !!placementPositionKeysMap[placement])\n return placementPositionKeysMap[placement];\n return placementPositionKeysMap.top;\n }, [placement]);\n\n return getPopoverPosition(...positionKeys, {\n elementRect,\n popoverRect,\n gap: gapPx,\n flip,\n });\n};\n\nexport default usePopoverPosition;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"usePopoverPosition.js","names":["_utils","require","_react","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","r","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","a","_arrayLikeToArray","t","toString","call","slice","name","Array","from","test","isArray","length","e","n","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","toPrimitive","String","Number","popoverPositionGetters","rectKey","sizeKey","windowSizeKey","windowOffsetKey","fitToWindow","start","_ref","elementRect","popoverRect","popoverStart","windowStart","window","windowEnd","elementStart","elementEnd","popoverEnd","before","options","gap","flip","afterPopoverStart","after","afterPopoverEnd","diffStart","diffEnd","beforePopoverStart","_ref2","end","_ref3","center","_ref4","getPopoverPosition","top","left","placementPositionKeysMap","bottom","right","usePopoverPosition","_ref5","_ref5$placement","placement","_ref5$gap","_ref5$flip","bodyFontSize","useFontSize","document","body","gapPx","useMemo","positionKeys","concat","_default","exports"],"sources":["../../../../src/Popover/utils/usePopoverPosition.ts"],"sourcesContent":["import { useFontSize } from '@os-design/utils';\nimport { useMemo } from 'react';\n\ntype Side = 'top' | 'left' | 'right' | 'bottom';\ntype Alignment = 'start' | 'end';\ntype AlignedPlacement = `${Side}-${Alignment}`;\n\nexport type Placement = Side | AlignedPlacement;\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\ninterface UsePopoverPositionProps {\n /**\n * The rect of the element.\n */\n elementRect: Rect;\n /**\n * The rect of the popover.\n */\n popoverRect: 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.5\n */\n gap?: number;\n /**\n * Whether to flip the popover if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n}\n\ninterface PopoverPositionGetterOptions {\n elementRect: Rect;\n popoverRect: Rect;\n gap: number;\n flip: boolean;\n}\ntype PositionKeys = 'before' | 'after' | 'start' | 'end' | 'center';\ntype PopoverPositionGetterFn = (\n options: PopoverPositionGetterOptions\n) => number;\ntype PopoverPositionGetters = Record<PositionKeys, PopoverPositionGetterFn>;\ntype FitToWindow = Pick<\n PopoverPositionGetterOptions,\n 'elementRect' | 'popoverRect'\n>;\n\nconst popoverPositionGetters = (\n rectKey: 'top' | 'left'\n): PopoverPositionGetters => {\n const sizeKey = rectKey === 'top' ? 'height' : 'width';\n const windowSizeKey = rectKey === 'top' ? 'innerHeight' : 'innerWidth';\n const windowOffsetKey = rectKey === 'top' ? 'pageYOffset' : 'pageXOffset';\n\n const fitToWindow = (\n start: number,\n { elementRect, popoverRect }: FitToWindow\n ): number => {\n let popoverStart = start;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n\n // Fit the popover to the end of the window\n if (popoverEnd > windowEnd) {\n if (elementEnd < windowEnd)\n popoverStart = windowEnd - popoverRect[sizeKey];\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementEnd - popoverRect[sizeKey];\n else if (windowEnd - elementStart > popoverRect[sizeKey])\n popoverStart = windowEnd - popoverRect[sizeKey];\n else popoverStart = elementStart;\n }\n\n // Fit the popover to the beginning of the window\n if (popoverStart < windowStart) {\n if (elementStart > windowStart) popoverStart = windowStart;\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementStart;\n else if (elementEnd - windowStart > popoverRect[sizeKey])\n popoverStart = windowStart;\n else popoverStart = elementEnd - popoverRect[sizeKey];\n }\n\n return popoverStart;\n };\n\n return {\n before(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart = elementStart - popoverRect[sizeKey] - gap;\n if (flip && popoverStart < windowStart) {\n const afterPopoverStart = this.after({ ...options, flip: false });\n const afterPopoverEnd = afterPopoverStart + popoverRect[sizeKey];\n const diffStart = windowStart - popoverStart;\n const diffEnd = afterPopoverEnd - windowEnd;\n if (afterPopoverEnd <= windowEnd || diffStart > diffEnd)\n return afterPopoverStart;\n }\n return popoverStart;\n },\n after(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd + gap;\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n if (flip && popoverEnd > windowEnd) {\n const beforePopoverStart = this.before({ ...options, flip: false });\n const diffStart = windowStart - beforePopoverStart;\n const diffEnd = popoverEnd - windowEnd;\n if (beforePopoverStart >= windowStart || diffEnd > diffStart)\n return beforePopoverStart;\n }\n return popoverStart;\n },\n start: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n return fitToWindow(elementStart, { elementRect, popoverRect });\n },\n end: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd - popoverRect[sizeKey];\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n center: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart =\n elementStart + (elementRect[sizeKey] - popoverRect[sizeKey]) / 2;\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n };\n};\n\nconst getPopoverPosition = (\n top: PositionKeys,\n left: PositionKeys,\n options: PopoverPositionGetterOptions\n) => ({\n top: popoverPositionGetters('top')[top](options),\n left: popoverPositionGetters('left')[left](options),\n});\n\ntype PlacementPositionKeysMap = Record<Placement, [PositionKeys, PositionKeys]>;\nconst placementPositionKeysMap: PlacementPositionKeysMap = {\n top: ['before', 'center'],\n bottom: ['after', 'center'],\n left: ['center', 'before'],\n right: ['center', 'after'],\n 'top-start': ['before', 'start'],\n 'top-end': ['before', 'end'],\n 'bottom-start': ['after', 'start'],\n 'bottom-end': ['after', 'end'],\n 'left-start': ['start', 'before'],\n 'left-end': ['end', 'before'],\n 'right-start': ['start', 'after'],\n 'right-end': ['end', 'after'],\n};\n\ninterface PopoverPosition {\n top: number;\n left: number;\n}\n\n/**\n * Computes the position of the popover.\n * Note that you must change the elementRect when the scroll and resize events of the parent scrollable container occur.\n * In most cases, it will be the window.\n */\nconst usePopoverPosition = ({\n elementRect,\n popoverRect,\n placement = 'top',\n gap = 0.5,\n flip = true,\n}: UsePopoverPositionProps): PopoverPosition => {\n const bodyFontSize = useFontSize(document.body);\n const gapPx = useMemo(() => gap * bodyFontSize, [gap, bodyFontSize]);\n\n const positionKeys = useMemo(() => {\n if (typeof placement === 'string' && !!placementPositionKeysMap[placement])\n return placementPositionKeysMap[placement];\n return placementPositionKeysMap.top;\n }, [placement]);\n\n return getPopoverPosition(...positionKeys, {\n elementRect,\n popoverRect,\n gap: gapPx,\n flip,\n });\n};\n\nexport default usePopoverPosition;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAAgC,SAAAE,QAAAC,CAAA,sCAAAD,OAAA,wBAAAE,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAF,CAAA,kBAAAA,CAAA,gBAAAA,CAAA,WAAAA,CAAA,yBAAAC,MAAA,IAAAD,CAAA,CAAAG,WAAA,KAAAF,MAAA,IAAAD,CAAA,KAAAC,MAAA,CAAAG,SAAA,qBAAAJ,CAAA,KAAAD,OAAA,CAAAC,CAAA;AAAA,SAAAK,mBAAAC,CAAA,WAAAC,kBAAA,CAAAD,CAAA,KAAAE,gBAAA,CAAAF,CAAA,KAAAG,2BAAA,CAAAH,CAAA,KAAAI,kBAAA;AAAA,SAAAA,mBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAH,CAAA,EAAAM,CAAA,QAAAN,CAAA,2BAAAA,CAAA,SAAAO,iBAAA,CAAAP,CAAA,EAAAM,CAAA,OAAAE,CAAA,MAAAC,QAAA,CAAAC,IAAA,CAAAV,CAAA,EAAAW,KAAA,6BAAAH,CAAA,IAAAR,CAAA,CAAAH,WAAA,KAAAW,CAAA,GAAAR,CAAA,CAAAH,WAAA,CAAAe,IAAA,aAAAJ,CAAA,cAAAA,CAAA,GAAAK,KAAA,CAAAC,IAAA,CAAAd,CAAA,oBAAAQ,CAAA,+CAAAO,IAAA,CAAAP,CAAA,IAAAD,iBAAA,CAAAP,CAAA,EAAAM,CAAA;AAAA,SAAAJ,iBAAAF,CAAA,8BAAAL,MAAA,YAAAK,CAAA,CAAAL,MAAA,CAAAC,QAAA,aAAAI,CAAA,uBAAAa,KAAA,CAAAC,IAAA,CAAAd,CAAA;AAAA,SAAAC,mBAAAD,CAAA,QAAAa,KAAA,CAAAG,OAAA,CAAAhB,CAAA,UAAAO,iBAAA,CAAAP,CAAA;AAAA,SAAAO,kBAAAP,CAAA,EAAAM,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAN,CAAA,CAAAiB,MAAA,MAAAX,CAAA,GAAAN,CAAA,CAAAiB,MAAA,YAAAC,CAAA,MAAAC,CAAA,GAAAN,KAAA,CAAAP,CAAA,GAAAY,CAAA,GAAAZ,CAAA,EAAAY,CAAA,IAAAC,CAAA,CAAAD,CAAA,IAAAlB,CAAA,CAAAkB,CAAA,UAAAC,CAAA;AAAA,SAAAC,QAAAF,CAAA,EAAAlB,CAAA,QAAAQ,CAAA,GAAAa,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAA7B,CAAA,GAAA2B,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAlB,CAAA,KAAAN,CAAA,GAAAA,CAAA,CAAA8B,MAAA,WAAAxB,CAAA,WAAAqB,MAAA,CAAAI,wBAAA,CAAAP,CAAA,EAAAlB,CAAA,EAAA0B,UAAA,OAAAlB,CAAA,CAAAmB,IAAA,CAAAC,KAAA,CAAApB,CAAA,EAAAd,CAAA,YAAAc,CAAA;AAAA,SAAAqB,cAAAX,CAAA,aAAAlB,CAAA,MAAAA,CAAA,GAAA8B,SAAA,CAAAb,MAAA,EAAAjB,CAAA,UAAAQ,CAAA,WAAAsB,SAAA,CAAA9B,CAAA,IAAA8B,SAAA,CAAA9B,CAAA,QAAAA,CAAA,OAAAoB,OAAA,CAAAC,MAAA,CAAAb,CAAA,OAAAuB,OAAA,WAAA/B,CAAA,IAAAgC,eAAA,CAAAd,CAAA,EAAAlB,CAAA,EAAAQ,CAAA,CAAAR,CAAA,SAAAqB,MAAA,CAAAY,yBAAA,GAAAZ,MAAA,CAAAa,gBAAA,CAAAhB,CAAA,EAAAG,MAAA,CAAAY,yBAAA,CAAAzB,CAAA,KAAAY,OAAA,CAAAC,MAAA,CAAAb,CAAA,GAAAuB,OAAA,WAAA/B,CAAA,IAAAqB,MAAA,CAAAc,cAAA,CAAAjB,CAAA,EAAAlB,CAAA,EAAAqB,MAAA,CAAAI,wBAAA,CAAAjB,CAAA,EAAAR,CAAA,iBAAAkB,CAAA;AAAA,SAAAc,gBAAAd,CAAA,EAAAlB,CAAA,EAAAQ,CAAA,YAAAR,CAAA,GAAAoC,cAAA,CAAApC,CAAA,MAAAkB,CAAA,GAAAG,MAAA,CAAAc,cAAA,CAAAjB,CAAA,EAAAlB,CAAA,IAAAqC,KAAA,EAAA7B,CAAA,EAAAkB,UAAA,MAAAY,YAAA,MAAAC,QAAA,UAAArB,CAAA,CAAAlB,CAAA,IAAAQ,CAAA,EAAAU,CAAA;AAAA,SAAAkB,eAAA5B,CAAA,QAAAgC,CAAA,GAAAC,YAAA,CAAAjC,CAAA,gCAAAf,OAAA,CAAA+C,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAjC,CAAA,EAAAR,CAAA,oBAAAP,OAAA,CAAAe,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAU,CAAA,GAAAV,CAAA,CAAAb,MAAA,CAAA+C,WAAA,kBAAAxB,CAAA,QAAAsB,CAAA,GAAAtB,CAAA,CAAAR,IAAA,CAAAF,CAAA,EAAAR,CAAA,gCAAAP,OAAA,CAAA+C,CAAA,UAAAA,CAAA,YAAAnC,SAAA,yEAAAL,CAAA,GAAA2C,MAAA,GAAAC,MAAA,EAAApC,CAAA;AAyDhC,IAAMqC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAC1BC,OAAuB,EACI;EAC3B,IAAMC,OAAO,GAAGD,OAAO,KAAK,KAAK,GAAG,QAAQ,GAAG,OAAO;EACtD,IAAME,aAAa,GAAGF,OAAO,KAAK,KAAK,GAAG,aAAa,GAAG,YAAY;EACtE,IAAMG,eAAe,GAAGH,OAAO,KAAK,KAAK,GAAG,aAAa,GAAG,aAAa;EAEzE,IAAMI,WAAW,GAAG,SAAdA,WAAWA,CACfC,KAAa,EAAAC,IAAA,EAEF;IAAA,IADTC,WAAW,GAAAD,IAAA,CAAXC,WAAW;MAAEC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IAE1B,IAAIC,YAAY,GAAGJ,KAAK;IACxB,IAAMK,WAAW,GAAGC,MAAM,CAACR,eAAe,CAAC;IAC3C,IAAMS,SAAS,GAAGF,WAAW,GAAGC,MAAM,CAACT,aAAa,CAAC;IACrD,IAAMW,YAAY,GAAGH,WAAW,GAAGH,WAAW,CAACP,OAAO,CAAC;IACvD,IAAMc,UAAU,GAAGD,YAAY,GAAGN,WAAW,CAACN,OAAO,CAAC;IACtD,IAAMc,UAAU,GAAGN,YAAY,GAAGD,WAAW,CAACP,OAAO,CAAC;;IAEtD;IACA,IAAIc,UAAU,GAAGH,SAAS,EAAE;MAC1B,IAAIE,UAAU,GAAGF,SAAS,EACxBH,YAAY,GAAGG,SAAS,GAAGJ,WAAW,CAACP,OAAO,CAAC,CAAC,KAC7C,IAAIO,WAAW,CAACP,OAAO,CAAC,GAAGM,WAAW,CAACN,OAAO,CAAC,EAClDQ,YAAY,GAAGK,UAAU,GAAGN,WAAW,CAACP,OAAO,CAAC,CAAC,KAC9C,IAAIW,SAAS,GAAGC,YAAY,GAAGL,WAAW,CAACP,OAAO,CAAC,EACtDQ,YAAY,GAAGG,SAAS,GAAGJ,WAAW,CAACP,OAAO,CAAC,CAAC,KAC7CQ,YAAY,GAAGI,YAAY;IAClC;;IAEA;IACA,IAAIJ,YAAY,GAAGC,WAAW,EAAE;MAC9B,IAAIG,YAAY,GAAGH,WAAW,EAAED,YAAY,GAAGC,WAAW,CAAC,KACtD,IAAIF,WAAW,CAACP,OAAO,CAAC,GAAGM,WAAW,CAACN,OAAO,CAAC,EAClDQ,YAAY,GAAGI,YAAY,CAAC,KACzB,IAAIC,UAAU,GAAGJ,WAAW,GAAGF,WAAW,CAACP,OAAO,CAAC,EACtDQ,YAAY,GAAGC,WAAW,CAAC,KACxBD,YAAY,GAAGK,UAAU,GAAGN,WAAW,CAACP,OAAO,CAAC;IACvD;IAEA,OAAOQ,YAAY;EACrB,CAAC;EAED,OAAO;IACLO,MAAM,WAANA,MAAMA,CAACC,OAAO,EAAE;MACd,IAAQV,WAAW,GAA6BU,OAAO,CAA/CV,WAAW;QAAEC,WAAW,GAAgBS,OAAO,CAAlCT,WAAW;QAAEU,GAAG,GAAWD,OAAO,CAArBC,GAAG;QAAEC,IAAI,GAAKF,OAAO,CAAhBE,IAAI;MAC3C,IAAMT,WAAW,GAAGC,MAAM,CAACR,eAAe,CAAC;MAC3C,IAAMS,SAAS,GAAGF,WAAW,GAAGC,MAAM,CAACT,aAAa,CAAC;MACrD,IAAMW,YAAY,GAAGH,WAAW,GAAGH,WAAW,CAACP,OAAO,CAAC;MACvD,IAAMS,YAAY,GAAGI,YAAY,GAAGL,WAAW,CAACP,OAAO,CAAC,GAAGiB,GAAG;MAC9D,IAAIC,IAAI,IAAIV,YAAY,GAAGC,WAAW,EAAE;QACtC,IAAMU,iBAAiB,GAAG,IAAI,CAACC,KAAK,CAAAtC,aAAA,CAAAA,aAAA,KAAMkC,OAAO;UAAEE,IAAI,EAAE;QAAK,EAAE,CAAC;QACjE,IAAMG,eAAe,GAAGF,iBAAiB,GAAGZ,WAAW,CAACP,OAAO,CAAC;QAChE,IAAMsB,SAAS,GAAGb,WAAW,GAAGD,YAAY;QAC5C,IAAMe,OAAO,GAAGF,eAAe,GAAGV,SAAS;QAC3C,IAAIU,eAAe,IAAIV,SAAS,IAAIW,SAAS,GAAGC,OAAO,EACrD,OAAOJ,iBAAiB;MAC5B;MACA,OAAOX,YAAY;IACrB,CAAC;IACDY,KAAK,WAALA,KAAKA,CAACJ,OAAO,EAAE;MACb,IAAQV,WAAW,GAA6BU,OAAO,CAA/CV,WAAW;QAAEC,WAAW,GAAgBS,OAAO,CAAlCT,WAAW;QAAEU,GAAG,GAAWD,OAAO,CAArBC,GAAG;QAAEC,IAAI,GAAKF,OAAO,CAAhBE,IAAI;MAC3C,IAAMT,WAAW,GAAGC,MAAM,CAACR,eAAe,CAAC;MAC3C,IAAMS,SAAS,GAAGF,WAAW,GAAGC,MAAM,CAACT,aAAa,CAAC;MACrD,IAAMW,YAAY,GAAGH,WAAW,GAAGH,WAAW,CAACP,OAAO,CAAC;MACvD,IAAMc,UAAU,GAAGD,YAAY,GAAGN,WAAW,CAACN,OAAO,CAAC;MACtD,IAAMQ,YAAY,GAAGK,UAAU,GAAGI,GAAG;MACrC,IAAMH,UAAU,GAAGN,YAAY,GAAGD,WAAW,CAACP,OAAO,CAAC;MACtD,IAAIkB,IAAI,IAAIJ,UAAU,GAAGH,SAAS,EAAE;QAClC,IAAMa,kBAAkB,GAAG,IAAI,CAACT,MAAM,CAAAjC,aAAA,CAAAA,aAAA,KAAMkC,OAAO;UAAEE,IAAI,EAAE;QAAK,EAAE,CAAC;QACnE,IAAMI,SAAS,GAAGb,WAAW,GAAGe,kBAAkB;QAClD,IAAMD,OAAO,GAAGT,UAAU,GAAGH,SAAS;QACtC,IAAIa,kBAAkB,IAAIf,WAAW,IAAIc,OAAO,GAAGD,SAAS,EAC1D,OAAOE,kBAAkB;MAC7B;MACA,OAAOhB,YAAY;IACrB,CAAC;IACDJ,KAAK,EAAE,SAAPA,KAAKA,CAAAqB,KAAA,EAAoC;MAAA,IAA/BnB,WAAW,GAAAmB,KAAA,CAAXnB,WAAW;QAAEC,WAAW,GAAAkB,KAAA,CAAXlB,WAAW;MAChC,IAAME,WAAW,GAAGC,MAAM,CAACR,eAAe,CAAC;MAC3C,IAAMU,YAAY,GAAGH,WAAW,GAAGH,WAAW,CAACP,OAAO,CAAC;MACvD,OAAOI,WAAW,CAACS,YAAY,EAAE;QAAEN,WAAW,EAAXA,WAAW;QAAEC,WAAW,EAAXA;MAAY,CAAC,CAAC;IAChE,CAAC;IACDmB,GAAG,EAAE,SAALA,GAAGA,CAAAC,KAAA,EAAoC;MAAA,IAA/BrB,WAAW,GAAAqB,KAAA,CAAXrB,WAAW;QAAEC,WAAW,GAAAoB,KAAA,CAAXpB,WAAW;MAC9B,IAAME,WAAW,GAAGC,MAAM,CAACR,eAAe,CAAC;MAC3C,IAAMU,YAAY,GAAGH,WAAW,GAAGH,WAAW,CAACP,OAAO,CAAC;MACvD,IAAMc,UAAU,GAAGD,YAAY,GAAGN,WAAW,CAACN,OAAO,CAAC;MACtD,IAAMQ,YAAY,GAAGK,UAAU,GAAGN,WAAW,CAACP,OAAO,CAAC;MACtD,OAAOG,WAAW,CAACK,YAAY,EAAE;QAAEF,WAAW,EAAXA,WAAW;QAAEC,WAAW,EAAXA;MAAY,CAAC,CAAC;IAChE,CAAC;IACDqB,MAAM,EAAE,SAARA,MAAMA,CAAAC,KAAA,EAAoC;MAAA,IAA/BvB,WAAW,GAAAuB,KAAA,CAAXvB,WAAW;QAAEC,WAAW,GAAAsB,KAAA,CAAXtB,WAAW;MACjC,IAAME,WAAW,GAAGC,MAAM,CAACR,eAAe,CAAC;MAC3C,IAAMU,YAAY,GAAGH,WAAW,GAAGH,WAAW,CAACP,OAAO,CAAC;MACvD,IAAMS,YAAY,GAChBI,YAAY,GAAG,CAACN,WAAW,CAACN,OAAO,CAAC,GAAGO,WAAW,CAACP,OAAO,CAAC,IAAI,CAAC;MAClE,OAAOG,WAAW,CAACK,YAAY,EAAE;QAAEF,WAAW,EAAXA,WAAW;QAAEC,WAAW,EAAXA;MAAY,CAAC,CAAC;IAChE;EACF,CAAC;AACH,CAAC;AAED,IAAMuB,kBAAkB,GAAG,SAArBA,kBAAkBA,CACtBC,GAAiB,EACjBC,IAAkB,EAClBhB,OAAqC;EAAA,OACjC;IACJe,GAAG,EAAEjC,sBAAsB,CAAC,KAAK,CAAC,CAACiC,GAAG,CAAC,CAACf,OAAO,CAAC;IAChDgB,IAAI,EAAElC,sBAAsB,CAAC,MAAM,CAAC,CAACkC,IAAI,CAAC,CAAChB,OAAO;EACpD,CAAC;AAAA,CAAC;AAGF,IAAMiB,wBAAkD,GAAG;EACzDF,GAAG,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;EACzBG,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;EAC3BF,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;EAC1BG,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;EAC1B,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;EAChC,SAAS,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;EAC5B,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;EAClC,YAAY,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC;EAC9B,YAAY,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;EACjC,UAAU,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;EAC7B,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;EACjC,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO;AAC9B,CAAC;AAOD;AACA;AACA;AACA;AACA;AACA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,KAAA,EAMwB;EAAA,IAL9C/B,WAAW,GAAA+B,KAAA,CAAX/B,WAAW;IACXC,WAAW,GAAA8B,KAAA,CAAX9B,WAAW;IAAA+B,eAAA,GAAAD,KAAA,CACXE,SAAS;IAATA,SAAS,GAAAD,eAAA,cAAG,KAAK,GAAAA,eAAA;IAAAE,SAAA,GAAAH,KAAA,CACjBpB,GAAG;IAAHA,GAAG,GAAAuB,SAAA,cAAG,GAAG,GAAAA,SAAA;IAAAC,UAAA,GAAAJ,KAAA,CACTnB,IAAI;IAAJA,IAAI,GAAAuB,UAAA,cAAG,IAAI,GAAAA,UAAA;EAEX,IAAMC,YAAY,GAAG,IAAAC,kBAAW,EAACC,QAAQ,CAACC,IAAI,CAAC;EAC/C,IAAMC,KAAK,GAAG,IAAAC,cAAO,EAAC;IAAA,OAAM9B,GAAG,GAAGyB,YAAY;EAAA,GAAE,CAACzB,GAAG,EAAEyB,YAAY,CAAC,CAAC;EAEpE,IAAMM,YAAY,GAAG,IAAAD,cAAO,EAAC,YAAM;IACjC,IAAI,OAAOR,SAAS,KAAK,QAAQ,IAAI,CAAC,CAACN,wBAAwB,CAACM,SAAS,CAAC,EACxE,OAAON,wBAAwB,CAACM,SAAS,CAAC;IAC5C,OAAON,wBAAwB,CAACF,GAAG;EACrC,CAAC,EAAE,CAACQ,SAAS,CAAC,CAAC;EAEf,OAAOT,kBAAkB,CAAAjD,KAAA,SAAA7B,kBAAA,CAAIgG,YAAY,EAAAC,MAAA,EAAE;IACzC3C,WAAW,EAAXA,WAAW;IACXC,WAAW,EAAXA,WAAW;IACXU,GAAG,EAAE6B,KAAK;IACV5B,IAAI,EAAJA;EACF,CAAC,GAAC;AACJ,CAAC;AAAC,IAAAgC,QAAA,GAAAC,OAAA,cAEaf,kBAAkB","ignoreList":[]}
@@ -14,11 +14,11 @@ var _excluded = ["percent", "text", "height"];
14
14
  var _templateObject, _templateObject2, _templateObject3, _templateObject4;
15
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
16
16
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
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); }
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; }
20
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
21
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
18
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
19
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
20
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
21
+ function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
22
22
  var Container = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('size'))(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n ", ";\n"])), _styles.sizeStyles);
23
23
  var Trail = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('height'))(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n width: 100%;\n background-color: ", ";\n border-radius: ", ";\n overflow: hidden; // To hide the border of the progress bar\n"])), function (p) {
24
24
  return (0, _theming.clr)(p.theme.progressColorTrail);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_theming","_utils","_react","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","Container","styled","omitEmotionProps","sizeStyles","Trail","p","clr","theme","progressColorTrail","concat","height","Stroke","percent","progressColorStroke","progressColorStrokeSuccess","transitionStyles","Text","div","progressColorPercentage","Progress","forwardRef","_ref","ref","_ref$percent","text","_ref$height","rest","validPercent","useMemo","textId","Math","random","toString","createElement","role","id","displayName","_default","exports"],"sources":["../../../src/Progress/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { WithSize, sizeStyles, transitionStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef, useMemo } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ProgressProps extends JsxDivProps, WithSize {\n /**\n * The percentage of completion.\n * @default 0\n */\n percent?: number;\n /**\n * The text that is displayed to the right of the progress bar.\n * @default undefined\n */\n text?: string;\n /**\n * The height of the progress bar.\n * @default 0.5em\n */\n height?: string;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n align-items: center;\n ${sizeStyles};\n`;\n\ntype TrailProps = Required<Pick<ProgressProps, 'height'>>;\nconst Trail = styled('div', omitEmotionProps('height'))<TrailProps>`\n width: 100%;\n background-color: ${(p) => clr(p.theme.progressColorTrail)};\n border-radius: ${(p) => `calc(${p.height} / 2)`};\n overflow: hidden; // To hide the border of the progress bar\n`;\n\ntype StrokeProps = Required<Pick<ProgressProps, 'percent' | 'height'>>;\nconst Stroke = styled(\n 'div',\n omitEmotionProps('percent', 'height')\n)<StrokeProps>`\n width: ${(p) => p.percent}%;\n height: ${(p) => p.height};\n border-radius: 0 ${(p) => `calc(${p.height} / 2)`}\n ${(p) => `calc(${p.height} / 2)`} 0;\n background-color: ${(p) =>\n p.percent < 100\n ? clr(p.theme.progressColorStroke)\n : clr(p.theme.progressColorStrokeSuccess)};\n ${transitionStyles('width', 'background-color')};\n`;\n\nconst Text = styled.div`\n margin-left: 0.5em;\n color: ${(p) => clr(p.theme.progressColorPercentage)};\n line-height: 1;\n`;\n\n/**\n * The progress bar.\n */\nconst Progress = forwardRef<HTMLDivElement, ProgressProps>(\n ({ percent = 0, text, height = '0.5em', ...rest }, ref) => {\n const validPercent = useMemo(() => {\n if (percent < 0) return 0;\n if (percent > 100) return 100;\n return percent;\n }, [percent]);\n\n const textId = useMemo(\n () => `progress-bar-text-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n\n return (\n <Container\n role='progressbar'\n aria-valuenow={validPercent}\n aria-valuemin={0}\n aria-valuemax={100}\n aria-describedby={textId}\n {...rest}\n ref={ref}\n >\n <Trail height={height}>\n <Stroke percent={validPercent} height={height} />\n </Trail>\n {text && <Text id={textId}>{text}</Text>}\n </Container>\n );\n }\n);\n\nProgress.displayName = 'Progress';\n\nexport default Progress;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_theming","_utils","_react","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","includes","propertyIsEnumerable","_taggedTemplateLiteral","slice","freeze","defineProperties","raw","value","Container","styled","omitEmotionProps","sizeStyles","Trail","p","clr","theme","progressColorTrail","concat","height","Stroke","percent","progressColorStroke","progressColorStrokeSuccess","transitionStyles","Text","div","progressColorPercentage","Progress","forwardRef","_ref","ref","_ref$percent","text","_ref$height","rest","validPercent","useMemo","textId","Math","random","toString","createElement","role","id","displayName","_default","exports"],"sources":["../../../src/Progress/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { WithSize, sizeStyles, transitionStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef, useMemo } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ProgressProps extends JsxDivProps, WithSize {\n /**\n * The percentage of completion.\n * @default 0\n */\n percent?: number;\n /**\n * The text that is displayed to the right of the progress bar.\n * @default undefined\n */\n text?: string;\n /**\n * The height of the progress bar.\n * @default 0.5em\n */\n height?: string;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n align-items: center;\n ${sizeStyles};\n`;\n\ntype TrailProps = Required<Pick<ProgressProps, 'height'>>;\nconst Trail = styled('div', omitEmotionProps('height'))<TrailProps>`\n width: 100%;\n background-color: ${(p) => clr(p.theme.progressColorTrail)};\n border-radius: ${(p) => `calc(${p.height} / 2)`};\n overflow: hidden; // To hide the border of the progress bar\n`;\n\ntype StrokeProps = Required<Pick<ProgressProps, 'percent' | 'height'>>;\nconst Stroke = styled(\n 'div',\n omitEmotionProps('percent', 'height')\n)<StrokeProps>`\n width: ${(p) => p.percent}%;\n height: ${(p) => p.height};\n border-radius: 0 ${(p) => `calc(${p.height} / 2)`}\n ${(p) => `calc(${p.height} / 2)`} 0;\n background-color: ${(p) =>\n p.percent < 100\n ? clr(p.theme.progressColorStroke)\n : clr(p.theme.progressColorStrokeSuccess)};\n ${transitionStyles('width', 'background-color')};\n`;\n\nconst Text = styled.div`\n margin-left: 0.5em;\n color: ${(p) => clr(p.theme.progressColorPercentage)};\n line-height: 1;\n`;\n\n/**\n * The progress bar.\n */\nconst Progress = forwardRef<HTMLDivElement, ProgressProps>(\n ({ percent = 0, text, height = '0.5em', ...rest }, ref) => {\n const validPercent = useMemo(() => {\n if (percent < 0) return 0;\n if (percent > 100) return 100;\n return percent;\n }, [percent]);\n\n const textId = useMemo(\n () => `progress-bar-text-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n\n return (\n <Container\n role='progressbar'\n aria-valuenow={validPercent}\n aria-valuemin={0}\n aria-valuemax={100}\n aria-describedby={textId}\n {...rest}\n ref={ref}\n >\n <Trail height={height}>\n <Stroke percent={validPercent} height={height} />\n </Trail>\n {text && <Text id={textId}>{text}</Text>}\n </Container>\n );\n }\n);\n\nProgress.displayName = 'Progress';\n\nexport default Progress;\n"],"mappings":"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","ignoreList":[]}
@@ -17,17 +17,17 @@ var _excluded = ["options", "wide", "disabled", "value", "defaultValue", "onChan
17
17
  var _templateObject, _templateObject2, _templateObject3, _templateObject4;
18
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
19
19
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
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); }
22
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
20
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
21
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
22
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
23
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."); }
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); }
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; }
24
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
25
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
26
26
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
27
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
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; }
29
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
30
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
27
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
28
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
29
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
30
+ function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
31
31
  var wideDefaultStyles = function wideDefaultStyles(p) {
32
32
  return p.wide === 'default' && (0, _react.css)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n ", " {\n width: 100%;\n & > button {\n flex: 1;\n }\n }\n "])), _media.m.max.xxs);
33
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_excluded2","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","wideDefaultStyles","p","wide","css","m","max","xxs","wideAlwaysStyles","Container","styled","omitEmotionProps","theme","borderRadius","disabled","clr","buttonDisabledGhostColorText","colorPrimary","StyledButton","Button","RadioGroup","forwardRef","_ref","ref","_ref$options","options","_ref$wide","_ref$disabled","defaultValue","_ref$onChange","onChange","size","rest","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","createElement","map","_ref2","title","valueOption","disabledOption","_ref2$onClick","onClick","buttonRest","type","displayName","_default","exports"],"sources":["../../../src/RadioGroup/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface RadioGroupOption\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * The title of the option.\n */\n title: string;\n /**\n * The value of the option.\n */\n value: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface RadioGroupProps extends JsxDivProps, WithSize {\n /**\n * Options of the radio group.\n * @default undefined\n */\n options?: RadioGroupOption[];\n /**\n * Whether the radio group has full width.\n * Possible values:\n * `default` – the radio group has full width if the screen width is less than xs;\n * `always` – the radio group always has full width;\n * `never` – the radio group never has full width.\n * @default default\n */\n wide?: 'default' | 'always' | 'never';\n /**\n * Whether the radio group is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Selected option.\n * @default false\n */\n value?: string;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string) => void;\n}\n\nconst wideDefaultStyles = (p) =>\n p.wide === 'default' &&\n css`\n ${m.max.xxs} {\n width: 100%;\n & > button {\n flex: 1;\n }\n }\n `;\n\nconst wideAlwaysStyles = (p) =>\n p.wide === 'always' &&\n css`\n width: 100%;\n & > button {\n flex: 1;\n }\n `;\n\ntype ContainerProps = Required<Pick<RadioGroupProps, 'wide' | 'disabled'>>;\nconst Container = styled(\n 'div',\n omitEmotionProps('wide', 'disabled')\n)<ContainerProps>`\n display: inline-flex;\n flex-wrap: wrap;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n overflow: hidden;\n border: 1px solid\n ${(p) =>\n p.disabled\n ? clr(p.theme.buttonDisabledGhostColorText)\n : clr(p.theme.colorPrimary)};\n\n ${wideDefaultStyles};\n ${wideAlwaysStyles};\n`;\n\nconst StyledButton = styled(Button)`\n border-radius: 0;\n`;\n\n/**\n * The radio buttons that allow a user to select only one of a limited number of options.\n */\nconst RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (\n {\n options = [],\n wide = 'default',\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <div>\n <Container wide={wide} disabled={disabled} {...rest} ref={ref}>\n {options?.map(\n ({\n title,\n value: valueOption,\n disabled: disabledOption,\n onClick = () => {},\n ...buttonRest\n }) => (\n <StyledButton\n key={valueOption}\n type={forwardedValue === valueOption ? 'primary' : 'ghost'}\n wide='never'\n disabled={disabled || disabledOption}\n size={size}\n onClick={(e) => {\n setForwardedValue(valueOption);\n onClick(e);\n }}\n {...buttonRest}\n >\n {title}\n </StyledButton>\n )\n )}\n </Container>\n </div>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n\nexport default RadioGroup;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_excluded2","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","f","o","next","done","push","value","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","includes","propertyIsEnumerable","_taggedTemplateLiteral","freeze","defineProperties","raw","wideDefaultStyles","p","wide","css","m","max","xxs","wideAlwaysStyles","Container","styled","omitEmotionProps","theme","borderRadius","disabled","clr","buttonDisabledGhostColorText","colorPrimary","StyledButton","Button","RadioGroup","forwardRef","_ref","ref","_ref$options","options","_ref$wide","_ref$disabled","defaultValue","_ref$onChange","onChange","size","rest","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","createElement","map","_ref2","title","valueOption","disabledOption","_ref2$onClick","onClick","buttonRest","key","type","displayName","_default","exports"],"sources":["../../../src/RadioGroup/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface RadioGroupOption\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * The title of the option.\n */\n title: string;\n /**\n * The value of the option.\n */\n value: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface RadioGroupProps extends JsxDivProps, WithSize {\n /**\n * Options of the radio group.\n * @default undefined\n */\n options?: RadioGroupOption[];\n /**\n * Whether the radio group has full width.\n * Possible values:\n * `default` – the radio group has full width if the screen width is less than xs;\n * `always` – the radio group always has full width;\n * `never` – the radio group never has full width.\n * @default default\n */\n wide?: 'default' | 'always' | 'never';\n /**\n * Whether the radio group is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Selected option.\n * @default false\n */\n value?: string;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string) => void;\n}\n\nconst wideDefaultStyles = (p) =>\n p.wide === 'default' &&\n css`\n ${m.max.xxs} {\n width: 100%;\n & > button {\n flex: 1;\n }\n }\n `;\n\nconst wideAlwaysStyles = (p) =>\n p.wide === 'always' &&\n css`\n width: 100%;\n & > button {\n flex: 1;\n }\n `;\n\ntype ContainerProps = Required<Pick<RadioGroupProps, 'wide' | 'disabled'>>;\nconst Container = styled(\n 'div',\n omitEmotionProps('wide', 'disabled')\n)<ContainerProps>`\n display: inline-flex;\n flex-wrap: wrap;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n overflow: hidden;\n border: 1px solid\n ${(p) =>\n p.disabled\n ? clr(p.theme.buttonDisabledGhostColorText)\n : clr(p.theme.colorPrimary)};\n\n ${wideDefaultStyles};\n ${wideAlwaysStyles};\n`;\n\nconst StyledButton = styled(Button)`\n border-radius: 0;\n`;\n\n/**\n * The radio buttons that allow a user to select only one of a limited number of options.\n */\nconst RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (\n {\n options = [],\n wide = 'default',\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <div>\n <Container wide={wide} disabled={disabled} {...rest} ref={ref}>\n {options?.map(\n ({\n title,\n value: valueOption,\n disabled: disabledOption,\n onClick = () => {},\n ...buttonRest\n }) => (\n <StyledButton\n key={valueOption}\n type={forwardedValue === valueOption ? 'primary' : 'ghost'}\n wide='never'\n disabled={disabled || disabledOption}\n size={size}\n onClick={(e) => {\n setForwardedValue(valueOption);\n onClick(e);\n }}\n {...buttonRest}\n >\n {title}\n </StyledButton>\n )\n )}\n </Container>\n </div>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n\nexport default RadioGroup;\n"],"mappings":"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","ignoreList":[]}
@@ -14,11 +14,11 @@ var _excluded = ["width"];
14
14
  var _templateObject;
15
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
16
16
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
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); }
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; }
20
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
21
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
18
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
19
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
20
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
21
+ function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
22
22
  var StyledRadioGroupSkeleton = (0, _styled["default"])(_Skeleton["default"], (0, _utils.omitEmotionProps)('size'))(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n height: calc(", "em + 2px);\n ", ";\n"])), function (p) {
23
23
  return p.theme.baseHeight;
24
24
  }, _styles.sizeStyles);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_utils","_react","_interopRequireWildcard","_Skeleton","_excluded","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","StyledRadioGroupSkeleton","styled","Skeleton","omitEmotionProps","p","theme","baseHeight","sizeStyles","RadioGroupSkeleton","forwardRef","_ref","ref","_ref$width","width","rest","createElement","displayName","_default","exports"],"sources":["../../../src/RadioGroupSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface RadioGroupSkeletonProps extends SkeletonProps, WithSize {\n /**\n * The width of the skeleton.\n * @default 10em\n */\n width?: string;\n}\n\nconst StyledRadioGroupSkeleton = styled(\n Skeleton,\n omitEmotionProps('size')\n)<WithSize>`\n height: calc(${(p) => p.theme.baseHeight}em + 2px);\n ${sizeStyles};\n`;\n\n/**\n * Provides a radio group placeholder while a user waits for the content to load.\n */\nconst RadioGroupSkeleton = forwardRef<HTMLDivElement, RadioGroupSkeletonProps>(\n ({ width = '10em', ...rest }, ref) => (\n <StyledRadioGroupSkeleton width={width} {...rest} ref={ref} />\n )\n);\n\nRadioGroupSkeleton.displayName = 'RadioGroupSkeleton';\n\nexport default RadioGroupSkeleton;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_utils","_react","_interopRequireWildcard","_Skeleton","_excluded","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","o","_objectWithoutPropertiesLoose","getOwnPropertySymbols","s","includes","propertyIsEnumerable","_taggedTemplateLiteral","slice","freeze","defineProperties","raw","value","StyledRadioGroupSkeleton","styled","Skeleton","omitEmotionProps","p","theme","baseHeight","sizeStyles","RadioGroupSkeleton","forwardRef","_ref","ref","_ref$width","width","rest","createElement","displayName","_default","exports"],"sources":["../../../src/RadioGroupSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface RadioGroupSkeletonProps extends SkeletonProps, WithSize {\n /**\n * The width of the skeleton.\n * @default 10em\n */\n width?: string;\n}\n\nconst StyledRadioGroupSkeleton = styled(\n Skeleton,\n omitEmotionProps('size')\n)<WithSize>`\n height: calc(${(p) => p.theme.baseHeight}em + 2px);\n ${sizeStyles};\n`;\n\n/**\n * Provides a radio group placeholder while a user waits for the content to load.\n */\nconst RadioGroupSkeleton = forwardRef<HTMLDivElement, RadioGroupSkeletonProps>(\n ({ width = '10em', ...rest }, ref) => (\n <StyledRadioGroupSkeleton width={width} {...rest} ref={ref} />\n )\n);\n\nRadioGroupSkeleton.displayName = 'RadioGroupSkeleton';\n\nexport default RadioGroupSkeleton;\n"],"mappings":"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","ignoreList":[]}