@bolio-ui/core 1.0.0

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 (381) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +71 -0
  3. package/dist/avatar/index.js +901 -0
  4. package/dist/badge/index.js +899 -0
  5. package/dist/bolio-ui-provider/index.js +1883 -0
  6. package/dist/breadcrumbs/index.js +985 -0
  7. package/dist/button/index.js +1358 -0
  8. package/dist/button-dropdown/index.js +1111 -0
  9. package/dist/button-group/index.js +782 -0
  10. package/dist/capacity/index.js +780 -0
  11. package/dist/card/index.js +1275 -0
  12. package/dist/checkbox/index.js +1042 -0
  13. package/dist/code/index.js +803 -0
  14. package/dist/col/index.js +90 -0
  15. package/dist/collapse/index.js +1158 -0
  16. package/dist/container/index.js +444 -0
  17. package/dist/css-baseline/index.js +348 -0
  18. package/dist/description/index.js +741 -0
  19. package/dist/display/index.js +745 -0
  20. package/dist/divider/index.js +767 -0
  21. package/dist/dot/index.js +755 -0
  22. package/dist/drawer/index.js +1513 -0
  23. package/dist/fieldset/index.js +1089 -0
  24. package/dist/grid/index.js +870 -0
  25. package/dist/image/index.js +1094 -0
  26. package/dist/index.js +9970 -0
  27. package/dist/input/index.js +1275 -0
  28. package/dist/keyboard/index.js +711 -0
  29. package/dist/link/index.js +863 -0
  30. package/dist/loading/index.js +765 -0
  31. package/dist/mdx-widgets/index.js +438 -0
  32. package/dist/modal/index.js +2220 -0
  33. package/dist/note/index.js +773 -0
  34. package/dist/page/index.js +928 -0
  35. package/dist/pagination/index.js +1201 -0
  36. package/dist/popover/index.js +1502 -0
  37. package/dist/progress/index.js +804 -0
  38. package/dist/radio/index.js +1028 -0
  39. package/dist/rating/index.js +912 -0
  40. package/dist/row/index.js +442 -0
  41. package/dist/section/index.js +733 -0
  42. package/dist/select/index.js +1865 -0
  43. package/dist/slider/index.js +1097 -0
  44. package/dist/snippet/index.js +1207 -0
  45. package/dist/spacer/index.js +692 -0
  46. package/dist/spinner/index.js +763 -0
  47. package/dist/styled-jsx.cjs.js +766 -0
  48. package/dist/tabs/index.js +1125 -0
  49. package/dist/tag/index.js +749 -0
  50. package/dist/text/index.js +830 -0
  51. package/dist/textarea/index.js +915 -0
  52. package/dist/themes/index.js +319 -0
  53. package/dist/toggle/index.js +852 -0
  54. package/dist/tooltip/index.js +1353 -0
  55. package/dist/use-all-themes/index.js +335 -0
  56. package/dist/use-body-scroll/index.js +173 -0
  57. package/dist/use-classes/index.js +55 -0
  58. package/dist/use-click-away/index.js +28 -0
  59. package/dist/use-clipboard/index.js +188 -0
  60. package/dist/use-current-state/index.js +90 -0
  61. package/dist/use-input/index.js +129 -0
  62. package/dist/use-keyboard/index.js +214 -0
  63. package/dist/use-media-query/index.js +495 -0
  64. package/dist/use-modal/index.js +114 -0
  65. package/dist/use-scale/index.js +673 -0
  66. package/dist/use-tabs/index.js +112 -0
  67. package/dist/use-theme/index.js +333 -0
  68. package/dist/use-toasts/index.js +236 -0
  69. package/esm/avatar/avatar-group.js +29 -0
  70. package/esm/avatar/avatar.js +107 -0
  71. package/esm/avatar/avatar.skeleton.js +21 -0
  72. package/esm/avatar/helpers.js +16 -0
  73. package/esm/avatar/index.js +4 -0
  74. package/esm/avatar/stories.js +113 -0
  75. package/esm/badge/badge-anchor.js +70 -0
  76. package/esm/badge/badge.js +58 -0
  77. package/esm/badge/index.js +4 -0
  78. package/esm/badge/stories.js +92 -0
  79. package/esm/bolio-ui-provider/bolio-ui-provider.js +62 -0
  80. package/esm/bolio-ui-provider/index.js +2 -0
  81. package/esm/bolio-ui-provider/theme-provider.js +47 -0
  82. package/esm/breadcrumbs/breadcrumbs-item.js +49 -0
  83. package/esm/breadcrumbs/breadcrumbs-separator.js +25 -0
  84. package/esm/breadcrumbs/breadcrumbs.js +47 -0
  85. package/esm/breadcrumbs/index.js +6 -0
  86. package/esm/breadcrumbs/stories.js +51 -0
  87. package/esm/button/button-icon.js +29 -0
  88. package/esm/button/button-loading.js +17 -0
  89. package/esm/button/button.drip.js +57 -0
  90. package/esm/button/button.js +146 -0
  91. package/esm/button/index.js +2 -0
  92. package/esm/button/stories.js +221 -0
  93. package/esm/button/styles.js +232 -0
  94. package/esm/button/utils.js +46 -0
  95. package/esm/button-dropdown/button-dropdown-context.js +11 -0
  96. package/esm/button-dropdown/button-dropdown-item.js +52 -0
  97. package/esm/button-dropdown/button-dropdown.js +111 -0
  98. package/esm/button-dropdown/icon.js +30 -0
  99. package/esm/button-dropdown/index.js +4 -0
  100. package/esm/button-dropdown/stories.js +92 -0
  101. package/esm/button-dropdown/styles.js +60 -0
  102. package/esm/button-group/button-group-context.js +9 -0
  103. package/esm/button-group/button-group.js +75 -0
  104. package/esm/button-group/index.js +2 -0
  105. package/esm/button-group/stories.js +66 -0
  106. package/esm/capacity/capacity.js +52 -0
  107. package/esm/capacity/index.js +2 -0
  108. package/esm/capacity/stories.js +55 -0
  109. package/esm/card/card-content.js +28 -0
  110. package/esm/card/card-footer.js +36 -0
  111. package/esm/card/card.js +68 -0
  112. package/esm/card/index.js +8 -0
  113. package/esm/card/stories.js +126 -0
  114. package/esm/card/styles.js +45 -0
  115. package/esm/checkbox/checkbox-context.js +10 -0
  116. package/esm/checkbox/checkbox-group.js +70 -0
  117. package/esm/checkbox/checkbox.icon.js +50 -0
  118. package/esm/checkbox/checkbox.js +114 -0
  119. package/esm/checkbox/index.js +4 -0
  120. package/esm/checkbox/stories.js +84 -0
  121. package/esm/checkbox/styles.js +34 -0
  122. package/esm/code/code.js +57 -0
  123. package/esm/code/index.js +2 -0
  124. package/esm/code/stories.js +53 -0
  125. package/esm/col/col.js +29 -0
  126. package/esm/col/index.js +2 -0
  127. package/esm/collapse/collapse-context.js +8 -0
  128. package/esm/collapse/collapse-group.js +75 -0
  129. package/esm/collapse/collapse-icon.js +28 -0
  130. package/esm/collapse/collapse.js +93 -0
  131. package/esm/collapse/index.js +4 -0
  132. package/esm/collapse/stories.js +48 -0
  133. package/esm/container/container.js +62 -0
  134. package/esm/container/index.js +2 -0
  135. package/esm/css-baseline/css-baseline.js +18 -0
  136. package/esm/css-baseline/index.js +1 -0
  137. package/esm/description/description.js +39 -0
  138. package/esm/description/index.js +2 -0
  139. package/esm/description/stories.js +23 -0
  140. package/esm/display/display.js +43 -0
  141. package/esm/display/index.js +2 -0
  142. package/esm/divider/divider.js +65 -0
  143. package/esm/divider/index.js +2 -0
  144. package/esm/divider/stories.js +41 -0
  145. package/esm/dot/dot.js +53 -0
  146. package/esm/dot/index.js +2 -0
  147. package/esm/dot/stories.js +40 -0
  148. package/esm/drawer/drawer-wrapper.js +86 -0
  149. package/esm/drawer/drawer.js +77 -0
  150. package/esm/drawer/helper.js +27 -0
  151. package/esm/drawer/index.js +8 -0
  152. package/esm/drawer/stories.js +79 -0
  153. package/esm/fieldset/fieldset-content.js +29 -0
  154. package/esm/fieldset/fieldset-context.js +9 -0
  155. package/esm/fieldset/fieldset-footer.js +30 -0
  156. package/esm/fieldset/fieldset-group.js +88 -0
  157. package/esm/fieldset/fieldset-subtitle.js +21 -0
  158. package/esm/fieldset/fieldset-title.js +23 -0
  159. package/esm/fieldset/fieldset.js +96 -0
  160. package/esm/fieldset/index.js +13 -0
  161. package/esm/fieldset/stories.js +72 -0
  162. package/esm/grid/basic-item.js +96 -0
  163. package/esm/grid/grid-container.js +46 -0
  164. package/esm/grid/grid-types.js +6 -0
  165. package/esm/grid/grid.js +37 -0
  166. package/esm/grid/index.js +4 -0
  167. package/esm/grid/stories.js +212 -0
  168. package/esm/icon/stories.js +36 -0
  169. package/esm/image/helpers.js +16 -0
  170. package/esm/image/image-browser-https-icon.js +23 -0
  171. package/esm/image/image-browser.js +86 -0
  172. package/esm/image/image.js +91 -0
  173. package/esm/image/image.skeleton.js +21 -0
  174. package/esm/image/index.js +4 -0
  175. package/esm/image/stories.js +73 -0
  176. package/esm/image/styles.js +15 -0
  177. package/esm/index.js +69 -0
  178. package/esm/input/index.js +6 -0
  179. package/esm/input/input-block-label.js +18 -0
  180. package/esm/input/input-icon-clear.js +47 -0
  181. package/esm/input/input-icon.js +19 -0
  182. package/esm/input/input-label.js +18 -0
  183. package/esm/input/input-props.js +12 -0
  184. package/esm/input/input.js +179 -0
  185. package/esm/input/password-icon.js +30 -0
  186. package/esm/input/password.js +66 -0
  187. package/esm/input/stories.js +113 -0
  188. package/esm/input/styles.js +41 -0
  189. package/esm/keyboard/index.js +2 -0
  190. package/esm/keyboard/keyboard.js +48 -0
  191. package/esm/keyboard/stories.js +43 -0
  192. package/esm/link/icon.js +30 -0
  193. package/esm/link/index.js +2 -0
  194. package/esm/link/link.js +50 -0
  195. package/esm/link/stories.js +59 -0
  196. package/esm/loading/index.js +2 -0
  197. package/esm/loading/loading.js +63 -0
  198. package/esm/loading/stories.js +75 -0
  199. package/esm/mdx-widgets/index.js +2 -0
  200. package/esm/mdx-widgets/mock-page.js +37 -0
  201. package/esm/mdx-widgets/parsed-codes/index.js +1 -0
  202. package/esm/mdx-widgets/parsed-codes/wait-time.js +13 -0
  203. package/esm/modal/index.js +10 -0
  204. package/esm/modal/modal-action.js +76 -0
  205. package/esm/modal/modal-actions.js +39 -0
  206. package/esm/modal/modal-content.js +28 -0
  207. package/esm/modal/modal-context.js +6 -0
  208. package/esm/modal/modal-subtitle.js +30 -0
  209. package/esm/modal/modal-title.js +30 -0
  210. package/esm/modal/modal-wrapper.js +80 -0
  211. package/esm/modal/modal.js +104 -0
  212. package/esm/modal/stories.js +165 -0
  213. package/esm/note/index.js +2 -0
  214. package/esm/note/note.js +71 -0
  215. package/esm/note/stories.js +68 -0
  216. package/esm/page/index.js +9 -0
  217. package/esm/page/page-content.js +26 -0
  218. package/esm/page/page-footer.js +25 -0
  219. package/esm/page/page-header.js +33 -0
  220. package/esm/page/page.js +88 -0
  221. package/esm/page/stories.js +54 -0
  222. package/esm/pagination/index.js +6 -0
  223. package/esm/pagination/pagination-context.js +8 -0
  224. package/esm/pagination/pagination-ellipsis.js +73 -0
  225. package/esm/pagination/pagination-item.js +50 -0
  226. package/esm/pagination/pagination-next.js +25 -0
  227. package/esm/pagination/pagination-pages.js +90 -0
  228. package/esm/pagination/pagination-previous.js +25 -0
  229. package/esm/pagination/pagination.js +105 -0
  230. package/esm/pagination/stories.js +49 -0
  231. package/esm/popover/index.js +5 -0
  232. package/esm/popover/popover-context.js +9 -0
  233. package/esm/popover/popover-item.js +65 -0
  234. package/esm/popover/popover.js +83 -0
  235. package/esm/popover/stories.js +84 -0
  236. package/esm/progress/index.js +2 -0
  237. package/esm/progress/progress.js +76 -0
  238. package/esm/progress/stories.js +114 -0
  239. package/esm/radio/index.js +7 -0
  240. package/esm/radio/radio-context.js +9 -0
  241. package/esm/radio/radio-description.js +30 -0
  242. package/esm/radio/radio-group.js +61 -0
  243. package/esm/radio/radio.js +123 -0
  244. package/esm/radio/stories.js +98 -0
  245. package/esm/radio/styles.js +41 -0
  246. package/esm/rating/index.js +2 -0
  247. package/esm/rating/rating-icon.js +20 -0
  248. package/esm/rating/rating.js +115 -0
  249. package/esm/rating/stories.js +72 -0
  250. package/esm/row/index.js +2 -0
  251. package/esm/row/row.js +60 -0
  252. package/esm/section/index.js +2 -0
  253. package/esm/section/section.js +30 -0
  254. package/esm/select/index.js +4 -0
  255. package/esm/select/select-context.js +9 -0
  256. package/esm/select/select-dropdown.js +41 -0
  257. package/esm/select/select-icon-clear.js +41 -0
  258. package/esm/select/select-icon.js +23 -0
  259. package/esm/select/select-input.js +34 -0
  260. package/esm/select/select-multiple-value.js +23 -0
  261. package/esm/select/select-option.js +100 -0
  262. package/esm/select/select.js +244 -0
  263. package/esm/select/stories.js +239 -0
  264. package/esm/select/styles.js +48 -0
  265. package/esm/shared/backdrop.js +77 -0
  266. package/esm/shared/css-transition.js +71 -0
  267. package/esm/shared/dropdown.js +109 -0
  268. package/esm/shared/ellipsis.js +15 -0
  269. package/esm/shared/expand.js +95 -0
  270. package/esm/shared/highlight.js +47 -0
  271. package/esm/slider/index.js +2 -0
  272. package/esm/slider/slider-dot.js +27 -0
  273. package/esm/slider/slider-mark.js +38 -0
  274. package/esm/slider/slider.js +163 -0
  275. package/esm/slider/stories.js +134 -0
  276. package/esm/slider/styles.js +27 -0
  277. package/esm/snippet/index.js +2 -0
  278. package/esm/snippet/snippet-icon.js +27 -0
  279. package/esm/snippet/snippet.js +100 -0
  280. package/esm/snippet/stories.js +133 -0
  281. package/esm/snippet/styles.js +58 -0
  282. package/esm/spacer/index.js +2 -0
  283. package/esm/spacer/spacer.js +28 -0
  284. package/esm/spacer/stories.js +54 -0
  285. package/esm/spinner/index.js +2 -0
  286. package/esm/spinner/spinner.js +46 -0
  287. package/esm/spinner/stories.js +13 -0
  288. package/esm/styled-jsx-server.es.js +5 -0
  289. package/esm/styled-jsx.es.js +757 -0
  290. package/esm/tabs/index.js +5 -0
  291. package/esm/tabs/stories.js +92 -0
  292. package/esm/tabs/tabs-context.js +8 -0
  293. package/esm/tabs/tabs-item.js +80 -0
  294. package/esm/tabs/tabs.js +151 -0
  295. package/esm/tag/index.js +2 -0
  296. package/esm/tag/stories.js +58 -0
  297. package/esm/tag/tag.js +86 -0
  298. package/esm/text/child.js +78 -0
  299. package/esm/text/index.js +2 -0
  300. package/esm/text/stories.js +104 -0
  301. package/esm/text/text.js +94 -0
  302. package/esm/textarea/index.js +2 -0
  303. package/esm/textarea/stories.js +104 -0
  304. package/esm/textarea/textarea.js +116 -0
  305. package/esm/themes/index.js +2 -0
  306. package/esm/themes/presets/dark.js +67 -0
  307. package/esm/themes/presets/default.js +67 -0
  308. package/esm/themes/presets/index.js +1 -0
  309. package/esm/themes/presets/shared.js +42 -0
  310. package/esm/themes/themes.js +89 -0
  311. package/esm/toggle/index.js +2 -0
  312. package/esm/toggle/stories.js +55 -0
  313. package/esm/toggle/styles.js +27 -0
  314. package/esm/toggle/toggle.js +82 -0
  315. package/esm/tooltip/helper.js +21 -0
  316. package/esm/tooltip/index.js +2 -0
  317. package/esm/tooltip/placement.js +160 -0
  318. package/esm/tooltip/stories.js +183 -0
  319. package/esm/tooltip/styles.js +18 -0
  320. package/esm/tooltip/tooltip-content.js +83 -0
  321. package/esm/tooltip/tooltip-icon.js +32 -0
  322. package/esm/tooltip/tooltip.js +132 -0
  323. package/esm/use-all-themes/all-themes-context.js +9 -0
  324. package/esm/use-all-themes/index.js +2 -0
  325. package/esm/use-body-scroll/index.js +2 -0
  326. package/esm/use-body-scroll/use-body-scroll.js +70 -0
  327. package/esm/use-classes/index.js +2 -0
  328. package/esm/use-classes/use-classes.js +41 -0
  329. package/esm/use-click-away/index.js +2 -0
  330. package/esm/use-click-away/use-click-away.js +22 -0
  331. package/esm/use-clipboard/index.js +2 -0
  332. package/esm/use-clipboard/use-clipboard.js +46 -0
  333. package/esm/use-current-state/index.js +2 -0
  334. package/esm/use-current-state/use-current-state.js +26 -0
  335. package/esm/use-input/index.js +2 -0
  336. package/esm/use-input/use-input.js +32 -0
  337. package/esm/use-keyboard/codes.js +97 -0
  338. package/esm/use-keyboard/helper.js +26 -0
  339. package/esm/use-keyboard/index.js +4 -0
  340. package/esm/use-keyboard/use-keyboard.js +79 -0
  341. package/esm/use-media-query/index.js +2 -0
  342. package/esm/use-media-query/use-media-query.js +90 -0
  343. package/esm/use-modal/index.js +2 -0
  344. package/esm/use-modal/use-modal.js +26 -0
  345. package/esm/use-scale/index.js +6 -0
  346. package/esm/use-scale/scale-context.js +37 -0
  347. package/esm/use-scale/utils.js +62 -0
  348. package/esm/use-scale/with-scale.js +114 -0
  349. package/esm/use-tabs/index.js +2 -0
  350. package/esm/use-tabs/use-tabs.js +24 -0
  351. package/esm/use-theme/index.js +2 -0
  352. package/esm/use-theme/theme-context.js +7 -0
  353. package/esm/use-toasts/helpers.js +72 -0
  354. package/esm/use-toasts/index.js +2 -0
  355. package/esm/use-toasts/toast-container.js +127 -0
  356. package/esm/use-toasts/toast-item.js +48 -0
  357. package/esm/use-toasts/use-toast.js +124 -0
  358. package/esm/utils/calculations.js +27 -0
  359. package/esm/utils/collections.js +138 -0
  360. package/esm/utils/color.js +43 -0
  361. package/esm/utils/layouts.js +82 -0
  362. package/esm/utils/prop-types.js +22 -0
  363. package/esm/utils/types.js +1 -0
  364. package/esm/utils/use-body-scroll.js +2 -0
  365. package/esm/utils/use-bolio-ui-context.js +27 -0
  366. package/esm/utils/use-click-anywhere.js +16 -0
  367. package/esm/utils/use-click-away.js +2 -0
  368. package/esm/utils/use-clipboard.js +2 -0
  369. package/esm/utils/use-context-state/create-bolio-ui-context.js +57 -0
  370. package/esm/utils/use-context-state/use-context-state.js +44 -0
  371. package/esm/utils/use-current-state.js +2 -0
  372. package/esm/utils/use-default-props.js +22 -0
  373. package/esm/utils/use-dom-observer.js +28 -0
  374. package/esm/utils/use-drag.js +75 -0
  375. package/esm/utils/use-portal.js +40 -0
  376. package/esm/utils/use-previous.js +11 -0
  377. package/esm/utils/use-real-shape.js +53 -0
  378. package/esm/utils/use-resize.js +21 -0
  379. package/esm/utils/use-ssr.js +20 -0
  380. package/esm/utils/use-warning.js +17 -0
  381. package/package.json +140 -0
@@ -0,0 +1,1865 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var styledJsx_cjs = require('../styled-jsx.cjs.js');
6
+ var React = require('react');
7
+ var reactDom = require('react-dom');
8
+
9
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
10
+
11
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
12
+
13
+ function ownKeys(object, enumerableOnly) {
14
+ var keys = Object.keys(object);
15
+
16
+ if (Object.getOwnPropertySymbols) {
17
+ var symbols = Object.getOwnPropertySymbols(object);
18
+ enumerableOnly && (symbols = symbols.filter(function (sym) {
19
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
20
+ })), keys.push.apply(keys, symbols);
21
+ }
22
+
23
+ return keys;
24
+ }
25
+
26
+ function _objectSpread2(target) {
27
+ for (var i = 1; i < arguments.length; i++) {
28
+ var source = null != arguments[i] ? arguments[i] : {};
29
+ i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
30
+ _defineProperty(target, key, source[key]);
31
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
32
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
33
+ });
34
+ }
35
+
36
+ return target;
37
+ }
38
+
39
+ function _typeof(obj) {
40
+ "@babel/helpers - typeof";
41
+
42
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
43
+ return typeof obj;
44
+ } : function (obj) {
45
+ return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
46
+ }, _typeof(obj);
47
+ }
48
+
49
+ function _defineProperty(obj, key, value) {
50
+ if (key in obj) {
51
+ Object.defineProperty(obj, key, {
52
+ value: value,
53
+ enumerable: true,
54
+ configurable: true,
55
+ writable: true
56
+ });
57
+ } else {
58
+ obj[key] = value;
59
+ }
60
+
61
+ return obj;
62
+ }
63
+
64
+ function _extends() {
65
+ _extends = Object.assign ? Object.assign.bind() : function (target) {
66
+ for (var i = 1; i < arguments.length; i++) {
67
+ var source = arguments[i];
68
+
69
+ for (var key in source) {
70
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
71
+ target[key] = source[key];
72
+ }
73
+ }
74
+ }
75
+
76
+ return target;
77
+ };
78
+ return _extends.apply(this, arguments);
79
+ }
80
+
81
+ function _objectWithoutPropertiesLoose(source, excluded) {
82
+ if (source == null) return {};
83
+ var target = {};
84
+ var sourceKeys = Object.keys(source);
85
+ var key, i;
86
+
87
+ for (i = 0; i < sourceKeys.length; i++) {
88
+ key = sourceKeys[i];
89
+ if (excluded.indexOf(key) >= 0) continue;
90
+ target[key] = source[key];
91
+ }
92
+
93
+ return target;
94
+ }
95
+
96
+ function _objectWithoutProperties(source, excluded) {
97
+ if (source == null) return {};
98
+
99
+ var target = _objectWithoutPropertiesLoose(source, excluded);
100
+
101
+ var key, i;
102
+
103
+ if (Object.getOwnPropertySymbols) {
104
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
105
+
106
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
107
+ key = sourceSymbolKeys[i];
108
+ if (excluded.indexOf(key) >= 0) continue;
109
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
110
+ target[key] = source[key];
111
+ }
112
+ }
113
+
114
+ return target;
115
+ }
116
+
117
+ function _slicedToArray(arr, i) {
118
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
119
+ }
120
+
121
+ function _toConsumableArray(arr) {
122
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
123
+ }
124
+
125
+ function _arrayWithoutHoles(arr) {
126
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
127
+ }
128
+
129
+ function _arrayWithHoles(arr) {
130
+ if (Array.isArray(arr)) return arr;
131
+ }
132
+
133
+ function _iterableToArray(iter) {
134
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
135
+ }
136
+
137
+ function _iterableToArrayLimit(arr, i) {
138
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
139
+
140
+ if (_i == null) return;
141
+ var _arr = [];
142
+ var _n = true;
143
+ var _d = false;
144
+
145
+ var _s, _e;
146
+
147
+ try {
148
+ for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
149
+ _arr.push(_s.value);
150
+
151
+ if (i && _arr.length === i) break;
152
+ }
153
+ } catch (err) {
154
+ _d = true;
155
+ _e = err;
156
+ } finally {
157
+ try {
158
+ if (!_n && _i["return"] != null) _i["return"]();
159
+ } finally {
160
+ if (_d) throw _e;
161
+ }
162
+ }
163
+
164
+ return _arr;
165
+ }
166
+
167
+ function _unsupportedIterableToArray(o, minLen) {
168
+ if (!o) return;
169
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
170
+ var n = Object.prototype.toString.call(o).slice(8, -1);
171
+ if (n === "Object" && o.constructor) n = o.constructor.name;
172
+ if (n === "Map" || n === "Set") return Array.from(o);
173
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
174
+ }
175
+
176
+ function _arrayLikeToArray(arr, len) {
177
+ if (len == null || len > arr.length) len = arr.length;
178
+
179
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
180
+
181
+ return arr2;
182
+ }
183
+
184
+ function _nonIterableSpread() {
185
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
186
+ }
187
+
188
+ function _nonIterableRest() {
189
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
190
+ }
191
+
192
+ function _createForOfIteratorHelper(o, allowArrayLike) {
193
+ var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
194
+
195
+ if (!it) {
196
+ if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
197
+ if (it) o = it;
198
+ var i = 0;
199
+
200
+ var F = function () {};
201
+
202
+ return {
203
+ s: F,
204
+ n: function () {
205
+ if (i >= o.length) return {
206
+ done: true
207
+ };
208
+ return {
209
+ done: false,
210
+ value: o[i++]
211
+ };
212
+ },
213
+ e: function (e) {
214
+ throw e;
215
+ },
216
+ f: F
217
+ };
218
+ }
219
+
220
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
221
+ }
222
+
223
+ var normalCompletion = true,
224
+ didErr = false,
225
+ err;
226
+ return {
227
+ s: function () {
228
+ it = it.call(o);
229
+ },
230
+ n: function () {
231
+ var step = it.next();
232
+ normalCompletion = step.done;
233
+ return step;
234
+ },
235
+ e: function (e) {
236
+ didErr = true;
237
+ err = e;
238
+ },
239
+ f: function () {
240
+ try {
241
+ if (!normalCompletion && it.return != null) it.return();
242
+ } finally {
243
+ if (didErr) throw err;
244
+ }
245
+ }
246
+ };
247
+ }
248
+
249
+ var defaultFont = {
250
+ sans: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
251
+ mono: 'Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace',
252
+ prism: 'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,"Liberation Mono", "Courier New", monospace'
253
+ };
254
+ var defaultBreakpoints = {
255
+ xs: {
256
+ min: '0',
257
+ max: '650px'
258
+ },
259
+ sm: {
260
+ min: '650px',
261
+ max: '900px'
262
+ },
263
+ md: {
264
+ min: '900px',
265
+ max: '1280px'
266
+ },
267
+ lg: {
268
+ min: '1280px',
269
+ max: '1920px'
270
+ },
271
+ xl: {
272
+ min: '1920px',
273
+ max: '10000px'
274
+ }
275
+ };
276
+ var defaultLayout = {
277
+ gap: '16pt',
278
+ gapNegative: '-16pt',
279
+ gapHalf: '8pt',
280
+ gapHalfNegative: '-8pt',
281
+ gapQuarter: '4pt',
282
+ gapQuarterNegative: '-4pt',
283
+ pageMargin: '16pt',
284
+ pageWidth: '900pt',
285
+ pageWidthWithMargin: '930pt',
286
+ breakpointMobile: defaultBreakpoints.xs.max,
287
+ breakpointTablet: defaultBreakpoints.sm.max,
288
+ radius: '6px',
289
+ unit: '16px'
290
+ };
291
+
292
+ var palette$1 = {
293
+ background: '#fff',
294
+ foreground: '#000',
295
+ accents_1: '#fafafa',
296
+ accents_2: '#eaeaea',
297
+ accents_3: '#999',
298
+ accents_4: '#888',
299
+ accents_5: '#666',
300
+ accents_6: '#444',
301
+ accents_7: '#333',
302
+ accents_8: '#111',
303
+ selection: '#cee4fe',
304
+ code: '#C25FFF',
305
+ border: '#eaeaea',
306
+ primary: '#0072F6',
307
+ primaryLight: '#96C1F3',
308
+ primaryLighter: '#CEE4FF',
309
+ primaryDark: '#00254E',
310
+ secondary: '#7828C9',
311
+ secondaryLighter: '#D1B1F1',
312
+ secondaryLight: '#EADCF9',
313
+ secondaryDark: '#290E45',
314
+ error: '#F31261',
315
+ errorLight: '#FAA8C6',
316
+ errorLighter: '#FDD8E6',
317
+ errorDark: '#4E041F',
318
+ success: '#17C965',
319
+ successLight: '#ADF5CD',
320
+ successLighter: '#DAFBE9',
321
+ successDark: '#06371C',
322
+ warning: '#F5A525',
323
+ warningLight: '#FBDBA8',
324
+ warningLighter: '#FDEFD9',
325
+ warningDark: '#4E3105',
326
+ info: '#06B7DC',
327
+ infoLighter: '#A5EEFE',
328
+ infoLight: '#D7F8FF',
329
+ infoDark: '#053B49',
330
+ purple: '#f81ce5',
331
+ alert: '#ff0080',
332
+ link: '#0070f3',
333
+ pre: '#363450'
334
+ };
335
+ var expressiveness$1 = {
336
+ linkStyle: 'none',
337
+ linkHoverStyle: 'none',
338
+ dropdownBoxShadow: '0 4px 4px 0 rgba(0, 0, 0, 0.02)',
339
+ scrollerStart: 'rgba(255, 255, 255, 1)',
340
+ scrollerEnd: 'rgba(255, 255, 255, 0)',
341
+ shadowSmall: '0 5px 10px rgba(0, 0, 0, 0.12)',
342
+ shadowMedium: '0 8px 30px rgba(0, 0, 0, 0.12)',
343
+ shadowLarge: '0 30px 60px rgba(0, 0, 0, 0.12)',
344
+ portalOpacity: 0.25
345
+ };
346
+ var font$1 = defaultFont;
347
+ var breakpoints$1 = defaultBreakpoints;
348
+ var layout$1 = defaultLayout;
349
+ var themes$1 = {
350
+ type: 'light',
351
+ font: font$1,
352
+ layout: layout$1,
353
+ palette: palette$1,
354
+ breakpoints: breakpoints$1,
355
+ expressiveness: expressiveness$1
356
+ };
357
+ var lightTheme = themes$1;
358
+
359
+ var palette = {
360
+ background: '#000',
361
+ foreground: '#fff',
362
+ accents_1: '#111',
363
+ accents_2: '#333',
364
+ accents_3: '#444',
365
+ accents_4: '#666',
366
+ accents_5: '#888',
367
+ accents_6: '#999',
368
+ accents_7: '#eaeaea',
369
+ accents_8: '#fafafa',
370
+ selection: '#f81ce5',
371
+ code: '#C25FFF',
372
+ border: '#333',
373
+ primary: '#0072F6',
374
+ primaryLight: '#96C1F3',
375
+ primaryLighter: '#CEE4FF',
376
+ primaryDark: '#00254E',
377
+ secondary: '#7828C9',
378
+ secondaryLighter: '#D1B1F1',
379
+ secondaryLight: '#EADCF9',
380
+ secondaryDark: '#290E45',
381
+ error: '#F31261',
382
+ errorLight: '#FAA8C6',
383
+ errorLighter: '#FDD8E6',
384
+ errorDark: '#4E041F',
385
+ success: '#17C965',
386
+ successLight: '#ADF5CD',
387
+ successLighter: '#DAFBE9',
388
+ successDark: '#06371C',
389
+ warning: '#F5A525',
390
+ warningLight: '#FBDBA8',
391
+ warningLighter: '#FDEFD9',
392
+ warningDark: '#4E3105',
393
+ info: '#06B7DC',
394
+ infoLighter: '#A5EEFE',
395
+ infoLight: '#D7F8FF',
396
+ infoDark: '#053B49',
397
+ purple: '#f81ce5',
398
+ alert: '#ff0080',
399
+ link: '#3291ff',
400
+ pre: '#363450'
401
+ };
402
+ var expressiveness = {
403
+ linkStyle: 'none',
404
+ linkHoverStyle: 'none',
405
+ dropdownBoxShadow: '0 0 0 1px #333',
406
+ scrollerStart: 'rgba(255, 255, 255, 1)',
407
+ scrollerEnd: 'rgba(255, 255, 255, 0)',
408
+ shadowSmall: '0 0 0 1px #333',
409
+ shadowMedium: '0 0 0 1px #333',
410
+ shadowLarge: '0 0 0 1px #333',
411
+ portalOpacity: 0.75
412
+ };
413
+ var font = defaultFont;
414
+ var breakpoints = defaultBreakpoints;
415
+ var layout = defaultLayout;
416
+ var themes = {
417
+ type: 'dark',
418
+ font: font,
419
+ layout: layout,
420
+ palette: palette,
421
+ breakpoints: breakpoints,
422
+ expressiveness: expressiveness
423
+ };
424
+ var darkTheme = themes;
425
+
426
+ var isObject = function isObject(target) {
427
+ return target && _typeof(target) === 'object';
428
+ };
429
+ var deepDuplicable = function deepDuplicable(source, target) {
430
+ if (!isObject(target) || !isObject(source)) return source;
431
+ var sourceKeys = Object.keys(source);
432
+ var result = {};
433
+
434
+ for (var _i = 0, _sourceKeys = sourceKeys; _i < _sourceKeys.length; _i++) {
435
+ var key = _sourceKeys[_i];
436
+ var sourceValue = source[key];
437
+ var targetValue = target[key];
438
+
439
+ if (Array.isArray(sourceValue) && Array.isArray(targetValue)) {
440
+ result[key] = targetValue.concat(sourceValue);
441
+ } else if (isObject(sourceValue) && isObject(targetValue)) {
442
+ result[key] = deepDuplicable(sourceValue, _objectSpread2({}, targetValue));
443
+ } else if (targetValue) {
444
+ result[key] = targetValue;
445
+ } else {
446
+ result[key] = sourceValue;
447
+ }
448
+ }
449
+
450
+ return result;
451
+ };
452
+
453
+ var getPresets = function getPresets() {
454
+ return [lightTheme, darkTheme];
455
+ };
456
+
457
+ var getPresetStaticTheme = function getPresetStaticTheme() {
458
+ return lightTheme;
459
+ };
460
+
461
+ var isAvailableThemeType = function isAvailableThemeType(type) {
462
+ if (!type) return false;
463
+ var presetThemes = getPresets();
464
+ var hasType = presetThemes.find(function (theme) {
465
+ return theme.type === type;
466
+ });
467
+ return !hasType;
468
+ };
469
+
470
+ var isPresetTheme = function isPresetTheme(themeOrType) {
471
+ if (!themeOrType) return false;
472
+ var isType = typeof themeOrType === 'string';
473
+ var type = isType ? themeOrType : themeOrType.type;
474
+ return !isAvailableThemeType(type);
475
+ };
476
+
477
+ var hasUserCustomTheme = function hasUserCustomTheme() {
478
+ var themes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
479
+ return !!themes.find(function (item) {
480
+ return isAvailableThemeType(item.type);
481
+ });
482
+ };
483
+
484
+ var create = function create(base, custom) {
485
+ if (!isAvailableThemeType(custom.type)) {
486
+ throw new Error('Duplicate or unavailable theme type');
487
+ }
488
+
489
+ return deepDuplicable(base, custom);
490
+ };
491
+
492
+ var createFromDark = function createFromDark(custom) {
493
+ return create(darkTheme, custom);
494
+ };
495
+
496
+ var createFromLight = function createFromLight(custom) {
497
+ return create(lightTheme, custom);
498
+ };
499
+
500
+ var Themes = {
501
+ isPresetTheme: isPresetTheme,
502
+ isAvailableThemeType: isAvailableThemeType,
503
+ hasUserCustomTheme: hasUserCustomTheme,
504
+ getPresets: getPresets,
505
+ getPresetStaticTheme: getPresetStaticTheme,
506
+ create: create,
507
+ createFromDark: createFromDark,
508
+ createFromLight: createFromLight
509
+ };
510
+ var Themes$1 = Themes;
511
+
512
+ var defaultTheme = Themes$1.getPresetStaticTheme();
513
+ var ThemeContext = /*#__PURE__*/React__default["default"].createContext(defaultTheme);
514
+ var useTheme$1 = function useTheme() {
515
+ return React__default["default"].useContext(ThemeContext);
516
+ };
517
+
518
+ var useTheme = useTheme$1;
519
+
520
+ var useCurrentState = function useCurrentState(initialState) {
521
+ var _useState = React.useState(function () {
522
+ return typeof initialState === 'function' ? initialState() : initialState;
523
+ }),
524
+ _useState2 = _slicedToArray(_useState, 2),
525
+ state = _useState2[0],
526
+ setState = _useState2[1];
527
+
528
+ var ref = React.useRef(initialState);
529
+ React.useEffect(function () {
530
+ ref.current = state;
531
+ }, [state]);
532
+
533
+ var setValue = function setValue(val) {
534
+ var result = typeof val === 'function' ? val(ref.current) : val;
535
+ ref.current = result;
536
+ setState(result);
537
+ };
538
+
539
+ return [state, setValue, ref];
540
+ };
541
+
542
+ var useCurrentState$1 = useCurrentState;
543
+
544
+ var getId = function getId() {
545
+ return Math.random().toString(32).slice(2, 10);
546
+ };
547
+ var pickChildByProps = function pickChildByProps(children, key, value) {
548
+ var target = [];
549
+ var isArray = Array.isArray(value);
550
+ var withoutPropChildren = React__default["default"].Children.map(children, function (item) {
551
+ if (! /*#__PURE__*/React__default["default"].isValidElement(item)) return null;
552
+ if (!item.props) return item;
553
+
554
+ if (isArray) {
555
+ if (value.includes(item.props[key])) {
556
+ target.push(item);
557
+ return null;
558
+ }
559
+
560
+ return item;
561
+ }
562
+
563
+ if (item.props[key] === value) {
564
+ target.push(item);
565
+ return null;
566
+ }
567
+
568
+ return item;
569
+ });
570
+ var targetChildren = target.length >= 0 ? target : undefined;
571
+ return [withoutPropChildren, targetChildren];
572
+ };
573
+ var isBrowser = function isBrowser() {
574
+ return Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);
575
+ };
576
+ var isCSSNumberValue = function isCSSNumberValue(value) {
577
+ return value !== undefined && !Number.isNaN(+value);
578
+ };
579
+
580
+ function SelectIconComponent() {
581
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
582
+ viewBox: "0 0 24 24",
583
+ strokeWidth: "1",
584
+ strokeLinecap: "round",
585
+ strokeLinejoin: "round",
586
+ fill: "none",
587
+ shapeRendering: "geometricPrecision",
588
+ className: "jsx-2742933678"
589
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
590
+ d: "M6 9l6 6 6-6",
591
+ className: "jsx-2742933678"
592
+ }), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
593
+ id: "2742933678"
594
+ }, "svg.jsx-2742933678{color:inherit;stroke:currentColor;-webkit-transition:all 200ms ease;transition:all 200ms ease;width:1.214em;height:1.214em;}"));
595
+ }
596
+
597
+ SelectIconComponent.displayName = 'BolioUISelectIcon';
598
+ var SelectIcon = /*#__PURE__*/React__default["default"].memo(SelectIconComponent);
599
+ var SelectIcon$1 = SelectIcon;
600
+
601
+ var defaultContext$1 = {
602
+ visible: false,
603
+ disableAll: false
604
+ };
605
+ var SelectContext = /*#__PURE__*/React__default["default"].createContext(defaultContext$1);
606
+ var useSelectContext = function useSelectContext() {
607
+ return React__default["default"].useContext(SelectContext);
608
+ };
609
+
610
+ var useSSR = function useSSR() {
611
+ var _useState = React.useState(false),
612
+ _useState2 = _slicedToArray(_useState, 2),
613
+ browser = _useState2[0],
614
+ setBrowser = _useState2[1];
615
+
616
+ React.useEffect(function () {
617
+ setBrowser(isBrowser());
618
+ }, []);
619
+ return {
620
+ isBrowser: browser,
621
+ isServer: !browser
622
+ };
623
+ };
624
+
625
+ var useSSR$1 = useSSR;
626
+
627
+ var createElement = function createElement(id) {
628
+ var el = document.createElement('div');
629
+ el.setAttribute('id', id);
630
+ return el;
631
+ };
632
+
633
+ var usePortal = function usePortal() {
634
+ var selectId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getId();
635
+ var getContainer = arguments.length > 1 ? arguments[1] : undefined;
636
+ var id = "bolio-ui-".concat(selectId);
637
+
638
+ var _useSSR = useSSR$1(),
639
+ isBrowser = _useSSR.isBrowser;
640
+
641
+ var _useState = React.useState(isBrowser ? createElement(id) : null),
642
+ _useState2 = _slicedToArray(_useState, 2),
643
+ elSnapshot = _useState2[0],
644
+ setElSnapshot = _useState2[1];
645
+
646
+ React.useEffect(function () {
647
+ var customContainer = getContainer ? getContainer() : null;
648
+ var parentElement = customContainer || document.body;
649
+ var hasElement = parentElement.querySelector("#".concat(id));
650
+ var el = hasElement || createElement(id);
651
+
652
+ if (!hasElement) {
653
+ parentElement.appendChild(el);
654
+ }
655
+
656
+ setElSnapshot(el);
657
+ }, []);
658
+ return elSnapshot;
659
+ };
660
+
661
+ var usePortal$1 = usePortal;
662
+
663
+ var useResize = function useResize(callback) {
664
+ var immediatelyInvoke = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
665
+ React.useEffect(function () {
666
+ var fn = function fn() {
667
+ return callback();
668
+ };
669
+
670
+ if (immediatelyInvoke) {
671
+ fn();
672
+ }
673
+
674
+ window.addEventListener('resize', fn);
675
+ return function () {
676
+ return window.removeEventListener('resize', fn);
677
+ };
678
+ }, []);
679
+ };
680
+
681
+ var useResize$1 = useResize;
682
+
683
+ var _excluded$6 = ["children", "className", "visible", "enterTime", "leaveTime", "clearTime", "name"];
684
+ var defaultProps$2 = {
685
+ visible: false,
686
+ enterTime: 60,
687
+ leaveTime: 60,
688
+ clearTime: 60,
689
+ className: '',
690
+ name: 'transition'
691
+ };
692
+
693
+ function CssTransition(_ref) {
694
+ var children = _ref.children,
695
+ className = _ref.className,
696
+ visible = _ref.visible,
697
+ enterTime = _ref.enterTime,
698
+ leaveTime = _ref.leaveTime,
699
+ clearTime = _ref.clearTime,
700
+ name = _ref.name,
701
+ props = _objectWithoutProperties(_ref, _excluded$6);
702
+
703
+ var _useState = React.useState(''),
704
+ _useState2 = _slicedToArray(_useState, 2),
705
+ classes = _useState2[0],
706
+ setClasses = _useState2[1];
707
+
708
+ var _useState3 = React.useState(visible),
709
+ _useState4 = _slicedToArray(_useState3, 2),
710
+ renderable = _useState4[0],
711
+ setRenderable = _useState4[1];
712
+
713
+ React.useEffect(function () {
714
+ var statusClassName = visible ? 'enter' : 'leave';
715
+ var time = visible ? enterTime : leaveTime;
716
+
717
+ if (visible && !renderable) {
718
+ setRenderable(true);
719
+ }
720
+
721
+ setClasses("".concat(name, "-").concat(statusClassName)); // set class to active
722
+
723
+ var timer = setTimeout(function () {
724
+ setClasses("".concat(name, "-").concat(statusClassName, " ").concat(name, "-").concat(statusClassName, "-active"));
725
+ clearTimeout(timer);
726
+ }, time); // remove classess when animation over
727
+
728
+ var clearClassesTimer = setTimeout(function () {
729
+ if (!visible) {
730
+ setClasses('');
731
+ setRenderable(false);
732
+ }
733
+
734
+ clearTimeout(clearClassesTimer);
735
+ }, time + clearTime);
736
+ return function () {
737
+ clearTimeout(timer);
738
+ clearTimeout(clearClassesTimer);
739
+ };
740
+ }, [visible, renderable]);
741
+ if (! /*#__PURE__*/React__default["default"].isValidElement(children) || !renderable) return null;
742
+ return /*#__PURE__*/React__default["default"].cloneElement(children, _objectSpread2(_objectSpread2({}, props), {}, {
743
+ className: "".concat(children.props.className, " ").concat(className, " ").concat(classes)
744
+ }));
745
+ }
746
+
747
+ CssTransition.defaultProps = defaultProps$2;
748
+ CssTransition.displayName = 'BolioUICssTransition';
749
+
750
+ var useClickAnyWhere = function useClickAnyWhere(handler) {
751
+ React.useEffect(function () {
752
+ var callback = function callback(event) {
753
+ return handler(event);
754
+ };
755
+
756
+ document.addEventListener('click', callback);
757
+ return function () {
758
+ return document.removeEventListener('click', callback);
759
+ };
760
+ }, [handler]);
761
+ };
762
+
763
+ var useClickAnyWhere$1 = useClickAnyWhere;
764
+
765
+ var useDOMObserver = function useDOMObserver(ref) {
766
+ var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
767
+ var config = {
768
+ attributes: false,
769
+ childList: true,
770
+ subtree: true
771
+ };
772
+ React.useEffect(function () {
773
+ if (!ref || !ref.current) return;
774
+ var unmount = false;
775
+
776
+ var done = function done() {
777
+ if (unmount) return;
778
+ callback.apply(void 0, arguments);
779
+ };
780
+
781
+ var observer = new MutationObserver(done);
782
+ observer.observe(ref.current, config);
783
+ return function () {
784
+ unmount = true;
785
+ observer.disconnect();
786
+ };
787
+ }, [ref]);
788
+ };
789
+
790
+ var useDOMObserver$1 = useDOMObserver;
791
+
792
+ var warningStack = {};
793
+
794
+ var useWarning = function useWarning(message, component) {
795
+ var tag = component ? " [".concat(component, "]") : ' ';
796
+ var log = "[Bolio UI]".concat(tag, ": ").concat(message);
797
+ if (typeof console === 'undefined') return;
798
+ if (warningStack[log]) return;
799
+ warningStack[log] = true;
800
+
801
+ if (process.env.NODE_ENV !== 'production') {
802
+ return console.error(log);
803
+ }
804
+
805
+ console.warn(log);
806
+ };
807
+
808
+ var useWarning$1 = useWarning;
809
+
810
+ var getElementOffset = function getElementOffset(el) {
811
+ if (!el) return {
812
+ top: 0,
813
+ left: 0
814
+ };
815
+
816
+ var _el$getBoundingClient = el.getBoundingClientRect(),
817
+ top = _el$getBoundingClient.top,
818
+ left = _el$getBoundingClient.left;
819
+
820
+ return {
821
+ top: top,
822
+ left: left
823
+ };
824
+ };
825
+ var defaultRect$1 = {
826
+ top: -1000,
827
+ left: -1000,
828
+ right: -1000,
829
+ width: 0,
830
+ height: 0,
831
+ elementTop: -1000
832
+ };
833
+
834
+ var getRectFromDOMWithContainer = function getRectFromDOMWithContainer(domRect, getContainer) {
835
+ if (!domRect) return defaultRect$1;
836
+ var container = getContainer ? getContainer() : null;
837
+ var scrollElement = container || document.documentElement;
838
+
839
+ var _getElementOffset = getElementOffset(container),
840
+ offsetTop = _getElementOffset.top,
841
+ offsetLeft = _getElementOffset.left;
842
+
843
+ return _objectSpread2(_objectSpread2({}, domRect), {}, {
844
+ width: domRect.width || domRect.right - domRect.left,
845
+ height: domRect.height || domRect.top - domRect.bottom,
846
+ top: domRect.bottom + scrollElement.scrollTop - offsetTop,
847
+ left: domRect.left + scrollElement.scrollLeft - offsetLeft,
848
+ elementTop: domRect.top + scrollElement.scrollTop - offsetTop
849
+ });
850
+ };
851
+ var getRefRect = function getRefRect(ref, getContainer) {
852
+ if (!ref || !ref.current) return defaultRect$1;
853
+ var rect = ref.current.getBoundingClientRect();
854
+ return getRectFromDOMWithContainer(rect, getContainer);
855
+ };
856
+
857
+ var classObjectToString = function classObjectToString(className) {
858
+ var keys = Object.keys(className);
859
+ var len = keys.length;
860
+ var str = '';
861
+
862
+ for (var index = 0; index < len; index++) {
863
+ var key = keys[index];
864
+ var val = className[keys[index]];
865
+ if (!val) continue;
866
+ str = str ? "".concat(str, " ").concat(String(key)) : String(key);
867
+ }
868
+
869
+ return str;
870
+ };
871
+
872
+ var isObjectClassName = function isObjectClassName(value) {
873
+ return _typeof(value) === 'object' && !Array.isArray(value);
874
+ };
875
+
876
+ var useClasses = function useClasses() {
877
+ var len = arguments.length;
878
+ var classes = '';
879
+ if (len === 0) return classes;
880
+
881
+ for (var index = 0; index < len; index++) {
882
+ var val = index < 0 || arguments.length <= index ? undefined : arguments[index];
883
+ if (!val) continue;
884
+
885
+ if (isObjectClassName(val)) {
886
+ classes += " ".concat(classObjectToString(val));
887
+ } else {
888
+ classes += " ".concat(String(val).trim());
889
+ }
890
+ }
891
+
892
+ return classes.trim();
893
+ };
894
+
895
+ var useClasses$1 = useClasses;
896
+
897
+ var defaultRect = {
898
+ top: -1000,
899
+ left: -1000,
900
+ right: -1000,
901
+ width: 0
902
+ };
903
+ var Dropdown = /*#__PURE__*/React__default["default"].memo(function (_ref) {
904
+ var children = _ref.children,
905
+ parent = _ref.parent,
906
+ visible = _ref.visible,
907
+ disableMatchWidth = _ref.disableMatchWidth,
908
+ getPopupContainer = _ref.getPopupContainer;
909
+ var el = usePortal$1('dropdown', getPopupContainer);
910
+
911
+ var _useState = React.useState(defaultRect),
912
+ _useState2 = _slicedToArray(_useState, 2),
913
+ rect = _useState2[0],
914
+ setRect = _useState2[1];
915
+
916
+ var classes = useClasses$1('dropdown', disableMatchWidth ? 'disable-match' : 'width-match');
917
+ if (!parent) return null;
918
+ /* istanbul ignore next */
919
+
920
+ if (process.env.NODE_ENV !== 'production') {
921
+ if (getPopupContainer && getPopupContainer()) {
922
+ var _el = getPopupContainer();
923
+
924
+ var style = window.getComputedStyle(_el);
925
+
926
+ if (style.position === 'static') {
927
+ useWarning$1('The element specified by "getPopupContainer" must have "position" set.');
928
+ }
929
+ }
930
+ }
931
+
932
+ var updateRect = function updateRect() {
933
+ var _getRefRect = getRefRect(parent, getPopupContainer),
934
+ top = _getRefRect.top,
935
+ left = _getRefRect.left,
936
+ right = _getRefRect.right,
937
+ nativeWidth = _getRefRect.width;
938
+
939
+ setRect({
940
+ top: top,
941
+ left: left,
942
+ right: right,
943
+ width: nativeWidth
944
+ });
945
+ };
946
+
947
+ useResize$1(updateRect);
948
+ useClickAnyWhere$1(function () {
949
+ var _getRefRect2 = getRefRect(parent, getPopupContainer),
950
+ top = _getRefRect2.top,
951
+ left = _getRefRect2.left;
952
+
953
+ var shouldUpdatePosition = top !== rect.top || left !== rect.left;
954
+ if (!shouldUpdatePosition) return;
955
+ updateRect();
956
+ });
957
+ useDOMObserver$1(parent, function () {
958
+ updateRect();
959
+ });
960
+ React.useEffect(function () {
961
+ if (!parent || !parent.current) return;
962
+ parent.current.addEventListener('mouseenter', updateRect);
963
+ /* istanbul ignore next */
964
+
965
+ return function () {
966
+ if (!parent || !parent.current) return;
967
+ parent.current.removeEventListener('mouseenter', updateRect);
968
+ };
969
+ }, [parent]);
970
+
971
+ var clickHandler = function clickHandler(event) {
972
+ event.stopPropagation();
973
+ event.nativeEvent.stopImmediatePropagation();
974
+ event.preventDefault();
975
+ };
976
+
977
+ var mouseDownHandler = function mouseDownHandler(event) {
978
+ event.preventDefault();
979
+ };
980
+
981
+ if (!el) return null;
982
+ return /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement(CssTransition, {
983
+ visible: visible
984
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
985
+ onClick: clickHandler,
986
+ onMouseDown: mouseDownHandler,
987
+ className: styledJsx_cjs.style.dynamic([["1644673105", [rect.top + 2, rect.left, rect.width, rect.width]]]) + " " + (classes || "")
988
+ }, children, /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
989
+ id: "1644673105",
990
+ dynamic: [rect.top + 2, rect.left, rect.width, rect.width]
991
+ }, ".dropdown.__jsx-style-dynamic-selector{position:absolute;top:".concat(rect.top + 2, "px;left:").concat(rect.left, "px;z-index:1100;}.width-match.__jsx-style-dynamic-selector{width:").concat(rect.width, "px;}.disable-match.__jsx-style-dynamic-selector{min-width:").concat(rect.width, "px;}")))), el);
992
+ });
993
+ var Dropdown$1 = Dropdown;
994
+
995
+ var SelectDropdown = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, dropdownRef) {
996
+ var visible = _ref.visible,
997
+ children = _ref.children,
998
+ _ref$className = _ref.className,
999
+ className = _ref$className === void 0 ? '' : _ref$className,
1000
+ _ref$dropdownStyle = _ref.dropdownStyle,
1001
+ dropdownStyle = _ref$dropdownStyle === void 0 ? {} : _ref$dropdownStyle,
1002
+ disableMatchWidth = _ref.disableMatchWidth,
1003
+ getPopupContainer = _ref.getPopupContainer;
1004
+ var theme = useTheme();
1005
+ var internalDropdownRef = React.useRef(null);
1006
+
1007
+ var _useSelectContext = useSelectContext(),
1008
+ ref = _useSelectContext.ref;
1009
+
1010
+ var classes = useClasses$1('select-dropdown', className);
1011
+ React.useImperativeHandle(dropdownRef, function () {
1012
+ return internalDropdownRef.current;
1013
+ });
1014
+ return /*#__PURE__*/React__default["default"].createElement(Dropdown$1, {
1015
+ parent: ref,
1016
+ visible: visible,
1017
+ disableMatchWidth: disableMatchWidth,
1018
+ getPopupContainer: getPopupContainer
1019
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1020
+ ref: internalDropdownRef,
1021
+ style: dropdownStyle,
1022
+ className: styledJsx_cjs.style.dynamic([["2782510679", [theme.layout.radius, theme.expressiveness.shadowLarge, theme.palette.background]]]) + " " + (classes || "")
1023
+ }, children, /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1024
+ id: "2782510679",
1025
+ dynamic: [theme.layout.radius, theme.expressiveness.shadowLarge, theme.palette.background]
1026
+ }, ".select-dropdown.__jsx-style-dynamic-selector{border-radius:".concat(theme.layout.radius, ";box-shadow:").concat(theme.expressiveness.shadowLarge, ";background-color:").concat(theme.palette.background, ";max-height:17em;overflow-y:auto;overflow-anchor:none;padding:0.38em 0;-webkit-scroll-behavior:smooth;-moz-scroll-behavior:smooth;-ms-scroll-behavior:smooth;scroll-behavior:smooth;}"))));
1027
+ });
1028
+ SelectDropdown.displayName = 'BolioUISelectDropdown';
1029
+ var SelectDropdown$1 = SelectDropdown;
1030
+
1031
+ var ScalePropKeys = ['width', 'height', 'padding', 'margin', 'w', 'h', 'paddingLeft', 'paddingRight', 'paddingTop', 'paddingBottom', 'pl', 'pr', 'pt', 'pb', 'marginLeft', 'marginRight', 'marginTop', 'marginBottom', 'ml', 'mr', 'mt', 'mb', 'px', 'py', 'mx', 'my', 'font', 'unit', 'scale'];
1032
+
1033
+ var defaultDynamicLayoutPipe = function defaultDynamicLayoutPipe(scale1x) {
1034
+ return "".concat(scale1x);
1035
+ };
1036
+
1037
+ var defaultContext = {
1038
+ getScaleProps: function getScaleProps() {
1039
+ return undefined;
1040
+ },
1041
+ getAllScaleProps: function getAllScaleProps() {
1042
+ return {};
1043
+ },
1044
+ SCALES: {
1045
+ pl: defaultDynamicLayoutPipe,
1046
+ pr: defaultDynamicLayoutPipe,
1047
+ pb: defaultDynamicLayoutPipe,
1048
+ pt: defaultDynamicLayoutPipe,
1049
+ px: defaultDynamicLayoutPipe,
1050
+ py: defaultDynamicLayoutPipe,
1051
+ mb: defaultDynamicLayoutPipe,
1052
+ ml: defaultDynamicLayoutPipe,
1053
+ mr: defaultDynamicLayoutPipe,
1054
+ mt: defaultDynamicLayoutPipe,
1055
+ mx: defaultDynamicLayoutPipe,
1056
+ my: defaultDynamicLayoutPipe,
1057
+ width: defaultDynamicLayoutPipe,
1058
+ height: defaultDynamicLayoutPipe,
1059
+ font: defaultDynamicLayoutPipe
1060
+ },
1061
+ unit: '16px'
1062
+ };
1063
+ var ScaleContext = /*#__PURE__*/React__default["default"].createContext(defaultContext);
1064
+ var useScale$1 = function useScale() {
1065
+ return React__default["default"].useContext(ScaleContext);
1066
+ };
1067
+
1068
+ var generateGetScaleProps = function generateGetScaleProps(props) {
1069
+ var getScaleProps = function getScaleProps(keyOrKeys) {
1070
+ if (!Array.isArray(keyOrKeys)) return props[keyOrKeys];
1071
+ var value = undefined;
1072
+
1073
+ var _iterator = _createForOfIteratorHelper(keyOrKeys),
1074
+ _step;
1075
+
1076
+ try {
1077
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
1078
+ var key = _step.value;
1079
+ var currentValue = props[key];
1080
+
1081
+ if (typeof currentValue !== 'undefined') {
1082
+ value = currentValue;
1083
+ }
1084
+ }
1085
+ } catch (err) {
1086
+ _iterator.e(err);
1087
+ } finally {
1088
+ _iterator.f();
1089
+ }
1090
+
1091
+ return value;
1092
+ };
1093
+
1094
+ return getScaleProps;
1095
+ };
1096
+ var generateGetAllScaleProps = function generateGetAllScaleProps(props) {
1097
+ var getAllScaleProps = function getAllScaleProps() {
1098
+ var scaleProps = {};
1099
+
1100
+ var _iterator2 = _createForOfIteratorHelper(ScalePropKeys),
1101
+ _step2;
1102
+
1103
+ try {
1104
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
1105
+ var key = _step2.value;
1106
+ var value = props[key];
1107
+
1108
+ if (typeof value !== 'undefined') {
1109
+ scaleProps[key] = value;
1110
+ }
1111
+ }
1112
+ } catch (err) {
1113
+ _iterator2.e(err);
1114
+ } finally {
1115
+ _iterator2.f();
1116
+ }
1117
+
1118
+ return scaleProps;
1119
+ };
1120
+
1121
+ return getAllScaleProps;
1122
+ };
1123
+
1124
+ var _excluded$5 = ["children"],
1125
+ _excluded2 = ["paddingLeft", "pl", "paddingRight", "pr", "paddingTop", "pt", "paddingBottom", "pb", "marginTop", "mt", "marginRight", "mr", "marginBottom", "mb", "marginLeft", "ml", "px", "py", "mx", "my", "width", "height", "font", "w", "h", "margin", "padding", "unit", "scale"];
1126
+
1127
+ var reduceScaleCoefficient = function reduceScaleCoefficient(scale) {
1128
+ if (scale === 1) return scale;
1129
+ var diff = Math.abs((scale - 1) / 2);
1130
+ return scale > 1 ? 1 + diff : 1 - diff;
1131
+ }; // eslint-disable-next-line @typescript-eslint/ban-types
1132
+
1133
+
1134
+ var withScale = function withScale(Render) {
1135
+ var ScaleFC = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
1136
+ var _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8, _ref9, _ref10, _ref11, _ref12, _ref13, _ref14, _ref15, _ref16, _ref17, _ref18, _ref19, _ref20, _ref21, _ref22, _ref23, _ref24, _ref25, _ref26, _ref27, _ref28, _ref29, _ref30, _ref31, _ref32, _ref33;
1137
+
1138
+ var children = _ref.children,
1139
+ props = _objectWithoutProperties(_ref, _excluded$5);
1140
+
1141
+ var _useTheme = useTheme(),
1142
+ layout = _useTheme.layout;
1143
+
1144
+ var paddingLeft = props.paddingLeft,
1145
+ pl = props.pl,
1146
+ paddingRight = props.paddingRight,
1147
+ pr = props.pr,
1148
+ paddingTop = props.paddingTop,
1149
+ pt = props.pt,
1150
+ paddingBottom = props.paddingBottom,
1151
+ pb = props.pb,
1152
+ marginTop = props.marginTop,
1153
+ mt = props.mt,
1154
+ marginRight = props.marginRight,
1155
+ mr = props.mr,
1156
+ marginBottom = props.marginBottom,
1157
+ mb = props.mb,
1158
+ marginLeft = props.marginLeft,
1159
+ ml = props.ml,
1160
+ px = props.px,
1161
+ py = props.py,
1162
+ mx = props.mx,
1163
+ my = props.my,
1164
+ width = props.width,
1165
+ height = props.height,
1166
+ font = props.font,
1167
+ w = props.w,
1168
+ h = props.h,
1169
+ margin = props.margin,
1170
+ padding = props.padding,
1171
+ _props$unit = props.unit,
1172
+ unit = _props$unit === void 0 ? layout.unit : _props$unit,
1173
+ _props$scale = props.scale,
1174
+ scale = _props$scale === void 0 ? 1 : _props$scale,
1175
+ innerProps = _objectWithoutProperties(props, _excluded2);
1176
+
1177
+ var makeScaleHandler = function makeScaleHandler(attrValue) {
1178
+ return function (scale1x, defaultValue) {
1179
+ // 0 means disable scale and the default value is 0
1180
+ if (scale1x === 0) {
1181
+ scale1x = 1;
1182
+ defaultValue = defaultValue || 0;
1183
+ }
1184
+
1185
+ var factor = reduceScaleCoefficient(scale) * scale1x;
1186
+
1187
+ if (typeof attrValue === 'undefined') {
1188
+ if (typeof defaultValue !== 'undefined') return "".concat(defaultValue);
1189
+ return "calc(".concat(factor, " * ").concat(unit, ")");
1190
+ }
1191
+
1192
+ if (!isCSSNumberValue(attrValue)) return "".concat(attrValue);
1193
+ var customFactor = factor * Number(attrValue);
1194
+ return "calc(".concat(customFactor, " * ").concat(unit, ")");
1195
+ };
1196
+ };
1197
+
1198
+ var value = {
1199
+ unit: unit,
1200
+ SCALES: {
1201
+ pt: makeScaleHandler((_ref2 = (_ref3 = paddingTop !== null && paddingTop !== void 0 ? paddingTop : pt) !== null && _ref3 !== void 0 ? _ref3 : py) !== null && _ref2 !== void 0 ? _ref2 : padding),
1202
+ pr: makeScaleHandler((_ref4 = (_ref5 = paddingRight !== null && paddingRight !== void 0 ? paddingRight : pr) !== null && _ref5 !== void 0 ? _ref5 : px) !== null && _ref4 !== void 0 ? _ref4 : padding),
1203
+ pb: makeScaleHandler((_ref6 = (_ref7 = paddingBottom !== null && paddingBottom !== void 0 ? paddingBottom : pb) !== null && _ref7 !== void 0 ? _ref7 : py) !== null && _ref6 !== void 0 ? _ref6 : padding),
1204
+ pl: makeScaleHandler((_ref8 = (_ref9 = paddingLeft !== null && paddingLeft !== void 0 ? paddingLeft : pl) !== null && _ref9 !== void 0 ? _ref9 : px) !== null && _ref8 !== void 0 ? _ref8 : padding),
1205
+ px: makeScaleHandler((_ref10 = (_ref11 = (_ref12 = (_ref13 = px !== null && px !== void 0 ? px : paddingLeft) !== null && _ref13 !== void 0 ? _ref13 : paddingRight) !== null && _ref12 !== void 0 ? _ref12 : pl) !== null && _ref11 !== void 0 ? _ref11 : pr) !== null && _ref10 !== void 0 ? _ref10 : padding),
1206
+ py: makeScaleHandler((_ref14 = (_ref15 = (_ref16 = (_ref17 = py !== null && py !== void 0 ? py : paddingTop) !== null && _ref17 !== void 0 ? _ref17 : paddingBottom) !== null && _ref16 !== void 0 ? _ref16 : pt) !== null && _ref15 !== void 0 ? _ref15 : pb) !== null && _ref14 !== void 0 ? _ref14 : padding),
1207
+ mt: makeScaleHandler((_ref18 = (_ref19 = marginTop !== null && marginTop !== void 0 ? marginTop : mt) !== null && _ref19 !== void 0 ? _ref19 : my) !== null && _ref18 !== void 0 ? _ref18 : margin),
1208
+ mr: makeScaleHandler((_ref20 = (_ref21 = marginRight !== null && marginRight !== void 0 ? marginRight : mr) !== null && _ref21 !== void 0 ? _ref21 : mx) !== null && _ref20 !== void 0 ? _ref20 : margin),
1209
+ mb: makeScaleHandler((_ref22 = (_ref23 = marginBottom !== null && marginBottom !== void 0 ? marginBottom : mb) !== null && _ref23 !== void 0 ? _ref23 : my) !== null && _ref22 !== void 0 ? _ref22 : margin),
1210
+ ml: makeScaleHandler((_ref24 = (_ref25 = marginLeft !== null && marginLeft !== void 0 ? marginLeft : ml) !== null && _ref25 !== void 0 ? _ref25 : mx) !== null && _ref24 !== void 0 ? _ref24 : margin),
1211
+ mx: makeScaleHandler((_ref26 = (_ref27 = (_ref28 = (_ref29 = mx !== null && mx !== void 0 ? mx : marginLeft) !== null && _ref29 !== void 0 ? _ref29 : marginRight) !== null && _ref28 !== void 0 ? _ref28 : ml) !== null && _ref27 !== void 0 ? _ref27 : mr) !== null && _ref26 !== void 0 ? _ref26 : margin),
1212
+ my: makeScaleHandler((_ref30 = (_ref31 = (_ref32 = (_ref33 = my !== null && my !== void 0 ? my : marginTop) !== null && _ref33 !== void 0 ? _ref33 : marginBottom) !== null && _ref32 !== void 0 ? _ref32 : mt) !== null && _ref31 !== void 0 ? _ref31 : mb) !== null && _ref30 !== void 0 ? _ref30 : margin),
1213
+ width: makeScaleHandler(width !== null && width !== void 0 ? width : w),
1214
+ height: makeScaleHandler(height !== null && height !== void 0 ? height : h),
1215
+ font: makeScaleHandler(font)
1216
+ },
1217
+ getScaleProps: generateGetScaleProps(props),
1218
+ getAllScaleProps: generateGetAllScaleProps(props)
1219
+ };
1220
+ return /*#__PURE__*/React__default["default"].createElement(ScaleContext.Provider, {
1221
+ value: value
1222
+ }, /*#__PURE__*/React__default["default"].createElement(Render, _extends({}, innerProps, {
1223
+ ref: ref
1224
+ }), children));
1225
+ });
1226
+ ScaleFC.displayName = "Scale".concat(Render.displayName || 'Wrapper');
1227
+ return ScaleFC;
1228
+ };
1229
+
1230
+ var withScale$1 = withScale;
1231
+
1232
+ var useScale = useScale$1;
1233
+
1234
+ var _excluded$4 = ["xs", "sm", "md", "lg", "xl", "justify", "direction", "alignItems", "alignContent", "children", "className"];
1235
+ var defaultProps$1 = {
1236
+ xs: false,
1237
+ sm: false,
1238
+ md: false,
1239
+ lg: false,
1240
+ xl: false,
1241
+ className: ''
1242
+ };
1243
+
1244
+ var getItemLayout = function getItemLayout(val) {
1245
+ var display = val === 0 ? 'display: none;' : 'display: inherit;';
1246
+
1247
+ if (typeof val === 'number') {
1248
+ var width = 100 / 12 * val;
1249
+ var ratio = width > 100 ? '100%' : width < 0 ? '0' : "".concat(width, "%");
1250
+ return {
1251
+ grow: 0,
1252
+ display: display,
1253
+ width: ratio,
1254
+ basis: ratio
1255
+ };
1256
+ }
1257
+
1258
+ return {
1259
+ grow: 1,
1260
+ display: display,
1261
+ width: '100%',
1262
+ basis: '0'
1263
+ };
1264
+ };
1265
+
1266
+ function GridBasicItem(_ref) {
1267
+ var xs = _ref.xs,
1268
+ sm = _ref.sm,
1269
+ md = _ref.md,
1270
+ lg = _ref.lg,
1271
+ xl = _ref.xl,
1272
+ justify = _ref.justify,
1273
+ direction = _ref.direction,
1274
+ alignItems = _ref.alignItems,
1275
+ alignContent = _ref.alignContent,
1276
+ children = _ref.children,
1277
+ className = _ref.className,
1278
+ props = _objectWithoutProperties(_ref, _excluded$4);
1279
+
1280
+ var theme = useTheme();
1281
+
1282
+ var _useScale = useScale(),
1283
+ SCALES = _useScale.SCALES;
1284
+
1285
+ var classes = React.useMemo(function () {
1286
+ var aligns = {
1287
+ justify: justify,
1288
+ direction: direction,
1289
+ alignItems: alignItems,
1290
+ alignContent: alignContent,
1291
+ xs: xs,
1292
+ sm: sm,
1293
+ md: md,
1294
+ lg: lg,
1295
+ xl: xl
1296
+ };
1297
+ var classString = Object.keys(aligns).reduce(function (pre, name) {
1298
+ if (aligns[name] !== undefined && aligns[name] !== false) return "".concat(pre, " ").concat(name);
1299
+ return pre;
1300
+ }, '');
1301
+ return classString.trim();
1302
+ }, [justify, direction, alignItems, alignContent, xs, sm, md, lg, xl]);
1303
+ var layout = React.useMemo(function () {
1304
+ return {
1305
+ xs: getItemLayout(xs),
1306
+ sm: getItemLayout(sm),
1307
+ md: getItemLayout(md),
1308
+ lg: getItemLayout(lg),
1309
+ xl: getItemLayout(xl)
1310
+ };
1311
+ }, [xs, sm, md, lg, xl]);
1312
+ return /*#__PURE__*/React__default["default"].createElement("div", _extends({}, props, {
1313
+ className: styledJsx_cjs.style.dynamic([["568430467", [SCALES.font(1, 'inherit'), SCALES.height(1, 'auto'), justify, direction, alignContent, alignItems, layout.xs.grow, layout.xs.width, layout.xs.basis, layout.xs.display, theme.breakpoints.sm.min, layout.sm.grow, layout.sm.width, layout.sm.basis, layout.sm.display, theme.breakpoints.md.min, layout.md.grow, layout.md.width, layout.md.basis, layout.md.display, theme.breakpoints.lg.min, layout.lg.grow, layout.lg.width, layout.lg.basis, layout.lg.display, theme.breakpoints.xl.min, layout.xl.grow, layout.xl.width, layout.xl.basis, layout.xl.display]]]) + " " + (props && props.className != null && props.className || useClasses$1('item', classes, className) || "")
1314
+ }), children, /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1315
+ id: "568430467",
1316
+ dynamic: [SCALES.font(1, 'inherit'), SCALES.height(1, 'auto'), justify, direction, alignContent, alignItems, layout.xs.grow, layout.xs.width, layout.xs.basis, layout.xs.display, theme.breakpoints.sm.min, layout.sm.grow, layout.sm.width, layout.sm.basis, layout.sm.display, theme.breakpoints.md.min, layout.md.grow, layout.md.width, layout.md.basis, layout.md.display, theme.breakpoints.lg.min, layout.lg.grow, layout.lg.width, layout.lg.basis, layout.lg.display, theme.breakpoints.xl.min, layout.xl.grow, layout.xl.width, layout.xl.basis, layout.xl.display]
1317
+ }, ".item.__jsx-style-dynamic-selector{font-size:".concat(SCALES.font(1, 'inherit'), ";height:").concat(SCALES.height(1, 'auto'), ";}.justify.__jsx-style-dynamic-selector{-webkit-box-pack:").concat(justify, ";-webkit-justify-content:").concat(justify, ";-ms-flex-pack:").concat(justify, ";justify-content:").concat(justify, ";}.direction.__jsx-style-dynamic-selector{-webkit-flex-direction:").concat(direction, ";-ms-flex-direction:").concat(direction, ";flex-direction:").concat(direction, ";}.alignContent.__jsx-style-dynamic-selector{-webkit-align-content:").concat(alignContent, ";-ms-flex-line-pack:").concat(alignContent, ";align-content:").concat(alignContent, ";}.alignItems.__jsx-style-dynamic-selector{-webkit-align-items:").concat(alignItems, ";-webkit-box-align:").concat(alignItems, ";-ms-flex-align:").concat(alignItems, ";align-items:").concat(alignItems, ";}.xs.__jsx-style-dynamic-selector{-webkit-box-flex:").concat(layout.xs.grow, ";-webkit-flex-grow:").concat(layout.xs.grow, ";-ms-flex-positive:").concat(layout.xs.grow, ";flex-grow:").concat(layout.xs.grow, ";max-width:").concat(layout.xs.width, ";-webkit-flex-basis:").concat(layout.xs.basis, ";-ms-flex-preferred-size:").concat(layout.xs.basis, ";flex-basis:").concat(layout.xs.basis, ";").concat(layout.xs.display, ";}@media only screen and (min-width:").concat(theme.breakpoints.sm.min, "){.sm.__jsx-style-dynamic-selector{-webkit-box-flex:").concat(layout.sm.grow, ";-webkit-flex-grow:").concat(layout.sm.grow, ";-ms-flex-positive:").concat(layout.sm.grow, ";flex-grow:").concat(layout.sm.grow, ";max-width:").concat(layout.sm.width, ";-webkit-flex-basis:").concat(layout.sm.basis, ";-ms-flex-preferred-size:").concat(layout.sm.basis, ";flex-basis:").concat(layout.sm.basis, ";").concat(layout.sm.display, ";}}@media only screen and (min-width:").concat(theme.breakpoints.md.min, "){.md.__jsx-style-dynamic-selector{-webkit-box-flex:").concat(layout.md.grow, ";-webkit-flex-grow:").concat(layout.md.grow, ";-ms-flex-positive:").concat(layout.md.grow, ";flex-grow:").concat(layout.md.grow, ";max-width:").concat(layout.md.width, ";-webkit-flex-basis:").concat(layout.md.basis, ";-ms-flex-preferred-size:").concat(layout.md.basis, ";flex-basis:").concat(layout.md.basis, ";").concat(layout.md.display, ";}}@media only screen and (min-width:").concat(theme.breakpoints.lg.min, "){.lg.__jsx-style-dynamic-selector{-webkit-box-flex:").concat(layout.lg.grow, ";-webkit-flex-grow:").concat(layout.lg.grow, ";-ms-flex-positive:").concat(layout.lg.grow, ";flex-grow:").concat(layout.lg.grow, ";max-width:").concat(layout.lg.width, ";-webkit-flex-basis:").concat(layout.lg.basis, ";-ms-flex-preferred-size:").concat(layout.lg.basis, ";flex-basis:").concat(layout.lg.basis, ";").concat(layout.lg.display, ";}}@media only screen and (min-width:").concat(theme.breakpoints.xl.min, "){.xl.__jsx-style-dynamic-selector{-webkit-box-flex:").concat(layout.xl.grow, ";-webkit-flex-grow:").concat(layout.xl.grow, ";-ms-flex-positive:").concat(layout.xl.grow, ";flex-grow:").concat(layout.xl.grow, ";max-width:").concat(layout.xl.width, ";-webkit-flex-basis:").concat(layout.xl.basis, ";-ms-flex-preferred-size:").concat(layout.xl.basis, ";flex-basis:").concat(layout.xl.basis, ";").concat(layout.xl.display, ";}}")));
1318
+ }
1319
+
1320
+ GridBasicItem.defaultProps = defaultProps$1;
1321
+ GridBasicItem.displayName = 'BolioUIGridBasicItem';
1322
+
1323
+ var _excluded$3 = ["children", "className"];
1324
+
1325
+ function GridComponent(_ref) {
1326
+ var children = _ref.children,
1327
+ _ref$className = _ref.className,
1328
+ className = _ref$className === void 0 ? '' : _ref$className,
1329
+ props = _objectWithoutProperties(_ref, _excluded$3);
1330
+
1331
+ var _useScale = useScale(),
1332
+ SCALES = _useScale.SCALES;
1333
+
1334
+ var gridGapUnit = 'var(--grid-gap-unit)';
1335
+ var _styles$className = {
1336
+ styles: /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1337
+ id: "2935018504",
1338
+ dynamic: [SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0, gridGapUnit), SCALES.pr(0, gridGapUnit), SCALES.pb(0, gridGapUnit), SCALES.pl(0, gridGapUnit)]
1339
+ }, "div.__jsx-style-dynamic-selector{margin:".concat(SCALES.mt(0), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0), " ").concat(SCALES.ml(0), ";box-sizing:border-box;padding:").concat(SCALES.pt(0, gridGapUnit), " ").concat(SCALES.pr(0, gridGapUnit), " ").concat(SCALES.pb(0, gridGapUnit), " ").concat(SCALES.pl(0, gridGapUnit), ";}")),
1340
+ className: styledJsx_cjs.style.dynamic([["2935018504", [SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0, gridGapUnit), SCALES.pr(0, gridGapUnit), SCALES.pb(0, gridGapUnit), SCALES.pl(0, gridGapUnit)]]])
1341
+ },
1342
+ resolveClassName = _styles$className.className,
1343
+ styles = _styles$className.styles;
1344
+ var classes = useClasses$1(resolveClassName, className);
1345
+ return /*#__PURE__*/React__default["default"].createElement(GridBasicItem, _extends({
1346
+ className: classes
1347
+ }, props), children, styles);
1348
+ }
1349
+
1350
+ GridComponent.displayName = 'BolioUIGrid';
1351
+ var Grid = withScale$1(GridComponent);
1352
+ var Grid$1 = Grid;
1353
+
1354
+ var _excluded$2 = ["gap", "wrap", "children", "className"];
1355
+
1356
+ function GridContainerComponent(_ref) {
1357
+ var _ref$gap = _ref.gap,
1358
+ gap = _ref$gap === void 0 ? 0 : _ref$gap,
1359
+ _ref$wrap = _ref.wrap,
1360
+ wrap = _ref$wrap === void 0 ? 'wrap' : _ref$wrap,
1361
+ children = _ref.children,
1362
+ _ref$className = _ref.className,
1363
+ className = _ref$className === void 0 ? '' : _ref$className,
1364
+ props = _objectWithoutProperties(_ref, _excluded$2);
1365
+
1366
+ var _useScale = useScale(),
1367
+ unit = _useScale.unit,
1368
+ SCALES = _useScale.SCALES;
1369
+
1370
+ var gapUnit = React.useMemo(function () {
1371
+ return "calc(".concat(gap, " * ").concat(unit, " * 1/3)");
1372
+ }, [gap, unit]);
1373
+ var gridConMargin = 'calc(-1 * var(--grid-gap-unit))';
1374
+ var gridConWidth = 'calc(100% + var(--grid-gap-unit) * 2)';
1375
+ var _styles$className = {
1376
+ styles: /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1377
+ id: "1072081127",
1378
+ dynamic: [gapUnit, gridConMargin, gridConWidth, wrap, SCALES.width(1, gridConWidth), SCALES.mt(0, gridConMargin), SCALES.mr(0, gridConMargin), SCALES.mb(0, gridConMargin), SCALES.ml(0, gridConMargin)]
1379
+ }, "div.__jsx-style-dynamic-selector{--grid-gap-unit:".concat(gapUnit, ";--grid-container-margin:").concat(gridConMargin, ";--grid-container-width:").concat(gridConWidth, ";display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:").concat(wrap, ";-ms-flex-wrap:").concat(wrap, ";flex-wrap:").concat(wrap, ";box-sizing:border-box;}")),
1380
+ className: styledJsx_cjs.style.dynamic([["1072081127", [gapUnit, gridConMargin, gridConWidth, wrap, SCALES.width(1, gridConWidth), SCALES.mt(0, gridConMargin), SCALES.mr(0, gridConMargin), SCALES.mb(0, gridConMargin), SCALES.ml(0, gridConMargin)]]])
1381
+ },
1382
+ resolveClassName = _styles$className.className,
1383
+ styles = _styles$className.styles;
1384
+ var classes = useClasses$1(resolveClassName, className);
1385
+ return /*#__PURE__*/React__default["default"].createElement(GridBasicItem, _extends({
1386
+ className: classes
1387
+ }, props), children, styles);
1388
+ }
1389
+
1390
+ GridContainerComponent.displayName = 'BolioUIGridContainer';
1391
+ var GridContainer = withScale$1(GridContainerComponent);
1392
+ var GridContainer$1 = GridContainer;
1393
+
1394
+ Grid$1.Container = GridContainer$1;
1395
+
1396
+ function SelectIconClear(_ref) {
1397
+ var onClick = _ref.onClick;
1398
+ var theme = useTheme();
1399
+
1400
+ var clickHandler = function clickHandler(event) {
1401
+ event.preventDefault();
1402
+ event.stopPropagation();
1403
+ event.nativeEvent.stopImmediatePropagation();
1404
+ onClick && onClick(event);
1405
+ };
1406
+
1407
+ return /*#__PURE__*/React__default["default"].createElement("div", {
1408
+ onClick: clickHandler,
1409
+ className: styledJsx_cjs.style.dynamic([["1984024521", [theme.palette.accents_3, theme.palette.foreground]]]) + " " + "clear-icon"
1410
+ }, /*#__PURE__*/React__default["default"].createElement("svg", {
1411
+ viewBox: "0 0 24 24",
1412
+ stroke: "currentColor",
1413
+ strokeWidth: "1.5",
1414
+ strokeLinecap: "round",
1415
+ strokeLinejoin: "round",
1416
+ fill: "none",
1417
+ shapeRendering: "geometricPrecision",
1418
+ className: styledJsx_cjs.style.dynamic([["1984024521", [theme.palette.accents_3, theme.palette.foreground]]])
1419
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
1420
+ d: "M18 6L6 18",
1421
+ className: styledJsx_cjs.style.dynamic([["1984024521", [theme.palette.accents_3, theme.palette.foreground]]])
1422
+ }), /*#__PURE__*/React__default["default"].createElement("path", {
1423
+ d: "M6 6l12 12",
1424
+ className: styledJsx_cjs.style.dynamic([["1984024521", [theme.palette.accents_3, theme.palette.foreground]]])
1425
+ })), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1426
+ id: "1984024521",
1427
+ dynamic: [theme.palette.accents_3, theme.palette.foreground]
1428
+ }, ".clear-icon.__jsx-style-dynamic-selector{padding:0 0 0 0.5em;margin:0;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;cursor:pointer;box-sizing:border-box;-webkit-transition:color 150ms ease 0s;transition:color 150ms ease 0s;color:".concat(theme.palette.accents_3, ";visibility:visible;opacity:1;}.clear-icon.__jsx-style-dynamic-selector:hover{color:").concat(theme.palette.foreground, ";}svg.__jsx-style-dynamic-selector{color:currentColor;width:1em;height:1em;}")));
1429
+ }
1430
+
1431
+ var MemoSelectIconClear = /*#__PURE__*/React__default["default"].memo(SelectIconClear);
1432
+ var SelectClearIcon = MemoSelectIconClear;
1433
+
1434
+ function SelectMultipleValue(_ref) {
1435
+ var disabled = _ref.disabled,
1436
+ onClear = _ref.onClear,
1437
+ children = _ref.children;
1438
+ var theme = useTheme();
1439
+ return /*#__PURE__*/React__default["default"].createElement(Grid$1, null, /*#__PURE__*/React__default["default"].createElement("div", {
1440
+ className: styledJsx_cjs.style.dynamic([["1576722377", [theme.layout.radius, theme.palette.accents_2, disabled ? theme.palette.accents_4 : theme.palette.accents_6]]]) + " " + "item"
1441
+ }, children, !!onClear && /*#__PURE__*/React__default["default"].createElement(SelectClearIcon, {
1442
+ onClick: onClear
1443
+ })), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1444
+ id: "1576722377",
1445
+ dynamic: [theme.layout.radius, theme.palette.accents_2, disabled ? theme.palette.accents_4 : theme.palette.accents_6]
1446
+ }, ".item.__jsx-style-dynamic-selector{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;justify-items:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1;padding:0 0.5em;font-size:var(--select-font-size);height:calc(var(--select-font-size) * 2);border-radius:".concat(theme.layout.radius, ";background-color:").concat(theme.palette.accents_2, ";color:").concat(disabled ? theme.palette.accents_4 : theme.palette.accents_6, ";}.item.__jsx-style-dynamic-selector>div:not(.clear-icon),.item.__jsx-style-dynamic-selector>div:not(.clear-icon):hover{border-radius:0;background-color:transparent;padding:0;margin:0;color:inherit;}")));
1447
+ }
1448
+
1449
+ SelectMultipleValue.displayName = 'BolioUISelectMultipleValue';
1450
+
1451
+ var getColors = function getColors(palette, status) {
1452
+ var colors = {
1453
+ "default": {
1454
+ border: palette.border,
1455
+ borderActive: palette.foreground,
1456
+ iconBorder: palette.accents_5,
1457
+ placeholderColor: palette.accents_3
1458
+ },
1459
+ primary: {
1460
+ border: palette.primary,
1461
+ borderActive: palette.primary,
1462
+ iconBorder: palette.primary,
1463
+ placeholderColor: palette.accents_3
1464
+ },
1465
+ secondary: {
1466
+ border: palette.secondary,
1467
+ borderActive: palette.secondary,
1468
+ iconBorder: palette.secondary,
1469
+ placeholderColor: palette.accents_3
1470
+ },
1471
+ success: {
1472
+ border: palette.success,
1473
+ borderActive: palette.success,
1474
+ iconBorder: palette.success,
1475
+ placeholderColor: palette.accents_3
1476
+ },
1477
+ warning: {
1478
+ border: palette.warning,
1479
+ borderActive: palette.warning,
1480
+ iconBorder: palette.warning,
1481
+ placeholderColor: palette.accents_3
1482
+ },
1483
+ error: {
1484
+ border: palette.error,
1485
+ borderActive: palette.error,
1486
+ iconBorder: palette.error,
1487
+ placeholderColor: palette.error
1488
+ },
1489
+ info: {
1490
+ border: palette.info,
1491
+ borderActive: palette.info,
1492
+ iconBorder: palette.info,
1493
+ placeholderColor: palette.accents_3
1494
+ }
1495
+ };
1496
+ if (!status) return colors["default"];
1497
+ return colors[status];
1498
+ };
1499
+
1500
+ var Ellipsis = function Ellipsis(_ref) {
1501
+ var children = _ref.children,
1502
+ height = _ref.height;
1503
+ return /*#__PURE__*/React__default["default"].createElement("span", {
1504
+ className: styledJsx_cjs.style.dynamic([["822089635", [height]]])
1505
+ }, children, /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1506
+ id: "822089635",
1507
+ dynamic: [height]
1508
+ }, "span.__jsx-style-dynamic-selector{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:".concat(height, ";min-width:0;}")));
1509
+ };
1510
+
1511
+ var Ellipsis$1 = /*#__PURE__*/React__default["default"].memo(Ellipsis);
1512
+
1513
+ var SelectInput = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, inputRef) {
1514
+ var visible = _ref.visible,
1515
+ onBlur = _ref.onBlur,
1516
+ onFocus = _ref.onFocus;
1517
+ var ref = React.useRef(null);
1518
+ React.useImperativeHandle(inputRef, function () {
1519
+ return ref.current;
1520
+ });
1521
+ React.useEffect(function () {
1522
+ if (visible) {
1523
+ var _ref$current;
1524
+
1525
+ (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focus();
1526
+ }
1527
+ }, [visible]);
1528
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("input", {
1529
+ ref: ref,
1530
+ type: "search",
1531
+ role: "combobox",
1532
+ "aria-haspopup": "listbox",
1533
+ readOnly: true,
1534
+ unselectable: "on",
1535
+ "aria-expanded": visible,
1536
+ onBlur: onBlur,
1537
+ onFocus: onFocus,
1538
+ className: "jsx-2813108835"
1539
+ }), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1540
+ id: "2813108835"
1541
+ }, "input.jsx-2813108835{position:fixed;top:-10000px;left:-10000px;opacity:0;z-index:-1;width:0;height:0;padding:0;font-size:0;border:none;}"));
1542
+ });
1543
+ SelectInput.displayName = 'BolioUISelectInput';
1544
+ var SelectInput$1 = SelectInput;
1545
+
1546
+ var _excluded$1 = ["children", "type", "disabled", "initialValue", "value", "icon", "onChange", "pure", "multiple", "clearable", "placeholder", "className", "dropdownClassName", "dropdownStyle", "disableMatchWidth", "getPopupContainer", "onDropdownVisibleChange"];
1547
+ var defaultProps = {
1548
+ disabled: false,
1549
+ type: 'default',
1550
+ icon: SelectIcon$1,
1551
+ pure: false,
1552
+ multiple: false,
1553
+ clearable: true,
1554
+ className: '',
1555
+ disableMatchWidth: false,
1556
+ onDropdownVisibleChange: function onDropdownVisibleChange() {}
1557
+ };
1558
+ var SelectComponent = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, selectRef) {
1559
+ var children = _ref.children,
1560
+ _ref$type = _ref.type,
1561
+ type = _ref$type === void 0 ? 'default' : _ref$type,
1562
+ _ref$disabled = _ref.disabled,
1563
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
1564
+ init = _ref.initialValue,
1565
+ customValue = _ref.value,
1566
+ _ref$icon = _ref.icon,
1567
+ Icon = _ref$icon === void 0 ? SelectIcon$1 : _ref$icon,
1568
+ onChange = _ref.onChange,
1569
+ _ref$pure = _ref.pure,
1570
+ pure = _ref$pure === void 0 ? false : _ref$pure,
1571
+ _ref$multiple = _ref.multiple,
1572
+ multiple = _ref$multiple === void 0 ? false : _ref$multiple,
1573
+ _ref$clearable = _ref.clearable,
1574
+ clearable = _ref$clearable === void 0 ? true : _ref$clearable,
1575
+ placeholder = _ref.placeholder,
1576
+ _ref$className = _ref.className,
1577
+ className = _ref$className === void 0 ? '' : _ref$className,
1578
+ dropdownClassName = _ref.dropdownClassName,
1579
+ dropdownStyle = _ref.dropdownStyle,
1580
+ _ref$disableMatchWidt = _ref.disableMatchWidth,
1581
+ disableMatchWidth = _ref$disableMatchWidt === void 0 ? false : _ref$disableMatchWidt,
1582
+ getPopupContainer = _ref.getPopupContainer,
1583
+ _ref$onDropdownVisibl = _ref.onDropdownVisibleChange,
1584
+ onDropdownVisibleChange = _ref$onDropdownVisibl === void 0 ? function () {} : _ref$onDropdownVisibl,
1585
+ props = _objectWithoutProperties(_ref, _excluded$1);
1586
+
1587
+ var theme = useTheme();
1588
+
1589
+ var _useScale = useScale(),
1590
+ SCALES = _useScale.SCALES;
1591
+
1592
+ var ref = React.useRef(null);
1593
+ var inputRef = React.useRef(null);
1594
+ var dropdownRef = React.useRef(null);
1595
+
1596
+ var _useState = React.useState(false),
1597
+ _useState2 = _slicedToArray(_useState, 2),
1598
+ visible = _useState2[0],
1599
+ setVisible = _useState2[1];
1600
+
1601
+ var _useState3 = React.useState(false),
1602
+ _useState4 = _slicedToArray(_useState3, 2),
1603
+ selectFocus = _useState4[0],
1604
+ setSelectFocus = _useState4[1];
1605
+
1606
+ var _useCurrentState = useCurrentState$1(function () {
1607
+ if (!multiple) return init;
1608
+ if (Array.isArray(init)) return init;
1609
+ return typeof init === 'undefined' ? [] : [init];
1610
+ }),
1611
+ _useCurrentState2 = _slicedToArray(_useCurrentState, 3),
1612
+ value = _useCurrentState2[0],
1613
+ setValue = _useCurrentState2[1],
1614
+ valueRef = _useCurrentState2[2];
1615
+
1616
+ var isEmpty = React.useMemo(function () {
1617
+ if (!Array.isArray(value)) return !value;
1618
+ return value.length === 0;
1619
+ }, [value]);
1620
+
1621
+ var _useMemo = React.useMemo(function () {
1622
+ return getColors(theme.palette, type);
1623
+ }, [theme.palette, type]),
1624
+ border = _useMemo.border,
1625
+ borderActive = _useMemo.borderActive,
1626
+ iconBorder = _useMemo.iconBorder,
1627
+ placeholderColor = _useMemo.placeholderColor;
1628
+
1629
+ var updateVisible = function updateVisible(next) {
1630
+ onDropdownVisibleChange(next);
1631
+ setVisible(next);
1632
+ };
1633
+
1634
+ var updateValue = function updateValue(next) {
1635
+ setValue(function (last) {
1636
+ if (!Array.isArray(last)) return next;
1637
+ if (!last.includes(next)) return [].concat(_toConsumableArray(last), [next]);
1638
+ return last.filter(function (item) {
1639
+ return item !== next;
1640
+ });
1641
+ });
1642
+ onChange && onChange(valueRef.current);
1643
+
1644
+ if (!multiple) {
1645
+ updateVisible(false);
1646
+ }
1647
+ };
1648
+
1649
+ var initialValue = React.useMemo(function () {
1650
+ return {
1651
+ value: value,
1652
+ visible: visible,
1653
+ updateValue: updateValue,
1654
+ updateVisible: updateVisible,
1655
+ ref: ref,
1656
+ disableAll: disabled
1657
+ };
1658
+ }, [visible, disabled, ref, value, multiple]);
1659
+
1660
+ var clickHandler = function clickHandler(event) {
1661
+ event.stopPropagation();
1662
+ event.nativeEvent.stopImmediatePropagation();
1663
+ event.preventDefault();
1664
+ if (disabled) return;
1665
+ updateVisible(!visible);
1666
+ event.preventDefault();
1667
+ };
1668
+
1669
+ var mouseDownHandler = function mouseDownHandler(event) {
1670
+ /* istanbul ignore next */
1671
+ if (visible) {
1672
+ event.preventDefault();
1673
+ }
1674
+ };
1675
+
1676
+ React.useEffect(function () {
1677
+ if (customValue === undefined) return;
1678
+ setValue(customValue);
1679
+ }, [customValue]);
1680
+ React.useImperativeHandle(selectRef, function () {
1681
+ return {
1682
+ focus: function focus() {
1683
+ var _inputRef$current;
1684
+
1685
+ return (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
1686
+ },
1687
+ blur: function blur() {
1688
+ var _inputRef$current2;
1689
+
1690
+ return (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.blur();
1691
+ },
1692
+ scrollTo: function scrollTo(options) {
1693
+ var _dropdownRef$current;
1694
+
1695
+ return (_dropdownRef$current = dropdownRef.current) === null || _dropdownRef$current === void 0 ? void 0 : _dropdownRef$current.scrollTo(options);
1696
+ }
1697
+ };
1698
+ }, [inputRef, dropdownRef]);
1699
+ var selectedChild = React.useMemo(function () {
1700
+ var _pickChildByProps = pickChildByProps(children, 'value', value),
1701
+ _pickChildByProps2 = _slicedToArray(_pickChildByProps, 2),
1702
+ optionChildren = _pickChildByProps2[1];
1703
+
1704
+ return React__default["default"].Children.map(optionChildren, function (child) {
1705
+ if (! /*#__PURE__*/React__default["default"].isValidElement(child)) return null;
1706
+ var el = /*#__PURE__*/React__default["default"].cloneElement(child, {
1707
+ preventAllEvents: true
1708
+ });
1709
+ if (!multiple) return el;
1710
+ return /*#__PURE__*/React__default["default"].createElement(SelectMultipleValue, {
1711
+ disabled: disabled,
1712
+ onClear: clearable ? function () {
1713
+ return updateValue(child.props.value);
1714
+ } : null
1715
+ }, el);
1716
+ });
1717
+ }, [value, children, multiple]);
1718
+
1719
+ var onInputBlur = function onInputBlur() {
1720
+ updateVisible(false);
1721
+ setSelectFocus(false);
1722
+ };
1723
+
1724
+ var classes = useClasses$1('select', {
1725
+ active: selectFocus || visible,
1726
+ multiple: multiple
1727
+ }, className);
1728
+ return /*#__PURE__*/React__default["default"].createElement(SelectContext.Provider, {
1729
+ value: initialValue
1730
+ }, /*#__PURE__*/React__default["default"].createElement("div", _extends({
1731
+ ref: ref,
1732
+ onClick: clickHandler,
1733
+ onMouseDown: mouseDownHandler
1734
+ }, props, {
1735
+ className: styledJsx_cjs.style.dynamic([["3089088549", [disabled ? 'not-allowed' : 'pointer', border, theme.layout.radius, disabled ? theme.palette.accents_1 : theme.palette.background, SCALES.font(0.875), SCALES.height(2.25), SCALES.width(1, 'initial'), SCALES.pt(0), SCALES.pr(0.334), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0.334), SCALES.pr(0.334), SCALES.pb(0.334), SCALES.pl(0.667), disabled ? theme.palette.border : borderActive, disabled ? theme.palette.accents_5 : borderActive, disabled ? theme.palette.accents_4 : theme.palette.foreground, placeholderColor, theme.layout.gapQuarter, visible ? '180' : '0', iconBorder]]]) + " " + (props && props.className != null && props.className || classes || "")
1736
+ }), /*#__PURE__*/React__default["default"].createElement(SelectInput$1, {
1737
+ ref: inputRef,
1738
+ visible: visible,
1739
+ onBlur: onInputBlur,
1740
+ onFocus: function onFocus() {
1741
+ return setSelectFocus(true);
1742
+ }
1743
+ }), isEmpty && /*#__PURE__*/React__default["default"].createElement("span", {
1744
+ className: styledJsx_cjs.style.dynamic([["3089088549", [disabled ? 'not-allowed' : 'pointer', border, theme.layout.radius, disabled ? theme.palette.accents_1 : theme.palette.background, SCALES.font(0.875), SCALES.height(2.25), SCALES.width(1, 'initial'), SCALES.pt(0), SCALES.pr(0.334), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0.334), SCALES.pr(0.334), SCALES.pb(0.334), SCALES.pl(0.667), disabled ? theme.palette.border : borderActive, disabled ? theme.palette.accents_5 : borderActive, disabled ? theme.palette.accents_4 : theme.palette.foreground, placeholderColor, theme.layout.gapQuarter, visible ? '180' : '0', iconBorder]]]) + " " + "value placeholder"
1745
+ }, /*#__PURE__*/React__default["default"].createElement(Ellipsis$1, {
1746
+ height: "var(--select-height)"
1747
+ }, placeholder)), value && !multiple && /*#__PURE__*/React__default["default"].createElement("span", {
1748
+ className: styledJsx_cjs.style.dynamic([["3089088549", [disabled ? 'not-allowed' : 'pointer', border, theme.layout.radius, disabled ? theme.palette.accents_1 : theme.palette.background, SCALES.font(0.875), SCALES.height(2.25), SCALES.width(1, 'initial'), SCALES.pt(0), SCALES.pr(0.334), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0.334), SCALES.pr(0.334), SCALES.pb(0.334), SCALES.pl(0.667), disabled ? theme.palette.border : borderActive, disabled ? theme.palette.accents_5 : borderActive, disabled ? theme.palette.accents_4 : theme.palette.foreground, placeholderColor, theme.layout.gapQuarter, visible ? '180' : '0', iconBorder]]]) + " " + "value"
1749
+ }, selectedChild), value && multiple && /*#__PURE__*/React__default["default"].createElement(Grid$1.Container, {
1750
+ gap: 0.5
1751
+ }, selectedChild), /*#__PURE__*/React__default["default"].createElement(SelectDropdown$1, {
1752
+ ref: dropdownRef,
1753
+ visible: visible,
1754
+ className: dropdownClassName,
1755
+ dropdownStyle: dropdownStyle,
1756
+ disableMatchWidth: disableMatchWidth,
1757
+ getPopupContainer: getPopupContainer
1758
+ }, children), !pure && /*#__PURE__*/React__default["default"].createElement("div", {
1759
+ className: styledJsx_cjs.style.dynamic([["3089088549", [disabled ? 'not-allowed' : 'pointer', border, theme.layout.radius, disabled ? theme.palette.accents_1 : theme.palette.background, SCALES.font(0.875), SCALES.height(2.25), SCALES.width(1, 'initial'), SCALES.pt(0), SCALES.pr(0.334), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0.334), SCALES.pr(0.334), SCALES.pb(0.334), SCALES.pl(0.667), disabled ? theme.palette.border : borderActive, disabled ? theme.palette.accents_5 : borderActive, disabled ? theme.palette.accents_4 : theme.palette.foreground, placeholderColor, theme.layout.gapQuarter, visible ? '180' : '0', iconBorder]]]) + " " + "icon"
1760
+ }, /*#__PURE__*/React__default["default"].createElement(Icon, {
1761
+ className: styledJsx_cjs.style.dynamic([["3089088549", [disabled ? 'not-allowed' : 'pointer', border, theme.layout.radius, disabled ? theme.palette.accents_1 : theme.palette.background, SCALES.font(0.875), SCALES.height(2.25), SCALES.width(1, 'initial'), SCALES.pt(0), SCALES.pr(0.334), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0.334), SCALES.pr(0.334), SCALES.pb(0.334), SCALES.pl(0.667), disabled ? theme.palette.border : borderActive, disabled ? theme.palette.accents_5 : borderActive, disabled ? theme.palette.accents_4 : theme.palette.foreground, placeholderColor, theme.layout.gapQuarter, visible ? '180' : '0', iconBorder]]])
1762
+ })), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1763
+ id: "3089088549",
1764
+ dynamic: [disabled ? 'not-allowed' : 'pointer', border, theme.layout.radius, disabled ? theme.palette.accents_1 : theme.palette.background, SCALES.font(0.875), SCALES.height(2.25), SCALES.width(1, 'initial'), SCALES.pt(0), SCALES.pr(0.334), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), SCALES.pt(0.334), SCALES.pr(0.334), SCALES.pb(0.334), SCALES.pl(0.667), disabled ? theme.palette.border : borderActive, disabled ? theme.palette.accents_5 : borderActive, disabled ? theme.palette.accents_4 : theme.palette.foreground, placeholderColor, theme.layout.gapQuarter, visible ? '180' : '0', iconBorder]
1765
+ }, ".select.__jsx-style-dynamic-selector{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;position:relative;cursor:".concat(disabled ? 'not-allowed' : 'pointer', ";max-width:90vw;overflow:hidden;-webkit-transition:border 150ms ease-in 0s,color 200ms ease-out 0s, box-shadow 200ms ease 0s;transition:border 150ms ease-in 0s,color 200ms ease-out 0s, box-shadow 200ms ease 0s;border:1px solid ").concat(border, ";border-radius:").concat(theme.layout.radius, ";background-color:").concat(disabled ? theme.palette.accents_1 : theme.palette.background, ";--select-font-size:").concat(SCALES.font(0.875), ";--select-height:").concat(SCALES.height(2.25), ";min-width:11.5em;width:").concat(SCALES.width(1, 'initial'), ";height:var(--select-height);padding:").concat(SCALES.pt(0), " ").concat(SCALES.pr(0.334), " ").concat(SCALES.pb(0), " ").concat(SCALES.pl(0.667), ";margin:").concat(SCALES.mt(0), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0), " ").concat(SCALES.ml(0), ";}.multiple.__jsx-style-dynamic-selector{height:auto;min-height:var(--select-height);padding:").concat(SCALES.pt(0.334), " ").concat(SCALES.pr(0.334), " ").concat(SCALES.pb(0.334), " ").concat(SCALES.pl(0.667), ";}.select.active.__jsx-style-dynamic-selector,.select.__jsx-style-dynamic-selector:hover{border-color:").concat(disabled ? theme.palette.border : borderActive, ";}.select.active.icon.__jsx-style-dynamic-selector,.select.__jsx-style-dynamic-selector:hover .icon.__jsx-style-dynamic-selector{color:").concat(disabled ? theme.palette.accents_5 : borderActive, ";}.value.__jsx-style-dynamic-selector{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex:1;-ms-flex:1;flex:1;height:100%;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;line-height:1;padding:0;margin-right:1.25em;font-size:var(--select-font-size);color:").concat(disabled ? theme.palette.accents_4 : theme.palette.foreground, ";width:calc(100% - 1.25em);}.value.__jsx-style-dynamic-selector>div,.value.__jsx-style-dynamic-selector>div:hover{border-radius:0;background-color:transparent;padding:0;margin:0;color:inherit;}.placeholder.__jsx-style-dynamic-selector{color:").concat(placeholderColor, ";}.icon.__jsx-style-dynamic-selector{position:absolute;right:").concat(theme.layout.gapQuarter, ";font-size:var(--select-font-size);top:50%;bottom:0;-webkit-transform:translateY(-50%) rotate(").concat(visible ? '180' : '0', "deg);-ms-transform:translateY(-50%) rotate(").concat(visible ? '180' : '0', "deg);transform:translateY(-50%) rotate(").concat(visible ? '180' : '0', "deg);pointer-events:none;-webkit-transition:-webkit-transform 200ms ease;-webkit-transition:transform 200ms ease;transition:transform 200ms ease;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:").concat(iconBorder, ";}"))));
1766
+ });
1767
+ SelectComponent.defaultProps = defaultProps;
1768
+ SelectComponent.displayName = 'BolioUISelect';
1769
+ var Select = withScale$1(SelectComponent);
1770
+ var Select$1 = Select;
1771
+
1772
+ var _excluded = ["value", "className", "children", "disabled", "divider", "label", "preventAllEvents"];
1773
+
1774
+ function SelectOptionComponent(_ref) {
1775
+ var _ref$value = _ref.value,
1776
+ identValue = _ref$value === void 0 ? '' : _ref$value,
1777
+ _ref$className = _ref.className,
1778
+ className = _ref$className === void 0 ? '' : _ref$className,
1779
+ children = _ref.children,
1780
+ _ref$disabled = _ref.disabled,
1781
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
1782
+ _ref$divider = _ref.divider,
1783
+ divider = _ref$divider === void 0 ? false : _ref$divider,
1784
+ _ref$label = _ref.label,
1785
+ label = _ref$label === void 0 ? false : _ref$label,
1786
+ _ref$preventAllEvents = _ref.preventAllEvents,
1787
+ preventAllEvents = _ref$preventAllEvents === void 0 ? false : _ref$preventAllEvents,
1788
+ props = _objectWithoutProperties(_ref, _excluded);
1789
+
1790
+ var theme = useTheme();
1791
+
1792
+ var _useScale = useScale(),
1793
+ SCALES = _useScale.SCALES;
1794
+
1795
+ var _useSelectContext = useSelectContext(),
1796
+ updateValue = _useSelectContext.updateValue,
1797
+ value = _useSelectContext.value,
1798
+ disableAll = _useSelectContext.disableAll;
1799
+
1800
+ var isDisabled = React.useMemo(function () {
1801
+ return disabled || disableAll;
1802
+ }, [disabled, disableAll]);
1803
+ var isLabel = React.useMemo(function () {
1804
+ return label || divider;
1805
+ }, [label, divider]);
1806
+ var classes = useClasses$1('option', {
1807
+ divider: divider,
1808
+ label: label
1809
+ }, className);
1810
+
1811
+ if (!isLabel && identValue === undefined) {
1812
+ // eslint-disable-next-line react-hooks/rules-of-hooks
1813
+ useWarning$1('The props "value" is required.', 'Select Option');
1814
+ }
1815
+
1816
+ var selected = React.useMemo(function () {
1817
+ if (!value) return false;
1818
+
1819
+ if (typeof value === 'string') {
1820
+ return identValue === value;
1821
+ }
1822
+
1823
+ return value.includes("".concat(identValue));
1824
+ }, [identValue, value]);
1825
+ var bgColor = React.useMemo(function () {
1826
+ if (isDisabled) return theme.palette.accents_1;
1827
+ return selected ? theme.palette.accents_2 : theme.palette.background;
1828
+ }, [selected, isDisabled, theme.palette]);
1829
+ var hoverBgColor = React.useMemo(function () {
1830
+ if (isDisabled || isLabel || selected) return bgColor;
1831
+ return theme.palette.accents_1;
1832
+ }, [selected, isDisabled, theme.palette, isLabel, bgColor]);
1833
+ var color = React.useMemo(function () {
1834
+ if (isDisabled) return theme.palette.accents_4;
1835
+ return selected ? theme.palette.foreground : theme.palette.accents_5;
1836
+ }, [selected, isDisabled, theme.palette]);
1837
+
1838
+ var clickHandler = function clickHandler(event) {
1839
+ if (preventAllEvents) return;
1840
+ event.stopPropagation();
1841
+ event.nativeEvent.stopImmediatePropagation();
1842
+ event.preventDefault();
1843
+ if (isDisabled || isLabel) return;
1844
+ updateValue && updateValue(identValue);
1845
+ };
1846
+
1847
+ return /*#__PURE__*/React__default["default"].createElement("div", _extends({
1848
+ onClick: clickHandler
1849
+ }, props, {
1850
+ className: styledJsx_cjs.style.dynamic([["1707413548", [bgColor, color, isDisabled ? 'not-allowed' : 'pointer', SCALES.font(0.75), SCALES.width(1, '100%'), SCALES.height(2.25), SCALES.pt(0), SCALES.pr(0.667), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), hoverBgColor, theme.palette.accents_7, theme.palette.border, SCALES.width(1, '100%'), SCALES.height(1, 0), SCALES.pt(0), SCALES.pr(0), SCALES.pb(0), SCALES.pl(0), SCALES.mt(0.5), SCALES.mr(0), SCALES.mb(0.5), SCALES.ml(0), theme.palette.accents_7, theme.palette.border, SCALES.font(0.875), SCALES.width(1, '100%')]]]) + " " + (props && props.className != null && props.className || classes || "")
1851
+ }), /*#__PURE__*/React__default["default"].createElement(Ellipsis$1, {
1852
+ height: SCALES.height(2.25)
1853
+ }, children), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1854
+ id: "1707413548",
1855
+ dynamic: [bgColor, color, isDisabled ? 'not-allowed' : 'pointer', SCALES.font(0.75), SCALES.width(1, '100%'), SCALES.height(2.25), SCALES.pt(0), SCALES.pr(0.667), SCALES.pb(0), SCALES.pl(0.667), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), hoverBgColor, theme.palette.accents_7, theme.palette.border, SCALES.width(1, '100%'), SCALES.height(1, 0), SCALES.pt(0), SCALES.pr(0), SCALES.pb(0), SCALES.pl(0), SCALES.mt(0.5), SCALES.mr(0), SCALES.mb(0.5), SCALES.ml(0), theme.palette.accents_7, theme.palette.border, SCALES.font(0.875), SCALES.width(1, '100%')]
1856
+ }, ".option.__jsx-style-dynamic-selector{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;max-width:100%;box-sizing:border-box;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:normal;background-color:".concat(bgColor, ";color:").concat(color, ";-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:0;cursor:").concat(isDisabled ? 'not-allowed' : 'pointer', ";-webkit-transition:background 0.2s ease 0s,border-color 0.2s ease 0s;transition:background 0.2s ease 0s,border-color 0.2s ease 0s;--select-font-size:").concat(SCALES.font(0.75), ";font-size:var(--select-font-size);width:").concat(SCALES.width(1, '100%'), ";height:").concat(SCALES.height(2.25), ";padding:").concat(SCALES.pt(0), " ").concat(SCALES.pr(0.667), " ").concat(SCALES.pb(0), " ").concat(SCALES.pl(0.667), ";margin:").concat(SCALES.mt(0), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0), " ").concat(SCALES.ml(0), ";}.option.__jsx-style-dynamic-selector:hover{background-color:").concat(hoverBgColor, ";color:").concat(theme.palette.accents_7, ";}.divider.__jsx-style-dynamic-selector{line-height:0;overflow:hidden;border-top:1px solid ").concat(theme.palette.border, ";width:").concat(SCALES.width(1, '100%'), ";height:").concat(SCALES.height(1, 0), ";padding:").concat(SCALES.pt(0), " ").concat(SCALES.pr(0), " ").concat(SCALES.pb(0), " ").concat(SCALES.pl(0), ";margin:").concat(SCALES.mt(0.5), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0.5), " ").concat(SCALES.ml(0), ";}.label.__jsx-style-dynamic-selector{color:").concat(theme.palette.accents_7, ";border-bottom:1px solid ").concat(theme.palette.border, ";text-transform:capitalize;cursor:default;font-size:").concat(SCALES.font(0.875), ";width:").concat(SCALES.width(1, '100%'), ";font-weight:500;}")));
1857
+ }
1858
+
1859
+ SelectOptionComponent.displayName = 'BolioUISelectOption';
1860
+ var SelectOption = withScale$1(SelectOptionComponent);
1861
+ var SelectOption$1 = SelectOption;
1862
+
1863
+ Select$1.Option = SelectOption$1;
1864
+
1865
+ exports["default"] = Select$1;