@os-design/core 1.0.240 → 1.0.242

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 (280) hide show
  1. package/dist/cjs/@types/emotion.d.js.map +1 -1
  2. package/dist/cjs/Alert/index.js +2 -2
  3. package/dist/cjs/Alert/index.js.map +1 -1
  4. package/dist/cjs/Avatar/index.js +2 -2
  5. package/dist/cjs/Avatar/index.js.map +1 -1
  6. package/dist/cjs/Avatar/utils/nameToInitials.js.map +1 -1
  7. package/dist/cjs/Avatar/utils/strToHue.js.map +1 -1
  8. package/dist/cjs/AvatarSkeleton/index.js +2 -2
  9. package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
  10. package/dist/cjs/Badge/index.js +2 -2
  11. package/dist/cjs/Badge/index.js.map +1 -1
  12. package/dist/cjs/Breadcrumb/index.js +3 -3
  13. package/dist/cjs/Breadcrumb/index.js.map +1 -1
  14. package/dist/cjs/BreadcrumbItem/index.js +2 -2
  15. package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
  16. package/dist/cjs/Button/ButtonContent.js.map +1 -1
  17. package/dist/cjs/Button/index.js +2 -2
  18. package/dist/cjs/Button/index.js.map +1 -1
  19. package/dist/cjs/Button/utils/useButtonColors.js.map +1 -1
  20. package/dist/cjs/ButtonLink/index.js +2 -2
  21. package/dist/cjs/ButtonLink/index.js.map +1 -1
  22. package/dist/cjs/Checkbox/index.js +2 -2
  23. package/dist/cjs/Checkbox/index.js.map +1 -1
  24. package/dist/cjs/CheckboxSkeleton/index.js +2 -2
  25. package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
  26. package/dist/cjs/DatePicker/DatePickerCalendar.js +1 -1
  27. package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
  28. package/dist/cjs/DatePicker/index.js +2 -2
  29. package/dist/cjs/DatePicker/index.js.map +1 -1
  30. package/dist/cjs/Drawer/index.js +2 -2
  31. package/dist/cjs/Drawer/index.js.map +1 -1
  32. package/dist/cjs/Form/FormConfigContext.js.map +1 -1
  33. package/dist/cjs/Form/index.js +2 -2
  34. package/dist/cjs/Form/index.js.map +1 -1
  35. package/dist/cjs/FormDivider/index.js +2 -2
  36. package/dist/cjs/FormDivider/index.js.map +1 -1
  37. package/dist/cjs/FormItem/index.js +2 -2
  38. package/dist/cjs/FormItem/index.js.map +1 -1
  39. package/dist/cjs/Gallery/Status.js.map +1 -1
  40. package/dist/cjs/Gallery/index.js +2 -2
  41. package/dist/cjs/Gallery/index.js.map +1 -1
  42. package/dist/cjs/GlobalStyles/index.js.map +1 -1
  43. package/dist/cjs/GlobalStyles/resetStyles.js.map +1 -1
  44. package/dist/cjs/GlobalStyles/typographyStyles.js.map +1 -1
  45. package/dist/cjs/HeaderSkeleton/index.js +2 -2
  46. package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
  47. package/dist/cjs/Image/index.js +2 -2
  48. package/dist/cjs/Image/index.js.map +1 -1
  49. package/dist/cjs/ImageSkeleton/index.js +1 -1
  50. package/dist/cjs/ImageSkeleton/index.js.map +1 -1
  51. package/dist/cjs/Input/index.js +2 -2
  52. package/dist/cjs/Input/index.js.map +1 -1
  53. package/dist/cjs/Input/utils/getFocusableElements.js.map +1 -1
  54. package/dist/cjs/InputNumber/index.js +2 -2
  55. package/dist/cjs/InputNumber/index.js.map +1 -1
  56. package/dist/cjs/InputNumber/utils/defaultLocale.js.map +1 -1
  57. package/dist/cjs/InputPassword/index.js +2 -2
  58. package/dist/cjs/InputPassword/index.js.map +1 -1
  59. package/dist/cjs/InputPassword/utils/defaultLocale.js.map +1 -1
  60. package/dist/cjs/InputSearch/index.js +2 -2
  61. package/dist/cjs/InputSearch/index.js.map +1 -1
  62. package/dist/cjs/InputSearch/utils/defaultLocale.js.map +1 -1
  63. package/dist/cjs/InputSkeleton/index.js +1 -1
  64. package/dist/cjs/InputSkeleton/index.js.map +1 -1
  65. package/dist/cjs/Layout/LayoutContext.js.map +1 -1
  66. package/dist/cjs/Layout/index.js +1 -1
  67. package/dist/cjs/Layout/index.js.map +1 -1
  68. package/dist/cjs/Link/index.js +2 -2
  69. package/dist/cjs/Link/index.js.map +1 -1
  70. package/dist/cjs/LinkButton/index.js +2 -2
  71. package/dist/cjs/LinkButton/index.js.map +1 -1
  72. package/dist/cjs/List/WindowScroller.js +1 -1
  73. package/dist/cjs/List/WindowScroller.js.map +1 -1
  74. package/dist/cjs/List/index.js +3 -3
  75. package/dist/cjs/List/index.js.map +1 -1
  76. package/dist/cjs/List/utils/bodyPointerEvents.js.map +1 -1
  77. package/dist/cjs/List/utils/frameTimeout.js.map +1 -1
  78. package/dist/cjs/List/utils/useRWLoadNext.js.map +1 -1
  79. package/dist/cjs/ListItem/index.js +2 -2
  80. package/dist/cjs/ListItem/index.js.map +1 -1
  81. package/dist/cjs/ListItemActions/index.js +2 -2
  82. package/dist/cjs/ListItemActions/index.js.map +1 -1
  83. package/dist/cjs/ListItemLink/index.js +2 -2
  84. package/dist/cjs/ListItemLink/index.js.map +1 -1
  85. package/dist/cjs/ListSkeleton/index.js +2 -2
  86. package/dist/cjs/ListSkeleton/index.js.map +1 -1
  87. package/dist/cjs/LogoLink/index.js +2 -2
  88. package/dist/cjs/LogoLink/index.js.map +1 -1
  89. package/dist/cjs/Menu/index.js +2 -2
  90. package/dist/cjs/Menu/index.js.map +1 -1
  91. package/dist/cjs/Menu/utils/useFocusWithArrows.js.map +1 -1
  92. package/dist/cjs/MenuDivider/index.js +1 -1
  93. package/dist/cjs/MenuDivider/index.js.map +1 -1
  94. package/dist/cjs/MenuGroup/index.js +3 -3
  95. package/dist/cjs/MenuGroup/index.js.map +1 -1
  96. package/dist/cjs/MenuItem/index.js +2 -2
  97. package/dist/cjs/MenuItem/index.js.map +1 -1
  98. package/dist/cjs/Modal/index.js +2 -2
  99. package/dist/cjs/Modal/index.js.map +1 -1
  100. package/dist/cjs/Modal/utils/defaultLocale.js.map +1 -1
  101. package/dist/cjs/Navigation/index.js +2 -2
  102. package/dist/cjs/Navigation/index.js.map +1 -1
  103. package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
  104. package/dist/cjs/NavigationItem/index.js +2 -2
  105. package/dist/cjs/NavigationItem/index.js.map +1 -1
  106. package/dist/cjs/PageContent/index.js +2 -2
  107. package/dist/cjs/PageContent/index.js.map +1 -1
  108. package/dist/cjs/PageHeader/index.js +2 -2
  109. package/dist/cjs/PageHeader/index.js.map +1 -1
  110. package/dist/cjs/PageHeader/utils/defaultLocale.js.map +1 -1
  111. package/dist/cjs/PageHeaderInputSearch/index.js +2 -2
  112. package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
  113. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js +1 -1
  114. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  115. package/dist/cjs/PageHeaderSkeleton/index.js +2 -2
  116. package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
  117. package/dist/cjs/ParagraphSkeleton/index.js +2 -2
  118. package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
  119. package/dist/cjs/Popover/index.js +2 -2
  120. package/dist/cjs/Popover/index.js.map +1 -1
  121. package/dist/cjs/Popover/utils/usePopoverPosition.js +1 -1
  122. package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
  123. package/dist/cjs/Progress/index.js +2 -2
  124. package/dist/cjs/Progress/index.js.map +1 -1
  125. package/dist/cjs/RadioGroup/index.js +2 -2
  126. package/dist/cjs/RadioGroup/index.js.map +1 -1
  127. package/dist/cjs/RadioGroupSkeleton/index.js +2 -2
  128. package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
  129. package/dist/cjs/Result/index.js +2 -2
  130. package/dist/cjs/Result/index.js.map +1 -1
  131. package/dist/cjs/ScrollButton/index.js +2 -2
  132. package/dist/cjs/ScrollButton/index.js.map +1 -1
  133. package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
  134. package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
  135. package/dist/cjs/Select/index.js +3 -3
  136. package/dist/cjs/Select/index.js.map +1 -1
  137. package/dist/cjs/Select/utils/defaultLocale.js.map +1 -1
  138. package/dist/cjs/Skeleton/index.js +2 -2
  139. package/dist/cjs/Skeleton/index.js.map +1 -1
  140. package/dist/cjs/Switch/index.js +2 -2
  141. package/dist/cjs/Switch/index.js.map +1 -1
  142. package/dist/cjs/SwitchSkeleton/index.js +1 -1
  143. package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
  144. package/dist/cjs/Tag/index.js +2 -2
  145. package/dist/cjs/Tag/index.js.map +1 -1
  146. package/dist/cjs/TagLink/index.js +2 -2
  147. package/dist/cjs/TagLink/index.js.map +1 -1
  148. package/dist/cjs/TagList/index.js +2 -2
  149. package/dist/cjs/TagList/index.js.map +1 -1
  150. package/dist/cjs/TagListSkeleton/index.js +2 -2
  151. package/dist/cjs/TagListSkeleton/index.js.map +1 -1
  152. package/dist/cjs/TagSkeleton/index.js +2 -2
  153. package/dist/cjs/TagSkeleton/index.js.map +1 -1
  154. package/dist/cjs/TextArea/index.js +2 -2
  155. package/dist/cjs/TextArea/index.js.map +1 -1
  156. package/dist/cjs/TextAreaSkeleton/index.js +1 -1
  157. package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
  158. package/dist/cjs/ThemeSwitcher/index.js +2 -2
  159. package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
  160. package/dist/cjs/TimePicker/index.js +2 -2
  161. package/dist/cjs/TimePicker/index.js.map +1 -1
  162. package/dist/cjs/Video/index.js +2 -2
  163. package/dist/cjs/Video/index.js.map +1 -1
  164. package/dist/cjs/index.js +20 -1
  165. package/dist/cjs/index.js.map +1 -1
  166. package/dist/cjs/message/AlertIcon.js.map +1 -1
  167. package/dist/cjs/message/Message.js +1 -1
  168. package/dist/cjs/message/Message.js.map +1 -1
  169. package/dist/cjs/message/index.js +1 -1
  170. package/dist/cjs/message/index.js.map +1 -1
  171. package/dist/cjs/message/styles.js.map +1 -1
  172. package/dist/esm/@types/emotion.d.js.map +1 -1
  173. package/dist/esm/Alert/index.js.map +1 -1
  174. package/dist/esm/Avatar/index.js.map +1 -1
  175. package/dist/esm/Avatar/utils/nameToInitials.js.map +1 -1
  176. package/dist/esm/Avatar/utils/strToHue.js.map +1 -1
  177. package/dist/esm/AvatarSkeleton/index.js.map +1 -1
  178. package/dist/esm/Badge/index.js.map +1 -1
  179. package/dist/esm/Breadcrumb/index.js.map +1 -1
  180. package/dist/esm/BreadcrumbItem/index.js.map +1 -1
  181. package/dist/esm/Button/ButtonContent.js.map +1 -1
  182. package/dist/esm/Button/index.js.map +1 -1
  183. package/dist/esm/Button/utils/useButtonColors.js.map +1 -1
  184. package/dist/esm/ButtonLink/index.js.map +1 -1
  185. package/dist/esm/Checkbox/index.js.map +1 -1
  186. package/dist/esm/CheckboxSkeleton/index.js.map +1 -1
  187. package/dist/esm/DatePicker/DatePickerCalendar.js.map +1 -1
  188. package/dist/esm/DatePicker/index.js.map +1 -1
  189. package/dist/esm/Drawer/index.js.map +1 -1
  190. package/dist/esm/Form/FormConfigContext.js.map +1 -1
  191. package/dist/esm/Form/index.js.map +1 -1
  192. package/dist/esm/FormDivider/index.js.map +1 -1
  193. package/dist/esm/FormItem/index.js.map +1 -1
  194. package/dist/esm/Gallery/Status.js.map +1 -1
  195. package/dist/esm/Gallery/index.js.map +1 -1
  196. package/dist/esm/GlobalStyles/index.js.map +1 -1
  197. package/dist/esm/GlobalStyles/resetStyles.js.map +1 -1
  198. package/dist/esm/GlobalStyles/typographyStyles.js.map +1 -1
  199. package/dist/esm/HeaderSkeleton/index.js.map +1 -1
  200. package/dist/esm/Image/index.js.map +1 -1
  201. package/dist/esm/ImageSkeleton/index.js.map +1 -1
  202. package/dist/esm/Input/index.js.map +1 -1
  203. package/dist/esm/Input/utils/getFocusableElements.js.map +1 -1
  204. package/dist/esm/InputNumber/index.js.map +1 -1
  205. package/dist/esm/InputNumber/utils/defaultLocale.js.map +1 -1
  206. package/dist/esm/InputPassword/index.js.map +1 -1
  207. package/dist/esm/InputPassword/utils/defaultLocale.js.map +1 -1
  208. package/dist/esm/InputSearch/index.js.map +1 -1
  209. package/dist/esm/InputSearch/utils/defaultLocale.js.map +1 -1
  210. package/dist/esm/InputSkeleton/index.js.map +1 -1
  211. package/dist/esm/Layout/LayoutContext.js.map +1 -1
  212. package/dist/esm/Layout/index.js.map +1 -1
  213. package/dist/esm/Link/index.js.map +1 -1
  214. package/dist/esm/LinkButton/index.js.map +1 -1
  215. package/dist/esm/List/WindowScroller.js.map +1 -1
  216. package/dist/esm/List/index.js.map +1 -1
  217. package/dist/esm/List/utils/bodyPointerEvents.js.map +1 -1
  218. package/dist/esm/List/utils/frameTimeout.js.map +1 -1
  219. package/dist/esm/List/utils/useRWLoadNext.js.map +1 -1
  220. package/dist/esm/ListItem/index.js.map +1 -1
  221. package/dist/esm/ListItemActions/index.js.map +1 -1
  222. package/dist/esm/ListItemLink/index.js.map +1 -1
  223. package/dist/esm/ListSkeleton/index.js.map +1 -1
  224. package/dist/esm/LogoLink/index.js.map +1 -1
  225. package/dist/esm/Menu/index.js.map +1 -1
  226. package/dist/esm/Menu/utils/useFocusWithArrows.js.map +1 -1
  227. package/dist/esm/MenuDivider/index.js.map +1 -1
  228. package/dist/esm/MenuGroup/index.js.map +1 -1
  229. package/dist/esm/MenuItem/index.js.map +1 -1
  230. package/dist/esm/Modal/index.js.map +1 -1
  231. package/dist/esm/Modal/utils/defaultLocale.js.map +1 -1
  232. package/dist/esm/Navigation/index.js.map +1 -1
  233. package/dist/esm/Navigation/utils/useScrollFlags.js.map +1 -1
  234. package/dist/esm/NavigationItem/index.js.map +1 -1
  235. package/dist/esm/PageContent/index.js.map +1 -1
  236. package/dist/esm/PageHeader/index.js.map +1 -1
  237. package/dist/esm/PageHeader/utils/defaultLocale.js.map +1 -1
  238. package/dist/esm/PageHeaderInputSearch/index.js.map +1 -1
  239. package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  240. package/dist/esm/PageHeaderSkeleton/index.js.map +1 -1
  241. package/dist/esm/ParagraphSkeleton/index.js.map +1 -1
  242. package/dist/esm/Popover/index.js.map +1 -1
  243. package/dist/esm/Popover/utils/usePopoverPosition.js.map +1 -1
  244. package/dist/esm/Progress/index.js.map +1 -1
  245. package/dist/esm/RadioGroup/index.js.map +1 -1
  246. package/dist/esm/RadioGroupSkeleton/index.js.map +1 -1
  247. package/dist/esm/Result/index.js.map +1 -1
  248. package/dist/esm/ScrollButton/index.js.map +1 -1
  249. package/dist/esm/ScrollButton/utils/useContainerPosition.js.map +1 -1
  250. package/dist/esm/ScrollButton/utils/useVisibility.js.map +1 -1
  251. package/dist/esm/Select/index.js.map +1 -1
  252. package/dist/esm/Select/utils/defaultLocale.js.map +1 -1
  253. package/dist/esm/Skeleton/index.js.map +1 -1
  254. package/dist/esm/Switch/index.js.map +1 -1
  255. package/dist/esm/SwitchSkeleton/index.js.map +1 -1
  256. package/dist/esm/Tag/index.js.map +1 -1
  257. package/dist/esm/TagLink/index.js.map +1 -1
  258. package/dist/esm/TagList/index.js.map +1 -1
  259. package/dist/esm/TagListSkeleton/index.js.map +1 -1
  260. package/dist/esm/TagSkeleton/index.js.map +1 -1
  261. package/dist/esm/TextArea/index.js.map +1 -1
  262. package/dist/esm/TextAreaSkeleton/index.js.map +1 -1
  263. package/dist/esm/ThemeSwitcher/index.js.map +1 -1
  264. package/dist/esm/TimePicker/index.js.map +1 -1
  265. package/dist/esm/Video/index.js.map +1 -1
  266. package/dist/esm/index.js +2 -0
  267. package/dist/esm/index.js.map +1 -1
  268. package/dist/esm/message/AlertIcon.js.map +1 -1
  269. package/dist/esm/message/Message.js.map +1 -1
  270. package/dist/esm/message/index.js.map +1 -1
  271. package/dist/esm/message/styles.js.map +1 -1
  272. package/dist/types/ButtonLink/index.d.ts +2 -4
  273. package/dist/types/ButtonLink/index.d.ts.map +1 -1
  274. package/dist/types/ThemeSwitcher/index.d.ts +2 -4
  275. package/dist/types/ThemeSwitcher/index.d.ts.map +1 -1
  276. package/dist/types/index.d.ts +2 -0
  277. package/dist/types/index.d.ts.map +1 -1
  278. package/package.json +9 -9
  279. package/src/GlobalStyles/index.mdx +34 -0
  280. package/src/index.ts +2 -0
@@ -18,11 +18,11 @@ var _useVisibility = _interopRequireDefault(require("./utils/useVisibility"));
18
18
  var _excluded = ["container", "scrollTo", "minOffset", "onClick"];
19
19
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
20
20
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
21
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
23
  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); }
24
24
  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; }
25
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
25
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
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
  var fadeIn = (0, _react.keyframes)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from { opacity: 0; }\n to { opacity: 1; }\n"])));
28
28
  var fadeOut = (0, _react.keyframes)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n from { opacity: 1; }\n to { opacity: 0; }\n"])));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_portal","_theming","_utils","_react2","_interopRequireWildcard","_Button","_useContainerPosition","_useVisibility","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","StyledButton","styled","Button","omitEmotionProps","containerPosition","right","concat","scrollButtonMargin","bottom","clr","scrollButtonColorBoxShadow","ScrollButton","forwardRef","_ref","ref","container","_ref$scrollTo","scrollTo","_ref$minOffset","minOffset","_ref$onClick","onClick","rest","useVisibility","useContainerPosition","_useTheme","useTheme","mounted","useClosable","clickHandler","useCallback","window","top","document","body","scrollHeight","containerElement","Element","current","createElement","ThemeOverrider","overrides","buttonPrimaryColorBg","scrollButtonColorBg","buttonPrimaryColorText","scrollButtonColorText","buttonPrimaryColorBgHover","scrollButtonColorBgHover","wide","size","Up","Down","displayName","_default","exports"],"sources":["../../../src/ScrollButton/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Down, Up } from '@os-design/icons';\nimport Portal from '@os-design/portal';\nimport { clr, ThemeOverrider, useTheme } from '@os-design/theming';\nimport { omitEmotionProps, useClosable } from '@os-design/utils';\nimport React, {\n forwardRef,\n MouseEventHandler,\n RefObject,\n useCallback,\n} from 'react';\nimport Button, { ButtonProps } from '../Button';\nimport useContainerPosition, {\n ContainerPosition,\n} from './utils/useContainerPosition';\nimport useVisibility from './utils/useVisibility';\n\nexport interface ScrollButtonProps extends Omit<ButtonProps, 'type' | 'wide'> {\n /**\n * The container that needs to be scrolled.\n * @default undefined\n */\n container?: Element | RefObject<Element>;\n /**\n * Where the container should be scrolled.\n * @default top\n */\n scrollTo?: 'top' | 'bottom';\n /**\n * The min scroll offset when the button is visible.\n * @default 500\n */\n minOffset?: number;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface StyledButtonProps {\n visible: boolean;\n containerPosition: ContainerPosition;\n}\nconst StyledButton = styled(\n Button,\n omitEmotionProps('visible', 'containerPosition')\n)<StyledButtonProps>`\n position: fixed;\n right: ${(p) =>\n p.containerPosition.right > 0\n ? `calc(${p.containerPosition.right}px + ${p.theme.scrollButtonMargin}em)`\n : `${p.theme.scrollButtonMargin}em`};\n bottom: ${(p) =>\n `calc(${\n p.containerPosition.bottom > 0 ? `${p.containerPosition.bottom}px + ` : ''\n }${p.theme.scrollButtonMargin}em + env(safe-area-inset-bottom))`};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.scrollButtonColorBoxShadow)};\n\n ${visibleStyles};\n ${invisibleStyles};\n`;\n\n/**\n * The button to scroll to either the top or bottom of the container.\n */\nconst ScrollButton = forwardRef<HTMLButtonElement, ScrollButtonProps>(\n (\n {\n container,\n scrollTo = 'top',\n minOffset = 500,\n onClick = () => {},\n ...rest\n },\n ref\n ) => {\n const visible = useVisibility({ container, scrollTo, minOffset });\n const containerPosition = useContainerPosition(container);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Scroll through the container when the user clicks the button\n const clickHandler = useCallback<MouseEventHandler<HTMLButtonElement>>(\n (e) => {\n // Scroll the window if the container is not defined\n if (!container) {\n window.scrollTo({\n top: scrollTo === 'top' ? 0 : document.body.scrollHeight,\n });\n return;\n }\n\n // Otherwise scroll the container\n const containerElement =\n container instanceof Element ? container : container.current;\n if (!containerElement) return;\n\n containerElement.scrollTo({\n top: scrollTo === 'top' ? 0 : containerElement.scrollHeight,\n });\n\n // Call the passed onClick handler\n onClick(e);\n },\n [container, scrollTo, onClick]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal container={container}>\n <ThemeOverrider\n overrides={(t) => ({\n buttonPrimaryColorBg: t.scrollButtonColorBg,\n buttonPrimaryColorText: t.scrollButtonColorText,\n buttonPrimaryColorBgHover: t.scrollButtonColorBgHover,\n })}\n >\n <StyledButton\n visible={visible}\n containerPosition={containerPosition}\n wide='never'\n size='small'\n onClick={clickHandler}\n aria-label={`Scroll to ${scrollTo}`}\n {...rest}\n ref={ref}\n >\n {scrollTo === 'top' ? <Up /> : <Down />}\n </StyledButton>\n </ThemeOverrider>\n </Portal>\n );\n }\n);\n\nScrollButton.displayName = 'ScrollButton';\n\nexport default ScrollButton;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_portal","_theming","_utils","_react2","_interopRequireWildcard","_Button","_useContainerPosition","_useVisibility","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","StyledButton","styled","Button","omitEmotionProps","containerPosition","right","concat","scrollButtonMargin","bottom","clr","scrollButtonColorBoxShadow","ScrollButton","forwardRef","_ref","ref","container","_ref$scrollTo","scrollTo","_ref$minOffset","minOffset","_ref$onClick","onClick","rest","useVisibility","useContainerPosition","_useTheme","useTheme","mounted","useClosable","clickHandler","useCallback","window","top","document","body","scrollHeight","containerElement","Element","current","createElement","ThemeOverrider","overrides","buttonPrimaryColorBg","scrollButtonColorBg","buttonPrimaryColorText","scrollButtonColorText","buttonPrimaryColorBgHover","scrollButtonColorBgHover","wide","size","Up","Down","displayName","_default","exports"],"sources":["../../../src/ScrollButton/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Down, Up } from '@os-design/icons';\nimport Portal from '@os-design/portal';\nimport { clr, ThemeOverrider, useTheme } from '@os-design/theming';\nimport { omitEmotionProps, useClosable } from '@os-design/utils';\nimport React, {\n forwardRef,\n MouseEventHandler,\n RefObject,\n useCallback,\n} from 'react';\nimport Button, { ButtonProps } from '../Button';\nimport useContainerPosition, {\n ContainerPosition,\n} from './utils/useContainerPosition';\nimport useVisibility from './utils/useVisibility';\n\nexport interface ScrollButtonProps extends Omit<ButtonProps, 'type' | 'wide'> {\n /**\n * The container that needs to be scrolled.\n * @default undefined\n */\n container?: Element | RefObject<Element>;\n /**\n * Where the container should be scrolled.\n * @default top\n */\n scrollTo?: 'top' | 'bottom';\n /**\n * The min scroll offset when the button is visible.\n * @default 500\n */\n minOffset?: number;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface StyledButtonProps {\n visible: boolean;\n containerPosition: ContainerPosition;\n}\nconst StyledButton = styled(\n Button,\n omitEmotionProps('visible', 'containerPosition')\n)<StyledButtonProps>`\n position: fixed;\n right: ${(p) =>\n p.containerPosition.right > 0\n ? `calc(${p.containerPosition.right}px + ${p.theme.scrollButtonMargin}em)`\n : `${p.theme.scrollButtonMargin}em`};\n bottom: ${(p) =>\n `calc(${\n p.containerPosition.bottom > 0 ? `${p.containerPosition.bottom}px + ` : ''\n }${p.theme.scrollButtonMargin}em + env(safe-area-inset-bottom))`};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.scrollButtonColorBoxShadow)};\n\n ${visibleStyles};\n ${invisibleStyles};\n`;\n\n/**\n * The button to scroll to either the top or bottom of the container.\n */\nconst ScrollButton = forwardRef<HTMLButtonElement, ScrollButtonProps>(\n (\n {\n container,\n scrollTo = 'top',\n minOffset = 500,\n onClick = () => {},\n ...rest\n },\n ref\n ) => {\n const visible = useVisibility({ container, scrollTo, minOffset });\n const containerPosition = useContainerPosition(container);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Scroll through the container when the user clicks the button\n const clickHandler = useCallback<MouseEventHandler<HTMLButtonElement>>(\n (e) => {\n // Scroll the window if the container is not defined\n if (!container) {\n window.scrollTo({\n top: scrollTo === 'top' ? 0 : document.body.scrollHeight,\n });\n return;\n }\n\n // Otherwise scroll the container\n const containerElement =\n container instanceof Element ? container : container.current;\n if (!containerElement) return;\n\n containerElement.scrollTo({\n top: scrollTo === 'top' ? 0 : containerElement.scrollHeight,\n });\n\n // Call the passed onClick handler\n onClick(e);\n },\n [container, scrollTo, onClick]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal container={container}>\n <ThemeOverrider\n overrides={(t) => ({\n buttonPrimaryColorBg: t.scrollButtonColorBg,\n buttonPrimaryColorText: t.scrollButtonColorText,\n buttonPrimaryColorBgHover: t.scrollButtonColorBgHover,\n })}\n >\n <StyledButton\n visible={visible}\n containerPosition={containerPosition}\n wide='never'\n size='small'\n onClick={clickHandler}\n aria-label={`Scroll to ${scrollTo}`}\n {...rest}\n ref={ref}\n >\n {scrollTo === 'top' ? <Up /> : <Down />}\n </StyledButton>\n </ThemeOverrider>\n </Portal>\n );\n }\n);\n\nScrollButton.displayName = 'ScrollButton';\n\nexport default ScrollButton;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"useContainerPosition.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useContainerPosition","container","_useState","useState","right","bottom","_useState2","position","setPosition","updatePosition","useCallback","element","Element","current","_element$getBoundingC","getBoundingClientRect","_window","window","innerWidth","innerHeight","useBrowserLayoutEffect","useResizeObserver","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useContainerPosition.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useResizeObserver } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\nexport interface ContainerPosition {\n right: number;\n bottom: number;\n}\n\n/**\n * Calculates the position of the container.\n */\nconst useContainerPosition = (\n container?: Element | RefObject<Element>\n): ContainerPosition => {\n const [position, setPosition] = useState<ContainerPosition>({\n right: 0,\n bottom: 0,\n });\n\n const updatePosition = useCallback(() => {\n if (!container) return;\n const element =\n container instanceof Element ? container : container.current;\n if (!element) return;\n\n const { right, bottom } = element.getBoundingClientRect();\n const { innerWidth, innerHeight } = window;\n\n setPosition({\n right: innerWidth - right,\n bottom: innerHeight - bottom,\n });\n }, [container]);\n\n useBrowserLayoutEffect(() => updatePosition(), [updatePosition]);\n useResizeObserver(container as never, updatePosition);\n\n return position;\n};\n\nexport default useContainerPosition;\n"],"mappings":"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"}
1
+ {"version":3,"file":"useContainerPosition.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useContainerPosition","container","_useState","useState","right","bottom","_useState2","position","setPosition","updatePosition","useCallback","element","Element","current","_element$getBoundingC","getBoundingClientRect","_window","window","innerWidth","innerHeight","useBrowserLayoutEffect","useResizeObserver","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useContainerPosition.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useResizeObserver } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\nexport interface ContainerPosition {\n right: number;\n bottom: number;\n}\n\n/**\n * Calculates the position of the container.\n */\nconst useContainerPosition = (\n container?: Element | RefObject<Element>\n): ContainerPosition => {\n const [position, setPosition] = useState<ContainerPosition>({\n right: 0,\n bottom: 0,\n });\n\n const updatePosition = useCallback(() => {\n if (!container) return;\n const element =\n container instanceof Element ? container : container.current;\n if (!element) return;\n\n const { right, bottom } = element.getBoundingClientRect();\n const { innerWidth, innerHeight } = window;\n\n setPosition({\n right: innerWidth - right,\n bottom: innerHeight - bottom,\n });\n }, [container]);\n\n useBrowserLayoutEffect(() => updatePosition(), [updatePosition]);\n useResizeObserver(container as never, updatePosition);\n\n return position;\n};\n\nexport default useContainerPosition;\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"useVisibility.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useVisibility","_ref","container","scrollTo","minOffset","_useState","useState","_useState2","visible","setVisible","updateVisibility","useCallback","offset","window","scrollY","document","body","scrollHeight","innerHeight","containerElement","Element","current","scrollTop","clientHeight","useBrowserLayoutEffect","useEvent","undefined","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useVisibility.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useEvent } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\ninterface UseVisibilityProps {\n container?: Element | RefObject<Element>;\n scrollTo: 'top' | 'bottom';\n minOffset: number;\n}\n\n/**\n * Controls the visibility of the button.\n */\nconst useVisibility = ({\n container,\n scrollTo,\n minOffset,\n}: UseVisibilityProps): boolean => {\n const [visible, setVisible] = useState(false);\n\n // Update the visibility of the button when the user scrolls the container\n const updateVisibility = useCallback(() => {\n let offset = 0;\n\n if (!container) {\n offset =\n scrollTo === 'top'\n ? window.scrollY\n : document.body.scrollHeight - window.scrollY - window.innerHeight;\n } else {\n const containerElement =\n container instanceof Element ? container : container.current;\n if (containerElement === null) return;\n\n offset =\n scrollTo === 'top'\n ? containerElement.scrollTop\n : containerElement.scrollHeight -\n containerElement.scrollTop -\n containerElement.clientHeight;\n }\n\n setVisible(offset >= minOffset);\n }, [container, scrollTo, minOffset]);\n\n useBrowserLayoutEffect(() => updateVisibility(), [updateVisibility]);\n useEvent(\n container ||\n ((typeof window !== 'undefined' ? window : undefined) as EventTarget),\n 'scroll',\n updateVisibility\n );\n\n return visible;\n};\n\nexport default useVisibility;\n"],"mappings":"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"}
1
+ {"version":3,"file":"useVisibility.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useVisibility","_ref","container","scrollTo","minOffset","_useState","useState","_useState2","visible","setVisible","updateVisibility","useCallback","offset","window","scrollY","document","body","scrollHeight","innerHeight","containerElement","Element","current","scrollTop","clientHeight","useBrowserLayoutEffect","useEvent","undefined","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useVisibility.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useEvent } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\ninterface UseVisibilityProps {\n container?: Element | RefObject<Element>;\n scrollTo: 'top' | 'bottom';\n minOffset: number;\n}\n\n/**\n * Controls the visibility of the button.\n */\nconst useVisibility = ({\n container,\n scrollTo,\n minOffset,\n}: UseVisibilityProps): boolean => {\n const [visible, setVisible] = useState(false);\n\n // Update the visibility of the button when the user scrolls the container\n const updateVisibility = useCallback(() => {\n let offset = 0;\n\n if (!container) {\n offset =\n scrollTo === 'top'\n ? window.scrollY\n : document.body.scrollHeight - window.scrollY - window.innerHeight;\n } else {\n const containerElement =\n container instanceof Element ? container : container.current;\n if (containerElement === null) return;\n\n offset =\n scrollTo === 'top'\n ? containerElement.scrollTop\n : containerElement.scrollHeight -\n containerElement.scrollTop -\n containerElement.clientHeight;\n }\n\n setVisible(offset >= minOffset);\n }, [container, scrollTo, minOffset]);\n\n useBrowserLayoutEffect(() => updateVisibility(), [updateVisibility]);\n useEvent(\n container ||\n ((typeof window !== 'undefined' ? window : undefined) as EventTarget),\n 'scroll',\n updateVisibility\n );\n\n return visible;\n};\n\nexport default useVisibility;\n"],"mappings":"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","ignoreList":[]}
@@ -27,13 +27,13 @@ var _excluded = ["options", "initSelectedOptions", "left", "leftHasPadding", "ri
27
27
  _excluded3 = ["title", "value", "onClick"];
28
28
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27;
29
29
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
30
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
30
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
31
31
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
32
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
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34
34
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
35
35
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
36
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
36
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
37
37
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
38
38
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
39
39
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -46,7 +46,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
46
46
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
47
47
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
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
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
49
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
50
50
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
51
51
  var selectContainerPaddingStyles = function selectContainerPaddingStyles(p) {
52
52
  var paddingVertical = (p.theme.baseHeight - p.theme.selectToggleListItemHeight) / 2;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_media","_styles","_theming","_utils","_react2","_interopRequireWildcard","_reactWindow","_Button","_Input","_InputSearch","_useRWLoadNext","_Menu","_MenuItem","_Tag","_defaultLocale","_excluded","_excluded2","_excluded3","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_templateObject13","_templateObject14","_templateObject15","_templateObject16","_templateObject17","_templateObject18","_templateObject19","_templateObject20","_templateObject21","_templateObject22","_templateObject23","_templateObject24","_templateObject25","_templateObject26","_templateObject27","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","_toPrimitive","String","Symbol","toPrimitive","TypeError","Number","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","slice","constructor","name","test","len","arr2","l","f","next","done","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_taggedTemplateLiteral","strings","raw","freeze","selectContainerPaddingStyles","p","paddingVertical","theme","baseHeight","selectToggleListItemHeight","css","selectContainerOpenedStyles","opened","unbordered","clr","inputFocusColorBorder","inputFocusColorShadow","selectContainerUnborderedStyles","transitionStyles","selectContainerUnborderedHoverStyles","disabled","buttonGhostColorBgHover","SelectContainer","exports","styled","InputContainer","omitEmotionProps","SelectMenu","Menu","m","min","xs","width","NotFound","div","menuItemHeight","inputPaddingHorizontal","selectNotFoundColorText","InputSearchContainer","menuPaddingVertical","ToggleContainer","toggleContentNotHasLeftStyles","hasLeft","toggleContentNotHasRightStyles","hasRight","ToggleContent","ellipsisStyles","Placeholder","span","inputColorPlaceholder","titleUnborderedStyles","concat","colorPrimary","titleDisabledStyles","inputDisabledColorText","Title","colorText","ToggleListItem","Tag","ToggleList","selectToggleListItemGap","DeleteButton","button","resetButtonStyles","selectToggleDeleteButtonColorIcon","selectToggleDeleteButtonColorIconHover","toggleIconUnborderedStyles","ToggleIconContainer","selectColorIcon","ClearIcon","CloseCircle","Addon","ToggleLeftAddon","inputAddonPaddingHorizontal","hasPadding","ToggleRightAddon","Select","forwardRef","_ref","ref","_ref$options","options","_ref$initSelectedOpti","initSelectedOptions","left","_ref$leftHasPadding","leftHasPadding","right","_ref$rightHasPadding","rightHasPadding","placeholder","_ref$searchVisible","searchVisible","_ref$searchProps","searchProps","_ref$notFoundText","notFoundText","_ref$unbordered","_ref$loading","loading","_ref$disabled","_ref$autoFocus","autoFocus","_ref$autoOpen","autoOpen","_ref$clearVisible","clearVisible","_ref$threshold","threshold","_ref$visibleCount","visibleCount","_ref$overscanCount","overscanCount","_ref$multiple","multiple","_ref$maxSelectedItems","maxSelectedItems","_ref$locale","locale","defaultLocale","defaultValue","onChange","_ref$onLoadNext","onLoadNext","_ref$onClose","onClose","_ref$onBlur","onBlur","size","placement","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","containerRef","mergedContainerRef","_useState","useState","_useState2","setWidth","_useState3","_useState4","setOpened","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","useEffect","_containerRef$current","current","focus","onCloseRef","useRef","initRef","resizeHandler","useCallback","window","requestAnimationFrame","nextWidth","getBoundingClientRect","useBrowserLayoutEffect","useResizeObserver","useEvent","undefined","setAttribute","listBoxId","useMemo","Math","random","blurHandler","onDelete","v","item","prevSelectedOptions","selectedOptions","values","items","map","option","find","title","toggleContent","createElement","_ref2","onClick","stopPropagation","onKeyDown","deleteLabel","Close","toggleShowClearButton","toggleOnClear","toggleRightValue","Loading","type","wide","clearLabel","Up","Down","toggleRightHasPaddingValue","onSelect","includes","windowSize","useSize","isMinXs","useIsMinWidth","fontSize","useFontSize","document","body","_useTheme","useTheme","scaleFactor","s","sizes","replace","paddingBottom","paddingEm","modalBodyPaddingVertical","paddingTop","searchInputHeight","itemSize","height","maxHeight","modalHeaderHeight","curHeight","count","scrollHandler","useRWLoadNext","itemCount","InnerElement","_ref3","style","innerElementRest","parseFloat","role","id","listItemFn","_ref4","index","_options$index","optionTitle","optionValue","optionOnClick","restOption","top","selected","Fragment","tabIndex","preventDefault","onMouseDown","ThemeOverrider","overrides","buttonPaddingHorizontal","small","trigger","visible","closeOnSelect","modalTitle","FixedSizeList","onScroll","_ref5","scrollOffset","innerElementType","displayName","_default"],"sources":["../../../src/Select/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Close, CloseCircle, Down, Loading, Up } from '@os-design/icons';\nimport { m, useIsMinWidth } from '@os-design/media';\nimport {\n WithSize,\n ellipsisStyles,\n resetButtonStyles,\n transitionStyles,\n} from '@os-design/styles';\nimport { ThemeOverrider, clr, useTheme } from '@os-design/theming';\nimport {\n omitEmotionProps,\n useBrowserLayoutEffect,\n useEvent,\n useFontSize,\n useForwardedRef,\n useForwardedState,\n useResizeObserver,\n useSize,\n} from '@os-design/utils';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { FixedSizeList } from 'react-window';\nimport Button from '../Button';\nimport { InputContainer } from '../Input';\nimport InputSearch, { InputSearchProps } from '../InputSearch';\nimport useRWLoadNext from '../List/utils/useRWLoadNext';\nimport Menu from '../Menu';\nimport MenuItem, { MenuItemProps } from '../MenuItem';\nimport { PopoverProps } from '../Popover';\nimport Tag from '../Tag';\nimport defaultLocale, { SelectLocale } from './utils/defaultLocale';\n\nexport interface Option extends MenuItemProps {\n value: string;\n title: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\ninterface BaseSelectProps<T>\n extends JsxDivProps,\n WithSize,\n Pick<PopoverProps, 'placement'> {\n /**\n * Options of the select.\n * @default undefined\n */\n options?: Option[];\n /**\n * Options of the select used to display the selected values.\n * Must be used if all of the options are not loaded immediately.\n * In this case, it's possible that the first loaded options do not contain the selected values.\n * @default undefined\n */\n initSelectedOptions?: Option[];\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 * The placeholder of the select.\n * @default undefined\n */\n placeholder?: string;\n /**\n * Whether the search input visible.\n * @default false\n */\n searchVisible?: boolean;\n /**\n * Props of the search input.\n * @default undefined\n */\n searchProps?: InputSearchProps;\n /**\n * Text displayed when there are no list items.\n * @default 'Not found'\n */\n notFoundText?: string;\n /**\n * Whether the border is hidden.\n * @default false\n */\n unbordered?: boolean;\n /**\n * Shows the loading status.\n * @default false\n */\n loading?: boolean;\n /**\n * Whether the select is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Whether the component have a focus.\n * @default false\n */\n autoFocus?: boolean;\n /**\n * Whether the component opens the popup list.\n * @default false\n */\n autoOpen?: boolean;\n /**\n * Whether the select has the clear button.\n * @default false\n */\n clearVisible?: boolean;\n /**\n * A threshold N means that the onLoadNext function calls when a user scrolls all items except N.\n * @default 10\n */\n threshold?: number;\n /**\n * Defines how many items inside of the visible \"window\" to render.\n * @default 6\n */\n visibleCount?: number;\n /**\n * Defines how many items outside of the visible \"window\" to render at all times.\n * @default 10\n */\n overscanCount?: number;\n /**\n * The max number of options that the user can select. Zero means unlimited.\n * Works only when multiple is true.\n * @default 0\n */\n maxSelectedItems?: number;\n /**\n * The locale.\n * @default undefined\n */\n locale?: SelectLocale;\n /**\n * Selected options.\n * @default undefined\n */\n value?: T;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: T;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: T) => void;\n /**\n * The callback to load more items.\n * @default undefined\n */\n onLoadNext?: () => void;\n /**\n * The event handler that is called whenever a popup closes.\n * @default undefined\n */\n onClose?: () => void;\n}\nexport interface SelectNotMultipleProps extends BaseSelectProps<string | null> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple?: false;\n}\nexport interface SelectMultipleProps extends BaseSelectProps<string[]> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple: true;\n}\nexport type SelectProps = SelectNotMultipleProps | SelectMultipleProps;\n\nconst selectContainerPaddingStyles = (p) => {\n const paddingVertical =\n (p.theme.baseHeight - p.theme.selectToggleListItemHeight) / 2;\n\n return css`\n padding: calc(${paddingVertical}em - 1px) 0;\n `;\n};\n\nconst selectContainerOpenedStyles = (p) =>\n p.opened &&\n !p.unbordered &&\n css`\n border-color: ${clr(p.theme.inputFocusColorBorder)};\n box-shadow: 0 0 0 0.15em ${clr(p.theme.inputFocusColorShadow)};\n `;\n\nconst selectContainerUnborderedStyles = (p) =>\n p.unbordered &&\n css`\n border: 0;\n box-shadow: none !important;\n ${transitionStyles('background-color')(p)};\n `;\n\nconst selectContainerUnborderedHoverStyles = (p) =>\n p.unbordered &&\n !p.disabled &&\n css`\n @media (hover: hover) {\n &:hover,\n &:focus {\n background-color: ${clr(p.theme.buttonGhostColorBgHover)};\n }\n }\n `;\n\ninterface SelectContainerProps {\n opened: boolean;\n unbordered?: boolean;\n disabled?: boolean;\n}\nexport const SelectContainer = styled(\n InputContainer,\n omitEmotionProps('opened', 'unbordered', 'disabled')\n)<SelectContainerProps>`\n cursor: ${(p) => (!p.disabled ? 'pointer' : 'not-allowed')};\n user-select: none;\n position: relative;\n display: flex;\n align-items: center;\n\n height: unset;\n min-height: ${(p) => p.theme.baseHeight}em;\n\n ${selectContainerPaddingStyles};\n ${selectContainerOpenedStyles};\n ${selectContainerUnborderedStyles};\n ${selectContainerUnborderedHoverStyles};\n`;\n\ninterface SelectMenuProps {\n width: number;\n}\nconst SelectMenu = styled(Menu, omitEmotionProps('width'))<SelectMenuProps>`\n padding-top: 0;\n padding-bottom: 0;\n max-height: unset;\n\n ${m.min.xs} {\n width: ${(p) => p.width}px;\n }\n`;\n\nconst NotFound = styled.div`\n height: ${(p) => p.theme.menuItemHeight}em;\n display: flex;\n align-items: center;\n\n padding: 0 ${(p) => p.theme.inputPaddingHorizontal}em;\n color: ${(p) => clr(p.theme.selectNotFoundColorText)};\n`;\n\nconst InputSearchContainer = styled.div`\n padding: ${(p) => p.theme.menuPaddingVertical}em\n ${(p) => p.theme.inputPaddingHorizontal}em 0;\n`;\n\nexport const ToggleContainer = styled.div`\n flex: 1;\n display: flex;\n align-items: center;\n overflow: hidden;\n`;\n\nconst toggleContentNotHasLeftStyles = (p) =>\n !p.hasLeft &&\n css`\n padding-left: ${p.theme.inputPaddingHorizontal}em;\n `;\n\nconst toggleContentNotHasRightStyles = (p) =>\n !p.hasRight &&\n !p.unbordered &&\n css`\n padding-right: ${p.theme.inputPaddingHorizontal}em;\n `;\n\ninterface ToggleContentProps {\n hasLeft?: boolean;\n hasRight?: boolean;\n unbordered?: boolean;\n}\nexport const ToggleContent = styled(\n 'div',\n omitEmotionProps('hasLeft', 'hasRight', 'unbordered')\n)<ToggleContentProps>`\n flex: 1;\n ${toggleContentNotHasLeftStyles};\n ${toggleContentNotHasRightStyles};\n ${ellipsisStyles};\n`;\n\nexport const Placeholder = styled.span`\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n ${ellipsisStyles};\n`;\n\nconst titleUnborderedStyles = (p) =>\n p.unbordered &&\n css`\n font-weight: 500;\n ${!p.disabled && `color: ${clr(p.theme.colorPrimary)};`}\n `;\n\nconst titleDisabledStyles = (p) =>\n p.disabled &&\n css`\n color: ${clr(p.theme.inputDisabledColorText)};\n `;\n\ntype TitleProps = Pick<SelectProps, 'disabled' | 'unbordered'>;\nexport const Title = styled(\n 'span',\n omitEmotionProps('disabled', 'unbordered')\n)<TitleProps>`\n color: ${(p) => clr(p.theme.colorText)};\n ${titleUnborderedStyles};\n ${titleDisabledStyles};\n ${ellipsisStyles};\n`;\n\ntype ToggleListItemProps = Pick<SelectProps, 'disabled'>;\nconst ToggleListItem = styled(\n Tag,\n omitEmotionProps('disabled')\n)<ToggleListItemProps>`\n // Reset tag styles\n padding-top: 0;\n padding-bottom: 0;\n\n height: ${(p) => p.theme.selectToggleListItemHeight}em;\n ${titleDisabledStyles};\n`;\n\nconst ToggleList = styled.div`\n display: flex;\n flex-wrap: wrap;\n overflow: hidden; // For ellipsis styles\n\n margin: 0 ${(p) => p.theme.selectToggleListItemGap}em\n ${(p) => -p.theme.selectToggleListItemGap}em 0;\n\n & > div {\n margin: 0 ${(p) => p.theme.selectToggleListItemGap}em\n ${(p) => p.theme.selectToggleListItemGap}em 0;\n }\n`;\n\nconst DeleteButton = styled.button`\n ${resetButtonStyles};\n cursor: pointer;\n display: inherit;\n font-size: 1em;\n margin-left: 0.2em;\n\n background-color: transparent;\n color: ${(p) => clr(p.theme.selectToggleDeleteButtonColorIcon)};\n\n @media (hover: hover) {\n &:hover,\n &:focus {\n color: ${(p) => clr(p.theme.selectToggleDeleteButtonColorIconHover)};\n }\n }\n\n ${transitionStyles('color')};\n`;\n\nconst toggleIconUnborderedStyles = (p) =>\n p.unbordered &&\n css`\n padding-top: 0.2em;\n font-size: 0.8em;\n ${!p.disabled && `color: ${clr(p.theme.colorPrimary)};`}\n `;\n\ninterface ToggleIconContainerProps {\n unbordered?: boolean;\n}\nexport const ToggleIconContainer = styled(\n 'span',\n omitEmotionProps('unbordered')\n)<ToggleIconContainerProps>`\n color: ${(p) => clr(p.theme.selectColorIcon)};\n line-height: 1;\n ${toggleIconUnborderedStyles};\n`;\n\nexport const ClearIcon = styled(CloseCircle)`\n transform: scale(1.2) !important;\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\nexport const ToggleLeftAddon = 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\nexport const ToggleRightAddon = 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 component that allows to pick a value from predefined options.\n */\nconst Select = forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n options = [],\n initSelectedOptions = [],\n left,\n leftHasPadding = false,\n right,\n rightHasPadding = false,\n placeholder,\n searchVisible = false,\n searchProps = {},\n notFoundText = 'Not found',\n unbordered = false,\n loading = false,\n disabled = false,\n autoFocus = false,\n autoOpen = false,\n clearVisible = false,\n threshold = 10,\n visibleCount = 6,\n overscanCount = 10,\n multiple = false,\n maxSelectedItems = 0,\n locale = defaultLocale,\n value,\n defaultValue,\n onChange,\n onLoadNext = () => {},\n onClose = () => {},\n onBlur = () => {},\n size,\n placement,\n ...rest\n },\n ref\n ) => {\n const [containerRef, mergedContainerRef] = useForwardedRef(ref);\n const [width, setWidth] = useState(0);\n const [opened, setOpened] = useState(autoOpen);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [forwardedValue, setForwardedValue] = useForwardedState<any>({\n value,\n defaultValue,\n onChange,\n });\n\n useEffect(() => {\n if (autoFocus) containerRef.current?.focus();\n }, [autoFocus, containerRef]);\n\n const onCloseRef = useRef(onClose);\n useEffect(() => {\n onCloseRef.current = onClose;\n }, [onClose]);\n\n const initRef = useRef(false);\n useEffect(() => {\n if (!initRef.current) {\n initRef.current = true;\n return;\n }\n if (!opened) onCloseRef.current();\n }, [opened]);\n\n /**\n * Detect the width of the container when the select was opened and update\n * it when either the container size or the window size has been changed.\n */\n const resizeHandler = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (!opened || !containerRef.current) return;\n const nextWidth = containerRef.current.getBoundingClientRect().width;\n if (width === nextWidth) return;\n setWidth(nextWidth);\n });\n }, [opened, containerRef, width]);\n useBrowserLayoutEffect(() => resizeHandler(), [resizeHandler]);\n useResizeObserver(containerRef, resizeHandler);\n useEvent(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'resize',\n resizeHandler\n );\n\n // Replace the aria-haspopup attribute from menu to listbox\n useBrowserLayoutEffect(() => {\n if (!containerRef.current) return;\n containerRef.current.setAttribute('aria-haspopup', 'listbox');\n }, []);\n\n const listBoxId = useMemo(\n () => `listbox-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n\n const blurHandler = useCallback(\n (e) => {\n if (!opened) onBlur(e);\n },\n [onBlur, opened]\n );\n\n const onDelete = useCallback(\n (v: string) => {\n if (!multiple) return;\n setForwardedValue((forwardedValue || []).filter((item) => item !== v));\n },\n [forwardedValue, multiple, setForwardedValue]\n );\n\n const prevSelectedOptions = useRef<Option[]>(initSelectedOptions);\n\n const selectedOptions = useMemo<\n Array<{ title: string; value: string }>\n >(() => {\n if (!forwardedValue) return [];\n const values = Array.isArray(forwardedValue)\n ? forwardedValue\n : [forwardedValue];\n const items = [...options, ...prevSelectedOptions.current];\n return values.map((v) => {\n const option = items.find((item) => item.value === v);\n return {\n title: option ? option.title : v,\n value: v,\n };\n });\n }, [forwardedValue, options]);\n\n useEffect(() => {\n prevSelectedOptions.current = selectedOptions;\n }, [selectedOptions]);\n\n const toggleContent = useMemo(() => {\n if (multiple) {\n if (!forwardedValue || forwardedValue.length === 0) {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n return (\n <ToggleList>\n {selectedOptions.map(({ title, value: v }) => (\n <ToggleListItem\n key={v}\n disabled={disabled}\n right={\n !disabled ? (\n <DeleteButton\n onClick={(e) => {\n onDelete(v);\n e.stopPropagation();\n }}\n onKeyDown={(e) => e.stopPropagation()}\n aria-label={`${locale.deleteLabel} ${title}`}\n aria-hidden\n >\n <Close />\n </DeleteButton>\n ) : undefined\n }\n aria-hidden\n >\n {title}\n </ToggleListItem>\n ))}\n </ToggleList>\n );\n }\n if (!forwardedValue) {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n const option = selectedOptions.find(\n (item) => item.value === forwardedValue\n );\n return (\n <Title disabled={disabled} unbordered={unbordered}>\n {option ? option.title : ''}\n </Title>\n );\n }, [\n disabled,\n forwardedValue,\n locale.deleteLabel,\n multiple,\n onDelete,\n placeholder,\n selectedOptions,\n unbordered,\n ]);\n\n const toggleShowClearButton = useMemo(() => {\n if (!clearVisible) return false;\n if (multiple) return forwardedValue && forwardedValue.length > 0;\n return !!forwardedValue;\n }, [clearVisible, forwardedValue, multiple]);\n\n const toggleOnClear = useCallback(() => {\n setForwardedValue(multiple ? [] : null);\n if (!containerRef.current) return;\n containerRef.current.focus();\n }, [containerRef, multiple, setForwardedValue]);\n\n const toggleRightValue = useMemo(() => {\n if (loading) return <Loading />;\n if (toggleShowClearButton) {\n return (\n <Button\n type='ghost'\n wide='never'\n size='small'\n disabled={disabled}\n onClick={(e) => {\n toggleOnClear();\n e.stopPropagation();\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter') toggleOnClear();\n e.stopPropagation();\n }}\n aria-label={locale.clearLabel}\n >\n <ClearIcon />\n </Button>\n );\n }\n return (\n right || (\n <ToggleIconContainer unbordered={unbordered}>\n {opened ? <Up /> : <Down />}\n </ToggleIconContainer>\n )\n );\n }, [\n disabled,\n loading,\n locale.clearLabel,\n opened,\n right,\n toggleOnClear,\n toggleShowClearButton,\n unbordered,\n ]);\n\n const toggleRightHasPaddingValue = useMemo(() => {\n if (loading) return true;\n if (toggleShowClearButton) return false;\n return right ? rightHasPadding : true;\n }, [loading, right, rightHasPadding, toggleShowClearButton]);\n\n const onSelect = useCallback(\n (v: string) => {\n if (multiple) {\n // Delete the value because it was already selected\n if ((forwardedValue || []).includes(v)) {\n setForwardedValue(\n (forwardedValue || []).filter((item) => item !== v)\n );\n return;\n }\n\n // Add a new value if the number of selected items is less than max\n if (\n maxSelectedItems === 0 ||\n (forwardedValue || []).length < maxSelectedItems\n ) {\n setForwardedValue([...(forwardedValue || []), v]);\n return;\n }\n return;\n }\n setForwardedValue(v);\n },\n [forwardedValue, maxSelectedItems, multiple, setForwardedValue]\n );\n\n const windowSize = useSize();\n const isMinXs = useIsMinWidth('xs');\n const fontSize = useFontSize(document.body);\n const { theme } = useTheme();\n\n const scaleFactor = useMemo(() => {\n const s = size || 'medium';\n return ['small', 'medium', 'large'].includes(s)\n ? theme.sizes[s]\n : Number(s.replace(/^([0-9]+(\\.[0-9]+)?).*/, '$1')) || 1; // Extract the number\n }, [size, theme.sizes]);\n\n const paddingBottom = useMemo(() => {\n const paddingEm = isMinXs\n ? theme.menuPaddingVertical\n : theme.modalBodyPaddingVertical[0];\n return paddingEm * fontSize * scaleFactor;\n }, [\n isMinXs,\n theme.menuPaddingVertical,\n theme.modalBodyPaddingVertical,\n fontSize,\n scaleFactor,\n ]);\n\n const paddingTop = useMemo(\n () => (searchVisible ? 5 * scaleFactor : paddingBottom),\n [searchVisible, scaleFactor, paddingBottom]\n );\n\n const searchInputHeight = useMemo(\n () =>\n searchVisible\n ? (theme.baseHeight + theme.menuPaddingVertical) *\n fontSize *\n scaleFactor\n : 0,\n [\n searchVisible,\n theme.baseHeight,\n theme.menuPaddingVertical,\n fontSize,\n scaleFactor,\n ]\n );\n\n const itemSize = useMemo(\n () => theme.menuItemHeight * fontSize * scaleFactor,\n [theme.menuItemHeight, fontSize, scaleFactor]\n );\n\n const height = useMemo(() => {\n // Modal\n if (!isMinXs) {\n const maxHeight =\n windowSize.height -\n theme.modalHeaderHeight * fontSize * scaleFactor -\n searchInputHeight;\n const curHeight =\n options.length * itemSize + paddingTop + paddingBottom;\n return curHeight < maxHeight ? curHeight : maxHeight;\n }\n // Popover\n const count =\n options.length < visibleCount ? options.length : visibleCount;\n return count * itemSize + paddingTop + paddingBottom;\n }, [\n isMinXs,\n options.length,\n visibleCount,\n itemSize,\n windowSize.height,\n theme.modalHeaderHeight,\n fontSize,\n scaleFactor,\n searchInputHeight,\n paddingTop,\n paddingBottom,\n ]);\n\n const scrollHandler = useRWLoadNext({\n itemCount: options.length,\n threshold,\n itemSize,\n paddingTop,\n height,\n onLoadNext,\n });\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const InnerElement = useCallback(\n ({ style, ...innerElementRest }) => (\n <div\n style={{\n ...style,\n height: `${\n parseFloat(style.height) + paddingTop + paddingBottom\n }px`,\n }}\n role='listbox'\n id={listBoxId}\n {...innerElementRest}\n />\n ),\n [listBoxId, paddingBottom, paddingTop]\n );\n\n const listItemFn = useCallback(\n ({ index, style }) => {\n const {\n title: optionTitle,\n value: optionValue,\n onClick: optionOnClick,\n ...restOption\n } = options[index];\n return (\n <MenuItem\n style={{\n ...style,\n top: `${\n parseFloat(style.top ? style.top.toString() : '0') + paddingTop\n }px`,\n }}\n selected={\n (multiple &&\n (forwardedValue || []).includes(optionValue || '')) ||\n (!multiple && forwardedValue === optionValue)\n }\n onClick={(e) => {\n if (!optionValue) return;\n onSelect(optionValue);\n\n // Focus the input.\n // Otherwise, if multiple is false and the user presses enter to select an item,\n // the input will lose focus.\n if (containerRef.current && !multiple) {\n containerRef.current.focus();\n }\n\n if (optionOnClick) optionOnClick(e);\n }}\n role='option'\n aria-selected={\n (multiple &&\n (forwardedValue || []).includes(optionValue || '')) ||\n (!multiple && forwardedValue === optionValue)\n }\n {...restOption}\n >\n {optionTitle}\n </MenuItem>\n );\n },\n [containerRef, forwardedValue, multiple, onSelect, options, paddingTop]\n );\n\n return (\n <>\n <SelectContainer\n opened={opened}\n unbordered={unbordered}\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 onBlur={blurHandler}\n role='combobox'\n aria-disabled={disabled}\n aria-busy={loading}\n aria-haspopup='listbox'\n aria-owns={listBoxId}\n {...rest}\n ref={mergedContainerRef}\n >\n <ToggleContainer>\n {left && (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal: 0.8,\n baseHeight: t.selectToggleListItemHeight / t.sizes.small,\n })}\n >\n <ToggleLeftAddon hasPadding={leftHasPadding}>\n {left}\n </ToggleLeftAddon>\n </ThemeOverrider>\n )}\n\n <ToggleContent\n hasLeft={!!left}\n hasRight={!!right}\n unbordered={unbordered}\n >\n {toggleContent}\n </ToggleContent>\n\n {toggleRightValue && (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal: 0.8,\n baseHeight: t.selectToggleListItemHeight / t.sizes.small,\n })}\n >\n <ToggleRightAddon hasPadding={toggleRightHasPaddingValue}>\n {toggleRightValue}\n </ToggleRightAddon>\n </ThemeOverrider>\n )}\n </ToggleContainer>\n </SelectContainer>\n\n <SelectMenu\n trigger={containerRef}\n visible={opened}\n onClose={() => setOpened(false)}\n size={size}\n width={width}\n closeOnSelect={!multiple}\n modalTitle={placeholder}\n placement={placement}\n >\n {searchVisible && (\n <InputSearchContainer>\n <InputSearch {...searchProps} />\n </InputSearchContainer>\n )}\n\n {options.length > 0 ? (\n <FixedSizeList\n width='100%'\n height={height}\n itemSize={itemSize}\n itemCount={options.length}\n overscanCount={overscanCount}\n onScroll={({ scrollOffset }) => scrollHandler(scrollOffset)}\n innerElementType={InnerElement}\n >\n {listItemFn}\n </FixedSizeList>\n ) : (\n <NotFound>{notFoundText}</NotFound>\n )}\n </SelectMenu>\n </>\n );\n }\n);\n\nSelect.displayName = 'Select';\n\nexport default Select;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_media","_styles","_theming","_utils","_react2","_interopRequireWildcard","_reactWindow","_Button","_Input","_InputSearch","_useRWLoadNext","_Menu","_MenuItem","_Tag","_defaultLocale","_excluded","_excluded2","_excluded3","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_templateObject13","_templateObject14","_templateObject15","_templateObject16","_templateObject17","_templateObject18","_templateObject19","_templateObject20","_templateObject21","_templateObject22","_templateObject23","_templateObject24","_templateObject25","_templateObject26","_templateObject27","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","slice","constructor","name","test","len","arr2","l","f","next","done","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","freeze","selectContainerPaddingStyles","p","paddingVertical","theme","baseHeight","selectToggleListItemHeight","css","selectContainerOpenedStyles","opened","unbordered","clr","inputFocusColorBorder","inputFocusColorShadow","selectContainerUnborderedStyles","transitionStyles","selectContainerUnborderedHoverStyles","disabled","buttonGhostColorBgHover","SelectContainer","exports","styled","InputContainer","omitEmotionProps","SelectMenu","Menu","m","min","xs","width","NotFound","div","menuItemHeight","inputPaddingHorizontal","selectNotFoundColorText","InputSearchContainer","menuPaddingVertical","ToggleContainer","toggleContentNotHasLeftStyles","hasLeft","toggleContentNotHasRightStyles","hasRight","ToggleContent","ellipsisStyles","Placeholder","span","inputColorPlaceholder","titleUnborderedStyles","concat","colorPrimary","titleDisabledStyles","inputDisabledColorText","Title","colorText","ToggleListItem","Tag","ToggleList","selectToggleListItemGap","DeleteButton","button","resetButtonStyles","selectToggleDeleteButtonColorIcon","selectToggleDeleteButtonColorIconHover","toggleIconUnborderedStyles","ToggleIconContainer","selectColorIcon","ClearIcon","CloseCircle","Addon","ToggleLeftAddon","inputAddonPaddingHorizontal","hasPadding","ToggleRightAddon","Select","forwardRef","_ref","ref","_ref$options","options","_ref$initSelectedOpti","initSelectedOptions","left","_ref$leftHasPadding","leftHasPadding","right","_ref$rightHasPadding","rightHasPadding","placeholder","_ref$searchVisible","searchVisible","_ref$searchProps","searchProps","_ref$notFoundText","notFoundText","_ref$unbordered","_ref$loading","loading","_ref$disabled","_ref$autoFocus","autoFocus","_ref$autoOpen","autoOpen","_ref$clearVisible","clearVisible","_ref$threshold","threshold","_ref$visibleCount","visibleCount","_ref$overscanCount","overscanCount","_ref$multiple","multiple","_ref$maxSelectedItems","maxSelectedItems","_ref$locale","locale","defaultLocale","defaultValue","onChange","_ref$onLoadNext","onLoadNext","_ref$onClose","onClose","_ref$onBlur","onBlur","size","placement","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","containerRef","mergedContainerRef","_useState","useState","_useState2","setWidth","_useState3","_useState4","setOpened","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","useEffect","_containerRef$current","current","focus","onCloseRef","useRef","initRef","resizeHandler","useCallback","window","requestAnimationFrame","nextWidth","getBoundingClientRect","useBrowserLayoutEffect","useResizeObserver","useEvent","undefined","setAttribute","listBoxId","useMemo","Math","random","blurHandler","onDelete","v","item","prevSelectedOptions","selectedOptions","values","items","map","option","find","title","toggleContent","createElement","_ref2","onClick","stopPropagation","onKeyDown","deleteLabel","Close","toggleShowClearButton","toggleOnClear","toggleRightValue","Loading","type","wide","clearLabel","Up","Down","toggleRightHasPaddingValue","onSelect","includes","windowSize","useSize","isMinXs","useIsMinWidth","fontSize","useFontSize","document","body","_useTheme","useTheme","scaleFactor","s","sizes","replace","paddingBottom","paddingEm","modalBodyPaddingVertical","paddingTop","searchInputHeight","itemSize","height","maxHeight","modalHeaderHeight","curHeight","count","scrollHandler","useRWLoadNext","itemCount","InnerElement","_ref3","style","innerElementRest","parseFloat","role","id","listItemFn","_ref4","index","_options$index","optionTitle","optionValue","optionOnClick","restOption","top","selected","Fragment","tabIndex","preventDefault","onMouseDown","ThemeOverrider","overrides","buttonPaddingHorizontal","small","trigger","visible","closeOnSelect","modalTitle","FixedSizeList","onScroll","_ref5","scrollOffset","innerElementType","displayName","_default"],"sources":["../../../src/Select/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Close, CloseCircle, Down, Loading, Up } from '@os-design/icons';\nimport { m, useIsMinWidth } from '@os-design/media';\nimport {\n WithSize,\n ellipsisStyles,\n resetButtonStyles,\n transitionStyles,\n} from '@os-design/styles';\nimport { ThemeOverrider, clr, useTheme } from '@os-design/theming';\nimport {\n omitEmotionProps,\n useBrowserLayoutEffect,\n useEvent,\n useFontSize,\n useForwardedRef,\n useForwardedState,\n useResizeObserver,\n useSize,\n} from '@os-design/utils';\nimport React, {\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { FixedSizeList } from 'react-window';\nimport Button from '../Button';\nimport { InputContainer } from '../Input';\nimport InputSearch, { InputSearchProps } from '../InputSearch';\nimport useRWLoadNext from '../List/utils/useRWLoadNext';\nimport Menu from '../Menu';\nimport MenuItem, { MenuItemProps } from '../MenuItem';\nimport { PopoverProps } from '../Popover';\nimport Tag from '../Tag';\nimport defaultLocale, { SelectLocale } from './utils/defaultLocale';\n\nexport interface Option extends MenuItemProps {\n value: string;\n title: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\ninterface BaseSelectProps<T>\n extends JsxDivProps,\n WithSize,\n Pick<PopoverProps, 'placement'> {\n /**\n * Options of the select.\n * @default undefined\n */\n options?: Option[];\n /**\n * Options of the select used to display the selected values.\n * Must be used if all of the options are not loaded immediately.\n * In this case, it's possible that the first loaded options do not contain the selected values.\n * @default undefined\n */\n initSelectedOptions?: Option[];\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 * The placeholder of the select.\n * @default undefined\n */\n placeholder?: string;\n /**\n * Whether the search input visible.\n * @default false\n */\n searchVisible?: boolean;\n /**\n * Props of the search input.\n * @default undefined\n */\n searchProps?: InputSearchProps;\n /**\n * Text displayed when there are no list items.\n * @default 'Not found'\n */\n notFoundText?: string;\n /**\n * Whether the border is hidden.\n * @default false\n */\n unbordered?: boolean;\n /**\n * Shows the loading status.\n * @default false\n */\n loading?: boolean;\n /**\n * Whether the select is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Whether the component have a focus.\n * @default false\n */\n autoFocus?: boolean;\n /**\n * Whether the component opens the popup list.\n * @default false\n */\n autoOpen?: boolean;\n /**\n * Whether the select has the clear button.\n * @default false\n */\n clearVisible?: boolean;\n /**\n * A threshold N means that the onLoadNext function calls when a user scrolls all items except N.\n * @default 10\n */\n threshold?: number;\n /**\n * Defines how many items inside of the visible \"window\" to render.\n * @default 6\n */\n visibleCount?: number;\n /**\n * Defines how many items outside of the visible \"window\" to render at all times.\n * @default 10\n */\n overscanCount?: number;\n /**\n * The max number of options that the user can select. Zero means unlimited.\n * Works only when multiple is true.\n * @default 0\n */\n maxSelectedItems?: number;\n /**\n * The locale.\n * @default undefined\n */\n locale?: SelectLocale;\n /**\n * Selected options.\n * @default undefined\n */\n value?: T;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: T;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: T) => void;\n /**\n * The callback to load more items.\n * @default undefined\n */\n onLoadNext?: () => void;\n /**\n * The event handler that is called whenever a popup closes.\n * @default undefined\n */\n onClose?: () => void;\n}\nexport interface SelectNotMultipleProps extends BaseSelectProps<string | null> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple?: false;\n}\nexport interface SelectMultipleProps extends BaseSelectProps<string[]> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple: true;\n}\nexport type SelectProps = SelectNotMultipleProps | SelectMultipleProps;\n\nconst selectContainerPaddingStyles = (p) => {\n const paddingVertical =\n (p.theme.baseHeight - p.theme.selectToggleListItemHeight) / 2;\n\n return css`\n padding: calc(${paddingVertical}em - 1px) 0;\n `;\n};\n\nconst selectContainerOpenedStyles = (p) =>\n p.opened &&\n !p.unbordered &&\n css`\n border-color: ${clr(p.theme.inputFocusColorBorder)};\n box-shadow: 0 0 0 0.15em ${clr(p.theme.inputFocusColorShadow)};\n `;\n\nconst selectContainerUnborderedStyles = (p) =>\n p.unbordered &&\n css`\n border: 0;\n box-shadow: none !important;\n ${transitionStyles('background-color')(p)};\n `;\n\nconst selectContainerUnborderedHoverStyles = (p) =>\n p.unbordered &&\n !p.disabled &&\n css`\n @media (hover: hover) {\n &:hover,\n &:focus {\n background-color: ${clr(p.theme.buttonGhostColorBgHover)};\n }\n }\n `;\n\ninterface SelectContainerProps {\n opened: boolean;\n unbordered?: boolean;\n disabled?: boolean;\n}\nexport const SelectContainer = styled(\n InputContainer,\n omitEmotionProps('opened', 'unbordered', 'disabled')\n)<SelectContainerProps>`\n cursor: ${(p) => (!p.disabled ? 'pointer' : 'not-allowed')};\n user-select: none;\n position: relative;\n display: flex;\n align-items: center;\n\n height: unset;\n min-height: ${(p) => p.theme.baseHeight}em;\n\n ${selectContainerPaddingStyles};\n ${selectContainerOpenedStyles};\n ${selectContainerUnborderedStyles};\n ${selectContainerUnborderedHoverStyles};\n`;\n\ninterface SelectMenuProps {\n width: number;\n}\nconst SelectMenu = styled(Menu, omitEmotionProps('width'))<SelectMenuProps>`\n padding-top: 0;\n padding-bottom: 0;\n max-height: unset;\n\n ${m.min.xs} {\n width: ${(p) => p.width}px;\n }\n`;\n\nconst NotFound = styled.div`\n height: ${(p) => p.theme.menuItemHeight}em;\n display: flex;\n align-items: center;\n\n padding: 0 ${(p) => p.theme.inputPaddingHorizontal}em;\n color: ${(p) => clr(p.theme.selectNotFoundColorText)};\n`;\n\nconst InputSearchContainer = styled.div`\n padding: ${(p) => p.theme.menuPaddingVertical}em\n ${(p) => p.theme.inputPaddingHorizontal}em 0;\n`;\n\nexport const ToggleContainer = styled.div`\n flex: 1;\n display: flex;\n align-items: center;\n overflow: hidden;\n`;\n\nconst toggleContentNotHasLeftStyles = (p) =>\n !p.hasLeft &&\n css`\n padding-left: ${p.theme.inputPaddingHorizontal}em;\n `;\n\nconst toggleContentNotHasRightStyles = (p) =>\n !p.hasRight &&\n !p.unbordered &&\n css`\n padding-right: ${p.theme.inputPaddingHorizontal}em;\n `;\n\ninterface ToggleContentProps {\n hasLeft?: boolean;\n hasRight?: boolean;\n unbordered?: boolean;\n}\nexport const ToggleContent = styled(\n 'div',\n omitEmotionProps('hasLeft', 'hasRight', 'unbordered')\n)<ToggleContentProps>`\n flex: 1;\n ${toggleContentNotHasLeftStyles};\n ${toggleContentNotHasRightStyles};\n ${ellipsisStyles};\n`;\n\nexport const Placeholder = styled.span`\n color: ${(p) => clr(p.theme.inputColorPlaceholder)};\n ${ellipsisStyles};\n`;\n\nconst titleUnborderedStyles = (p) =>\n p.unbordered &&\n css`\n font-weight: 500;\n ${!p.disabled && `color: ${clr(p.theme.colorPrimary)};`}\n `;\n\nconst titleDisabledStyles = (p) =>\n p.disabled &&\n css`\n color: ${clr(p.theme.inputDisabledColorText)};\n `;\n\ntype TitleProps = Pick<SelectProps, 'disabled' | 'unbordered'>;\nexport const Title = styled(\n 'span',\n omitEmotionProps('disabled', 'unbordered')\n)<TitleProps>`\n color: ${(p) => clr(p.theme.colorText)};\n ${titleUnborderedStyles};\n ${titleDisabledStyles};\n ${ellipsisStyles};\n`;\n\ntype ToggleListItemProps = Pick<SelectProps, 'disabled'>;\nconst ToggleListItem = styled(\n Tag,\n omitEmotionProps('disabled')\n)<ToggleListItemProps>`\n // Reset tag styles\n padding-top: 0;\n padding-bottom: 0;\n\n height: ${(p) => p.theme.selectToggleListItemHeight}em;\n ${titleDisabledStyles};\n`;\n\nconst ToggleList = styled.div`\n display: flex;\n flex-wrap: wrap;\n overflow: hidden; // For ellipsis styles\n\n margin: 0 ${(p) => p.theme.selectToggleListItemGap}em\n ${(p) => -p.theme.selectToggleListItemGap}em 0;\n\n & > div {\n margin: 0 ${(p) => p.theme.selectToggleListItemGap}em\n ${(p) => p.theme.selectToggleListItemGap}em 0;\n }\n`;\n\nconst DeleteButton = styled.button`\n ${resetButtonStyles};\n cursor: pointer;\n display: inherit;\n font-size: 1em;\n margin-left: 0.2em;\n\n background-color: transparent;\n color: ${(p) => clr(p.theme.selectToggleDeleteButtonColorIcon)};\n\n @media (hover: hover) {\n &:hover,\n &:focus {\n color: ${(p) => clr(p.theme.selectToggleDeleteButtonColorIconHover)};\n }\n }\n\n ${transitionStyles('color')};\n`;\n\nconst toggleIconUnborderedStyles = (p) =>\n p.unbordered &&\n css`\n padding-top: 0.2em;\n font-size: 0.8em;\n ${!p.disabled && `color: ${clr(p.theme.colorPrimary)};`}\n `;\n\ninterface ToggleIconContainerProps {\n unbordered?: boolean;\n}\nexport const ToggleIconContainer = styled(\n 'span',\n omitEmotionProps('unbordered')\n)<ToggleIconContainerProps>`\n color: ${(p) => clr(p.theme.selectColorIcon)};\n line-height: 1;\n ${toggleIconUnborderedStyles};\n`;\n\nexport const ClearIcon = styled(CloseCircle)`\n transform: scale(1.2) !important;\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\nexport const ToggleLeftAddon = 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\nexport const ToggleRightAddon = 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 component that allows to pick a value from predefined options.\n */\nconst Select = forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n options = [],\n initSelectedOptions = [],\n left,\n leftHasPadding = false,\n right,\n rightHasPadding = false,\n placeholder,\n searchVisible = false,\n searchProps = {},\n notFoundText = 'Not found',\n unbordered = false,\n loading = false,\n disabled = false,\n autoFocus = false,\n autoOpen = false,\n clearVisible = false,\n threshold = 10,\n visibleCount = 6,\n overscanCount = 10,\n multiple = false,\n maxSelectedItems = 0,\n locale = defaultLocale,\n value,\n defaultValue,\n onChange,\n onLoadNext = () => {},\n onClose = () => {},\n onBlur = () => {},\n size,\n placement,\n ...rest\n },\n ref\n ) => {\n const [containerRef, mergedContainerRef] = useForwardedRef(ref);\n const [width, setWidth] = useState(0);\n const [opened, setOpened] = useState(autoOpen);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [forwardedValue, setForwardedValue] = useForwardedState<any>({\n value,\n defaultValue,\n onChange,\n });\n\n useEffect(() => {\n if (autoFocus) containerRef.current?.focus();\n }, [autoFocus, containerRef]);\n\n const onCloseRef = useRef(onClose);\n useEffect(() => {\n onCloseRef.current = onClose;\n }, [onClose]);\n\n const initRef = useRef(false);\n useEffect(() => {\n if (!initRef.current) {\n initRef.current = true;\n return;\n }\n if (!opened) onCloseRef.current();\n }, [opened]);\n\n /**\n * Detect the width of the container when the select was opened and update\n * it when either the container size or the window size has been changed.\n */\n const resizeHandler = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (!opened || !containerRef.current) return;\n const nextWidth = containerRef.current.getBoundingClientRect().width;\n if (width === nextWidth) return;\n setWidth(nextWidth);\n });\n }, [opened, containerRef, width]);\n useBrowserLayoutEffect(() => resizeHandler(), [resizeHandler]);\n useResizeObserver(containerRef, resizeHandler);\n useEvent(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'resize',\n resizeHandler\n );\n\n // Replace the aria-haspopup attribute from menu to listbox\n useBrowserLayoutEffect(() => {\n if (!containerRef.current) return;\n containerRef.current.setAttribute('aria-haspopup', 'listbox');\n }, []);\n\n const listBoxId = useMemo(\n () => `listbox-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n\n const blurHandler = useCallback(\n (e) => {\n if (!opened) onBlur(e);\n },\n [onBlur, opened]\n );\n\n const onDelete = useCallback(\n (v: string) => {\n if (!multiple) return;\n setForwardedValue((forwardedValue || []).filter((item) => item !== v));\n },\n [forwardedValue, multiple, setForwardedValue]\n );\n\n const prevSelectedOptions = useRef<Option[]>(initSelectedOptions);\n\n const selectedOptions = useMemo<\n Array<{ title: string; value: string }>\n >(() => {\n if (!forwardedValue) return [];\n const values = Array.isArray(forwardedValue)\n ? forwardedValue\n : [forwardedValue];\n const items = [...options, ...prevSelectedOptions.current];\n return values.map((v) => {\n const option = items.find((item) => item.value === v);\n return {\n title: option ? option.title : v,\n value: v,\n };\n });\n }, [forwardedValue, options]);\n\n useEffect(() => {\n prevSelectedOptions.current = selectedOptions;\n }, [selectedOptions]);\n\n const toggleContent = useMemo(() => {\n if (multiple) {\n if (!forwardedValue || forwardedValue.length === 0) {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n return (\n <ToggleList>\n {selectedOptions.map(({ title, value: v }) => (\n <ToggleListItem\n key={v}\n disabled={disabled}\n right={\n !disabled ? (\n <DeleteButton\n onClick={(e) => {\n onDelete(v);\n e.stopPropagation();\n }}\n onKeyDown={(e) => e.stopPropagation()}\n aria-label={`${locale.deleteLabel} ${title}`}\n aria-hidden\n >\n <Close />\n </DeleteButton>\n ) : undefined\n }\n aria-hidden\n >\n {title}\n </ToggleListItem>\n ))}\n </ToggleList>\n );\n }\n if (!forwardedValue) {\n return <Placeholder>{placeholder}</Placeholder>;\n }\n const option = selectedOptions.find(\n (item) => item.value === forwardedValue\n );\n return (\n <Title disabled={disabled} unbordered={unbordered}>\n {option ? option.title : ''}\n </Title>\n );\n }, [\n disabled,\n forwardedValue,\n locale.deleteLabel,\n multiple,\n onDelete,\n placeholder,\n selectedOptions,\n unbordered,\n ]);\n\n const toggleShowClearButton = useMemo(() => {\n if (!clearVisible) return false;\n if (multiple) return forwardedValue && forwardedValue.length > 0;\n return !!forwardedValue;\n }, [clearVisible, forwardedValue, multiple]);\n\n const toggleOnClear = useCallback(() => {\n setForwardedValue(multiple ? [] : null);\n if (!containerRef.current) return;\n containerRef.current.focus();\n }, [containerRef, multiple, setForwardedValue]);\n\n const toggleRightValue = useMemo(() => {\n if (loading) return <Loading />;\n if (toggleShowClearButton) {\n return (\n <Button\n type='ghost'\n wide='never'\n size='small'\n disabled={disabled}\n onClick={(e) => {\n toggleOnClear();\n e.stopPropagation();\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter') toggleOnClear();\n e.stopPropagation();\n }}\n aria-label={locale.clearLabel}\n >\n <ClearIcon />\n </Button>\n );\n }\n return (\n right || (\n <ToggleIconContainer unbordered={unbordered}>\n {opened ? <Up /> : <Down />}\n </ToggleIconContainer>\n )\n );\n }, [\n disabled,\n loading,\n locale.clearLabel,\n opened,\n right,\n toggleOnClear,\n toggleShowClearButton,\n unbordered,\n ]);\n\n const toggleRightHasPaddingValue = useMemo(() => {\n if (loading) return true;\n if (toggleShowClearButton) return false;\n return right ? rightHasPadding : true;\n }, [loading, right, rightHasPadding, toggleShowClearButton]);\n\n const onSelect = useCallback(\n (v: string) => {\n if (multiple) {\n // Delete the value because it was already selected\n if ((forwardedValue || []).includes(v)) {\n setForwardedValue(\n (forwardedValue || []).filter((item) => item !== v)\n );\n return;\n }\n\n // Add a new value if the number of selected items is less than max\n if (\n maxSelectedItems === 0 ||\n (forwardedValue || []).length < maxSelectedItems\n ) {\n setForwardedValue([...(forwardedValue || []), v]);\n return;\n }\n return;\n }\n setForwardedValue(v);\n },\n [forwardedValue, maxSelectedItems, multiple, setForwardedValue]\n );\n\n const windowSize = useSize();\n const isMinXs = useIsMinWidth('xs');\n const fontSize = useFontSize(document.body);\n const { theme } = useTheme();\n\n const scaleFactor = useMemo(() => {\n const s = size || 'medium';\n return ['small', 'medium', 'large'].includes(s)\n ? theme.sizes[s]\n : Number(s.replace(/^([0-9]+(\\.[0-9]+)?).*/, '$1')) || 1; // Extract the number\n }, [size, theme.sizes]);\n\n const paddingBottom = useMemo(() => {\n const paddingEm = isMinXs\n ? theme.menuPaddingVertical\n : theme.modalBodyPaddingVertical[0];\n return paddingEm * fontSize * scaleFactor;\n }, [\n isMinXs,\n theme.menuPaddingVertical,\n theme.modalBodyPaddingVertical,\n fontSize,\n scaleFactor,\n ]);\n\n const paddingTop = useMemo(\n () => (searchVisible ? 5 * scaleFactor : paddingBottom),\n [searchVisible, scaleFactor, paddingBottom]\n );\n\n const searchInputHeight = useMemo(\n () =>\n searchVisible\n ? (theme.baseHeight + theme.menuPaddingVertical) *\n fontSize *\n scaleFactor\n : 0,\n [\n searchVisible,\n theme.baseHeight,\n theme.menuPaddingVertical,\n fontSize,\n scaleFactor,\n ]\n );\n\n const itemSize = useMemo(\n () => theme.menuItemHeight * fontSize * scaleFactor,\n [theme.menuItemHeight, fontSize, scaleFactor]\n );\n\n const height = useMemo(() => {\n // Modal\n if (!isMinXs) {\n const maxHeight =\n windowSize.height -\n theme.modalHeaderHeight * fontSize * scaleFactor -\n searchInputHeight;\n const curHeight =\n options.length * itemSize + paddingTop + paddingBottom;\n return curHeight < maxHeight ? curHeight : maxHeight;\n }\n // Popover\n const count =\n options.length < visibleCount ? options.length : visibleCount;\n return count * itemSize + paddingTop + paddingBottom;\n }, [\n isMinXs,\n options.length,\n visibleCount,\n itemSize,\n windowSize.height,\n theme.modalHeaderHeight,\n fontSize,\n scaleFactor,\n searchInputHeight,\n paddingTop,\n paddingBottom,\n ]);\n\n const scrollHandler = useRWLoadNext({\n itemCount: options.length,\n threshold,\n itemSize,\n paddingTop,\n height,\n onLoadNext,\n });\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const InnerElement = useCallback(\n ({ style, ...innerElementRest }) => (\n <div\n style={{\n ...style,\n height: `${\n parseFloat(style.height) + paddingTop + paddingBottom\n }px`,\n }}\n role='listbox'\n id={listBoxId}\n {...innerElementRest}\n />\n ),\n [listBoxId, paddingBottom, paddingTop]\n );\n\n const listItemFn = useCallback(\n ({ index, style }) => {\n const {\n title: optionTitle,\n value: optionValue,\n onClick: optionOnClick,\n ...restOption\n } = options[index];\n return (\n <MenuItem\n style={{\n ...style,\n top: `${\n parseFloat(style.top ? style.top.toString() : '0') + paddingTop\n }px`,\n }}\n selected={\n (multiple &&\n (forwardedValue || []).includes(optionValue || '')) ||\n (!multiple && forwardedValue === optionValue)\n }\n onClick={(e) => {\n if (!optionValue) return;\n onSelect(optionValue);\n\n // Focus the input.\n // Otherwise, if multiple is false and the user presses enter to select an item,\n // the input will lose focus.\n if (containerRef.current && !multiple) {\n containerRef.current.focus();\n }\n\n if (optionOnClick) optionOnClick(e);\n }}\n role='option'\n aria-selected={\n (multiple &&\n (forwardedValue || []).includes(optionValue || '')) ||\n (!multiple && forwardedValue === optionValue)\n }\n {...restOption}\n >\n {optionTitle}\n </MenuItem>\n );\n },\n [containerRef, forwardedValue, multiple, onSelect, options, paddingTop]\n );\n\n return (\n <>\n <SelectContainer\n opened={opened}\n unbordered={unbordered}\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 onBlur={blurHandler}\n role='combobox'\n aria-disabled={disabled}\n aria-busy={loading}\n aria-haspopup='listbox'\n aria-owns={listBoxId}\n {...rest}\n ref={mergedContainerRef}\n >\n <ToggleContainer>\n {left && (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal: 0.8,\n baseHeight: t.selectToggleListItemHeight / t.sizes.small,\n })}\n >\n <ToggleLeftAddon hasPadding={leftHasPadding}>\n {left}\n </ToggleLeftAddon>\n </ThemeOverrider>\n )}\n\n <ToggleContent\n hasLeft={!!left}\n hasRight={!!right}\n unbordered={unbordered}\n >\n {toggleContent}\n </ToggleContent>\n\n {toggleRightValue && (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal: 0.8,\n baseHeight: t.selectToggleListItemHeight / t.sizes.small,\n })}\n >\n <ToggleRightAddon hasPadding={toggleRightHasPaddingValue}>\n {toggleRightValue}\n </ToggleRightAddon>\n </ThemeOverrider>\n )}\n </ToggleContainer>\n </SelectContainer>\n\n <SelectMenu\n trigger={containerRef}\n visible={opened}\n onClose={() => setOpened(false)}\n size={size}\n width={width}\n closeOnSelect={!multiple}\n modalTitle={placeholder}\n placement={placement}\n >\n {searchVisible && (\n <InputSearchContainer>\n <InputSearch {...searchProps} />\n </InputSearchContainer>\n )}\n\n {options.length > 0 ? (\n <FixedSizeList\n width='100%'\n height={height}\n itemSize={itemSize}\n itemCount={options.length}\n overscanCount={overscanCount}\n onScroll={({ scrollOffset }) => scrollHandler(scrollOffset)}\n innerElementType={InnerElement}\n >\n {listItemFn}\n </FixedSizeList>\n ) : (\n <NotFound>{notFoundText}</NotFound>\n )}\n </SelectMenu>\n </>\n );\n }\n);\n\nSelect.displayName = 'Select';\n\nexport default Select;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAMA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AAUA,IAAAQ,OAAA,GAAAC,uBAAA,CAAAT,OAAA;AAQA,IAAAU,YAAA,GAAAV,OAAA;AACA,IAAAW,OAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,MAAA,GAAAZ,OAAA;AACA,IAAAa,YAAA,GAAAX,sBAAA,CAAAF,OAAA;AACA,IAAAc,cAAA,GAAAZ,sBAAA,CAAAF,OAAA;AACA,IAAAe,KAAA,GAAAb,sBAAA,CAAAF,OAAA;AACA,IAAAgB,SAAA,GAAAd,sBAAA,CAAAF,OAAA;AAEA,IAAAiB,IAAA,GAAAf,sBAAA,CAAAF,OAAA;AACA,IAAAkB,cAAA,GAAAhB,sBAAA,CAAAF,OAAA;AAAoE,IAAAmB,SAAA;EAAAC,UAAA;EAAAC,UAAA;AAAA,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAzC,wBAAAyC,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAxD,uBAAAmE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAf,UAAA,GAAAe,GAAA,gBAAAA,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAf,MAAA,CAAAiB,SAAA,CAAAb,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAS,KAAA,OAAAL,SAAA;AAAA,SAAAM,QAAA9B,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAoB,IAAA,CAAA/B,CAAA,OAAAW,MAAA,CAAAqB,qBAAA,QAAAC,CAAA,GAAAtB,MAAA,CAAAqB,qBAAA,CAAAhC,CAAA,GAAAE,CAAA,KAAA+B,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAhC,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAiC,UAAA,OAAAhC,CAAA,CAAAiC,IAAA,CAAAP,KAAA,CAAA1B,CAAA,EAAA8B,CAAA,YAAA9B,CAAA;AAAA,SAAAkC,cAAArC,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAC,CAAA,WAAAqB,SAAA,CAAAtB,CAAA,IAAAsB,SAAA,CAAAtB,CAAA,QAAAA,CAAA,OAAA4B,OAAA,CAAAnB,MAAA,CAAAR,CAAA,OAAAmC,OAAA,WAAApC,CAAA,IAAAqC,eAAA,CAAAvC,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAA6B,yBAAA,GAAA7B,MAAA,CAAA8B,gBAAA,CAAAzC,CAAA,EAAAW,MAAA,CAAA6B,yBAAA,CAAArC,CAAA,KAAA2B,OAAA,CAAAnB,MAAA,CAAAR,CAAA,GAAAmC,OAAA,WAAApC,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAAA,SAAAuC,gBAAApB,GAAA,EAAAQ,GAAA,EAAAe,KAAA,IAAAf,GAAA,GAAAgB,cAAA,CAAAhB,GAAA,OAAAA,GAAA,IAAAR,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAO,GAAA,EAAAQ,GAAA,IAAAe,KAAA,EAAAA,KAAA,EAAAP,UAAA,QAAAS,YAAA,QAAAC,QAAA,oBAAA1B,GAAA,CAAAQ,GAAA,IAAAe,KAAA,WAAAvB,GAAA;AAAA,SAAAwB,eAAAxC,CAAA,QAAAc,CAAA,GAAA6B,YAAA,CAAA3C,CAAA,gCAAAE,OAAA,CAAAY,CAAA,IAAAA,CAAA,GAAAA,CAAA;AAAA,SAAA6B,aAAA3C,CAAA,EAAAD,CAAA,oBAAAG,OAAA,CAAAF,CAAA,MAAAA,CAAA,SAAAA,CAAA,MAAAH,CAAA,GAAAG,CAAA,CAAA4C,MAAA,CAAAC,WAAA,kBAAAhD,CAAA,QAAAiB,CAAA,GAAAjB,CAAA,CAAAgB,IAAA,CAAAb,CAAA,EAAAD,CAAA,gCAAAG,OAAA,CAAAY,CAAA,UAAAA,CAAA,YAAAgC,SAAA,yEAAA/C,CAAA,GAAAgD,MAAA,GAAAC,MAAA,EAAAhD,CAAA;AAAA,SAAAiD,mBAAAC,GAAA,WAAAC,kBAAA,CAAAD,GAAA,KAAAE,gBAAA,CAAAF,GAAA,KAAAG,2BAAA,CAAAH,GAAA,KAAAI,kBAAA;AAAA,SAAAA,mBAAA,cAAAR,SAAA;AAAA,SAAAM,iBAAAG,IAAA,eAAAX,MAAA,oBAAAW,IAAA,CAAAX,MAAA,CAAAY,QAAA,aAAAD,IAAA,+BAAAE,KAAA,CAAAC,IAAA,CAAAH,IAAA;AAAA,SAAAJ,mBAAAD,GAAA,QAAAO,KAAA,CAAAE,OAAA,CAAAT,GAAA,UAAAU,iBAAA,CAAAV,GAAA;AAAA,SAAAW,eAAAX,GAAA,EAAApC,CAAA,WAAAgD,eAAA,CAAAZ,GAAA,KAAAa,qBAAA,CAAAb,GAAA,EAAApC,CAAA,KAAAuC,2BAAA,CAAAH,GAAA,EAAApC,CAAA,KAAAkD,gBAAA;AAAA,SAAAA,iBAAA,cAAAlB,SAAA;AAAA,SAAAO,4BAAAvB,CAAA,EAAAmC,MAAA,SAAAnC,CAAA,qBAAAA,CAAA,sBAAA8B,iBAAA,CAAA9B,CAAA,EAAAmC,MAAA,OAAA5D,CAAA,GAAAG,MAAA,CAAAiB,SAAA,CAAAyC,QAAA,CAAArD,IAAA,CAAAiB,CAAA,EAAAqC,KAAA,aAAA9D,CAAA,iBAAAyB,CAAA,CAAAsC,WAAA,EAAA/D,CAAA,GAAAyB,CAAA,CAAAsC,WAAA,CAAAC,IAAA,MAAAhE,CAAA,cAAAA,CAAA,mBAAAoD,KAAA,CAAAC,IAAA,CAAA5B,CAAA,OAAAzB,CAAA,+DAAAiE,IAAA,CAAAjE,CAAA,UAAAuD,iBAAA,CAAA9B,CAAA,EAAAmC,MAAA;AAAA,SAAAL,kBAAAV,GAAA,EAAAqB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAArB,GAAA,CAAA5B,MAAA,EAAAiD,GAAA,GAAArB,GAAA,CAAA5B,MAAA,WAAAR,CAAA,MAAA0D,IAAA,OAAAf,KAAA,CAAAc,GAAA,GAAAzD,CAAA,GAAAyD,GAAA,EAAAzD,CAAA,IAAA0D,IAAA,CAAA1D,CAAA,IAAAoC,GAAA,CAAApC,CAAA,UAAA0D,IAAA;AAAA,SAAAT,sBAAAhE,CAAA,EAAA0E,CAAA,QAAAzE,CAAA,WAAAD,CAAA,gCAAA6C,MAAA,IAAA7C,CAAA,CAAA6C,MAAA,CAAAY,QAAA,KAAAzD,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAQ,CAAA,EAAAS,CAAA,EAAAH,CAAA,EAAAJ,CAAA,OAAAmE,CAAA,OAAA5C,CAAA,iBAAAhB,CAAA,IAAAd,CAAA,GAAAA,CAAA,CAAAa,IAAA,CAAAd,CAAA,GAAA4E,IAAA,QAAAF,CAAA,QAAAjE,MAAA,CAAAR,CAAA,MAAAA,CAAA,UAAA0E,CAAA,uBAAAA,CAAA,IAAA7E,CAAA,GAAAiB,CAAA,CAAAD,IAAA,CAAAb,CAAA,GAAA4E,IAAA,MAAArE,CAAA,CAAA0B,IAAA,CAAApC,CAAA,CAAA0C,KAAA,GAAAhC,CAAA,CAAAe,MAAA,KAAAmD,CAAA,GAAAC,CAAA,iBAAA3E,CAAA,IAAA+B,CAAA,OAAAzB,CAAA,GAAAN,CAAA,yBAAA2E,CAAA,YAAA1E,CAAA,eAAAW,CAAA,GAAAX,CAAA,cAAAQ,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAmB,CAAA,QAAAzB,CAAA,aAAAE,CAAA;AAAA,SAAAuD,gBAAAZ,GAAA,QAAAO,KAAA,CAAAE,OAAA,CAAAT,GAAA,UAAAA,GAAA;AAAA,SAAA2B,yBAAAtD,MAAA,EAAAuD,QAAA,QAAAvD,MAAA,yBAAAH,MAAA,GAAA2D,6BAAA,CAAAxD,MAAA,EAAAuD,QAAA,OAAAtD,GAAA,EAAAV,CAAA,MAAAN,MAAA,CAAAqB,qBAAA,QAAAmD,gBAAA,GAAAxE,MAAA,CAAAqB,qBAAA,CAAAN,MAAA,QAAAT,CAAA,MAAAA,CAAA,GAAAkE,gBAAA,CAAA1D,MAAA,EAAAR,CAAA,MAAAU,GAAA,GAAAwD,gBAAA,CAAAlE,CAAA,OAAAgE,QAAA,CAAAG,OAAA,CAAAzD,GAAA,uBAAAhB,MAAA,CAAAiB,SAAA,CAAAyD,oBAAA,CAAArE,IAAA,CAAAU,MAAA,EAAAC,GAAA,aAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAJ,MAAA;AAAA,SAAA2D,8BAAAxD,MAAA,EAAAuD,QAAA,QAAAvD,MAAA,yBAAAH,MAAA,gBAAAI,GAAA,IAAAD,MAAA,QAAAf,MAAA,CAAAiB,SAAA,CAAAb,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,SAAAsD,QAAA,CAAAG,OAAA,CAAAzD,GAAA,kBAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAJ,MAAA;AAAA,SAAA+D,uBAAAC,OAAA,EAAAC,GAAA,SAAAA,GAAA,IAAAA,GAAA,GAAAD,OAAA,CAAAjB,KAAA,cAAA3D,MAAA,CAAA8E,MAAA,CAAA9E,MAAA,CAAA8B,gBAAA,CAAA8C,OAAA,IAAAC,GAAA,IAAA9C,KAAA,EAAA/B,MAAA,CAAA8E,MAAA,CAAAD,GAAA;AAuKpE,IAAME,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAIC,CAAC,EAAK;EAC1C,IAAMC,eAAe,GACnB,CAACD,CAAC,CAACE,KAAK,CAACC,UAAU,GAAGH,CAAC,CAACE,KAAK,CAACE,0BAA0B,IAAI,CAAC;EAE/D,WAAOC,UAAG,EAAA5H,eAAA,KAAAA,eAAA,GAAAkH,sBAAA,iDACQM,eAAe;AAEnC,CAAC;AAED,IAAMK,2BAA2B,GAAG,SAA9BA,2BAA2BA,CAAIN,CAAC;EAAA,OACpCA,CAAC,CAACO,MAAM,IACR,CAACP,CAAC,CAACQ,UAAU,QACbH,UAAG,EAAA3H,gBAAA,KAAAA,gBAAA,GAAAiH,sBAAA,0EACe,IAAAc,YAAG,EAACT,CAAC,CAACE,KAAK,CAACQ,qBAAqB,CAAC,EACvB,IAAAD,YAAG,EAACT,CAAC,CAACE,KAAK,CAACS,qBAAqB,CAAC,CAC9D;AAAA;AAEH,IAAMC,+BAA+B,GAAG,SAAlCA,+BAA+BA,CAAIZ,CAAC;EAAA,OACxCA,CAAC,CAACQ,UAAU,QACZH,UAAG,EAAA1H,gBAAA,KAAAA,gBAAA,GAAAgH,sBAAA,0EAGC,IAAAkB,wBAAgB,EAAC,kBAAkB,CAAC,CAACb,CAAC,CAAC,CAC1C;AAAA;AAEH,IAAMc,oCAAoC,GAAG,SAAvCA,oCAAoCA,CAAId,CAAC;EAAA,OAC7CA,CAAC,CAACQ,UAAU,IACZ,CAACR,CAAC,CAACe,QAAQ,QACXV,UAAG,EAAAzH,gBAAA,KAAAA,gBAAA,GAAA+G,sBAAA,4HAIuB,IAAAc,YAAG,EAACT,CAAC,CAACE,KAAK,CAACc,uBAAuB,CAAC,CAG7D;AAAA;AAOI,IAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,IAAAE,kBAAM,EACnCC,qBAAc,EACd,IAAAC,uBAAgB,EAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,CACrD,CAAC,CAAAxI,gBAAA,KAAAA,gBAAA,GAAA8G,sBAAA,oMACW,UAACK,CAAC;EAAA,OAAM,CAACA,CAAC,CAACe,QAAQ,GAAG,SAAS,GAAG,aAAa;AAAA,CAAC,EAO5C,UAACf,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACC,UAAU;AAAA,GAErCJ,4BAA4B,EAC5BO,2BAA2B,EAC3BM,+BAA+B,EAC/BE,oCAAoC,CACvC;AAKD,IAAMQ,UAAU,GAAG,IAAAH,kBAAM,EAACI,gBAAI,EAAE,IAAAF,uBAAgB,EAAC,OAAO,CAAC,CAAC,CAAAvI,gBAAA,KAAAA,gBAAA,GAAA6G,sBAAA,+GAKtD6B,QAAC,CAACC,GAAG,CAACC,EAAE,EACC,UAAC1B,CAAC;EAAA,OAAKA,CAAC,CAAC2B,KAAK;AAAA,EAE1B;AAED,IAAMC,QAAQ,GAAGT,kBAAM,CAACU,GAAG,CAAA9I,gBAAA,KAAAA,gBAAA,GAAA4G,sBAAA,gHACf,UAACK,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAAC4B,cAAc;AAAA,GAI1B,UAAC9B,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAAC6B,sBAAsB;AAAA,GACzC,UAAC/B,CAAC;EAAA,OAAK,IAAAS,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC8B,uBAAuB,CAAC;AAAA,EACrD;AAED,IAAMC,oBAAoB,GAAGd,kBAAM,CAACU,GAAG,CAAA7I,gBAAA,KAAAA,gBAAA,GAAA2G,sBAAA,6CAC1B,UAACK,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACgC,mBAAmB;AAAA,GACzC,UAAClC,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAAC6B,sBAAsB;AAAA,EAC1C;AAEM,IAAMI,eAAe,GAAAjB,OAAA,CAAAiB,eAAA,GAAGhB,kBAAM,CAACU,GAAG,CAAA5I,gBAAA,KAAAA,gBAAA,GAAA0G,sBAAA,qFAKxC;AAED,IAAMyC,6BAA6B,GAAG,SAAhCA,6BAA6BA,CAAIpC,CAAC;EAAA,OACtC,CAACA,CAAC,CAACqC,OAAO,QACVhC,UAAG,EAAAnH,iBAAA,KAAAA,iBAAA,GAAAyG,sBAAA,wCACeK,CAAC,CAACE,KAAK,CAAC6B,sBAAsB,CAC/C;AAAA;AAEH,IAAMO,8BAA8B,GAAG,SAAjCA,8BAA8BA,CAAItC,CAAC;EAAA,OACvC,CAACA,CAAC,CAACuC,QAAQ,IACX,CAACvC,CAAC,CAACQ,UAAU,QACbH,UAAG,EAAAlH,iBAAA,KAAAA,iBAAA,GAAAwG,sBAAA,yCACgBK,CAAC,CAACE,KAAK,CAAC6B,sBAAsB,CAChD;AAAA;AAOI,IAAMS,aAAa,GAAAtB,OAAA,CAAAsB,aAAA,GAAG,IAAArB,kBAAM,EACjC,KAAK,EACL,IAAAE,uBAAgB,EAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CACtD,CAAC,CAAAjI,iBAAA,KAAAA,iBAAA,GAAAuG,sBAAA,kDAEGyC,6BAA6B,EAC7BE,8BAA8B,EAC9BG,sBAAc,CACjB;AAEM,IAAMC,WAAW,GAAAxB,OAAA,CAAAwB,WAAA,GAAGvB,kBAAM,CAACwB,IAAI,CAAAtJ,iBAAA,KAAAA,iBAAA,GAAAsG,sBAAA,oCAC3B,UAACK,CAAC;EAAA,OAAK,IAAAS,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC0C,qBAAqB,CAAC;AAAA,GAChDH,sBAAc,CACjB;AAED,IAAMI,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAI7C,CAAC;EAAA,OAC9BA,CAAC,CAACQ,UAAU,QACZH,UAAG,EAAA/G,iBAAA,KAAAA,iBAAA,GAAAqG,sBAAA,8CAEC,CAACK,CAAC,CAACe,QAAQ,cAAA+B,MAAA,CAAc,IAAArC,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC6C,YAAY,CAAC,MAAG,CACxD;AAAA;AAEH,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIhD,CAAC;EAAA,OAC5BA,CAAC,CAACe,QAAQ,QACVV,UAAG,EAAA9G,iBAAA,KAAAA,iBAAA,GAAAoG,sBAAA,+BACQ,IAAAc,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC+C,sBAAsB,CAAC,CAC7C;AAAA;AAGI,IAAMC,KAAK,GAAAhC,OAAA,CAAAgC,KAAA,GAAG,IAAA/B,kBAAM,EACzB,MAAM,EACN,IAAAE,uBAAgB,EAAC,UAAU,EAAE,YAAY,CAC3C,CAAC,CAAA7H,iBAAA,KAAAA,iBAAA,GAAAmG,sBAAA,sDACU,UAACK,CAAC;EAAA,OAAK,IAAAS,YAAG,EAACT,CAAC,CAACE,KAAK,CAACiD,SAAS,CAAC;AAAA,GACpCN,qBAAqB,EACrBG,mBAAmB,EACnBP,sBAAc,CACjB;AAGD,IAAMW,cAAc,GAAG,IAAAjC,kBAAM,EAC3BkC,eAAG,EACH,IAAAhC,uBAAgB,EAAC,UAAU,CAC7B,CAAC,CAAA5H,iBAAA,KAAAA,iBAAA,GAAAkG,sBAAA,yGAKW,UAACK,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACE,0BAA0B;AAAA,GACjD4C,mBAAmB,CACtB;AAED,IAAMM,UAAU,GAAGnC,kBAAM,CAACU,GAAG,CAAAnI,iBAAA,KAAAA,iBAAA,GAAAiG,sBAAA,6LAKf,UAACK,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACqD,uBAAuB;AAAA,GAC9C,UAACvD,CAAC;EAAA,OAAK,CAACA,CAAC,CAACE,KAAK,CAACqD,uBAAuB;AAAA,GAG7B,UAACvD,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACqD,uBAAuB;AAAA,GAC9C,UAACvD,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACqD,uBAAuB;AAAA,EAE7C;AAED,IAAMC,YAAY,GAAGrC,kBAAM,CAACsC,MAAM,CAAA9J,iBAAA,KAAAA,iBAAA,GAAAgG,sBAAA,gQAC9B+D,yBAAiB,EAOV,UAAC1D,CAAC;EAAA,OAAK,IAAAS,YAAG,EAACT,CAAC,CAACE,KAAK,CAACyD,iCAAiC,CAAC;AAAA,GAKjD,UAAC3D,CAAC;EAAA,OAAK,IAAAS,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC0D,sCAAsC,CAAC;AAAA,GAIrE,IAAA/C,wBAAgB,EAAC,OAAO,CAAC,CAC5B;AAED,IAAMgD,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAI7D,CAAC;EAAA,OACnCA,CAAC,CAACQ,UAAU,QACZH,UAAG,EAAAzG,iBAAA,KAAAA,iBAAA,GAAA+F,sBAAA,uEAGC,CAACK,CAAC,CAACe,QAAQ,cAAA+B,MAAA,CAAc,IAAArC,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC6C,YAAY,CAAC,MAAG,CACxD;AAAA;AAKI,IAAMe,mBAAmB,GAAA5C,OAAA,CAAA4C,mBAAA,GAAG,IAAA3C,kBAAM,EACvC,MAAM,EACN,IAAAE,uBAAgB,EAAC,YAAY,CAC/B,CAAC,CAAAxH,iBAAA,KAAAA,iBAAA,GAAA8F,sBAAA,uDACU,UAACK,CAAC;EAAA,OAAK,IAAAS,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC6D,eAAe,CAAC;AAAA,GAE1CF,0BAA0B,CAC7B;AAEM,IAAMG,SAAS,GAAA9C,OAAA,CAAA8C,SAAA,GAAG,IAAA7C,kBAAM,EAAC8C,kBAAW,CAAC,CAAAnK,iBAAA,KAAAA,iBAAA,GAAA6F,sBAAA,+CAE3C;AAKD,IAAMuE,KAAK,GAAG,IAAA/C,kBAAM,EAAC,MAAM,EAAE,IAAAE,uBAAgB,EAAC,YAAY,CAAC,CAAC,CAAAtH,iBAAA,KAAAA,iBAAA,GAAA4F,sBAAA,uIAIjD,UAACK,CAAC;EAAA,OAAK,IAAAS,YAAG,EAACT,CAAC,CAACE,KAAK,CAAC0C,qBAAqB,CAAC;AAAA,EAKnD;AAEM,IAAMuB,eAAe,GAAAjD,OAAA,CAAAiD,eAAA,GAAG,IAAAhD,kBAAM,EAAC+C,KAAK,CAAC,CAAAlK,iBAAA,KAAAA,iBAAA,GAAA2F,sBAAA,6CACzB,UAACK,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACkE,2BAA2B;AAAA,GACzD,UAACpE,CAAC;EAAA,OACFA,CAAC,CAACqE,UAAU,QACZhE,UAAG,EAAApG,iBAAA,KAAAA,iBAAA,GAAA0F,sBAAA,4CACeK,CAAC,CAACE,KAAK,CAAC6B,sBAAsB,CAC/C;AAAA,EACJ;AAEM,IAAMuC,gBAAgB,GAAApD,OAAA,CAAAoD,gBAAA,GAAG,IAAAnD,kBAAM,EAAC+C,KAAK,CAAC,CAAAhK,iBAAA,KAAAA,iBAAA,GAAAyF,sBAAA,4CAC3B,UAACK,CAAC;EAAA,OAAKA,CAAC,CAACE,KAAK,CAACkE,2BAA2B;AAAA,GACxD,UAACpE,CAAC;EAAA,OACFA,CAAC,CAACqE,UAAU,QACZhE,UAAG,EAAAlG,iBAAA,KAAAA,iBAAA,GAAAwF,sBAAA,6CACgBK,CAAC,CAACE,KAAK,CAAC6B,sBAAsB,CAChD;AAAA,EACJ;;AAED;AACA;AACA;AACA,IAAMwC,MAAM,gBAAG,IAAAC,kBAAU,EACvB,UAAAC,IAAA,EAkCEC,GAAG,EACA;EAAA,IAAAC,YAAA,GAAAF,IAAA,CAjCDG,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,EAAE,GAAAA,YAAA;IAAAE,qBAAA,GAAAJ,IAAA,CACZK,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,EAAE,GAAAA,qBAAA;IACxBE,IAAI,GAAAN,IAAA,CAAJM,IAAI;IAAAC,mBAAA,GAAAP,IAAA,CACJQ,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,KAAK,GAAAA,mBAAA;IACtBE,KAAK,GAAAT,IAAA,CAALS,KAAK;IAAAC,oBAAA,GAAAV,IAAA,CACLW,eAAe;IAAfA,eAAe,GAAAD,oBAAA,cAAG,KAAK,GAAAA,oBAAA;IACvBE,WAAW,GAAAZ,IAAA,CAAXY,WAAW;IAAAC,kBAAA,GAAAb,IAAA,CACXc,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,KAAK,GAAAA,kBAAA;IAAAE,gBAAA,GAAAf,IAAA,CACrBgB,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAG,CAAC,CAAC,GAAAA,gBAAA;IAAAE,iBAAA,GAAAjB,IAAA,CAChBkB,YAAY;IAAZA,YAAY,GAAAD,iBAAA,cAAG,WAAW,GAAAA,iBAAA;IAAAE,eAAA,GAAAnB,IAAA,CAC1BjE,UAAU;IAAVA,UAAU,GAAAoF,eAAA,cAAG,KAAK,GAAAA,eAAA;IAAAC,YAAA,GAAApB,IAAA,CAClBqB,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,KAAK,GAAAA,YAAA;IAAAE,aAAA,GAAAtB,IAAA,CACf1D,QAAQ;IAARA,QAAQ,GAAAgF,aAAA,cAAG,KAAK,GAAAA,aAAA;IAAAC,cAAA,GAAAvB,IAAA,CAChBwB,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,KAAK,GAAAA,cAAA;IAAAE,aAAA,GAAAzB,IAAA,CACjB0B,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,KAAK,GAAAA,aAAA;IAAAE,iBAAA,GAAA3B,IAAA,CAChB4B,YAAY;IAAZA,YAAY,GAAAD,iBAAA,cAAG,KAAK,GAAAA,iBAAA;IAAAE,cAAA,GAAA7B,IAAA,CACpB8B,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,EAAE,GAAAA,cAAA;IAAAE,iBAAA,GAAA/B,IAAA,CACdgC,YAAY;IAAZA,YAAY,GAAAD,iBAAA,cAAG,CAAC,GAAAA,iBAAA;IAAAE,kBAAA,GAAAjC,IAAA,CAChBkC,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,EAAE,GAAAA,kBAAA;IAAAE,aAAA,GAAAnC,IAAA,CAClBoC,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,KAAK,GAAAA,aAAA;IAAAE,qBAAA,GAAArC,IAAA,CAChBsC,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAG,CAAC,GAAAA,qBAAA;IAAAE,WAAA,GAAAvC,IAAA,CACpBwC,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAGE,yBAAa,GAAAF,WAAA;IACtBjK,KAAK,GAAA0H,IAAA,CAAL1H,KAAK;IACLoK,YAAY,GAAA1C,IAAA,CAAZ0C,YAAY;IACZC,QAAQ,GAAA3C,IAAA,CAAR2C,QAAQ;IAAAC,eAAA,GAAA5C,IAAA,CACR6C,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,eAAA;IAAAE,YAAA,GAAA9C,IAAA,CACrB+C,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,YAAA;IAAAE,WAAA,GAAAhD,IAAA,CAClBiD,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,WAAA;IACjBE,IAAI,GAAAlD,IAAA,CAAJkD,IAAI;IACJC,SAAS,GAAAnD,IAAA,CAATmD,SAAS;IACNC,IAAI,GAAAxI,wBAAA,CAAAoF,IAAA,EAAAnM,SAAA;EAIT,IAAAwP,gBAAA,GAA2C,IAAAC,sBAAe,EAACrD,GAAG,CAAC;IAAAsD,iBAAA,GAAA3J,cAAA,CAAAyJ,gBAAA;IAAxDG,YAAY,GAAAD,iBAAA;IAAEE,kBAAkB,GAAAF,iBAAA;EACvC,IAAAG,SAAA,GAA0B,IAAAC,gBAAQ,EAAC,CAAC,CAAC;IAAAC,UAAA,GAAAhK,cAAA,CAAA8J,SAAA;IAA9BxG,KAAK,GAAA0G,UAAA;IAAEC,QAAQ,GAAAD,UAAA;EACtB,IAAAE,UAAA,GAA4B,IAAAH,gBAAQ,EAACjC,QAAQ,CAAC;IAAAqC,UAAA,GAAAnK,cAAA,CAAAkK,UAAA;IAAvChI,MAAM,GAAAiI,UAAA;IAAEC,SAAS,GAAAD,UAAA;EACxB;EACA,IAAAE,kBAAA,GAA4C,IAAAC,wBAAiB,EAAM;MACjE5L,KAAK,EAALA,KAAK;MACLoK,YAAY,EAAZA,YAAY;MACZC,QAAQ,EAARA;IACF,CAAC,CAAC;IAAAwB,mBAAA,GAAAvK,cAAA,CAAAqK,kBAAA;IAJKG,cAAc,GAAAD,mBAAA;IAAEE,iBAAiB,GAAAF,mBAAA;EAMxC,IAAAG,iBAAS,EAAC,YAAM;IAAA,IAAAC,qBAAA;IACd,IAAI/C,SAAS,EAAE,CAAA+C,qBAAA,GAAAf,YAAY,CAACgB,OAAO,cAAAD,qBAAA,eAApBA,qBAAA,CAAsBE,KAAK,CAAC,CAAC;EAC9C,CAAC,EAAE,CAACjD,SAAS,EAAEgC,YAAY,CAAC,CAAC;EAE7B,IAAMkB,UAAU,GAAG,IAAAC,cAAM,EAAC5B,OAAO,CAAC;EAClC,IAAAuB,iBAAS,EAAC,YAAM;IACdI,UAAU,CAACF,OAAO,GAAGzB,OAAO;EAC9B,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAM6B,OAAO,GAAG,IAAAD,cAAM,EAAC,KAAK,CAAC;EAC7B,IAAAL,iBAAS,EAAC,YAAM;IACd,IAAI,CAACM,OAAO,CAACJ,OAAO,EAAE;MACpBI,OAAO,CAACJ,OAAO,GAAG,IAAI;MACtB;IACF;IACA,IAAI,CAAC1I,MAAM,EAAE4I,UAAU,CAACF,OAAO,CAAC,CAAC;EACnC,CAAC,EAAE,CAAC1I,MAAM,CAAC,CAAC;;EAEZ;AACJ;AACA;AACA;EACI,IAAM+I,aAAa,GAAG,IAAAC,mBAAW,EAAC,YAAM;IACtCC,MAAM,CAACC,qBAAqB,CAAC,YAAM;MACjC,IAAI,CAAClJ,MAAM,IAAI,CAAC0H,YAAY,CAACgB,OAAO,EAAE;MACtC,IAAMS,SAAS,GAAGzB,YAAY,CAACgB,OAAO,CAACU,qBAAqB,CAAC,CAAC,CAAChI,KAAK;MACpE,IAAIA,KAAK,KAAK+H,SAAS,EAAE;MACzBpB,QAAQ,CAACoB,SAAS,CAAC;IACrB,CAAC,CAAC;EACJ,CAAC,EAAE,CAACnJ,MAAM,EAAE0H,YAAY,EAAEtG,KAAK,CAAC,CAAC;EACjC,IAAAiI,6BAAsB,EAAC;IAAA,OAAMN,aAAa,CAAC,CAAC;EAAA,GAAE,CAACA,aAAa,CAAC,CAAC;EAC9D,IAAAO,wBAAiB,EAAC5B,YAAY,EAAEqB,aAAa,CAAC;EAC9C,IAAAQ,eAAQ,EACL,OAAON,MAAM,KAAK,WAAW,GAAGA,MAAM,GAAGO,SAAS,EACnD,QAAQ,EACRT,aACF,CAAC;;EAED;EACA,IAAAM,6BAAsB,EAAC,YAAM;IAC3B,IAAI,CAAC3B,YAAY,CAACgB,OAAO,EAAE;IAC3BhB,YAAY,CAACgB,OAAO,CAACe,YAAY,CAAC,eAAe,EAAE,SAAS,CAAC;EAC/D,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMC,SAAS,GAAG,IAAAC,eAAO,EACvB;IAAA,kBAAApH,MAAA,CAAiBqH,IAAI,CAACC,MAAM,CAAC,CAAC,CAAC1L,QAAQ,CAAC,EAAE,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;EAAA,CAAE,EAC1D,EACF,CAAC;EAED,IAAM0L,WAAW,GAAG,IAAAd,mBAAW,EAC7B,UAAClP,CAAC,EAAK;IACL,IAAI,CAACkG,MAAM,EAAEmH,MAAM,CAACrN,CAAC,CAAC;EACxB,CAAC,EACD,CAACqN,MAAM,EAAEnH,MAAM,CACjB,CAAC;EAED,IAAM+J,QAAQ,GAAG,IAAAf,mBAAW,EAC1B,UAACgB,CAAS,EAAK;IACb,IAAI,CAAC1D,QAAQ,EAAE;IACfiC,iBAAiB,CAAC,CAACD,cAAc,IAAI,EAAE,EAAEtM,MAAM,CAAC,UAACiO,IAAI;MAAA,OAAKA,IAAI,KAAKD,CAAC;IAAA,EAAC,CAAC;EACxE,CAAC,EACD,CAAC1B,cAAc,EAAEhC,QAAQ,EAAEiC,iBAAiB,CAC9C,CAAC;EAED,IAAM2B,mBAAmB,GAAG,IAAArB,cAAM,EAAWtE,mBAAmB,CAAC;EAEjE,IAAM4F,eAAe,GAAG,IAAAR,eAAO,EAE7B,YAAM;IACN,IAAI,CAACrB,cAAc,EAAE,OAAO,EAAE;IAC9B,IAAM8B,MAAM,GAAG1M,KAAK,CAACE,OAAO,CAAC0K,cAAc,CAAC,GACxCA,cAAc,GACd,CAACA,cAAc,CAAC;IACpB,IAAM+B,KAAK,MAAA9H,MAAA,CAAArF,kBAAA,CAAOmH,OAAO,GAAAnH,kBAAA,CAAKgN,mBAAmB,CAACxB,OAAO,EAAC;IAC1D,OAAO0B,MAAM,CAACE,GAAG,CAAC,UAACN,CAAC,EAAK;MACvB,IAAMO,MAAM,GAAGF,KAAK,CAACG,IAAI,CAAC,UAACP,IAAI;QAAA,OAAKA,IAAI,CAACzN,KAAK,KAAKwN,CAAC;MAAA,EAAC;MACrD,OAAO;QACLS,KAAK,EAAEF,MAAM,GAAGA,MAAM,CAACE,KAAK,GAAGT,CAAC;QAChCxN,KAAK,EAAEwN;MACT,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,EAAE,CAAC1B,cAAc,EAAEjE,OAAO,CAAC,CAAC;EAE7B,IAAAmE,iBAAS,EAAC,YAAM;IACd0B,mBAAmB,CAACxB,OAAO,GAAGyB,eAAe;EAC/C,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAErB,IAAMO,aAAa,GAAG,IAAAf,eAAO,EAAC,YAAM;IAClC,IAAIrD,QAAQ,EAAE;MACZ,IAAI,CAACgC,cAAc,IAAIA,cAAc,CAAC/M,MAAM,KAAK,CAAC,EAAE;QAClD,oBAAOnE,OAAA,YAAAuT,aAAA,CAACxI,WAAW,QAAE2C,WAAyB,CAAC;MACjD;MACA,oBACE1N,OAAA,YAAAuT,aAAA,CAAC5H,UAAU,QACRoH,eAAe,CAACG,GAAG,CAAC,UAAAM,KAAA;QAAA,IAAGH,KAAK,GAAAG,KAAA,CAALH,KAAK;UAAST,CAAC,GAAAY,KAAA,CAARpO,KAAK;QAAA,oBAClCpF,OAAA,YAAAuT,aAAA,CAAC9H,cAAc;UACbpH,GAAG,EAAEuO,CAAE;UACPxJ,QAAQ,EAAEA,QAAS;UACnBmE,KAAK,EACH,CAACnE,QAAQ,gBACPpJ,OAAA,YAAAuT,aAAA,CAAC1H,YAAY;YACX4H,OAAO,EAAE,SAAAA,QAAC/Q,CAAC,EAAK;cACdiQ,QAAQ,CAACC,CAAC,CAAC;cACXlQ,CAAC,CAACgR,eAAe,CAAC,CAAC;YACrB,CAAE;YACFC,SAAS,EAAE,SAAAA,UAACjR,CAAC;cAAA,OAAKA,CAAC,CAACgR,eAAe,CAAC,CAAC;YAAA,CAAC;YACtC,iBAAAvI,MAAA,CAAemE,MAAM,CAACsE,WAAW,OAAAzI,MAAA,CAAIkI,KAAK,CAAG;YAC7C;UAAW,gBAEXrT,OAAA,YAAAuT,aAAA,CAAC5T,MAAA,CAAAkU,KAAK,MAAE,CACI,CAAC,GACbzB,SACL;UACD;QAAW,GAEViB,KACa,CAAC;MAAA,CAClB,CACS,CAAC;IAEjB;IACA,IAAI,CAACnC,cAAc,EAAE;MACnB,oBAAOlR,OAAA,YAAAuT,aAAA,CAACxI,WAAW,QAAE2C,WAAyB,CAAC;IACjD;IACA,IAAMyF,MAAM,GAAGJ,eAAe,CAACK,IAAI,CACjC,UAACP,IAAI;MAAA,OAAKA,IAAI,CAACzN,KAAK,KAAK8L,cAAc;IAAA,CACzC,CAAC;IACD,oBACElR,OAAA,YAAAuT,aAAA,CAAChI,KAAK;MAACnC,QAAQ,EAAEA,QAAS;MAACP,UAAU,EAAEA;IAAW,GAC/CsK,MAAM,GAAGA,MAAM,CAACE,KAAK,GAAG,EACpB,CAAC;EAEZ,CAAC,EAAE,CACDjK,QAAQ,EACR8H,cAAc,EACd5B,MAAM,CAACsE,WAAW,EAClB1E,QAAQ,EACRyD,QAAQ,EACRjF,WAAW,EACXqF,eAAe,EACflK,UAAU,CACX,CAAC;EAEF,IAAMiL,qBAAqB,GAAG,IAAAvB,eAAO,EAAC,YAAM;IAC1C,IAAI,CAAC7D,YAAY,EAAE,OAAO,KAAK;IAC/B,IAAIQ,QAAQ,EAAE,OAAOgC,cAAc,IAAIA,cAAc,CAAC/M,MAAM,GAAG,CAAC;IAChE,OAAO,CAAC,CAAC+M,cAAc;EACzB,CAAC,EAAE,CAACxC,YAAY,EAAEwC,cAAc,EAAEhC,QAAQ,CAAC,CAAC;EAE5C,IAAM6E,aAAa,GAAG,IAAAnC,mBAAW,EAAC,YAAM;IACtCT,iBAAiB,CAACjC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;IACvC,IAAI,CAACoB,YAAY,CAACgB,OAAO,EAAE;IAC3BhB,YAAY,CAACgB,OAAO,CAACC,KAAK,CAAC,CAAC;EAC9B,CAAC,EAAE,CAACjB,YAAY,EAAEpB,QAAQ,EAAEiC,iBAAiB,CAAC,CAAC;EAE/C,IAAM6C,gBAAgB,GAAG,IAAAzB,eAAO,EAAC,YAAM;IACrC,IAAIpE,OAAO,EAAE,oBAAOnO,OAAA,YAAAuT,aAAA,CAAC5T,MAAA,CAAAsU,OAAO,MAAE,CAAC;IAC/B,IAAIH,qBAAqB,EAAE;MACzB,oBACE9T,OAAA,YAAAuT,aAAA,CAACpT,OAAA,WAAM;QACL+T,IAAI,EAAC,OAAO;QACZC,IAAI,EAAC,OAAO;QACZnE,IAAI,EAAC,OAAO;QACZ5G,QAAQ,EAAEA,QAAS;QACnBqK,OAAO,EAAE,SAAAA,QAAC/Q,CAAC,EAAK;UACdqR,aAAa,CAAC,CAAC;UACfrR,CAAC,CAACgR,eAAe,CAAC,CAAC;QACrB,CAAE;QACFC,SAAS,EAAE,SAAAA,UAACjR,CAAC,EAAK;UAChB,IAAIA,CAAC,CAAC2B,GAAG,KAAK,OAAO,EAAE0P,aAAa,CAAC,CAAC;UACtCrR,CAAC,CAACgR,eAAe,CAAC,CAAC;QACrB,CAAE;QACF,cAAYpE,MAAM,CAAC8E;MAAW,gBAE9BpU,OAAA,YAAAuT,aAAA,CAAClH,SAAS,MAAE,CACN,CAAC;IAEb;IACA,OACEkB,KAAK,iBACHvN,OAAA,YAAAuT,aAAA,CAACpH,mBAAmB;MAACtD,UAAU,EAAEA;IAAW,GACzCD,MAAM,gBAAG5I,OAAA,YAAAuT,aAAA,CAAC5T,MAAA,CAAA0U,EAAE,MAAE,CAAC,gBAAGrU,OAAA,YAAAuT,aAAA,CAAC5T,MAAA,CAAA2U,IAAI,MAAE,CACP,CACtB;EAEL,CAAC,EAAE,CACDlL,QAAQ,EACR+E,OAAO,EACPmB,MAAM,CAAC8E,UAAU,EACjBxL,MAAM,EACN2E,KAAK,EACLwG,aAAa,EACbD,qBAAqB,EACrBjL,UAAU,CACX,CAAC;EAEF,IAAM0L,0BAA0B,GAAG,IAAAhC,eAAO,EAAC,YAAM;IAC/C,IAAIpE,OAAO,EAAE,OAAO,IAAI;IACxB,IAAI2F,qBAAqB,EAAE,OAAO,KAAK;IACvC,OAAOvG,KAAK,GAAGE,eAAe,GAAG,IAAI;EACvC,CAAC,EAAE,CAACU,OAAO,EAAEZ,KAAK,EAAEE,eAAe,EAAEqG,qBAAqB,CAAC,CAAC;EAE5D,IAAMU,QAAQ,GAAG,IAAA5C,mBAAW,EAC1B,UAACgB,CAAS,EAAK;IACb,IAAI1D,QAAQ,EAAE;MACZ;MACA,IAAI,CAACgC,cAAc,IAAI,EAAE,EAAEuD,QAAQ,CAAC7B,CAAC,CAAC,EAAE;QACtCzB,iBAAiB,CACf,CAACD,cAAc,IAAI,EAAE,EAAEtM,MAAM,CAAC,UAACiO,IAAI;UAAA,OAAKA,IAAI,KAAKD,CAAC;QAAA,EACpD,CAAC;QACD;MACF;;MAEA;MACA,IACExD,gBAAgB,KAAK,CAAC,IACtB,CAAC8B,cAAc,IAAI,EAAE,EAAE/M,MAAM,GAAGiL,gBAAgB,EAChD;QACA+B,iBAAiB,IAAAhG,MAAA,CAAArF,kBAAA,CAAMoL,cAAc,IAAI,EAAE,IAAG0B,CAAC,EAAC,CAAC;QACjD;MACF;MACA;IACF;IACAzB,iBAAiB,CAACyB,CAAC,CAAC;EACtB,CAAC,EACD,CAAC1B,cAAc,EAAE9B,gBAAgB,EAAEF,QAAQ,EAAEiC,iBAAiB,CAChE,CAAC;EAED,IAAMuD,UAAU,GAAG,IAAAC,cAAO,EAAC,CAAC;EAC5B,IAAMC,OAAO,GAAG,IAAAC,oBAAa,EAAC,IAAI,CAAC;EACnC,IAAMC,QAAQ,GAAG,IAAAC,kBAAW,EAACC,QAAQ,CAACC,IAAI,CAAC;EAC3C,IAAAC,SAAA,GAAkB,IAAAC,iBAAQ,EAAC,CAAC;IAApB5M,KAAK,GAAA2M,SAAA,CAAL3M,KAAK;EAEb,IAAM6M,WAAW,GAAG,IAAA7C,eAAO,EAAC,YAAM;IAChC,IAAM8C,CAAC,GAAGrF,IAAI,IAAI,QAAQ;IAC1B,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAACyE,QAAQ,CAACY,CAAC,CAAC,GAC3C9M,KAAK,CAAC+M,KAAK,CAACD,CAAC,CAAC,GACdxP,MAAM,CAACwP,CAAC,CAACE,OAAO,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;EAC9D,CAAC,EAAE,CAACvF,IAAI,EAAEzH,KAAK,CAAC+M,KAAK,CAAC,CAAC;EAEvB,IAAME,aAAa,GAAG,IAAAjD,eAAO,EAAC,YAAM;IAClC,IAAMkD,SAAS,GAAGb,OAAO,GACrBrM,KAAK,CAACgC,mBAAmB,GACzBhC,KAAK,CAACmN,wBAAwB,CAAC,CAAC,CAAC;IACrC,OAAOD,SAAS,GAAGX,QAAQ,GAAGM,WAAW;EAC3C,CAAC,EAAE,CACDR,OAAO,EACPrM,KAAK,CAACgC,mBAAmB,EACzBhC,KAAK,CAACmN,wBAAwB,EAC9BZ,QAAQ,EACRM,WAAW,CACZ,CAAC;EAEF,IAAMO,UAAU,GAAG,IAAApD,eAAO,EACxB;IAAA,OAAO3E,aAAa,GAAG,CAAC,GAAGwH,WAAW,GAAGI,aAAa;EAAA,CAAC,EACvD,CAAC5H,aAAa,EAAEwH,WAAW,EAAEI,aAAa,CAC5C,CAAC;EAED,IAAMI,iBAAiB,GAAG,IAAArD,eAAO,EAC/B;IAAA,OACE3E,aAAa,GACT,CAACrF,KAAK,CAACC,UAAU,GAAGD,KAAK,CAACgC,mBAAmB,IAC7CuK,QAAQ,GACRM,WAAW,GACX,CAAC;EAAA,GACP,CACExH,aAAa,EACbrF,KAAK,CAACC,UAAU,EAChBD,KAAK,CAACgC,mBAAmB,EACzBuK,QAAQ,EACRM,WAAW,CAEf,CAAC;EAED,IAAMS,QAAQ,GAAG,IAAAtD,eAAO,EACtB;IAAA,OAAMhK,KAAK,CAAC4B,cAAc,GAAG2K,QAAQ,GAAGM,WAAW;EAAA,GACnD,CAAC7M,KAAK,CAAC4B,cAAc,EAAE2K,QAAQ,EAAEM,WAAW,CAC9C,CAAC;EAED,IAAMU,MAAM,GAAG,IAAAvD,eAAO,EAAC,YAAM;IAC3B;IACA,IAAI,CAACqC,OAAO,EAAE;MACZ,IAAMmB,SAAS,GACbrB,UAAU,CAACoB,MAAM,GACjBvN,KAAK,CAACyN,iBAAiB,GAAGlB,QAAQ,GAAGM,WAAW,GAChDQ,iBAAiB;MACnB,IAAMK,SAAS,GACbhJ,OAAO,CAAC9I,MAAM,GAAG0R,QAAQ,GAAGF,UAAU,GAAGH,aAAa;MACxD,OAAOS,SAAS,GAAGF,SAAS,GAAGE,SAAS,GAAGF,SAAS;IACtD;IACA;IACA,IAAMG,KAAK,GACTjJ,OAAO,CAAC9I,MAAM,GAAG2K,YAAY,GAAG7B,OAAO,CAAC9I,MAAM,GAAG2K,YAAY;IAC/D,OAAOoH,KAAK,GAAGL,QAAQ,GAAGF,UAAU,GAAGH,aAAa;EACtD,CAAC,EAAE,CACDZ,OAAO,EACP3H,OAAO,CAAC9I,MAAM,EACd2K,YAAY,EACZ+G,QAAQ,EACRnB,UAAU,CAACoB,MAAM,EACjBvN,KAAK,CAACyN,iBAAiB,EACvBlB,QAAQ,EACRM,WAAW,EACXQ,iBAAiB,EACjBD,UAAU,EACVH,aAAa,CACd,CAAC;EAEF,IAAMW,aAAa,GAAG,IAAAC,yBAAa,EAAC;IAClCC,SAAS,EAAEpJ,OAAO,CAAC9I,MAAM;IACzByK,SAAS,EAATA,SAAS;IACTiH,QAAQ,EAARA,QAAQ;IACRF,UAAU,EAAVA,UAAU;IACVG,MAAM,EAANA,MAAM;IACNnG,UAAU,EAAVA;EACF,CAAC,CAAC;;EAEF;EACA,IAAM2G,YAAY,GAAG,IAAA1E,mBAAW,EAC9B,UAAA2E,KAAA;IAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAKC,gBAAgB,GAAA/O,wBAAA,CAAA6O,KAAA,EAAA3V,UAAA;IAAA,oBAC3BZ,OAAA,YAAAuT,aAAA,QAAAzP,QAAA;MACE0S,KAAK,EAAAzR,aAAA,CAAAA,aAAA,KACAyR,KAAK;QACRV,MAAM,KAAA3K,MAAA,CACJuL,UAAU,CAACF,KAAK,CAACV,MAAM,CAAC,GAAGH,UAAU,GAAGH,aAAa;MACnD,EACJ;MACFmB,IAAI,EAAC,SAAS;MACdC,EAAE,EAAEtE;IAAU,GACVmE,gBAAgB,CACrB,CAAC;EAAA,CACH,EACD,CAACnE,SAAS,EAAEkD,aAAa,EAAEG,UAAU,CACvC,CAAC;EAED,IAAMkB,UAAU,GAAG,IAAAjF,mBAAW,EAC5B,UAAAkF,KAAA,EAAsB;IAAA,IAAnBC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEP,KAAK,GAAAM,KAAA,CAALN,KAAK;IACb,IAAAQ,cAAA,GAKI/J,OAAO,CAAC8J,KAAK,CAAC;MAJTE,WAAW,GAAAD,cAAA,CAAlB3D,KAAK;MACE6D,WAAW,GAAAF,cAAA,CAAlB5R,KAAK;MACI+R,aAAa,GAAAH,cAAA,CAAtBvD,OAAO;MACJ2D,UAAU,GAAA1P,wBAAA,CAAAsP,cAAA,EAAAnW,UAAA;IAEf,oBACEb,OAAA,YAAAuT,aAAA,CAAC/S,SAAA,WAAQ,EAAAsD,QAAA;MACP0S,KAAK,EAAAzR,aAAA,CAAAA,aAAA,KACAyR,KAAK;QACRa,GAAG,KAAAlM,MAAA,CACDuL,UAAU,CAACF,KAAK,CAACa,GAAG,GAAGb,KAAK,CAACa,GAAG,CAACtQ,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG4O,UAAU;MAC7D,EACJ;MACF2B,QAAQ,EACLpI,QAAQ,IACP,CAACgC,cAAc,IAAI,EAAE,EAAEuD,QAAQ,CAACyC,WAAW,IAAI,EAAE,CAAC,IACnD,CAAChI,QAAQ,IAAIgC,cAAc,KAAKgG,WAClC;MACDzD,OAAO,EAAE,SAAAA,QAAC/Q,CAAC,EAAK;QACd,IAAI,CAACwU,WAAW,EAAE;QAClB1C,QAAQ,CAAC0C,WAAW,CAAC;;QAErB;QACA;QACA;QACA,IAAI5G,YAAY,CAACgB,OAAO,IAAI,CAACpC,QAAQ,EAAE;UACrCoB,YAAY,CAACgB,OAAO,CAACC,KAAK,CAAC,CAAC;QAC9B;QAEA,IAAI4F,aAAa,EAAEA,aAAa,CAACzU,CAAC,CAAC;MACrC,CAAE;MACFiU,IAAI,EAAC,QAAQ;MACb,iBACGzH,QAAQ,IACP,CAACgC,cAAc,IAAI,EAAE,EAAEuD,QAAQ,CAACyC,WAAW,IAAI,EAAE,CAAC,IACnD,CAAChI,QAAQ,IAAIgC,cAAc,KAAKgG;IAClC,GACGE,UAAU,GAEbH,WACO,CAAC;EAEf,CAAC,EACD,CAAC3G,YAAY,EAAEY,cAAc,EAAEhC,QAAQ,EAAEsF,QAAQ,EAAEvH,OAAO,EAAE0I,UAAU,CACxE,CAAC;EAED,oBACE3V,OAAA,YAAAuT,aAAA,CAAAvT,OAAA,YAAAuX,QAAA,qBACEvX,OAAA,YAAAuT,aAAA,CAACjK,eAAe,EAAAxF,QAAA;IACd8E,MAAM,EAAEA,MAAO;IACfC,UAAU,EAAEA,UAAW;IACvBO,QAAQ,EAAEA,QAAS;IACnB4G,IAAI,EAAEA,IAAK;IACXwH,QAAQ,EAAE,CAACpO,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAE;IAC7BqK,OAAO,EAAE,SAAAA,QAAA,EAAM;MACb,IAAIrK,QAAQ,EAAE;MACd0H,SAAS,CAAC,CAAClI,MAAM,CAAC;IACpB,CAAE;IACF+K,SAAS,EAAE,SAAAA,UAACjR,CAAC,EAAK;MAChB,IAAI0G,QAAQ,EAAE;MACd,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAACqL,QAAQ,CAAC/R,CAAC,CAAC2B,GAAG,CAAC,EAAE;QAClCyM,SAAS,CAAC,CAAClI,MAAM,CAAC;QAClBlG,CAAC,CAAC+U,cAAc,CAAC,CAAC;MACpB;IACF,CAAE;IACFC,WAAW,EAAE,SAAAA,YAAChV,CAAC;MAAA,OAAKA,CAAC,CAAC+U,cAAc,CAAC,CAAC;IAAA,CAAC;IACvC1H,MAAM,EAAE2C,WAAY;IACpBiE,IAAI,EAAC,UAAU;IACf,iBAAevN,QAAS;IACxB,aAAW+E,OAAQ;IACnB,iBAAc,SAAS;IACvB,aAAWmE;EAAU,GACjBpC,IAAI;IACRnD,GAAG,EAAEwD;EAAmB,iBAExBvQ,OAAA,YAAAuT,aAAA,CAAC/I,eAAe,QACb4C,IAAI,iBACHpN,OAAA,YAAAuT,aAAA,CAACzT,QAAA,CAAA6X,cAAc;IACbC,SAAS,EAAE,SAAAA,UAAC/U,CAAC;MAAA,OAAM;QACjBgV,uBAAuB,EAAE,GAAG;QAC5BrP,UAAU,EAAE3F,CAAC,CAAC4F,0BAA0B,GAAG5F,CAAC,CAACyS,KAAK,CAACwC;MACrD,CAAC;IAAA;EAAE,gBAEH9X,OAAA,YAAAuT,aAAA,CAAC/G,eAAe;IAACE,UAAU,EAAEY;EAAe,GACzCF,IACc,CACH,CACjB,eAEDpN,OAAA,YAAAuT,aAAA,CAAC1I,aAAa;IACZH,OAAO,EAAE,CAAC,CAAC0C,IAAK;IAChBxC,QAAQ,EAAE,CAAC,CAAC2C,KAAM;IAClB1E,UAAU,EAAEA;EAAW,GAEtByK,aACY,CAAC,EAEfU,gBAAgB,iBACfhU,OAAA,YAAAuT,aAAA,CAACzT,QAAA,CAAA6X,cAAc;IACbC,SAAS,EAAE,SAAAA,UAAC/U,CAAC;MAAA,OAAM;QACjBgV,uBAAuB,EAAE,GAAG;QAC5BrP,UAAU,EAAE3F,CAAC,CAAC4F,0BAA0B,GAAG5F,CAAC,CAACyS,KAAK,CAACwC;MACrD,CAAC;IAAA;EAAE,gBAEH9X,OAAA,YAAAuT,aAAA,CAAC5G,gBAAgB;IAACD,UAAU,EAAE6H;EAA2B,GACtDP,gBACe,CACJ,CAEH,CACF,CAAC,eAElBhU,OAAA,YAAAuT,aAAA,CAAC5J,UAAU;IACToO,OAAO,EAAEzH,YAAa;IACtB0H,OAAO,EAAEpP,MAAO;IAChBiH,OAAO,EAAE,SAAAA,QAAA;MAAA,OAAMiB,SAAS,CAAC,KAAK,CAAC;IAAA,CAAC;IAChCd,IAAI,EAAEA,IAAK;IACXhG,KAAK,EAAEA,KAAM;IACbiO,aAAa,EAAE,CAAC/I,QAAS;IACzBgJ,UAAU,EAAExK,WAAY;IACxBuC,SAAS,EAAEA;EAAU,GAEpBrC,aAAa,iBACZ5N,OAAA,YAAAuT,aAAA,CAACjJ,oBAAoB,qBACnBtK,OAAA,YAAAuT,aAAA,CAAClT,YAAA,WAAW,EAAKyN,WAAc,CACX,CACvB,EAEAb,OAAO,CAAC9I,MAAM,GAAG,CAAC,gBACjBnE,OAAA,YAAAuT,aAAA,CAACrT,YAAA,CAAAiY,aAAa;IACZnO,KAAK,EAAC,MAAM;IACZ8L,MAAM,EAAEA,MAAO;IACfD,QAAQ,EAAEA,QAAS;IACnBQ,SAAS,EAAEpJ,OAAO,CAAC9I,MAAO;IAC1B6K,aAAa,EAAEA,aAAc;IAC7BoJ,QAAQ,EAAE,SAAAA,SAAAC,KAAA;MAAA,IAAGC,YAAY,GAAAD,KAAA,CAAZC,YAAY;MAAA,OAAOnC,aAAa,CAACmC,YAAY,CAAC;IAAA,CAAC;IAC5DC,gBAAgB,EAAEjC;EAAa,GAE9BO,UACY,CAAC,gBAEhB7W,OAAA,YAAAuT,aAAA,CAACtJ,QAAQ,QAAE+D,YAAuB,CAE1B,CACZ,CAAC;AAEP,CACF,CAAC;AAEDpB,MAAM,CAAC4L,WAAW,GAAG,QAAQ;AAAC,IAAAC,QAAA,GAAAlP,OAAA,cAEfqD,MAAM","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"defaultLocale.js","names":["defaultLocale","deleteLabel","clearLabel","_default","exports"],"sources":["../../../../src/Select/utils/defaultLocale.ts"],"sourcesContent":["export interface SelectLocale {\n deleteLabel: string;\n clearLabel: string;\n}\n\nconst defaultLocale: SelectLocale = {\n deleteLabel: 'Delete',\n clearLabel: 'Clear',\n};\n\nexport default defaultLocale;\n"],"mappings":";;;;;;AAKA,IAAMA,aAA2B,GAAG;EAClCC,WAAW,EAAE,QAAQ;EACrBC,UAAU,EAAE;AACd,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEaJ,aAAa"}
1
+ {"version":3,"file":"defaultLocale.js","names":["defaultLocale","deleteLabel","clearLabel","_default","exports"],"sources":["../../../../src/Select/utils/defaultLocale.ts"],"sourcesContent":["export interface SelectLocale {\n deleteLabel: string;\n clearLabel: string;\n}\n\nconst defaultLocale: SelectLocale = {\n deleteLabel: 'Delete',\n clearLabel: 'Clear',\n};\n\nexport default defaultLocale;\n"],"mappings":";;;;;;AAKA,IAAMA,aAA2B,GAAG;EAClCC,WAAW,EAAE,QAAQ;EACrBC,UAAU,EAAE;AACd,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEaJ,aAAa","ignoreList":[]}
@@ -13,11 +13,11 @@ var _react2 = _interopRequireWildcard(require("react"));
13
13
  var _excluded = ["width"];
14
14
  var _templateObject, _templateObject2;
15
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
16
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
16
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
17
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
18
18
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
19
19
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
20
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
20
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
21
21
  function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
22
22
  var SkeletonAnimation = (0, _react.keyframes)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n from { background-position: 100% 50%; }\n to { background-position: 0 50%; }\n"])));
23
23
  var StyledSkeleton = (0, _styled["default"])('div', (0, _utils.omitEmotionProps)('width', 'size'))(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n width: ", ";\n height: 1em;\n\n background: linear-gradient(\n 90deg,\n ", " 25%,\n ", " 37%,\n ", " 63%\n );\n background-size: 400% 100%;\n\n border-radius: ", "em;\n animation: ", " 1.4s ease infinite;\n"])), function (p) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_theming","_utils","_react2","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","SkeletonAnimation","keyframes","StyledSkeleton","styled","omitEmotionProps","p","width","clr","theme","skeletonColorBgFrom","skeletonColorBgTo","borderRadius","Skeleton","forwardRef","_ref","ref","_ref$width","rest","createElement","displayName","_default","exports"],"sources":["../../../src/Skeleton/index.tsx"],"sourcesContent":["import { keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface SkeletonProps extends JsxDivProps {\n /**\n * The width of the skeleton.\n * @default 100%\n */\n width?: string;\n}\n\nconst SkeletonAnimation = keyframes`\n from { background-position: 100% 50%; }\n to { background-position: 0 50%; }\n`;\n\ntype StyledSkeletonProps = Required<Pick<SkeletonProps, 'width'>>;\nconst StyledSkeleton = styled(\n 'div',\n omitEmotionProps('width', 'size')\n)<StyledSkeletonProps>`\n width: ${(p) => p.width};\n height: 1em;\n\n background: linear-gradient(\n 90deg,\n ${(p) => clr(p.theme.skeletonColorBgFrom)} 25%,\n ${(p) => clr(p.theme.skeletonColorBgTo)} 37%,\n ${(p) => clr(p.theme.skeletonColorBgFrom)} 63%\n );\n background-size: 400% 100%;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n animation: ${SkeletonAnimation} 1.4s ease infinite;\n`;\n\n/**\n * Provides a basic placeholder while a user waits for the content to load.\n */\nconst Skeleton = forwardRef<HTMLDivElement, SkeletonProps>(\n ({ width = '100%', ...rest }, ref) => (\n <StyledSkeleton width={width} aria-busy {...rest} ref={ref} />\n )\n);\n\nSkeleton.displayName = 'Skeleton';\n\nexport default Skeleton;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_theming","_utils","_react2","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","SkeletonAnimation","keyframes","StyledSkeleton","styled","omitEmotionProps","p","width","clr","theme","skeletonColorBgFrom","skeletonColorBgTo","borderRadius","Skeleton","forwardRef","_ref","ref","_ref$width","rest","createElement","displayName","_default","exports"],"sources":["../../../src/Skeleton/index.tsx"],"sourcesContent":["import { keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface SkeletonProps extends JsxDivProps {\n /**\n * The width of the skeleton.\n * @default 100%\n */\n width?: string;\n}\n\nconst SkeletonAnimation = keyframes`\n from { background-position: 100% 50%; }\n to { background-position: 0 50%; }\n`;\n\ntype StyledSkeletonProps = Required<Pick<SkeletonProps, 'width'>>;\nconst StyledSkeleton = styled(\n 'div',\n omitEmotionProps('width', 'size')\n)<StyledSkeletonProps>`\n width: ${(p) => p.width};\n height: 1em;\n\n background: linear-gradient(\n 90deg,\n ${(p) => clr(p.theme.skeletonColorBgFrom)} 25%,\n ${(p) => clr(p.theme.skeletonColorBgTo)} 37%,\n ${(p) => clr(p.theme.skeletonColorBgFrom)} 63%\n );\n background-size: 400% 100%;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n animation: ${SkeletonAnimation} 1.4s ease infinite;\n`;\n\n/**\n * Provides a basic placeholder while a user waits for the content to load.\n */\nconst Skeleton = forwardRef<HTMLDivElement, SkeletonProps>(\n ({ width = '100%', ...rest }, ref) => (\n <StyledSkeleton width={width} aria-busy {...rest} ref={ref} />\n )\n);\n\nSkeleton.displayName = 'Skeleton';\n\nexport default Skeleton;\n"],"mappings":"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","ignoreList":[]}