@os-design/core 1.0.135 → 1.0.138

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 (361) hide show
  1. package/dist/cjs/Alert/index.js +1 -1
  2. package/dist/cjs/Alert/index.js.map +1 -1
  3. package/dist/cjs/Avatar/index.js +1 -1
  4. package/dist/cjs/Avatar/index.js.map +1 -1
  5. package/dist/cjs/Avatar/utils/nameToInitials.js.map +1 -1
  6. package/dist/cjs/Avatar/utils/strToHue.js.map +1 -1
  7. package/dist/cjs/AvatarSkeleton/index.js +1 -1
  8. package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
  9. package/dist/cjs/Breadcrumb/index.js +1 -1
  10. package/dist/cjs/Breadcrumb/index.js.map +1 -1
  11. package/dist/cjs/BreadcrumbItem/index.js +1 -1
  12. package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
  13. package/dist/cjs/Button/ButtonContent.js.map +1 -1
  14. package/dist/cjs/Button/index.js +1 -1
  15. package/dist/cjs/Button/index.js.map +1 -1
  16. package/dist/cjs/Button/utils/useButtonColors.js.map +1 -1
  17. package/dist/cjs/Checkbox/index.js +1 -1
  18. package/dist/cjs/Checkbox/index.js.map +1 -1
  19. package/dist/cjs/CheckboxSkeleton/index.js +1 -1
  20. package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
  21. package/dist/cjs/DatePicker/DatePickerCalendar.js +1 -1
  22. package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
  23. package/dist/cjs/DatePicker/index.js +1 -1
  24. package/dist/cjs/DatePicker/index.js.map +1 -1
  25. package/dist/cjs/Drawer/index.js +1 -1
  26. package/dist/cjs/Drawer/index.js.map +1 -1
  27. package/dist/cjs/Form/FormConfigContext.js.map +1 -1
  28. package/dist/cjs/Form/index.js +1 -1
  29. package/dist/cjs/Form/index.js.map +1 -1
  30. package/dist/cjs/FormDivider/index.js +1 -1
  31. package/dist/cjs/FormDivider/index.js.map +1 -1
  32. package/dist/cjs/FormItem/index.js +1 -1
  33. package/dist/cjs/FormItem/index.js.map +1 -1
  34. package/dist/cjs/FormItem/utils/firstChildHasType.js.map +1 -1
  35. package/dist/cjs/GlobalStyles/index.js.map +1 -1
  36. package/dist/cjs/GlobalStyles/resetStyles.js.map +1 -1
  37. package/dist/cjs/GlobalStyles/typographyStyles.js.map +1 -1
  38. package/dist/cjs/HeaderSkeleton/index.js +1 -1
  39. package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
  40. package/dist/cjs/Image/index.js +1 -1
  41. package/dist/cjs/Image/index.js.map +1 -1
  42. package/dist/cjs/ImageSkeleton/index.js +1 -1
  43. package/dist/cjs/ImageSkeleton/index.js.map +1 -1
  44. package/dist/cjs/Input/index.js +1 -1
  45. package/dist/cjs/Input/index.js.map +1 -1
  46. package/dist/cjs/Input/utils/getFocusableElements.js.map +1 -1
  47. package/dist/cjs/InputNumber/index.js +1 -1
  48. package/dist/cjs/InputNumber/index.js.map +1 -1
  49. package/dist/cjs/InputNumber/utils/defaultLocale.js.map +1 -1
  50. package/dist/cjs/InputPassword/index.js +1 -1
  51. package/dist/cjs/InputPassword/index.js.map +1 -1
  52. package/dist/cjs/InputPassword/utils/defaultLocale.js.map +1 -1
  53. package/dist/cjs/InputSearch/index.js +1 -1
  54. package/dist/cjs/InputSearch/index.js.map +1 -1
  55. package/dist/cjs/InputSearch/utils/defaultLocale.js.map +1 -1
  56. package/dist/cjs/InputSkeleton/index.js +1 -1
  57. package/dist/cjs/InputSkeleton/index.js.map +1 -1
  58. package/dist/cjs/Layout/LayoutContext.js.map +1 -1
  59. package/dist/cjs/Layout/index.js.map +1 -1
  60. package/dist/cjs/Link/index.js +1 -1
  61. package/dist/cjs/Link/index.js.map +1 -1
  62. package/dist/cjs/LinkButton/index.js +1 -1
  63. package/dist/cjs/LinkButton/index.js.map +1 -1
  64. package/dist/cjs/List/WindowScroller.js.map +1 -1
  65. package/dist/cjs/List/index.js +3 -5
  66. package/dist/cjs/List/index.js.map +1 -1
  67. package/dist/cjs/List/utils/bodyPointerEvents.js.map +1 -1
  68. package/dist/cjs/List/utils/frameTimeout.js.map +1 -1
  69. package/dist/cjs/List/utils/useRWLoadNext.js.map +1 -1
  70. package/dist/cjs/ListItem/ListItemContent.js +1 -1
  71. package/dist/cjs/ListItem/ListItemContent.js.map +1 -1
  72. package/dist/cjs/ListItem/index.js +1 -1
  73. package/dist/cjs/ListItem/index.js.map +1 -1
  74. package/dist/cjs/ListItemLink/index.js +1 -1
  75. package/dist/cjs/ListItemLink/index.js.map +1 -1
  76. package/dist/cjs/ListSkeleton/index.js +1 -1
  77. package/dist/cjs/ListSkeleton/index.js.map +1 -1
  78. package/dist/cjs/LogoLink/index.js +1 -1
  79. package/dist/cjs/LogoLink/index.js.map +1 -1
  80. package/dist/cjs/Menu/index.js +1 -1
  81. package/dist/cjs/Menu/index.js.map +1 -1
  82. package/dist/cjs/Menu/utils/useFocusWithArrows.js.map +1 -1
  83. package/dist/cjs/MenuDivider/index.js +1 -1
  84. package/dist/cjs/MenuDivider/index.js.map +1 -1
  85. package/dist/cjs/MenuGroup/index.js +1 -1
  86. package/dist/cjs/MenuGroup/index.js.map +1 -1
  87. package/dist/cjs/MenuItem/index.js +1 -1
  88. package/dist/cjs/MenuItem/index.js.map +1 -1
  89. package/dist/cjs/Modal/index.js +1 -1
  90. package/dist/cjs/Modal/index.js.map +1 -1
  91. package/dist/cjs/Modal/utils/defaultLocale.js.map +1 -1
  92. package/dist/cjs/Navigation/index.js +1 -1
  93. package/dist/cjs/Navigation/index.js.map +1 -1
  94. package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
  95. package/dist/cjs/NavigationItem/index.js +1 -1
  96. package/dist/cjs/NavigationItem/index.js.map +1 -1
  97. package/dist/cjs/PageContent/index.js +1 -1
  98. package/dist/cjs/PageContent/index.js.map +1 -1
  99. package/dist/cjs/PageHeader/index.js +1 -1
  100. package/dist/cjs/PageHeader/index.js.map +1 -1
  101. package/dist/cjs/PageHeader/utils/defaultLocale.js.map +1 -1
  102. package/dist/cjs/PageHeaderInputSearch/index.js +1 -1
  103. package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
  104. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  105. package/dist/cjs/PageHeaderSkeleton/index.js +1 -1
  106. package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
  107. package/dist/cjs/ParagraphSkeleton/index.js +1 -1
  108. package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
  109. package/dist/cjs/Popover/index.js +1 -1
  110. package/dist/cjs/Popover/index.js.map +1 -1
  111. package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
  112. package/dist/cjs/Progress/index.js +1 -1
  113. package/dist/cjs/Progress/index.js.map +1 -1
  114. package/dist/cjs/RadioGroup/index.js +1 -1
  115. package/dist/cjs/RadioGroup/index.js.map +1 -1
  116. package/dist/cjs/RadioGroupSkeleton/index.js +1 -1
  117. package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
  118. package/dist/cjs/Result/index.js +1 -1
  119. package/dist/cjs/Result/index.js.map +1 -1
  120. package/dist/cjs/ScrollButton/index.js +1 -1
  121. package/dist/cjs/ScrollButton/index.js.map +1 -1
  122. package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
  123. package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
  124. package/dist/cjs/Select/SelectList.js +3 -5
  125. package/dist/cjs/Select/SelectList.js.map +1 -1
  126. package/dist/cjs/Select/SelectToggle.js.map +1 -1
  127. package/dist/cjs/Select/index.js +1 -1
  128. package/dist/cjs/Select/index.js.map +1 -1
  129. package/dist/cjs/Select/utils/defaultLocale.js.map +1 -1
  130. package/dist/cjs/Skeleton/index.js +1 -1
  131. package/dist/cjs/Skeleton/index.js.map +1 -1
  132. package/dist/cjs/Switch/index.js +1 -1
  133. package/dist/cjs/Switch/index.js.map +1 -1
  134. package/dist/cjs/SwitchSkeleton/index.js +1 -1
  135. package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
  136. package/dist/cjs/Tag/index.js +1 -1
  137. package/dist/cjs/Tag/index.js.map +1 -1
  138. package/dist/cjs/TagLink/index.js +1 -1
  139. package/dist/cjs/TagLink/index.js.map +1 -1
  140. package/dist/cjs/TagList/index.js +1 -1
  141. package/dist/cjs/TagList/index.js.map +1 -1
  142. package/dist/cjs/TagListSkeleton/index.js +1 -1
  143. package/dist/cjs/TagListSkeleton/index.js.map +1 -1
  144. package/dist/cjs/TagSkeleton/index.js +1 -1
  145. package/dist/cjs/TagSkeleton/index.js.map +1 -1
  146. package/dist/cjs/TextArea/index.js +1 -1
  147. package/dist/cjs/TextArea/index.js.map +1 -1
  148. package/dist/cjs/TextAreaSkeleton/index.js +1 -1
  149. package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
  150. package/dist/cjs/ThemeSwitcher/index.js +1 -1
  151. package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
  152. package/dist/cjs/YouTubeVideo/index.js +1 -1
  153. package/dist/cjs/YouTubeVideo/index.js.map +1 -1
  154. package/dist/cjs/emotion.d.js.map +1 -1
  155. package/dist/cjs/index.js.map +1 -1
  156. package/dist/cjs/message/AlertIcon.js.map +1 -1
  157. package/dist/cjs/message/Message.js.map +1 -1
  158. package/dist/cjs/message/index.js.map +1 -1
  159. package/dist/cjs/message/styles.js.map +1 -1
  160. package/dist/esm/Alert/index.js +1 -1
  161. package/dist/esm/Alert/index.js.map +1 -1
  162. package/dist/esm/Avatar/index.js +1 -1
  163. package/dist/esm/Avatar/index.js.map +1 -1
  164. package/dist/esm/Avatar/utils/nameToInitials.js.map +1 -1
  165. package/dist/esm/Avatar/utils/strToHue.js.map +1 -1
  166. package/dist/esm/AvatarSkeleton/index.js +1 -1
  167. package/dist/esm/AvatarSkeleton/index.js.map +1 -1
  168. package/dist/esm/Breadcrumb/index.js +1 -1
  169. package/dist/esm/Breadcrumb/index.js.map +1 -1
  170. package/dist/esm/BreadcrumbItem/index.js +1 -1
  171. package/dist/esm/BreadcrumbItem/index.js.map +1 -1
  172. package/dist/esm/Button/ButtonContent.js.map +1 -1
  173. package/dist/esm/Button/index.js +1 -1
  174. package/dist/esm/Button/index.js.map +1 -1
  175. package/dist/esm/Button/utils/useButtonColors.js.map +1 -1
  176. package/dist/esm/Checkbox/index.js +1 -1
  177. package/dist/esm/Checkbox/index.js.map +1 -1
  178. package/dist/esm/CheckboxSkeleton/index.js +1 -1
  179. package/dist/esm/CheckboxSkeleton/index.js.map +1 -1
  180. package/dist/esm/DatePicker/DatePickerCalendar.js +1 -1
  181. package/dist/esm/DatePicker/DatePickerCalendar.js.map +1 -1
  182. package/dist/esm/DatePicker/index.js +1 -1
  183. package/dist/esm/DatePicker/index.js.map +1 -1
  184. package/dist/esm/Drawer/index.js +1 -1
  185. package/dist/esm/Drawer/index.js.map +1 -1
  186. package/dist/esm/Form/FormConfigContext.js.map +1 -1
  187. package/dist/esm/Form/index.js +1 -1
  188. package/dist/esm/Form/index.js.map +1 -1
  189. package/dist/esm/FormDivider/index.js +1 -1
  190. package/dist/esm/FormDivider/index.js.map +1 -1
  191. package/dist/esm/FormItem/index.js +1 -1
  192. package/dist/esm/FormItem/index.js.map +1 -1
  193. package/dist/esm/FormItem/utils/firstChildHasType.js.map +1 -1
  194. package/dist/esm/GlobalStyles/index.js.map +1 -1
  195. package/dist/esm/GlobalStyles/resetStyles.js.map +1 -1
  196. package/dist/esm/GlobalStyles/typographyStyles.js.map +1 -1
  197. package/dist/esm/HeaderSkeleton/index.js +1 -1
  198. package/dist/esm/HeaderSkeleton/index.js.map +1 -1
  199. package/dist/esm/Image/index.js +1 -1
  200. package/dist/esm/Image/index.js.map +1 -1
  201. package/dist/esm/ImageSkeleton/index.js +1 -1
  202. package/dist/esm/ImageSkeleton/index.js.map +1 -1
  203. package/dist/esm/Input/index.js +1 -1
  204. package/dist/esm/Input/index.js.map +1 -1
  205. package/dist/esm/Input/utils/getFocusableElements.js.map +1 -1
  206. package/dist/esm/InputNumber/index.js +1 -1
  207. package/dist/esm/InputNumber/index.js.map +1 -1
  208. package/dist/esm/InputNumber/utils/defaultLocale.js.map +1 -1
  209. package/dist/esm/InputPassword/index.js +1 -1
  210. package/dist/esm/InputPassword/index.js.map +1 -1
  211. package/dist/esm/InputPassword/utils/defaultLocale.js.map +1 -1
  212. package/dist/esm/InputSearch/index.js +1 -1
  213. package/dist/esm/InputSearch/index.js.map +1 -1
  214. package/dist/esm/InputSearch/utils/defaultLocale.js.map +1 -1
  215. package/dist/esm/InputSkeleton/index.js +1 -1
  216. package/dist/esm/InputSkeleton/index.js.map +1 -1
  217. package/dist/esm/Layout/LayoutContext.js.map +1 -1
  218. package/dist/esm/Layout/index.js.map +1 -1
  219. package/dist/esm/Link/index.js +1 -1
  220. package/dist/esm/Link/index.js.map +1 -1
  221. package/dist/esm/LinkButton/index.js +1 -1
  222. package/dist/esm/LinkButton/index.js.map +1 -1
  223. package/dist/esm/List/WindowScroller.js.map +1 -1
  224. package/dist/esm/List/index.js +4 -6
  225. package/dist/esm/List/index.js.map +1 -1
  226. package/dist/esm/List/utils/bodyPointerEvents.js.map +1 -1
  227. package/dist/esm/List/utils/frameTimeout.js.map +1 -1
  228. package/dist/esm/List/utils/useRWLoadNext.js.map +1 -1
  229. package/dist/esm/ListItem/ListItemContent.js +1 -1
  230. package/dist/esm/ListItem/ListItemContent.js.map +1 -1
  231. package/dist/esm/ListItem/index.js +1 -1
  232. package/dist/esm/ListItem/index.js.map +1 -1
  233. package/dist/esm/ListItemLink/index.js +1 -1
  234. package/dist/esm/ListItemLink/index.js.map +1 -1
  235. package/dist/esm/ListSkeleton/index.js +1 -1
  236. package/dist/esm/ListSkeleton/index.js.map +1 -1
  237. package/dist/esm/LogoLink/index.js +1 -1
  238. package/dist/esm/LogoLink/index.js.map +1 -1
  239. package/dist/esm/Menu/index.js +1 -1
  240. package/dist/esm/Menu/index.js.map +1 -1
  241. package/dist/esm/Menu/utils/useFocusWithArrows.js.map +1 -1
  242. package/dist/esm/MenuDivider/index.js +1 -1
  243. package/dist/esm/MenuDivider/index.js.map +1 -1
  244. package/dist/esm/MenuGroup/index.js +1 -1
  245. package/dist/esm/MenuGroup/index.js.map +1 -1
  246. package/dist/esm/MenuItem/index.js +1 -1
  247. package/dist/esm/MenuItem/index.js.map +1 -1
  248. package/dist/esm/Modal/index.js +1 -1
  249. package/dist/esm/Modal/index.js.map +1 -1
  250. package/dist/esm/Modal/utils/defaultLocale.js.map +1 -1
  251. package/dist/esm/Navigation/index.js +1 -1
  252. package/dist/esm/Navigation/index.js.map +1 -1
  253. package/dist/esm/Navigation/utils/useScrollFlags.js.map +1 -1
  254. package/dist/esm/NavigationItem/index.js +1 -1
  255. package/dist/esm/NavigationItem/index.js.map +1 -1
  256. package/dist/esm/PageContent/index.js +1 -1
  257. package/dist/esm/PageContent/index.js.map +1 -1
  258. package/dist/esm/PageHeader/index.js +1 -1
  259. package/dist/esm/PageHeader/index.js.map +1 -1
  260. package/dist/esm/PageHeader/utils/defaultLocale.js.map +1 -1
  261. package/dist/esm/PageHeaderInputSearch/index.js +1 -1
  262. package/dist/esm/PageHeaderInputSearch/index.js.map +1 -1
  263. package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  264. package/dist/esm/PageHeaderSkeleton/index.js +1 -1
  265. package/dist/esm/PageHeaderSkeleton/index.js.map +1 -1
  266. package/dist/esm/ParagraphSkeleton/index.js +1 -1
  267. package/dist/esm/ParagraphSkeleton/index.js.map +1 -1
  268. package/dist/esm/Popover/index.js +1 -1
  269. package/dist/esm/Popover/index.js.map +1 -1
  270. package/dist/esm/Popover/utils/usePopoverPosition.js.map +1 -1
  271. package/dist/esm/Progress/index.js +1 -1
  272. package/dist/esm/Progress/index.js.map +1 -1
  273. package/dist/esm/RadioGroup/index.js +1 -1
  274. package/dist/esm/RadioGroup/index.js.map +1 -1
  275. package/dist/esm/RadioGroupSkeleton/index.js +1 -1
  276. package/dist/esm/RadioGroupSkeleton/index.js.map +1 -1
  277. package/dist/esm/Result/index.js +1 -1
  278. package/dist/esm/Result/index.js.map +1 -1
  279. package/dist/esm/ScrollButton/index.js +1 -1
  280. package/dist/esm/ScrollButton/index.js.map +1 -1
  281. package/dist/esm/ScrollButton/utils/useContainerPosition.js.map +1 -1
  282. package/dist/esm/ScrollButton/utils/useVisibility.js.map +1 -1
  283. package/dist/esm/Select/SelectList.js +5 -7
  284. package/dist/esm/Select/SelectList.js.map +1 -1
  285. package/dist/esm/Select/SelectToggle.js.map +1 -1
  286. package/dist/esm/Select/index.js +1 -1
  287. package/dist/esm/Select/index.js.map +1 -1
  288. package/dist/esm/Select/utils/defaultLocale.js.map +1 -1
  289. package/dist/esm/Skeleton/index.js +1 -1
  290. package/dist/esm/Skeleton/index.js.map +1 -1
  291. package/dist/esm/Switch/index.js +1 -1
  292. package/dist/esm/Switch/index.js.map +1 -1
  293. package/dist/esm/SwitchSkeleton/index.js +1 -1
  294. package/dist/esm/SwitchSkeleton/index.js.map +1 -1
  295. package/dist/esm/Tag/index.js +1 -1
  296. package/dist/esm/Tag/index.js.map +1 -1
  297. package/dist/esm/TagLink/index.js +1 -1
  298. package/dist/esm/TagLink/index.js.map +1 -1
  299. package/dist/esm/TagList/index.js +1 -1
  300. package/dist/esm/TagList/index.js.map +1 -1
  301. package/dist/esm/TagListSkeleton/index.js +1 -1
  302. package/dist/esm/TagListSkeleton/index.js.map +1 -1
  303. package/dist/esm/TagSkeleton/index.js +1 -1
  304. package/dist/esm/TagSkeleton/index.js.map +1 -1
  305. package/dist/esm/TextArea/index.js +1 -1
  306. package/dist/esm/TextArea/index.js.map +1 -1
  307. package/dist/esm/TextAreaSkeleton/index.js +1 -1
  308. package/dist/esm/TextAreaSkeleton/index.js.map +1 -1
  309. package/dist/esm/ThemeSwitcher/index.js +1 -1
  310. package/dist/esm/ThemeSwitcher/index.js.map +1 -1
  311. package/dist/esm/YouTubeVideo/index.js +1 -1
  312. package/dist/esm/YouTubeVideo/index.js.map +1 -1
  313. package/dist/esm/emotion.d.js.map +1 -1
  314. package/dist/esm/index.js.map +1 -1
  315. package/dist/esm/message/AlertIcon.js.map +1 -1
  316. package/dist/esm/message/Message.js.map +1 -1
  317. package/dist/esm/message/index.js.map +1 -1
  318. package/dist/esm/message/styles.js.map +1 -1
  319. package/dist/types/AvatarSkeleton/index.d.ts +1 -1
  320. package/dist/types/AvatarSkeleton/index.d.ts.map +1 -1
  321. package/dist/types/Button/index.d.ts +2 -2
  322. package/dist/types/Button/index.d.ts.map +1 -1
  323. package/dist/types/CheckboxSkeleton/index.d.ts +1 -1
  324. package/dist/types/CheckboxSkeleton/index.d.ts.map +1 -1
  325. package/dist/types/ImageSkeleton/index.d.ts +1 -1
  326. package/dist/types/ImageSkeleton/index.d.ts.map +1 -1
  327. package/dist/types/Input/index.d.ts +4 -3
  328. package/dist/types/Input/index.d.ts.map +1 -1
  329. package/dist/types/InputSkeleton/index.d.ts +1 -1
  330. package/dist/types/InputSkeleton/index.d.ts.map +1 -1
  331. package/dist/types/LinkButton/index.d.ts +268 -1
  332. package/dist/types/LinkButton/index.d.ts.map +1 -1
  333. package/dist/types/List/index.d.ts.map +1 -1
  334. package/dist/types/ListItem/ListItemContent.d.ts +2 -2
  335. package/dist/types/ListItem/index.d.ts +2 -2
  336. package/dist/types/ListItem/index.d.ts.map +1 -1
  337. package/dist/types/ListItemLink/index.d.ts +1 -1
  338. package/dist/types/ListItemLink/index.d.ts.map +1 -1
  339. package/dist/types/MenuDivider/index.d.ts +1 -1
  340. package/dist/types/MenuDivider/index.d.ts.map +1 -1
  341. package/dist/types/Modal/index.d.ts +3 -2
  342. package/dist/types/Modal/index.d.ts.map +1 -1
  343. package/dist/types/PageHeader/index.d.ts +1 -1
  344. package/dist/types/ScrollButton/utils/useContainerPosition.d.ts +1 -1
  345. package/dist/types/ScrollButton/utils/useContainerPosition.d.ts.map +1 -1
  346. package/dist/types/Select/SelectList.d.ts.map +1 -1
  347. package/dist/types/Select/SelectToggle.d.ts +7 -6
  348. package/dist/types/Select/SelectToggle.d.ts.map +1 -1
  349. package/dist/types/Select/index.d.ts +5 -2
  350. package/dist/types/Select/index.d.ts.map +1 -1
  351. package/dist/types/SwitchSkeleton/index.d.ts +1 -1
  352. package/dist/types/SwitchSkeleton/index.d.ts.map +1 -1
  353. package/dist/types/Tag/index.d.ts +4 -4
  354. package/dist/types/Tag/index.d.ts.map +1 -1
  355. package/dist/types/TagLink/index.d.ts +1 -1
  356. package/dist/types/TagLink/index.d.ts.map +1 -1
  357. package/dist/types/TextAreaSkeleton/index.d.ts +1 -1
  358. package/dist/types/TextAreaSkeleton/index.d.ts.map +1 -1
  359. package/dist/types/ThemeSwitcher/index.d.ts +268 -1
  360. package/dist/types/ThemeSwitcher/index.d.ts.map +1 -1
  361. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/DatePicker/index.tsx"],"names":["DatePicker","ref","placeholder","disabled","format","defaultFormat","firstDayOfWeek","locale","defaultLocale","value","defaultValue","onChange","size","rest","containerRef","mergedContainerRef","opened","setOpened","forwardedValue","setForwardedValue","formattedValue","Date","closeHandler","window","undefined","isMinXs","calendar","v","e","includes","key","preventDefault","stopPropagation","current","focus","clearLabel","displayName"],"mappings":"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","sourcesContent":["import React, { forwardRef, useCallback, useMemo, useState } from 'react';\nimport { WithSize } from '@os-design/styles';\nimport {\n useForwardedRef,\n useForwardedState,\n useKeyPress,\n} from '@os-design/utils';\nimport { Down, Up } from '@os-design/icons';\nimport { useIsMinWidth } from '@os-design/media';\nimport {\n defaultLocale,\n DatePickerLocale,\n defaultFormat,\n getAccessibilityDateLabel,\n} from '@os-design/date-picker-utils';\nimport { SelectContainer } from '../Select';\nimport {\n ClearButtonContainer,\n ClearIcon,\n IconContainer,\n Placeholder,\n Title,\n} from '../Select/SelectToggle';\nimport Popover from '../Popover';\nimport Modal from '../Modal';\nimport DatePickerCalendar from './DatePickerCalendar';\nimport Button from '../Button';\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface DatePickerProps extends JsxDivProps, WithSize {\n /**\n * The placeholder of the date picker.\n * @default undefined\n */\n placeholder?: string;\n /**\n * Whether the date picker is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * The format of the date.\n * @default undefined\n */\n format?: (date: Date) => string;\n /**\n * The first day of the week.\n * @default sunday\n */\n firstDayOfWeek?: 'sunday' | 'monday';\n /**\n * The locale of the date picker.\n * @default undefined\n */\n locale?: DatePickerLocale;\n /**\n * Selected timestamp.\n * @default undefined\n */\n value?: number | null;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: number | null;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: number | null) => void;\n}\n\n/**\n * The component to choose a date.\n */\nconst DatePicker = forwardRef<HTMLDivElement, DatePickerProps>(\n (\n {\n placeholder,\n disabled = false,\n format = defaultFormat,\n firstDayOfWeek = 'sunday',\n locale = defaultLocale,\n value,\n defaultValue,\n onChange,\n size,\n ...rest\n },\n ref\n ) => {\n const [containerRef, mergedContainerRef] = useForwardedRef(ref);\n const [opened, setOpened] = useState(false);\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n const formattedValue = useMemo(() => {\n if (!forwardedValue) return forwardedValue;\n return format(new Date(forwardedValue * 1000), locale);\n }, [forwardedValue, format, locale]);\n\n const closeHandler = useCallback(() => {\n setOpened(false);\n }, []);\n\n useKeyPress(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'Escape',\n closeHandler\n );\n const isMinXs = useIsMinWidth('xs');\n\n const calendar = (\n <DatePickerCalendar\n firstDayOfWeek={firstDayOfWeek}\n locale={locale}\n value={forwardedValue}\n onChange={(v) => {\n setForwardedValue(v);\n closeHandler();\n }}\n />\n );\n\n return (\n <>\n <SelectContainer\n opened={opened}\n disabled={disabled}\n size={size}\n tabIndex={!disabled ? 0 : -1}\n onClick={() => {\n if (disabled) return;\n setOpened(!opened);\n }}\n onKeyDown={(e) => {\n if (disabled) return;\n if (['Enter', ' '].includes(e.key)) {\n setOpened(!opened);\n e.preventDefault();\n }\n }}\n onMouseDown={(e) => e.preventDefault()}\n role='combobox'\n aria-label={\n forwardedValue !== undefined && forwardedValue !== null\n ? getAccessibilityDateLabel(\n new Date(forwardedValue * 1000),\n locale\n )\n : undefined\n }\n aria-disabled={disabled}\n {...rest}\n ref={mergedContainerRef}\n >\n {formattedValue !== undefined && formattedValue !== null ? (\n <>\n <Title disabled={disabled} aria-hidden>\n {formattedValue}\n </Title>\n <ClearButtonContainer aria-hidden>\n <Button\n type='ghost'\n wide='never'\n size='small'\n disabled={disabled}\n onClick={(e) => {\n setForwardedValue(null);\n e.stopPropagation();\n }}\n onKeyDown={(e) => {\n if (disabled) return;\n if (['Enter', ' '].includes(e.key)) {\n setForwardedValue(null);\n if (!containerRef.current) return;\n containerRef.current.focus();\n e.preventDefault();\n e.stopPropagation();\n }\n }}\n aria-label={locale.clearLabel}\n >\n <ClearIcon />\n </Button>\n </ClearButtonContainer>\n </>\n ) : (\n <>\n <Placeholder>{placeholder}</Placeholder>\n <IconContainer>{opened ? <Up /> : <Down />}</IconContainer>\n </>\n )}\n </SelectContainer>\n\n {isMinXs ? (\n <Popover\n trigger={containerRef}\n placement='bottom-start'\n visible={opened}\n onClose={closeHandler}\n size={size}\n >\n {calendar}\n </Popover>\n ) : (\n <Modal\n title={placeholder}\n footer={null}\n visible={opened}\n onClose={closeHandler}\n size={size}\n >\n {calendar}\n </Modal>\n )}\n </>\n );\n }\n);\n\nDatePicker.displayName = 'DatePicker';\n\nexport default DatePicker;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["DatePicker","forwardRef","ref","placeholder","disabled","format","defaultFormat","firstDayOfWeek","locale","defaultLocale","value","defaultValue","onChange","size","rest","useForwardedRef","containerRef","mergedContainerRef","useState","opened","setOpened","useForwardedState","forwardedValue","setForwardedValue","formattedValue","useMemo","Date","closeHandler","useCallback","useKeyPress","window","undefined","isMinXs","useIsMinWidth","calendar","v","e","includes","key","preventDefault","getAccessibilityDateLabel","stopPropagation","current","focus","clearLabel","displayName"],"sources":["../../../src/DatePicker/index.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useState } from 'react';\nimport { WithSize } from '@os-design/styles';\nimport {\n useForwardedRef,\n useForwardedState,\n useKeyPress,\n} from '@os-design/utils';\nimport { Down, Up } from '@os-design/icons';\nimport { useIsMinWidth } from '@os-design/media';\nimport {\n defaultLocale,\n DatePickerLocale,\n defaultFormat,\n getAccessibilityDateLabel,\n} from '@os-design/date-picker-utils';\nimport { SelectContainer } from '../Select';\nimport {\n ClearButtonContainer,\n ClearIcon,\n IconContainer,\n Placeholder,\n Title,\n} from '../Select/SelectToggle';\nimport Popover from '../Popover';\nimport Modal from '../Modal';\nimport DatePickerCalendar from './DatePickerCalendar';\nimport Button from '../Button';\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface DatePickerProps extends JsxDivProps, WithSize {\n /**\n * The placeholder of the date picker.\n * @default undefined\n */\n placeholder?: string;\n /**\n * Whether the date picker is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * The format of the date.\n * @default undefined\n */\n format?: (date: Date) => string;\n /**\n * The first day of the week.\n * @default sunday\n */\n firstDayOfWeek?: 'sunday' | 'monday';\n /**\n * The locale of the date picker.\n * @default undefined\n */\n locale?: DatePickerLocale;\n /**\n * Selected timestamp.\n * @default undefined\n */\n value?: number | null;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: number | null;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: number | null) => void;\n}\n\n/**\n * The component to choose a date.\n */\nconst DatePicker = forwardRef<HTMLDivElement, DatePickerProps>(\n (\n {\n placeholder,\n disabled = false,\n format = defaultFormat,\n firstDayOfWeek = 'sunday',\n locale = defaultLocale,\n value,\n defaultValue,\n onChange,\n size,\n ...rest\n },\n ref\n ) => {\n const [containerRef, mergedContainerRef] = useForwardedRef(ref);\n const [opened, setOpened] = useState(false);\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n const formattedValue = useMemo(() => {\n if (!forwardedValue) return forwardedValue;\n return format(new Date(forwardedValue * 1000), locale);\n }, [forwardedValue, format, locale]);\n\n const closeHandler = useCallback(() => {\n setOpened(false);\n }, []);\n\n useKeyPress(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'Escape',\n closeHandler\n );\n const isMinXs = useIsMinWidth('xs');\n\n const calendar = (\n <DatePickerCalendar\n firstDayOfWeek={firstDayOfWeek}\n locale={locale}\n value={forwardedValue}\n onChange={(v) => {\n setForwardedValue(v);\n closeHandler();\n }}\n />\n );\n\n return (\n <>\n <SelectContainer\n opened={opened}\n disabled={disabled}\n size={size}\n tabIndex={!disabled ? 0 : -1}\n onClick={() => {\n if (disabled) return;\n setOpened(!opened);\n }}\n onKeyDown={(e) => {\n if (disabled) return;\n if (['Enter', ' '].includes(e.key)) {\n setOpened(!opened);\n e.preventDefault();\n }\n }}\n onMouseDown={(e) => e.preventDefault()}\n role='combobox'\n aria-label={\n forwardedValue !== undefined && forwardedValue !== null\n ? getAccessibilityDateLabel(\n new Date(forwardedValue * 1000),\n locale\n )\n : undefined\n }\n aria-disabled={disabled}\n {...rest}\n ref={mergedContainerRef}\n >\n {formattedValue !== undefined && formattedValue !== null ? (\n <>\n <Title disabled={disabled} aria-hidden>\n {formattedValue}\n </Title>\n <ClearButtonContainer aria-hidden>\n <Button\n type='ghost'\n wide='never'\n size='small'\n disabled={disabled}\n onClick={(e) => {\n setForwardedValue(null);\n e.stopPropagation();\n }}\n onKeyDown={(e) => {\n if (disabled) return;\n if (['Enter', ' '].includes(e.key)) {\n setForwardedValue(null);\n if (!containerRef.current) return;\n containerRef.current.focus();\n e.preventDefault();\n e.stopPropagation();\n }\n }}\n aria-label={locale.clearLabel}\n >\n <ClearIcon />\n </Button>\n </ClearButtonContainer>\n </>\n ) : (\n <>\n <Placeholder>{placeholder}</Placeholder>\n <IconContainer>{opened ? <Up /> : <Down />}</IconContainer>\n </>\n )}\n </SelectContainer>\n\n {isMinXs ? (\n <Popover\n trigger={containerRef}\n placement='bottom-start'\n visible={opened}\n onClose={closeHandler}\n size={size}\n >\n {calendar}\n </Popover>\n ) : (\n <Modal\n title={placeholder}\n footer={null}\n visible={opened}\n onClose={closeHandler}\n size={size}\n >\n {calendar}\n </Modal>\n )}\n </>\n );\n }\n);\n\nDatePicker.displayName = 'DatePicker';\n\nexport default DatePicker;\n"],"mappings":"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"}
@@ -35,7 +35,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
35
35
 
36
36
  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; }
37
37
 
38
- function _extends() { _extends = Object.assign || 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); }
38
+ 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); }
39
39
 
40
40
  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; }
41
41
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Drawer/index.tsx"],"names":["DRAWER_CONTAINER_Z_INDEX","DRAWER_BOX_SHADOW_SIZE_EM","DrawerMask","ModalMask","Container","styled","div","placementLeftFadeIn","keyframes","placementLeftFadeOut","placementRightFadeIn","placementRightFadeOut","placementLeftVisibleStyles","p","placement","visible","css","theme","transitionDelay","placementLeftInvisibleStyles","placementRightVisibleStyles","placementRightInvisibleStyles","Content","width","colorBg","colorText","drawerColorBoxShadow","sizeStyles","Drawer","ref","onClose","size","children","onClick","rest","mounted","window","undefined","e","stopPropagation","displayName"],"mappings":"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","sourcesContent":["import React, { forwardRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport {\n useBodyScroll,\n useClosable,\n useKeyPress,\n omitEmotionProps,\n} from '@os-design/utils';\nimport { enableScrollingStyles, sizeStyles, WithSize } from '@os-design/styles';\nimport { clr, useTheme } from '@os-design/theming';\nimport styled from '@emotion/styled';\nimport { css, keyframes } from '@emotion/react';\nimport Portal from '@os-design/portal';\nimport { ModalMask } from '../Modal';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface DrawerProps extends JsxDivProps, WithSize {\n /**\n * The placement of the drawer.\n * @default right\n */\n placement?: 'left' | 'right';\n /**\n * The width of the drawer.\n * @default 15em\n */\n width?: string;\n /**\n * Whether the drawer is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * Specifies a callback that will be called when a user clicks the mask.\n * The callback should set the visible state to false.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst DRAWER_CONTAINER_Z_INDEX = 900;\nconst DRAWER_BOX_SHADOW_SIZE_EM = 1;\n\nconst DrawerMask = styled(ModalMask)`\n z-index: ${DRAWER_CONTAINER_Z_INDEX};\n`;\n\nconst Container = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n z-index: ${DRAWER_CONTAINER_Z_INDEX};\n`;\n\nconst placementLeftFadeIn = keyframes`\n from { transform: translateX(calc(-100% - ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateX(0); }\n`;\n\nconst placementLeftFadeOut = keyframes`\n from { transform: translateX(0); }\n to { transform: translateX(calc(-100% - ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst placementRightFadeIn = keyframes`\n from { transform: translateX(calc(100vw + ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateX(calc(100vw - 100%)); }\n`;\n\nconst placementRightFadeOut = keyframes`\n from { transform: translateX(calc(100vw - 100%)); }\n to { transform: translateX(calc(100vw + ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst placementLeftVisibleStyles = (p) =>\n p.placement === 'left' &&\n p.visible &&\n css`\n animation: ${placementLeftFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst placementLeftInvisibleStyles = (p) =>\n p.placement === 'left' &&\n !p.visible &&\n css`\n animation: ${placementLeftFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst placementRightVisibleStyles = (p) =>\n p.placement === 'right' &&\n p.visible &&\n css`\n animation: ${placementRightFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst placementRightInvisibleStyles = (p) =>\n p.placement === 'right' &&\n !p.visible &&\n css`\n animation: ${placementRightFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ntype ContentProps = Pick<\n DrawerProps,\n 'placement' | 'width' | 'visible' | 'size'\n>;\nconst Content = styled(\n 'div',\n omitEmotionProps('placement', 'width', 'visible', 'size')\n)<ContentProps>`\n position: absolute;\n top: 0;\n bottom: 0;\n width: ${(p) => p.width};\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 ${DRAWER_BOX_SHADOW_SIZE_EM}em\n ${(p) => clr(p.theme.drawerColorBoxShadow)};\n\n ${placementLeftVisibleStyles};\n ${placementLeftInvisibleStyles};\n ${placementRightVisibleStyles};\n ${placementRightInvisibleStyles};\n\n ${enableScrollingStyles('y')};\n ${sizeStyles};\n`;\n\n/**\n * The side panel that appears from the edge of the screen.\n */\nconst Drawer = forwardRef<HTMLDivElement, DrawerProps>(\n (\n {\n placement = 'right',\n width = '15em',\n visible = false,\n onClose = () => {},\n size,\n children,\n onClick = () => {},\n ...rest\n },\n ref\n ) => {\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 if (!mounted) return null;\n\n return (\n <Portal>\n <DrawerMask visible={visible} />\n <Container onClick={onClose}>\n <FocusLock autoFocus={false}>\n <Content\n placement={placement}\n width={width}\n visible={visible}\n size={size}\n onClick={(e) => {\n e.stopPropagation();\n onClick(e);\n }}\n role='dialog'\n aria-modal\n {...rest}\n ref={ref}\n >\n {children}\n </Content>\n </FocusLock>\n </Container>\n </Portal>\n );\n }\n);\n\nDrawer.displayName = 'Drawer';\n\nexport default Drawer;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["DRAWER_CONTAINER_Z_INDEX","DRAWER_BOX_SHADOW_SIZE_EM","DrawerMask","styled","ModalMask","Container","div","placementLeftFadeIn","keyframes","placementLeftFadeOut","placementRightFadeIn","placementRightFadeOut","placementLeftVisibleStyles","p","placement","visible","css","theme","transitionDelay","placementLeftInvisibleStyles","placementRightVisibleStyles","placementRightInvisibleStyles","Content","omitEmotionProps","width","clr","colorBg","colorText","drawerColorBoxShadow","enableScrollingStyles","sizeStyles","Drawer","forwardRef","ref","onClose","size","children","onClick","rest","useTheme","mounted","useClosable","useBodyScroll","useKeyPress","window","undefined","e","stopPropagation","displayName"],"sources":["../../../src/Drawer/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport FocusLock from 'react-focus-lock';\nimport {\n useBodyScroll,\n useClosable,\n useKeyPress,\n omitEmotionProps,\n} from '@os-design/utils';\nimport { enableScrollingStyles, sizeStyles, WithSize } from '@os-design/styles';\nimport { clr, useTheme } from '@os-design/theming';\nimport styled from '@emotion/styled';\nimport { css, keyframes } from '@emotion/react';\nimport Portal from '@os-design/portal';\nimport { ModalMask } from '../Modal';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface DrawerProps extends JsxDivProps, WithSize {\n /**\n * The placement of the drawer.\n * @default right\n */\n placement?: 'left' | 'right';\n /**\n * The width of the drawer.\n * @default 15em\n */\n width?: string;\n /**\n * Whether the drawer is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * Specifies a callback that will be called when a user clicks the mask.\n * The callback should set the visible state to false.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst DRAWER_CONTAINER_Z_INDEX = 900;\nconst DRAWER_BOX_SHADOW_SIZE_EM = 1;\n\nconst DrawerMask = styled(ModalMask)`\n z-index: ${DRAWER_CONTAINER_Z_INDEX};\n`;\n\nconst Container = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n z-index: ${DRAWER_CONTAINER_Z_INDEX};\n`;\n\nconst placementLeftFadeIn = keyframes`\n from { transform: translateX(calc(-100% - ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateX(0); }\n`;\n\nconst placementLeftFadeOut = keyframes`\n from { transform: translateX(0); }\n to { transform: translateX(calc(-100% - ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst placementRightFadeIn = keyframes`\n from { transform: translateX(calc(100vw + ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateX(calc(100vw - 100%)); }\n`;\n\nconst placementRightFadeOut = keyframes`\n from { transform: translateX(calc(100vw - 100%)); }\n to { transform: translateX(calc(100vw + ${DRAWER_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst placementLeftVisibleStyles = (p) =>\n p.placement === 'left' &&\n p.visible &&\n css`\n animation: ${placementLeftFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst placementLeftInvisibleStyles = (p) =>\n p.placement === 'left' &&\n !p.visible &&\n css`\n animation: ${placementLeftFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst placementRightVisibleStyles = (p) =>\n p.placement === 'right' &&\n p.visible &&\n css`\n animation: ${placementRightFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst placementRightInvisibleStyles = (p) =>\n p.placement === 'right' &&\n !p.visible &&\n css`\n animation: ${placementRightFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ntype ContentProps = Pick<\n DrawerProps,\n 'placement' | 'width' | 'visible' | 'size'\n>;\nconst Content = styled(\n 'div',\n omitEmotionProps('placement', 'width', 'visible', 'size')\n)<ContentProps>`\n position: absolute;\n top: 0;\n bottom: 0;\n width: ${(p) => p.width};\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 ${DRAWER_BOX_SHADOW_SIZE_EM}em\n ${(p) => clr(p.theme.drawerColorBoxShadow)};\n\n ${placementLeftVisibleStyles};\n ${placementLeftInvisibleStyles};\n ${placementRightVisibleStyles};\n ${placementRightInvisibleStyles};\n\n ${enableScrollingStyles('y')};\n ${sizeStyles};\n`;\n\n/**\n * The side panel that appears from the edge of the screen.\n */\nconst Drawer = forwardRef<HTMLDivElement, DrawerProps>(\n (\n {\n placement = 'right',\n width = '15em',\n visible = false,\n onClose = () => {},\n size,\n children,\n onClick = () => {},\n ...rest\n },\n ref\n ) => {\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 if (!mounted) return null;\n\n return (\n <Portal>\n <DrawerMask visible={visible} />\n <Container onClick={onClose}>\n <FocusLock autoFocus={false}>\n <Content\n placement={placement}\n width={width}\n visible={visible}\n size={size}\n onClick={(e) => {\n e.stopPropagation();\n onClick(e);\n }}\n role='dialog'\n aria-modal\n {...rest}\n ref={ref}\n >\n {children}\n </Content>\n </FocusLock>\n </Container>\n </Portal>\n );\n }\n);\n\nDrawer.displayName = 'Drawer';\n\nexport default Drawer;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Form/FormConfigContext.ts"],"names":["FormConfigContext","React","createContext","optionalText","displayName"],"mappings":";;;;;;;AAAA;;;;AASA,IAAMA,iBAAiB,gBAAGC,kBAAMC,aAAN,CAA4C;AACpEC,EAAAA,YAAY,EAAE;AADsD,CAA5C,CAA1B;;AAIAH,iBAAiB,CAACI,WAAlB,GAAgC,mBAAhC;eAEeJ,iB","sourcesContent":["import React from 'react';\n\nexport interface FormConfigContextProps {\n /**\n * The text that is displayed to the right of the label of the optional field.\n */\n optionalText: string;\n}\n\nconst FormConfigContext = React.createContext<FormConfigContextProps>({\n optionalText: 'optional',\n});\n\nFormConfigContext.displayName = 'FormConfigContext';\n\nexport default FormConfigContext;\n"],"file":"FormConfigContext.js"}
1
+ {"version":3,"file":"FormConfigContext.js","names":["FormConfigContext","React","createContext","optionalText","displayName"],"sources":["../../../src/Form/FormConfigContext.ts"],"sourcesContent":["import React from 'react';\n\nexport interface FormConfigContextProps {\n /**\n * The text that is displayed to the right of the label of the optional field.\n */\n optionalText: string;\n}\n\nconst FormConfigContext = React.createContext<FormConfigContextProps>({\n optionalText: 'optional',\n});\n\nFormConfigContext.displayName = 'FormConfigContext';\n\nexport default FormConfigContext;\n"],"mappings":";;;;;;;AAAA;;;;AASA,IAAMA,iBAAiB,gBAAGC,iBAAA,CAAMC,aAAN,CAA4C;EACpEC,YAAY,EAAE;AADsD,CAA5C,CAA1B;;AAIAH,iBAAiB,CAACI,WAAlB,GAAgC,mBAAhC;eAEeJ,iB"}
@@ -27,7 +27,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
27
27
 
28
28
  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; }
29
29
 
30
- function _extends() { _extends = Object.assign || 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); }
30
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
31
31
 
32
32
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
33
33
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Form/index.tsx"],"names":["StyledForm","sizeStyles","Form","ref","optionalText","rest","memoizedOptionalText","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,UAAU,GAAG,wBAAO,KAAP,EAAc,6BAAiB,MAAjB,CAAd,CAAH,+LAUZC,kBAVY,CAAhB;AAaA;AACA;AACA;;AACA,IAAMC,IAAI,gBAAG,uBACX,gBAAyCC,GAAzC,EAAiD;AAAA,+BAA9CC,YAA8C;AAAA,MAA9CA,YAA8C,kCAA/B,UAA+B;AAAA,MAAhBC,IAAgB;;AAC/C,MAAMC,oBAAoB,GAAG,oBAC3B;AAAA,WAAO;AAAEF,MAAAA,YAAY,EAAZA;AAAF,KAAP;AAAA,GAD2B,EAE3B,CAACA,YAAD,CAF2B,CAA7B;AAKA,sBACE,gCAAC,6BAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAEE;AAAnC,kBACE,gCAAC,UAAD,eAAgBD,IAAhB;AAAsB,IAAA,GAAG,EAAEF;AAA3B,KADF,CADF;AAKD,CAZU,CAAb;AAeAD,IAAI,CAACK,WAAL,GAAmB,MAAnB;eAEeL,I","sourcesContent":["import React, { forwardRef, useMemo } from 'react';\nimport styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport FormConfigContext from './FormConfigContext';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface FormProps extends JsxDivProps, WithSize {\n /**\n * The text that is displayed to the right of the label of the optional field.\n * @default optional\n */\n optionalText?: string;\n}\n\nconst StyledForm = styled('div', omitEmotionProps('size'))<WithSize>`\n max-width: 50em;\n\n & > * + * {\n margin-top: 1em;\n }\n & > style + * {\n margin-top: 0;\n }\n\n ${sizeStyles};\n`;\n\n/**\n * The wrapper of the form.\n */\nconst Form = forwardRef<HTMLDivElement, FormProps>(\n ({ optionalText = 'optional', ...rest }, ref) => {\n const memoizedOptionalText = useMemo(\n () => ({ optionalText }),\n [optionalText]\n );\n\n return (\n <FormConfigContext.Provider value={memoizedOptionalText}>\n <StyledForm {...rest} ref={ref} />\n </FormConfigContext.Provider>\n );\n }\n);\n\nForm.displayName = 'Form';\n\nexport default Form;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["StyledForm","styled","omitEmotionProps","sizeStyles","Form","forwardRef","ref","optionalText","rest","memoizedOptionalText","useMemo","displayName"],"sources":["../../../src/Form/index.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react';\nimport styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport FormConfigContext from './FormConfigContext';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface FormProps extends JsxDivProps, WithSize {\n /**\n * The text that is displayed to the right of the label of the optional field.\n * @default optional\n */\n optionalText?: string;\n}\n\nconst StyledForm = styled('div', omitEmotionProps('size'))<WithSize>`\n max-width: 50em;\n\n & > * + * {\n margin-top: 1em;\n }\n & > style + * {\n margin-top: 0;\n }\n\n ${sizeStyles};\n`;\n\n/**\n * The wrapper of the form.\n */\nconst Form = forwardRef<HTMLDivElement, FormProps>(\n ({ optionalText = 'optional', ...rest }, ref) => {\n const memoizedOptionalText = useMemo(\n () => ({ optionalText }),\n [optionalText]\n );\n\n return (\n <FormConfigContext.Provider value={memoizedOptionalText}>\n <StyledForm {...rest} ref={ref} />\n </FormConfigContext.Provider>\n );\n }\n);\n\nForm.displayName = 'Form';\n\nexport default Form;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,UAAU,GAAG,IAAAC,kBAAA,EAAO,KAAP,EAAc,IAAAC,uBAAA,EAAiB,MAAjB,CAAd,CAAH,+LAUZC,kBAVY,CAAhB;AAaA;AACA;AACA;;AACA,IAAMC,IAAI,gBAAG,IAAAC,iBAAA,EACX,gBAAyCC,GAAzC,EAAiD;EAAA,6BAA9CC,YAA8C;EAAA,IAA9CA,YAA8C,kCAA/B,UAA+B;EAAA,IAAhBC,IAAgB;;EAC/C,IAAMC,oBAAoB,GAAG,IAAAC,cAAA,EAC3B;IAAA,OAAO;MAAEH,YAAY,EAAZA;IAAF,CAAP;EAAA,CAD2B,EAE3B,CAACA,YAAD,CAF2B,CAA7B;EAKA,oBACE,gCAAC,6BAAD,CAAmB,QAAnB;IAA4B,KAAK,EAAEE;EAAnC,gBACE,gCAAC,UAAD,eAAgBD,IAAhB;IAAsB,GAAG,EAAEF;EAA3B,GADF,CADF;AAKD,CAZU,CAAb;AAeAF,IAAI,CAACO,WAAL,GAAmB,MAAnB;eAEeP,I"}
@@ -27,7 +27,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
27
27
 
28
28
  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; }
29
29
 
30
- function _extends() { _extends = Object.assign || 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); }
30
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
31
31
 
32
32
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
33
33
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/FormDivider/index.tsx"],"names":["Container","p","theme","formDividerColor","sizeStyles","Content","styled","div","Title","colorText","sizes","large","ellipsisStyles","Description","inputColorPlaceholder","small","FormDivider","ref","title","description","rest","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAeA,IAAMA,SAAS,GAAG,wBAAO,KAAP,EAAc,6BAAiB,MAAjB,CAAd,CAAH,gSAWa,UAACC,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACC,KAAF,CAAQC,gBAAZ,CAAP;AAAA,CAXb,EAcXC,kBAdW,CAAf;;AAiBA,IAAMC,OAAO,GAAGC,mBAAOC,GAAV,0IAAb;;AAMA,IAAMC,KAAK,GAAGF,mBAAOC,GAAV,8IACA,UAACN,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACC,KAAF,CAAQO,SAAZ,CAAP;AAAA,CADA,EAEI,UAACR,CAAD;AAAA,SAAOA,CAAC,CAACC,KAAF,CAAQQ,KAAR,CAAcC,KAArB;AAAA,CAFJ,EAIPC,sBAJO,CAAX;;AAOA,IAAMC,WAAW,GAAGP,mBAAOC,GAAV,8IACN,UAACN,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACC,KAAF,CAAQY,qBAAZ,CAAP;AAAA,CADM,EAEF,UAACb,CAAD;AAAA,SAAOA,CAAC,CAACC,KAAF,CAAQQ,KAAR,CAAcK,KAArB;AAAA,CAFE,EAIbH,sBAJa,CAAjB;AAOA;AACA;AACA;;;AACA,IAAMI,WAAW,gBAAG,uBAClB,gBAAkCC,GAAlC;AAAA,MAAGC,KAAH,QAAGA,KAAH;AAAA,MAAUC,WAAV,QAAUA,WAAV;AAAA,MAA0BC,IAA1B;;AAAA,sBACE,gCAAC,SAAD;AAAW,IAAA,IAAI,EAAC;AAAhB,KAAgCA,IAAhC;AAAsC,IAAA,GAAG,EAAEH;AAA3C,mBACE,gCAAC,OAAD,qBACE,gCAAC,KAAD,QAAQC,KAAR,CADF,eAEE,gCAAC,WAAD,QAAcC,WAAd,CAFF,CADF,CADF;AAAA,CADkB,CAApB;AAWAH,WAAW,CAACK,WAAZ,GAA0B,aAA1B;eAEeL,W","sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { ellipsisStyles, sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { clr } from '@os-design/theming';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface FormDividerProps extends JsxDivProps, WithSize {\n /**\n * The title that is in the center of the divider.\n */\n title: string;\n /**\n * The description that is under the title.\n * @default undefined\n */\n description?: string;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n align-items: center;\n margin: 3em 0 1em;\n\n &::before,\n &::after {\n content: '';\n flex: 1;\n min-width: 5%;\n max-width: 50%;\n border-top: 1px solid ${(p) => clr(p.theme.formDividerColor)};\n }\n\n ${sizeStyles};\n`;\n\nconst Content = styled.div`\n padding: 0 1.5em;\n text-align: center;\n overflow: hidden;\n`;\n\nconst Title = styled.div`\n color: ${(p) => clr(p.theme.colorText)};\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n ${ellipsisStyles};\n`;\n\nconst Description = styled.div`\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n font-size: ${(p) => p.theme.sizes.small}em;\n line-height: 1.2;\n ${ellipsisStyles};\n`;\n\n/**\n * The divider line for separating the various elements of the form.\n */\nconst FormDivider = forwardRef<HTMLDivElement, FormDividerProps>(\n ({ title, description, ...rest }, ref) => (\n <Container role='separator' {...rest} ref={ref}>\n <Content>\n <Title>{title}</Title>\n <Description>{description}</Description>\n </Content>\n </Container>\n )\n);\n\nFormDivider.displayName = 'FormDivider';\n\nexport default FormDivider;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["Container","styled","omitEmotionProps","p","clr","theme","formDividerColor","sizeStyles","Content","div","Title","colorText","sizes","large","ellipsisStyles","Description","inputColorPlaceholder","small","FormDivider","forwardRef","ref","title","description","rest","displayName"],"sources":["../../../src/FormDivider/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { ellipsisStyles, sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { clr } from '@os-design/theming';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface FormDividerProps extends JsxDivProps, WithSize {\n /**\n * The title that is in the center of the divider.\n */\n title: string;\n /**\n * The description that is under the title.\n * @default undefined\n */\n description?: string;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n align-items: center;\n margin: 3em 0 1em;\n\n &::before,\n &::after {\n content: '';\n flex: 1;\n min-width: 5%;\n max-width: 50%;\n border-top: 1px solid ${(p) => clr(p.theme.formDividerColor)};\n }\n\n ${sizeStyles};\n`;\n\nconst Content = styled.div`\n padding: 0 1.5em;\n text-align: center;\n overflow: hidden;\n`;\n\nconst Title = styled.div`\n color: ${(p) => clr(p.theme.colorText)};\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n ${ellipsisStyles};\n`;\n\nconst Description = styled.div`\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n font-size: ${(p) => p.theme.sizes.small}em;\n line-height: 1.2;\n ${ellipsisStyles};\n`;\n\n/**\n * The divider line for separating the various elements of the form.\n */\nconst FormDivider = forwardRef<HTMLDivElement, FormDividerProps>(\n ({ title, description, ...rest }, ref) => (\n <Container role='separator' {...rest} ref={ref}>\n <Content>\n <Title>{title}</Title>\n <Description>{description}</Description>\n </Content>\n </Container>\n )\n);\n\nFormDivider.displayName = 'FormDivider';\n\nexport default FormDivider;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAeA,IAAMA,SAAS,GAAG,IAAAC,kBAAA,EAAO,KAAP,EAAc,IAAAC,uBAAA,EAAiB,MAAjB,CAAd,CAAH,gSAWa,UAACC,CAAD;EAAA,OAAO,IAAAC,YAAA,EAAID,CAAC,CAACE,KAAF,CAAQC,gBAAZ,CAAP;AAAA,CAXb,EAcXC,kBAdW,CAAf;;AAiBA,IAAMC,OAAO,GAAGP,kBAAA,CAAOQ,GAAV,0IAAb;;AAMA,IAAMC,KAAK,GAAGT,kBAAA,CAAOQ,GAAV,8IACA,UAACN,CAAD;EAAA,OAAO,IAAAC,YAAA,EAAID,CAAC,CAACE,KAAF,CAAQM,SAAZ,CAAP;AAAA,CADA,EAEI,UAACR,CAAD;EAAA,OAAOA,CAAC,CAACE,KAAF,CAAQO,KAAR,CAAcC,KAArB;AAAA,CAFJ,EAIPC,sBAJO,CAAX;;AAOA,IAAMC,WAAW,GAAGd,kBAAA,CAAOQ,GAAV,8IACN,UAACN,CAAD;EAAA,OAAO,IAAAC,YAAA,EAAID,CAAC,CAACE,KAAF,CAAQW,qBAAZ,CAAP;AAAA,CADM,EAEF,UAACb,CAAD;EAAA,OAAOA,CAAC,CAACE,KAAF,CAAQO,KAAR,CAAcK,KAArB;AAAA,CAFE,EAIbH,sBAJa,CAAjB;AAOA;AACA;AACA;;;AACA,IAAMI,WAAW,gBAAG,IAAAC,iBAAA,EAClB,gBAAkCC,GAAlC;EAAA,IAAGC,KAAH,QAAGA,KAAH;EAAA,IAAUC,WAAV,QAAUA,WAAV;EAAA,IAA0BC,IAA1B;;EAAA,oBACE,gCAAC,SAAD;IAAW,IAAI,EAAC;EAAhB,GAAgCA,IAAhC;IAAsC,GAAG,EAAEH;EAA3C,iBACE,gCAAC,OAAD,qBACE,gCAAC,KAAD,QAAQC,KAAR,CADF,eAEE,gCAAC,WAAD,QAAcC,WAAd,CAFF,CADF,CADF;AAAA,CADkB,CAApB;AAWAJ,WAAW,CAACM,WAAZ,GAA0B,aAA1B;eAEeN,W"}
@@ -43,7 +43,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
43
43
 
44
44
  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; }
45
45
 
46
- function _extends() { _extends = Object.assign || 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); }
46
+ 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); }
47
47
 
48
48
  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; }
49
49
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/FormItem/index.tsx"],"names":["Container","sizeStyles","Label","styled","label","p","theme","sizes","small","colorText","Optional","span","formItemColorOptional","hasErrorStyles","hasError","css","formItemColorError","Help","formItemColorHelp","FormItem","ref","help","optional","loading","id","children","rest","FormConfigContext","optionalText","containerId","Math","random","toString","slice","fieldId","helpId","renderChildren","c","isValidElement","React","cloneElement","undefined","inputColorBorder","renderSkeleton","TextArea","Switch","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AA+BA,IAAMA,SAAS,GAAG,wBAAO,KAAP,EAAc,6BAAiB,MAAjB,CAAd,CAAH,iFACXC,kBADW,CAAf;;AAIA,IAAMC,KAAK,GAAGC,mBAAOC,KAAV,0LAII,UAACC,CAAD;AAAA,SAAOA,CAAC,CAACC,KAAF,CAAQC,KAAR,CAAcC,KAArB;AAAA,CAJJ,EAKA,UAACH,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACC,KAAF,CAAQG,SAAZ,CAAP;AAAA,CALA,CAAX;;AAQA,IAAMC,QAAQ,GAAGP,mBAAOQ,IAAV,iHACH,UAACN,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACC,KAAF,CAAQM,qBAAZ,CAAP;AAAA,CADG,CAAd;;AAKA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACR,CAAD;AAAA,SACrBA,CAAC,CAACS,QAAF,QACAC,WADA,+FAEW,kBAAIV,CAAC,CAACC,KAAF,CAAQU,kBAAZ,CAFX,CADqB;AAAA,CAAvB;;AAOA,IAAMC,IAAI,GAAG,wBAAO,KAAP,EAAc,6BAAiB,UAAjB,CAAd,CAAH,+IAEK,UAACZ,CAAD;AAAA,SAAOA,CAAC,CAACC,KAAF,CAAQC,KAAR,CAAcC,KAArB;AAAA,CAFL,EAGC,UAACH,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACC,KAAF,CAAQY,iBAAZ,CAAP;AAAA,CAHD,EAINL,cAJM,CAAV;AAOA;AACA;AACA;;AACA,IAAMM,QAAQ,gBAAG,uBACf,gBAWEC,GAXF,EAYK;AAAA,MAVDhB,KAUC,QAVDA,KAUC;AAAA,MATDiB,IASC,QATDA,IASC;AAAA,2BARDC,QAQC;AAAA,MARDA,QAQC,8BARU,KAQV;AAAA,2BAPDR,QAOC;AAAA,MAPDA,QAOC,8BAPU,KAOV;AAAA,0BANDS,OAMC;AAAA,MANDA,OAMC,6BANS,KAMT;AAAA,MALDC,EAKC,QALDA,EAKC;AAAA,MAJDC,QAIC,QAJDA,QAIC;AAAA,MAHEC,IAGF;;AACH,oBAAyB,uBAAWC,6BAAX,CAAzB;AAAA,MAAQC,YAAR,eAAQA,YAAR;;AAEA,MAAMC,WAAW,GAAG,oBAClB;AAAA,WAAML,EAAE,IAAIM,IAAI,CAACC,MAAL,GAAcC,QAAd,CAAuB,EAAvB,EAA2BC,KAA3B,CAAiC,CAAjC,EAAoC,EAApC,CAAZ;AAAA,GADkB,EAElB,CAACT,EAAD,CAFkB,CAApB;AAIA,MAAMU,OAAO,GAAG,oBAAQ;AAAA,2BAAeL,WAAf;AAAA,GAAR,EAAsC,CAACA,WAAD,CAAtC,CAAhB;AACA,MAAMM,MAAM,GAAG,oBAAQ;AAAA,0BAAcN,WAAd;AAAA,GAAR,EAAqC,CAACA,WAAD,CAArC,CAAf;AAEA,MAAMO,cAAc,GAAG,wBAAY,YAAM;AACvC,QAAMC,CAAC,GAAG,+BAAMC,cAAN,CAAqBb,QAArB,iBACNc,kBAAMC,YAAN,CAAmBf,QAAnB,EAA6B;AAC3BD,MAAAA,EAAE,EAAEU,OADuB;AAE3B,sBAAgBpB,QAFW;AAG3B,0BAAoBO,IAAI,GAAGc,MAAH,GAAYM;AAHT,KAA7B,CADM,GAMNhB,QANJ;AAQA,QAAI,CAACX,QAAL,EAAe,OAAOuB,CAAP;AAEf,wBACE,gCAAC,uBAAD;AACE,MAAA,SAAS,EAAE,mBAAC/B,KAAD;AAAA,eAAY;AACrBoC,UAAAA,gBAAgB,EAAEpC,KAAK,CAACU;AADH,SAAZ;AAAA;AADb,OAKGqB,CALH,CADF;AASD,GApBsB,EAoBpB,CAACZ,QAAD,EAAWS,OAAX,EAAoBb,IAApB,EAA0Bc,MAA1B,EAAkCrB,QAAlC,CApBoB,CAAvB;AAsBA,MAAM6B,cAAc,GAAG,wBAAY,YAAM;AACvC,QAAI,mCAAkBlB,QAAlB,EAA4BmB,oBAA5B,CAAJ,EAA2C,oBAAO,gCAAC,4BAAD,OAAP;AAC3C,QAAI,mCAAkBnB,QAAlB,EAA4BoB,kBAA5B,CAAJ,EAAyC,oBAAO,gCAAC,0BAAD,OAAP;AACzC,wBAAO,gCAAC,yBAAD,OAAP;AACD,GAJsB,EAIpB,CAACpB,QAAD,CAJoB,CAAvB;AAMA,sBACE,gCAAC,SAAD;AAAW,IAAA,IAAI,EAAC,OAAhB;AAAwB,IAAA,EAAE,EAAED;AAA5B,KAAoCE,IAApC;AAA0C,IAAA,GAAG,EAAEN;AAA/C,MACGhB,KAAK,iBACJ,gCAAC,KAAD;AAAO,IAAA,OAAO,EAAE8B;AAAhB,KACG9B,KADH,EAEGkB,QAAQ,iBAAI,gCAAC,QAAD,aAAYM,YAAZ,MAFf,CAFJ,EAOGL,OAAO,GAAGoB,cAAc,EAAjB,GAAsBP,cAAc,EAP9C,EAQGf,IAAI,iBACH,gCAAC,IAAD;AACE,IAAA,QAAQ,EAAEP,QADZ;AAEE,iBAAWA,QAAQ,GAAG,QAAH,GAAc2B,SAFnC;AAGE,IAAA,EAAE,EAAEN;AAHN,KAKGd,IALH,CATJ,CADF;AAoBD,CAvEc,CAAjB;AA0EAF,QAAQ,CAAC2B,WAAT,GAAuB,UAAvB;eAEe3B,Q","sourcesContent":["import React, { forwardRef, useCallback, useContext, useMemo } from 'react';\nimport styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { clr, ThemeOverrider } from '@os-design/theming';\nimport { css } from '@emotion/react';\nimport firstChildHasType from './utils/firstChildHasType';\nimport TextArea from '../TextArea';\nimport TextAreaSkeleton from '../TextAreaSkeleton';\nimport InputSkeleton from '../InputSkeleton';\nimport FormConfigContext from '../Form/FormConfigContext';\nimport Switch from '../Switch';\nimport SwitchSkeleton from '../SwitchSkeleton';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface FormItemProps extends JsxDivProps, WithSize {\n /**\n * Label of the field.\n * @default undefined\n */\n label?: string;\n /**\n * The help message located at the bottom of the field.\n * @default undefined\n */\n help?: string;\n /**\n * Whether the field is optional.\n * @default false\n */\n optional?: boolean;\n /**\n * Applies the red style to the field.\n * @default false\n */\n hasError?: boolean;\n /**\n * Whether the skeleton is displayed.\n * @default false\n */\n loading?: boolean;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n ${sizeStyles};\n`;\n\nconst Label = styled.label`\n display: inline-flex;\n align-items: center;\n margin-bottom: 0.4em;\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.colorText)};\n`;\n\nconst Optional = styled.span`\n color: ${(p) => clr(p.theme.formItemColorOptional)};\n margin-left: 0.3em;\n`;\n\nconst hasErrorStyles = (p) =>\n p.hasError &&\n css`\n color: ${clr(p.theme.formItemColorError)};\n `;\n\ntype HelpProps = Required<Pick<FormItemProps, 'hasError'>>;\nconst Help = styled('div', omitEmotionProps('hasError'))<HelpProps>`\n margin-top: 0.1em;\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.formItemColorHelp)};\n ${hasErrorStyles};\n`;\n\n/**\n * The wrapper of the field.\n */\nconst FormItem = forwardRef<HTMLDivElement, FormItemProps>(\n (\n {\n label,\n help,\n optional = false,\n hasError = false,\n loading = false,\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const { optionalText } = useContext(FormConfigContext);\n\n const containerId = useMemo(\n () => id || Math.random().toString(36).slice(2, 11),\n [id]\n );\n const fieldId = useMemo(() => `field-${containerId}`, [containerId]);\n const helpId = useMemo(() => `help-${containerId}`, [containerId]);\n\n const renderChildren = useCallback(() => {\n const c = React.isValidElement(children)\n ? React.cloneElement(children, {\n id: fieldId,\n 'aria-invalid': hasError,\n 'aria-describedby': help ? helpId : undefined,\n })\n : children;\n\n if (!hasError) return c;\n\n return (\n <ThemeOverrider\n overrides={(theme) => ({\n inputColorBorder: theme.formItemColorError,\n })}\n >\n {c}\n </ThemeOverrider>\n );\n }, [children, fieldId, help, helpId, hasError]);\n\n const renderSkeleton = useCallback(() => {\n if (firstChildHasType(children, TextArea)) return <TextAreaSkeleton />;\n if (firstChildHasType(children, Switch)) return <SwitchSkeleton />;\n return <InputSkeleton />;\n }, [children]);\n\n return (\n <Container role='group' id={id} {...rest} ref={ref}>\n {label && (\n <Label htmlFor={fieldId}>\n {label}\n {optional && <Optional>({optionalText})</Optional>}\n </Label>\n )}\n {loading ? renderSkeleton() : renderChildren()}\n {help && (\n <Help\n hasError={hasError}\n aria-live={hasError ? 'polite' : undefined}\n id={helpId}\n >\n {help}\n </Help>\n )}\n </Container>\n );\n }\n);\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["Container","styled","omitEmotionProps","sizeStyles","Label","label","p","theme","sizes","small","clr","colorText","Optional","span","formItemColorOptional","hasErrorStyles","hasError","css","formItemColorError","Help","formItemColorHelp","FormItem","forwardRef","ref","help","optional","loading","id","children","rest","useContext","FormConfigContext","optionalText","containerId","useMemo","Math","random","toString","slice","fieldId","helpId","renderChildren","useCallback","c","React","isValidElement","cloneElement","undefined","inputColorBorder","renderSkeleton","firstChildHasType","TextArea","Switch","displayName"],"sources":["../../../src/FormItem/index.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useContext, useMemo } from 'react';\nimport styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { clr, ThemeOverrider } from '@os-design/theming';\nimport { css } from '@emotion/react';\nimport firstChildHasType from './utils/firstChildHasType';\nimport TextArea from '../TextArea';\nimport TextAreaSkeleton from '../TextAreaSkeleton';\nimport InputSkeleton from '../InputSkeleton';\nimport FormConfigContext from '../Form/FormConfigContext';\nimport Switch from '../Switch';\nimport SwitchSkeleton from '../SwitchSkeleton';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface FormItemProps extends JsxDivProps, WithSize {\n /**\n * Label of the field.\n * @default undefined\n */\n label?: string;\n /**\n * The help message located at the bottom of the field.\n * @default undefined\n */\n help?: string;\n /**\n * Whether the field is optional.\n * @default false\n */\n optional?: boolean;\n /**\n * Applies the red style to the field.\n * @default false\n */\n hasError?: boolean;\n /**\n * Whether the skeleton is displayed.\n * @default false\n */\n loading?: boolean;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n ${sizeStyles};\n`;\n\nconst Label = styled.label`\n display: inline-flex;\n align-items: center;\n margin-bottom: 0.4em;\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.colorText)};\n`;\n\nconst Optional = styled.span`\n color: ${(p) => clr(p.theme.formItemColorOptional)};\n margin-left: 0.3em;\n`;\n\nconst hasErrorStyles = (p) =>\n p.hasError &&\n css`\n color: ${clr(p.theme.formItemColorError)};\n `;\n\ntype HelpProps = Required<Pick<FormItemProps, 'hasError'>>;\nconst Help = styled('div', omitEmotionProps('hasError'))<HelpProps>`\n margin-top: 0.1em;\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.formItemColorHelp)};\n ${hasErrorStyles};\n`;\n\n/**\n * The wrapper of the field.\n */\nconst FormItem = forwardRef<HTMLDivElement, FormItemProps>(\n (\n {\n label,\n help,\n optional = false,\n hasError = false,\n loading = false,\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const { optionalText } = useContext(FormConfigContext);\n\n const containerId = useMemo(\n () => id || Math.random().toString(36).slice(2, 11),\n [id]\n );\n const fieldId = useMemo(() => `field-${containerId}`, [containerId]);\n const helpId = useMemo(() => `help-${containerId}`, [containerId]);\n\n const renderChildren = useCallback(() => {\n const c = React.isValidElement(children)\n ? React.cloneElement(children, {\n id: fieldId,\n 'aria-invalid': hasError,\n 'aria-describedby': help ? helpId : undefined,\n })\n : children;\n\n if (!hasError) return c;\n\n return (\n <ThemeOverrider\n overrides={(theme) => ({\n inputColorBorder: theme.formItemColorError,\n })}\n >\n {c}\n </ThemeOverrider>\n );\n }, [children, fieldId, help, helpId, hasError]);\n\n const renderSkeleton = useCallback(() => {\n if (firstChildHasType(children, TextArea)) return <TextAreaSkeleton />;\n if (firstChildHasType(children, Switch)) return <SwitchSkeleton />;\n return <InputSkeleton />;\n }, [children]);\n\n return (\n <Container role='group' id={id} {...rest} ref={ref}>\n {label && (\n <Label htmlFor={fieldId}>\n {label}\n {optional && <Optional>({optionalText})</Optional>}\n </Label>\n )}\n {loading ? renderSkeleton() : renderChildren()}\n {help && (\n <Help\n hasError={hasError}\n aria-live={hasError ? 'polite' : undefined}\n id={helpId}\n >\n {help}\n </Help>\n )}\n </Container>\n );\n }\n);\n\nFormItem.displayName = 'FormItem';\n\nexport default FormItem;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/FormItem/utils/firstChildHasType.ts"],"names":["firstChildHasType","children","component","firstChild","React","Children","toArray","isValidElement","type"],"mappings":";;;;;;;AAAA;;;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CACxBC,QADwB,EAExBC,SAFwB,EAGZ;AACZ,MAAMC,UAAU,GAAGC,kBAAMC,QAAN,CAAeC,OAAf,CAAuBL,QAAvB,EAAiC,CAAjC,CAAnB;;AACA,SAAO,+BAAMM,cAAN,CAAqBJ,UAArB,KAAoCA,UAAU,CAACK,IAAX,KAAoBN,SAA/D;AACD,CAND;;eAQeF,iB","sourcesContent":["import React, { ReactNode } from 'react';\n\nconst firstChildHasType = (\n children: ReactNode | ReactNode[],\n component: React.FC\n): boolean => {\n const firstChild = React.Children.toArray(children)[0];\n return React.isValidElement(firstChild) && firstChild.type === component;\n};\n\nexport default firstChildHasType;\n"],"file":"firstChildHasType.js"}
1
+ {"version":3,"file":"firstChildHasType.js","names":["firstChildHasType","children","component","firstChild","React","Children","toArray","isValidElement","type"],"sources":["../../../../src/FormItem/utils/firstChildHasType.ts"],"sourcesContent":["import React, { ReactNode } from 'react';\n\nconst firstChildHasType = (\n children: ReactNode | ReactNode[],\n component: React.FC\n): boolean => {\n const firstChild = React.Children.toArray(children)[0];\n return React.isValidElement(firstChild) && firstChild.type === component;\n};\n\nexport default firstChildHasType;\n"],"mappings":";;;;;;;AAAA;;;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CACxBC,QADwB,EAExBC,SAFwB,EAGZ;EACZ,IAAMC,UAAU,GAAGC,iBAAA,CAAMC,QAAN,CAAeC,OAAf,CAAuBL,QAAvB,EAAiC,CAAjC,CAAnB;;EACA,OAAO,aAAAG,iBAAA,CAAMG,cAAN,CAAqBJ,UAArB,KAAoCA,UAAU,CAACK,IAAX,KAAoBN,SAA/D;AACD,CAND;;eAQeF,iB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/GlobalStyles/index.tsx"],"names":["GlobalStyles","theme","displayName"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,YAAsB,GAAG,SAAzBA,YAAyB,GAAM;AACnC;AACA,sBACE,gCAAC,cAAD;AAAQ,IAAA,MAAM,EAAE,gBAACC,KAAD;AAAA,aAAW,CAAC,6BAAYA,KAAZ,CAAD,EAAqB,kCAAiBA,KAAjB,CAArB,CAAX;AAAA;AAAhB,IADF;AAGD,CALD;;AAOAD,YAAY,CAACE,WAAb,GAA2B,cAA3B;eAEeF,Y","sourcesContent":["import React from 'react';\nimport { Global } from '@emotion/react';\nimport { useVh } from '@os-design/utils';\nimport resetStyles from './resetStyles';\nimport typographyStyles from './typographyStyles';\n\nconst GlobalStyles: React.FC = () => {\n useVh();\n return (\n <Global styles={(theme) => [resetStyles(theme), typographyStyles(theme)]} />\n );\n};\n\nGlobalStyles.displayName = 'GlobalStyles';\n\nexport default GlobalStyles;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["GlobalStyles","useVh","theme","resetStyles","typographyStyles","displayName"],"sources":["../../../src/GlobalStyles/index.tsx"],"sourcesContent":["import React from 'react';\nimport { Global } from '@emotion/react';\nimport { useVh } from '@os-design/utils';\nimport resetStyles from './resetStyles';\nimport typographyStyles from './typographyStyles';\n\nconst GlobalStyles: React.FC = () => {\n useVh();\n return (\n <Global styles={(theme) => [resetStyles(theme), typographyStyles(theme)]} />\n );\n};\n\nGlobalStyles.displayName = 'GlobalStyles';\n\nexport default GlobalStyles;\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,YAAsB,GAAG,SAAzBA,YAAyB,GAAM;EACnC,IAAAC,YAAA;EACA,oBACE,gCAAC,cAAD;IAAQ,MAAM,EAAE,gBAACC,KAAD;MAAA,OAAW,CAAC,IAAAC,uBAAA,EAAYD,KAAZ,CAAD,EAAqB,IAAAE,4BAAA,EAAiBF,KAAjB,CAArB,CAAX;IAAA;EAAhB,EADF;AAGD,CALD;;AAOAF,YAAY,CAACK,WAAb,GAA2B,cAA3B;eAEeL,Y"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/GlobalStyles/resetStyles.ts"],"names":["resetStyles","theme","css","paragraphMarginBottom"],"mappings":";;;;;;;AAAA;;;;;;AAIA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD;AAAA,aAAoCC,UAApC,kKAQFD,KAAK,CAACE,qBARJ;AAAA,CAApB;;eAYeH,W","sourcesContent":["import { css } from '@emotion/react';\nimport { Theme } from '@os-design/theming';\nimport { SerializedStyles } from '@emotion/serialize';\n\nconst resetStyles = (theme: Theme): SerializedStyles => css`\n body {\n margin: 0;\n }\n\n p,\n figure,\n pre {\n margin: 0 0 ${theme.paragraphMarginBottom}em;\n }\n`;\n\nexport default resetStyles;\n"],"file":"resetStyles.js"}
1
+ {"version":3,"file":"resetStyles.js","names":["resetStyles","theme","css","paragraphMarginBottom"],"sources":["../../../src/GlobalStyles/resetStyles.ts"],"sourcesContent":["import { css } from '@emotion/react';\nimport { Theme } from '@os-design/theming';\nimport { SerializedStyles } from '@emotion/serialize';\n\nconst resetStyles = (theme: Theme): SerializedStyles => css`\n body {\n margin: 0;\n }\n\n p,\n figure,\n pre {\n margin: 0 0 ${theme.paragraphMarginBottom}em;\n }\n`;\n\nexport default resetStyles;\n"],"mappings":";;;;;;;AAAA;;;;;;AAIA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD;EAAA,WAAoCC,UAApC,kKAQFD,KAAK,CAACE,qBARJ;AAAA,CAApB;;eAYeH,W"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/GlobalStyles/typographyStyles.ts"],"names":["headingsFontSizeStyles","fontSize","headings","literal","map","item","headingsMarginTopStyles","marginTop","h","typographyStyles","theme","css","colorText","lineHeight","m","min","md","xxl","s","colorBg","headingsMarginBottom","headingsMarginTop","headingsFontSize","headingsFontSizeMd"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;;;AAEA,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,QAAD,EAAwB;AACrD,MAAMC,QAAQ,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CAAjB;AACA,SAAO,2BAAGA,QAAH,EAAa;AAAEC,IAAAA,OAAO,EAAE;AAAX,GAAb,EAAgC;AACrCF,IAAAA,QAAQ,EAAEA,QAAQ,CAACG,GAAT,CAAa,UAACC,IAAD;AAAA,uBAAaA,IAAb;AAAA,KAAb;AAD2B,GAAhC,CAAP;AAGD,CALD;;AAOA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,SAAD,EAAyB;AACvD,MAAML,QAAQ,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,EAAqCE,GAArC,CACf,UAACI,CAAD;AAAA,qBAAUA,CAAV;AAAA,GADe,CAAjB;AAGA,SAAO,2BAAGN,QAAH,EAAa;AAAEC,IAAAA,OAAO,EAAE;AAAX,GAAb,EAAgC;AACrCI,IAAAA,SAAS,EAAEA,SAAS,CAACH,GAAV,CAAc,UAACC,IAAD;AAAA,uBAAaA,IAAb;AAAA,KAAd;AAD0B,GAAhC,CAAP;AAGD,CAPD;;AASA,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;AAAA,aAAoCC,UAApC,o2BAWZ,kBAAID,KAAK,CAACE,SAAV,CAXY,EAeNF,KAAK,CAACG,UAfA,EAuBnB,2BAAG,CAACC,SAAEC,GAAF,CAAMC,EAAP,EAAWF,SAAEC,GAAF,CAAME,GAAjB,CAAH,EAA0B;AAC1BhB,IAAAA,QAAQ,EAAES,KAAK,CAACT,QAAN,CAAeG,GAAf,CAAmB,UAACc,CAAD;AAAA,uBAAUA,CAAV;AAAA,KAAnB;AADgB,GAA1B,CAvBmB,EA6BD,kBAAIR,KAAK,CAACS,OAAV,CA7BC,EAwCPT,KAAK,CAACU,oBAxCC,EA4CrBd,uBAAuB,CAACI,KAAK,CAACW,iBAAP,CA5CF,EA+CrBrB,sBAAsB,CAACU,KAAK,CAACY,gBAAP,CA/CD,EAkDrBR,SAAEC,GAAF,CAAMC,EAlDe,EAmDnBhB,sBAAsB,CAACU,KAAK,CAACa,kBAAP,CAnDH;AAAA,CAAzB;;eAuDed,gB","sourcesContent":["import { css } from '@emotion/react';\nimport fp from 'facepaint';\nimport { SerializedStyles } from '@emotion/serialize';\nimport { m } from '@os-design/media';\nimport { Theme, clr } from '@os-design/theming';\n\nconst headingsFontSizeStyles = (fontSize: number[]) => {\n const headings = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];\n return fp(headings, { literal: true })({\n fontSize: fontSize.map((item) => `${item}em`),\n });\n};\n\nconst headingsMarginTopStyles = (marginTop: number[]) => {\n const headings = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'].map(\n (h) => `${h}:not(:first-of-type)`\n );\n return fp(headings, { literal: true })({\n marginTop: marginTop.map((item) => `${item}em`),\n });\n};\n\nconst typographyStyles = (theme: Theme): SerializedStyles => css`\n html,\n button,\n input,\n textarea,\n select {\n font-family: 'Helvetica Neue', Helvetica, sans-serif;\n }\n\n html,\n input {\n color: ${clr(theme.colorText)};\n }\n\n html {\n line-height: ${theme.lineHeight};\n\n // Sets the font smoothing\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n\n // Sets the base font size and increases it on large screens\n ${fp([m.min.md, m.min.xxl])({\n fontSize: theme.fontSize.map((s) => `${s}px`),\n })};\n }\n\n body {\n background-color: ${clr(theme.colorBg)};\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-weight: bold;\n line-height: 1.2;\n margin: 0 0 ${theme.headingsMarginBottom}em;\n }\n\n // Sets the margin top of headings\n ${headingsMarginTopStyles(theme.headingsMarginTop)};\n\n // Sets the base font size of headings\n ${headingsFontSizeStyles(theme.headingsFontSize)};\n\n // Sets the font size of headings on large screens\n ${m.min.md} {\n ${headingsFontSizeStyles(theme.headingsFontSizeMd)}\n } ;\n`;\n\nexport default typographyStyles;\n"],"file":"typographyStyles.js"}
1
+ {"version":3,"file":"typographyStyles.js","names":["headingsFontSizeStyles","fontSize","headings","fp","literal","map","item","headingsMarginTopStyles","marginTop","h","typographyStyles","theme","css","clr","colorText","lineHeight","m","min","md","xxl","s","colorBg","headingsMarginBottom","headingsMarginTop","headingsFontSize","headingsFontSizeMd"],"sources":["../../../src/GlobalStyles/typographyStyles.ts"],"sourcesContent":["import { css } from '@emotion/react';\nimport fp from 'facepaint';\nimport { SerializedStyles } from '@emotion/serialize';\nimport { m } from '@os-design/media';\nimport { Theme, clr } from '@os-design/theming';\n\nconst headingsFontSizeStyles = (fontSize: number[]) => {\n const headings = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];\n return fp(headings, { literal: true })({\n fontSize: fontSize.map((item) => `${item}em`),\n });\n};\n\nconst headingsMarginTopStyles = (marginTop: number[]) => {\n const headings = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'].map(\n (h) => `${h}:not(:first-of-type)`\n );\n return fp(headings, { literal: true })({\n marginTop: marginTop.map((item) => `${item}em`),\n });\n};\n\nconst typographyStyles = (theme: Theme): SerializedStyles => css`\n html,\n button,\n input,\n textarea,\n select {\n font-family: 'Helvetica Neue', Helvetica, sans-serif;\n }\n\n html,\n input {\n color: ${clr(theme.colorText)};\n }\n\n html {\n line-height: ${theme.lineHeight};\n\n // Sets the font smoothing\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n\n // Sets the base font size and increases it on large screens\n ${fp([m.min.md, m.min.xxl])({\n fontSize: theme.fontSize.map((s) => `${s}px`),\n })};\n }\n\n body {\n background-color: ${clr(theme.colorBg)};\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-weight: bold;\n line-height: 1.2;\n margin: 0 0 ${theme.headingsMarginBottom}em;\n }\n\n // Sets the margin top of headings\n ${headingsMarginTopStyles(theme.headingsMarginTop)};\n\n // Sets the base font size of headings\n ${headingsFontSizeStyles(theme.headingsFontSize)};\n\n // Sets the font size of headings on large screens\n ${m.min.md} {\n ${headingsFontSizeStyles(theme.headingsFontSizeMd)}\n } ;\n`;\n\nexport default typographyStyles;\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;;;AAEA,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,QAAD,EAAwB;EACrD,IAAMC,QAAQ,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CAAjB;EACA,OAAO,IAAAC,qBAAA,EAAGD,QAAH,EAAa;IAAEE,OAAO,EAAE;EAAX,CAAb,EAAgC;IACrCH,QAAQ,EAAEA,QAAQ,CAACI,GAAT,CAAa,UAACC,IAAD;MAAA,iBAAaA,IAAb;IAAA,CAAb;EAD2B,CAAhC,CAAP;AAGD,CALD;;AAOA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,SAAD,EAAyB;EACvD,IAAMN,QAAQ,GAAG,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,EAAqCG,GAArC,CACf,UAACI,CAAD;IAAA,iBAAUA,CAAV;EAAA,CADe,CAAjB;EAGA,OAAO,IAAAN,qBAAA,EAAGD,QAAH,EAAa;IAAEE,OAAO,EAAE;EAAX,CAAb,EAAgC;IACrCI,SAAS,EAAEA,SAAS,CAACH,GAAV,CAAc,UAACC,IAAD;MAAA,iBAAaA,IAAb;IAAA,CAAd;EAD0B,CAAhC,CAAP;AAGD,CAPD;;AASA,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;EAAA,WAAoCC,UAApC,o2BAWZ,IAAAC,YAAA,EAAIF,KAAK,CAACG,SAAV,CAXY,EAeNH,KAAK,CAACI,UAfA,EAuBnB,IAAAZ,qBAAA,EAAG,CAACa,QAAA,CAAEC,GAAF,CAAMC,EAAP,EAAWF,QAAA,CAAEC,GAAF,CAAME,GAAjB,CAAH,EAA0B;IAC1BlB,QAAQ,EAAEU,KAAK,CAACV,QAAN,CAAeI,GAAf,CAAmB,UAACe,CAAD;MAAA,iBAAUA,CAAV;IAAA,CAAnB;EADgB,CAA1B,CAvBmB,EA6BD,IAAAP,YAAA,EAAIF,KAAK,CAACU,OAAV,CA7BC,EAwCPV,KAAK,CAACW,oBAxCC,EA4CrBf,uBAAuB,CAACI,KAAK,CAACY,iBAAP,CA5CF,EA+CrBvB,sBAAsB,CAACW,KAAK,CAACa,gBAAP,CA/CD,EAkDrBR,QAAA,CAAEC,GAAF,CAAMC,EAlDe,EAmDnBlB,sBAAsB,CAACW,KAAK,CAACc,kBAAP,CAnDH;AAAA,CAAzB;;eAuDef,gB"}
@@ -29,7 +29,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
29
29
 
30
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
31
31
 
32
- function _extends() { _extends = Object.assign || 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); }
32
+ 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); }
33
33
 
34
34
  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; }
35
35
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/HeaderSkeleton/index.tsx"],"names":["hasMarginStyles","p","hasMargin","css","theme","headingsMarginTop","type","headingsMarginBottom","MULTIPLIER","StyledHeaderSkeleton","Skeleton","headingsFontSize","m","min","md","headingsFontSizeMd","HeaderSkeleton","ref","width","rest","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAeA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,CAAD;AAAA,SACtBA,CAAC,CAACC,SAAF,QACAC,WADA,gHAEYF,CAAC,CAACG,KAAF,CAAQC,iBAAR,CAA0BJ,CAAC,CAACK,IAAF,GAAS,CAAnC,CAFZ,EAGML,CAAC,CAACG,KAAF,CAAQG,oBAHd,CADsB;AAAA,CAAxB;;AAOA,IAAMC,UAAU,GAAG,GAAnB;AAKA,IAAMC,oBAAoB,GAAG,wBAC3BC,oBAD2B,EAE3B,6BAAiB,MAAjB,EAAyB,WAAzB,CAF2B,CAAH,gJAIX,UAACT,CAAD;AAAA,SAAOA,CAAC,CAACG,KAAF,CAAQO,gBAAR,CAAyBV,CAAC,CAACK,IAAF,GAAS,CAAlC,IAAuCE,UAA9C;AAAA,CAJW,EAKtBI,SAAEC,GAAF,CAAMC,EALgB,EAMT,UAACb,CAAD;AAAA,SAAOA,CAAC,CAACG,KAAF,CAAQW,kBAAR,CAA2Bd,CAAC,CAACK,IAAF,GAAS,CAApC,IAAyCE,UAAhD;AAAA,CANS,EAQtBR,eARsB,CAA1B;AAWA;AACA;AACA;;AACA,IAAMgB,cAAc,gBAAG,uBACrB,gBAA2DC,GAA3D;AAAA,uBAAGX,IAAH;AAAA,MAAGA,IAAH,0BAAU,CAAV;AAAA,4BAAaJ,SAAb;AAAA,MAAaA,SAAb,+BAAyB,KAAzB;AAAA,wBAAgCgB,KAAhC;AAAA,MAAgCA,KAAhC,2BAAwC,MAAxC;AAAA,MAAmDC,IAAnD;;AAAA,sBACE,gCAAC,oBAAD;AACE,IAAA,IAAI,EAAEb,IADR;AAEE,IAAA,SAAS,EAAEJ,SAFb;AAGE,IAAA,KAAK,EAAEgB;AAHT,KAIMC,IAJN;AAKE,IAAA,GAAG,EAAEF;AALP,KADF;AAAA,CADqB,CAAvB;AAYAD,cAAc,CAACI,WAAf,GAA6B,gBAA7B;eAEeJ,c","sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { m } from '@os-design/media';\nimport { css } from '@emotion/react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface HeaderSkeletonProps extends SkeletonProps {\n /**\n * The header type.\n * @default 1\n */\n type?: 1 | 2 | 3 | 4 | 5 | 6;\n /**\n * Whether the header has top and bottom margins.\n * @default false\n */\n hasMargin?: boolean;\n}\n\nconst hasMarginStyles = (p) =>\n p.hasMargin &&\n css`\n margin: ${p.theme.headingsMarginTop[p.type - 1]}em 0\n ${p.theme.headingsMarginBottom}em;\n `;\n\nconst MULTIPLIER = 0.9;\n\ntype StyledHeaderSkeletonProps = Required<\n Pick<HeaderSkeletonProps, 'type' | 'hasMargin'>\n>;\nconst StyledHeaderSkeleton = styled(\n Skeleton,\n omitEmotionProps('type', 'hasMargin')\n)<StyledHeaderSkeletonProps>`\n font-size: ${(p) => p.theme.headingsFontSize[p.type - 1] * MULTIPLIER}em;\n ${m.min.md} {\n font-size: ${(p) => p.theme.headingsFontSizeMd[p.type - 1] * MULTIPLIER}em;\n }\n ${hasMarginStyles};\n`;\n\n/**\n * Provides a header placeholder while a user waits for the content to load.\n */\nconst HeaderSkeleton = forwardRef<HTMLDivElement, HeaderSkeletonProps>(\n ({ type = 1, hasMargin = false, width = '100%', ...rest }, ref) => (\n <StyledHeaderSkeleton\n type={type}\n hasMargin={hasMargin}\n width={width}\n {...rest}\n ref={ref}\n />\n )\n);\n\nHeaderSkeleton.displayName = 'HeaderSkeleton';\n\nexport default HeaderSkeleton;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["hasMarginStyles","p","hasMargin","css","theme","headingsMarginTop","type","headingsMarginBottom","MULTIPLIER","StyledHeaderSkeleton","styled","Skeleton","omitEmotionProps","headingsFontSize","m","min","md","headingsFontSizeMd","HeaderSkeleton","forwardRef","ref","width","rest","displayName"],"sources":["../../../src/HeaderSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { m } from '@os-design/media';\nimport { css } from '@emotion/react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface HeaderSkeletonProps extends SkeletonProps {\n /**\n * The header type.\n * @default 1\n */\n type?: 1 | 2 | 3 | 4 | 5 | 6;\n /**\n * Whether the header has top and bottom margins.\n * @default false\n */\n hasMargin?: boolean;\n}\n\nconst hasMarginStyles = (p) =>\n p.hasMargin &&\n css`\n margin: ${p.theme.headingsMarginTop[p.type - 1]}em 0\n ${p.theme.headingsMarginBottom}em;\n `;\n\nconst MULTIPLIER = 0.9;\n\ntype StyledHeaderSkeletonProps = Required<\n Pick<HeaderSkeletonProps, 'type' | 'hasMargin'>\n>;\nconst StyledHeaderSkeleton = styled(\n Skeleton,\n omitEmotionProps('type', 'hasMargin')\n)<StyledHeaderSkeletonProps>`\n font-size: ${(p) => p.theme.headingsFontSize[p.type - 1] * MULTIPLIER}em;\n ${m.min.md} {\n font-size: ${(p) => p.theme.headingsFontSizeMd[p.type - 1] * MULTIPLIER}em;\n }\n ${hasMarginStyles};\n`;\n\n/**\n * Provides a header placeholder while a user waits for the content to load.\n */\nconst HeaderSkeleton = forwardRef<HTMLDivElement, HeaderSkeletonProps>(\n ({ type = 1, hasMargin = false, width = '100%', ...rest }, ref) => (\n <StyledHeaderSkeleton\n type={type}\n hasMargin={hasMargin}\n width={width}\n {...rest}\n ref={ref}\n />\n )\n);\n\nHeaderSkeleton.displayName = 'HeaderSkeleton';\n\nexport default HeaderSkeleton;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAeA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,CAAD;EAAA,OACtBA,CAAC,CAACC,SAAF,QACAC,WADA,gHAEYF,CAAC,CAACG,KAAF,CAAQC,iBAAR,CAA0BJ,CAAC,CAACK,IAAF,GAAS,CAAnC,CAFZ,EAGML,CAAC,CAACG,KAAF,CAAQG,oBAHd,CADsB;AAAA,CAAxB;;AAOA,IAAMC,UAAU,GAAG,GAAnB;AAKA,IAAMC,oBAAoB,GAAG,IAAAC,kBAAA,EAC3BC,oBAD2B,EAE3B,IAAAC,uBAAA,EAAiB,MAAjB,EAAyB,WAAzB,CAF2B,CAAH,gJAIX,UAACX,CAAD;EAAA,OAAOA,CAAC,CAACG,KAAF,CAAQS,gBAAR,CAAyBZ,CAAC,CAACK,IAAF,GAAS,CAAlC,IAAuCE,UAA9C;AAAA,CAJW,EAKtBM,QAAA,CAAEC,GAAF,CAAMC,EALgB,EAMT,UAACf,CAAD;EAAA,OAAOA,CAAC,CAACG,KAAF,CAAQa,kBAAR,CAA2BhB,CAAC,CAACK,IAAF,GAAS,CAApC,IAAyCE,UAAhD;AAAA,CANS,EAQtBR,eARsB,CAA1B;AAWA;AACA;AACA;;AACA,IAAMkB,cAAc,gBAAG,IAAAC,iBAAA,EACrB,gBAA2DC,GAA3D;EAAA,qBAAGd,IAAH;EAAA,IAAGA,IAAH,0BAAU,CAAV;EAAA,0BAAaJ,SAAb;EAAA,IAAaA,SAAb,+BAAyB,KAAzB;EAAA,sBAAgCmB,KAAhC;EAAA,IAAgCA,KAAhC,2BAAwC,MAAxC;EAAA,IAAmDC,IAAnD;;EAAA,oBACE,gCAAC,oBAAD;IACE,IAAI,EAAEhB,IADR;IAEE,SAAS,EAAEJ,SAFb;IAGE,KAAK,EAAEmB;EAHT,GAIMC,IAJN;IAKE,GAAG,EAAEF;EALP,GADF;AAAA,CADqB,CAAvB;AAYAF,cAAc,CAACK,WAAf,GAA6B,gBAA7B;eAEeL,c"}
@@ -25,7 +25,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
25
25
 
26
26
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
27
 
28
- function _extends() { _extends = Object.assign || 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); }
28
+ 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); }
29
29
 
30
30
  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; }
31
31
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Image/index.tsx"],"names":["EMPTY_IMAGE","coverStyles","p","cover","css","StyledImage","theme","borderRadius","Image","ref","url","sizes","defaultSize","cropped","className","rest","getUrl","size","map","join","filter","i","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,WAAW,GACf,oHADF;;AAgCA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD;AAAA,SAClBA,CAAC,CAACC,KAAF,QACAC,WADA,qHADkB;AAAA,CAApB;;AAQA,IAAMC,WAAW,GAAG,wBAAO,KAAP,EAAc,6BAAiB,OAAjB,CAAd,CAAH,wLAGE,UAACH,CAAD;AAAA,SAAOA,CAAC,CAACI,KAAF,CAAQC,YAAf;AAAA,CAHF,EAIbN,WAJa,CAAjB;AAOA;AACA;AACA;AACA;;AACA,IAAMO,KAAK,gBAAG,uBACZ,gBAUEC,GAVF,EAWK;AAAA,MATDC,GASC,QATDA,GASC;AAAA,wBARDC,KAQC;AAAA,MARDA,KAQC,2BARO,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,EAAe,IAAf,EAAqB,IAArB,CAQP;AAAA,8BAPDC,WAOC;AAAA,MAPDA,WAOC,iCAPa,EAOb;AAAA,0BANDC,OAMC;AAAA,MANDA,OAMC,6BANS,KAMT;AAAA,wBALDV,KAKC;AAAA,MALDA,KAKC,2BALO,KAKP;AAAA,MAJDW,SAIC,QAJDA,SAIC;AAAA,MAHEC,IAGF;;AACH,MAAMC,MAAM,GAAG,wBACb,UAACC,IAAD;AAAA,qBAAqBP,GAArB,cAA4BO,IAA5B,SAAmCJ,OAAO,GAAG,IAAH,GAAU,EAApD;AAAA,GADa,EAEb,CAACH,GAAD,EAAMG,OAAN,CAFa,CAAf;;AAKA,MAAI,CAACH,GAAL,EAAU;AACR,wBACE,gCAAC,WAAD;AACE,MAAA,GAAG,EAAEV,WADP;AAEE,MAAA,SAAS,EAAEc;AAFb,OAGMC,IAHN;AAIE,MAAA,GAAG,EAAEN;AAJP,OADF;AAQD;;AAED,sBACE,gCAAC,WAAD;AACE,IAAA,GAAG,EAAEO,MAAM,CAACJ,WAAD,CADb;AAEE,IAAA,MAAM,EAAEZ,WAFV;AAGE,kBAAW,MAHb;AAIE,mBAAaW,KAAK,CAACO,GAAN,CAAU,UAACD,IAAD;AAAA,uBAAaD,MAAM,CAACC,IAAD,CAAnB,cAA6BA,IAA7B;AAAA,KAAV,EAAgDE,IAAhD,CAAqD,IAArD,CAJf;AAKE,IAAA,KAAK,EAAEhB,KALT;AAME,IAAA,SAAS,EAAE,CAACW,SAAD,EAAY,UAAZ,EAAwBM,MAAxB,CAA+B,UAACC,CAAD;AAAA,aAAOA,CAAP;AAAA,KAA/B,EAAyCF,IAAzC,CAA8C,GAA9C;AANb,KAOMJ,IAPN;AAQE,IAAA,GAAG,EAAEN;AARP,KADF;AAYD,CAzCW,CAAd;AA4CAD,KAAK,CAACc,WAAN,GAAoB,OAApB;eAEed,K","sourcesContent":["import React, { forwardRef, useCallback } from 'react';\nimport styled from '@emotion/styled';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { css } from '@emotion/react';\n\nconst EMPTY_IMAGE =\n 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mO8+R8AArcB2pIvCSwAAAAASUVORK5CYII=';\n\ntype JsxImgProps = Omit<JSX.IntrinsicElements['img'], 'sizes' | 'ref'>;\nexport interface ImageProps extends JsxImgProps {\n /**\n * The image URL.\n * @default undefined\n */\n url?: string;\n /**\n * All available sizes of the image.\n * @default [72, 192, 512, 1024, 2560]\n */\n sizes?: number[];\n /**\n * The image size if the browser does not support lazy loading.\n * @default 72\n */\n defaultSize?: number;\n /**\n * Whether the image is cropped.\n * @default false\n */\n cropped?: boolean;\n /**\n * Sets object-fit: cover.\n * @default false\n */\n cover?: boolean;\n}\n\nconst coverStyles = (p) =>\n p.cover &&\n css`\n height: 100%;\n object-fit: cover;\n `;\n\ntype StyledImageProps = Pick<ImageProps, 'cover'>;\nconst StyledImage = styled('img', omitEmotionProps('cover'))<StyledImageProps>`\n display: block; // To remove the indent under the image\n width: 100%;\n border-radius: ${(p) => p.theme.borderRadius}em;\n ${coverStyles};\n`;\n\n/**\n * The image with lazy loading. Required lazysizes.\n * Should be loaded by @os-team/image-storage.\n */\nconst Image = forwardRef<HTMLImageElement, ImageProps>(\n (\n {\n url,\n sizes = [72, 192, 512, 1024, 2560],\n defaultSize = 72,\n cropped = false,\n cover = false,\n className,\n ...rest\n },\n ref\n ) => {\n const getUrl = useCallback(\n (size: number) => `${url}-${size}${cropped ? '-c' : ''}`,\n [url, cropped]\n );\n\n if (!url) {\n return (\n <StyledImage\n src={EMPTY_IMAGE}\n className={className}\n {...rest}\n ref={ref}\n />\n );\n }\n\n return (\n <StyledImage\n src={getUrl(defaultSize)}\n srcSet={EMPTY_IMAGE}\n data-sizes='auto'\n data-srcset={sizes.map((size) => `${getUrl(size)} ${size}w`).join(', ')}\n cover={cover}\n className={[className, 'lazyload'].filter((i) => i).join(' ')}\n {...rest}\n ref={ref}\n />\n );\n }\n);\n\nImage.displayName = 'Image';\n\nexport default Image;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["EMPTY_IMAGE","coverStyles","p","cover","css","StyledImage","styled","omitEmotionProps","theme","borderRadius","Image","forwardRef","ref","url","sizes","defaultSize","cropped","className","rest","getUrl","useCallback","size","map","join","filter","i","displayName"],"sources":["../../../src/Image/index.tsx"],"sourcesContent":["import React, { forwardRef, useCallback } from 'react';\nimport styled from '@emotion/styled';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { css } from '@emotion/react';\n\nconst EMPTY_IMAGE =\n 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mO8+R8AArcB2pIvCSwAAAAASUVORK5CYII=';\n\ntype JsxImgProps = Omit<JSX.IntrinsicElements['img'], 'sizes' | 'ref'>;\nexport interface ImageProps extends JsxImgProps {\n /**\n * The image URL.\n * @default undefined\n */\n url?: string;\n /**\n * All available sizes of the image.\n * @default [72, 192, 512, 1024, 2560]\n */\n sizes?: number[];\n /**\n * The image size if the browser does not support lazy loading.\n * @default 72\n */\n defaultSize?: number;\n /**\n * Whether the image is cropped.\n * @default false\n */\n cropped?: boolean;\n /**\n * Sets object-fit: cover.\n * @default false\n */\n cover?: boolean;\n}\n\nconst coverStyles = (p) =>\n p.cover &&\n css`\n height: 100%;\n object-fit: cover;\n `;\n\ntype StyledImageProps = Pick<ImageProps, 'cover'>;\nconst StyledImage = styled('img', omitEmotionProps('cover'))<StyledImageProps>`\n display: block; // To remove the indent under the image\n width: 100%;\n border-radius: ${(p) => p.theme.borderRadius}em;\n ${coverStyles};\n`;\n\n/**\n * The image with lazy loading. Required lazysizes.\n * Should be loaded by @os-team/image-storage.\n */\nconst Image = forwardRef<HTMLImageElement, ImageProps>(\n (\n {\n url,\n sizes = [72, 192, 512, 1024, 2560],\n defaultSize = 72,\n cropped = false,\n cover = false,\n className,\n ...rest\n },\n ref\n ) => {\n const getUrl = useCallback(\n (size: number) => `${url}-${size}${cropped ? '-c' : ''}`,\n [url, cropped]\n );\n\n if (!url) {\n return (\n <StyledImage\n src={EMPTY_IMAGE}\n className={className}\n {...rest}\n ref={ref}\n />\n );\n }\n\n return (\n <StyledImage\n src={getUrl(defaultSize)}\n srcSet={EMPTY_IMAGE}\n data-sizes='auto'\n data-srcset={sizes.map((size) => `${getUrl(size)} ${size}w`).join(', ')}\n cover={cover}\n className={[className, 'lazyload'].filter((i) => i).join(' ')}\n {...rest}\n ref={ref}\n />\n );\n }\n);\n\nImage.displayName = 'Image';\n\nexport default Image;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,WAAW,GACf,oHADF;;AAgCA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD;EAAA,OAClBA,CAAC,CAACC,KAAF,QACAC,WADA,qHADkB;AAAA,CAApB;;AAQA,IAAMC,WAAW,GAAG,IAAAC,kBAAA,EAAO,KAAP,EAAc,IAAAC,uBAAA,EAAiB,OAAjB,CAAd,CAAH,wLAGE,UAACL,CAAD;EAAA,OAAOA,CAAC,CAACM,KAAF,CAAQC,YAAf;AAAA,CAHF,EAIbR,WAJa,CAAjB;AAOA;AACA;AACA;AACA;;AACA,IAAMS,KAAK,gBAAG,IAAAC,iBAAA,EACZ,gBAUEC,GAVF,EAWK;EAAA,IATDC,GASC,QATDA,GASC;EAAA,sBARDC,KAQC;EAAA,IARDA,KAQC,2BARO,CAAC,EAAD,EAAK,GAAL,EAAU,GAAV,EAAe,IAAf,EAAqB,IAArB,CAQP;EAAA,4BAPDC,WAOC;EAAA,IAPDA,WAOC,iCAPa,EAOb;EAAA,wBANDC,OAMC;EAAA,IANDA,OAMC,6BANS,KAMT;EAAA,sBALDb,KAKC;EAAA,IALDA,KAKC,2BALO,KAKP;EAAA,IAJDc,SAIC,QAJDA,SAIC;EAAA,IAHEC,IAGF;;EACH,IAAMC,MAAM,GAAG,IAAAC,kBAAA,EACb,UAACC,IAAD;IAAA,iBAAqBR,GAArB,cAA4BQ,IAA5B,SAAmCL,OAAO,GAAG,IAAH,GAAU,EAApD;EAAA,CADa,EAEb,CAACH,GAAD,EAAMG,OAAN,CAFa,CAAf;;EAKA,IAAI,CAACH,GAAL,EAAU;IACR,oBACE,gCAAC,WAAD;MACE,GAAG,EAAEb,WADP;MAEE,SAAS,EAAEiB;IAFb,GAGMC,IAHN;MAIE,GAAG,EAAEN;IAJP,GADF;EAQD;;EAED,oBACE,gCAAC,WAAD;IACE,GAAG,EAAEO,MAAM,CAACJ,WAAD,CADb;IAEE,MAAM,EAAEf,WAFV;IAGE,cAAW,MAHb;IAIE,eAAac,KAAK,CAACQ,GAAN,CAAU,UAACD,IAAD;MAAA,iBAAaF,MAAM,CAACE,IAAD,CAAnB,cAA6BA,IAA7B;IAAA,CAAV,EAAgDE,IAAhD,CAAqD,IAArD,CAJf;IAKE,KAAK,EAAEpB,KALT;IAME,SAAS,EAAE,CAACc,SAAD,EAAY,UAAZ,EAAwBO,MAAxB,CAA+B,UAACC,CAAD;MAAA,OAAOA,CAAP;IAAA,CAA/B,EAAyCF,IAAzC,CAA8C,GAA9C;EANb,GAOML,IAPN;IAQE,GAAG,EAAEN;EARP,GADF;AAYD,CAzCW,CAAd;AA4CAF,KAAK,CAACgB,WAAN,GAAoB,OAApB;eAEehB,K"}
@@ -21,7 +21,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
21
 
22
22
  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; }
23
23
 
24
- function _extends() { _extends = Object.assign || 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); }
24
+ 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); }
25
25
 
26
26
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
27
27
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ImageSkeleton/index.tsx"],"names":["StyledImageSkeleton","Skeleton","ImageSkeleton","props","ref","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;AAIA,IAAMA,mBAAmB,GAAG,wBAAOC,oBAAP,CAAH,wFAAzB;AAIA;AACA;AACA;;AACA,IAAMC,aAAa,gBAAG,uBACpB,UAACC,KAAD,EAAQC,GAAR;AAAA,sBAAgB,gCAAC,mBAAD;AAAqB,IAAA,KAAK,EAAC;AAA3B,KAAsCD,KAAtC;AAA6C,IAAA,GAAG,EAAEC;AAAlD,KAAhB;AAAA,CADoB,CAAtB;AAIAF,aAAa,CAACG,WAAd,GAA4B,eAA5B;eAEeH,a","sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport type ImageSkeletonProps = Omit<SkeletonProps, 'width'>;\n\nconst StyledImageSkeleton = styled(Skeleton)`\n height: 100%;\n`;\n\n/**\n * Provides an image placeholder while a user waits for the content to load.\n */\nconst ImageSkeleton = forwardRef<HTMLDivElement, ImageSkeletonProps>(\n (props, ref) => <StyledImageSkeleton width='100%' {...props} ref={ref} />\n);\n\nImageSkeleton.displayName = 'ImageSkeleton';\n\nexport default ImageSkeleton;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["StyledImageSkeleton","styled","Skeleton","ImageSkeleton","forwardRef","props","ref","displayName"],"sources":["../../../src/ImageSkeleton/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport type ImageSkeletonProps = Omit<SkeletonProps, 'width'>;\n\nconst StyledImageSkeleton = styled(Skeleton)`\n height: 100%;\n`;\n\n/**\n * Provides an image placeholder while a user waits for the content to load.\n */\nconst ImageSkeleton = forwardRef<HTMLDivElement, ImageSkeletonProps>(\n (props, ref) => <StyledImageSkeleton width='100%' {...props} ref={ref} />\n);\n\nImageSkeleton.displayName = 'ImageSkeleton';\n\nexport default ImageSkeleton;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;AAIA,IAAMA,mBAAmB,GAAG,IAAAC,kBAAA,EAAOC,oBAAP,CAAH,wFAAzB;AAIA;AACA;AACA;;AACA,IAAMC,aAAa,gBAAG,IAAAC,iBAAA,EACpB,UAACC,KAAD,EAAQC,GAAR;EAAA,oBAAgB,gCAAC,mBAAD;IAAqB,KAAK,EAAC;EAA3B,GAAsCD,KAAtC;IAA6C,GAAG,EAAEC;EAAlD,GAAhB;AAAA,CADoB,CAAtB;AAIAH,aAAa,CAACI,WAAd,GAA4B,eAA5B;eAEeJ,a"}
@@ -33,7 +33,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
33
33
 
34
34
  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
35
 
36
- function _extends() { _extends = Object.assign || 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); }
36
+ 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
37
 
38
38
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
39
39
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Input/index.tsx"],"names":["hoverStyles","p","disabled","css","theme","inputHoverColorBorder","focusStyles","inputFocusColorBorder","inputFocusColorShadow","disabledStyles","inputDisabledColorText","inputDisabledColorBg","inputDisabledColorBorder","inputDisabledColorPlaceholder","InputContainer","resetFocusStyles","baseHeight","inputColorBg","inputBorderWidth","inputColorBorder","borderRadius","sizeStyles","notHasLeftStyles","hasLeft","inputPaddingHorizontal","notHasRightStyles","hasRight","StyledInput","inputColorText","inputColorPlaceholder","Addon","LeftAddon","inputAddonPaddingHorizontal","hasPadding","RightAddon","Input","ref","type","left","leftHasPadding","right","rightHasPadding","loading","containerRef","containerProps","size","value","onChange","rest","innerContainerRef","mergedContainerRef","rightValue","rightHasPaddingValue","e","target","current","focusableElements","focus","document","inputFocusableElements","firstInputElementIsFocused","activeElement","key","shiftKey","inputContainerIndex","findIndex","el","elementBeforeInputContainer","buttonPaddingHorizontal","displayName"],"mappings":";;;;;;;;;AAAA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD;AAAA,SAClB,CAACA,CAAC,CAACC,QAAH,QACAC,WADA,sKAIsB,kBAAIF,CAAC,CAACG,KAAF,CAAQC,qBAAZ,CAJtB,CADkB;AAAA,CAApB;;AAUA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACL,CAAD;AAAA,SAClB,CAACA,CAAC,CAACC,QAAH,QACAC,WADA,2KAGoB,kBAAIF,CAAC,CAACG,KAAF,CAAQG,qBAAZ,CAHpB,EAI+B,kBAAIN,CAAC,CAACG,KAAF,CAAQI,qBAAZ,CAJ/B,CADkB;AAAA,CAApB;;AASA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACR,CAAD;AAAA,SACrBA,CAAC,CAACC,QAAF,QACAC,WADA,uSAGW,kBAAIF,CAAC,CAACG,KAAF,CAAQM,sBAAZ,CAHX,EAIsB,kBAAIT,CAAC,CAACG,KAAF,CAAQO,oBAAZ,CAJtB,EAKkB,kBAAIV,CAAC,CAACG,KAAF,CAAQQ,wBAAZ,CALlB,EAWe,kBAAIX,CAAC,CAACG,KAAF,CAAQS,6BAAZ,CAXf,CADqB;AAAA,CAAvB;;AAkBO,IAAMC,cAAc,GAAG,wBAC5B,KAD4B,EAE5B,6BAAiB,UAAjB,EAA6B,MAA7B,CAF4B,CAAH,qTAIvBC,wBAJuB,EAQf,UAACd,CAAD;AAAA,SAAOA,CAAC,CAACG,KAAF,CAAQY,UAAf;AAAA,CARe,EAUL,UAACf,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACG,KAAF,CAAQa,YAAZ,CAAP;AAAA,CAVK,EAYf,UAAChB,CAAD;AAAA,SAAOA,CAAC,CAACG,KAAF,CAAQc,gBAAf;AAAA,CAZe,EAarB,UAACjB,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACG,KAAF,CAAQe,gBAAZ,CAAP;AAAA,CAbqB,EAcR,UAAClB,CAAD;AAAA,SAAOA,CAAC,CAACG,KAAF,CAAQgB,YAAf;AAAA,CAdQ,EAgBvBpB,WAhBuB,EAiBvBM,WAjBuB,EAkBvBG,cAlBuB,EAmBvBY,kBAnBuB,EAoBvB,8BAAiB,cAAjB,EAAiC,YAAjC,CApBuB,CAApB;;;AAuBP,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACrB,CAAD;AAAA,SACvB,CAACA,CAAC,CAACsB,OAAH,QACApB,WADA,wGAEkBF,CAAC,CAACG,KAAF,CAAQoB,sBAF1B,CADuB;AAAA,CAAzB;;AAMA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACxB,CAAD;AAAA,SACxB,CAACA,CAAC,CAACyB,QAAH,QACAvB,WADA,yGAEmBF,CAAC,CAACG,KAAF,CAAQoB,sBAF3B,CADwB;AAAA,CAA1B;;AAUO,IAAMG,WAAW,GAAG,wBACzB,OADyB,EAEzB,6BAAiB,SAAjB,EAA4B,UAA5B,CAFyB,CAAH,kSAIpBZ,wBAJoB,EAWb,UAACd,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACG,KAAF,CAAQwB,cAAZ,CAAP;AAAA,CAXa,EAeX,UAAC3B,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACG,KAAF,CAAQyB,qBAAZ,CAAP;AAAA,CAfW,EAkBpBP,gBAlBoB,EAmBpBG,iBAnBoB,CAAjB;;AAyBP,IAAMK,KAAK,GAAG,wBAAO,MAAP,EAAe,6BAAiB,YAAjB,CAAf,CAAH,sMAIA,UAAC7B,CAAD;AAAA,SAAO,kBAAIA,CAAC,CAACG,KAAF,CAAQyB,qBAAZ,CAAP;AAAA,CAJA,CAAX;AAWA,IAAME,SAAS,GAAG,wBAAOD,KAAP,CAAH,4GACI,UAAC7B,CAAD;AAAA,SAAOA,CAAC,CAACG,KAAF,CAAQ4B,2BAAf;AAAA,CADJ,EAEX,UAAC/B,CAAD;AAAA,SACAA,CAAC,CAACgC,UAAF,QACA9B,WADA,8GAEkBF,CAAC,CAACG,KAAF,CAAQoB,sBAF1B,CADA;AAAA,CAFW,CAAf;AASA,IAAMU,UAAU,GAAG,wBAAOJ,KAAP,CAAH,6GACE,UAAC7B,CAAD;AAAA,SAAOA,CAAC,CAACG,KAAF,CAAQ4B,2BAAf;AAAA,CADF,EAEZ,UAAC/B,CAAD;AAAA,SACAA,CAAC,CAACgC,UAAF,QACA9B,WADA,+GAEmBF,CAAC,CAACG,KAAF,CAAQoB,sBAF3B,CADA;AAAA,CAFY,CAAhB;AASA;AACA;AACA;;AACA,IAAMW,KAAK,gBAAG,uBACZ,gBAgBEC,GAhBF,EAiBK;AAAA,uBAfDC,IAeC;AAAA,MAfDA,IAeC,0BAfM,MAeN;AAAA,MAdDC,IAcC,QAdDA,IAcC;AAAA,iCAbDC,cAaC;AAAA,MAbDA,cAaC,oCAbgB,KAahB;AAAA,MAZDC,KAYC,QAZDA,KAYC;AAAA,kCAXDC,eAWC;AAAA,MAXDA,eAWC,qCAXiB,KAWjB;AAAA,2BAVDvC,QAUC;AAAA,MAVDA,QAUC,8BAVU,KAUV;AAAA,0BATDwC,OASC;AAAA,MATDA,OASC,6BATS,KAST;AAAA,MARDC,YAQC,QARDA,YAQC;AAAA,iCAPDC,cAOC;AAAA,MAPDA,cAOC,oCAPgB,EAOhB;AAAA,MANDC,IAMC,QANDA,IAMC;AAAA,MALDC,KAKC,QALDA,KAKC;AAAA,2BAJDC,QAIC;AAAA,MAJDA,SAIC,8BAJU,YAAM,CAAE,CAIlB;AAAA,MAHEC,IAGF;;AACH,yBACE,4BAAgBL,YAAhB,CADF;AAAA;AAAA,MAAOM,iBAAP;AAAA,MAA0BC,kBAA1B;;AAGA,MAAMC,UAAU,GAAG,oBACjB;AAAA,WAAOT,OAAO,gBAAG,gCAAC,cAAD,OAAH,GAAiBF,KAA/B;AAAA,GADiB,EAEjB,CAACE,OAAD,EAAUF,KAAV,CAFiB,CAAnB;AAKA,MAAMY,oBAAoB,GAAG,oBAC3B;AAAA,WAAOV,OAAO,GAAG,IAAH,GAAUD,eAAxB;AAAA,GAD2B,EAE3B,CAACC,OAAD,EAAUD,eAAV,CAF2B,CAA7B;AAKA,sBACE,gCAAC,cAAD;AACE,IAAA,QAAQ,EAAEvC,QADZ;AAEE,IAAA,IAAI,EAAE2C,IAFR;AAGE,IAAA,QAAQ,EAAE,CAAC3C,QAAD,GAAY,CAAZ,GAAgB,CAAC,CAH7B;AAIE,IAAA,OAAO,EAAE,iBAACmD,CAAD,EAAO;AACd;AACA;AACA,UAAInD,QAAQ,IAAImD,CAAC,CAACC,MAAF,KAAaL,iBAAiB,CAACM,OAA/C,EAAwD;AACxD,UAAMC,iBAAiB,GAAG,sCACxBP,iBAAiB,CAACM,OADM,CAA1B;AAGAC,MAAAA,iBAAiB,CAAC,CAAD,CAAjB,CAAqBC,KAArB;AACD,KAZH;AAaE,IAAA,SAAS,EAAE,mBAACJ,CAAD,EAAO;AAChB;AACA;AACA,UAAMG,iBAAiB,GAAG,sCAAqBE,QAArB,CAA1B;AACA,UAAMC,sBAAsB,GAAGV,iBAAiB,CAACM,OAAlB,GAC3B,sCAAqBN,iBAAiB,CAACM,OAAvC,CAD2B,GAE3B,EAFJ;AAGA,UAAMK,0BAA0B,GAC9BD,sBAAsB,CAAC,CAAD,CAAtB,KAA8BD,QAAQ,CAACG,aADzC;;AAEA,UAAID,0BAA0B,IAAIP,CAAC,CAACS,GAAF,KAAU,KAAxC,IAAiDT,CAAC,CAACU,QAAvD,EAAiE;AAC/D,YAAMC,mBAAmB,GAAGR,iBAAiB,CAACS,SAAlB,CAC1B,UAACC,EAAD;AAAA,iBAAQA,EAAE,KAAKjB,iBAAiB,CAACM,OAAjC;AAAA,SAD0B,CAA5B;AAGA,YAAIS,mBAAmB,KAAK,CAA5B,EAA+B;AAC/B,YAAMG,2BAA2B,GAC/BX,iBAAiB,CAACQ,mBAAmB,GAAG,CAAvB,CADnB;AAEAG,QAAAA,2BAA2B,CAACV,KAA5B;AACD;AACF,KA/BH;AAgCE,IAAA,GAAG,EAAEP;AAhCP,KAiCMN,cAjCN,GAmCGN,IAAI,iBACH,gCAAC,uBAAD;AAAgB,IAAA,SAAS,EAAE;AAAE8B,MAAAA,uBAAuB,EAAE;AAA3B;AAA3B,kBACE,gCAAC,SAAD;AAAW,IAAA,UAAU,EAAE7B;AAAvB,KAAwCD,IAAxC,CADF,CApCJ,eAyCE,gCAAC,WAAD;AACE,IAAA,IAAI,EAAED,IADR;AAEE,IAAA,QAAQ,EAAEnC,QAFZ;AAGE,IAAA,OAAO,EAAE,CAAC,CAACoC,IAHb;AAIE,IAAA,QAAQ,EAAE,CAAC,CAACE,KAJd;AAKE,IAAA,KAAK,EAAEM,KAAK,IAAI,EALlB;AAME,IAAA,QAAQ,EAAE,kBAACO,CAAD;AAAA,aAAON,SAAQ,CAACM,CAAC,CAACC,MAAF,CAASR,KAAV,EAAiBO,CAAjB,CAAf;AAAA;AANZ,KAOML,IAPN;AAQE,IAAA,GAAG,EAAEZ;AARP,KAzCF,EAoDGe,UAAU,iBACT,gCAAC,uBAAD;AAAgB,IAAA,SAAS,EAAE;AAAEiB,MAAAA,uBAAuB,EAAE;AAA3B;AAA3B,kBACE,gCAAC,UAAD;AAAY,IAAA,UAAU,EAAEhB;AAAxB,KACGD,UADH,CADF,CArDJ,CADF;AA8DD,CA9FW,CAAd;AAiGAhB,KAAK,CAACkC,WAAN,GAAoB,OAApB;eAEelC,K","sourcesContent":["import React, { ChangeEvent, ForwardedRef, forwardRef, useMemo } from 'react';\nimport {\n resetFocusStyles,\n sizeStyles,\n transitionStyles,\n WithSize,\n} from '@os-design/styles';\nimport { omitEmotionProps, useForwardedRef } from '@os-design/utils';\nimport styled from '@emotion/styled';\nimport { clr, ThemeOverrider } from '@os-design/theming';\nimport { css } from '@emotion/react';\nimport { Loading } from '@os-design/icons';\nimport getFocusableElements from './utils/getFocusableElements';\n\ntype JsxInputProps = Omit<\n JSX.IntrinsicElements['input'],\n 'value' | 'onChange' | 'size' | 'ref'\n>;\nexport interface InputProps extends JsxInputProps, WithSize {\n /**\n * Type of the input.\n * @default text\n */\n type?: JsxInputProps['type'];\n /**\n * The component located on the left side.\n * @default undefined\n */\n left?: React.ReactNode;\n /**\n * Adds padding to the left component.\n * It can be useful when passing an icon or text in the left component.\n * @default false\n */\n leftHasPadding?: boolean;\n /**\n * The component located on the right side.\n * @default undefined\n */\n right?: React.ReactNode;\n /**\n * Adds padding to the right component.\n * It can be useful when passing an icon or text in the right component.\n * @default false\n */\n rightHasPadding?: boolean;\n /**\n * Whether the input is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Shows the loading status.\n * @default false\n */\n loading?: boolean;\n /**\n * The ref of the input container.\n * @default undefined\n */\n containerRef?: ForwardedRef<HTMLDivElement>;\n /**\n * The props of the input container.\n * @default undefined\n */\n containerProps?: JSX.IntrinsicElements['div'];\n /**\n * The input value.\n * @default undefined\n */\n value?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string, e: ChangeEvent<HTMLInputElement>) => void;\n}\n\nconst hoverStyles = (p) =>\n !p.disabled &&\n css`\n @media (hover: hover) {\n &:hover {\n border-color: ${clr(p.theme.inputHoverColorBorder)};\n }\n }\n `;\n\nconst focusStyles = (p) =>\n !p.disabled &&\n css`\n &:focus-within {\n border-color: ${clr(p.theme.inputFocusColorBorder)};\n box-shadow: 0 0 0 0.15em ${clr(p.theme.inputFocusColorShadow)};\n }\n `;\n\nconst disabledStyles = (p) =>\n p.disabled &&\n css`\n cursor: not-allowed;\n color: ${clr(p.theme.inputDisabledColorText)};\n background-color: ${clr(p.theme.inputDisabledColorBg)};\n border-color: ${clr(p.theme.inputDisabledColorBorder)};\n\n input,\n textarea {\n cursor: not-allowed;\n &::placeholder {\n color: ${clr(p.theme.inputDisabledColorPlaceholder)};\n }\n }\n `;\n\ntype InputContainerProps = Pick<InputProps, 'disabled' | 'size'>;\nexport const InputContainer = styled(\n 'div',\n omitEmotionProps('disabled', 'size')\n)<InputContainerProps>`\n ${resetFocusStyles};\n\n display: inline-flex;\n width: 100%;\n height: ${(p) => p.theme.baseHeight}em;\n box-sizing: border-box;\n background-color: ${(p) => clr(p.theme.inputColorBg)};\n\n border: ${(p) => p.theme.inputBorderWidth}px solid\n ${(p) => clr(p.theme.inputColorBorder)};\n border-radius: ${(p) => p.theme.borderRadius}em;\n\n ${hoverStyles};\n ${focusStyles};\n ${disabledStyles};\n ${sizeStyles};\n ${transitionStyles('border-color', 'box-shadow')};\n`;\n\nconst notHasLeftStyles = (p) =>\n !p.hasLeft &&\n css`\n padding-left: ${p.theme.inputPaddingHorizontal}em;\n `;\n\nconst notHasRightStyles = (p) =>\n !p.hasRight &&\n css`\n padding-right: ${p.theme.inputPaddingHorizontal}em;\n `;\n\ninterface StyledInputProps {\n hasLeft?: boolean;\n hasRight?: boolean;\n}\nexport const StyledInput = styled(\n 'input',\n omitEmotionProps('hasLeft', 'hasRight')\n)<StyledInputProps>`\n ${resetFocusStyles};\n appearance: none;\n border: none;\n font-size: 1em;\n flex: 1;\n overflow: hidden;\n\n color: ${(p) => clr(p.theme.inputColorText)};\n background-color: transparent;\n\n &::placeholder {\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n }\n\n ${notHasLeftStyles};\n ${notHasRightStyles};\n`;\n\ninterface AddonProps {\n hasPadding: boolean;\n}\nconst Addon = styled('span', omitEmotionProps('hasPadding'))<AddonProps>`\n display: flex;\n align-items: center;\n user-select: none;\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n\n svg {\n transform: scale(1.2);\n }\n`;\n\nconst LeftAddon = styled(Addon)`\n padding-right: ${(p) => p.theme.inputAddonPaddingHorizontal}em;\n ${(p) =>\n p.hasPadding &&\n css`\n padding-left: ${p.theme.inputPaddingHorizontal}em;\n `}\n`;\n\nconst RightAddon = styled(Addon)`\n padding-left: ${(p) => p.theme.inputAddonPaddingHorizontal}em;\n ${(p) =>\n p.hasPadding &&\n css`\n padding-right: ${p.theme.inputPaddingHorizontal}em;\n `}\n`;\n\n/**\n * The basic input component.\n */\nconst Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n type = 'text',\n left,\n leftHasPadding = false,\n right,\n rightHasPadding = false,\n disabled = false,\n loading = false,\n containerRef,\n containerProps = {},\n size,\n value,\n onChange = () => {},\n ...rest\n },\n ref\n ) => {\n const [innerContainerRef, mergedContainerRef] =\n useForwardedRef(containerRef);\n\n const rightValue = useMemo(\n () => (loading ? <Loading /> : right),\n [loading, right]\n );\n\n const rightHasPaddingValue = useMemo(\n () => (loading ? true : rightHasPadding),\n [loading, rightHasPadding]\n );\n\n return (\n <InputContainer\n disabled={disabled}\n size={size}\n tabIndex={!disabled ? 0 : -1}\n onFocus={(e) => {\n // Focus the next element if the container element was focused.\n // The next element will be the input or button in the addon.\n if (disabled || e.target !== innerContainerRef.current) return;\n const focusableElements = getFocusableElements(\n innerContainerRef.current\n );\n focusableElements[0].focus();\n }}\n onKeyDown={(e) => {\n // Focus the previous element if the first element in the input\n // container is focused and the Shift + Tab combination is pressed.\n const focusableElements = getFocusableElements(document);\n const inputFocusableElements = innerContainerRef.current\n ? getFocusableElements(innerContainerRef.current)\n : [];\n const firstInputElementIsFocused =\n inputFocusableElements[0] === document.activeElement;\n if (firstInputElementIsFocused && e.key === 'Tab' && e.shiftKey) {\n const inputContainerIndex = focusableElements.findIndex(\n (el) => el === innerContainerRef.current\n );\n if (inputContainerIndex === 0) return;\n const elementBeforeInputContainer =\n focusableElements[inputContainerIndex - 1];\n elementBeforeInputContainer.focus();\n }\n }}\n ref={mergedContainerRef}\n {...containerProps}\n >\n {left && (\n <ThemeOverrider overrides={{ buttonPaddingHorizontal: 0.8 }}>\n <LeftAddon hasPadding={leftHasPadding}>{left}</LeftAddon>\n </ThemeOverrider>\n )}\n\n <StyledInput\n type={type}\n disabled={disabled}\n hasLeft={!!left}\n hasRight={!!right}\n value={value || ''}\n onChange={(e) => onChange(e.target.value, e)}\n {...rest}\n ref={ref}\n />\n\n {rightValue && (\n <ThemeOverrider overrides={{ buttonPaddingHorizontal: 0.8 }}>\n <RightAddon hasPadding={rightHasPaddingValue}>\n {rightValue}\n </RightAddon>\n </ThemeOverrider>\n )}\n </InputContainer>\n );\n }\n);\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["hoverStyles","p","disabled","css","clr","theme","inputHoverColorBorder","focusStyles","inputFocusColorBorder","inputFocusColorShadow","disabledStyles","inputDisabledColorText","inputDisabledColorBg","inputDisabledColorBorder","inputDisabledColorPlaceholder","InputContainer","styled","omitEmotionProps","resetFocusStyles","baseHeight","inputColorBg","inputBorderWidth","inputColorBorder","borderRadius","sizeStyles","transitionStyles","notHasLeftStyles","hasLeft","inputPaddingHorizontal","notHasRightStyles","hasRight","StyledInput","inputColorText","inputColorPlaceholder","Addon","LeftAddon","inputAddonPaddingHorizontal","hasPadding","RightAddon","Input","forwardRef","ref","type","left","leftHasPadding","right","rightHasPadding","loading","containerRef","containerProps","size","value","onChange","rest","useForwardedRef","innerContainerRef","mergedContainerRef","rightValue","useMemo","rightHasPaddingValue","e","target","current","focusableElements","getFocusableElements","focus","document","inputFocusableElements","firstInputElementIsFocused","activeElement","key","shiftKey","inputContainerIndex","findIndex","el","elementBeforeInputContainer","buttonPaddingHorizontal","displayName"],"sources":["../../../src/Input/index.tsx"],"sourcesContent":["import React, { ChangeEvent, ForwardedRef, forwardRef, useMemo } from 'react';\nimport {\n resetFocusStyles,\n sizeStyles,\n transitionStyles,\n WithSize,\n} from '@os-design/styles';\nimport { omitEmotionProps, useForwardedRef } from '@os-design/utils';\nimport styled from '@emotion/styled';\nimport { clr, ThemeOverrider } from '@os-design/theming';\nimport { css } from '@emotion/react';\nimport { Loading } from '@os-design/icons';\nimport getFocusableElements from './utils/getFocusableElements';\n\ntype JsxInputProps = Omit<\n JSX.IntrinsicElements['input'],\n 'value' | 'onChange' | 'size' | 'ref'\n>;\nexport interface InputProps extends JsxInputProps, WithSize {\n /**\n * Type of the input.\n * @default text\n */\n type?: JsxInputProps['type'];\n /**\n * The component located on the left side.\n * @default undefined\n */\n left?: React.ReactNode;\n /**\n * Adds padding to the left component.\n * It can be useful when passing an icon or text in the left component.\n * @default false\n */\n leftHasPadding?: boolean;\n /**\n * The component located on the right side.\n * @default undefined\n */\n right?: React.ReactNode;\n /**\n * Adds padding to the right component.\n * It can be useful when passing an icon or text in the right component.\n * @default false\n */\n rightHasPadding?: boolean;\n /**\n * Whether the input is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Shows the loading status.\n * @default false\n */\n loading?: boolean;\n /**\n * The ref of the input container.\n * @default undefined\n */\n containerRef?: ForwardedRef<HTMLDivElement>;\n /**\n * The props of the input container.\n * @default undefined\n */\n containerProps?: JSX.IntrinsicElements['div'];\n /**\n * The input value.\n * @default undefined\n */\n value?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string, e: ChangeEvent<HTMLInputElement>) => void;\n}\n\nconst hoverStyles = (p) =>\n !p.disabled &&\n css`\n @media (hover: hover) {\n &:hover {\n border-color: ${clr(p.theme.inputHoverColorBorder)};\n }\n }\n `;\n\nconst focusStyles = (p) =>\n !p.disabled &&\n css`\n &:focus-within {\n border-color: ${clr(p.theme.inputFocusColorBorder)};\n box-shadow: 0 0 0 0.15em ${clr(p.theme.inputFocusColorShadow)};\n }\n `;\n\nconst disabledStyles = (p) =>\n p.disabled &&\n css`\n cursor: not-allowed;\n color: ${clr(p.theme.inputDisabledColorText)};\n background-color: ${clr(p.theme.inputDisabledColorBg)};\n border-color: ${clr(p.theme.inputDisabledColorBorder)};\n\n input,\n textarea {\n cursor: not-allowed;\n &::placeholder {\n color: ${clr(p.theme.inputDisabledColorPlaceholder)};\n }\n }\n `;\n\ntype InputContainerProps = Pick<InputProps, 'disabled' | 'size'>;\nexport const InputContainer = styled(\n 'div',\n omitEmotionProps('disabled', 'size')\n)<InputContainerProps>`\n ${resetFocusStyles};\n\n display: inline-flex;\n width: 100%;\n height: ${(p) => p.theme.baseHeight}em;\n box-sizing: border-box;\n background-color: ${(p) => clr(p.theme.inputColorBg)};\n\n border: ${(p) => p.theme.inputBorderWidth}px solid\n ${(p) => clr(p.theme.inputColorBorder)};\n border-radius: ${(p) => p.theme.borderRadius}em;\n\n ${hoverStyles};\n ${focusStyles};\n ${disabledStyles};\n ${sizeStyles};\n ${transitionStyles('border-color', 'box-shadow')};\n`;\n\nconst notHasLeftStyles = (p) =>\n !p.hasLeft &&\n css`\n padding-left: ${p.theme.inputPaddingHorizontal}em;\n `;\n\nconst notHasRightStyles = (p) =>\n !p.hasRight &&\n css`\n padding-right: ${p.theme.inputPaddingHorizontal}em;\n `;\n\ninterface StyledInputProps {\n hasLeft?: boolean;\n hasRight?: boolean;\n}\nexport const StyledInput = styled(\n 'input',\n omitEmotionProps('hasLeft', 'hasRight')\n)<StyledInputProps>`\n ${resetFocusStyles};\n appearance: none;\n border: none;\n font-size: 1em;\n flex: 1;\n overflow: hidden;\n\n color: ${(p) => clr(p.theme.inputColorText)};\n background-color: transparent;\n\n &::placeholder {\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n }\n\n ${notHasLeftStyles};\n ${notHasRightStyles};\n`;\n\ninterface AddonProps {\n hasPadding: boolean;\n}\nconst Addon = styled('span', omitEmotionProps('hasPadding'))<AddonProps>`\n display: flex;\n align-items: center;\n user-select: none;\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n\n svg {\n transform: scale(1.2);\n }\n`;\n\nconst LeftAddon = styled(Addon)`\n padding-right: ${(p) => p.theme.inputAddonPaddingHorizontal}em;\n ${(p) =>\n p.hasPadding &&\n css`\n padding-left: ${p.theme.inputPaddingHorizontal}em;\n `}\n`;\n\nconst RightAddon = styled(Addon)`\n padding-left: ${(p) => p.theme.inputAddonPaddingHorizontal}em;\n ${(p) =>\n p.hasPadding &&\n css`\n padding-right: ${p.theme.inputPaddingHorizontal}em;\n `}\n`;\n\n/**\n * The basic input component.\n */\nconst Input = forwardRef<HTMLInputElement, InputProps>(\n (\n {\n type = 'text',\n left,\n leftHasPadding = false,\n right,\n rightHasPadding = false,\n disabled = false,\n loading = false,\n containerRef,\n containerProps = {},\n size,\n value,\n onChange = () => {},\n ...rest\n },\n ref\n ) => {\n const [innerContainerRef, mergedContainerRef] =\n useForwardedRef(containerRef);\n\n const rightValue = useMemo(\n () => (loading ? <Loading /> : right),\n [loading, right]\n );\n\n const rightHasPaddingValue = useMemo(\n () => (loading ? true : rightHasPadding),\n [loading, rightHasPadding]\n );\n\n return (\n <InputContainer\n disabled={disabled}\n size={size}\n tabIndex={!disabled ? 0 : -1}\n onFocus={(e) => {\n // Focus the next element if the container element was focused.\n // The next element will be the input or button in the addon.\n if (disabled || e.target !== innerContainerRef.current) return;\n const focusableElements = getFocusableElements(\n innerContainerRef.current\n );\n focusableElements[0].focus();\n }}\n onKeyDown={(e) => {\n // Focus the previous element if the first element in the input\n // container is focused and the Shift + Tab combination is pressed.\n const focusableElements = getFocusableElements(document);\n const inputFocusableElements = innerContainerRef.current\n ? getFocusableElements(innerContainerRef.current)\n : [];\n const firstInputElementIsFocused =\n inputFocusableElements[0] === document.activeElement;\n if (firstInputElementIsFocused && e.key === 'Tab' && e.shiftKey) {\n const inputContainerIndex = focusableElements.findIndex(\n (el) => el === innerContainerRef.current\n );\n if (inputContainerIndex === 0) return;\n const elementBeforeInputContainer =\n focusableElements[inputContainerIndex - 1];\n elementBeforeInputContainer.focus();\n }\n }}\n ref={mergedContainerRef}\n {...containerProps}\n >\n {left && (\n <ThemeOverrider overrides={{ buttonPaddingHorizontal: 0.8 }}>\n <LeftAddon hasPadding={leftHasPadding}>{left}</LeftAddon>\n </ThemeOverrider>\n )}\n\n <StyledInput\n type={type}\n disabled={disabled}\n hasLeft={!!left}\n hasRight={!!right}\n value={value || ''}\n onChange={(e) => onChange(e.target.value, e)}\n {...rest}\n ref={ref}\n />\n\n {rightValue && (\n <ThemeOverrider overrides={{ buttonPaddingHorizontal: 0.8 }}>\n <RightAddon hasPadding={rightHasPaddingValue}>\n {rightValue}\n </RightAddon>\n </ThemeOverrider>\n )}\n </InputContainer>\n );\n }\n);\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/Input/utils/getFocusableElements.ts"],"names":["getFocusableElements","element","querySelectorAll","filter","el","hasAttribute"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,OAAD;AAAA,SAC3B,mBACKA,OAAO,CAACC,gBAAR,CACD,6EADC,CADL,EAIEC,MAJF,CAIS,UAACC,EAAD;AAAA,WAAQ,CAACA,EAAE,CAACC,YAAH,CAAgB,UAAhB,CAAT;AAAA,GAJT,CAD2B;AAAA,CAA7B;;eAOeL,oB","sourcesContent":["const getFocusableElements = (element: ParentNode): HTMLElement[] =>\n [\n ...element.querySelectorAll<HTMLElement>(\n 'a, button, input, textarea, select, details,[tabindex]:not([tabindex=\"-1\"])'\n ),\n ].filter((el) => !el.hasAttribute('disabled'));\n\nexport default getFocusableElements;\n"],"file":"getFocusableElements.js"}
1
+ {"version":3,"file":"getFocusableElements.js","names":["getFocusableElements","element","querySelectorAll","filter","el","hasAttribute"],"sources":["../../../../src/Input/utils/getFocusableElements.ts"],"sourcesContent":["const getFocusableElements = (element: ParentNode): HTMLElement[] =>\n [\n ...element.querySelectorAll<HTMLElement>(\n 'a, button, input, textarea, select, details,[tabindex]:not([tabindex=\"-1\"])'\n ),\n ].filter((el) => !el.hasAttribute('disabled'));\n\nexport default getFocusableElements;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,OAAD;EAAA,OAC3B,mBACKA,OAAO,CAACC,gBAAR,CACD,6EADC,CADL,EAIEC,MAJF,CAIS,UAACC,EAAD;IAAA,OAAQ,CAACA,EAAE,CAACC,YAAH,CAAgB,UAAhB,CAAT;EAAA,CAJT,CAD2B;AAAA,CAA7B;;eAOeL,oB"}
@@ -25,7 +25,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
25
25
 
26
26
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
27
 
28
- function _extends() { _extends = Object.assign || 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); }
28
+ 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); }
29
29
 
30
30
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
31
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/InputNumber/index.tsx"],"names":["InputNumber","ref","min","max","precision","prefix","suffix","decimalSeparator","thousandsSeparator","locale","defaultLocale","value","onChange","onSelect","onFocus","rest","options","inputRef","mergedInputRef","valueString","setValueString","start","end","selection","setSelection","getCaretWithinValue","current","setSelectionRange","e","currentTarget","selectionStart","selectionEnd","length","v","nextState","valueNumber","nextCaret","prevValueString","nextValueString","prevCaret","deleteKeyPressed","nativeEvent","inputType","undefined","emptyLabel","displayName"],"mappings":"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","sourcesContent":["import React, { forwardRef, useEffect, useMemo, useState } from 'react';\nimport { useForwardedRef } from '@os-design/utils';\nimport {\n numberToFormattedString,\n getNextState,\n getNextCaret,\n useValidate,\n useGetCaretWithinValue,\n} from '@os-design/input-number-utils';\nimport Input, { InputProps } from '../Input';\nimport defaultLocale, { InputNumberLocale } from './utils/defaultLocale';\n\nexport interface InputNumberProps\n extends Omit<InputProps, 'type' | 'value' | 'onChange'> {\n /**\n * The minimum value.\n * @default 0\n */\n min?: number;\n /**\n * The maximum value.\n * @default 2147483647\n */\n max?: number;\n /**\n * The number of digits after the decimal point.\n * @default 0\n */\n precision?: number;\n /**\n * The string before the number.\n * @default undefined\n */\n prefix?: string;\n /**\n * The string after the number.\n * @default undefined\n */\n suffix?: string;\n /**\n * The decimal separator.\n * @default .\n */\n decimalSeparator?: '.' | ',';\n /**\n * The thousands separator.\n * @default ' '\n */\n thousandsSeparator?: ' ' | '.' | ',' | null;\n /**\n * The locale.\n * @default undefined\n */\n locale?: InputNumberLocale;\n /**\n * The input value.\n * @default undefined\n */\n value?: number | null;\n /**\n * The change event handler.\n * Returns null when the input value is empty.\n * @default undefined\n */\n onChange?: (value: number | null) => void;\n}\n\ninterface Selection {\n start: number;\n end: number;\n}\n\n/**\n * The input for entering a number.\n */\nconst InputNumber = forwardRef<HTMLInputElement, InputNumberProps>(\n (\n {\n min = 0,\n max = 2147483647,\n precision = 0,\n prefix = '',\n suffix = '',\n decimalSeparator = '.',\n thousandsSeparator = ' ',\n locale = defaultLocale,\n value = null,\n onChange = () => {},\n onSelect = () => {},\n onFocus = () => {},\n ...rest\n },\n ref\n ) => {\n useValidate({\n min,\n max,\n precision,\n prefix,\n suffix,\n decimalSeparator,\n thousandsSeparator,\n });\n\n const options = useMemo(\n () => ({\n min,\n max,\n precision,\n prefix,\n suffix,\n decimalSeparator,\n thousandsSeparator,\n }),\n [\n min,\n max,\n precision,\n prefix,\n suffix,\n decimalSeparator,\n thousandsSeparator,\n ]\n );\n\n const [inputRef, mergedInputRef] = useForwardedRef(ref);\n const [valueString, setValueString] = useState<string>(\n numberToFormattedString(value, options)\n );\n const [selection, setSelection] = useState<Selection>({ start: 0, end: 0 });\n const getCaretWithinValue = useGetCaretWithinValue(prefix, suffix);\n\n // Update the value\n useEffect(() => {\n setValueString(numberToFormattedString(value, options));\n }, [value, options]);\n\n // Update the selection\n useEffect(() => {\n if (!inputRef.current) return;\n inputRef.current.setSelectionRange(selection.start, selection.end);\n }, [inputRef, selection]);\n\n return (\n <Input\n onSelect={(e) => {\n // Update the selection state.\n // Don't use `getCaretWithinValue` here to allow a user to copy\n // the input value with a prefix and suffix.\n const { selectionStart, selectionEnd } = e.currentTarget;\n setSelection({ start: selectionStart || 0, end: selectionEnd || 0 });\n onSelect(e);\n }}\n onFocus={(e) => {\n // Move the caret to the end of the input value and before the suffix\n setSelection({\n start: getCaretWithinValue(valueString.length, valueString),\n end: getCaretWithinValue(valueString.length, valueString),\n });\n onFocus(e);\n }}\n value={valueString}\n onChange={(v, e) => {\n // Get a new value as a string and number\n const nextState = getNextState(v, options);\n\n // Set the new string value in the input field\n setValueString(nextState.valueString);\n\n // Send the new numeric value in the onChange callback\n onChange(nextState.valueNumber);\n\n // Update the caret position\n const nextCaret = getCaretWithinValue(\n getNextCaret({\n value: v,\n prevValueString: valueString,\n nextValueString: nextState.valueString,\n prevCaret: selection.end,\n deleteKeyPressed:\n (e.nativeEvent as InputEvent).inputType ===\n 'deleteContentBackward',\n options,\n }),\n nextState.valueString\n );\n setSelection({ start: nextCaret, end: nextCaret });\n }}\n role='spinbutton'\n aria-valuenow={\n value !== undefined && value !== null ? value : undefined\n }\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuetext={valueString === '' ? locale.emptyLabel : undefined}\n inputMode='decimal'\n autoComplete='off'\n autoCorrect='off'\n {...rest}\n ref={mergedInputRef}\n />\n );\n }\n);\n\nInputNumber.displayName = 'InputNumber';\n\nexport default InputNumber;\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["InputNumber","forwardRef","ref","min","max","precision","prefix","suffix","decimalSeparator","thousandsSeparator","locale","defaultLocale","value","onChange","onSelect","onFocus","rest","useValidate","options","useMemo","useForwardedRef","inputRef","mergedInputRef","useState","numberToFormattedString","valueString","setValueString","start","end","selection","setSelection","getCaretWithinValue","useGetCaretWithinValue","useEffect","current","setSelectionRange","e","currentTarget","selectionStart","selectionEnd","length","v","nextState","getNextState","valueNumber","nextCaret","getNextCaret","prevValueString","nextValueString","prevCaret","deleteKeyPressed","nativeEvent","inputType","undefined","emptyLabel","displayName"],"sources":["../../../src/InputNumber/index.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useMemo, useState } from 'react';\nimport { useForwardedRef } from '@os-design/utils';\nimport {\n numberToFormattedString,\n getNextState,\n getNextCaret,\n useValidate,\n useGetCaretWithinValue,\n} from '@os-design/input-number-utils';\nimport Input, { InputProps } from '../Input';\nimport defaultLocale, { InputNumberLocale } from './utils/defaultLocale';\n\nexport interface InputNumberProps\n extends Omit<InputProps, 'type' | 'value' | 'onChange'> {\n /**\n * The minimum value.\n * @default 0\n */\n min?: number;\n /**\n * The maximum value.\n * @default 2147483647\n */\n max?: number;\n /**\n * The number of digits after the decimal point.\n * @default 0\n */\n precision?: number;\n /**\n * The string before the number.\n * @default undefined\n */\n prefix?: string;\n /**\n * The string after the number.\n * @default undefined\n */\n suffix?: string;\n /**\n * The decimal separator.\n * @default .\n */\n decimalSeparator?: '.' | ',';\n /**\n * The thousands separator.\n * @default ' '\n */\n thousandsSeparator?: ' ' | '.' | ',' | null;\n /**\n * The locale.\n * @default undefined\n */\n locale?: InputNumberLocale;\n /**\n * The input value.\n * @default undefined\n */\n value?: number | null;\n /**\n * The change event handler.\n * Returns null when the input value is empty.\n * @default undefined\n */\n onChange?: (value: number | null) => void;\n}\n\ninterface Selection {\n start: number;\n end: number;\n}\n\n/**\n * The input for entering a number.\n */\nconst InputNumber = forwardRef<HTMLInputElement, InputNumberProps>(\n (\n {\n min = 0,\n max = 2147483647,\n precision = 0,\n prefix = '',\n suffix = '',\n decimalSeparator = '.',\n thousandsSeparator = ' ',\n locale = defaultLocale,\n value = null,\n onChange = () => {},\n onSelect = () => {},\n onFocus = () => {},\n ...rest\n },\n ref\n ) => {\n useValidate({\n min,\n max,\n precision,\n prefix,\n suffix,\n decimalSeparator,\n thousandsSeparator,\n });\n\n const options = useMemo(\n () => ({\n min,\n max,\n precision,\n prefix,\n suffix,\n decimalSeparator,\n thousandsSeparator,\n }),\n [\n min,\n max,\n precision,\n prefix,\n suffix,\n decimalSeparator,\n thousandsSeparator,\n ]\n );\n\n const [inputRef, mergedInputRef] = useForwardedRef(ref);\n const [valueString, setValueString] = useState<string>(\n numberToFormattedString(value, options)\n );\n const [selection, setSelection] = useState<Selection>({ start: 0, end: 0 });\n const getCaretWithinValue = useGetCaretWithinValue(prefix, suffix);\n\n // Update the value\n useEffect(() => {\n setValueString(numberToFormattedString(value, options));\n }, [value, options]);\n\n // Update the selection\n useEffect(() => {\n if (!inputRef.current) return;\n inputRef.current.setSelectionRange(selection.start, selection.end);\n }, [inputRef, selection]);\n\n return (\n <Input\n onSelect={(e) => {\n // Update the selection state.\n // Don't use `getCaretWithinValue` here to allow a user to copy\n // the input value with a prefix and suffix.\n const { selectionStart, selectionEnd } = e.currentTarget;\n setSelection({ start: selectionStart || 0, end: selectionEnd || 0 });\n onSelect(e);\n }}\n onFocus={(e) => {\n // Move the caret to the end of the input value and before the suffix\n setSelection({\n start: getCaretWithinValue(valueString.length, valueString),\n end: getCaretWithinValue(valueString.length, valueString),\n });\n onFocus(e);\n }}\n value={valueString}\n onChange={(v, e) => {\n // Get a new value as a string and number\n const nextState = getNextState(v, options);\n\n // Set the new string value in the input field\n setValueString(nextState.valueString);\n\n // Send the new numeric value in the onChange callback\n onChange(nextState.valueNumber);\n\n // Update the caret position\n const nextCaret = getCaretWithinValue(\n getNextCaret({\n value: v,\n prevValueString: valueString,\n nextValueString: nextState.valueString,\n prevCaret: selection.end,\n deleteKeyPressed:\n (e.nativeEvent as InputEvent).inputType ===\n 'deleteContentBackward',\n options,\n }),\n nextState.valueString\n );\n setSelection({ start: nextCaret, end: nextCaret });\n }}\n role='spinbutton'\n aria-valuenow={\n value !== undefined && value !== null ? value : undefined\n }\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuetext={valueString === '' ? locale.emptyLabel : undefined}\n inputMode='decimal'\n autoComplete='off'\n autoCorrect='off'\n {...rest}\n ref={mergedInputRef}\n />\n );\n }\n);\n\nInputNumber.displayName = 'InputNumber';\n\nexport default InputNumber;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/InputNumber/utils/defaultLocale.ts"],"names":["defaultLocale","emptyLabel"],"mappings":";;;;;;AAIA,IAAMA,aAAgC,GAAG;AACvCC,EAAAA,UAAU,EAAE;AAD2B,CAAzC;eAIeD,a","sourcesContent":["export interface InputNumberLocale {\n emptyLabel: string;\n}\n\nconst defaultLocale: InputNumberLocale = {\n emptyLabel: 'Empty',\n};\n\nexport default defaultLocale;\n"],"file":"defaultLocale.js"}
1
+ {"version":3,"file":"defaultLocale.js","names":["defaultLocale","emptyLabel"],"sources":["../../../../src/InputNumber/utils/defaultLocale.ts"],"sourcesContent":["export interface InputNumberLocale {\n emptyLabel: string;\n}\n\nconst defaultLocale: InputNumberLocale = {\n emptyLabel: 'Empty',\n};\n\nexport default defaultLocale;\n"],"mappings":";;;;;;AAIA,IAAMA,aAAgC,GAAG;EACvCC,UAAU,EAAE;AAD2B,CAAzC;eAIeD,a"}