@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,1158 @@
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
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
11
+
12
+ function ownKeys(object, enumerableOnly) {
13
+ var keys = Object.keys(object);
14
+
15
+ if (Object.getOwnPropertySymbols) {
16
+ var symbols = Object.getOwnPropertySymbols(object);
17
+ enumerableOnly && (symbols = symbols.filter(function (sym) {
18
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
19
+ })), keys.push.apply(keys, symbols);
20
+ }
21
+
22
+ return keys;
23
+ }
24
+
25
+ function _objectSpread2(target) {
26
+ for (var i = 1; i < arguments.length; i++) {
27
+ var source = null != arguments[i] ? arguments[i] : {};
28
+ i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
29
+ _defineProperty(target, key, source[key]);
30
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
31
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
32
+ });
33
+ }
34
+
35
+ return target;
36
+ }
37
+
38
+ function _typeof(obj) {
39
+ "@babel/helpers - typeof";
40
+
41
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
42
+ return typeof obj;
43
+ } : function (obj) {
44
+ return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
45
+ }, _typeof(obj);
46
+ }
47
+
48
+ function _defineProperty(obj, key, value) {
49
+ if (key in obj) {
50
+ Object.defineProperty(obj, key, {
51
+ value: value,
52
+ enumerable: true,
53
+ configurable: true,
54
+ writable: true
55
+ });
56
+ } else {
57
+ obj[key] = value;
58
+ }
59
+
60
+ return obj;
61
+ }
62
+
63
+ function _extends() {
64
+ _extends = Object.assign ? Object.assign.bind() : function (target) {
65
+ for (var i = 1; i < arguments.length; i++) {
66
+ var source = arguments[i];
67
+
68
+ for (var key in source) {
69
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
70
+ target[key] = source[key];
71
+ }
72
+ }
73
+ }
74
+
75
+ return target;
76
+ };
77
+ return _extends.apply(this, arguments);
78
+ }
79
+
80
+ function _objectWithoutPropertiesLoose(source, excluded) {
81
+ if (source == null) return {};
82
+ var target = {};
83
+ var sourceKeys = Object.keys(source);
84
+ var key, i;
85
+
86
+ for (i = 0; i < sourceKeys.length; i++) {
87
+ key = sourceKeys[i];
88
+ if (excluded.indexOf(key) >= 0) continue;
89
+ target[key] = source[key];
90
+ }
91
+
92
+ return target;
93
+ }
94
+
95
+ function _objectWithoutProperties(source, excluded) {
96
+ if (source == null) return {};
97
+
98
+ var target = _objectWithoutPropertiesLoose(source, excluded);
99
+
100
+ var key, i;
101
+
102
+ if (Object.getOwnPropertySymbols) {
103
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
104
+
105
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
106
+ key = sourceSymbolKeys[i];
107
+ if (excluded.indexOf(key) >= 0) continue;
108
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
109
+ target[key] = source[key];
110
+ }
111
+ }
112
+
113
+ return target;
114
+ }
115
+
116
+ function _slicedToArray(arr, i) {
117
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
118
+ }
119
+
120
+ function _toConsumableArray(arr) {
121
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
122
+ }
123
+
124
+ function _arrayWithoutHoles(arr) {
125
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
126
+ }
127
+
128
+ function _arrayWithHoles(arr) {
129
+ if (Array.isArray(arr)) return arr;
130
+ }
131
+
132
+ function _iterableToArray(iter) {
133
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
134
+ }
135
+
136
+ function _iterableToArrayLimit(arr, i) {
137
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
138
+
139
+ if (_i == null) return;
140
+ var _arr = [];
141
+ var _n = true;
142
+ var _d = false;
143
+
144
+ var _s, _e;
145
+
146
+ try {
147
+ for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
148
+ _arr.push(_s.value);
149
+
150
+ if (i && _arr.length === i) break;
151
+ }
152
+ } catch (err) {
153
+ _d = true;
154
+ _e = err;
155
+ } finally {
156
+ try {
157
+ if (!_n && _i["return"] != null) _i["return"]();
158
+ } finally {
159
+ if (_d) throw _e;
160
+ }
161
+ }
162
+
163
+ return _arr;
164
+ }
165
+
166
+ function _unsupportedIterableToArray(o, minLen) {
167
+ if (!o) return;
168
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
169
+ var n = Object.prototype.toString.call(o).slice(8, -1);
170
+ if (n === "Object" && o.constructor) n = o.constructor.name;
171
+ if (n === "Map" || n === "Set") return Array.from(o);
172
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
173
+ }
174
+
175
+ function _arrayLikeToArray(arr, len) {
176
+ if (len == null || len > arr.length) len = arr.length;
177
+
178
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
179
+
180
+ return arr2;
181
+ }
182
+
183
+ function _nonIterableSpread() {
184
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
185
+ }
186
+
187
+ function _nonIterableRest() {
188
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
189
+ }
190
+
191
+ function _createForOfIteratorHelper(o, allowArrayLike) {
192
+ var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
193
+
194
+ if (!it) {
195
+ if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
196
+ if (it) o = it;
197
+ var i = 0;
198
+
199
+ var F = function () {};
200
+
201
+ return {
202
+ s: F,
203
+ n: function () {
204
+ if (i >= o.length) return {
205
+ done: true
206
+ };
207
+ return {
208
+ done: false,
209
+ value: o[i++]
210
+ };
211
+ },
212
+ e: function (e) {
213
+ throw e;
214
+ },
215
+ f: F
216
+ };
217
+ }
218
+
219
+ throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
220
+ }
221
+
222
+ var normalCompletion = true,
223
+ didErr = false,
224
+ err;
225
+ return {
226
+ s: function () {
227
+ it = it.call(o);
228
+ },
229
+ n: function () {
230
+ var step = it.next();
231
+ normalCompletion = step.done;
232
+ return step;
233
+ },
234
+ e: function (e) {
235
+ didErr = true;
236
+ err = e;
237
+ },
238
+ f: function () {
239
+ try {
240
+ if (!normalCompletion && it.return != null) it.return();
241
+ } finally {
242
+ if (didErr) throw err;
243
+ }
244
+ }
245
+ };
246
+ }
247
+
248
+ function CollapseIcon(_ref) {
249
+ var active = _ref.active;
250
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
251
+ viewBox: "0 0 24 24",
252
+ stroke: "currentColor",
253
+ strokeWidth: "1.5",
254
+ strokeLinecap: "round",
255
+ strokeLinejoin: "round",
256
+ fill: "none",
257
+ shapeRendering: "geometricPrecision",
258
+ style: {
259
+ color: 'currentColor'
260
+ },
261
+ className: styledJsx_cjs.style.dynamic([["2249786880", [active ? '-180deg' : '0']]])
262
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
263
+ d: "M6 9l6 6 6-6",
264
+ className: styledJsx_cjs.style.dynamic([["2249786880", [active ? '-180deg' : '0']]])
265
+ }), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
266
+ id: "2249786880",
267
+ dynamic: [active ? '-180deg' : '0']
268
+ }, "svg.__jsx-style-dynamic-selector{-webkit-transition:-webkit-transform 200ms ease;-webkit-transition:transform 200ms ease;transition:transform 200ms ease;-webkit-transform:rotateZ(".concat(active ? '-180deg' : '0', ");-ms-transform:rotateZ(").concat(active ? '-180deg' : '0', ");transform:rotateZ(").concat(active ? '-180deg' : '0', ");width:1.5em;height:1.5em;}")));
269
+ }
270
+
271
+ var MemoCollapseIcon = /*#__PURE__*/React__default["default"].memo(CollapseIcon);
272
+ var CollapseIcon$1 = MemoCollapseIcon;
273
+
274
+ var defaultFont = {
275
+ sans: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
276
+ mono: 'Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace',
277
+ prism: 'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,"Liberation Mono", "Courier New", monospace'
278
+ };
279
+ var defaultBreakpoints = {
280
+ xs: {
281
+ min: '0',
282
+ max: '650px'
283
+ },
284
+ sm: {
285
+ min: '650px',
286
+ max: '900px'
287
+ },
288
+ md: {
289
+ min: '900px',
290
+ max: '1280px'
291
+ },
292
+ lg: {
293
+ min: '1280px',
294
+ max: '1920px'
295
+ },
296
+ xl: {
297
+ min: '1920px',
298
+ max: '10000px'
299
+ }
300
+ };
301
+ var defaultLayout = {
302
+ gap: '16pt',
303
+ gapNegative: '-16pt',
304
+ gapHalf: '8pt',
305
+ gapHalfNegative: '-8pt',
306
+ gapQuarter: '4pt',
307
+ gapQuarterNegative: '-4pt',
308
+ pageMargin: '16pt',
309
+ pageWidth: '900pt',
310
+ pageWidthWithMargin: '930pt',
311
+ breakpointMobile: defaultBreakpoints.xs.max,
312
+ breakpointTablet: defaultBreakpoints.sm.max,
313
+ radius: '6px',
314
+ unit: '16px'
315
+ };
316
+
317
+ var palette$1 = {
318
+ background: '#fff',
319
+ foreground: '#000',
320
+ accents_1: '#fafafa',
321
+ accents_2: '#eaeaea',
322
+ accents_3: '#999',
323
+ accents_4: '#888',
324
+ accents_5: '#666',
325
+ accents_6: '#444',
326
+ accents_7: '#333',
327
+ accents_8: '#111',
328
+ selection: '#cee4fe',
329
+ code: '#C25FFF',
330
+ border: '#eaeaea',
331
+ primary: '#0072F6',
332
+ primaryLight: '#96C1F3',
333
+ primaryLighter: '#CEE4FF',
334
+ primaryDark: '#00254E',
335
+ secondary: '#7828C9',
336
+ secondaryLighter: '#D1B1F1',
337
+ secondaryLight: '#EADCF9',
338
+ secondaryDark: '#290E45',
339
+ error: '#F31261',
340
+ errorLight: '#FAA8C6',
341
+ errorLighter: '#FDD8E6',
342
+ errorDark: '#4E041F',
343
+ success: '#17C965',
344
+ successLight: '#ADF5CD',
345
+ successLighter: '#DAFBE9',
346
+ successDark: '#06371C',
347
+ warning: '#F5A525',
348
+ warningLight: '#FBDBA8',
349
+ warningLighter: '#FDEFD9',
350
+ warningDark: '#4E3105',
351
+ info: '#06B7DC',
352
+ infoLighter: '#A5EEFE',
353
+ infoLight: '#D7F8FF',
354
+ infoDark: '#053B49',
355
+ purple: '#f81ce5',
356
+ alert: '#ff0080',
357
+ link: '#0070f3',
358
+ pre: '#363450'
359
+ };
360
+ var expressiveness$1 = {
361
+ linkStyle: 'none',
362
+ linkHoverStyle: 'none',
363
+ dropdownBoxShadow: '0 4px 4px 0 rgba(0, 0, 0, 0.02)',
364
+ scrollerStart: 'rgba(255, 255, 255, 1)',
365
+ scrollerEnd: 'rgba(255, 255, 255, 0)',
366
+ shadowSmall: '0 5px 10px rgba(0, 0, 0, 0.12)',
367
+ shadowMedium: '0 8px 30px rgba(0, 0, 0, 0.12)',
368
+ shadowLarge: '0 30px 60px rgba(0, 0, 0, 0.12)',
369
+ portalOpacity: 0.25
370
+ };
371
+ var font$1 = defaultFont;
372
+ var breakpoints$1 = defaultBreakpoints;
373
+ var layout$1 = defaultLayout;
374
+ var themes$1 = {
375
+ type: 'light',
376
+ font: font$1,
377
+ layout: layout$1,
378
+ palette: palette$1,
379
+ breakpoints: breakpoints$1,
380
+ expressiveness: expressiveness$1
381
+ };
382
+ var lightTheme = themes$1;
383
+
384
+ var palette = {
385
+ background: '#000',
386
+ foreground: '#fff',
387
+ accents_1: '#111',
388
+ accents_2: '#333',
389
+ accents_3: '#444',
390
+ accents_4: '#666',
391
+ accents_5: '#888',
392
+ accents_6: '#999',
393
+ accents_7: '#eaeaea',
394
+ accents_8: '#fafafa',
395
+ selection: '#f81ce5',
396
+ code: '#C25FFF',
397
+ border: '#333',
398
+ primary: '#0072F6',
399
+ primaryLight: '#96C1F3',
400
+ primaryLighter: '#CEE4FF',
401
+ primaryDark: '#00254E',
402
+ secondary: '#7828C9',
403
+ secondaryLighter: '#D1B1F1',
404
+ secondaryLight: '#EADCF9',
405
+ secondaryDark: '#290E45',
406
+ error: '#F31261',
407
+ errorLight: '#FAA8C6',
408
+ errorLighter: '#FDD8E6',
409
+ errorDark: '#4E041F',
410
+ success: '#17C965',
411
+ successLight: '#ADF5CD',
412
+ successLighter: '#DAFBE9',
413
+ successDark: '#06371C',
414
+ warning: '#F5A525',
415
+ warningLight: '#FBDBA8',
416
+ warningLighter: '#FDEFD9',
417
+ warningDark: '#4E3105',
418
+ info: '#06B7DC',
419
+ infoLighter: '#A5EEFE',
420
+ infoLight: '#D7F8FF',
421
+ infoDark: '#053B49',
422
+ purple: '#f81ce5',
423
+ alert: '#ff0080',
424
+ link: '#3291ff',
425
+ pre: '#363450'
426
+ };
427
+ var expressiveness = {
428
+ linkStyle: 'none',
429
+ linkHoverStyle: 'none',
430
+ dropdownBoxShadow: '0 0 0 1px #333',
431
+ scrollerStart: 'rgba(255, 255, 255, 1)',
432
+ scrollerEnd: 'rgba(255, 255, 255, 0)',
433
+ shadowSmall: '0 0 0 1px #333',
434
+ shadowMedium: '0 0 0 1px #333',
435
+ shadowLarge: '0 0 0 1px #333',
436
+ portalOpacity: 0.75
437
+ };
438
+ var font = defaultFont;
439
+ var breakpoints = defaultBreakpoints;
440
+ var layout = defaultLayout;
441
+ var themes = {
442
+ type: 'dark',
443
+ font: font,
444
+ layout: layout,
445
+ palette: palette,
446
+ breakpoints: breakpoints,
447
+ expressiveness: expressiveness
448
+ };
449
+ var darkTheme = themes;
450
+
451
+ var isObject = function isObject(target) {
452
+ return target && _typeof(target) === 'object';
453
+ };
454
+ var deepDuplicable = function deepDuplicable(source, target) {
455
+ if (!isObject(target) || !isObject(source)) return source;
456
+ var sourceKeys = Object.keys(source);
457
+ var result = {};
458
+
459
+ for (var _i = 0, _sourceKeys = sourceKeys; _i < _sourceKeys.length; _i++) {
460
+ var key = _sourceKeys[_i];
461
+ var sourceValue = source[key];
462
+ var targetValue = target[key];
463
+
464
+ if (Array.isArray(sourceValue) && Array.isArray(targetValue)) {
465
+ result[key] = targetValue.concat(sourceValue);
466
+ } else if (isObject(sourceValue) && isObject(targetValue)) {
467
+ result[key] = deepDuplicable(sourceValue, _objectSpread2({}, targetValue));
468
+ } else if (targetValue) {
469
+ result[key] = targetValue;
470
+ } else {
471
+ result[key] = sourceValue;
472
+ }
473
+ }
474
+
475
+ return result;
476
+ };
477
+
478
+ var getPresets = function getPresets() {
479
+ return [lightTheme, darkTheme];
480
+ };
481
+
482
+ var getPresetStaticTheme = function getPresetStaticTheme() {
483
+ return lightTheme;
484
+ };
485
+
486
+ var isAvailableThemeType = function isAvailableThemeType(type) {
487
+ if (!type) return false;
488
+ var presetThemes = getPresets();
489
+ var hasType = presetThemes.find(function (theme) {
490
+ return theme.type === type;
491
+ });
492
+ return !hasType;
493
+ };
494
+
495
+ var isPresetTheme = function isPresetTheme(themeOrType) {
496
+ if (!themeOrType) return false;
497
+ var isType = typeof themeOrType === 'string';
498
+ var type = isType ? themeOrType : themeOrType.type;
499
+ return !isAvailableThemeType(type);
500
+ };
501
+
502
+ var hasUserCustomTheme = function hasUserCustomTheme() {
503
+ var themes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
504
+ return !!themes.find(function (item) {
505
+ return isAvailableThemeType(item.type);
506
+ });
507
+ };
508
+
509
+ var create = function create(base, custom) {
510
+ if (!isAvailableThemeType(custom.type)) {
511
+ throw new Error('Duplicate or unavailable theme type');
512
+ }
513
+
514
+ return deepDuplicable(base, custom);
515
+ };
516
+
517
+ var createFromDark = function createFromDark(custom) {
518
+ return create(darkTheme, custom);
519
+ };
520
+
521
+ var createFromLight = function createFromLight(custom) {
522
+ return create(lightTheme, custom);
523
+ };
524
+
525
+ var Themes = {
526
+ isPresetTheme: isPresetTheme,
527
+ isAvailableThemeType: isAvailableThemeType,
528
+ hasUserCustomTheme: hasUserCustomTheme,
529
+ getPresets: getPresets,
530
+ getPresetStaticTheme: getPresetStaticTheme,
531
+ create: create,
532
+ createFromDark: createFromDark,
533
+ createFromLight: createFromLight
534
+ };
535
+ var Themes$1 = Themes;
536
+
537
+ var defaultTheme = Themes$1.getPresetStaticTheme();
538
+ var ThemeContext = /*#__PURE__*/React__default["default"].createContext(defaultTheme);
539
+ var useTheme$1 = function useTheme() {
540
+ return React__default["default"].useContext(ThemeContext);
541
+ };
542
+
543
+ var useTheme = useTheme$1;
544
+
545
+ var getRealShape = function getRealShape(el) {
546
+ var defaultShape = {
547
+ width: 0,
548
+ height: 0
549
+ };
550
+ if (!el || typeof window === 'undefined') return defaultShape;
551
+ var rect = el.getBoundingClientRect();
552
+
553
+ var _window$getComputedSt = window.getComputedStyle(el),
554
+ width = _window$getComputedSt.width,
555
+ height = _window$getComputedSt.height;
556
+
557
+ var getCSSStyleVal = function getCSSStyleVal(str, parentNum) {
558
+ if (!str) return 0;
559
+ var strVal = str.includes('px') ? +str.split('px')[0] : str.includes('%') ? +str.split('%')[0] * parentNum * 0.01 : str;
560
+ return Number.isNaN(+strVal) ? 0 : +strVal;
561
+ };
562
+
563
+ return {
564
+ width: getCSSStyleVal("".concat(width), rect.width),
565
+ height: getCSSStyleVal("".concat(height), rect.height)
566
+ };
567
+ };
568
+
569
+ var useRealShape = function useRealShape(ref) {
570
+ var _useState = React.useState({
571
+ width: 0,
572
+ height: 0
573
+ }),
574
+ _useState2 = _slicedToArray(_useState, 2),
575
+ state = _useState2[0],
576
+ setState = _useState2[1];
577
+
578
+ var update = function update() {
579
+ var _getRealShape = getRealShape(ref.current),
580
+ width = _getRealShape.width,
581
+ height = _getRealShape.height;
582
+
583
+ setState({
584
+ width: width,
585
+ height: height
586
+ });
587
+ };
588
+
589
+ React.useEffect(function () {
590
+ return update();
591
+ }, [ref.current]);
592
+ return [state, update];
593
+ };
594
+
595
+ var useRealShape$1 = useRealShape;
596
+
597
+ var classObjectToString = function classObjectToString(className) {
598
+ var keys = Object.keys(className);
599
+ var len = keys.length;
600
+ var str = '';
601
+
602
+ for (var index = 0; index < len; index++) {
603
+ var key = keys[index];
604
+ var val = className[keys[index]];
605
+ if (!val) continue;
606
+ str = str ? "".concat(str, " ").concat(String(key)) : String(key);
607
+ }
608
+
609
+ return str;
610
+ };
611
+
612
+ var isObjectClassName = function isObjectClassName(value) {
613
+ return _typeof(value) === 'object' && !Array.isArray(value);
614
+ };
615
+
616
+ var useClasses = function useClasses() {
617
+ var len = arguments.length;
618
+ var classes = '';
619
+ if (len === 0) return classes;
620
+
621
+ for (var index = 0; index < len; index++) {
622
+ var val = index < 0 || arguments.length <= index ? undefined : arguments[index];
623
+ if (!val) continue;
624
+
625
+ if (isObjectClassName(val)) {
626
+ classes += " ".concat(classObjectToString(val));
627
+ } else {
628
+ classes += " ".concat(String(val).trim());
629
+ }
630
+ }
631
+
632
+ return classes.trim();
633
+ };
634
+
635
+ var useClasses$1 = useClasses;
636
+
637
+ var defaultProps = {
638
+ isExpanded: false,
639
+ delay: 200
640
+ };
641
+
642
+ function Expand(_ref) {
643
+ var isExpanded = _ref.isExpanded,
644
+ delay = _ref.delay,
645
+ children = _ref.children;
646
+
647
+ var _useState = React.useState(isExpanded ? 'auto' : '0'),
648
+ _useState2 = _slicedToArray(_useState, 2),
649
+ height = _useState2[0],
650
+ setHeight = _useState2[1];
651
+
652
+ var _useState3 = React.useState(isExpanded),
653
+ _useState4 = _slicedToArray(_useState3, 2),
654
+ selfExpanded = _useState4[0],
655
+ setSelfExpanded = _useState4[1];
656
+
657
+ var _useState5 = React.useState(isExpanded),
658
+ _useState6 = _slicedToArray(_useState5, 2),
659
+ visible = _useState6[0],
660
+ setVisible = _useState6[1];
661
+
662
+ var contentRef = React.useRef(null);
663
+ var entryTimer = React.useRef();
664
+ var leaveTimer = React.useRef();
665
+ var resetTimer = React.useRef();
666
+
667
+ var _useRealShape = useRealShape$1(contentRef),
668
+ _useRealShape2 = _slicedToArray(_useRealShape, 2),
669
+ state = _useRealShape2[0],
670
+ updateShape = _useRealShape2[1];
671
+
672
+ var classes = useClasses$1('container', {
673
+ expanded: selfExpanded
674
+ });
675
+ React.useEffect(function () {
676
+ return setHeight("".concat(state.height, "px"));
677
+ }, [state.height]);
678
+ React.useEffect(function () {
679
+ // show element or reset height.
680
+ // force an update once manually, even if the element does not change.
681
+ // (the height of the element might be "auto")
682
+ if (isExpanded) {
683
+ setVisible(isExpanded);
684
+ } else {
685
+ updateShape();
686
+ setHeight("".concat(state.height, "px"));
687
+ } // show expand animation
688
+
689
+
690
+ entryTimer.current = window.setTimeout(function () {
691
+ setSelfExpanded(isExpanded);
692
+ clearTimeout(entryTimer.current);
693
+ }, 30); // Reset height after animation
694
+
695
+ if (isExpanded) {
696
+ resetTimer.current = window.setTimeout(function () {
697
+ setHeight('auto');
698
+ clearTimeout(resetTimer.current);
699
+ }, delay);
700
+ } else {
701
+ leaveTimer.current = window.setTimeout(function () {
702
+ setVisible(isExpanded);
703
+ clearTimeout(leaveTimer.current);
704
+ }, delay / 2);
705
+ }
706
+
707
+ return function () {
708
+ clearTimeout(entryTimer.current);
709
+ clearTimeout(leaveTimer.current);
710
+ clearTimeout(resetTimer.current);
711
+ };
712
+ }, [isExpanded]);
713
+ return /*#__PURE__*/React__default["default"].createElement("div", {
714
+ className: styledJsx_cjs.style.dynamic([["1918690829", [visible ? 'visible' : 'hidden', delay, height]]]) + " " + (classes || "")
715
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
716
+ ref: contentRef,
717
+ className: styledJsx_cjs.style.dynamic([["1918690829", [visible ? 'visible' : 'hidden', delay, height]]]) + " " + "content"
718
+ }, children), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
719
+ id: "1918690829",
720
+ dynamic: [visible ? 'visible' : 'hidden', delay, height]
721
+ }, ".container.__jsx-style-dynamic-selector{padding:0;margin:0;height:0;overflow:hidden;visibility:".concat(visible ? 'visible' : 'hidden', ";-webkit-transition:height ").concat(delay, "ms ease;transition:height ").concat(delay, "ms ease;}.expanded.__jsx-style-dynamic-selector{height:").concat(height, ";visibility:visible;}")));
722
+ }
723
+
724
+ Expand.defaultProps = defaultProps;
725
+ Expand.displayName = 'BolioUIExpand';
726
+
727
+ var defaultContext$1 = {
728
+ values: []
729
+ };
730
+ var CollapseContext = /*#__PURE__*/React__default["default"].createContext(defaultContext$1);
731
+ var useCollapseContext = function useCollapseContext() {
732
+ return React__default["default"].useContext(CollapseContext);
733
+ };
734
+
735
+ var useCurrentState = function useCurrentState(initialState) {
736
+ var _useState = React.useState(function () {
737
+ return typeof initialState === 'function' ? initialState() : initialState;
738
+ }),
739
+ _useState2 = _slicedToArray(_useState, 2),
740
+ state = _useState2[0],
741
+ setState = _useState2[1];
742
+
743
+ var ref = React.useRef(initialState);
744
+ React.useEffect(function () {
745
+ ref.current = state;
746
+ }, [state]);
747
+
748
+ var setValue = function setValue(val) {
749
+ var result = typeof val === 'function' ? val(ref.current) : val;
750
+ ref.current = result;
751
+ setState(result);
752
+ };
753
+
754
+ return [state, setValue, ref];
755
+ };
756
+
757
+ var useCurrentState$1 = useCurrentState;
758
+
759
+ var warningStack = {};
760
+
761
+ var useWarning = function useWarning(message, component) {
762
+ var tag = component ? " [".concat(component, "]") : ' ';
763
+ var log = "[Bolio UI]".concat(tag, ": ").concat(message);
764
+ if (typeof console === 'undefined') return;
765
+ if (warningStack[log]) return;
766
+ warningStack[log] = true;
767
+
768
+ if (process.env.NODE_ENV !== 'production') {
769
+ return console.error(log);
770
+ }
771
+
772
+ console.warn(log);
773
+ };
774
+
775
+ var useWarning$1 = useWarning;
776
+
777
+ 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'];
778
+
779
+ var defaultDynamicLayoutPipe = function defaultDynamicLayoutPipe(scale1x) {
780
+ return "".concat(scale1x);
781
+ };
782
+
783
+ var defaultContext = {
784
+ getScaleProps: function getScaleProps() {
785
+ return undefined;
786
+ },
787
+ getAllScaleProps: function getAllScaleProps() {
788
+ return {};
789
+ },
790
+ SCALES: {
791
+ pl: defaultDynamicLayoutPipe,
792
+ pr: defaultDynamicLayoutPipe,
793
+ pb: defaultDynamicLayoutPipe,
794
+ pt: defaultDynamicLayoutPipe,
795
+ px: defaultDynamicLayoutPipe,
796
+ py: defaultDynamicLayoutPipe,
797
+ mb: defaultDynamicLayoutPipe,
798
+ ml: defaultDynamicLayoutPipe,
799
+ mr: defaultDynamicLayoutPipe,
800
+ mt: defaultDynamicLayoutPipe,
801
+ mx: defaultDynamicLayoutPipe,
802
+ my: defaultDynamicLayoutPipe,
803
+ width: defaultDynamicLayoutPipe,
804
+ height: defaultDynamicLayoutPipe,
805
+ font: defaultDynamicLayoutPipe
806
+ },
807
+ unit: '16px'
808
+ };
809
+ var ScaleContext = /*#__PURE__*/React__default["default"].createContext(defaultContext);
810
+ var useScale$1 = function useScale() {
811
+ return React__default["default"].useContext(ScaleContext);
812
+ };
813
+
814
+ var setChildrenIndex = function setChildrenIndex(children) {
815
+ var targetComponents = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
816
+ if (React__default["default"].Children.count(children) === 0) return [];
817
+ var allowAll = targetComponents.length === 0;
818
+
819
+ var clone = function clone(child) {
820
+ var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
821
+ return /*#__PURE__*/React__default["default"].cloneElement(child, props);
822
+ };
823
+
824
+ var index = 0;
825
+ return React__default["default"].Children.map(children, function (item) {
826
+ if (! /*#__PURE__*/React__default["default"].isValidElement(item)) return item;
827
+ index = index + 1;
828
+ if (allowAll) return clone(item, {
829
+ index: index
830
+ });
831
+ var isAllowed = targetComponents.find(function (child) {
832
+ return child === item.type;
833
+ });
834
+ if (isAllowed) return clone(item, {
835
+ index: index
836
+ });
837
+ index = index - 1;
838
+ return item;
839
+ });
840
+ };
841
+ var isCSSNumberValue = function isCSSNumberValue(value) {
842
+ return value !== undefined && !Number.isNaN(+value);
843
+ };
844
+
845
+ var generateGetScaleProps = function generateGetScaleProps(props) {
846
+ var getScaleProps = function getScaleProps(keyOrKeys) {
847
+ if (!Array.isArray(keyOrKeys)) return props[keyOrKeys];
848
+ var value = undefined;
849
+
850
+ var _iterator = _createForOfIteratorHelper(keyOrKeys),
851
+ _step;
852
+
853
+ try {
854
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
855
+ var key = _step.value;
856
+ var currentValue = props[key];
857
+
858
+ if (typeof currentValue !== 'undefined') {
859
+ value = currentValue;
860
+ }
861
+ }
862
+ } catch (err) {
863
+ _iterator.e(err);
864
+ } finally {
865
+ _iterator.f();
866
+ }
867
+
868
+ return value;
869
+ };
870
+
871
+ return getScaleProps;
872
+ };
873
+ var generateGetAllScaleProps = function generateGetAllScaleProps(props) {
874
+ var getAllScaleProps = function getAllScaleProps() {
875
+ var scaleProps = {};
876
+
877
+ var _iterator2 = _createForOfIteratorHelper(ScalePropKeys),
878
+ _step2;
879
+
880
+ try {
881
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
882
+ var key = _step2.value;
883
+ var value = props[key];
884
+
885
+ if (typeof value !== 'undefined') {
886
+ scaleProps[key] = value;
887
+ }
888
+ }
889
+ } catch (err) {
890
+ _iterator2.e(err);
891
+ } finally {
892
+ _iterator2.f();
893
+ }
894
+
895
+ return scaleProps;
896
+ };
897
+
898
+ return getAllScaleProps;
899
+ };
900
+
901
+ var _excluded$2 = ["children"],
902
+ _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"];
903
+
904
+ var reduceScaleCoefficient = function reduceScaleCoefficient(scale) {
905
+ if (scale === 1) return scale;
906
+ var diff = Math.abs((scale - 1) / 2);
907
+ return scale > 1 ? 1 + diff : 1 - diff;
908
+ }; // eslint-disable-next-line @typescript-eslint/ban-types
909
+
910
+
911
+ var withScale = function withScale(Render) {
912
+ var ScaleFC = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
913
+ 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;
914
+
915
+ var children = _ref.children,
916
+ props = _objectWithoutProperties(_ref, _excluded$2);
917
+
918
+ var _useTheme = useTheme(),
919
+ layout = _useTheme.layout;
920
+
921
+ var paddingLeft = props.paddingLeft,
922
+ pl = props.pl,
923
+ paddingRight = props.paddingRight,
924
+ pr = props.pr,
925
+ paddingTop = props.paddingTop,
926
+ pt = props.pt,
927
+ paddingBottom = props.paddingBottom,
928
+ pb = props.pb,
929
+ marginTop = props.marginTop,
930
+ mt = props.mt,
931
+ marginRight = props.marginRight,
932
+ mr = props.mr,
933
+ marginBottom = props.marginBottom,
934
+ mb = props.mb,
935
+ marginLeft = props.marginLeft,
936
+ ml = props.ml,
937
+ px = props.px,
938
+ py = props.py,
939
+ mx = props.mx,
940
+ my = props.my,
941
+ width = props.width,
942
+ height = props.height,
943
+ font = props.font,
944
+ w = props.w,
945
+ h = props.h,
946
+ margin = props.margin,
947
+ padding = props.padding,
948
+ _props$unit = props.unit,
949
+ unit = _props$unit === void 0 ? layout.unit : _props$unit,
950
+ _props$scale = props.scale,
951
+ scale = _props$scale === void 0 ? 1 : _props$scale,
952
+ innerProps = _objectWithoutProperties(props, _excluded2);
953
+
954
+ var makeScaleHandler = function makeScaleHandler(attrValue) {
955
+ return function (scale1x, defaultValue) {
956
+ // 0 means disable scale and the default value is 0
957
+ if (scale1x === 0) {
958
+ scale1x = 1;
959
+ defaultValue = defaultValue || 0;
960
+ }
961
+
962
+ var factor = reduceScaleCoefficient(scale) * scale1x;
963
+
964
+ if (typeof attrValue === 'undefined') {
965
+ if (typeof defaultValue !== 'undefined') return "".concat(defaultValue);
966
+ return "calc(".concat(factor, " * ").concat(unit, ")");
967
+ }
968
+
969
+ if (!isCSSNumberValue(attrValue)) return "".concat(attrValue);
970
+ var customFactor = factor * Number(attrValue);
971
+ return "calc(".concat(customFactor, " * ").concat(unit, ")");
972
+ };
973
+ };
974
+
975
+ var value = {
976
+ unit: unit,
977
+ SCALES: {
978
+ pt: makeScaleHandler((_ref2 = (_ref3 = paddingTop !== null && paddingTop !== void 0 ? paddingTop : pt) !== null && _ref3 !== void 0 ? _ref3 : py) !== null && _ref2 !== void 0 ? _ref2 : padding),
979
+ pr: makeScaleHandler((_ref4 = (_ref5 = paddingRight !== null && paddingRight !== void 0 ? paddingRight : pr) !== null && _ref5 !== void 0 ? _ref5 : px) !== null && _ref4 !== void 0 ? _ref4 : padding),
980
+ pb: makeScaleHandler((_ref6 = (_ref7 = paddingBottom !== null && paddingBottom !== void 0 ? paddingBottom : pb) !== null && _ref7 !== void 0 ? _ref7 : py) !== null && _ref6 !== void 0 ? _ref6 : padding),
981
+ pl: makeScaleHandler((_ref8 = (_ref9 = paddingLeft !== null && paddingLeft !== void 0 ? paddingLeft : pl) !== null && _ref9 !== void 0 ? _ref9 : px) !== null && _ref8 !== void 0 ? _ref8 : padding),
982
+ 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),
983
+ 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),
984
+ mt: makeScaleHandler((_ref18 = (_ref19 = marginTop !== null && marginTop !== void 0 ? marginTop : mt) !== null && _ref19 !== void 0 ? _ref19 : my) !== null && _ref18 !== void 0 ? _ref18 : margin),
985
+ mr: makeScaleHandler((_ref20 = (_ref21 = marginRight !== null && marginRight !== void 0 ? marginRight : mr) !== null && _ref21 !== void 0 ? _ref21 : mx) !== null && _ref20 !== void 0 ? _ref20 : margin),
986
+ mb: makeScaleHandler((_ref22 = (_ref23 = marginBottom !== null && marginBottom !== void 0 ? marginBottom : mb) !== null && _ref23 !== void 0 ? _ref23 : my) !== null && _ref22 !== void 0 ? _ref22 : margin),
987
+ ml: makeScaleHandler((_ref24 = (_ref25 = marginLeft !== null && marginLeft !== void 0 ? marginLeft : ml) !== null && _ref25 !== void 0 ? _ref25 : mx) !== null && _ref24 !== void 0 ? _ref24 : margin),
988
+ 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),
989
+ 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),
990
+ width: makeScaleHandler(width !== null && width !== void 0 ? width : w),
991
+ height: makeScaleHandler(height !== null && height !== void 0 ? height : h),
992
+ font: makeScaleHandler(font)
993
+ },
994
+ getScaleProps: generateGetScaleProps(props),
995
+ getAllScaleProps: generateGetAllScaleProps(props)
996
+ };
997
+ return /*#__PURE__*/React__default["default"].createElement(ScaleContext.Provider, {
998
+ value: value
999
+ }, /*#__PURE__*/React__default["default"].createElement(Render, _extends({}, innerProps, {
1000
+ ref: ref
1001
+ }), children));
1002
+ });
1003
+ ScaleFC.displayName = "Scale".concat(Render.displayName || 'Wrapper');
1004
+ return ScaleFC;
1005
+ };
1006
+
1007
+ var withScale$1 = withScale;
1008
+
1009
+ var useScale = useScale$1;
1010
+
1011
+ var _excluded$1 = ["children", "title", "subtitle", "initialVisible", "shadow", "className", "index"];
1012
+
1013
+ function CollapseComponent(_ref) {
1014
+ var children = _ref.children,
1015
+ title = _ref.title,
1016
+ subtitle = _ref.subtitle,
1017
+ _ref$initialVisible = _ref.initialVisible,
1018
+ initialVisible = _ref$initialVisible === void 0 ? false : _ref$initialVisible,
1019
+ _ref$shadow = _ref.shadow,
1020
+ shadow = _ref$shadow === void 0 ? false : _ref$shadow,
1021
+ _ref$className = _ref.className,
1022
+ className = _ref$className === void 0 ? '' : _ref$className,
1023
+ index = _ref.index,
1024
+ props = _objectWithoutProperties(_ref, _excluded$1);
1025
+
1026
+ var theme = useTheme();
1027
+
1028
+ var _useScale = useScale(),
1029
+ SCALES = _useScale.SCALES;
1030
+
1031
+ var _useCollapseContext = useCollapseContext(),
1032
+ values = _useCollapseContext.values,
1033
+ updateValues = _useCollapseContext.updateValues;
1034
+
1035
+ var _useCurrentState = useCurrentState$1(initialVisible),
1036
+ _useCurrentState2 = _slicedToArray(_useCurrentState, 3),
1037
+ visible = _useCurrentState2[0],
1038
+ setVisible = _useCurrentState2[1],
1039
+ visibleRef = _useCurrentState2[2];
1040
+
1041
+ var classes = useClasses$1('collapse', {
1042
+ shadow: shadow
1043
+ }, className);
1044
+
1045
+ if (!title) {
1046
+ // eslint-disable-next-line react-hooks/rules-of-hooks
1047
+ useWarning$1('"title" is required.', 'Collapse');
1048
+ }
1049
+
1050
+ React.useEffect(function () {
1051
+ if (!values.length) return;
1052
+ var isActive = !!values.find(function (item) {
1053
+ return item === index;
1054
+ });
1055
+ setVisible(isActive);
1056
+ }, [index, setVisible, values]);
1057
+
1058
+ var clickHandler = function clickHandler() {
1059
+ var next = !visibleRef.current;
1060
+ setVisible(next);
1061
+ updateValues && updateValues(index, next);
1062
+ };
1063
+
1064
+ return /*#__PURE__*/React__default["default"].createElement("div", _extends({}, props, {
1065
+ className: styledJsx_cjs.style.dynamic([["1460486588", [theme.palette.border, theme.palette.border, SCALES.font(1), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), theme.expressiveness.shadowSmall, theme.layout.radius, theme.layout.gap, theme.palette.foreground, theme.palette.accents_5, SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0)]]]) + " " + (props && props.className != null && props.className || classes || "")
1066
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
1067
+ role: "button",
1068
+ onClick: clickHandler,
1069
+ className: styledJsx_cjs.style.dynamic([["1460486588", [theme.palette.border, theme.palette.border, SCALES.font(1), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), theme.expressiveness.shadowSmall, theme.layout.radius, theme.layout.gap, theme.palette.foreground, theme.palette.accents_5, SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0)]]]) + " " + "view"
1070
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1071
+ className: styledJsx_cjs.style.dynamic([["1460486588", [theme.palette.border, theme.palette.border, SCALES.font(1), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), theme.expressiveness.shadowSmall, theme.layout.radius, theme.layout.gap, theme.palette.foreground, theme.palette.accents_5, SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0)]]]) + " " + "title"
1072
+ }, /*#__PURE__*/React__default["default"].createElement("h3", {
1073
+ className: styledJsx_cjs.style.dynamic([["1460486588", [theme.palette.border, theme.palette.border, SCALES.font(1), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), theme.expressiveness.shadowSmall, theme.layout.radius, theme.layout.gap, theme.palette.foreground, theme.palette.accents_5, SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0)]]])
1074
+ }, title), " ", /*#__PURE__*/React__default["default"].createElement(CollapseIcon$1, {
1075
+ active: visible
1076
+ })), subtitle && /*#__PURE__*/React__default["default"].createElement("div", {
1077
+ className: styledJsx_cjs.style.dynamic([["1460486588", [theme.palette.border, theme.palette.border, SCALES.font(1), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), theme.expressiveness.shadowSmall, theme.layout.radius, theme.layout.gap, theme.palette.foreground, theme.palette.accents_5, SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0)]]]) + " " + "subtitle"
1078
+ }, subtitle)), /*#__PURE__*/React__default["default"].createElement(Expand, {
1079
+ isExpanded: visible
1080
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1081
+ className: styledJsx_cjs.style.dynamic([["1460486588", [theme.palette.border, theme.palette.border, SCALES.font(1), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), theme.expressiveness.shadowSmall, theme.layout.radius, theme.layout.gap, theme.palette.foreground, theme.palette.accents_5, SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0)]]]) + " " + "content"
1082
+ }, children)), /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1083
+ id: "1460486588",
1084
+ dynamic: [theme.palette.border, theme.palette.border, SCALES.font(1), SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0), theme.expressiveness.shadowSmall, theme.layout.radius, theme.layout.gap, theme.palette.foreground, theme.palette.accents_5, SCALES.pt(1.2), SCALES.pr(0), SCALES.pb(1.2), SCALES.pl(0)]
1085
+ }, ".collapse.__jsx-style-dynamic-selector{border-top:1px solid ".concat(theme.palette.border, ";border-bottom:1px solid ").concat(theme.palette.border, ";font-size:").concat(SCALES.font(1), ";width:").concat(SCALES.width(1, 'auto'), ";height:").concat(SCALES.height(1, 'auto'), ";padding:").concat(SCALES.pt(1.2), " ").concat(SCALES.pr(0), " ").concat(SCALES.pb(1.2), " ").concat(SCALES.pl(0), ";margin:").concat(SCALES.mt(0), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0), " ").concat(SCALES.ml(0), ";}.shadow.__jsx-style-dynamic-selector{box-shadow:").concat(theme.expressiveness.shadowSmall, ";border:none;border-radius:").concat(theme.layout.radius, ";padding:").concat(theme.layout.gap, ";}.view.__jsx-style-dynamic-selector{cursor:pointer;outline:none;}.title.__jsx-style-dynamic-selector{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:").concat(theme.palette.foreground, ";}.title.__jsx-style-dynamic-selector h3.__jsx-style-dynamic-selector{margin:0;font-size:1.5em;}.subtitle.__jsx-style-dynamic-selector{color:").concat(theme.palette.accents_5, ";margin:0;}.subtitle.__jsx-style-dynamic-selector>*{margin:0;}.content.__jsx-style-dynamic-selector{font-size:inherit;line-height:1.6em;padding:").concat(SCALES.pt(1.2), " ").concat(SCALES.pr(0), " ").concat(SCALES.pb(1.2), " ").concat(SCALES.pl(0), ";}.content.__jsx-style-dynamic-selector>*:first-child{margin-top:0;}.content.__jsx-style-dynamic-selector>*:last-child{margin-bottom:0;}")));
1086
+ }
1087
+
1088
+ CollapseComponent.displayName = 'BolioUICollapse';
1089
+ var Collapse = withScale$1(CollapseComponent);
1090
+ var Collapse$1 = Collapse;
1091
+
1092
+ var _excluded = ["children", "accordion", "className"];
1093
+
1094
+ function CollapseGroupComponent(_ref) {
1095
+ var children = _ref.children,
1096
+ _ref$accordion = _ref.accordion,
1097
+ accordion = _ref$accordion === void 0 ? true : _ref$accordion,
1098
+ _ref$className = _ref.className,
1099
+ className = _ref$className === void 0 ? '' : _ref$className,
1100
+ props = _objectWithoutProperties(_ref, _excluded);
1101
+
1102
+ var _useScale = useScale(),
1103
+ SCALES = _useScale.SCALES;
1104
+
1105
+ var _useCurrentState = useCurrentState$1([]),
1106
+ _useCurrentState2 = _slicedToArray(_useCurrentState, 3),
1107
+ state = _useCurrentState2[0],
1108
+ setState = _useCurrentState2[1],
1109
+ stateRef = _useCurrentState2[2];
1110
+
1111
+ var classes = useClasses$1('collapse-group', className);
1112
+
1113
+ var updateValues = function updateValues(currentIndex, nextState) {
1114
+ var hasChild = stateRef.current.find(function (val) {
1115
+ return val === currentIndex;
1116
+ });
1117
+
1118
+ if (accordion) {
1119
+ if (nextState) return setState([currentIndex]);
1120
+ return setState([]);
1121
+ }
1122
+
1123
+ if (nextState) {
1124
+ if (hasChild) return;
1125
+ return setState([].concat(_toConsumableArray(stateRef.current), [currentIndex]));
1126
+ }
1127
+
1128
+ setState(stateRef.current.filter(function (item) {
1129
+ return item !== currentIndex;
1130
+ }));
1131
+ };
1132
+
1133
+ var initialValue = React.useMemo(function () {
1134
+ return {
1135
+ values: state,
1136
+ updateValues: updateValues
1137
+ };
1138
+ }, [state.join(',')]);
1139
+ var hasIndexChildren = React.useMemo(function () {
1140
+ return setChildrenIndex(children, [Collapse$1]);
1141
+ }, [children]);
1142
+ return /*#__PURE__*/React__default["default"].createElement(CollapseContext.Provider, {
1143
+ value: initialValue
1144
+ }, /*#__PURE__*/React__default["default"].createElement("div", _extends({}, props, {
1145
+ className: styledJsx_cjs.style.dynamic([["1712563073", [SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(0), SCALES.pr(0.6), SCALES.pb(0), SCALES.pl(0.6), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0)]]]) + " " + (props && props.className != null && props.className || classes || "")
1146
+ }), hasIndexChildren, /*#__PURE__*/React__default["default"].createElement(styledJsx_cjs.style, {
1147
+ id: "1712563073",
1148
+ dynamic: [SCALES.width(1, 'auto'), SCALES.height(1, 'auto'), SCALES.pt(0), SCALES.pr(0.6), SCALES.pb(0), SCALES.pl(0.6), SCALES.mt(0), SCALES.mr(0), SCALES.mb(0), SCALES.ml(0)]
1149
+ }, ".collapse-group.__jsx-style-dynamic-selector{width:".concat(SCALES.width(1, 'auto'), ";height:").concat(SCALES.height(1, 'auto'), ";padding:").concat(SCALES.pt(0), " ").concat(SCALES.pr(0.6), " ").concat(SCALES.pb(0), " ").concat(SCALES.pl(0.6), ";margin:").concat(SCALES.mt(0), " ").concat(SCALES.mr(0), " ").concat(SCALES.mb(0), " ").concat(SCALES.ml(0), ";}.collapse-group.__jsx-style-dynamic-selector>div + div{border-top:none;}"))));
1150
+ }
1151
+
1152
+ CollapseGroupComponent.displayName = 'BolioUICollapseGroup';
1153
+ var CollapseGroup = withScale$1(CollapseGroupComponent);
1154
+ var CollapseGroup$1 = CollapseGroup;
1155
+
1156
+ Collapse$1.Group = CollapseGroup$1;
1157
+
1158
+ exports["default"] = Collapse$1;