@os-design/core 1.0.156 → 1.0.157

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (383) hide show
  1. package/dist/cjs/Alert/index.js +4 -30
  2. package/dist/cjs/Alert/index.js.map +1 -1
  3. package/dist/cjs/Avatar/index.js +15 -39
  4. package/dist/cjs/Avatar/index.js.map +1 -1
  5. package/dist/cjs/Avatar/utils/nameToInitials.js +1 -3
  6. package/dist/cjs/Avatar/utils/nameToInitials.js.map +1 -1
  7. package/dist/cjs/Avatar/utils/strToHue.js +0 -4
  8. package/dist/cjs/Avatar/utils/strToHue.js.map +1 -1
  9. package/dist/cjs/AvatarSkeleton/index.js +3 -20
  10. package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
  11. package/dist/cjs/Breadcrumb/index.js +4 -30
  12. package/dist/cjs/Breadcrumb/index.js.map +1 -1
  13. package/dist/cjs/BreadcrumbItem/index.js +8 -28
  14. package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
  15. package/dist/cjs/Button/ButtonContent.js +7 -20
  16. package/dist/cjs/Button/ButtonContent.js.map +1 -1
  17. package/dist/cjs/Button/index.js +23 -53
  18. package/dist/cjs/Button/index.js.map +1 -1
  19. package/dist/cjs/Button/utils/useButtonColors.js +3 -12
  20. package/dist/cjs/Button/utils/useButtonColors.js.map +1 -1
  21. package/dist/cjs/Checkbox/index.js +20 -59
  22. package/dist/cjs/Checkbox/index.js.map +1 -1
  23. package/dist/cjs/CheckboxSkeleton/index.js +2 -22
  24. package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
  25. package/dist/cjs/DatePicker/DatePickerCalendar.js +11 -48
  26. package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
  27. package/dist/cjs/DatePicker/index.js +32 -68
  28. package/dist/cjs/DatePicker/index.js.map +1 -1
  29. package/dist/cjs/Drawer/index.js +14 -44
  30. package/dist/cjs/Drawer/index.js.map +1 -1
  31. package/dist/cjs/Form/FormConfigContext.js +0 -4
  32. package/dist/cjs/Form/FormConfigContext.js.map +1 -1
  33. package/dist/cjs/Form/index.js +3 -20
  34. package/dist/cjs/Form/index.js.map +1 -1
  35. package/dist/cjs/FormDivider/index.js +3 -24
  36. package/dist/cjs/FormDivider/index.js.map +1 -1
  37. package/dist/cjs/FormItem/index.js +12 -42
  38. package/dist/cjs/FormItem/index.js.map +1 -1
  39. package/dist/cjs/FormItem/utils/firstChildHasType.js +0 -5
  40. package/dist/cjs/FormItem/utils/firstChildHasType.js.map +1 -1
  41. package/dist/cjs/Gallery/Status.js +2 -12
  42. package/dist/cjs/Gallery/Status.js.map +1 -1
  43. package/dist/cjs/Gallery/index.js +27 -61
  44. package/dist/cjs/Gallery/index.js.map +1 -1
  45. package/dist/cjs/GlobalStyles/index.js +0 -8
  46. package/dist/cjs/GlobalStyles/index.js.map +1 -1
  47. package/dist/cjs/GlobalStyles/resetStyles.js +0 -5
  48. package/dist/cjs/GlobalStyles/resetStyles.js.map +1 -1
  49. package/dist/cjs/GlobalStyles/typographyStyles.js +0 -11
  50. package/dist/cjs/GlobalStyles/typographyStyles.js.map +1 -1
  51. package/dist/cjs/HeaderSkeleton/index.js +7 -26
  52. package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
  53. package/dist/cjs/Image/index.js +11 -31
  54. package/dist/cjs/Image/index.js.map +1 -1
  55. package/dist/cjs/ImageSkeleton/index.js +1 -12
  56. package/dist/cjs/ImageSkeleton/index.js.map +1 -1
  57. package/dist/cjs/Input/index.js +23 -57
  58. package/dist/cjs/Input/index.js.map +1 -1
  59. package/dist/cjs/Input/utils/getFocusableElements.js +0 -8
  60. package/dist/cjs/Input/utils/getFocusableElements.js.map +1 -1
  61. package/dist/cjs/InputNumber/index.js +49 -72
  62. package/dist/cjs/InputNumber/index.js.map +1 -1
  63. package/dist/cjs/InputNumber/utils/defaultLocale.js.map +1 -1
  64. package/dist/cjs/InputPassword/index.js +39 -77
  65. package/dist/cjs/InputPassword/index.js.map +1 -1
  66. package/dist/cjs/InputPassword/utils/defaultLocale.js.map +1 -1
  67. package/dist/cjs/InputSearch/index.js +22 -51
  68. package/dist/cjs/InputSearch/index.js.map +1 -1
  69. package/dist/cjs/InputSearch/utils/defaultLocale.js.map +1 -1
  70. package/dist/cjs/InputSkeleton/index.js +1 -14
  71. package/dist/cjs/InputSkeleton/index.js.map +1 -1
  72. package/dist/cjs/Layout/LayoutContext.js +0 -4
  73. package/dist/cjs/Layout/LayoutContext.js.map +1 -1
  74. package/dist/cjs/Layout/index.js +4 -12
  75. package/dist/cjs/Layout/index.js.map +1 -1
  76. package/dist/cjs/Link/index.js +8 -30
  77. package/dist/cjs/Link/index.js.map +1 -1
  78. package/dist/cjs/LinkButton/index.js +26 -49
  79. package/dist/cjs/LinkButton/index.js.map +1 -1
  80. package/dist/cjs/List/WindowScroller.js +4 -12
  81. package/dist/cjs/List/WindowScroller.js.map +1 -1
  82. package/dist/cjs/List/index.js +35 -68
  83. package/dist/cjs/List/index.js.map +1 -1
  84. package/dist/cjs/List/utils/bodyPointerEvents.js +0 -9
  85. package/dist/cjs/List/utils/bodyPointerEvents.js.map +1 -1
  86. package/dist/cjs/List/utils/frameTimeout.js +1 -8
  87. package/dist/cjs/List/utils/frameTimeout.js.map +1 -1
  88. package/dist/cjs/List/utils/useRWLoadNext.js +6 -9
  89. package/dist/cjs/List/utils/useRWLoadNext.js.map +1 -1
  90. package/dist/cjs/ListItem/ListItemContent.js +12 -44
  91. package/dist/cjs/ListItem/ListItemContent.js.map +1 -1
  92. package/dist/cjs/ListItem/index.js +15 -39
  93. package/dist/cjs/ListItem/index.js.map +1 -1
  94. package/dist/cjs/ListItemLink/index.js +18 -51
  95. package/dist/cjs/ListItemLink/index.js.map +1 -1
  96. package/dist/cjs/ListSkeleton/index.js +11 -32
  97. package/dist/cjs/ListSkeleton/index.js.map +1 -1
  98. package/dist/cjs/LogoLink/index.js +6 -27
  99. package/dist/cjs/LogoLink/index.js.map +1 -1
  100. package/dist/cjs/Menu/index.js +20 -47
  101. package/dist/cjs/Menu/index.js.map +1 -1
  102. package/dist/cjs/Menu/utils/useFocusWithArrows.js +1 -13
  103. package/dist/cjs/Menu/utils/useFocusWithArrows.js.map +1 -1
  104. package/dist/cjs/MenuDivider/index.js +1 -13
  105. package/dist/cjs/MenuDivider/index.js.map +1 -1
  106. package/dist/cjs/MenuGroup/index.js +19 -52
  107. package/dist/cjs/MenuGroup/index.js.map +1 -1
  108. package/dist/cjs/MenuItem/index.js +9 -32
  109. package/dist/cjs/MenuItem/index.js.map +1 -1
  110. package/dist/cjs/Modal/index.js +25 -65
  111. package/dist/cjs/Modal/index.js.map +1 -1
  112. package/dist/cjs/Modal/utils/defaultLocale.js.map +1 -1
  113. package/dist/cjs/Navigation/index.js +6 -35
  114. package/dist/cjs/Navigation/index.js.map +1 -1
  115. package/dist/cjs/Navigation/utils/useScrollFlags.js +6 -19
  116. package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
  117. package/dist/cjs/NavigationItem/index.js +8 -32
  118. package/dist/cjs/NavigationItem/index.js.map +1 -1
  119. package/dist/cjs/PageContent/index.js +6 -30
  120. package/dist/cjs/PageContent/index.js.map +1 -1
  121. package/dist/cjs/PageHeader/index.js +13 -46
  122. package/dist/cjs/PageHeader/index.js.map +1 -1
  123. package/dist/cjs/PageHeader/utils/defaultLocale.js.map +1 -1
  124. package/dist/cjs/PageHeaderInputSearch/index.js +10 -46
  125. package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
  126. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js +0 -7
  127. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  128. package/dist/cjs/PageHeaderSkeleton/index.js +3 -18
  129. package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
  130. package/dist/cjs/ParagraphSkeleton/index.js +7 -25
  131. package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
  132. package/dist/cjs/Popover/index.js +46 -77
  133. package/dist/cjs/Popover/index.js.map +1 -1
  134. package/dist/cjs/Popover/utils/usePopoverPosition.js +21 -43
  135. package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
  136. package/dist/cjs/Progress/index.js +6 -25
  137. package/dist/cjs/Progress/index.js.map +1 -1
  138. package/dist/cjs/RadioGroup/index.js +25 -55
  139. package/dist/cjs/RadioGroup/index.js.map +1 -1
  140. package/dist/cjs/RadioGroupSkeleton/index.js +3 -20
  141. package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
  142. package/dist/cjs/Result/index.js +6 -30
  143. package/dist/cjs/Result/index.js.map +1 -1
  144. package/dist/cjs/ScrollButton/index.js +15 -40
  145. package/dist/cjs/ScrollButton/index.js.map +1 -1
  146. package/dist/cjs/ScrollButton/utils/useContainerPosition.js +10 -23
  147. package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
  148. package/dist/cjs/ScrollButton/utils/useVisibility.js +6 -19
  149. package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
  150. package/dist/cjs/Select/SelectList.js +27 -53
  151. package/dist/cjs/Select/SelectList.js.map +1 -1
  152. package/dist/cjs/Select/SelectToggle.js +17 -52
  153. package/dist/cjs/Select/SelectToggle.js.map +1 -1
  154. package/dist/cjs/Select/index.js +60 -103
  155. package/dist/cjs/Select/index.js.map +1 -1
  156. package/dist/cjs/Select/utils/defaultLocale.js.map +1 -1
  157. package/dist/cjs/Skeleton/index.js +3 -20
  158. package/dist/cjs/Skeleton/index.js.map +1 -1
  159. package/dist/cjs/Switch/index.js +17 -52
  160. package/dist/cjs/Switch/index.js.map +1 -1
  161. package/dist/cjs/SwitchSkeleton/index.js +1 -14
  162. package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
  163. package/dist/cjs/Tag/index.js +4 -26
  164. package/dist/cjs/Tag/index.js.map +1 -1
  165. package/dist/cjs/TagLink/index.js +7 -25
  166. package/dist/cjs/TagLink/index.js.map +1 -1
  167. package/dist/cjs/TagList/index.js +8 -38
  168. package/dist/cjs/TagList/index.js.map +1 -1
  169. package/dist/cjs/TagListSkeleton/index.js +4 -17
  170. package/dist/cjs/TagListSkeleton/index.js.map +1 -1
  171. package/dist/cjs/TagSkeleton/index.js +3 -20
  172. package/dist/cjs/TagSkeleton/index.js.map +1 -1
  173. package/dist/cjs/TextArea/index.js +6 -21
  174. package/dist/cjs/TextArea/index.js.map +1 -1
  175. package/dist/cjs/TextAreaSkeleton/index.js +1 -12
  176. package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
  177. package/dist/cjs/ThemeSwitcher/index.js +4 -20
  178. package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
  179. package/dist/cjs/TimePicker/index.js +119 -0
  180. package/dist/cjs/TimePicker/index.js.map +1 -0
  181. package/dist/cjs/Video/index.js +2 -18
  182. package/dist/cjs/Video/index.js.map +1 -1
  183. package/dist/cjs/index.js +0 -126
  184. package/dist/cjs/index.js.map +1 -1
  185. package/dist/cjs/message/AlertIcon.js +15 -26
  186. package/dist/cjs/message/AlertIcon.js.map +1 -1
  187. package/dist/cjs/message/Message.js +1 -17
  188. package/dist/cjs/message/Message.js.map +1 -1
  189. package/dist/cjs/message/index.js +7 -21
  190. package/dist/cjs/message/index.js.map +1 -1
  191. package/dist/cjs/message/styles.js +2 -12
  192. package/dist/cjs/message/styles.js.map +1 -1
  193. package/dist/esm/Alert/index.js +1 -10
  194. package/dist/esm/Alert/index.js.map +1 -1
  195. package/dist/esm/Avatar/index.js +5 -4
  196. package/dist/esm/Avatar/index.js.map +1 -1
  197. package/dist/esm/Avatar/utils/nameToInitials.js +0 -1
  198. package/dist/esm/Avatar/utils/nameToInitials.js.map +1 -1
  199. package/dist/esm/Avatar/utils/strToHue.js +0 -3
  200. package/dist/esm/Avatar/utils/strToHue.js.map +1 -1
  201. package/dist/esm/AvatarSkeleton/index.js +1 -2
  202. package/dist/esm/AvatarSkeleton/index.js.map +1 -1
  203. package/dist/esm/Breadcrumb/index.js +3 -5
  204. package/dist/esm/Breadcrumb/index.js.map +1 -1
  205. package/dist/esm/BreadcrumbItem/index.js +1 -2
  206. package/dist/esm/BreadcrumbItem/index.js.map +1 -1
  207. package/dist/esm/Button/ButtonContent.js +2 -2
  208. package/dist/esm/Button/ButtonContent.js.map +1 -1
  209. package/dist/esm/Button/index.js +1 -10
  210. package/dist/esm/Button/index.js.map +1 -1
  211. package/dist/esm/Button/utils/useButtonColors.js +0 -5
  212. package/dist/esm/Button/utils/useButtonColors.js.map +1 -1
  213. package/dist/esm/Checkbox/index.js +1 -15
  214. package/dist/esm/Checkbox/index.js.map +1 -1
  215. package/dist/esm/CheckboxSkeleton/index.js +1 -2
  216. package/dist/esm/CheckboxSkeleton/index.js.map +1 -1
  217. package/dist/esm/DatePicker/DatePickerCalendar.js +0 -7
  218. package/dist/esm/DatePicker/DatePickerCalendar.js.map +1 -1
  219. package/dist/esm/DatePicker/index.js +0 -5
  220. package/dist/esm/DatePicker/index.js.map +1 -1
  221. package/dist/esm/Drawer/index.js +1 -7
  222. package/dist/esm/Drawer/index.js.map +1 -1
  223. package/dist/esm/Form/FormConfigContext.js.map +1 -1
  224. package/dist/esm/Form/index.js +1 -2
  225. package/dist/esm/Form/index.js.map +1 -1
  226. package/dist/esm/FormDivider/index.js +1 -2
  227. package/dist/esm/FormDivider/index.js.map +1 -1
  228. package/dist/esm/FormItem/index.js +1 -4
  229. package/dist/esm/FormItem/index.js.map +1 -1
  230. package/dist/esm/FormItem/utils/firstChildHasType.js +0 -2
  231. package/dist/esm/FormItem/utils/firstChildHasType.js.map +1 -1
  232. package/dist/esm/Gallery/Status.js +0 -2
  233. package/dist/esm/Gallery/Status.js.map +1 -1
  234. package/dist/esm/Gallery/index.js +3 -7
  235. package/dist/esm/Gallery/index.js.map +1 -1
  236. package/dist/esm/GlobalStyles/index.js +0 -2
  237. package/dist/esm/GlobalStyles/index.js.map +1 -1
  238. package/dist/esm/GlobalStyles/resetStyles.js +0 -2
  239. package/dist/esm/GlobalStyles/resetStyles.js.map +1 -1
  240. package/dist/esm/GlobalStyles/typographyStyles.js +0 -4
  241. package/dist/esm/GlobalStyles/typographyStyles.js.map +1 -1
  242. package/dist/esm/HeaderSkeleton/index.js +1 -4
  243. package/dist/esm/HeaderSkeleton/index.js.map +1 -1
  244. package/dist/esm/Image/index.js +1 -6
  245. package/dist/esm/Image/index.js.map +1 -1
  246. package/dist/esm/ImageSkeleton/index.js +1 -2
  247. package/dist/esm/ImageSkeleton/index.js.map +1 -1
  248. package/dist/esm/Input/index.js +1 -10
  249. package/dist/esm/Input/index.js.map +1 -1
  250. package/dist/esm/Input/utils/getFocusableElements.js +0 -1
  251. package/dist/esm/Input/utils/getFocusableElements.js.map +1 -1
  252. package/dist/esm/InputNumber/index.js +10 -7
  253. package/dist/esm/InputNumber/index.js.map +1 -1
  254. package/dist/esm/InputNumber/utils/defaultLocale.js.map +1 -1
  255. package/dist/esm/InputPassword/index.js +3 -8
  256. package/dist/esm/InputPassword/index.js.map +1 -1
  257. package/dist/esm/InputPassword/utils/defaultLocale.js.map +1 -1
  258. package/dist/esm/InputSearch/index.js +1 -2
  259. package/dist/esm/InputSearch/index.js.map +1 -1
  260. package/dist/esm/InputSearch/utils/defaultLocale.js.map +1 -1
  261. package/dist/esm/InputSkeleton/index.js +1 -2
  262. package/dist/esm/InputSkeleton/index.js.map +1 -1
  263. package/dist/esm/Layout/LayoutContext.js.map +1 -1
  264. package/dist/esm/Layout/index.js +0 -2
  265. package/dist/esm/Layout/index.js.map +1 -1
  266. package/dist/esm/Link/index.js +3 -8
  267. package/dist/esm/Link/index.js.map +1 -1
  268. package/dist/esm/LinkButton/index.js +1 -4
  269. package/dist/esm/LinkButton/index.js.map +1 -1
  270. package/dist/esm/List/WindowScroller.js +2 -4
  271. package/dist/esm/List/WindowScroller.js.map +1 -1
  272. package/dist/esm/List/index.js +10 -9
  273. package/dist/esm/List/index.js.map +1 -1
  274. package/dist/esm/List/utils/bodyPointerEvents.js +0 -1
  275. package/dist/esm/List/utils/bodyPointerEvents.js.map +1 -1
  276. package/dist/esm/List/utils/frameTimeout.js +1 -4
  277. package/dist/esm/List/utils/frameTimeout.js.map +1 -1
  278. package/dist/esm/List/utils/useRWLoadNext.js +0 -2
  279. package/dist/esm/List/utils/useRWLoadNext.js.map +1 -1
  280. package/dist/esm/ListItem/ListItemContent.js +2 -6
  281. package/dist/esm/ListItem/ListItemContent.js.map +1 -1
  282. package/dist/esm/ListItem/index.js +1 -2
  283. package/dist/esm/ListItem/index.js.map +1 -1
  284. package/dist/esm/ListItemLink/index.js +1 -4
  285. package/dist/esm/ListItemLink/index.js.map +1 -1
  286. package/dist/esm/ListSkeleton/index.js +1 -2
  287. package/dist/esm/ListSkeleton/index.js.map +1 -1
  288. package/dist/esm/LogoLink/index.js +1 -4
  289. package/dist/esm/LogoLink/index.js.map +1 -1
  290. package/dist/esm/Menu/index.js +3 -3
  291. package/dist/esm/Menu/index.js.map +1 -1
  292. package/dist/esm/Menu/utils/useFocusWithArrows.js +0 -4
  293. package/dist/esm/Menu/utils/useFocusWithArrows.js.map +1 -1
  294. package/dist/esm/MenuDivider/index.js +1 -2
  295. package/dist/esm/MenuDivider/index.js.map +1 -1
  296. package/dist/esm/MenuGroup/index.js +1 -2
  297. package/dist/esm/MenuGroup/index.js.map +1 -1
  298. package/dist/esm/MenuItem/index.js +1 -4
  299. package/dist/esm/MenuItem/index.js.map +1 -1
  300. package/dist/esm/Modal/index.js +1 -8
  301. package/dist/esm/Modal/index.js.map +1 -1
  302. package/dist/esm/Modal/utils/defaultLocale.js.map +1 -1
  303. package/dist/esm/Navigation/index.js +1 -7
  304. package/dist/esm/Navigation/index.js.map +1 -1
  305. package/dist/esm/Navigation/utils/useScrollFlags.js +0 -2
  306. package/dist/esm/Navigation/utils/useScrollFlags.js.map +1 -1
  307. package/dist/esm/NavigationItem/index.js +1 -4
  308. package/dist/esm/NavigationItem/index.js.map +1 -1
  309. package/dist/esm/PageContent/index.js +1 -7
  310. package/dist/esm/PageContent/index.js.map +1 -1
  311. package/dist/esm/PageHeader/index.js +1 -8
  312. package/dist/esm/PageHeader/index.js.map +1 -1
  313. package/dist/esm/PageHeader/utils/defaultLocale.js.map +1 -1
  314. package/dist/esm/PageHeaderInputSearch/index.js +1 -5
  315. package/dist/esm/PageHeaderInputSearch/index.js.map +1 -1
  316. package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js +2 -1
  317. package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  318. package/dist/esm/PageHeaderSkeleton/index.js +0 -2
  319. package/dist/esm/PageHeaderSkeleton/index.js.map +1 -1
  320. package/dist/esm/ParagraphSkeleton/index.js +1 -4
  321. package/dist/esm/ParagraphSkeleton/index.js.map +1 -1
  322. package/dist/esm/Popover/index.js +12 -13
  323. package/dist/esm/Popover/index.js.map +1 -1
  324. package/dist/esm/Popover/utils/usePopoverPosition.js +8 -19
  325. package/dist/esm/Popover/utils/usePopoverPosition.js.map +1 -1
  326. package/dist/esm/Progress/index.js +1 -2
  327. package/dist/esm/Progress/index.js.map +1 -1
  328. package/dist/esm/RadioGroup/index.js +1 -5
  329. package/dist/esm/RadioGroup/index.js.map +1 -1
  330. package/dist/esm/RadioGroupSkeleton/index.js +1 -2
  331. package/dist/esm/RadioGroupSkeleton/index.js.map +1 -1
  332. package/dist/esm/Result/index.js +1 -2
  333. package/dist/esm/Result/index.js.map +1 -1
  334. package/dist/esm/ScrollButton/index.js +7 -9
  335. package/dist/esm/ScrollButton/index.js.map +1 -1
  336. package/dist/esm/ScrollButton/utils/useContainerPosition.js +0 -2
  337. package/dist/esm/ScrollButton/utils/useContainerPosition.js.map +1 -1
  338. package/dist/esm/ScrollButton/utils/useVisibility.js +2 -5
  339. package/dist/esm/ScrollButton/utils/useVisibility.js.map +1 -1
  340. package/dist/esm/Select/SelectList.js +11 -12
  341. package/dist/esm/Select/SelectList.js.map +1 -1
  342. package/dist/esm/Select/SelectToggle.js +0 -14
  343. package/dist/esm/Select/SelectToggle.js.map +1 -1
  344. package/dist/esm/Select/index.js +4 -10
  345. package/dist/esm/Select/index.js.map +1 -1
  346. package/dist/esm/Select/utils/defaultLocale.js.map +1 -1
  347. package/dist/esm/Skeleton/index.js +1 -2
  348. package/dist/esm/Skeleton/index.js.map +1 -1
  349. package/dist/esm/Switch/index.js +1 -11
  350. package/dist/esm/Switch/index.js.map +1 -1
  351. package/dist/esm/SwitchSkeleton/index.js +1 -2
  352. package/dist/esm/SwitchSkeleton/index.js.map +1 -1
  353. package/dist/esm/Tag/index.js +1 -2
  354. package/dist/esm/Tag/index.js.map +1 -1
  355. package/dist/esm/TagLink/index.js +1 -2
  356. package/dist/esm/TagLink/index.js.map +1 -1
  357. package/dist/esm/TagList/index.js +1 -4
  358. package/dist/esm/TagList/index.js.map +1 -1
  359. package/dist/esm/TagListSkeleton/index.js +1 -2
  360. package/dist/esm/TagListSkeleton/index.js.map +1 -1
  361. package/dist/esm/TagSkeleton/index.js +1 -2
  362. package/dist/esm/TagSkeleton/index.js.map +1 -1
  363. package/dist/esm/TextArea/index.js +1 -2
  364. package/dist/esm/TextArea/index.js.map +1 -1
  365. package/dist/esm/TextAreaSkeleton/index.js +1 -2
  366. package/dist/esm/TextAreaSkeleton/index.js.map +1 -1
  367. package/dist/esm/ThemeSwitcher/index.js +0 -2
  368. package/dist/esm/ThemeSwitcher/index.js.map +1 -1
  369. package/dist/esm/TimePicker/index.js +90 -0
  370. package/dist/esm/TimePicker/index.js.map +1 -0
  371. package/dist/esm/Video/index.js +1 -2
  372. package/dist/esm/Video/index.js.map +1 -1
  373. package/dist/esm/emotion.d.js.map +1 -1
  374. package/dist/esm/index.js.map +1 -1
  375. package/dist/esm/message/AlertIcon.js +0 -2
  376. package/dist/esm/message/AlertIcon.js.map +1 -1
  377. package/dist/esm/message/Message.js.map +1 -1
  378. package/dist/esm/message/index.js +7 -9
  379. package/dist/esm/message/index.js.map +1 -1
  380. package/dist/esm/message/styles.js.map +1 -1
  381. package/dist/types/TimePicker/index.d.ts +10 -0
  382. package/dist/types/TimePicker/index.d.ts.map +1 -0
  383. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["selectedStyles","p","selected","css","clr","theme","menuItemSelectedColorBg","StyledButton","styled","Button","omitEmotionProps","menuItemHeight","menuItemPaddingHorizontal","m","min","xs","SelectedIcon","Check","menuItemSelectedColorIcon","MenuItem","forwardRef","ref","value","right","onClick","rest","useContext","MenuContext","closeOnSelect","onClose","onClickRef","useRef","useEffect","current","clickHandler","useCallback","e","buttonGhostColorText","colorText","displayName"],"sources":["../../../src/MenuItem/index.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useRef,\n} from 'react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { clr, ThemeOverrider } from '@os-design/theming';\nimport { Check } from '@os-design/icons';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { css } from '@emotion/react';\nimport { MenuContext } from '@os-design/menu-utils';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface MenuItemProps\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * Whether the menu item is selected.\n * @default false\n */\n selected?: boolean;\n /**\n * The value of the menu item.\n * @default undefined\n */\n value?: string;\n}\n\nconst selectedStyles = (p) =>\n p.selected &&\n css`\n background-color: ${clr(p.theme.menuItemSelectedColorBg)};\n `;\n\ntype StyledButtonProps = Pick<MenuItemProps, 'selected'>;\nconst StyledButton = styled(\n Button,\n omitEmotionProps('selected')\n)<StyledButtonProps>`\n display: flex;\n font-weight: normal;\n border-radius: 0;\n height: ${(p) => p.theme.menuItemHeight}em;\n\n & > span {\n flex: 1;\n text-align: left;\n overflow: hidden;\n line-height: 1.5;\n }\n\n padding: 0 ${(p) => p.theme.menuItemPaddingHorizontal[0]}em;\n ${m.min.xs} {\n padding: 0 ${(p) => p.theme.menuItemPaddingHorizontal[1]}em;\n }\n\n ${selectedStyles};\n`;\n\nconst SelectedIcon = styled(Check)`\n color: ${(p) => clr(p.theme.menuItemSelectedColorIcon)};\n`;\n\n/**\n * The base menu item.\n */\nconst MenuItem = forwardRef<HTMLButtonElement, MenuItemProps>(\n ({ selected = false, value, right, onClick = () => {}, ...rest }, ref) => {\n const { closeOnSelect, onClose } = useContext(MenuContext);\n const onClickRef = useRef<MenuItemProps['onClick']>();\n\n useEffect(() => {\n onClickRef.current = onClick;\n }, [onClick]);\n\n const clickHandler = useCallback(\n (e) => {\n if (onClickRef.current) onClickRef.current(e);\n if (closeOnSelect) onClose();\n },\n [closeOnSelect, onClose]\n );\n\n return (\n <ThemeOverrider\n overrides={(theme) => ({ buttonGhostColorText: theme.colorText })}\n >\n <StyledButton\n selected={selected}\n right={selected ? <SelectedIcon /> : right}\n type='ghost'\n wide='always'\n onClick={clickHandler}\n role='menuitem'\n {...rest}\n ref={ref}\n />\n </ThemeOverrider>\n );\n }\n);\n\nMenuItem.displayName = 'MenuItem';\n\nexport default MenuItem;\n"],"mappings":";;;;;;;;;AAAA;;AAOA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAgBA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,CAAD;EAAA,OACrBA,CAAC,CAACC,QAAF,QACAC,WADA,wGAEsB,IAAAC,YAAA,EAAIH,CAAC,CAACI,KAAF,CAAQC,uBAAZ,CAFtB,CADqB;AAAA,CAAvB;;AAOA,IAAMC,YAAY,GAAG,IAAAC,kBAAA,EACnBC,kBADmB,EAEnB,IAAAC,uBAAA,EAAiB,UAAjB,CAFmB,CAAH,8UAON,UAACT,CAAD;EAAA,OAAOA,CAAC,CAACI,KAAF,CAAQM,cAAf;AAAA,CAPM,EAgBH,UAACV,CAAD;EAAA,OAAOA,CAAC,CAACI,KAAF,CAAQO,yBAAR,CAAkC,CAAlC,CAAP;AAAA,CAhBG,EAiBdC,QAAA,CAAEC,GAAF,CAAMC,EAjBQ,EAkBD,UAACd,CAAD;EAAA,OAAOA,CAAC,CAACI,KAAF,CAAQO,yBAAR,CAAkC,CAAlC,CAAP;AAAA,CAlBC,EAqBdZ,cArBc,CAAlB;AAwBA,IAAMgB,YAAY,GAAG,IAAAR,kBAAA,EAAOS,YAAP,CAAH,0FACP,UAAChB,CAAD;EAAA,OAAO,IAAAG,YAAA,EAAIH,CAAC,CAACI,KAAF,CAAQa,yBAAZ,CAAP;AAAA,CADO,CAAlB;AAIA;AACA;AACA;;AACA,IAAMC,QAAQ,gBAAG,IAAAC,iBAAA,EACf,gBAAkEC,GAAlE,EAA0E;EAAA,yBAAvEnB,QAAuE;EAAA,IAAvEA,QAAuE,8BAA5D,KAA4D;EAAA,IAArDoB,KAAqD,QAArDA,KAAqD;EAAA,IAA9CC,KAA8C,QAA9CA,KAA8C;EAAA,wBAAvCC,OAAuC;EAAA,IAAvCA,OAAuC,6BAA7B,YAAM,CAAE,CAAqB;EAAA,IAAhBC,IAAgB;;EACxE,kBAAmC,IAAAC,iBAAA,EAAWC,sBAAX,CAAnC;EAAA,IAAQC,aAAR,eAAQA,aAAR;EAAA,IAAuBC,OAAvB,eAAuBA,OAAvB;;EACA,IAAMC,UAAU,GAAG,IAAAC,aAAA,GAAnB;EAEA,IAAAC,gBAAA,EAAU,YAAM;IACdF,UAAU,CAACG,OAAX,GAAqBT,OAArB;EACD,CAFD,EAEG,CAACA,OAAD,CAFH;EAIA,IAAMU,YAAY,GAAG,IAAAC,kBAAA,EACnB,UAACC,CAAD,EAAO;IACL,IAAIN,UAAU,CAACG,OAAf,EAAwBH,UAAU,CAACG,OAAX,CAAmBG,CAAnB;IACxB,IAAIR,aAAJ,EAAmBC,OAAO;EAC3B,CAJkB,EAKnB,CAACD,aAAD,EAAgBC,OAAhB,CALmB,CAArB;EAQA,oBACE,gCAAC,uBAAD;IACE,SAAS,EAAE,mBAACxB,KAAD;MAAA,OAAY;QAAEgC,oBAAoB,EAAEhC,KAAK,CAACiC;MAA9B,CAAZ;IAAA;EADb,gBAGE,gCAAC,YAAD;IACE,QAAQ,EAAEpC,QADZ;IAEE,KAAK,EAAEA,QAAQ,gBAAG,gCAAC,YAAD,OAAH,GAAsBqB,KAFvC;IAGE,IAAI,EAAC,OAHP;IAIE,IAAI,EAAC,QAJP;IAKE,OAAO,EAAEW,YALX;IAME,IAAI,EAAC;EANP,GAOMT,IAPN;IAQE,GAAG,EAAEJ;EARP,GAHF,CADF;AAgBD,CAjCc,CAAjB;AAoCAF,QAAQ,CAACoB,WAAT,GAAuB,UAAvB;eAEepB,Q"}
1
+ {"version":3,"file":"index.js","names":["selectedStyles","p","selected","css","clr","theme","menuItemSelectedColorBg","StyledButton","styled","Button","omitEmotionProps","menuItemHeight","menuItemPaddingHorizontal","m","min","xs","SelectedIcon","Check","menuItemSelectedColorIcon","MenuItem","forwardRef","ref","value","right","onClick","rest","useContext","MenuContext","closeOnSelect","onClose","onClickRef","useRef","useEffect","current","clickHandler","useCallback","e","buttonGhostColorText","colorText","displayName"],"sources":["../../../src/MenuItem/index.tsx"],"sourcesContent":["import React, {\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useRef,\n} from 'react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { clr, ThemeOverrider } from '@os-design/theming';\nimport { Check } from '@os-design/icons';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { css } from '@emotion/react';\nimport { MenuContext } from '@os-design/menu-utils';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface MenuItemProps\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * Whether the menu item is selected.\n * @default false\n */\n selected?: boolean;\n /**\n * The value of the menu item.\n * @default undefined\n */\n value?: string;\n}\n\nconst selectedStyles = (p) =>\n p.selected &&\n css`\n background-color: ${clr(p.theme.menuItemSelectedColorBg)};\n `;\n\ntype StyledButtonProps = Pick<MenuItemProps, 'selected'>;\nconst StyledButton = styled(\n Button,\n omitEmotionProps('selected')\n)<StyledButtonProps>`\n display: flex;\n font-weight: normal;\n border-radius: 0;\n height: ${(p) => p.theme.menuItemHeight}em;\n\n & > span {\n flex: 1;\n text-align: left;\n overflow: hidden;\n line-height: 1.5;\n }\n\n padding: 0 ${(p) => p.theme.menuItemPaddingHorizontal[0]}em;\n ${m.min.xs} {\n padding: 0 ${(p) => p.theme.menuItemPaddingHorizontal[1]}em;\n }\n\n ${selectedStyles};\n`;\n\nconst SelectedIcon = styled(Check)`\n color: ${(p) => clr(p.theme.menuItemSelectedColorIcon)};\n`;\n\n/**\n * The base menu item.\n */\nconst MenuItem = forwardRef<HTMLButtonElement, MenuItemProps>(\n ({ selected = false, value, right, onClick = () => {}, ...rest }, ref) => {\n const { closeOnSelect, onClose } = useContext(MenuContext);\n const onClickRef = useRef<MenuItemProps['onClick']>();\n\n useEffect(() => {\n onClickRef.current = onClick;\n }, [onClick]);\n\n const clickHandler = useCallback(\n (e) => {\n if (onClickRef.current) onClickRef.current(e);\n if (closeOnSelect) onClose();\n },\n [closeOnSelect, onClose]\n );\n\n return (\n <ThemeOverrider\n overrides={(theme) => ({ buttonGhostColorText: theme.colorText })}\n >\n <StyledButton\n selected={selected}\n right={selected ? <SelectedIcon /> : right}\n type='ghost'\n wide='always'\n onClick={clickHandler}\n role='menuitem'\n {...rest}\n ref={ref}\n />\n </ThemeOverrider>\n );\n }\n);\n\nMenuItem.displayName = 'MenuItem';\n\nexport default MenuItem;\n"],"mappings":";;;;;;;AAAA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAgD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBhD,IAAMA,cAAc,GAAG,SAAjBA,cAAc,CAAIC,CAAC;EAAA,OACvBA,CAAC,CAACC,QAAQ,QACVC,WAAG,wGACmB,IAAAC,YAAG,EAACH,CAAC,CAACI,KAAK,CAACC,uBAAuB,CAAC,CACzD;AAAA;AAGH,IAAMC,YAAY,GAAG,IAAAC,kBAAM,EACzBC,kBAAM,EACN,IAAAC,uBAAgB,EAAC,UAAU,CAAC,CAC7B,8UAIW,UAACT,CAAC;EAAA,OAAKA,CAAC,CAACI,KAAK,CAACM,cAAc;AAAA,GAS1B,UAACV,CAAC;EAAA,OAAKA,CAAC,CAACI,KAAK,CAACO,yBAAyB,CAAC,CAAC,CAAC;AAAA,GACtDC,QAAC,CAACC,GAAG,CAACC,EAAE,EACK,UAACd,CAAC;EAAA,OAAKA,CAAC,CAACI,KAAK,CAACO,yBAAyB,CAAC,CAAC,CAAC;AAAA,GAGxDZ,cAAc,CACjB;AAED,IAAMgB,YAAY,GAAG,IAAAR,kBAAM,EAACS,YAAK,CAAC,0FACvB,UAAChB,CAAC;EAAA,OAAK,IAAAG,YAAG,EAACH,CAAC,CAACI,KAAK,CAACa,yBAAyB,CAAC;AAAA,EACvD;;AAED;AACA;AACA;AACA,IAAMC,QAAQ,gBAAG,IAAAC,iBAAU,EACzB,gBAAkEC,GAAG,EAAK;EAAA,yBAAvEnB,QAAQ;IAARA,QAAQ,8BAAG,KAAK;IAAEoB,KAAK,QAALA,KAAK;IAAEC,KAAK,QAALA,KAAK;IAAA,oBAAEC,OAAO;IAAPA,OAAO,6BAAG,YAAM,CAAC,CAAC;IAAKC,IAAI;EAC5D,kBAAmC,IAAAC,iBAAU,EAACC,sBAAW,CAAC;IAAlDC,aAAa,eAAbA,aAAa;IAAEC,OAAO,eAAPA,OAAO;EAC9B,IAAMC,UAAU,GAAG,IAAAC,aAAM,GAA4B;EAErD,IAAAC,gBAAS,EAAC,YAAM;IACdF,UAAU,CAACG,OAAO,GAAGT,OAAO;EAC9B,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAMU,YAAY,GAAG,IAAAC,kBAAW,EAC9B,UAACC,CAAC,EAAK;IACL,IAAIN,UAAU,CAACG,OAAO,EAAEH,UAAU,CAACG,OAAO,CAACG,CAAC,CAAC;IAC7C,IAAIR,aAAa,EAAEC,OAAO,EAAE;EAC9B,CAAC,EACD,CAACD,aAAa,EAAEC,OAAO,CAAC,CACzB;EAED,oBACE,gCAAC,uBAAc;IACb,SAAS,EAAE,mBAACxB,KAAK;MAAA,OAAM;QAAEgC,oBAAoB,EAAEhC,KAAK,CAACiC;MAAU,CAAC;IAAA;EAAE,gBAElE,gCAAC,YAAY;IACX,QAAQ,EAAEpC,QAAS;IACnB,KAAK,EAAEA,QAAQ,gBAAG,gCAAC,YAAY,OAAG,GAAGqB,KAAM;IAC3C,IAAI,EAAC,OAAO;IACZ,IAAI,EAAC,QAAQ;IACb,OAAO,EAAEW,YAAa;IACtB,IAAI,EAAC;EAAU,GACXT,IAAI;IACR,GAAG,EAAEJ;EAAI,GACT,CACa;AAErB,CAAC,CACF;AAEDF,QAAQ,CAACoB,WAAW,GAAG,UAAU;AAAC,eAEnBpB,QAAQ;AAAA"}
@@ -1,87 +1,56 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = exports.ModalMask = void 0;
9
-
10
8
  var _react = _interopRequireWildcard(require("react"));
11
-
12
9
  var _reactFocusLock = _interopRequireDefault(require("react-focus-lock"));
13
-
14
10
  var _styled = _interopRequireDefault(require("@emotion/styled"));
15
-
16
11
  var _utils = require("@os-design/utils");
17
-
18
12
  var _styles = require("@os-design/styles");
19
-
20
13
  var _media = require("@os-design/media");
21
-
22
14
  var _react2 = require("@emotion/react");
23
-
24
15
  var _icons = require("@os-design/icons");
25
-
26
16
  var _theming = require("@os-design/theming");
27
-
28
17
  var _portal = _interopRequireDefault(require("@os-design/portal"));
29
-
30
18
  var _Button = _interopRequireDefault(require("../Button"));
31
-
32
19
  var _defaultLocale = _interopRequireDefault(require("./utils/defaultLocale"));
33
-
34
20
  var _excluded = ["title", "okText", "okDanger", "okLoading", "okDisabled", "header", "footer", "visible", "locale", "onClose", "onOk", "size", "id", "onClick", "children"];
35
-
36
21
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
37
-
38
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39
-
40
23
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
41
-
42
24
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
-
44
25
  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); }
45
-
46
26
  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; }
47
-
48
27
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
49
-
50
28
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
51
-
52
29
  var MODAL_CONTAINER_Z_INDEX = 1000;
53
30
  var MODAL_BOX_SHADOW_SIZE_EM = 1;
54
31
  var maskFadeIn = (0, _react2.keyframes)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from { opacity: 0; }\n to { opacity: 1; }\n"])));
55
32
  var maskFadeOut = (0, _react2.keyframes)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n from { opacity: 1; }\n to { opacity: 0; }\n"])));
56
-
57
33
  var maskVisibleStyles = function maskVisibleStyles(p) {
58
34
  return p.visible && (0, _react2.css)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n animation: ", " ", "ms forwards;\n "])), maskFadeIn, p.theme.transitionDelay);
59
35
  };
60
-
61
36
  var maskInvisibleStyles = function maskInvisibleStyles(p) {
62
37
  return !p.visible && (0, _react2.css)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n animation: ", " ", "ms forwards;\n "])), maskFadeOut, p.theme.transitionDelay);
63
38
  };
64
-
65
39
  var ModalMask = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('visible'))(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n background-color: ", ";\n z-index: ", ";\n ", ";\n ", ";\n"])), function (p) {
66
40
  return (0, _theming.clr)(p.theme.modalMaskColorBg);
67
41
  }, MODAL_CONTAINER_Z_INDEX, maskVisibleStyles, maskInvisibleStyles);
68
42
  exports.ModalMask = ModalMask;
69
-
70
43
  var Container = _styled["default"].div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n z-index: ", ";\n\n ", " {\n ", ";\n }\n"])), MODAL_CONTAINER_Z_INDEX, _media.m.min.xs, (0, _styles.enableScrollingStyles)('y'));
71
-
72
44
  var contentFadeIn = (0, _react2.keyframes)(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n from { transform: translateY(calc(var(--vh, 1vh) * 100 + ", "em)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n"])), MODAL_BOX_SHADOW_SIZE_EM);
73
45
  var contentFadeOut = (0, _react2.keyframes)(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n from { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 + ", "em)); }\n"])), MODAL_BOX_SHADOW_SIZE_EM);
74
46
  var contentFadeInXs = (0, _react2.keyframes)(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n from { transform: translateY(calc(-100% - ", "em)); }\n to { transform: translateY(6em); }\n"])), MODAL_BOX_SHADOW_SIZE_EM);
75
47
  var contentFadeOutXs = (0, _react2.keyframes)(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n from { transform: translateY(6em); }\n to { transform: translateY(calc(-100% - ", "em)); }\n"])), MODAL_BOX_SHADOW_SIZE_EM);
76
-
77
48
  var contentVisibleStyles = function contentVisibleStyles(p) {
78
49
  return p.visible && (0, _react2.css)(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n animation: ", " ", "ms forwards;\n ", " {\n animation: ", " ", "ms forwards;\n }\n "])), contentFadeIn, p.theme.transitionDelay, _media.m.min.xs, contentFadeInXs, p.theme.transitionDelay);
79
50
  };
80
-
81
51
  var contentInvisibleStyles = function contentInvisibleStyles(p) {
82
52
  return !p.visible && (0, _react2.css)(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n animation: ", " ", "ms forwards;\n ", " {\n animation: ", " ", "ms forwards;\n }\n "])), contentFadeOut, p.theme.transitionDelay, _media.m.min.xs, contentFadeOutXs, p.theme.transitionDelay);
83
53
  };
84
-
85
54
  var Content = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('visible', 'size'))(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["\n position: absolute;\n display: flex;\n flex-direction: column;\n padding-bottom: env(safe-area-inset-bottom);\n\n background-color: ", ";\n color: ", ";\n box-shadow: 0 0 ", "em\n ", ";\n\n width: 100%;\n max-height: 100%;\n border-radius: ", "em\n ", "em 0 0;\n\n ", " {\n width: ", "em;\n max-height: unset;\n border-radius: ", "em;\n\n left: 50%;\n margin-left: ", "em;\n }\n\n ", ";\n ", "\n ", ";\n"])), function (p) {
86
55
  return (0, _theming.clr)(p.theme.colorBg);
87
56
  }, function (p) {
@@ -99,7 +68,6 @@ var Content = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('visib
99
68
  }, function (p) {
100
69
  return -p.theme.modalWidth / 2;
101
70
  }, contentVisibleStyles, contentInvisibleStyles, _styles.sizeStyles);
102
-
103
71
  var Header = _styled["default"].div(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["\n flex-shrink: 0;\n height: ", "em;\n border-bottom: 1px solid ", ";\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n\n padding-left: ", "em;\n padding-right: ", "em;\n\n ", " {\n padding-left: ", "em;\n padding-right: ", "em;\n }\n"])), function (p) {
104
72
  return p.theme.modalHeaderHeight;
105
73
  }, function (p) {
@@ -113,11 +81,9 @@ var Header = _styled["default"].div(_templateObject14 || (_templateObject14 = _t
113
81
  }, function (p) {
114
82
  return Math.max(p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal, 0);
115
83
  });
116
-
117
84
  var Title = _styled["default"].div(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral(["\n flex: 1;\n font-size: ", "em;\n font-weight: 500;\n ", ";\n"])), function (p) {
118
85
  return p.theme.sizes.large;
119
86
  }, _styles.ellipsisStyles);
120
-
121
87
  var Body = _styled["default"].div(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral(["\n flex-grow: 1;\n\n padding: ", "em\n ", "em;\n\n ", " {\n padding: ", "em\n ", "em;\n }\n\n ", ";\n"])), function (p) {
122
88
  return p.theme.modalBodyPaddingVertical[0];
123
89
  }, function (p) {
@@ -127,7 +93,6 @@ var Body = _styled["default"].div(_templateObject16 || (_templateObject16 = _tag
127
93
  }, function (p) {
128
94
  return p.theme.modalBodyPaddingHorizontal[1];
129
95
  }, (0, _styles.enableScrollingStyles)('y'));
130
-
131
96
  var Footer = _styled["default"].div(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral(["\n padding: 0 ", "em\n ", "em;\n\n ", " {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n\n padding: 0 ", "em\n ", "em;\n }\n"])), function (p) {
132
97
  return p.theme.modalBodyPaddingHorizontal[0];
133
98
  }, function (p) {
@@ -137,42 +102,38 @@ var Footer = _styled["default"].div(_templateObject17 || (_templateObject17 = _t
137
102
  }, function (p) {
138
103
  return p.theme.modalBodyPaddingVertical[1];
139
104
  });
105
+
140
106
  /**
141
107
  * The base pop-up window.
142
108
  */
143
-
144
-
145
109
  var Modal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
146
110
  var title = _ref.title,
147
- _ref$okText = _ref.okText,
148
- okText = _ref$okText === void 0 ? 'OK' : _ref$okText,
149
- _ref$okDanger = _ref.okDanger,
150
- okDanger = _ref$okDanger === void 0 ? false : _ref$okDanger,
151
- _ref$okLoading = _ref.okLoading,
152
- okLoading = _ref$okLoading === void 0 ? false : _ref$okLoading,
153
- _ref$okDisabled = _ref.okDisabled,
154
- okDisabled = _ref$okDisabled === void 0 ? false : _ref$okDisabled,
155
- header = _ref.header,
156
- footer = _ref.footer,
157
- _ref$visible = _ref.visible,
158
- visible = _ref$visible === void 0 ? false : _ref$visible,
159
- _ref$locale = _ref.locale,
160
- locale = _ref$locale === void 0 ? _defaultLocale["default"] : _ref$locale,
161
- _ref$onClose = _ref.onClose,
162
- onClose = _ref$onClose === void 0 ? function () {} : _ref$onClose,
163
- onOk = _ref.onOk,
164
- size = _ref.size,
165
- id = _ref.id,
166
- _ref$onClick = _ref.onClick,
167
- _onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
168
- children = _ref.children,
169
- rest = _objectWithoutProperties(_ref, _excluded);
170
-
111
+ _ref$okText = _ref.okText,
112
+ okText = _ref$okText === void 0 ? 'OK' : _ref$okText,
113
+ _ref$okDanger = _ref.okDanger,
114
+ okDanger = _ref$okDanger === void 0 ? false : _ref$okDanger,
115
+ _ref$okLoading = _ref.okLoading,
116
+ okLoading = _ref$okLoading === void 0 ? false : _ref$okLoading,
117
+ _ref$okDisabled = _ref.okDisabled,
118
+ okDisabled = _ref$okDisabled === void 0 ? false : _ref$okDisabled,
119
+ header = _ref.header,
120
+ footer = _ref.footer,
121
+ _ref$visible = _ref.visible,
122
+ visible = _ref$visible === void 0 ? false : _ref$visible,
123
+ _ref$locale = _ref.locale,
124
+ locale = _ref$locale === void 0 ? _defaultLocale["default"] : _ref$locale,
125
+ _ref$onClose = _ref.onClose,
126
+ onClose = _ref$onClose === void 0 ? function () {} : _ref$onClose,
127
+ onOk = _ref.onOk,
128
+ size = _ref.size,
129
+ id = _ref.id,
130
+ _ref$onClick = _ref.onClick,
131
+ _onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
132
+ children = _ref.children,
133
+ rest = _objectWithoutProperties(_ref, _excluded);
171
134
  var contentRef = (0, _react.useRef)(null);
172
-
173
135
  var _useTheme = (0, _theming.useTheme)(),
174
- theme = _useTheme.theme;
175
-
136
+ theme = _useTheme.theme;
176
137
  var mounted = (0, _utils.useClosable)(visible, theme.transitionDelay);
177
138
  (0, _utils.useBodyScroll)(!visible);
178
139
  (0, _utils.useKeyPress)(typeof window !== 'undefined' ? window : undefined, 'Escape', onClose);
@@ -194,7 +155,6 @@ var Modal = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
194
155
  size: size,
195
156
  onClick: function onClick(e) {
196
157
  e.stopPropagation();
197
-
198
158
  _onClick(e);
199
159
  },
200
160
  role: "dialog",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["MODAL_CONTAINER_Z_INDEX","MODAL_BOX_SHADOW_SIZE_EM","maskFadeIn","keyframes","maskFadeOut","maskVisibleStyles","p","visible","css","theme","transitionDelay","maskInvisibleStyles","ModalMask","styled","omitEmotionProps","clr","modalMaskColorBg","Container","div","m","min","xs","enableScrollingStyles","contentFadeIn","contentFadeOut","contentFadeInXs","contentFadeOutXs","contentVisibleStyles","contentInvisibleStyles","Content","colorBg","colorText","modalColorBoxShadow","borderRadius","modalWidth","sizeStyles","Header","modalHeaderHeight","modalHeaderColorBorderBottom","modalBodyPaddingHorizontal","Math","max","buttonPaddingHorizontal","Title","sizes","large","ellipsisStyles","Body","modalBodyPaddingVertical","Footer","Modal","forwardRef","ref","title","okText","okDanger","okLoading","okDisabled","header","footer","locale","defaultLocale","onClose","onOk","size","id","onClick","children","rest","contentRef","useRef","useTheme","mounted","useClosable","useBodyScroll","useKeyPress","window","undefined","titleId","useMemo","random","toString","slice","bodyId","e","stopPropagation","t","modalCloseButtonPaddingHorizontal","closeLabel","displayName"],"sources":["../../../src/Modal/index.tsx"],"sourcesContent":["import React, { forwardRef, useMemo, useRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport styled from '@emotion/styled';\nimport {\n useBodyScroll,\n useKeyPress,\n useClosable,\n omitEmotionProps,\n} from '@os-design/utils';\nimport {\n ellipsisStyles,\n enableScrollingStyles,\n sizeStyles,\n WithSize,\n} from '@os-design/styles';\nimport { m } from '@os-design/media';\nimport { css, keyframes } from '@emotion/react';\nimport { Close } from '@os-design/icons';\nimport { clr, ThemeOverrider, useTheme } from '@os-design/theming';\nimport Portal from '@os-design/portal';\nimport Button from '../Button';\nimport defaultLocale, { ModalLocale } from './utils/defaultLocale';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ModalProps extends JsxDivProps, WithSize {\n /**\n * The title of the modal.\n * @default undefined\n */\n title?: string;\n /**\n * The text of the OK button.\n * @default OK\n */\n okText?: string;\n /**\n * Sets the danger styles to the OK button.\n * @default false\n */\n okDanger?: boolean;\n /**\n * Whether the OK button is loading.\n * @default false\n */\n okLoading?: boolean;\n /**\n * Whether the OK button is disabled.\n * @default false\n */\n okDisabled?: boolean;\n /**\n * The header component.\n * Set as null if you don't need the default header.\n * @default undefined\n */\n header?: React.ReactNode;\n /**\n * The footer component.\n * Set as null if you don't need the default footer.\n * @default undefined\n */\n footer?: React.ReactNode;\n /**\n * Whether the modal is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The locale of the modal.\n * @default undefined\n */\n locale?: ModalLocale;\n /**\n * Specifies a callback that will be called when a user clicks the mask or\n * the close button. The callback should set the visible state to false.\n * @default undefined\n */\n onClose?: () => void;\n /**\n * Specifies a callback that will be called when a user clicks the OK button.\n * @default undefined\n */\n onOk?: () => void;\n}\n\nconst MODAL_CONTAINER_Z_INDEX = 1000;\nconst MODAL_BOX_SHADOW_SIZE_EM = 1;\n\nconst maskFadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst maskFadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst maskVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${maskFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst maskInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${maskFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ntype MaskProps = Pick<ModalProps, 'visible'>;\nexport const ModalMask = styled('div', omitEmotionProps('visible'))<MaskProps>`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n background-color: ${(p) => clr(p.theme.modalMaskColorBg)};\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n ${maskVisibleStyles};\n ${maskInvisibleStyles};\n`;\n\nconst Container = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n\n ${m.min.xs} {\n ${enableScrollingStyles('y')};\n }\n`;\n\nconst contentFadeIn = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n`;\n\nconst contentFadeOut = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentFadeInXs = keyframes`\n from { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(6em); }\n`;\n\nconst contentFadeOutXs = keyframes`\n from { transform: translateY(6em); }\n to { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${contentFadeIn} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeInXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\nconst contentInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${contentFadeOut} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeOutXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\ntype ContentProps = Pick<ModalProps, 'visible' | 'size'>;\nconst Content = styled(\n 'div',\n omitEmotionProps('visible', 'size')\n)<ContentProps>`\n position: absolute;\n display: flex;\n flex-direction: column;\n padding-bottom: env(safe-area-inset-bottom);\n\n background-color: ${(p) => clr(p.theme.colorBg)};\n color: ${(p) => clr(p.theme.colorText)};\n box-shadow: 0 0 ${MODAL_BOX_SHADOW_SIZE_EM}em\n ${(p) => clr(p.theme.modalColorBoxShadow)};\n\n width: 100%;\n max-height: 100%;\n border-radius: ${(p) => p.theme.borderRadius}em\n ${(p) => p.theme.borderRadius}em 0 0;\n\n ${m.min.xs} {\n width: ${(p) => p.theme.modalWidth}em;\n max-height: unset;\n border-radius: ${(p) => p.theme.borderRadius}em;\n\n left: 50%;\n margin-left: ${(p) => -p.theme.modalWidth / 2}em;\n }\n\n ${contentVisibleStyles};\n ${contentInvisibleStyles}\n ${sizeStyles};\n`;\n\nconst Header = styled.div`\n flex-shrink: 0;\n height: ${(p) => p.theme.modalHeaderHeight}em;\n border-bottom: 1px solid ${(p) => clr(p.theme.modalHeaderColorBorderBottom)};\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n\n ${m.min.xs} {\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n }\n`;\n\nconst Title = styled.div`\n flex: 1;\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n ${ellipsisStyles};\n`;\n\nconst Body = styled.div`\n flex-grow: 1;\n\n padding: ${(p) => p.theme.modalBodyPaddingVertical[0]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n\n ${m.min.xs} {\n padding: ${(p) => p.theme.modalBodyPaddingVertical[1]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n }\n\n ${enableScrollingStyles('y')};\n`;\n\nconst Footer = styled.div`\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em\n ${(p) => p.theme.modalBodyPaddingVertical[0]}em;\n\n ${m.min.xs} {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em\n ${(p) => p.theme.modalBodyPaddingVertical[1]}em;\n }\n`;\n\n/**\n * The base pop-up window.\n */\nconst Modal = forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n title,\n okText = 'OK',\n okDanger = false,\n okLoading = false,\n okDisabled = false,\n header,\n footer,\n visible = false,\n locale = defaultLocale,\n onClose = () => {},\n onOk,\n size,\n id,\n onClick = () => {},\n children,\n ...rest\n },\n ref\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n useBodyScroll(!visible);\n useKeyPress(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'Escape',\n onClose\n );\n\n const titleId = useMemo(\n () => `modal-title-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n const bodyId = useMemo(\n () => id || `modal-body-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <ModalMask visible={visible} />\n <Container onClick={onClose}>\n <FocusLock autoFocus={false}>\n <Content\n visible={visible}\n size={size}\n onClick={(e) => {\n e.stopPropagation();\n onClick(e);\n }}\n role='dialog'\n aria-modal\n aria-labelledby={header === undefined ? titleId : undefined}\n aria-describedby={bodyId}\n ref={contentRef}\n >\n {header === undefined ? (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal:\n t.modalCloseButtonPaddingHorizontal,\n })}\n >\n <Header>\n <Title id={titleId}>{title}</Title>\n <Button\n type='ghost'\n wide='never'\n onClick={onClose}\n aria-label={locale.closeLabel}\n >\n <Close />\n </Button>\n </Header>\n </ThemeOverrider>\n ) : (\n header\n )}\n\n <Body id={bodyId} {...rest} ref={ref}>\n {children}\n </Body>\n\n {footer === undefined ? (\n <Footer>\n <Button\n danger={okDanger}\n loading={okLoading}\n disabled={okDisabled}\n onClick={onOk}\n >\n {okText}\n </Button>\n </Footer>\n ) : (\n footer\n )}\n </Content>\n </FocusLock>\n </Container>\n </Portal>\n );\n }\n);\n\nModal.displayName = 'Modal';\n\nexport default Modal;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["MODAL_CONTAINER_Z_INDEX","MODAL_BOX_SHADOW_SIZE_EM","maskFadeIn","keyframes","maskFadeOut","maskVisibleStyles","p","visible","css","theme","transitionDelay","maskInvisibleStyles","ModalMask","styled","omitEmotionProps","clr","modalMaskColorBg","Container","div","m","min","xs","enableScrollingStyles","contentFadeIn","contentFadeOut","contentFadeInXs","contentFadeOutXs","contentVisibleStyles","contentInvisibleStyles","Content","colorBg","colorText","modalColorBoxShadow","borderRadius","modalWidth","sizeStyles","Header","modalHeaderHeight","modalHeaderColorBorderBottom","modalBodyPaddingHorizontal","Math","max","buttonPaddingHorizontal","Title","sizes","large","ellipsisStyles","Body","modalBodyPaddingVertical","Footer","Modal","forwardRef","ref","title","okText","okDanger","okLoading","okDisabled","header","footer","locale","defaultLocale","onClose","onOk","size","id","onClick","children","rest","contentRef","useRef","useTheme","mounted","useClosable","useBodyScroll","useKeyPress","window","undefined","titleId","useMemo","random","toString","slice","bodyId","e","stopPropagation","t","modalCloseButtonPaddingHorizontal","closeLabel","displayName"],"sources":["../../../src/Modal/index.tsx"],"sourcesContent":["import React, { forwardRef, useMemo, useRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport styled from '@emotion/styled';\nimport {\n useBodyScroll,\n useKeyPress,\n useClosable,\n omitEmotionProps,\n} from '@os-design/utils';\nimport {\n ellipsisStyles,\n enableScrollingStyles,\n sizeStyles,\n WithSize,\n} from '@os-design/styles';\nimport { m } from '@os-design/media';\nimport { css, keyframes } from '@emotion/react';\nimport { Close } from '@os-design/icons';\nimport { clr, ThemeOverrider, useTheme } from '@os-design/theming';\nimport Portal from '@os-design/portal';\nimport Button from '../Button';\nimport defaultLocale, { ModalLocale } from './utils/defaultLocale';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ModalProps extends JsxDivProps, WithSize {\n /**\n * The title of the modal.\n * @default undefined\n */\n title?: string;\n /**\n * The text of the OK button.\n * @default OK\n */\n okText?: string;\n /**\n * Sets the danger styles to the OK button.\n * @default false\n */\n okDanger?: boolean;\n /**\n * Whether the OK button is loading.\n * @default false\n */\n okLoading?: boolean;\n /**\n * Whether the OK button is disabled.\n * @default false\n */\n okDisabled?: boolean;\n /**\n * The header component.\n * Set as null if you don't need the default header.\n * @default undefined\n */\n header?: React.ReactNode;\n /**\n * The footer component.\n * Set as null if you don't need the default footer.\n * @default undefined\n */\n footer?: React.ReactNode;\n /**\n * Whether the modal is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The locale of the modal.\n * @default undefined\n */\n locale?: ModalLocale;\n /**\n * Specifies a callback that will be called when a user clicks the mask or\n * the close button. The callback should set the visible state to false.\n * @default undefined\n */\n onClose?: () => void;\n /**\n * Specifies a callback that will be called when a user clicks the OK button.\n * @default undefined\n */\n onOk?: () => void;\n}\n\nconst MODAL_CONTAINER_Z_INDEX = 1000;\nconst MODAL_BOX_SHADOW_SIZE_EM = 1;\n\nconst maskFadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst maskFadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst maskVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${maskFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst maskInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${maskFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ntype MaskProps = Pick<ModalProps, 'visible'>;\nexport const ModalMask = styled('div', omitEmotionProps('visible'))<MaskProps>`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n background-color: ${(p) => clr(p.theme.modalMaskColorBg)};\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n ${maskVisibleStyles};\n ${maskInvisibleStyles};\n`;\n\nconst Container = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n\n ${m.min.xs} {\n ${enableScrollingStyles('y')};\n }\n`;\n\nconst contentFadeIn = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n`;\n\nconst contentFadeOut = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentFadeInXs = keyframes`\n from { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(6em); }\n`;\n\nconst contentFadeOutXs = keyframes`\n from { transform: translateY(6em); }\n to { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${contentFadeIn} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeInXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\nconst contentInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${contentFadeOut} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeOutXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\ntype ContentProps = Pick<ModalProps, 'visible' | 'size'>;\nconst Content = styled(\n 'div',\n omitEmotionProps('visible', 'size')\n)<ContentProps>`\n position: absolute;\n display: flex;\n flex-direction: column;\n padding-bottom: env(safe-area-inset-bottom);\n\n background-color: ${(p) => clr(p.theme.colorBg)};\n color: ${(p) => clr(p.theme.colorText)};\n box-shadow: 0 0 ${MODAL_BOX_SHADOW_SIZE_EM}em\n ${(p) => clr(p.theme.modalColorBoxShadow)};\n\n width: 100%;\n max-height: 100%;\n border-radius: ${(p) => p.theme.borderRadius}em\n ${(p) => p.theme.borderRadius}em 0 0;\n\n ${m.min.xs} {\n width: ${(p) => p.theme.modalWidth}em;\n max-height: unset;\n border-radius: ${(p) => p.theme.borderRadius}em;\n\n left: 50%;\n margin-left: ${(p) => -p.theme.modalWidth / 2}em;\n }\n\n ${contentVisibleStyles};\n ${contentInvisibleStyles}\n ${sizeStyles};\n`;\n\nconst Header = styled.div`\n flex-shrink: 0;\n height: ${(p) => p.theme.modalHeaderHeight}em;\n border-bottom: 1px solid ${(p) => clr(p.theme.modalHeaderColorBorderBottom)};\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n\n ${m.min.xs} {\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n }\n`;\n\nconst Title = styled.div`\n flex: 1;\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n ${ellipsisStyles};\n`;\n\nconst Body = styled.div`\n flex-grow: 1;\n\n padding: ${(p) => p.theme.modalBodyPaddingVertical[0]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n\n ${m.min.xs} {\n padding: ${(p) => p.theme.modalBodyPaddingVertical[1]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n }\n\n ${enableScrollingStyles('y')};\n`;\n\nconst Footer = styled.div`\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em\n ${(p) => p.theme.modalBodyPaddingVertical[0]}em;\n\n ${m.min.xs} {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em\n ${(p) => p.theme.modalBodyPaddingVertical[1]}em;\n }\n`;\n\n/**\n * The base pop-up window.\n */\nconst Modal = forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n title,\n okText = 'OK',\n okDanger = false,\n okLoading = false,\n okDisabled = false,\n header,\n footer,\n visible = false,\n locale = defaultLocale,\n onClose = () => {},\n onOk,\n size,\n id,\n onClick = () => {},\n children,\n ...rest\n },\n ref\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n useBodyScroll(!visible);\n useKeyPress(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'Escape',\n onClose\n );\n\n const titleId = useMemo(\n () => `modal-title-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n const bodyId = useMemo(\n () => id || `modal-body-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <ModalMask visible={visible} />\n <Container onClick={onClose}>\n <FocusLock autoFocus={false}>\n <Content\n visible={visible}\n size={size}\n onClick={(e) => {\n e.stopPropagation();\n onClick(e);\n }}\n role='dialog'\n aria-modal\n aria-labelledby={header === undefined ? titleId : undefined}\n aria-describedby={bodyId}\n ref={contentRef}\n >\n {header === undefined ? (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal:\n t.modalCloseButtonPaddingHorizontal,\n })}\n >\n <Header>\n <Title id={titleId}>{title}</Title>\n <Button\n type='ghost'\n wide='never'\n onClick={onClose}\n aria-label={locale.closeLabel}\n >\n <Close />\n </Button>\n </Header>\n </ThemeOverrider>\n ) : (\n header\n )}\n\n <Body id={bodyId} {...rest} ref={ref}>\n {children}\n </Body>\n\n {footer === undefined ? (\n <Footer>\n <Button\n danger={okDanger}\n loading={okLoading}\n disabled={okDisabled}\n onClick={onOk}\n >\n {okText}\n </Button>\n </Footer>\n ) : (\n footer\n )}\n </Content>\n </FocusLock>\n </Container>\n </Portal>\n );\n }\n);\n\nModal.displayName = 'Modal';\n\nexport default Modal;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"defaultLocale.js","names":["defaultLocale","closeLabel"],"sources":["../../../../src/Modal/utils/defaultLocale.ts"],"sourcesContent":["export interface ModalLocale {\n closeLabel: string;\n}\n\nconst defaultLocale: ModalLocale = {\n closeLabel: 'Close',\n};\n\nexport default defaultLocale;\n"],"mappings":";;;;;;AAIA,IAAMA,aAA0B,GAAG;EACjCC,UAAU,EAAE;AADqB,CAAnC;eAIeD,a"}
1
+ {"version":3,"file":"defaultLocale.js","names":["defaultLocale","closeLabel"],"sources":["../../../../src/Modal/utils/defaultLocale.ts"],"sourcesContent":["export interface ModalLocale {\n closeLabel: string;\n}\n\nconst defaultLocale: ModalLocale = {\n closeLabel: 'Close',\n};\n\nexport default defaultLocale;\n"],"mappings":";;;;;;AAIA,IAAMA,aAA0B,GAAG;EACjCC,UAAU,EAAE;AACd,CAAC;AAAC,eAEaD,aAAa;AAAA"}
@@ -1,46 +1,27 @@
1
1
  "use strict";
2
2
 
3
3
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _react = _interopRequireWildcard(require("react"));
11
-
12
9
  var _styles = require("@os-design/styles");
13
-
14
10
  var _utils = require("@os-design/utils");
15
-
16
11
  var _styled = _interopRequireDefault(require("@emotion/styled"));
17
-
18
12
  var _theming = require("@os-design/theming");
19
-
20
13
  var _media = require("@os-design/media");
21
-
22
14
  var _react2 = require("@emotion/react");
23
-
24
15
  var _useScrollFlags2 = _interopRequireDefault(require("./utils/useScrollFlags"));
25
-
26
16
  var _excluded = ["sideTop", "sideBottom", "children"];
27
-
28
17
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
29
-
30
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
31
-
32
19
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
-
34
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
-
36
21
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
37
-
38
22
  function _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; }
39
-
40
23
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
41
-
42
24
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
43
-
44
25
  var Container = _styled["default"].div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: fixed;\n box-sizing: border-box;\n z-index: 101;\n\n background-color: ", ";\n color: ", ";\n\n // Tab navigator\n bottom: 0;\n left: 0;\n right: 0;\n height: calc(\n ", "em + env(safe-area-inset-bottom)\n );\n border-top: 1px solid ", ";\n\n // Side navigator\n ", " {\n // Reset tab navigator styles\n right: unset;\n height: unset;\n border-top: unset;\n\n left: 0;\n top: 0;\n bottom: 0;\n width: ", "em;\n border-right: 1px solid ", ";\n }\n"])), function (p) {
45
26
  return (0, _theming.clr)(p.theme.navigationColorBg);
46
27
  }, function (p) {
@@ -54,44 +35,34 @@ var Container = _styled["default"].div(_templateObject || (_templateObject = _ta
54
35
  }, function (p) {
55
36
  return (0, _theming.clr)(p.theme.navigationColorBorder);
56
37
  });
57
-
58
38
  var notHasSideTopStyles = function notHasSideTopStyles(p) {
59
39
  return !p.hasSideTop && (0, _react2.css)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n padding-top: ", "em;\n "])), p.theme.pageHeaderHeight[1]);
60
40
  };
61
-
62
41
  var hasPrevStyles = function hasPrevStyles(p) {
63
42
  return p.hasPrev && !p.hasNext && (0, _react2.css)(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n mask-image: linear-gradient(\n to right,\n transparent,\n white ", "em\n );\n ", " {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ", "em\n );\n }\n "])), p.theme.navigationMaskImageSize, _media.m.min.md, p.theme.navigationMaskImageSize);
64
43
  };
65
-
66
44
  var hasNextStyles = function hasNextStyles(p) {
67
45
  return !p.hasPrev && p.hasNext && (0, _react2.css)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n mask-image: linear-gradient(\n to left,\n transparent,\n white ", "em\n );\n ", " {\n mask-image: linear-gradient(\n to top,\n transparent,\n white ", "em\n );\n }\n "])), p.theme.navigationMaskImageSize, _media.m.min.md, p.theme.navigationMaskImageSize);
68
46
  };
69
-
70
47
  var hasPrevNextStyles = function hasPrevNextStyles(p) {
71
48
  return p.hasPrev && p.hasNext && (0, _react2.css)(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n mask-image: linear-gradient(\n to right,\n transparent,\n white ", "em,\n white calc(100% - ", "em),\n transparent\n );\n ", " {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ", "em,\n white calc(100% - ", "em),\n transparent\n );\n }\n "])), p.theme.navigationMaskImageSize, p.theme.navigationMaskImageSize, _media.m.min.md, p.theme.navigationMaskImageSize, p.theme.navigationMaskImageSize);
72
49
  };
73
-
74
50
  var Content = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('hasSideTop', 'hasPrev', 'hasNext'))(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: flex-start;\n &::before,\n &::after {\n content: ''; // Insert space before the first item and after the last one\n }\n\n overflow-y: hidden;\n ", ";\n\n ", " {\n // Reset tab navigator styles\n justify-content: unset;\n align-items: unset;\n\n flex-direction: column;\n\n overflow-x: hidden;\n ", ";\n\n ", ";\n }\n\n ", ";\n ", ";\n ", ";\n"])), (0, _styles.enableScrollingStyles)('x', false), _media.m.min.md, (0, _styles.enableScrollingStyles)('y', false), notHasSideTopStyles, hasPrevStyles, hasNextStyles, hasPrevNextStyles);
75
-
76
51
  var Addon = _styled["default"].div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n display: none;\n ", " {\n display: block;\n }\n"])), _media.m.min.md);
77
-
78
52
  var BottomAddon = (0, _styled["default"])(Addon)(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n margin-top: auto;\n"])));
53
+
79
54
  /**
80
55
  * The main navigation.
81
56
  */
82
-
83
57
  var Navigation = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
84
58
  var sideTop = _ref.sideTop,
85
- sideBottom = _ref.sideBottom,
86
- children = _ref.children,
87
- rest = _objectWithoutProperties(_ref, _excluded);
88
-
59
+ sideBottom = _ref.sideBottom,
60
+ children = _ref.children,
61
+ rest = _objectWithoutProperties(_ref, _excluded);
89
62
  var contentRef = (0, _react.useRef)(null);
90
-
91
63
  var _useScrollFlags = (0, _useScrollFlags2["default"])(contentRef),
92
- hasPrev = _useScrollFlags.hasPrev,
93
- hasNext = _useScrollFlags.hasNext;
94
-
64
+ hasPrev = _useScrollFlags.hasPrev,
65
+ hasNext = _useScrollFlags.hasNext;
95
66
  return /*#__PURE__*/_react["default"].createElement(Container, _extends({
96
67
  role: "navigation",
97
68
  "aria-label": "Main navigation"
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Container","styled","div","p","clr","theme","navigationColorBg","navigationColorText","navigationTabHeight","navigationColorBorder","m","min","md","navigationSideWidth","notHasSideTopStyles","hasSideTop","css","pageHeaderHeight","hasPrevStyles","hasPrev","hasNext","navigationMaskImageSize","hasNextStyles","hasPrevNextStyles","Content","omitEmotionProps","enableScrollingStyles","Addon","BottomAddon","Navigation","forwardRef","ref","sideTop","sideBottom","children","rest","contentRef","useRef","useScrollFlags","displayName"],"sources":["../../../src/Navigation/index.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { enableScrollingStyles } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\nimport { m } from '@os-design/media';\nimport { css } from '@emotion/react';\nimport useScrollFlags from './utils/useScrollFlags';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface NavigationProps extends JsxDivProps {\n /**\n * The top component in the side navigator.\n * E.g. the user avatar.\n * @default undefined\n */\n sideTop?: React.ReactNode;\n /**\n * The bottom component in the side navigator.\n * E.g. the current tariff.\n * @default undefined\n */\n sideBottom?: React.ReactNode;\n}\n\nconst Container = styled.div`\n position: fixed;\n box-sizing: border-box;\n z-index: 101;\n\n background-color: ${(p) => clr(p.theme.navigationColorBg)};\n color: ${(p) => clr(p.theme.navigationColorText)};\n\n // Tab navigator\n bottom: 0;\n left: 0;\n right: 0;\n height: calc(\n ${(p) => p.theme.navigationTabHeight}em + env(safe-area-inset-bottom)\n );\n border-top: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n\n // Side navigator\n ${m.min.md} {\n // Reset tab navigator styles\n right: unset;\n height: unset;\n border-top: unset;\n\n left: 0;\n top: 0;\n bottom: 0;\n width: ${(p) => p.theme.navigationSideWidth}em;\n border-right: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n }\n`;\n\nconst notHasSideTopStyles = (p) =>\n !p.hasSideTop &&\n css`\n padding-top: ${p.theme.pageHeaderHeight[1]}em;\n `;\n\nconst hasPrevStyles = (p) =>\n p.hasPrev &&\n !p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasNextStyles = (p) =>\n !p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to left,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to top,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasPrevNextStyles = (p) =>\n p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n }\n `;\n\ninterface ContentProps {\n hasSideTop: boolean;\n hasPrev: boolean;\n hasNext: boolean;\n}\nconst Content = styled(\n 'div',\n omitEmotionProps('hasSideTop', 'hasPrev', 'hasNext')\n)<ContentProps>`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: flex-start;\n &::before,\n &::after {\n content: ''; // Insert space before the first item and after the last one\n }\n\n overflow-y: hidden;\n ${enableScrollingStyles('x', false)};\n\n ${m.min.md} {\n // Reset tab navigator styles\n justify-content: unset;\n align-items: unset;\n\n flex-direction: column;\n\n overflow-x: hidden;\n ${enableScrollingStyles('y', false)};\n\n ${notHasSideTopStyles};\n }\n\n ${hasPrevStyles};\n ${hasNextStyles};\n ${hasPrevNextStyles};\n`;\n\nconst Addon = styled.div`\n display: none;\n ${m.min.md} {\n display: block;\n }\n`;\n\nconst BottomAddon = styled(Addon)`\n margin-top: auto;\n`;\n\n/**\n * The main navigation.\n */\nconst Navigation = forwardRef<HTMLDivElement, NavigationProps>(\n ({ sideTop, sideBottom, children, ...rest }, ref) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { hasPrev, hasNext } = useScrollFlags(contentRef);\n\n return (\n <Container\n role='navigation'\n aria-label='Main navigation'\n {...rest}\n ref={ref}\n >\n <Content\n hasSideTop={!!sideTop}\n hasPrev={hasPrev}\n hasNext={hasNext}\n ref={contentRef}\n role='list'\n >\n {sideTop && <Addon>{sideTop}</Addon>}\n {children}\n {sideBottom && <BottomAddon>{sideBottom}</BottomAddon>}\n </Content>\n </Container>\n );\n }\n);\n\nNavigation.displayName = 'Navigation';\n\nexport default Navigation;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["Container","styled","div","p","clr","theme","navigationColorBg","navigationColorText","navigationTabHeight","navigationColorBorder","m","min","md","navigationSideWidth","notHasSideTopStyles","hasSideTop","css","pageHeaderHeight","hasPrevStyles","hasPrev","hasNext","navigationMaskImageSize","hasNextStyles","hasPrevNextStyles","Content","omitEmotionProps","enableScrollingStyles","Addon","BottomAddon","Navigation","forwardRef","ref","sideTop","sideBottom","children","rest","contentRef","useRef","useScrollFlags","displayName"],"sources":["../../../src/Navigation/index.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from 'react';\nimport { enableScrollingStyles } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\nimport { m } from '@os-design/media';\nimport { css } from '@emotion/react';\nimport useScrollFlags from './utils/useScrollFlags';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface NavigationProps extends JsxDivProps {\n /**\n * The top component in the side navigator.\n * E.g. the user avatar.\n * @default undefined\n */\n sideTop?: React.ReactNode;\n /**\n * The bottom component in the side navigator.\n * E.g. the current tariff.\n * @default undefined\n */\n sideBottom?: React.ReactNode;\n}\n\nconst Container = styled.div`\n position: fixed;\n box-sizing: border-box;\n z-index: 101;\n\n background-color: ${(p) => clr(p.theme.navigationColorBg)};\n color: ${(p) => clr(p.theme.navigationColorText)};\n\n // Tab navigator\n bottom: 0;\n left: 0;\n right: 0;\n height: calc(\n ${(p) => p.theme.navigationTabHeight}em + env(safe-area-inset-bottom)\n );\n border-top: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n\n // Side navigator\n ${m.min.md} {\n // Reset tab navigator styles\n right: unset;\n height: unset;\n border-top: unset;\n\n left: 0;\n top: 0;\n bottom: 0;\n width: ${(p) => p.theme.navigationSideWidth}em;\n border-right: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n }\n`;\n\nconst notHasSideTopStyles = (p) =>\n !p.hasSideTop &&\n css`\n padding-top: ${p.theme.pageHeaderHeight[1]}em;\n `;\n\nconst hasPrevStyles = (p) =>\n p.hasPrev &&\n !p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasNextStyles = (p) =>\n !p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to left,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to top,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasPrevNextStyles = (p) =>\n p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n }\n `;\n\ninterface ContentProps {\n hasSideTop: boolean;\n hasPrev: boolean;\n hasNext: boolean;\n}\nconst Content = styled(\n 'div',\n omitEmotionProps('hasSideTop', 'hasPrev', 'hasNext')\n)<ContentProps>`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: flex-start;\n &::before,\n &::after {\n content: ''; // Insert space before the first item and after the last one\n }\n\n overflow-y: hidden;\n ${enableScrollingStyles('x', false)};\n\n ${m.min.md} {\n // Reset tab navigator styles\n justify-content: unset;\n align-items: unset;\n\n flex-direction: column;\n\n overflow-x: hidden;\n ${enableScrollingStyles('y', false)};\n\n ${notHasSideTopStyles};\n }\n\n ${hasPrevStyles};\n ${hasNextStyles};\n ${hasPrevNextStyles};\n`;\n\nconst Addon = styled.div`\n display: none;\n ${m.min.md} {\n display: block;\n }\n`;\n\nconst BottomAddon = styled(Addon)`\n margin-top: auto;\n`;\n\n/**\n * The main navigation.\n */\nconst Navigation = forwardRef<HTMLDivElement, NavigationProps>(\n ({ sideTop, sideBottom, children, ...rest }, ref) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { hasPrev, hasNext } = useScrollFlags(contentRef);\n\n return (\n <Container\n role='navigation'\n aria-label='Main navigation'\n {...rest}\n ref={ref}\n >\n <Content\n hasSideTop={!!sideTop}\n hasPrev={hasPrev}\n hasNext={hasNext}\n ref={contentRef}\n role='list'\n >\n {sideTop && <Addon>{sideTop}</Addon>}\n {children}\n {sideBottom && <BottomAddon>{sideBottom}</BottomAddon>}\n </Content>\n </Container>\n );\n }\n);\n\nNavigation.displayName = 'Navigation';\n\nexport default Navigation;\n"],"mappings":"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"}
@@ -4,36 +4,24 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  var _react = require("react");
9
-
10
8
  var _utils = require("@os-design/utils");
11
-
12
9
  var _media = require("@os-design/media");
13
-
14
10
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
15
-
16
11
  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."); }
17
-
18
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); }
19
-
20
13
  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; }
21
-
22
14
  function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
23
-
24
15
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
25
-
26
16
  var useScrollFlags = function useScrollFlags(ref) {
27
17
  var _useState = (0, _react.useState)(false),
28
- _useState2 = _slicedToArray(_useState, 2),
29
- hasPrev = _useState2[0],
30
- setHasPrev = _useState2[1];
31
-
18
+ _useState2 = _slicedToArray(_useState, 2),
19
+ hasPrev = _useState2[0],
20
+ setHasPrev = _useState2[1];
32
21
  var _useState3 = (0, _react.useState)(false),
33
- _useState4 = _slicedToArray(_useState3, 2),
34
- hasNext = _useState4[0],
35
- setHasNext = _useState4[1];
36
-
22
+ _useState4 = _slicedToArray(_useState3, 2),
23
+ hasNext = _useState4[0],
24
+ setHasNext = _useState4[1];
37
25
  var isMinMd = (0, _media.useIsMinWidth)('md');
38
26
  var scrollHandler = (0, _react.useCallback)(function () {
39
27
  var current = ref.current;
@@ -51,7 +39,6 @@ var useScrollFlags = function useScrollFlags(ref) {
51
39
  hasNext: hasNext
52
40
  };
53
41
  };
54
-
55
42
  var _default = useScrollFlags;
56
43
  exports["default"] = _default;
57
44
  //# sourceMappingURL=useScrollFlags.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useScrollFlags.js","names":["useScrollFlags","ref","useState","hasPrev","setHasPrev","hasNext","setHasNext","isMinMd","useIsMinWidth","scrollHandler","useCallback","current","useBrowserLayoutEffect","useEvent","window","undefined"],"sources":["../../../../src/Navigation/utils/useScrollFlags.ts"],"sourcesContent":["import { RefObject, useCallback, useState } from 'react';\nimport { useEvent, useBrowserLayoutEffect } from '@os-design/utils';\nimport { useIsMinWidth } from '@os-design/media';\n\ninterface UseScrollFlagsRes {\n hasPrev: boolean;\n hasNext: boolean;\n}\n\nconst useScrollFlags = (ref: RefObject<Element>): UseScrollFlagsRes => {\n const [hasPrev, setHasPrev] = useState(false);\n const [hasNext, setHasNext] = useState(false);\n const isMinMd = useIsMinWidth('md');\n\n const scrollHandler = useCallback(() => {\n const { current } = ref;\n if (!current) return;\n\n setHasPrev(current[isMinMd ? 'scrollTop' : 'scrollLeft'] > 0);\n setHasNext(\n current[isMinMd ? 'scrollHeight' : 'scrollWidth'] -\n current[isMinMd ? 'scrollTop' : 'scrollLeft'] -\n current[isMinMd ? 'clientHeight' : 'clientWidth'] >\n 0\n );\n }, [ref, isMinMd]);\n\n useBrowserLayoutEffect(() => scrollHandler(), [scrollHandler]);\n useEvent(ref, 'scroll', scrollHandler);\n useEvent(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'resize',\n scrollHandler\n );\n\n return { hasPrev, hasNext };\n};\n\nexport default useScrollFlags;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;AAOA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,GAAD,EAAgD;EACrE,gBAA8B,IAAAC,eAAA,EAAS,KAAT,CAA9B;EAAA;EAAA,IAAOC,OAAP;EAAA,IAAgBC,UAAhB;;EACA,iBAA8B,IAAAF,eAAA,EAAS,KAAT,CAA9B;EAAA;EAAA,IAAOG,OAAP;EAAA,IAAgBC,UAAhB;;EACA,IAAMC,OAAO,GAAG,IAAAC,oBAAA,EAAc,IAAd,CAAhB;EAEA,IAAMC,aAAa,GAAG,IAAAC,kBAAA,EAAY,YAAM;IACtC,IAAQC,OAAR,GAAoBV,GAApB,CAAQU,OAAR;IACA,IAAI,CAACA,OAAL,EAAc;IAEdP,UAAU,CAACO,OAAO,CAACJ,OAAO,GAAG,WAAH,GAAiB,YAAzB,CAAP,GAAgD,CAAjD,CAAV;IACAD,UAAU,CACRK,OAAO,CAACJ,OAAO,GAAG,cAAH,GAAoB,aAA5B,CAAP,GACEI,OAAO,CAACJ,OAAO,GAAG,WAAH,GAAiB,YAAzB,CADT,GAEEI,OAAO,CAACJ,OAAO,GAAG,cAAH,GAAoB,aAA5B,CAFT,GAGE,CAJM,CAAV;EAMD,CAXqB,EAWnB,CAACN,GAAD,EAAMM,OAAN,CAXmB,CAAtB;EAaA,IAAAK,6BAAA,EAAuB;IAAA,OAAMH,aAAa,EAAnB;EAAA,CAAvB,EAA8C,CAACA,aAAD,CAA9C;EACA,IAAAI,eAAA,EAASZ,GAAT,EAAc,QAAd,EAAwBQ,aAAxB;EACA,IAAAI,eAAA,EACG,OAAOC,MAAP,KAAkB,WAAlB,GAAgCA,MAAhC,GAAyCC,SAD5C,EAEE,QAFF,EAGEN,aAHF;EAMA,OAAO;IAAEN,OAAO,EAAPA,OAAF;IAAWE,OAAO,EAAPA;EAAX,CAAP;AACD,CA3BD;;eA6BeL,c"}
1
+ {"version":3,"file":"useScrollFlags.js","names":["useScrollFlags","ref","useState","hasPrev","setHasPrev","hasNext","setHasNext","isMinMd","useIsMinWidth","scrollHandler","useCallback","current","useBrowserLayoutEffect","useEvent","window","undefined"],"sources":["../../../../src/Navigation/utils/useScrollFlags.ts"],"sourcesContent":["import { RefObject, useCallback, useState } from 'react';\nimport { useEvent, useBrowserLayoutEffect } from '@os-design/utils';\nimport { useIsMinWidth } from '@os-design/media';\n\ninterface UseScrollFlagsRes {\n hasPrev: boolean;\n hasNext: boolean;\n}\n\nconst useScrollFlags = (ref: RefObject<Element>): UseScrollFlagsRes => {\n const [hasPrev, setHasPrev] = useState(false);\n const [hasNext, setHasNext] = useState(false);\n const isMinMd = useIsMinWidth('md');\n\n const scrollHandler = useCallback(() => {\n const { current } = ref;\n if (!current) return;\n\n setHasPrev(current[isMinMd ? 'scrollTop' : 'scrollLeft'] > 0);\n setHasNext(\n current[isMinMd ? 'scrollHeight' : 'scrollWidth'] -\n current[isMinMd ? 'scrollTop' : 'scrollLeft'] -\n current[isMinMd ? 'clientHeight' : 'clientWidth'] >\n 0\n );\n }, [ref, isMinMd]);\n\n useBrowserLayoutEffect(() => scrollHandler(), [scrollHandler]);\n useEvent(ref, 'scroll', scrollHandler);\n useEvent(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'resize',\n scrollHandler\n );\n\n return { hasPrev, hasNext };\n};\n\nexport default useScrollFlags;\n"],"mappings":";;;;;;AAAA;AACA;AACA;AAAiD;AAAA;AAAA;AAAA;AAAA;AAAA;AAOjD,IAAMA,cAAc,GAAG,SAAjBA,cAAc,CAAIC,GAAuB,EAAwB;EACrE,gBAA8B,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAA;IAAtCC,OAAO;IAAEC,UAAU;EAC1B,iBAA8B,IAAAF,eAAQ,EAAC,KAAK,CAAC;IAAA;IAAtCG,OAAO;IAAEC,UAAU;EAC1B,IAAMC,OAAO,GAAG,IAAAC,oBAAa,EAAC,IAAI,CAAC;EAEnC,IAAMC,aAAa,GAAG,IAAAC,kBAAW,EAAC,YAAM;IACtC,IAAQC,OAAO,GAAKV,GAAG,CAAfU,OAAO;IACf,IAAI,CAACA,OAAO,EAAE;IAEdP,UAAU,CAACO,OAAO,CAACJ,OAAO,GAAG,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IAC7DD,UAAU,CACRK,OAAO,CAACJ,OAAO,GAAG,cAAc,GAAG,aAAa,CAAC,GAC/CI,OAAO,CAACJ,OAAO,GAAG,WAAW,GAAG,YAAY,CAAC,GAC7CI,OAAO,CAACJ,OAAO,GAAG,cAAc,GAAG,aAAa,CAAC,GACjD,CAAC,CACJ;EACH,CAAC,EAAE,CAACN,GAAG,EAAEM,OAAO,CAAC,CAAC;EAElB,IAAAK,6BAAsB,EAAC;IAAA,OAAMH,aAAa,EAAE;EAAA,GAAE,CAACA,aAAa,CAAC,CAAC;EAC9D,IAAAI,eAAQ,EAACZ,GAAG,EAAE,QAAQ,EAAEQ,aAAa,CAAC;EACtC,IAAAI,eAAQ,EACL,OAAOC,MAAM,KAAK,WAAW,GAAGA,MAAM,GAAGC,SAAS,EACnD,QAAQ,EACRN,aAAa,CACd;EAED,OAAO;IAAEN,OAAO,EAAPA,OAAO;IAAEE,OAAO,EAAPA;EAAQ,CAAC;AAC7B,CAAC;AAAC,eAEaL,cAAc;AAAA"}