UNPKG

140 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, '__esModule', { value: true });
4
5function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
6
7var React = require('react');
8var React__default = _interopDefault(React);
9var shouldForwardProp = require('@styled-system/should-forward-prop');
10var styled = require('styled-components');
11var styled__default = _interopDefault(styled);
12var css = _interopDefault(require('@styled-system/css'));
13var styledSystem = require('styled-system');
14var useEvents = require('use-events');
15var Highlight = _interopDefault(require('prism-react-renderer'));
16var autoId = require('@reach/auto-id');
17var Color = _interopDefault(require('color'));
18var themeGet = require('@styled-system/theme-get');
19var propTypes = require('prop-types');
20var useOnClickOutside = _interopDefault(require('use-onclickoutside'));
21var core = require('@popperjs/core');
22var reactDom = require('react-dom');
23var ReachAlert = _interopDefault(require('@reach/alert'));
24var rect = require('@reach/rect');
25var CSSTransition = _interopDefault(require('react-transition-group/Transition'));
26var flushable = _interopDefault(require('flushable'));
27
28function _defineProperty(obj, key, value) {
29 if (key in obj) {
30 Object.defineProperty(obj, key, {
31 value: value,
32 enumerable: true,
33 configurable: true,
34 writable: true
35 });
36 } else {
37 obj[key] = value;
38 }
39
40 return obj;
41}
42
43function ownKeys(object, enumerableOnly) {
44 var keys = Object.keys(object);
45
46 if (Object.getOwnPropertySymbols) {
47 var symbols = Object.getOwnPropertySymbols(object);
48 if (enumerableOnly) symbols = symbols.filter(function (sym) {
49 return Object.getOwnPropertyDescriptor(object, sym).enumerable;
50 });
51 keys.push.apply(keys, symbols);
52 }
53
54 return keys;
55}
56
57function _objectSpread2(target) {
58 for (var i = 1; i < arguments.length; i++) {
59 var source = arguments[i] != null ? arguments[i] : {};
60
61 if (i % 2) {
62 ownKeys(Object(source), true).forEach(function (key) {
63 _defineProperty(target, key, source[key]);
64 });
65 } else if (Object.getOwnPropertyDescriptors) {
66 Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
67 } else {
68 ownKeys(Object(source)).forEach(function (key) {
69 Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
70 });
71 }
72 }
73
74 return target;
75}
76
77function _objectWithoutPropertiesLoose(source, excluded) {
78 if (source == null) return {};
79 var target = {};
80 var sourceKeys = Object.keys(source);
81 var key, i;
82
83 for (i = 0; i < sourceKeys.length; i++) {
84 key = sourceKeys[i];
85 if (excluded.indexOf(key) >= 0) continue;
86 target[key] = source[key];
87 }
88
89 return target;
90}
91
92function _taggedTemplateLiteralLoose(strings, raw) {
93 if (!raw) {
94 raw = strings.slice(0);
95 }
96
97 strings.raw = raw;
98 return strings;
99}
100
101function _unsupportedIterableToArray(o, minLen) {
102 if (!o) return;
103 if (typeof o === "string") return _arrayLikeToArray(o, minLen);
104 var n = Object.prototype.toString.call(o).slice(8, -1);
105 if (n === "Object" && o.constructor) n = o.constructor.name;
106 if (n === "Map" || n === "Set") return Array.from(o);
107 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
108}
109
110function _arrayLikeToArray(arr, len) {
111 if (len == null || len > arr.length) len = arr.length;
112
113 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
114
115 return arr2;
116}
117
118function _createForOfIteratorHelperLoose(o, allowArrayLike) {
119 var it;
120
121 if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
122 if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
123 if (it) o = it;
124 var i = 0;
125 return function () {
126 if (i >= o.length) return {
127 done: true
128 };
129 return {
130 done: false,
131 value: o[i++]
132 };
133 };
134 }
135
136 throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
137 }
138
139 it = o[Symbol.iterator]();
140 return it.next.bind(it);
141}
142
143var config = {
144 roundedTop: {
145 properties: ['borderTopLeftRadius', 'borderTopRightRadius'],
146 scale: 'radii'
147 },
148 roundedBottom: {
149 properties: ['borderBottomLeftRadius', 'borderBottomRightRadius'],
150 scale: 'radii'
151 },
152 roundedLeft: {
153 properties: ['borderTopLeftRadius', 'borderBottomLeftRadius'],
154 scale: 'radii'
155 },
156 roundedRight: {
157 properties: ['borderTopRightRadius', 'borderBottomRightRadius'],
158 scale: 'radii'
159 },
160 roundedTopRight: {
161 property: 'borderTopRightRadius',
162 scale: 'radii'
163 },
164 roundedTopLeft: {
165 property: 'borderTopLeftRadius',
166 scale: 'radii'
167 },
168 roundedBottomRight: {
169 property: 'borderBottomRightRadius',
170 scale: 'radii'
171 },
172 roundedBottomLeft: {
173 property: 'borderBottomLeftRadius',
174 scale: 'radii'
175 },
176 rounded: {
177 property: 'borderRadius',
178 scale: 'radii'
179 },
180 d: {
181 property: 'display'
182 },
183 w: {
184 property: 'width',
185 scale: 'sizes'
186 },
187 minW: {
188 property: 'minWidth',
189 scale: 'sizes'
190 },
191 maxW: {
192 property: 'maxWidth',
193 scale: 'sizes'
194 },
195 h: {
196 property: 'height',
197 scale: 'sizes'
198 },
199 minH: {
200 property: 'minHeight',
201 scale: 'sizes'
202 },
203 maxH: {
204 property: 'maxHeight',
205 scale: 'sizes'
206 },
207 bgImg: {
208 property: 'backgroundImage'
209 },
210 bgSize: {
211 property: 'backgroundSize'
212 },
213 bgPos: {
214 property: 'backgroundPosition'
215 },
216 bgRepeat: {
217 property: 'backgroundRepeat'
218 },
219 pos: {
220 property: 'position'
221 },
222 flexDir: {
223 property: 'flexDirection'
224 },
225 shadow: {
226 property: 'boxShadow',
227 scale: 'shadows'
228 },
229 textDecoration: true,
230 overflowX: true,
231 overflowY: true,
232 textTransform: true,
233 animation: true,
234 appearance: true,
235 transform: true,
236 transformOrigin: true,
237 visibility: true,
238 whiteSpace: true,
239 userSelect: true,
240 pointerEvents: true,
241 wordBreak: true,
242 overflowWrap: true,
243 textOverflow: true,
244 boxSizing: true,
245 cursor: true,
246 resize: true,
247 transition: true,
248 listStyleType: true,
249 listStylePosition: true,
250 listStyleImage: true,
251 fill: {
252 property: 'fill',
253 scale: 'colors'
254 },
255 stroke: {
256 property: 'stroke',
257 scale: 'colors'
258 },
259 objectFit: true,
260 objectPosition: true,
261 backgroundAttachment: true,
262 outline: true
263};
264config.bgAttachment = config.backgroundAttachment;
265config.textDecor = config.textDecoration;
266config.listStylePos = config.listStylePosition;
267config.listStyleImg = config.listStyleImage;
268var extraConfig = /*#__PURE__*/styledSystem.system(config);
269
270var transformAlias = function transformAlias(prop, propValue) {
271 var configKeys = Object.keys(config);
272 var result = {};
273
274 if (configKeys.includes(prop)) {
275 var _config$prop = config[prop],
276 properties = _config$prop.properties,
277 property = _config$prop.property;
278
279 if (properties) {
280 properties.forEach(function (_cssProp) {
281 return result[_cssProp] = propValue;
282 });
283 }
284
285 if (property) {
286 result[property] = propValue;
287 }
288
289 if (config[prop] === true) {
290 result[prop] = propValue;
291 }
292 } else {
293 result[prop] = propValue;
294 }
295
296 return result;
297};
298
299var transformAliasProps = function transformAliasProps(props) {
300 var result = {};
301
302 for (var prop in props) {
303 if (typeof props[prop] === 'object' && !Array.isArray(props[prop])) {
304 var _objectSpread2$1;
305
306 result = _objectSpread2({}, result, (_objectSpread2$1 = {}, _objectSpread2$1[prop] = transformAliasProps(props[prop]), _objectSpread2$1));
307 } else {
308 result = _objectSpread2({}, result, {}, transformAlias(prop, props[prop]));
309 }
310 }
311
312 return result;
313};
314var extraProps = /*#__PURE__*/Object.keys(config);
315
316function _templateObject() {
317 var data = _taggedTemplateLiteralLoose(["\n ", ";\n ", ";\n"]);
318
319 _templateObject = function _templateObject() {
320 return data;
321 };
322
323 return data;
324}
325var systemProps = /*#__PURE__*/styledSystem.compose(styledSystem.layout, styledSystem.color, styledSystem.space, styledSystem.background, styledSystem.border, styledSystem.grid, styledSystem.position, styledSystem.shadow, styledSystem.typography, styledSystem.flexbox, styledSystem.textStyle, styledSystem.buttonStyle, styledSystem.colorStyle);
326
327var _shouldForwardProp = /*#__PURE__*/shouldForwardProp.createShouldForwardProp( /*#__PURE__*/[].concat(shouldForwardProp.props, extraProps));
328
329var StyledBox = /*#__PURE__*/styled__default('div').withConfig({
330 shouldForwardProp: function shouldForwardProp(prop) {
331 return _shouldForwardProp(prop);
332 }
333})( /*#__PURE__*/_templateObject(), systemProps, extraConfig);
334var hover = '&:hover';
335var active = '&:active, &[data-active=true]';
336var focus = '&:focus';
337var visited = '&:visited';
338var even = '&:nth-of-type(even)';
339var odd = '&:nth-of-type(odd)';
340var disabled = '&:disabled, &:disabled:focus, &:disabled:hover, &[aria-disabled=true], &[aria-disabled=true]:focus, &[aria-disabled=true]:hover';
341var checked = '&[aria-checked=true]';
342var mixed = '&[aria-checked=mixed]';
343var selected = '&[aria-selected=true]';
344var invalid = '&[aria-invalid=true]';
345var pressed = '&[aria-pressed=true]';
346var readOnly = '&[aria-readonly=true], &[readonly]';
347var first = '&:first-of-type';
348var last = '&:last-of-type';
349var expanded = '&[aria-expanded=true]';
350var grabbed = '&[aria-grabbed=true]';
351var notFirst = '&:not(:first-of-type)';
352var notLast = '&:not(:last-of-type)';
353var groupHover = '[role=group]:hover &';
354var BoxWithPseudoStyles = /*#__PURE__*/styled__default(StyledBox)(function (_ref) {
355 var _css;
356
357 var _after = _ref._after,
358 _focus = _ref._focus,
359 _selected = _ref._selected,
360 _focusWithin = _ref._focusWithin,
361 _hover = _ref._hover,
362 _invalid = _ref._invalid,
363 _active = _ref._active,
364 _disabled = _ref._disabled,
365 _grabbed = _ref._grabbed,
366 _pressed = _ref._pressed,
367 _expanded = _ref._expanded,
368 _visited = _ref._visited,
369 _before = _ref._before,
370 _readOnly = _ref._readOnly,
371 _first = _ref._first,
372 _notFirst = _ref._notFirst,
373 _notLast = _ref._notLast,
374 _last = _ref._last,
375 _placeholder = _ref._placeholder,
376 _checked = _ref._checked,
377 _groupHover = _ref._groupHover,
378 _mixed = _ref._mixed,
379 _odd = _ref._odd,
380 _even = _ref._even;
381 return css((_css = {}, _css[hover] = transformAliasProps(_hover), _css[focus] = transformAliasProps(_focus), _css[active] = transformAliasProps(_active), _css[visited] = transformAliasProps(_visited), _css[disabled] = transformAliasProps(_disabled), _css[selected] = transformAliasProps(_selected), _css[invalid] = transformAliasProps(_invalid), _css[expanded] = transformAliasProps(_expanded), _css[grabbed] = transformAliasProps(_grabbed), _css[readOnly] = transformAliasProps(_readOnly), _css[first] = transformAliasProps(_first), _css[notFirst] = transformAliasProps(_notFirst), _css[notLast] = transformAliasProps(_notLast), _css[last] = transformAliasProps(_last), _css[odd] = transformAliasProps(_odd), _css[even] = transformAliasProps(_even), _css[mixed] = transformAliasProps(_mixed), _css[checked] = transformAliasProps(_checked), _css[pressed] = transformAliasProps(_pressed), _css[groupHover] = transformAliasProps(_groupHover), _css['&:before'] = transformAliasProps(_before), _css['&:after'] = transformAliasProps(_after), _css['&:focus-within'] = transformAliasProps(_focusWithin), _css['&::placeholder'] = transformAliasProps(_placeholder), _css));
382});
383var Box = /*#__PURE__*/React.forwardRef(function (props, ref) {
384 return React__default.createElement(BoxWithPseudoStyles, Object.assign({
385 ref: ref
386 }, props));
387});
388Box.displayName = 'Box';
389
390var ButtonGroup = function ButtonGroup(_ref) {
391 var size = _ref.size,
392 variantColor = _ref.variantColor,
393 variant = _ref.variant,
394 isAttached = _ref.isAttached,
395 _ref$spacing = _ref.spacing,
396 spacing = _ref$spacing === void 0 ? 2 : _ref$spacing,
397 children = _ref.children,
398 rest = _objectWithoutPropertiesLoose(_ref, ["size", "variantColor", "variant", "isAttached", "spacing", "children"]);
399
400 var clones = React.Children.map(children, function (child, index) {
401 var isFirst = index === 0;
402 var isLast = index === React.Children.count(children) - 1;
403
404 if (!React__default.isValidElement(child)) {
405 return null;
406 }
407
408 return React.cloneElement(child, _objectSpread2({
409 size: size || child.props.size,
410 variantColor: child.props.variantColor || variantColor,
411 variant: child.props.variant || variant,
412 _focus: {
413 boxShadow: 'outline',
414 zIndex: 1
415 }
416 }, !isLast && !isAttached && {
417 mr: spacing
418 }, {}, isFirst && isAttached && {
419 roundedRight: 0
420 }, {}, isLast && isAttached && {
421 roundedLeft: 0
422 }, {}, !isFirst && !isLast && isAttached && {
423 rounded: 0
424 }));
425 });
426 return React__default.createElement(Box, Object.assign({
427 display: "inline-block"
428 }, rest), clones);
429};
430
431ButtonGroup.displayName = 'ButtonGroup';
432
433var colors = {
434 transparent: 'transparent',
435 current: 'currentColor',
436 black: '#000000',
437 white: '#ffffff',
438 blue: /*#__PURE__*/Object.assign('#3700ff', {
439 100: '#F2F2FF',
440 200: '#E3E5FF',
441 300: '#C5CCFF',
442 400: '#AAB3FF',
443 900: '#5548ff',
444 hover: '#3100DC'
445 }),
446 ink: /*#__PURE__*/Object.assign('#0f1117', {
447 50: '#f4f4f5',
448 100: '#F9F9FC',
449 150: '#F4F4F5',
450 200: '#E7E7E8',
451 250: '#C8C8CC',
452 300: '#C8C8CC',
453 400: '#A7A7AD',
454 600: '#677282',
455 900: '#222933'
456 }),
457 darken: {
458 50: 'rgba(15, 17, 23, 0.05)',
459 100: 'rgba(15, 17, 23, 0.1)',
460 150: 'rgba(15, 17, 23, 0.15)'
461 },
462 red: '#de0014',
463 green: '#00a73e',
464 orange: '#f7aa00',
465 cyan: '#00d4ff',
466 feedback: {}
467};
468colors.feedback = {
469 error: colors.red,
470 success: colors.green,
471 warning: colors.orange,
472 info: colors.cyan
473};
474
475var containers = {
476 'screen-sm': '640px',
477 'screen-md': '768px',
478 'screen-lg': '1024px',
479 'screen-xl': '1280px'
480};
481var baseSizes = {
482 '0': '0px',
483 px: '1px',
484 '1': '4px',
485 '2': '8px',
486 '3': '12px',
487 '4': '16px',
488 '5': '20px',
489 '6': '24px',
490 '8': '32px',
491 '10': '40px',
492 '12': '48px',
493 '16': '64px',
494 '20': '80px',
495 '24': '96px',
496 '32': '128px',
497 '40': '160px',
498 '48': '192px',
499 '56': '224px',
500 '64': '256px'
501};
502var namedSpacingUnits = {
503 none: baseSizes[0],
504 'extra-tight': baseSizes[1],
505 tight: baseSizes[2],
506 'base-tight': baseSizes[3],
507 base: baseSizes[4],
508 'base-loose': baseSizes[5],
509 loose: baseSizes[6],
510 'extra-loose': baseSizes[8]
511};
512var space = function space(spacing) {
513 return spacing;
514};
515var sizes = /*#__PURE__*/_objectSpread2({}, baseSizes, {
516 containers: containers
517}, namedSpacingUnits);
518
519var typography = {
520 letterSpacings: {
521 tighter: '-0.02em',
522 tight: '-0.01em',
523 normal: '0',
524 wide: '0.025em',
525 wider: '0.05em',
526 widest: '0.1em'
527 },
528 lineHeights: {
529 normal: 'normal',
530 none: '1',
531 shorter: '1.333',
532 "short": '1.4',
533 base: '1.5',
534 tall: '1.625',
535 taller: '2'
536 },
537 fontWeights: {
538 hairline: 100,
539 thin: 200,
540 light: 300,
541 normal: 400,
542 medium: 500,
543 semibold: 600,
544 bold: 700,
545 extrabold: 800,
546 black: 900
547 },
548 fonts: {
549 heading: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',
550 body: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',
551 mono: 'SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'
552 },
553 fontSizes: [12, 14, 16, 20, 24, 28, 32, 36, 48, 64, 96, 128]
554};
555var displayLarge = {
556 fontWeight: typography.fontWeights.semibold,
557 fontSize: typography.fontSizes[4],
558 lineHeight: typography.lineHeights.shorter,
559 letterSpacing: '-0.02em'
560};
561var displaySmall = {
562 fontWeight: typography.fontWeights.medium,
563 fontSize: typography.fontSizes[3],
564 lineHeight: typography.lineHeights["short"],
565 letterSpacing: '-0.02em'
566};
567var bodyLarge = {
568 fontWeight: typography.fontWeights.normal,
569 fontSize: typography.fontSizes[2],
570 lineHeight: typography.lineHeights.base,
571 letterSpacing: '-0.01em'
572};
573
574var bodyLargeMedium = /*#__PURE__*/_objectSpread2({}, bodyLarge, {
575 fontWeight: typography.fontWeights.medium
576});
577
578var bodySmall = {
579 fontWeight: typography.fontWeights.normal,
580 fontSize: typography.fontSizes[1],
581 lineHeight: typography.lineHeights["short"],
582 letterSpacing: '-0.01em'
583};
584
585var bodySmallMedium = /*#__PURE__*/_objectSpread2({}, bodySmall, {
586 fontWeight: typography.fontWeights.medium
587});
588
589var caption = {
590 fontSize: typography.fontSizes[0],
591 lineHeight: typography.lineHeights.shorter,
592 letterSpacing: '0.00em'
593};
594
595var captionMedium = /*#__PURE__*/_objectSpread2({}, bodySmall, {
596 fontWeight: typography.fontWeights.medium
597});
598
599var textStyles = {
600 display: {
601 large: displayLarge,
602 small: displaySmall
603 },
604 body: {
605 large: /*#__PURE__*/_objectSpread2({}, bodyLarge, {
606 medium: bodyLargeMedium
607 }),
608 small: /*#__PURE__*/_objectSpread2({}, bodySmall, {
609 medium: bodySmallMedium
610 })
611 },
612 caption: /*#__PURE__*/_objectSpread2({}, caption, {
613 medium: captionMedium
614 })
615};
616var typography$1 = /*#__PURE__*/_objectSpread2({}, typography, {
617 textStyles: textStyles
618});
619
620var space$1 = sizes;
621var shadows = {
622 low: '0px 1px 2px rgba(0, 0, 0, 0.04)',
623 mid: '0px 1px 2px rgba(27, 39, 51, 0.04), 0px 4px 8px rgba(27, 39, 51, 0.04)',
624 high: '0px 8px 16px rgba(27, 39, 51, 0.08)',
625 inner: 'inset 0 2px 4px 0 rgba(0,0,0,0.06)',
626 none: 'none',
627 focus: '0 0 0 3px rgba(170, 179, 255, 0.75)',
628 'button.secondary': '0px 1px 2px rgba(0, 0, 0, 0.08), 0px 1px 4px rgba(0, 0, 0, 0.08)'
629};
630var breakpoints = ['30em', '48em', '62em', '80em'];
631breakpoints.sm = breakpoints[0];
632breakpoints.md = breakpoints[1];
633breakpoints.lg = breakpoints[2];
634breakpoints.xl = breakpoints[3];
635var zIndices = {
636 hide: -1,
637 auto: 'auto',
638 '0': 0,
639 '10': 10,
640 '20': 20,
641 '30': 30,
642 '40': 40,
643 '50': 50,
644 '60': 60,
645 '70': 70,
646 '80': 80
647};
648var radii = {
649 none: '0',
650 sm: '0.125rem',
651 md: '0.25rem',
652 lg: '0.5rem',
653 full: '9999px'
654};
655var opacity = {
656 '0': '0',
657 '20%': '0.2',
658 '40%': '0.4',
659 '60%': '0.6',
660 '80%': '0.8',
661 '100%': '1'
662};
663var borders = {
664 none: 0,
665 '1px': '1px solid',
666 '2px': '2px solid',
667 '4px': '4px solid'
668};
669
670var theme = /*#__PURE__*/_objectSpread2({
671 breakpoints: breakpoints,
672 zIndices: zIndices,
673 radii: radii,
674 opacity: opacity,
675 borders: borders,
676 colors: colors
677}, typography$1, {
678 sizes: sizes,
679 shadows: shadows,
680 space: space$1
681});
682
683var transition = 'all 0.2s cubic-bezier(0.23, 1, 0.32, 1)';
684
685var baseProps = {
686 display: 'inline-flex',
687 appearance: 'none',
688 alignItems: 'center',
689 justifyContent: 'center',
690 transition: 'all 250ms',
691 userSelect: 'none',
692 position: 'relative',
693 whiteSpace: 'nowrap',
694 verticalAlign: 'middle',
695 lineHeight: 'shorter',
696 outline: 'none',
697 border: '1px solid',
698 borderColor: 'transparent'
699};
700var sizes$1 = {
701 lg: {
702 minHeight: 12,
703 minWidth: 9 * 14,
704 fontSize: '14px !important',
705 px: 5
706 },
707 md: {
708 minHeight: 10,
709 minWidth: 10,
710 fontSize: '14px !important',
711 px: 4
712 },
713 sm: {
714 minHeight: 6,
715 minWidth: 10,
716 fontSize: '11px !important',
717 px: 3
718 }
719};
720var unstyledStyle = {
721 userSelect: 'inherit',
722 bg: 'none',
723 border: 0,
724 color: 'inherit',
725 display: 'inline',
726 font: 'inherit',
727 lineHeight: 'inherit',
728 m: 0,
729 p: 0,
730 textAlign: 'inherit'
731};
732
733var linkVariantProps = function linkVariantProps() {
734 return {
735 p: 0,
736 height: 'unset',
737 lineHeight: 'normal',
738 color: 'blue',
739 minWidth: 'unset',
740 _hover: {
741 color: 'blue.hover',
742 textDecoration: 'underline'
743 },
744 _active: {
745 textDecoration: 'underline'
746 },
747 _focus: {
748 textDecoration: 'underline'
749 },
750 _disabled: {
751 color: '#A7A7AD'
752 }
753 };
754};
755
756var solidVariantProps = function solidVariantProps(_ref) {
757 var mode = _ref.mode,
758 customStyles = _ref.customStyles;
759 var style = {
760 primary: {
761 bg: 'blue',
762 color: 'white',
763 _hover: {
764 cursor: 'pointer'
765 },
766 _focus: {
767 borderColor: 'blue.300',
768 boxShadow: shadows.focus
769 },
770 _disabled: {
771 bg: 'blue.200',
772 cursor: 'not-allowed'
773 }
774 },
775 secondary: {
776 bg: 'blue.100',
777 color: 'blue',
778 border: '1px solid',
779 borderColor: 'blue.300',
780 boxShadow: null,
781 _hover: {
782 cursor: 'pointer',
783 bg: 'blue.200'
784 },
785 _focus: {
786 borderColor: 'blue.300',
787 boxShadow: shadows.focus
788 },
789 _disabled: {
790 bg: 'blue.200',
791 cursor: 'not-allowed',
792 color: 'white',
793 border: 'none'
794 }
795 },
796 tertiary: {
797 bg: 'white',
798 color: 'blue',
799 boxShadow: shadows['button.secondary'],
800 _hover: {
801 cursor: 'pointer',
802 bg: 'white',
803 boxShadow: shadows['button.secondary']
804 },
805 _focus: {
806 borderColor: 'blue.300',
807 boxShadow: shadows.focus
808 },
809 _disabled: {
810 bg: 'white',
811 pointerEvents: 'none',
812 cursor: 'not-allowed',
813 color: 'blue.300'
814 }
815 }
816 };
817
818 if (customStyles) {
819 return customStyles[mode];
820 }
821
822 return style[mode];
823};
824
825var sizeProps = function sizeProps(_ref2) {
826 var size = _ref2.size;
827 return sizes$1[size];
828};
829
830var variantProps = function variantProps(props) {
831 switch (props.variant) {
832 case 'solid':
833 return solidVariantProps(props);
834
835 case 'link':
836 return linkVariantProps();
837
838 case 'unstyled':
839 return unstyledStyle;
840
841 default:
842 return {};
843 }
844};
845
846var useButtonStyle = function useButtonStyle(props) {
847 return _objectSpread2({}, baseProps, {}, variantProps(props), {}, sizeProps(props));
848};
849
850function _templateObject$1() {
851 var data = _taggedTemplateLiteralLoose(["\n border: 0px;\n clip: rect(0px, 0px, 0px, 0px);\n height: 1px;\n width: 1px;\n margin: -1px;\n padding: 0px;\n overflow: hidden;\n white-space: nowrap;\n position: absolute;\n"]);
852
853 _templateObject$1 = function _templateObject() {
854 return data;
855 };
856
857 return data;
858}
859var VisuallyHidden = /*#__PURE__*/styled__default(Box)( /*#__PURE__*/_templateObject$1());
860
861function _templateObject$2() {
862 var data = _taggedTemplateLiteralLoose(["\n animation: ", " ", " linear infinite;\n"]);
863
864 _templateObject$2 = function _templateObject() {
865 return data;
866 };
867
868 return data;
869}
870var spin = /*#__PURE__*/styled.keyframes(["0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}"]);
871var StyledBox$1 = /*#__PURE__*/styled__default(Box)( /*#__PURE__*/_templateObject$2(), spin, function (props) {
872 return props.speed;
873});
874
875var getSize = function getSize(size) {
876 switch (size) {
877 case 'xs':
878 return '0.75rem';
879
880 case 'sm':
881 return '1rem';
882
883 case 'md':
884 return '1.5rem';
885
886 case 'lg':
887 return '2rem';
888
889 case 'xl':
890 return '3rem';
891
892 default:
893 return size;
894 }
895};
896
897var Spinner = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
898 var _ref$size = _ref.size,
899 size = _ref$size === void 0 ? 'md' : _ref$size,
900 _ref$label = _ref.label,
901 label = _ref$label === void 0 ? 'Loading...' : _ref$label,
902 _ref$thickness = _ref.thickness,
903 thickness = _ref$thickness === void 0 ? '2px' : _ref$thickness,
904 _ref$speed = _ref.speed,
905 speed = _ref$speed === void 0 ? '0.85s' : _ref$speed,
906 color = _ref.color,
907 _ref$emptyColor = _ref.emptyColor,
908 emptyColor = _ref$emptyColor === void 0 ? 'transparent' : _ref$emptyColor,
909 props = _objectWithoutPropertiesLoose(_ref, ["size", "label", "thickness", "speed", "color", "emptyColor"]);
910
911 var _size = getSize(size);
912
913 return React__default.createElement(StyledBox$1, Object.assign({
914 ref: ref,
915 display: "inline-block",
916 borderWidth: thickness,
917 borderColor: "currentColor",
918 borderBottomColor: emptyColor,
919 borderLeftColor: emptyColor,
920 borderRadius: "100%",
921 speed: speed,
922 color: color,
923 size: _size
924 }, props), label && React__default.createElement(VisuallyHidden, null, label));
925});
926Spinner.displayName = 'Spinner';
927
928var HoverChange = function HoverChange(_ref) {
929 var isHovered = _ref.isHovered,
930 isDisabled = _ref.isDisabled;
931 return React__default.createElement(Box, {
932 borderRadius: "6px",
933 position: "absolute",
934 width: "100%",
935 height: "100%",
936 left: 0,
937 top: 0,
938 bg: "darken.150",
939 opacity: !isDisabled && isHovered ? 1 : 0,
940 zIndex: 1,
941 transition: "all 250ms"
942 });
943};
944
945var Button = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
946 var isDisabled = _ref2.isDisabled,
947 isActive = _ref2.isActive,
948 children = _ref2.children,
949 Comp = _ref2.as,
950 _ref2$mode = _ref2.mode,
951 mode = _ref2$mode === void 0 ? 'primary' : _ref2$mode,
952 _ref2$variant = _ref2.variant,
953 variant = _ref2$variant === void 0 ? 'solid' : _ref2$variant,
954 type = _ref2.type,
955 _ref2$size = _ref2.size,
956 size = _ref2$size === void 0 ? 'md' : _ref2$size,
957 isLoading = _ref2.isLoading,
958 loadingText = _ref2.loadingText,
959 customStyles = _ref2.customStyles,
960 rest = _objectWithoutPropertiesLoose(_ref2, ["isDisabled", "isActive", "children", "as", "mode", "variant", "type", "size", "isLoading", "loadingText", "customStyles"]);
961
962 var styles = useButtonStyle({
963 variant: variant,
964 mode: mode,
965 size: size,
966 customStyles: customStyles
967 });
968
969 var _useHover = useEvents.useHover(),
970 hovered = _useHover[0],
971 bind = _useHover[1];
972
973 return React__default.createElement(Box, Object.assign({
974 disabled: isDisabled,
975 "aria-disabled": isDisabled,
976 ref: ref,
977 type: type,
978 borderRadius: "6px",
979 fontWeight: "medium",
980 position: "relative",
981 "data-active": isActive ? 'true' : undefined,
982 as: Comp || 'button'
983 }, rest, styles, bind), React__default.createElement(Box, {
984 as: "span",
985 display: "flex",
986 alignItems: "center",
987 justifyContent: "center",
988 position: "relative",
989 zIndex: 5
990 }, isLoading && React__default.createElement(Spinner, {
991 position: loadingText ? 'relative' : 'absolute',
992 mx: !loadingText ? 'auto' : 'unset',
993 color: "currentColor",
994 size: size === 'sm' ? 'xs' : 'sm'
995 }), isLoading ? React__default.createElement(Box, {
996 ml: "tight"
997 }, loadingText) || React__default.createElement(Box, {
998 ml: "tight",
999 as: "span",
1000 opacity: 0
1001 }, children) : children), mode === 'primary' ? React__default.createElement(HoverChange, {
1002 isDisabled: isDisabled || false,
1003 isHovered: hovered
1004 }) : null);
1005});
1006Button.displayName = 'Button';
1007
1008var Flex = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
1009 var align = _ref.align,
1010 justify = _ref.justify,
1011 wrap = _ref.wrap,
1012 direction = _ref.direction,
1013 rest = _objectWithoutPropertiesLoose(_ref, ["align", "justify", "wrap", "direction"]);
1014
1015 return React__default.createElement(Box, Object.assign({
1016 ref: ref,
1017 display: "flex",
1018 flexDirection: direction,
1019 alignItems: align,
1020 justifyContent: justify,
1021 flexWrap: wrap
1022 }, rest));
1023});
1024Flex.displayName = 'Flex';
1025
1026var _window = undefined;
1027
1028try {
1029 _window = window;
1030} catch (e) {}
1031
1032function getWindow(node) {
1033 var _node$ownerDocument$d, _node$ownerDocument;
1034
1035 return (_node$ownerDocument$d = node === null || node === void 0 ? void 0 : (_node$ownerDocument = node.ownerDocument) === null || _node$ownerDocument === void 0 ? void 0 : _node$ownerDocument.defaultView) !== null && _node$ownerDocument$d !== void 0 ? _node$ownerDocument$d : _window;
1036}
1037
1038function checkIsBrowser() {
1039 var _window = getWindow();
1040
1041 return Boolean(typeof _window !== 'undefined' && _window.document && _window.document.createElement);
1042}
1043
1044var isBrowser = /*#__PURE__*/checkIsBrowser();
1045function isFunction(value) {
1046 return typeof value === 'function';
1047}
1048function createContext(options) {
1049 if (options === void 0) {
1050 options = {};
1051 }
1052
1053 var _options = options,
1054 _options$strict = _options.strict,
1055 strict = _options$strict === void 0 ? true : _options$strict,
1056 _options$errorMessage = _options.errorMessage,
1057 errorMessage = _options$errorMessage === void 0 ? 'useContext must be inside a Provider with a value' : _options$errorMessage,
1058 name = _options.name;
1059 var Context = React__default.createContext(undefined);
1060 Context.displayName = name;
1061
1062 function useContext() {
1063 var context = React__default.useContext(Context);
1064 if (!context && strict) throw new Error(errorMessage);
1065 return context;
1066 }
1067
1068 return [Context.Provider, useContext, Context];
1069}
1070function assignRef(ref, value) {
1071 if (ref == null) return;
1072
1073 if (isFunction(ref)) {
1074 ref(value);
1075 return;
1076 }
1077
1078 try {
1079 ref.current = value;
1080 } catch (error) {
1081 throw new Error("Cannot assign value '" + value + "' to ref '" + ref + "'");
1082 }
1083}
1084function mergeRefs() {
1085 for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
1086 refs[_key] = arguments[_key];
1087 }
1088
1089 return function (value) {
1090 refs.forEach(function (ref) {
1091 return assignRef(ref, value);
1092 });
1093 };
1094}
1095var __DEV__ = "development" !== 'production';
1096function runIfFn(valueOrFn) {
1097 for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
1098 args[_key2 - 1] = arguments[_key2];
1099 }
1100
1101 return isFunction(valueOrFn) ? valueOrFn.apply(void 0, args) : valueOrFn;
1102}
1103function warn(options) {
1104 if (options.condition && __DEV__) {
1105 console.warn(options.message);
1106 }
1107}
1108function callAllHandlers() {
1109 for (var _len3 = arguments.length, fns = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
1110 fns[_key3] = arguments[_key3];
1111 }
1112
1113 return function (event) {
1114 fns.some(function (fn) {
1115 fn && fn(event);
1116 return event && event.defaultPrevented;
1117 });
1118 };
1119}
1120function isString(value) {
1121 return Object.prototype.toString.call(value) === '[object String]';
1122}
1123function omit(object, keys) {
1124 var result = {};
1125
1126 for (var key in object) {
1127 if (keys.includes(key)) continue;
1128 result[key] = object[key];
1129 }
1130
1131 return result;
1132}
1133function pick(object, keys) {
1134 var result = {};
1135
1136 for (var _iterator = _createForOfIteratorHelperLoose(keys), _step; !(_step = _iterator()).done;) {
1137 var key = _step.value;
1138
1139 if (key in object) {
1140 result[key] = object[key];
1141 }
1142 }
1143
1144 return result;
1145}
1146var startPad = function startPad(n, z, s) {
1147 if (z === void 0) {
1148 z = 2;
1149 }
1150
1151 if (s === void 0) {
1152 s = '0';
1153 }
1154
1155 return (n + '').length <= z ? ['', '-'][+(n < 0)] + (s.repeat(z) + Math.abs(n)).slice(-1 * z) : n + '';
1156};
1157
1158function useControllableProp(propValue, stateValue) {
1159 var _React$useRef = React.useRef(propValue !== undefined),
1160 isControlled = _React$useRef.current;
1161
1162 var value = isControlled && typeof propValue !== 'undefined' ? propValue : stateValue;
1163 return [isControlled, value];
1164}
1165var defaultPropsMap = {
1166 value: 'value',
1167 defaultValue: 'defaultValue',
1168 onChange: 'onChange'
1169};
1170function useControllableState(props) {
1171 var valueProp = props.value,
1172 defaultValue = props.defaultValue,
1173 onChange = props.onChange,
1174 _props$shouldUpdate = props.shouldUpdate,
1175 shouldUpdate = _props$shouldUpdate === void 0 ? function () {
1176 return true;
1177 } : _props$shouldUpdate,
1178 _props$name = props.name,
1179 name = _props$name === void 0 ? 'Component' : _props$name,
1180 _props$propsMap = props.propsMap,
1181 propsMap = _props$propsMap === void 0 ? defaultPropsMap : _props$propsMap;
1182
1183 var _React$useState = React.useState(defaultValue),
1184 valueState = _React$useState[0],
1185 setValue = _React$useState[1];
1186
1187 var _React$useRef2 = React.useRef(valueProp !== undefined),
1188 isControlled = _React$useRef2.current;
1189
1190 React.useEffect(function () {
1191 var nextIsControlled = valueProp !== undefined;
1192 var nextMode = nextIsControlled ? 'a controlled' : 'an uncontrolled';
1193 var mode = isControlled ? 'a controlled' : 'an uncontrolled';
1194 warn({
1195 condition: isControlled !== nextIsControlled,
1196 message: "Warning: " + name + " is changing from " + mode + " to " + nextMode + " component. " + 'Components should not switch from controlled to uncontrolled (or vice versa). ' + ("Use the '" + propsMap['value'] + "' with an '" + propsMap['onChange'] + "' handler. ") + ("If you want an uncontrolled component, remove the " + propsMap['value'] + " prop and use '" + propsMap['defaultValue'] + "' instead. \"") + 'More info: https://fb.me/react-controlled-components'
1197 });
1198 }, [valueProp, isControlled, name]);
1199
1200 var _React$useRef3 = React.useRef(defaultValue),
1201 _defaultValue = _React$useRef3.current;
1202
1203 React.useEffect(function () {
1204 warn({
1205 condition: _defaultValue !== defaultValue,
1206 message: "Warning: A component is changing the default value of an uncontrolled " + name + " after being initialized. " + ("To suppress this warning opt to use a controlled " + name + ".")
1207 });
1208 }, [JSON.stringify(defaultValue)]);
1209 var value = isControlled ? valueProp : valueState;
1210 var updateValue = React.useCallback(function (next) {
1211 var nextValue = runIfFn(next, value);
1212 var shouldUpdateState = shouldUpdate(value, nextValue);
1213 if (!shouldUpdateState) return;
1214
1215 if (!isControlled) {
1216 setValue(next);
1217 }
1218
1219 onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
1220 }, [onChange, shouldUpdate, isControlled, value]);
1221 return [value, updateValue];
1222}
1223
1224function usePrevious(value) {
1225 var valueRef = React.useRef();
1226 React.useEffect(function () {
1227 valueRef.current = value;
1228 }, [value]);
1229 return valueRef.current;
1230}
1231
1232function useDisclosure(props) {
1233 if (props === void 0) {
1234 props = {};
1235 }
1236
1237 var _props = props,
1238 onCloseProp = _props.onClose,
1239 onOpenProp = _props.onOpen;
1240
1241 var _React$useState = React.useState(props.defaultIsOpen || false),
1242 isOpenState = _React$useState[0],
1243 setIsOpen = _React$useState[1];
1244
1245 var _useControllableProp = useControllableProp(props.isOpen, isOpenState),
1246 isControlled = _useControllableProp[0],
1247 isOpen = _useControllableProp[1];
1248
1249 var prevIsOpen = usePrevious(isOpen);
1250 var onClose = React.useCallback(function () {
1251 if (!isControlled) {
1252 setIsOpen(false);
1253 }
1254
1255 if (onCloseProp) {
1256 onCloseProp();
1257 }
1258 }, [isControlled, onCloseProp]);
1259 var onOpen = React.useCallback(function () {
1260 if (!isControlled) {
1261 setIsOpen(true);
1262 }
1263
1264 if (onOpenProp) {
1265 onOpenProp();
1266 }
1267 }, [isControlled, onOpenProp]);
1268 var onToggle = React.useCallback(function () {
1269 var action = isOpen ? onClose : onOpen;
1270 action();
1271 }, [isOpen, onOpen, onClose]);
1272 return {
1273 isOpen: Boolean(isOpen),
1274 prevIsOpen: Boolean(prevIsOpen),
1275 onOpen: onOpen,
1276 onClose: onClose,
1277 onToggle: onToggle,
1278 isControlled: isControlled
1279 };
1280}
1281
1282function useLatestRef(value) {
1283 var ref = React.useRef(value);
1284 React.useEffect(function () {
1285 ref.current = value;
1286 }, [value]);
1287 return ref;
1288}
1289
1290function useEventListener(event, handler, doc, options) {
1291 if (doc === void 0) {
1292 doc = isBrowser ? document : null;
1293 }
1294
1295 var savedHandler = useLatestRef(handler);
1296 React.useEffect(function () {
1297 if (!doc) return;
1298
1299 var listener = function listener(event) {
1300 savedHandler.current(event);
1301 };
1302
1303 doc.addEventListener(event, listener, options);
1304 return function () {
1305 doc.removeEventListener(event, listener, options);
1306 };
1307 }, [event, doc, options, savedHandler]);
1308 return function () {
1309 var _doc;
1310
1311 (_doc = doc) === null || _doc === void 0 ? void 0 : _doc.removeEventListener(event, savedHandler.current, options);
1312 };
1313}
1314
1315function useForceUpdate() {
1316 var _React$useState = React.useState(0),
1317 count = _React$useState[0],
1318 setCount = _React$useState[1];
1319
1320 return React.useCallback(function () {
1321 return setCount(count + 1);
1322 }, [count]);
1323}
1324
1325function generatePrefix(prefix, id) {
1326 return prefix + "-" + id;
1327}
1328
1329function useId(idProp, prefix) {
1330 var uuid = autoId.useId();
1331 var id = idProp !== null && idProp !== void 0 ? idProp : uuid;
1332 return prefix ? generatePrefix(prefix, id) : id;
1333}
1334function useIds(idProp) {
1335 var id = useId(idProp);
1336
1337 for (var _len = arguments.length, prefixes = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
1338 prefixes[_key - 1] = arguments[_key];
1339 }
1340
1341 return prefixes.map(function (prefix) {
1342 return generatePrefix(prefix, id);
1343 });
1344}
1345
1346function assignRef$1(ref, value) {
1347 if (ref == null) return;
1348
1349 if (typeof ref === 'function') {
1350 ref(value);
1351 } else {
1352 try {
1353 ref.current = value;
1354 } catch (error) {
1355 throw new Error("Cannot assign value \"" + value + "\" to ref \"" + ref + "\"");
1356 }
1357 }
1358}
1359function useMergeRefs() {
1360 for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
1361 refs[_key] = arguments[_key];
1362 }
1363
1364 return React.useMemo(function () {
1365 if (refs.every(function (ref) {
1366 return ref == null;
1367 })) {
1368 return null;
1369 }
1370
1371 return function (node) {
1372 refs.forEach(function (ref) {
1373 if (ref) assignRef$1(ref, node);
1374 });
1375 };
1376 }, refs);
1377}
1378
1379var useSafeLayoutEffect = isBrowser ? React.useLayoutEffect : React.useEffect;
1380
1381var useTimeout = function useTimeout(_ref) {
1382 var onTimeout = _ref.onTimeout,
1383 duration = _ref.duration;
1384
1385 var _useState = React.useState(true),
1386 activated = _useState[0],
1387 setActivated = _useState[1];
1388
1389 var timeoutRef = React.useRef();
1390 var stopTimeout = React.useCallback(function () {
1391 window.clearTimeout(timeoutRef.current);
1392 setActivated(false);
1393 }, []);
1394 React.useEffect(function () {
1395 if (activated) {
1396 timeoutRef.current = window.setTimeout(function () {
1397 onTimeout();
1398 }, duration);
1399 return function () {
1400 stopTimeout();
1401 };
1402 }
1403
1404 return;
1405 }, [onTimeout, activated, duration, stopTimeout]);
1406 var startTimeout = React.useCallback(function () {
1407 setActivated(true);
1408 }, []);
1409 return {
1410 stopTimeout: stopTimeout,
1411 startTimeout: startTimeout
1412 };
1413};
1414
1415var get = function get(color, hue) {
1416 return color + "." + hue;
1417};
1418var addOpacity = function addOpacity(color, opacity) {
1419 return Color(color).fade(1 - opacity).rgb().string();
1420};
1421var addWhite = function addWhite(color, opacity) {
1422 return Color(color).mix(Color('#fff'), opacity).hex();
1423};
1424var addBlack = function addBlack(color, opacity) {
1425 return Color(color).mix(Color('#000'), opacity).hex();
1426};
1427var isDarkColor = function isDarkColor(color) {
1428 return Color(color).isDark();
1429};
1430var generateAlphaColors = function generateAlphaColors(color) {
1431 return {
1432 900: addOpacity(color, 0.92),
1433 800: addOpacity(color, 0.8),
1434 700: addOpacity(color, 0.6),
1435 600: addOpacity(color, 0.48),
1436 500: addOpacity(color, 0.38),
1437 400: addOpacity(color, 0.24),
1438 300: addOpacity(color, 0.16),
1439 200: addOpacity(color, 0.12),
1440 100: addOpacity(color, 0.08),
1441 50: addOpacity(color, 0.04)
1442 };
1443};
1444var colorEmphasis = function colorEmphasis(color, emphasis) {
1445 switch (emphasis) {
1446 case 'high':
1447 return color;
1448
1449 case 'medium':
1450 return generateAlphaColors(color)[700];
1451
1452 case 'low':
1453 return generateAlphaColors(color)[500];
1454
1455 case 'lowest':
1456 return generateAlphaColors(color)[300];
1457
1458 default:
1459 return undefined;
1460 }
1461};
1462var generateStripe = function generateStripe(_ref) {
1463 var _ref$size = _ref.size,
1464 size = _ref$size === void 0 ? '1rem' : _ref$size,
1465 _ref$color = _ref.color,
1466 color = _ref$color === void 0 ? 'rgba(255, 255, 255, 0.15)' : _ref$color;
1467 return styled.css(["background-image:linear-gradient( 45deg,", " 25%,transparent 25%,transparent 50%,", " 50%,", " 75%,transparent 75%,transparent );background-size:", " ", ";"], color, color, color, size, size);
1468};
1469
1470var ThemeContext = /*#__PURE__*/React__default.createContext(theme);
1471
1472var ThemeProvider = function ThemeProvider(_ref) {
1473 var _ref$theme = _ref.theme,
1474 theme$1 = _ref$theme === void 0 ? theme : _ref$theme,
1475 children = _ref.children;
1476 return React__default.createElement(styled.ThemeProvider, {
1477 theme: theme$1
1478 }, children);
1479};
1480
1481var useTheme = function useTheme() {
1482 var theme = React.useContext(ThemeContext);
1483
1484 if (theme === undefined) {
1485 throw new Error('useTheme must be used within a ThemeProvider');
1486 }
1487
1488 return theme;
1489};
1490
1491var isBrowser$1 = typeof window !== 'undefined';
1492
1493var isSupported = function isSupported(api) {
1494 return isBrowser$1 && api in window;
1495};
1496
1497function useMediaQuery(query) {
1498 var _React$useState = React.useState(function () {
1499 if (!isSupported('matchMedia')) return false;
1500 return window.matchMedia(query).matches;
1501 }),
1502 matches = _React$useState[0],
1503 setMatches = _React$useState[1];
1504
1505 useSafeLayoutEffect(function () {
1506 if (!isSupported('matchMedia')) return;
1507 var mediaQueryList = window.matchMedia(query);
1508
1509 var listener = function listener() {
1510 return setMatches(mediaQueryList.matches);
1511 };
1512
1513 mediaQueryList.addListener(listener);
1514 listener();
1515 return function () {
1516 mediaQueryList.removeListener(listener);
1517 };
1518 }, [query]);
1519 return [matches, setMatches];
1520}
1521
1522(function (Color) {
1523 Color["Accent"] = "accent";
1524 Color["Bg"] = "bg";
1525 Color["BgAlt"] = "bg-alt";
1526 Color["BgLight"] = "bg-light";
1527 Color["Invert"] = "invert";
1528 Color["TextHover"] = "text-hover";
1529 Color["TextTitle"] = "text-title";
1530 Color["TextCaption"] = "text-caption";
1531 Color["TextBody"] = "text-body";
1532 Color["InputPlaceholder"] = "input-placeholder";
1533 Color["Border"] = "border";
1534 Color["FeedbackAlert"] = "feedback-alert";
1535 Color["FeedbackError"] = "feedback-error";
1536 Color["FeedbackSuccess"] = "feedback-success";
1537})(exports.Color || (exports.Color = {}));
1538
1539var colorGet = function colorGet(path, fallback) {
1540 return themeGet.themeGet('colors.' + path, fallback);
1541};
1542
1543var colors$1 = function colors(props) {
1544 var _light, _dark;
1545
1546 return {
1547 light: (_light = {}, _light[exports.Color.Accent] = colorGet('blue')(props), _light[exports.Color.Bg] = 'white', _light[exports.Color.BgAlt] = colorGet('ink.50')(props), _light[exports.Color.BgLight] = 'white', _light[exports.Color.Invert] = colorGet('ink')(props), _light[exports.Color.TextHover] = colorGet('blue')(props), _light[exports.Color.TextTitle] = colorGet('ink')(props), _light[exports.Color.TextCaption] = colorGet('ink.600')(props), _light[exports.Color.TextBody] = colorGet('ink.900')(props), _light[exports.Color.InputPlaceholder] = colorGet('ink.400')(props), _light[exports.Color.Border] = 'rgb(229, 229, 236)', _light[exports.Color.FeedbackAlert] = colorGet('orange')(props), _light[exports.Color.FeedbackError] = colorGet('red')(props), _light[exports.Color.FeedbackSuccess] = colorGet('green')(props), _light),
1548 dark: (_dark = {}, _dark[exports.Color.Accent] = colorGet('blue.400')(props), _dark[exports.Color.Bg] = colorGet('ink')(props), _dark[exports.Color.BgAlt] = 'rgba(255,255,255,0.05)', _dark[exports.Color.BgLight] = 'rgba(255,255,255,0.08)', _dark[exports.Color.Invert] = 'white', _dark[exports.Color.TextHover] = colorGet('blue.300')(props), _dark[exports.Color.TextTitle] = 'white', _dark[exports.Color.TextCaption] = '#a7a7ad', _dark[exports.Color.TextBody] = colorGet('ink.300')(props), _dark[exports.Color.InputPlaceholder] = 'rgba(255,255,255,0.3)', _dark[exports.Color.Border] = 'rgb(39, 41, 46)', _dark[exports.Color.FeedbackAlert] = colorGet('orange')(props), _dark[exports.Color.FeedbackError] = colorGet('red')(props), _dark[exports.Color.FeedbackSuccess] = colorGet('green')(props), _dark)
1549 };
1550};
1551
1552var colorModeStyles = function colorModeStyles(props) {
1553 return colors$1(props)[props.colorMode];
1554};
1555
1556var colorMap = function colorMap(props) {
1557 return Object.keys(colors$1(props)[props.colorMode]);
1558};
1559
1560var color = function color(name) {
1561 return "var(--colors-" + name + ")";
1562};
1563var themeColor = function themeColor(name) {
1564 return name;
1565};
1566var generateCssVariables = function generateCssVariables(mode) {
1567 return function (_ref) {
1568 var _ref$colorMode = _ref.colorMode,
1569 colorMode = _ref$colorMode === void 0 ? mode : _ref$colorMode,
1570 rest = _objectWithoutPropertiesLoose(_ref, ["colorMode"]);
1571
1572 return colorMap(_objectSpread2({
1573 colorMode: colorMode
1574 }, rest)).map(function (key) {
1575 return "--colors-" + key + ": " + colorModeStyles(_objectSpread2({
1576 colorMode: colorMode
1577 }, rest))[key] + ";";
1578 });
1579 };
1580};
1581
1582function _templateObject$3() {
1583 var data = _taggedTemplateLiteralLoose(["\n :root{\n ", ";\n }\n\n @media (prefers-color-scheme: dark) {\n :root {\n ", ";\n }\n }\n\n @media (prefers-color-scheme: light) {\n :root {\n ", ";\n }\n }\n\n html, body, #__next {\n background: var(--colors-bg);\n border-color: var(--colors-border);\n }\n\n input:-webkit-autofill,\n input:-webkit-autofill:hover,\n input:-webkit-autofill:focus,\n textarea:-webkit-autofill,\n textarea:-webkit-autofill:hover,\n textarea:-webkit-autofill:focus,\n select:-webkit-autofill,\n select:-webkit-autofill:hover,\n select:-webkit-autofill:focus {\n -webkit-text-fill-color: var(--colors-text-body);\n font-size: 16px !important;\n transition: background-color 5000s ease-in-out 0s;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: var(--colors-input-placeholder) !important;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: var(--colors-input-placeholder) !important;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: var(--colors-input-placeholder) !important;\n }\n "]);
1584
1585 _templateObject$3 = function _templateObject() {
1586 return data;
1587 };
1588
1589 return data;
1590}
1591var ColorModes = /*#__PURE__*/styled.createGlobalStyle( /*#__PURE__*/_templateObject$3(), /*#__PURE__*/generateCssVariables('light'), /*#__PURE__*/generateCssVariables('dark'), /*#__PURE__*/generateCssVariables('light'));
1592
1593var ColorModeContext = /*#__PURE__*/React__default.createContext({
1594 colorMode: undefined
1595});
1596var ColorModeProvider = function ColorModeProvider(_ref) {
1597 var colorMode = _ref.colorMode,
1598 children = _ref.children,
1599 onChange = _ref.onChange;
1600
1601 var _React$useState = React__default.useState(colorMode),
1602 mode = _React$useState[0],
1603 setMode = _React$useState[1];
1604
1605 var _useMediaQuery = useMediaQuery('(prefers-color-scheme: dark)'),
1606 darkmode = _useMediaQuery[0];
1607
1608 var _useMediaQuery2 = useMediaQuery('(prefers-color-scheme: light)'),
1609 lightmode = _useMediaQuery2[0];
1610
1611 React.useEffect(function () {
1612 if (!mode) {
1613 setMode(darkmode ? 'dark' : 'light');
1614 }
1615 }, [mode, darkmode, lightmode]);
1616 var setColorMode = React.useCallback(function (mode) {
1617 setMode(mode);
1618 onChange && onChange(mode);
1619 }, [mode]);
1620 var toggleColorMode = React.useCallback(function () {
1621 if (mode === 'light') {
1622 setColorMode('dark');
1623 return;
1624 }
1625
1626 if (mode === 'dark') {
1627 setColorMode('light');
1628 return;
1629 }
1630
1631 if (!colorMode && darkmode) {
1632 setColorMode('light');
1633 return;
1634 }
1635
1636 if (!mode && lightmode) {
1637 setColorMode('dark');
1638 return;
1639 }
1640 }, [mode, lightmode, darkmode]);
1641 return React__default.createElement(ColorModeContext.Provider, {
1642 value: {
1643 colorMode: mode,
1644 toggleColorMode: toggleColorMode
1645 }
1646 }, React__default.createElement(ColorModes, {
1647 colorMode: mode
1648 }), children);
1649};
1650
1651var useColorMode = function useColorMode() {
1652 var _useContext = React.useContext(ColorModeContext),
1653 colorMode = _useContext.colorMode,
1654 toggleColorMode = _useContext.toggleColorMode;
1655
1656 return {
1657 colorMode: colorMode,
1658 toggleColorMode: toggleColorMode
1659 };
1660};
1661
1662var theme$1 = {
1663 plain: {
1664 color: '#fff',
1665 backgroundColor: 'transparent'
1666 },
1667 styles: [{
1668 types: ['prolog'],
1669 style: {
1670 color: 'rgb(0, 0, 128)'
1671 }
1672 }, {
1673 types: ['comment', 'punctuation'],
1674 style: {
1675 color: 'rgb(106, 153, 85)'
1676 }
1677 }, {
1678 types: ['builtin', 'tag', 'changed', 'function', 'keyword'],
1679 style: {
1680 color: 'rgb(86, 156, 214)'
1681 }
1682 }, {
1683 types: ['number', 'variable', 'inserted'],
1684 style: {
1685 color: '#A58FFF'
1686 }
1687 }, {
1688 types: ['operator'],
1689 style: {
1690 color: 'rgb(212, 212, 212)'
1691 }
1692 }, {
1693 types: ['constant'],
1694 style: {
1695 color: 'rgb(100, 102, 149)'
1696 }
1697 }, {
1698 types: ['attr-name'],
1699 style: {
1700 color: 'rgb(156, 220, 254)'
1701 }
1702 }, {
1703 types: ['car'],
1704 style: {
1705 color: 'rgb(156, 220, 254)'
1706 }
1707 }, {
1708 types: ['deleted', 'string'],
1709 style: {
1710 color: '#FF7B48'
1711 }
1712 }, {
1713 types: ['class-name'],
1714 style: {
1715 color: 'rgb(78, 201, 176)'
1716 }
1717 }, {
1718 types: ['char'],
1719 style: {
1720 color: '#FF7B48'
1721 }
1722 }]
1723};
1724
1725var lineNumberWidth = 60;
1726
1727var getLineNumber = function getLineNumber(n, length) {
1728 return startPad(n + 1, length.toString().length);
1729};
1730
1731var Tokens = function Tokens(_ref) {
1732 var tokens = _ref.tokens,
1733 getTokenProps = _ref.getTokenProps,
1734 showLineNumbers = _ref.showLineNumbers,
1735 rest = _objectWithoutPropertiesLoose(_ref, ["tokens", "getTokenProps", "showLineNumbers"]);
1736
1737 var bsTheme = useTheme();
1738 var pl = "calc(" + (showLineNumbers ? lineNumberWidth : '0') + "px + " + (bsTheme.sizes['base'] || '16px') + ")";
1739 return React__default.createElement(Box, Object.assign({
1740 pl: pl,
1741 pr: "base",
1742 position: "relative",
1743 zIndex: 2
1744 }, rest), tokens.map(function (token, key) {
1745 return React__default.createElement(Box, Object.assign({
1746 py: "2px",
1747 display: "inline-block"
1748 }, getTokenProps({
1749 token: token,
1750 key: key
1751 })));
1752 }));
1753};
1754
1755var LineNumber = function LineNumber(_ref2) {
1756 var number = _ref2.number,
1757 length = _ref2.length,
1758 rest = _objectWithoutPropertiesLoose(_ref2, ["number", "length"]);
1759
1760 return React__default.createElement(Flex, Object.assign({
1761 textAlign: "right",
1762 pr: "base",
1763 pl: "base",
1764 width: lineNumberWidth,
1765 borderRight: "1px solid",
1766 borderRightColor: "inherit",
1767 color: "ink.400",
1768 flexShrink: 0,
1769 style: {
1770 userSelect: 'none'
1771 },
1772 position: "absolute",
1773 left: 0,
1774 height: "100%",
1775 align: "baseline",
1776 justify: "center",
1777 zIndex: 1
1778 }, rest), getLineNumber(number, length));
1779};
1780
1781var Line = function Line(_ref3) {
1782 var tokens = _ref3.tokens,
1783 getTokenProps = _ref3.getTokenProps,
1784 index = _ref3.index,
1785 length = _ref3.length,
1786 showLineNumbers = _ref3.showLineNumbers,
1787 hideLineHover = _ref3.hideLineHover,
1788 rest = _objectWithoutPropertiesLoose(_ref3, ["tokens", "getTokenProps", "index", "length", "showLineNumbers", "hideLineHover"]);
1789
1790 return React__default.createElement(Flex, Object.assign({
1791 height: "loose",
1792 align: "baseline",
1793 borderColor: "ink.900",
1794 _hover: hideLineHover ? undefined : {
1795 bg: ['unset', 'unset', 'ink.900'],
1796 borderColor: ['ink.900', 'ink.900', 'ink.600']
1797 },
1798 position: "relative"
1799 }, rest), showLineNumbers ? React__default.createElement(LineNumber, {
1800 number: index,
1801 length: length
1802 }) : null, React__default.createElement(Tokens, {
1803 showLineNumbers: showLineNumbers,
1804 getTokenProps: getTokenProps,
1805 tokens: tokens
1806 }));
1807};
1808
1809var Lines = function Lines(_ref4) {
1810 var lines = _ref4.tokens,
1811 getLineProps = _ref4.getLineProps,
1812 getTokenProps = _ref4.getTokenProps,
1813 className = _ref4.className,
1814 showLineNumbers = _ref4.showLineNumbers,
1815 hideLineHover = _ref4.hideLineHover;
1816 return React__default.createElement(Box, {
1817 display: "block",
1818 className: className
1819 }, React__default.createElement(Box, {
1820 display: "block",
1821 style: {
1822 fontFamily: 'Fira Code'
1823 }
1824 }, lines.map(function (tokens, i) {
1825 return React__default.createElement(Line, Object.assign({
1826 index: i,
1827 tokens: tokens,
1828 getTokenProps: getTokenProps,
1829 length: lines.length + 1,
1830 showLineNumbers: showLineNumbers,
1831 hideLineHover: hideLineHover || lines.length < 3
1832 }, getLineProps({
1833 line: tokens,
1834 key: i
1835 })));
1836 })));
1837};
1838
1839var Highlighter = /*#__PURE__*/React__default.memo(function (_ref5) {
1840 var code = _ref5.code,
1841 _ref5$language = _ref5.language,
1842 language = _ref5$language === void 0 ? 'clarity' : _ref5$language,
1843 showLineNumbers = _ref5.showLineNumbers,
1844 hideLineHover = _ref5.hideLineHover,
1845 Prism = _ref5.Prism;
1846 return React__default.createElement(Highlight, {
1847 theme: theme$1,
1848 code: code,
1849 language: language,
1850 Prism: Prism
1851 }, function (props) {
1852 return React__default.createElement(Lines, Object.assign({
1853 showLineNumbers: showLineNumbers,
1854 hideLineHover: hideLineHover
1855 }, props));
1856 });
1857});
1858Highlighter.displayName = 'Highlighter';
1859
1860var CodeBlock = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
1861 var code = _ref.code,
1862 showLineNumbers = _ref.showLineNumbers,
1863 hideLineHover = _ref.hideLineHover,
1864 _ref$style = _ref.style,
1865 style = _ref$style === void 0 ? {} : _ref$style,
1866 language = _ref.language,
1867 Prism = _ref.Prism,
1868 rest = _objectWithoutPropertiesLoose(_ref, ["code", "showLineNumbers", "hideLineHover", "style", "language", "Prism"]);
1869
1870 return React__default.createElement(Box, Object.assign({
1871 overflowX: "auto",
1872 bg: "ink",
1873 borderRadius: [0, 0, '12px'],
1874 py: "base",
1875 width: "100%",
1876 ref: ref,
1877 style: _objectSpread2({}, style, {
1878 whiteSpace: 'pre',
1879 fontFamily: 'Fira Code, Consolata, monospace',
1880 fontSize: '14px'
1881 })
1882 }, rest), React__default.createElement(Highlighter, {
1883 language: language,
1884 code: code.toString().trim(),
1885 showLineNumbers: showLineNumbers,
1886 hideLineHover: hideLineHover,
1887 Prism: Prism
1888 }));
1889});
1890
1891var tailwindPreflight = /*#__PURE__*/styled.css(["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0;}main{display:block;}h1{font-size:2em;margin:0.67em 0;}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace,monospace;font-size:1em;}a{background-color:transparent;}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder;}code,kbd,samp{font-family:monospace,monospace;font-size:1em;}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sub{bottom:-0.25em;}sup{top:-0.5em;}img{border-style:none;}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible;}button,select{text-transform:none;}button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner{border-style:none;padding:0;}fieldset{padding:0.35em 0.75em 0.625em;}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline;}textarea{overflow:auto;}[type='checkbox'],[type='radio']{box-sizing:border-box;padding:0;}[type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button{-webkit-appearance:none !important;}[type='search']{-webkit-appearance:textfield;outline-offset:-2px;}[type='search']::-webkit-search-decoration{-webkit-appearance:none !important;}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block;}summary{display:list-item;}template{display:none;}[hidden]{display:none !important;}html{box-sizing:border-box;font-family:sans-serif;}*,*::before,*::after{box-sizing:border-box;}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0;}button{background:transparent;padding:0;}fieldset{margin:0;padding:0;}ol,ul{margin:0;padding:0;}html{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-rendering:optimizelegibility;}hr{border-top-width:1px;}img{border-style:solid;}textarea{resize:vertical;}button,[role='button']{cursor:pointer;}button::-moz-focus-inner{border:0 !important;}table{border-collapse:collapse;}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;}a{color:inherit;text-decoration:inherit;}button,input,optgroup,select,textarea{padding:0;line-height:inherit;color:inherit;}pre,code,kbd,samp{font-family:Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle;}img,video{max-width:100%;height:auto;}"]);
1892
1893function _templateObject2() {
1894 var data = _taggedTemplateLiteralLoose(["\n *,\n *::before,\n *::after {\n box-sizing: border-box;\n border-color: ", ";\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: ", ";\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: ", ";\n }\n\n input::placeholder,\n textarea::placeholder {\n color: ", ";\n }\n\n body,\n div,\n span {\n text-align: initial;\n font-family: ", ";\n }\n"]);
1895
1896 _templateObject2 = function _templateObject2() {
1897 return data;
1898 };
1899
1900 return data;
1901}
1902
1903function _templateObject$4() {
1904 var data = _taggedTemplateLiteralLoose(["", ""]);
1905
1906 _templateObject$4 = function _templateObject() {
1907 return data;
1908 };
1909
1910 return data;
1911}
1912
1913var defaultConfig = function defaultConfig(theme) {
1914 return {
1915 light: {
1916 color: theme.colors.ink[900],
1917 bg: undefined,
1918 borderColor: '#E5E5EC',
1919 placeholderColor: theme.colors.ink[400]
1920 },
1921 dark: {
1922 color: 'white',
1923 bg: theme.colors.ink[900],
1924 borderColor: theme.colors.ink[600],
1925 placeholderColor: theme.colors.ink[500]
1926 }
1927 };
1928};
1929
1930var _defaultConfig$light = /*#__PURE__*/defaultConfig(theme).light,
1931 color$1 = _defaultConfig$light.color,
1932 bg = _defaultConfig$light.bg,
1933 borderColor = _defaultConfig$light.borderColor,
1934 placeholderColor = _defaultConfig$light.placeholderColor;
1935var cssReset = /*#__PURE__*/styled.css(["", ";html{line-height:1.5;color:", ";background-color:", ";font-family:", ";}*,*::before,*::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:", ";}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:", ";}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:", ";}input::placeholder,textarea::placeholder{color:", ";}"], tailwindPreflight, color$1, bg, theme && theme.fonts && theme.fonts.body, borderColor, placeholderColor, placeholderColor, placeholderColor);
1936var CSSReset = /*#__PURE__*/styled.createGlobalStyle( /*#__PURE__*/_templateObject$4(), cssReset);
1937var ScopedCSSReset = /*#__PURE__*/styled__default.div( /*#__PURE__*/_templateObject2(), borderColor, placeholderColor, placeholderColor, placeholderColor, theme && theme.fonts && theme.fonts.body);
1938
1939var FormControlContext = /*#__PURE__*/React.createContext({});
1940var useFormControlContext = function useFormControlContext() {
1941 return React.useContext(FormControlContext);
1942};
1943var useFormControl = function useFormControl(props) {
1944 var context = useFormControlContext();
1945
1946 if (!context) {
1947 return props;
1948 }
1949
1950 var keys = Object.keys(context);
1951 return keys.reduce(function (acc, prop) {
1952 acc[prop] = props[prop];
1953
1954 if (context) {
1955 if (props[prop] == null) {
1956 acc[prop] = context[prop];
1957 }
1958 }
1959
1960 return acc;
1961 }, {});
1962};
1963var FormControl = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
1964 var isInvalid = _ref.isInvalid,
1965 isRequired = _ref.isRequired,
1966 isDisabled = _ref.isDisabled,
1967 isReadOnly = _ref.isReadOnly,
1968 rest = _objectWithoutPropertiesLoose(_ref, ["isInvalid", "isRequired", "isDisabled", "isReadOnly"]);
1969
1970 var context = {
1971 isRequired: isRequired,
1972 isDisabled: isDisabled,
1973 isInvalid: isInvalid,
1974 isReadOnly: isReadOnly
1975 };
1976 return React__default.createElement(FormControlContext.Provider, {
1977 value: context
1978 }, React__default.createElement(Box, Object.assign({
1979 role: "group",
1980 ref: ref
1981 }, rest)));
1982});
1983FormControl.displayName = 'FormControl';
1984
1985var assumeTextStyle = function assumeTextStyle(as) {
1986 switch (as) {
1987 case 'h1':
1988 return 'display.large';
1989
1990 case 'h2':
1991 return 'display.small';
1992
1993 case 'h3':
1994 return 'body.large.medium';
1995
1996 default:
1997 return undefined;
1998 }
1999};
2000
2001var Text = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2002 var textStyle = _ref.textStyle,
2003 _ref$as = _ref.as,
2004 as = _ref$as === void 0 ? 'span' : _ref$as,
2005 rest = _objectWithoutPropertiesLoose(_ref, ["textStyle", "as"]);
2006
2007 return React__default.createElement(Box, Object.assign({
2008 ref: ref,
2009 as: as,
2010 whiteSpace: "unset",
2011 display: "inline",
2012 textStyle: textStyle || assumeTextStyle(as)
2013 }, rest));
2014});
2015Text.displayName = 'Text';
2016
2017var RequiredIndicator = function RequiredIndicator(props) {
2018 return React__default.createElement(Box, Object.assign({
2019 as: "span",
2020 ml: 1,
2021 color: "red",
2022 "aria-hidden": "true",
2023 children: "*"
2024 }, props));
2025};
2026var FormLabel = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2027 var children = _ref.children,
2028 props = _objectWithoutPropertiesLoose(_ref, ["children"]);
2029
2030 var formControl = useFormControl(props);
2031 return React__default.createElement(Text, Object.assign({
2032 ref: ref,
2033 pb: "4px",
2034 opacity: formControl.isDisabled ? 0.4 : 1,
2035 textAlign: "left",
2036 verticalAlign: "middle",
2037 display: "inline-block",
2038 as: "label",
2039 textStyle: "body.small.medium"
2040 }, props), children, formControl.isRequired && React__default.createElement(RequiredIndicator, null));
2041});
2042FormLabel.displayName = 'FormLabel';
2043
2044var Grid = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2045 var templateColumns = _ref.templateColumns,
2046 gap = _ref.gap,
2047 rowGap = _ref.rowGap,
2048 columnGap = _ref.columnGap,
2049 autoFlow = _ref.autoFlow,
2050 autoRows = _ref.autoRows,
2051 autoColumns = _ref.autoColumns,
2052 templateRows = _ref.templateRows,
2053 templateAreas = _ref.templateAreas,
2054 area = _ref.area,
2055 column = _ref.column,
2056 row = _ref.row,
2057 props = _objectWithoutPropertiesLoose(_ref, ["templateColumns", "gap", "rowGap", "columnGap", "autoFlow", "autoRows", "autoColumns", "templateRows", "templateAreas", "area", "column", "row"]);
2058
2059 return React__default.createElement(Box, Object.assign({
2060 ref: ref,
2061 display: "grid",
2062 gridArea: area,
2063 gridTemplateAreas: templateAreas,
2064 gridGap: gap,
2065 gridRowGap: rowGap,
2066 gridColumnGap: columnGap,
2067 gridAutoColumns: autoColumns,
2068 gridColumn: column,
2069 gridRow: row,
2070 gridAutoFlow: autoFlow,
2071 gridAutoRows: autoRows,
2072 gridTemplateRows: templateRows,
2073 gridTemplateColumns: templateColumns
2074 }, props));
2075});
2076Grid.displayName = 'Grid';
2077
2078var Svg = function Svg(_ref) {
2079 var _ref$width = _ref.width,
2080 width = _ref$width === void 0 ? '24px' : _ref$width,
2081 _ref$height = _ref.height,
2082 height = _ref$height === void 0 ? 'auto' : _ref$height,
2083 _ref$viewBox = _ref.viewBox,
2084 viewBox = _ref$viewBox === void 0 ? '0 0 24 24' : _ref$viewBox,
2085 _ref$fill = _ref.fill,
2086 fill = _ref$fill === void 0 ? 'none' : _ref$fill,
2087 rest = _objectWithoutPropertiesLoose(_ref, ["width", "height", "viewBox", "fill"]);
2088
2089 return React.createElement(Box, Object.assign({
2090 as: "svg",
2091 width: width,
2092 height: height,
2093 viewBox: viewBox,
2094 fill: fill
2095 }, rest));
2096};
2097
2098var AppsIcon = function AppsIcon(props) {
2099 return React__default.createElement(Svg, Object.assign({}, props), React__default.createElement("rect", {
2100 y: "1.02686",
2101 width: "10.0435",
2102 height: "9.88235",
2103 rx: "1.75",
2104 fill: "currentColor"
2105 }), React__default.createElement("path", {
2106 opacity: "0.8",
2107 d: "M13.5697 10.9091H22.2999C23.0625 10.9091 23.5444 10.0897 23.1739 9.42317L18.8088 1.57201C18.4277 0.886573 17.4419 0.886572 17.0608 1.572L12.6957 9.42316C12.3251 10.0897 12.8071 10.9091 13.5697 10.9091Z",
2108 fill: "currentColor"
2109 }), React__default.createElement("rect", {
2110 opacity: "0.64",
2111 y: "13.7327",
2112 width: "10.4348",
2113 height: "10.2674",
2114 rx: "5.13369",
2115 fill: "currentColor"
2116 }), React__default.createElement("path", {
2117 opacity: "0.4",
2118 fillRule: "evenodd",
2119 clipRule: "evenodd",
2120 d: "M14.672 14.0339C14.4783 13.8498 14.2188 13.7479 13.9494 13.7502C13.68 13.7525 13.4224 13.8588 13.2319 14.0462C13.0414 14.2337 12.9334 14.4872 12.931 14.7523C12.9287 15.0173 13.0322 15.2726 13.2194 15.4633L16.4894 18.6809L13.2194 21.8984C13.0266 22.088 12.9182 22.3451 12.9182 22.6133C12.9181 22.746 12.9446 22.8775 12.9962 23.0002C13.0478 23.1229 13.1235 23.2344 13.2189 23.3283C13.3142 23.4222 13.4275 23.4967 13.5521 23.5476C13.6768 23.5984 13.8104 23.6246 13.9453 23.6247C14.2179 23.6248 14.4793 23.5183 14.672 23.3288L17.9421 20.1112L21.2121 23.3288C21.4049 23.5185 21.6663 23.625 21.9389 23.625C22.2116 23.625 22.473 23.5185 22.6658 23.3288C22.8585 23.1391 22.9668 22.8819 22.9668 22.6136C22.9668 22.3454 22.8585 22.0881 22.6658 21.8984L19.3957 18.6809L22.6658 15.4633C22.7612 15.3694 22.8368 15.2579 22.8884 15.1352C22.94 15.0125 22.9665 14.881 22.9665 14.7483C22.9664 14.6155 22.9398 14.484 22.8881 14.3614C22.8364 14.2387 22.7607 14.1273 22.6653 14.0334C22.5698 13.9396 22.4565 13.8651 22.3318 13.8144C22.2071 13.7636 22.0735 13.7375 21.9386 13.7375C21.8036 13.7376 21.67 13.7638 21.5454 13.8146C21.4207 13.8655 21.3075 13.94 21.2121 14.0339L17.9421 17.2515L14.672 14.0339Z",
2121 fill: "currentColor"
2122 }));
2123};
2124
2125var rotate = function rotate(direction) {
2126 if (direction === void 0) {
2127 direction = 'up';
2128 }
2129
2130 switch (direction) {
2131 case 'up':
2132 return 0;
2133
2134 case 'right':
2135 return '90';
2136
2137 case 'down':
2138 return '180';
2139
2140 case 'left':
2141 return '270';
2142
2143 default:
2144 throw new Error('`rotate` must receive direction parameter');
2145 }
2146};
2147
2148var ArrowIcon = function ArrowIcon(_ref) {
2149 var direction = _ref.direction,
2150 style = _ref.style,
2151 props = _objectWithoutPropertiesLoose(_ref, ["direction", "style"]);
2152
2153 return React.createElement(Svg, Object.assign({
2154 width: "11px",
2155 height: "14px",
2156 viewBox: "0 0 11 14",
2157 style: _objectSpread2({}, style, {
2158 transform: "rotate(" + rotate(direction) + "deg)"
2159 })
2160 }, props), React.createElement("path", {
2161 d: "M5.5 13.559c.444 0 .759-.315.759-.766V4.351l-.055-1.477 1.77 1.976 1.56 1.545a.765.765 0 00.54.225c.416 0 .73-.314.73-.745a.754.754 0 00-.239-.547L6.061.816a.78.78 0 00-1.128 0L.435 5.328a.754.754 0 00-.24.547c0 .43.308.745.725.745.219 0 .41-.089.547-.225L3.019 4.85l1.777-1.983-.062 1.484v8.442c0 .451.315.766.766.766z",
2162 fill: "currentColor"
2163 }));
2164};
2165
2166var BlockchainIcon = function BlockchainIcon(props) {
2167 var color = props.color || 'currentColor';
2168 return React.createElement(Svg, Object.assign({}, props), React.createElement("rect", {
2169 width: "12",
2170 height: "12",
2171 rx: "2.25",
2172 fill: color
2173 }), React.createElement("rect", {
2174 opacity: "0.6",
2175 x: "12",
2176 y: "12",
2177 width: "12",
2178 height: "12",
2179 rx: "2.25",
2180 fill: color
2181 }), React.createElement("rect", {
2182 opacity: "0.4",
2183 x: "14.75",
2184 y: "2.75",
2185 width: "6.5",
2186 height: "6.5",
2187 rx: "1",
2188 stroke: color,
2189 strokeWidth: "1.5",
2190 strokeLinejoin: "round"
2191 }), React.createElement("rect", {
2192 opacity: "0.4",
2193 x: "2.75",
2194 y: "14.75",
2195 width: "6.5",
2196 height: "6.5",
2197 rx: "1",
2198 stroke: color,
2199 strokeWidth: "1.5",
2200 strokeLinejoin: "round"
2201 }));
2202};
2203
2204var BlockstackIcon = function BlockstackIcon(props) {
2205 return React.createElement(Svg, Object.assign({
2206 width: "12",
2207 height: "12",
2208 viewBox: "0 0 12 12",
2209 fill: "none"
2210 }, props), React.createElement("path", {
2211 fillRule: "evenodd",
2212 clipRule: "evenodd",
2213 d: "M0.148042 1.08513C-5.58794e-08 1.42724 -3.80998e-08 1.86349 0 2.736L1.42713e-07 6L2.85387e-07 9.264C3.23525e-07 10.1365 0 10.5728 0.148042 10.9149C0.329866 11.335 0.664964 11.6701 1.08513 11.852C1.42724 12 1.86349 12 2.736 12H6H9.264C10.1365 12 10.5728 12 10.9149 11.852C11.335 11.6701 11.6701 11.335 11.852 10.9149C12 10.5728 12 10.1365 12 9.264V6V2.736C12 1.86349 12 1.42724 11.852 1.08513C11.6701 0.664963 11.335 0.329865 10.9149 0.148041C10.5728 -6.70552e-08 10.1365 -3.80998e-08 9.264 0L6 1.42713e-07L2.736 2.85387e-07C1.86349 3.23525e-07 1.40625 2.90573e-07 1.08513 0.148042C0.664964 0.329867 0.329866 0.664963 0.148042 1.08513ZM7.91566 5.16965C7.31682 5.16965 6.83125 4.68409 6.83125 4.08511C6.83125 3.48644 7.31682 3.00088 7.91566 3.00088C8.5145 3.00088 9.00007 3.48644 9.00007 4.08511C9.00007 4.68409 8.5145 5.16965 7.91566 5.16965ZM5.16787 4.085C5.16787 4.68358 4.68253 5.16893 4.08382 5.16893C3.48541 5.16893 3.00007 4.68358 3.00007 4.085C3.00007 3.48643 3.48541 3.00107 4.08382 3.00107C4.68253 3.00107 5.16787 3.48643 5.16787 4.085ZM7.91576 6.83459C7.31679 6.83459 6.83123 7.32016 6.83123 7.919C6.83123 8.51785 7.31679 9.00342 7.91576 9.00342C8.51444 9.00342 9 8.51785 9 7.919C9 7.32016 8.51444 6.83459 7.91576 6.83459ZM4.08392 6.83565C4.68248 6.83565 5.16783 7.32098 5.16783 7.91969C5.16783 8.51809 4.68248 9.00342 4.08392 9.00342C3.48535 9.00342 3 8.51809 3 7.91969C3 7.32098 3.48535 6.83565 4.08392 6.83565Z",
2214 fill: props.color || 'currentColor'
2215 }));
2216};
2217
2218var CheckmarkIcon = function CheckmarkIcon(_ref) {
2219 var _ref$size = _ref.size,
2220 size = _ref$size === void 0 ? 72 : _ref$size,
2221 _ref$color = _ref.color,
2222 color = _ref$color === void 0 ? 'currentColor' : _ref$color,
2223 props = _objectWithoutPropertiesLoose(_ref, ["size", "color"]);
2224
2225 return React.createElement(Svg, Object.assign({
2226 width: size,
2227 height: size,
2228 fill: "none",
2229 viewBox: "0 0 72 72"
2230 }, props), React.createElement("circle", {
2231 cx: "36",
2232 cy: "36",
2233 r: "34.5",
2234 fill: "#fff",
2235 stroke: color,
2236 strokeWidth: "3"
2237 }), React.createElement("path", {
2238 stroke: color,
2239 strokeLinecap: "round",
2240 strokeLinejoin: "round",
2241 strokeWidth: "3",
2242 d: "M21 37l10 10 20-22"
2243 }));
2244};
2245
2246var CheckmarkCircleIcon = function CheckmarkCircleIcon(props) {
2247 return React__default.createElement(Box, Object.assign({}, props), React__default.createElement("svg", {
2248 width: "100%",
2249 viewBox: "0 0 16 17",
2250 fill: "none"
2251 }, React__default.createElement("path", {
2252 d: "M7.99613 16.9961C12.3809 16.9961 16 13.377 16 8.99996C16 4.61523 12.3731 0.996094 7.9884 0.996094C3.61141 0.996094 0 4.61523 0 8.99996C0 13.377 3.61914 16.9961 7.99613 16.9961ZM6.94442 13.0367C6.65056 13.0367 6.41856 12.9052 6.1943 12.6423L3.96713 9.92794C3.82794 9.75781 3.75834 9.56448 3.75834 9.37889C3.75834 8.96129 4.08313 8.64423 4.47753 8.64423C4.71725 8.64423 4.91832 8.74476 5.11165 8.97676L6.92122 11.2581L10.4089 5.69015C10.579 5.41175 10.8033 5.28029 11.043 5.28029C11.4297 5.28029 11.8009 5.55095 11.8009 5.96081C11.8009 6.14641 11.7081 6.33974 11.5998 6.50987L7.67134 12.6191C7.48574 12.8975 7.23828 13.0367 6.94442 13.0367Z",
2253 fill: "currentColor"
2254 })));
2255};
2256
2257var rotate$1 = function rotate(direction) {
2258 if (direction === void 0) {
2259 direction = 'right';
2260 }
2261
2262 switch (direction) {
2263 case 'left':
2264 return '90';
2265
2266 case 'up':
2267 return '180';
2268
2269 case 'right':
2270 return '270';
2271
2272 case 'down':
2273 return 0;
2274
2275 default:
2276 throw new Error('`rotate` must receive direction parameter');
2277 }
2278};
2279
2280var ChevronIcon = function ChevronIcon(_ref) {
2281 var direction = _ref.direction,
2282 _ref$size = _ref.size,
2283 size = _ref$size === void 0 ? '16px' : _ref$size,
2284 _ref$style = _ref.style,
2285 style = _ref$style === void 0 ? {} : _ref$style,
2286 props = _objectWithoutPropertiesLoose(_ref, ["direction", "size", "style"]);
2287
2288 return React.createElement(Svg, Object.assign({
2289 width: size,
2290 height: size,
2291 viewBox: "0 0 16 16",
2292 style: _objectSpread2({}, style, {
2293 transform: "rotate(" + rotate$1(direction) + "deg)"
2294 })
2295 }, props), React.createElement("path", {
2296 fill: props.color || 'currentColor',
2297 d: "M4.7 7.367l3.3 3.3 3.3-3.3-.943-.943L8 8.78 5.643 6.424l-.943.943z"
2298 }));
2299};
2300
2301var ConnectLogoIcon = function ConnectLogoIcon(_ref) {
2302 var _ref$color = _ref.color,
2303 color = _ref$color === void 0 ? 'currentColor' : _ref$color,
2304 props = _objectWithoutPropertiesLoose(_ref, ["color"]);
2305
2306 return React.createElement(Svg, Object.assign({
2307 color: color
2308 }, props), React.createElement("rect", {
2309 width: "24",
2310 height: "24",
2311 rx: "12",
2312 fill: "currentColor",
2313 opacity: "0.15"
2314 }), React.createElement("path", {
2315 d: "M15.2727 10.0179H14.8636V8.8125C14.8636 8.06658 14.5619 7.35121 14.0249 6.82376C13.4879 6.29632 12.7595 6 12 6C11.2405 6 10.5121 6.29632 9.9751 6.82376C9.43807 7.35121 9.13636 8.06658 9.13636 8.8125V10.0179H8.72727C8.40189 10.0182 8.08994 10.1453 7.85985 10.3713C7.62977 10.5973 7.50036 10.9036 7.5 11.2232V16.0446C7.50036 16.3642 7.62977 16.6706 7.85985 16.8966C8.08994 17.1225 8.40189 17.2497 8.72727 17.25H15.2727C15.5981 17.2497 15.9101 17.1225 16.1401 16.8966C16.3702 16.6706 16.4996 16.3642 16.5 16.0446V11.2232C16.4996 10.9036 16.3702 10.5973 16.1401 10.3713C15.9101 10.1453 15.5981 10.0182 15.2727 10.0179ZM9.95455 8.8125C9.95455 8.2797 10.17 7.76872 10.5536 7.39197C10.9372 7.01523 11.4575 6.80357 12 6.80357C12.5425 6.80357 13.0628 7.01523 13.4464 7.39197C13.83 7.76872 14.0455 8.2797 14.0455 8.8125V10.0179H9.95455V8.8125ZM12.4091 13.7231V14.6384C12.4091 14.745 12.366 14.8471 12.2893 14.9225C12.2126 14.9978 12.1085 15.0402 12 15.0402C11.8915 15.0402 11.7874 14.9978 11.7107 14.9225C11.634 14.8471 11.5909 14.745 11.5909 14.6384V13.7231C11.4349 13.6346 11.313 13.4981 11.2441 13.3347C11.1752 13.1712 11.1631 12.99 11.2097 12.8192C11.2563 12.6483 11.359 12.4973 11.5019 12.3896C11.6448 12.282 11.8199 12.2236 12 12.2236C12.1801 12.2236 12.3552 12.282 12.4981 12.3896C12.641 12.4973 12.7437 12.6483 12.7903 12.8192C12.8369 12.99 12.8248 13.1712 12.7559 13.3347C12.687 13.4981 12.5651 13.6346 12.4091 13.7231Z",
2316 fill: "currentColor"
2317 }), React.createElement("rect", {
2318 x: "10.5",
2319 y: "11.25",
2320 width: "3",
2321 height: "5.25",
2322 fill: "currentColor"
2323 }));
2324};
2325
2326var EncryptionIcon = function EncryptionIcon(props) {
2327 return React.createElement(Svg, Object.assign({}, props), React.createElement("path", {
2328 d: "M18.5818 8.57143H17.7091V6C17.7091 4.4087 17.0655 2.88258 15.9198 1.75736C14.7741 0.632141 13.2202 0 11.6 0C9.97977 0 8.4259 0.632141 7.28022 1.75736C6.13454 2.88258 5.49091 4.4087 5.49091 6V8.57143H4.61818C3.92403 8.57218 3.25853 8.84334 2.76769 9.32541C2.27685 9.80748 2.00076 10.4611 2 11.1429V21.4286C2.00076 22.1103 2.27685 22.7639 2.76769 23.246C3.25853 23.7281 3.92403 23.9993 4.61818 24H18.5818C19.276 23.9993 19.9415 23.7281 20.4323 23.246C20.9231 22.7639 21.1992 22.1103 21.2 21.4286V11.1429C21.1992 10.4611 20.9231 9.80748 20.4323 9.32541C19.9415 8.84334 19.276 8.57218 18.5818 8.57143ZM7.23636 6C7.23636 4.86336 7.6961 3.77327 8.51444 2.96954C9.33278 2.16582 10.4427 1.71429 11.6 1.71429C12.7573 1.71429 13.8672 2.16582 14.6856 2.96954C15.5039 3.77327 15.9636 4.86336 15.9636 6V8.57143H7.23636V6Z",
2329 fill: "currentColor"
2330 }));
2331};
2332
2333var ExclamationMarkIcon = function ExclamationMarkIcon(props) {
2334 return React.createElement(Svg, Object.assign({
2335 width: "12",
2336 height: "12",
2337 fill: "none",
2338 viewBox: "0 0 12 12"
2339 }, props), React.createElement("circle", {
2340 cx: "6",
2341 cy: "6",
2342 r: "6",
2343 fill: props.color || 'currentColor'
2344 }), React.createElement("path", {
2345 fill: "#fff",
2346 d: "M6.62 3.64a.622.622 0 10-1.244 0l.083 2.983a.54.54 0 001.081 0l.08-2.984zM6 9c.368 0 .687-.31.69-.694A.7.7 0 006 7.617.69.69 0 006 9z"
2347 }));
2348};
2349
2350var ExclamationMarkCircleIcon = function ExclamationMarkCircleIcon(props) {
2351 return React__default.createElement(Box, Object.assign({}, props), React__default.createElement("svg", {
2352 width: "100%",
2353 viewBox: "0 0 16 16",
2354 fill: "none"
2355 }, React__default.createElement("path", {
2356 fillRule: "evenodd",
2357 clipRule: "evenodd",
2358 d: "M8 16C12.4183 16 16 12.4183 16 8C16 3.58172 12.4183 0 8 0C3.58172 0 0 3.58172 0 8C0 12.4183 3.58172 16 8 16ZM7.9983 4C8.46541 4 8.84049 4.38536 8.82787 4.8523L8.72037 8.82986C8.70981 9.22031 8.39026 9.53134 7.99967 9.53134C7.60928 9.53134 7.28981 9.2206 7.279 8.83036L7.16874 4.85287C7.15579 4.38572 7.53096 4 7.9983 4ZM8.9199 11.0743C8.91607 11.5873 8.49058 12 7.99992 12C7.49392 12 7.0761 11.5873 7.07993 11.0743C7.0761 10.569 7.49392 10.1562 7.99992 10.1562C8.49058 10.1562 8.91607 10.569 8.9199 11.0743Z",
2359 fill: "currentColor"
2360 })));
2361};
2362
2363var EyeIcon = function EyeIcon(props) {
2364 return React.createElement(Svg, Object.assign({
2365 width: "24",
2366 height: "20",
2367 viewBox: "0 0 24 20"
2368 }, props), React.createElement("path", {
2369 fillRule: "evenodd",
2370 clipRule: "evenodd",
2371 d: "M19.695 0.351482C19.9032 0.135371 20.1868 0.00948757 20.4855 0.000511017C20.7171 -0.00642408 20.9454 0.057366 21.1405 0.183512C21.3356 0.309658 21.4883 0.492283 21.5786 0.707441C21.669 0.922599 21.6927 1.16026 21.6468 1.38926C21.6008 1.61827 21.4873 1.82793 21.3212 1.99078L4.3048 19.1469C4.19867 19.2575 4.07178 19.3456 3.93152 19.4062C3.79125 19.4668 3.64043 19.4987 3.48783 19.5C3.33523 19.5012 3.1839 19.4718 3.04268 19.4135C2.90146 19.3552 2.77316 19.2691 2.66526 19.1603C2.55735 19.0515 2.47201 18.9222 2.4142 18.7798C2.35639 18.6374 2.32727 18.4849 2.32854 18.331C2.3298 18.1771 2.36143 18.0251 2.42157 17.8837C2.48171 17.7423 2.56917 17.6143 2.67885 17.5074L19.695 0.351482ZM0.193655 8.95376C2.47935 4.5123 7.03523 1.71636 11.9982 1.71636C13.5143 1.71601 14.9919 1.97725 16.3789 2.46512L14.7583 4.09901C13.9263 3.68538 12.9904 3.45188 12 3.45188C8.55044 3.45188 5.754 6.27118 5.75403 9.74917C5.75404 10.7476 5.98562 11.6913 6.39588 12.5301L3.92169 15.0246C2.39514 13.8491 1.11258 12.3359 0.194802 10.5571C-0.0645738 10.0547 -0.0649106 9.45653 0.193655 8.95376ZM17.6041 6.96802L20.0781 4.47375C21.6047 5.64932 22.8874 7.16248 23.8052 8.94153C24.0646 9.44387 24.0649 10.042 23.8064 10.5448C21.5205 14.9863 16.9647 17.7818 12.0018 17.7818C10.4857 17.7821 9.00815 17.5209 7.62116 17.033L9.2415 15.3994C10.0735 15.813 11.0096 16.0465 12 16.0465C15.4496 16.0465 18.246 13.227 18.246 9.74917C18.246 8.75058 18.0145 7.80688 17.6041 6.96802ZM9.24284 6.96914C10.0042 6.20163 11.0022 5.81824 12 5.81824C12.3155 5.81824 12.6308 5.85684 12.9387 5.93349L8.2154 10.6956C7.89855 9.40286 8.24082 7.97945 9.24284 6.96914ZM11.0613 13.5647L15.7846 8.80249C16.1013 10.0952 15.7589 11.5184 14.7569 12.5285C13.755 13.5388 12.3434 13.8839 11.0613 13.5647Z",
2372 fill: props.color || 'currentColor'
2373 }), React.createElement("path", {
2374 d: "M19.6951 0.351482C19.9034 0.135371 20.1869 0.00948757 20.4856 0.000511017C20.7173 -0.00642408 20.9456 0.057366 21.1406 0.183512C21.3357 0.309658 21.4884 0.492283 21.5787 0.707441C21.6691 0.922599 21.6928 1.16026 21.6469 1.38926C21.6009 1.61827 21.4874 1.82793 21.3213 1.99078L4.30491 19.1469C4.19879 19.2575 4.07189 19.3456 3.93163 19.4062C3.79137 19.4668 3.64054 19.4987 3.48794 19.5C3.33534 19.5012 3.18402 19.4718 3.0428 19.4135C2.90157 19.3552 2.77327 19.2691 2.66537 19.1603C2.55747 19.0515 2.47213 18.9222 2.41432 18.7798C2.35651 18.6374 2.32739 18.4849 2.32865 18.331C2.32992 18.1771 2.36154 18.0251 2.42169 17.8837C2.48183 17.7423 2.56929 17.6143 2.67896 17.5074L19.6951 0.351482Z",
2375 fill: props.color || 'currentColor'
2376 }));
2377};
2378
2379var PadlockIcon = function PadlockIcon(props) {
2380 return React.createElement(Svg, Object.assign({
2381 width: "64",
2382 height: "64",
2383 fill: "none",
2384 viewBox: "0 0 64 64"
2385 }, props), React.createElement("path", {
2386 d: "M0 25.6C0 16.6392 0 12.1587 1.7439 8.73615C3.27787 5.72556 5.72556 3.27787 8.73615 1.7439C12.1587 0 16.6392 0 25.6 0L38.4 0C47.3608 0 51.8413 0 55.2638 1.7439C58.2744 3.27787 60.7221 5.72556 62.2561 8.73615C64 12.1587 64 16.6392 64 25.6V38.4C64 47.3608 64 51.8413 62.2561 55.2638C60.7221 58.2744 58.2744 60.7221 55.2638 62.2561C51.8413 64 47.3608 64 38.4 64H25.6C16.6392 64 12.1587 64 8.73615 62.2561C5.72556 60.7221 3.27787 58.2744 1.7439 55.2638C0 51.8413 0 47.3608 0 38.4L0 25.6Z",
2387 fill: "currentColor",
2388 opacity: "0.15"
2389 }), React.createElement("path", {
2390 d: "M40.7273 26.7143H39.6364V23.5C39.6364 21.5109 38.8318 19.6032 37.3997 18.1967C35.9676 16.7902 34.0253 16 32 16C29.9747 16 28.0324 16.7902 26.6003 18.1967C25.1682 19.6032 24.3636 21.5109 24.3636 23.5V26.7143H23.2727C22.405 26.7152 21.5732 27.0542 20.9596 27.6568C20.3461 28.2594 20.001 29.0764 20 29.9286V42.7857C20.001 43.6379 20.3461 44.4549 20.9596 45.0575C21.5732 45.6601 22.405 45.9991 23.2727 46H40.7273C41.595 45.9991 42.4268 45.6601 43.0404 45.0575C43.6539 44.4549 43.999 43.6379 44 42.7857V29.9286C43.999 29.0764 43.6539 28.2594 43.0404 27.6568C42.4268 27.0542 41.595 26.7152 40.7273 26.7143ZM26.5455 23.5C26.5455 22.0792 27.1201 20.7166 28.1431 19.7119C29.166 18.7073 30.5534 18.1429 32 18.1429C33.4466 18.1429 34.834 18.7073 35.8569 19.7119C36.8799 20.7166 37.4545 22.0792 37.4545 23.5V26.7143H26.5455V23.5Z",
2391 fill: "currentColor"
2392 }));
2393};
2394
2395var PlusCircleIcon = function PlusCircleIcon(props) {
2396 return React.createElement(Svg, Object.assign({}, props), React.createElement("circle", {
2397 cx: "12",
2398 cy: "12",
2399 r: "12",
2400 fill: "currentColor"
2401 }), React.createElement("g", {
2402 clipPath: "url(#clip0)"
2403 }, React.createElement("path", {
2404 fill: "#fff",
2405 fillRule: "evenodd",
2406 d: "M8.36 11.25a.75.75 0 000 1.5h3.375v3.376a.75.75 0 001.5 0V12.75h3.377a.75.75 0 000-1.5h-3.376V7.874a.75.75 0 10-1.5 0v3.376H8.358z",
2407 clipRule: "evenodd"
2408 })), React.createElement("defs", null, React.createElement("clipPath", {
2409 id: "clip0"
2410 }, React.createElement("path", {
2411 fill: "#fff",
2412 d: "M4 12H16V24H4z",
2413 transform: "rotate(-45 4 12)"
2414 }))));
2415};
2416
2417var PrivateIcon = function PrivateIcon(props) {
2418 return React.createElement(Svg, Object.assign({
2419 width: "18",
2420 height: "24",
2421 viewBox: "0 0 18 24",
2422 fill: "none"
2423 }, props), React.createElement("path", {
2424 d: "M15.5455 8.57143H14.7273V6C14.7273 4.4087 14.1239 2.88258 13.0498 1.75736C11.9757 0.632141 10.519 0 9 0C7.48103 0 6.02428 0.632141 4.95021 1.75736C3.87614 2.88258 3.27273 4.4087 3.27273 6V8.57143H2.45455C1.80378 8.57218 1.17987 8.84334 0.719709 9.32541C0.259547 9.80748 0.000714665 10.4611 0 11.1429V21.4286C0.000714665 22.1103 0.259547 22.7639 0.719709 23.246C1.17987 23.7281 1.80378 23.9993 2.45455 24H15.5455C16.1962 23.9993 16.8201 23.7281 17.2803 23.246C17.7405 22.7639 17.9993 22.1103 18 21.4286V11.1429C17.9993 10.4611 17.7405 9.80748 17.2803 9.32541C16.8201 8.84334 16.1962 8.57218 15.5455 8.57143ZM4.90909 6C4.90909 4.86336 5.3401 3.77327 6.10729 2.96954C6.87449 2.16582 7.91502 1.71429 9 1.71429C10.085 1.71429 11.1255 2.16582 11.8927 2.96954C12.6599 3.77327 13.0909 4.86336 13.0909 6V8.57143H4.90909V6Z",
2425 fill: "currentColor"
2426 }));
2427};
2428
2429var UnionLineIcon = function UnionLineIcon(props) {
2430 return React.createElement(Svg, Object.assign({
2431 width: "32",
2432 height: "7",
2433 fill: "none",
2434 viewBox: "0 0 32 7"
2435 }, props), React.createElement("mask", {
2436 id: "a",
2437 width: "32",
2438 height: "7",
2439 x: "0",
2440 y: "0",
2441 fill: "#000",
2442 maskUnits: "userSpaceOnUse"
2443 }, React.createElement("path", {
2444 fill: "#fff",
2445 d: "M0 0H32V7H0z"
2446 }), React.createElement("path", {
2447 fillRule: "evenodd",
2448 d: "M3.5 5a1.5 1.5 0 001.415-1h22.17a1.5 1.5 0 100-1H4.915A1.5 1.5 0 103.5 5z",
2449 clipRule: "evenodd"
2450 })), React.createElement("path", {
2451 fill: "#677282",
2452 fillRule: "evenodd",
2453 d: "M3.5 5a1.5 1.5 0 001.415-1h22.17a1.5 1.5 0 100-1H4.915A1.5 1.5 0 103.5 5z",
2454 clipRule: "evenodd"
2455 }), React.createElement("path", {
2456 fill: "#fff",
2457 d: "M4.915 4V2H3.5L3.03 3.334 4.915 4zm22.17 0l1.886-.667L28.5 2h-1.415v2zm0-1v2H28.5l.471-1.333L27.085 3zM4.915 3l-1.886.666L3.5 5h1.415V3zm-1.886.334A.5.5 0 013.5 3v4a3.5 3.5 0 003.3-2.334L3.03 3.334zM27.085 2H4.915v4h22.17V2zM28.5 3a.5.5 0 01.471.333L25.2 4.667A3.5 3.5 0 0028.5 7V3zm-.5.5a.5.5 0 01.5-.5v4A3.5 3.5 0 0032 3.5h-4zm.5.5a.5.5 0 01-.5-.5h4A3.5 3.5 0 0028.5 0v4zm.471-.333A.5.5 0 0128.5 4V0a3.5 3.5 0 00-3.3 2.333l3.771 1.333zM4.915 5h22.17V1H4.915v4zM3.5 4a.5.5 0 01-.471-.334L6.8 2.334A3.5 3.5 0 003.5 0v4zm.5-.5a.5.5 0 01-.5.5V0A3.5 3.5 0 000 3.5h4zM3.5 3a.5.5 0 01.5.5H0A3.5 3.5 0 003.5 7V3z",
2458 mask: "url(#a)"
2459 }));
2460};
2461
2462var CloseIcon = function CloseIcon(props) {
2463 return React__default.createElement(Box, Object.assign({}, props), React__default.createElement(Svg, {
2464 width: "100%",
2465 viewBox: "0 0 10 10"
2466 }, React__default.createElement("path", {
2467 fillRule: "evenodd",
2468 clipRule: "evenodd",
2469 d: "M1.81707 0.403005C1.62846 0.220847 1.37586 0.120052 1.11366 0.122331C0.851468 0.124609 0.600656 0.229778 0.415247 0.415186C0.229839 0.600595 0.12467 0.851407 0.122392 1.1136C0.120113 1.3758 0.220908 1.6284 0.403066 1.81701L3.58607 5L0.403066 8.183C0.215425 8.37051 0.109957 8.62488 0.109863 8.89015C0.109817 9.0215 0.135642 9.15157 0.185864 9.27294C0.236086 9.39431 0.309721 9.50459 0.402566 9.5975C0.495411 9.69041 0.605646 9.76413 0.726978 9.81444C0.848311 9.86475 0.978364 9.89066 1.10971 9.89071C1.37498 9.8908 1.62943 9.78551 1.81707 9.598L5.00007 6.415L8.18307 9.598C8.37071 9.78564 8.6252 9.89106 8.89057 9.89106C9.15593 9.89106 9.41043 9.78564 9.59807 9.598C9.78571 9.41036 9.89112 9.15587 9.89112 8.8905C9.89112 8.62514 9.78571 8.37065 9.59807 8.183L6.41507 5L9.59807 1.81701C9.69091 1.7241 9.76454 1.61381 9.81477 1.49244C9.86499 1.37107 9.89082 1.241 9.89077 1.10965C9.89072 0.978303 9.86481 0.84825 9.8145 0.726917C9.76419 0.605585 9.69048 0.49535 9.59757 0.402505C9.50466 0.30966 9.39437 0.236025 9.273 0.185803C9.15163 0.135581 9.02156 0.109756 8.89021 0.109802C8.75886 0.109849 8.62881 0.135766 8.50748 0.186073C8.38615 0.236381 8.27591 0.310094 8.18307 0.403005L5.00007 3.58601L1.81707 0.403005Z",
2470 fill: "currentColor"
2471 })));
2472};
2473
2474var ExternalIcon = function ExternalIcon(props) {
2475 return React.createElement(Svg, Object.assign({
2476 width: "8",
2477 height: "9",
2478 viewBox: "0 0 8 9",
2479 fill: "none"
2480 }, props), React.createElement("path", {
2481 fillRule: "evenodd",
2482 clipRule: "evenodd",
2483 d: "M1.30849 0H7.04391H7.99975H7.99981V6.6919H7.04391V1.66447L0.707141 8.00185L0 7.29477L6.33818 0.955986H1.30849V0Z",
2484 fill: "#677282"
2485 }));
2486};
2487
2488var FailedIcon = function FailedIcon(_ref) {
2489 var _ref$size = _ref.size,
2490 size = _ref$size === void 0 ? 64 : _ref$size,
2491 props = _objectWithoutPropertiesLoose(_ref, ["size"]);
2492
2493 return React.createElement(Svg, Object.assign({
2494 width: size,
2495 height: size,
2496 viewBox: "0 0 64 64",
2497 fill: "none"
2498 }, props), React.createElement("circle", {
2499 cx: "32",
2500 cy: "32",
2501 r: "30",
2502 stroke: "#D4001A",
2503 strokeWidth: "4",
2504 strokeLinecap: "round"
2505 }), React.createElement("path", {
2506 d: "M23 41L40.9995 23",
2507 stroke: "#D4001A",
2508 strokeWidth: "4",
2509 strokeLinecap: "round",
2510 strokeLinejoin: "round"
2511 }), React.createElement("path", {
2512 d: "M41 41L23.0005 23",
2513 stroke: "#D4001A",
2514 strokeWidth: "4",
2515 strokeLinecap: "round",
2516 strokeLinejoin: "round"
2517 }));
2518};
2519
2520var defaultStyle = {
2521 height: 12,
2522 border: '1px solid',
2523 borderBottomColor: 'inherit',
2524 borderLeftColor: 'inherit',
2525 borderRightColor: 'inherit',
2526 borderTopColor: 'inherit',
2527 borderColor: 'inherit',
2528 bg: 'white',
2529 _hover: {
2530 borderBottomColor: 'ink.300',
2531 borderLeftColor: 'ink.300',
2532 borderRightColor: 'ink.300',
2533 borderTopColor: 'ink.300',
2534 borderColor: 'ink.300'
2535 },
2536 _disabled: {
2537 bg: '#f9f9fc',
2538 cursor: 'not-allowed',
2539 pointerEvents: 'none'
2540 },
2541 _focus: {
2542 borderBottomColor: 'blue.300',
2543 borderLeftColor: 'blue.300',
2544 borderRightColor: 'blue.300',
2545 borderTopColor: 'blue.300',
2546 borderColor: 'blue.300',
2547 boxShadow: '0 0 0 1px rgba(170, 179, 255, 0.75)'
2548 },
2549 _invalid: {
2550 borderBottomColor: 'red',
2551 borderLeftColor: 'red',
2552 borderRightColor: 'red',
2553 borderTopColor: 'red',
2554 borderColor: 'red'
2555 }
2556};
2557var baseProps$1 = {
2558 display: 'flex',
2559 alignItems: 'center',
2560 position: 'relative',
2561 transition: 'all 0.2s',
2562 outline: 'none',
2563 borderRadius: '6px',
2564 p: '14px 16px'
2565};
2566var inputSizes = {
2567 "default": {
2568 fontSize: 'body.small',
2569 height: '12',
2570 lineHeight: 'base'
2571 }
2572};
2573
2574var useInputStyle = function useInputStyle(props) {
2575 return _objectSpread2({
2576 width: props.isFullWidth ? '100%' : undefined
2577 }, baseProps$1, {}, defaultStyle);
2578};
2579
2580var InputAddon = function InputAddon(_ref) {
2581 var _ref$placement = _ref.placement,
2582 placement = _ref$placement === void 0 ? 'left' : _ref$placement,
2583 props = _objectWithoutPropertiesLoose(_ref, ["placement"]);
2584
2585 var _placement = {
2586 left: {
2587 mr: '-1px',
2588 roundedRight: 0,
2589 borderRightColor: 'transparent',
2590 borderLeftWidth: 0
2591 },
2592 right: {
2593 order: 1,
2594 roundedLeft: 0,
2595 borderLeftColor: 'transparent',
2596 borderLeftWidth: 0
2597 }
2598 };
2599
2600 var styleProps = _objectSpread2({}, useInputStyle({
2601 variant: 'outline'
2602 }), {
2603 flex: '0 0 auto',
2604 whiteSpace: 'nowrap',
2605 bg: 'white',
2606 fontSize: 'body.small'
2607 }, _placement[placement]);
2608
2609 return React__default.createElement(Box, Object.assign({}, styleProps, props, {
2610 css: {
2611 'input:focus + &': {
2612 zIndex: -1
2613 }
2614 }
2615 }));
2616};
2617
2618 InputAddon.propTypes = {
2619 placement: /*#__PURE__*/propTypes.oneOf(['left', 'right'])
2620} ;
2621InputAddon.displayName = 'InputAddon';
2622
2623var InputLeftAddon = function InputLeftAddon(props) {
2624 return React__default.createElement(InputAddon, Object.assign({
2625 placement: "left"
2626 }, props));
2627};
2628
2629var InputRightAddon = function InputRightAddon(props) {
2630 return React__default.createElement(InputAddon, Object.assign({
2631 placement: "right"
2632 }, props));
2633};
2634
2635var InputElement = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2636 var _placementProp;
2637
2638 var _ref$size = _ref.size,
2639 size = _ref$size === void 0 ? 'default' : _ref$size,
2640 children = _ref.children,
2641 _ref$placement = _ref.placement,
2642 placement = _ref$placement === void 0 ? 'left' : _ref$placement,
2643 _ref$disablePointerEv = _ref.disablePointerEvents,
2644 disablePointerEvents = _ref$disablePointerEv === void 0 ? false : _ref$disablePointerEv,
2645 props = _objectWithoutPropertiesLoose(_ref, ["size", "children", "placement", "disablePointerEvents"]);
2646
2647 var height = inputSizes[size] && inputSizes[size].height;
2648 var fontSize = inputSizes[size] && inputSizes[size].fontSize;
2649 var placementProp = (_placementProp = {}, _placementProp[placement] = '0', _placementProp);
2650 return React__default.createElement(Box, Object.assign({
2651 display: "flex",
2652 alignItems: "center",
2653 justifyContent: "center",
2654 position: "absolute",
2655 height: height,
2656 width: height,
2657 fontSize: fontSize,
2658 top: "0",
2659 zIndex: 1,
2660 ref: ref
2661 }, disablePointerEvents && {
2662 pointerEvents: 'none'
2663 }, placementProp, props), children);
2664});
2665var InputLeftElement = /*#__PURE__*/React.forwardRef(function (props, ref) {
2666 return React__default.createElement(InputElement, Object.assign({
2667 ref: ref,
2668 placement: "left"
2669 }, props));
2670});
2671var InputRightElement = /*#__PURE__*/React.forwardRef(function (props, ref) {
2672 return React__default.createElement(InputElement, Object.assign({
2673 ref: ref,
2674 placement: "right"
2675 }, props));
2676});
2677InputElement.displayName = 'InputElement';
2678InputLeftElement.displayName = 'InputLeftElement';
2679InputRightElement.displayName = 'InputRightElement';
2680
2681var Input = /*#__PURE__*/React.forwardRef(function (props, ref) {
2682 var as = props.as,
2683 ariaLabel = props['aria-label'],
2684 ariaDescribedby = props['aria-describedby'],
2685 isReadOnly = props.isReadOnly,
2686 _props$style = props.style,
2687 style = _props$style === void 0 ? {} : _props$style,
2688 rest = _objectWithoutPropertiesLoose(props, ["as", "aria-label", "aria-describedby", "isReadOnly", "style"]);
2689
2690 var inputStyleProps = useInputStyle(props);
2691 var formControl = useFormControl(props);
2692 return React__default.createElement(Box, Object.assign({
2693 ref: ref,
2694 as: as,
2695 _readOnly: formControl.isReadOnly,
2696 "aria-readonly": isReadOnly,
2697 isDisabled: formControl.isDisabled,
2698 "aria-label": ariaLabel,
2699 "aria-invalid": formControl.isInvalid,
2700 isRequired: formControl.isRequired,
2701 "aria-required": formControl.isRequired,
2702 "aria-disabled": formControl.isDisabled,
2703 "aria-describedby": ariaDescribedby,
2704 textStyle: "body.small",
2705 style: _objectSpread2({
2706 WebkitAppearance: 'none'
2707 }, style)
2708 }, inputStyleProps, rest));
2709});
2710Input.defaultProps = {
2711 as: 'input',
2712 isFullWidth: true,
2713 focusBorderColor: 'blue.300'
2714};
2715Input.displayName = 'Input';
2716
2717var InputGroup = function InputGroup(_ref) {
2718 var children = _ref.children,
2719 _ref$size = _ref.size,
2720 size = _ref$size === void 0 ? 'default' : _ref$size,
2721 props = _objectWithoutPropertiesLoose(_ref, ["children", "size"]);
2722
2723 var _useTheme = useTheme(),
2724 sizes = _useTheme.sizes;
2725
2726 var height = inputSizes[size] && inputSizes[size].height;
2727 var pl = null;
2728 var pr = null;
2729 return React__default.createElement(Box, Object.assign({
2730 display: "flex",
2731 position: "relative"
2732 }, props), React.Children.map(children, function (child) {
2733 if (!React__default.isValidElement(child)) {
2734 return null;
2735 }
2736
2737 if (child.type === InputLeftElement) {
2738 pl = sizes[height];
2739 }
2740
2741 if (child.type === InputRightElement) {
2742 pr = sizes[height];
2743 }
2744
2745 if (child.type === Input) {
2746 return React.cloneElement(child, {
2747 width: '100%',
2748 pl: child.props.pl || pl,
2749 pr: child.props.pr || pr
2750 });
2751 }
2752
2753 return React.cloneElement(child, {
2754 size: size
2755 });
2756 }));
2757};
2758
2759var ModalContext = /*#__PURE__*/React__default.createContext({
2760 isOpen: false
2761});
2762var useModalState = function useModalState() {
2763 return React__default.useContext(ModalContext);
2764};
2765var Header = /*#__PURE__*/React__default.memo(function (_ref) {
2766 var component = _ref.component;
2767 return component ? React__default.createElement(Box, {
2768 borderTopRightRadius: "6px",
2769 borderTopLeftRadius: "6px"
2770 }, component) : null;
2771});
2772var Footer = /*#__PURE__*/React__default.memo(function (_ref2) {
2773 var component = _ref2.component;
2774 return component ? React__default.createElement(Box, {
2775 borderBottomRightRadius: "6px",
2776 borderBottomLeftRadius: "6px"
2777 }, component) : null;
2778});
2779
2780var ModalUnderlay = function ModalUnderlay(_ref3) {
2781 var isOpen = _ref3.isOpen,
2782 noAnimation = _ref3.noAnimation;
2783 return React__default.createElement(Box, {
2784 position: "fixed",
2785 size: "100%",
2786 left: 0,
2787 right: 0,
2788 top: 0,
2789 bottom: 0,
2790 bg: "rgba(0,0,0," + (isOpen ? '0.48' : '0') + ")",
2791 transition: noAnimation ? 'unset' : 'all 0.15s',
2792 zIndex: 99999,
2793 style: {
2794 userSelect: isOpen ? 'unset' : 'none',
2795 pointerEvents: isOpen ? 'unset' : 'none',
2796 willChange: 'background'
2797 }
2798 });
2799};
2800
2801var ModalWrapper = function ModalWrapper(_ref4) {
2802 var isOpen = _ref4.isOpen,
2803 rest = _objectWithoutPropertiesLoose(_ref4, ["isOpen"]);
2804
2805 return React__default.createElement(Flex, Object.assign({
2806 zIndex: 999999,
2807 position: "fixed",
2808 bottom: [0, 'unset'],
2809 width: "100%",
2810 top: 0,
2811 left: 0,
2812 height: "100%",
2813 maxHeight: ['100vh', 'unset'],
2814 alignItems: "center",
2815 justifyContent: ['flex-end', 'center'],
2816 flexDirection: "column",
2817 opacity: isOpen ? 1 : 0,
2818 style: {
2819 userSelect: isOpen ? 'unset' : 'none',
2820 pointerEvents: isOpen ? 'unset' : 'none'
2821 }
2822 }, rest));
2823};
2824
2825var ModalCardContainer = /*#__PURE__*/React__default.forwardRef(function (_ref5, ref) {
2826 var noAnimation = _ref5.noAnimation,
2827 isOpen = _ref5.isOpen,
2828 rest = _objectWithoutPropertiesLoose(_ref5, ["noAnimation", "isOpen"]);
2829
2830 return React__default.createElement(Flex, Object.assign({
2831 flexDirection: "column",
2832 position: "relative",
2833 bg: "white",
2834 mx: "auto",
2835 minWidth: ['100%', '396px'],
2836 maxWidth: ['100%', '396px'],
2837 maxHeight: ['100%', 'calc(100% - 48px)'],
2838 borderRadius: ['unset', '6px'],
2839 boxShadow: "high",
2840 transform: noAnimation ? 'translateY(0px)' : isOpen ? 'translateY(0px)' : 'translateY(15px)',
2841 transition: noAnimation ? 'unset' : 'all 0.2s ease-in-out',
2842 style: {
2843 willChange: 'transform'
2844 },
2845 ref: ref
2846 }, rest));
2847});
2848var Modal = /*#__PURE__*/React__default.memo(function (_ref6) {
2849 var _ref6$footerComponent = _ref6.footerComponent,
2850 FooterComponent = _ref6$footerComponent === void 0 ? null : _ref6$footerComponent,
2851 _ref6$headerComponent = _ref6.headerComponent,
2852 HeaderComponent = _ref6$headerComponent === void 0 ? null : _ref6$headerComponent,
2853 _ref6$isOpen = _ref6.isOpen,
2854 isOpen = _ref6$isOpen === void 0 ? false : _ref6$isOpen,
2855 children = _ref6.children,
2856 _ref6$noAnimation = _ref6.noAnimation,
2857 noAnimation = _ref6$noAnimation === void 0 ? false : _ref6$noAnimation,
2858 close = _ref6.close,
2859 props = _objectWithoutPropertiesLoose(_ref6, ["footerComponent", "headerComponent", "isOpen", "children", "noAnimation", "close"]);
2860
2861 var _useModalState = useModalState(),
2862 doCloseModal = _useModalState.doCloseModal;
2863
2864 var ref = React__default.useRef(null);
2865 React__default.useEffect(function () {
2866 var func = function func(event) {
2867 if (event.key === 'Escape') {
2868 if (close) {
2869 close();
2870 } else if (doCloseModal) {
2871 doCloseModal();
2872 }
2873 }
2874 };
2875
2876 if (isOpen) {
2877 var _window, _window$document;
2878
2879 typeof window !== 'undefined' && ((_window = window) === null || _window === void 0 ? void 0 : (_window$document = _window.document) === null || _window$document === void 0 ? void 0 : _window$document.createElement) && document.addEventListener('keydown', func);
2880 }
2881
2882 return function () {
2883 var _window2, _window2$document;
2884
2885 typeof window !== 'undefined' && ((_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$document = _window2.document) === null || _window2$document === void 0 ? void 0 : _window2$document.createElement) && document.removeEventListener('keydown', func);
2886 };
2887 }, [isOpen, close]);
2888 var handler = isOpen ? close || doCloseModal || null : null;
2889 useOnClickOutside(ref, handler);
2890 return React__default.createElement(React__default.Fragment, null, React__default.createElement(ModalUnderlay, {
2891 isOpen: isOpen,
2892 noAnimation: noAnimation
2893 }), React__default.createElement(ModalWrapper, {
2894 isOpen: isOpen
2895 }, React__default.createElement(ModalCardContainer, Object.assign({
2896 ref: ref,
2897 isOpen: isOpen,
2898 noAnimation: noAnimation
2899 }, props), React__default.createElement(Header, {
2900 component: HeaderComponent
2901 }), React__default.createElement(Box, {
2902 overflowY: "auto"
2903 }, children), React__default.createElement(Footer, {
2904 component: FooterComponent
2905 }))));
2906});
2907var ModalProvider = function ModalProvider(props) {
2908 var _React$useState = React__default.useState(false),
2909 isOpen = _React$useState[0],
2910 setIsOpen = _React$useState[1];
2911
2912 var doOpenModal = function doOpenModal() {
2913 return !isOpen ? setIsOpen(true) : null;
2914 };
2915
2916 var doCloseModal = function doCloseModal() {
2917 return isOpen ? setIsOpen(false) : null;
2918 };
2919
2920 return React__default.createElement(ModalContext.Provider, {
2921 value: {
2922 isOpen: isOpen,
2923 doOpenModal: doOpenModal,
2924 doCloseModal: doCloseModal
2925 }
2926 }, props.children);
2927};
2928
2929var oppositeDirections = {
2930 top: 'bottom',
2931 bottom: 'top',
2932 right: 'left',
2933 left: 'right'
2934};
2935var getOppositePosition = function getOppositePosition(position) {
2936 return oppositeDirections[position];
2937};
2938
2939var splitPlacement = function splitPlacement(placement) {
2940 return placement.split('-');
2941};
2942
2943function getArrowStyles(placement, arrowSize) {
2944 var _ref;
2945
2946 var _splitPlacement = splitPlacement(placement),
2947 position = _splitPlacement[0];
2948
2949 var oppositePosition = getOppositePosition(position);
2950 if (!oppositePosition) return {};
2951 return _ref = {}, _ref[oppositePosition] = "-" + arrowSize / 2 + "px", _ref.width = arrowSize, _ref.height = arrowSize, _ref.position = 'absolute', _ref.transform = 'rotate(45deg)', _ref;
2952}
2953var isBrowser$2 = typeof window !== 'undefined';
2954var useSafeLayoutEffect$1 = isBrowser$2 ? React.useLayoutEffect : React.useEffect;
2955function usePopper(props) {
2956 var _props$placement = props.placement,
2957 initialPlacement = _props$placement === void 0 ? 'bottom' : _props$placement,
2958 offsetProp = props.offset,
2959 _props$preventOverflo = props.preventOverflow,
2960 preventOverflow = _props$preventOverflo === void 0 ? true : _props$preventOverflo,
2961 _props$fixed = props.fixed,
2962 fixed = _props$fixed === void 0 ? false : _props$fixed,
2963 _props$forceUpdate = props.forceUpdate,
2964 forceUpdate = _props$forceUpdate === void 0 ? true : _props$forceUpdate,
2965 _props$flip = props.flip,
2966 flip = _props$flip === void 0 ? true : _props$flip,
2967 _props$arrowSize = props.arrowSize,
2968 arrowSize = _props$arrowSize === void 0 ? 10 : _props$arrowSize,
2969 _props$gutter = props.gutter,
2970 gutter = _props$gutter === void 0 ? arrowSize : _props$gutter,
2971 _props$eventsEnabled = props.eventsEnabled,
2972 eventsEnabled = _props$eventsEnabled === void 0 ? true : _props$eventsEnabled;
2973 var popper = React.useRef(null);
2974 var referenceRef = React.useRef(null);
2975 var popoverRef = React.useRef(null);
2976 var arrowRef = React.useRef(null);
2977
2978 var _React$useState = React.useState(initialPlacement),
2979 originalPlacement = _React$useState[0],
2980 place = _React$useState[1];
2981
2982 var _React$useState2 = React.useState(initialPlacement),
2983 placement = _React$useState2[0],
2984 setPlacement = _React$useState2[1];
2985
2986 var _React$useState3 = React.useState(offsetProp || [0, gutter]),
2987 offset = _React$useState3[0];
2988
2989 var _React$useState4 = React.useState({}),
2990 popoverStyles = _React$useState4[0],
2991 setPopoverStyles = _React$useState4[1];
2992
2993 var _React$useState5 = React.useState({}),
2994 arrowStyles = _React$useState5[0],
2995 setArrowStyles = _React$useState5[1];
2996
2997 var update = React.useCallback(function () {
2998 if (popper.current) {
2999 popper.current.forceUpdate();
3000 return true;
3001 }
3002
3003 return false;
3004 }, []);
3005 useSafeLayoutEffect$1(function () {
3006 if (referenceRef.current && popoverRef.current) {
3007 popper.current = core.createPopper(referenceRef.current, popoverRef.current, {
3008 placement: originalPlacement,
3009 strategy: fixed ? 'fixed' : 'absolute',
3010 modifiers: [{
3011 name: 'eventListener',
3012 phase: 'write',
3013 enabled: eventsEnabled
3014 }, {
3015 name: 'applyStyles',
3016 enabled: false
3017 }, {
3018 name: 'flip',
3019 enabled: flip,
3020 options: {
3021 padding: 8
3022 }
3023 }, {
3024 name: 'computeStyles',
3025 options: {
3026 gpuAcceleration: false
3027 }
3028 }, {
3029 name: 'offset',
3030 options: {
3031 offset: offset
3032 }
3033 }, {
3034 name: 'preventOverflow',
3035 enabled: preventOverflow,
3036 options: {
3037 tetherOffset: function tetherOffset() {
3038 var _arrowRef$current;
3039
3040 return ((_arrowRef$current = arrowRef.current) === null || _arrowRef$current === void 0 ? void 0 : _arrowRef$current.clientWidth) || 0;
3041 }
3042 }
3043 }, {
3044 name: 'arrow',
3045 enabled: Boolean(arrowRef.current),
3046 options: {
3047 element: arrowRef.current
3048 }
3049 }, {
3050 name: 'updateState',
3051 phase: 'write',
3052 enabled: true,
3053 fn: function fn(_ref2) {
3054 var state = _ref2.state;
3055 setPlacement(state.placement);
3056 setPopoverStyles(state.styles.popper);
3057 setArrowStyles(state.styles.arrow);
3058 }
3059 }]
3060 });
3061 }
3062
3063 return function () {
3064 if (popper.current) {
3065 popper.current.destroy();
3066 popper.current = null;
3067 }
3068 };
3069 }, [originalPlacement, fixed, forceUpdate, flip, offset, preventOverflow]);
3070 useSafeLayoutEffect$1(function () {
3071 requestAnimationFrame(function () {
3072 if (forceUpdate) {
3073 var _popper$current;
3074
3075 (_popper$current = popper.current) === null || _popper$current === void 0 ? void 0 : _popper$current.forceUpdate();
3076 }
3077 });
3078 }, [forceUpdate]);
3079
3080 var computedArrowStyles = _objectSpread2({}, arrowStyles, {}, getArrowStyles(placement, arrowSize));
3081
3082 return {
3083 popperInstance: popper.current,
3084 reference: {
3085 ref: referenceRef
3086 },
3087 popper: {
3088 ref: popoverRef,
3089 style: popoverStyles
3090 },
3091 arrow: {
3092 ref: arrowRef,
3093 style: computedArrowStyles
3094 },
3095 update: update,
3096 placement: placement,
3097 place: place
3098 };
3099}
3100
3101var _createContext = /*#__PURE__*/createContext({
3102 strict: false
3103}),
3104 usePortalManager = _createContext[1];
3105
3106var _createContext$1 = /*#__PURE__*/createContext({
3107 strict: false
3108}),
3109 PortalCtxProvider = _createContext$1[0],
3110 usePortalContext = _createContext$1[1];
3111
3112function Portal(props) {
3113 var onMount = props.onMount,
3114 onUnmount = props.onUnmount,
3115 children = props.children,
3116 containerProp = props.container;
3117
3118 var _React$useState = React.useState(function () {
3119 if (isBrowser) {
3120 var div = document.createElement('div');
3121 div.className = 'portal';
3122 return div;
3123 }
3124
3125 return null;
3126 }),
3127 portal = _React$useState[0];
3128
3129 var parentPortal = usePortalContext();
3130 var manager = usePortalManager();
3131 var append = React.useCallback(function (container) {
3132 if (!portal || !container) return;
3133 container.appendChild(portal);
3134 }, [portal]);
3135 useSafeLayoutEffect(function () {
3136 var _ref, _ref2;
3137
3138 var mountNode = containerProp === null || containerProp === void 0 ? void 0 : containerProp();
3139 var container = (_ref = (_ref2 = mountNode !== null && mountNode !== void 0 ? mountNode : parentPortal) !== null && _ref2 !== void 0 ? _ref2 : manager === null || manager === void 0 ? void 0 : manager.node) !== null && _ref !== void 0 ? _ref : document.body;
3140 append(container);
3141 onMount === null || onMount === void 0 ? void 0 : onMount();
3142 return function () {
3143 onUnmount === null || onUnmount === void 0 ? void 0 : onUnmount();
3144 if (!portal) return;
3145
3146 if (container === null || container === void 0 ? void 0 : container.contains(portal)) {
3147 container === null || container === void 0 ? void 0 : container.removeChild(portal);
3148 }
3149 };
3150 }, [containerProp, portal, parentPortal, onMount, onUnmount, manager && manager.node, append]);
3151 var finalChildren = (manager === null || manager === void 0 ? void 0 : manager.zIndex) ? React.createElement("div", {
3152 className: "portal-zIndex",
3153 style: {
3154 zIndex: manager.zIndex
3155 }
3156 }, children) : children;
3157
3158 if (!portal) {
3159 return React.createElement(React.Fragment, null, finalChildren);
3160 }
3161
3162 return reactDom.createPortal(React.createElement(PortalCtxProvider, {
3163 value: portal
3164 }, finalChildren), portal);
3165}
3166
3167{
3168 Portal.displayName = 'Portal';
3169}
3170
3171var Stack = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3172 var isInline = _ref.isInline,
3173 children = _ref.children,
3174 align = _ref.align,
3175 justify = _ref.justify,
3176 _ref$spacing = _ref.spacing,
3177 spacing = _ref$spacing === void 0 ? 2 : _ref$spacing,
3178 shouldWrapChildren = _ref.shouldWrapChildren,
3179 rest = _objectWithoutPropertiesLoose(_ref, ["isInline", "children", "align", "justify", "spacing", "shouldWrapChildren"]);
3180
3181 var validChildren = Array.isArray(children) ? children.filter(React.isValidElement) : [];
3182 return React__default.createElement(Flex, Object.assign({
3183 align: align,
3184 justify: justify,
3185 flexDir: isInline ? 'row' : 'column',
3186 ref: ref
3187 }, rest), React.Children.map(validChildren, function (child, index) {
3188 if (!React.isValidElement(child)) {
3189 return null;
3190 }
3191
3192 if (!Array.isArray(children)) {
3193 return null;
3194 }
3195
3196 var isLastChild = validChildren.length === index + 1;
3197 var spacingProps = isInline ? {
3198 mr: isLastChild ? undefined : spacing
3199 } : {
3200 mb: isLastChild ? undefined : spacing
3201 };
3202
3203 if (shouldWrapChildren) {
3204 return React__default.createElement(Box, Object.assign({
3205 d: "inline-block"
3206 }, spacingProps), child);
3207 }
3208
3209 return React.cloneElement(child, spacingProps);
3210 }));
3211});
3212Stack.displayName = 'Stack';
3213
3214var Transition = function Transition(_ref) {
3215 var styles = _ref.styles,
3216 inProp = _ref["in"],
3217 _ref$timeout = _ref.timeout,
3218 timeout = _ref$timeout === void 0 ? 200 : _ref$timeout,
3219 _ref$transition = _ref.transition,
3220 transition = _ref$transition === void 0 ? "all " + timeout + "ms cubic-bezier(0.23, 1, 0.32, 1)" : _ref$transition,
3221 children = _ref.children,
3222 rest = _objectWithoutPropertiesLoose(_ref, ["styles", "in", "timeout", "transition", "children"]);
3223
3224 var computedStyle = function computedStyle(state) {
3225 return _objectSpread2({}, styles.init, {
3226 transition: transition
3227 }, styles[state]);
3228 };
3229
3230 return React.createElement(CSSTransition, Object.assign({
3231 appear: true,
3232 unmountOnExit: true,
3233 "in": inProp,
3234 timeout: timeout
3235 }, rest), function (state) {
3236 return children(computedStyle(state));
3237 });
3238};
3239
3240var styles = {
3241 init: {
3242 opacity: 0
3243 },
3244 entered: {
3245 opacity: 1
3246 },
3247 exiting: {
3248 opacity: 0
3249 }
3250};
3251var Fade = function Fade(_ref) {
3252 var _ref$timeout = _ref.timeout,
3253 timeout = _ref$timeout === void 0 ? 250 : _ref$timeout,
3254 rest = _objectWithoutPropertiesLoose(_ref, ["timeout"]);
3255
3256 return React.createElement(Transition, Object.assign({
3257 transition: "all " + timeout + "ms cubic-bezier(0.175, 0.885, 0.320, 1.175)",
3258 styles: styles,
3259 timeout: {
3260 enter: 50,
3261 exit: timeout
3262 }
3263 }, rest));
3264};
3265
3266var getTransitionStyles = function getTransitionStyles(initialScale) {
3267 return {
3268 init: {
3269 opacity: 0,
3270 transform: "scale(" + initialScale + ")"
3271 },
3272 entered: {
3273 opacity: 1,
3274 transform: 'scale(1)'
3275 },
3276 exiting: {
3277 opacity: 0,
3278 transform: "scale(" + initialScale + ")"
3279 }
3280 };
3281};
3282
3283var ScaleFade = function ScaleFade(_ref) {
3284 var _ref$initialScale = _ref.initialScale,
3285 initialScale = _ref$initialScale === void 0 ? 0.9 : _ref$initialScale,
3286 _ref$timeout = _ref.timeout,
3287 timeout = _ref$timeout === void 0 ? 300 : _ref$timeout,
3288 rest = _objectWithoutPropertiesLoose(_ref, ["initialScale", "timeout"]);
3289
3290 return React.createElement(Transition, Object.assign({
3291 styles: React.useMemo(function () {
3292 return getTransitionStyles(initialScale);
3293 }, [initialScale]),
3294 transition: "all " + timeout + "ms cubic-bezier(0.45, 0, 0.40, 1)",
3295 timeout: {
3296 enter: 50,
3297 exit: timeout
3298 },
3299 unmountOnExit: true
3300 }, rest));
3301};
3302
3303var createBaseStyle = function createBaseStyle(placement) {
3304 switch (placement) {
3305 case 'bottom':
3306 {
3307 return {
3308 maxWidth: '100vw',
3309 bottom: 0,
3310 left: 0,
3311 right: 0
3312 };
3313 }
3314
3315 case 'top':
3316 {
3317 return {
3318 maxWidth: '100vw',
3319 top: 0,
3320 left: 0,
3321 right: 0
3322 };
3323 }
3324
3325 case 'left':
3326 {
3327 return {
3328 width: '100%',
3329 height: '100vh',
3330 left: 0,
3331 top: 0
3332 };
3333 }
3334
3335 case 'right':
3336 {
3337 return {
3338 width: '100%',
3339 right: 0,
3340 top: 0,
3341 height: '100vh'
3342 };
3343 }
3344
3345 default:
3346 return undefined;
3347 }
3348};
3349
3350var getTransformStyle = function getTransformStyle(placement, value) {
3351 var axis = '';
3352 if (placement === 'left' || placement === 'right') axis = 'X';
3353 if (placement === 'top' || placement === 'bottom') axis = 'Y';
3354 return "translate" + axis + "(" + value + ")";
3355};
3356
3357var getTransitionStyles$1 = function getTransitionStyles(placement) {
3358 var offset = {
3359 bottom: '100%',
3360 top: '-100%',
3361 left: '-100%',
3362 right: '100%'
3363 };
3364 return {
3365 init: {
3366 transform: getTransformStyle(placement, offset[placement])
3367 },
3368 entered: {
3369 transform: getTransformStyle(placement, '0%')
3370 },
3371 exiting: {
3372 transform: getTransformStyle(placement, offset[placement])
3373 }
3374 };
3375};
3376
3377function Slide(props) {
3378 var _props$placement = props.placement,
3379 placement = _props$placement === void 0 ? 'left' : _props$placement,
3380 _props$timeout = props.timeout,
3381 timeout = _props$timeout === void 0 ? 250 : _props$timeout,
3382 children = props.children,
3383 rest = _objectWithoutPropertiesLoose(props, ["placement", "timeout", "children"]);
3384
3385 var styles = getTransitionStyles$1(placement);
3386
3387 var positionStyles = _objectSpread2({
3388 position: 'fixed',
3389 willChange: 'transform'
3390 }, createBaseStyle(placement));
3391
3392 return React.createElement(Transition, Object.assign({
3393 styles: styles,
3394 transition: "all " + timeout + "ms cubic-bezier(0, 0, 0.2, 1)",
3395 timeout: {
3396 enter: 50,
3397 exit: timeout
3398 }
3399 }, rest), function (styles) {
3400 return children(_objectSpread2({}, positionStyles, {}, styles));
3401 });
3402}
3403
3404function getTransitionStyles$2(initialOffset) {
3405 return {
3406 init: {
3407 opacity: 0,
3408 transform: "translateY(" + initialOffset + ")"
3409 },
3410 entered: {
3411 opacity: 1,
3412 transform: 'translateY(0px)'
3413 },
3414 exiting: {
3415 opacity: 0,
3416 transform: "translateY(" + initialOffset + ")"
3417 }
3418 };
3419}
3420
3421var SlideFade = function SlideFade(props) {
3422 var _props$initialOffset = props.initialOffset,
3423 initialOffset = _props$initialOffset === void 0 ? '20px' : _props$initialOffset,
3424 _props$timeout = props.timeout,
3425 timeout = _props$timeout === void 0 ? 150 : _props$timeout,
3426 rest = _objectWithoutPropertiesLoose(props, ["initialOffset", "timeout"]);
3427
3428 var styles = getTransitionStyles$2(initialOffset);
3429 return React.createElement(Transition, Object.assign({
3430 styles: styles,
3431 transition: "all " + timeout + "ms cubic-bezier(0.4, 0.14, 0.3, 1)",
3432 timeout: {
3433 enter: 50,
3434 exit: timeout
3435 }
3436 }, rest));
3437};
3438
3439var toneToIcon = {
3440 critical: ExclamationMarkCircleIcon,
3441 positive: CheckmarkCircleIcon,
3442 none: function none() {
3443 return null;
3444 }
3445};
3446
3447var Action = function Action(_ref) {
3448 var label = _ref.label,
3449 onClick = _ref.onClick,
3450 removeToast = _ref.removeToast,
3451 rest = _objectWithoutPropertiesLoose(_ref, ["label", "onClick", "removeToast"]);
3452
3453 var handleClick = React.useCallback(function () {
3454 removeToast();
3455 onClick();
3456 }, [removeToast, onClick]);
3457 return React__default.createElement(Box, Object.assign({
3458 _hover: {
3459 cursor: 'pointer',
3460 textDecoration: 'underline'
3461 },
3462 onClick: handleClick,
3463 "aria-hidden": true
3464 }, rest), React__default.createElement(Text, null, label));
3465};
3466
3467var getCustomProps = function getCustomProps(props) {
3468 var _props, _props2, _props3, _props4, _props5, _props5$icon, _props6, _props7;
3469
3470 if (props === void 0) {
3471 props = {};
3472 }
3473
3474 return {
3475 message: _objectSpread2({
3476 color: 'ink'
3477 }, (_props = props) === null || _props === void 0 ? void 0 : _props.message),
3478 description: _objectSpread2({
3479 color: 'ink.600'
3480 }, (_props2 = props) === null || _props2 === void 0 ? void 0 : _props2.description),
3481 toast: _objectSpread2({
3482 background: 'white',
3483 borderColor: 'inherit',
3484 boxShadow: 'high'
3485 }, (_props3 = props) === null || _props3 === void 0 ? void 0 : _props3.toast),
3486 icon: _objectSpread2({}, (_props4 = props) === null || _props4 === void 0 ? void 0 : _props4.icon, {
3487 color: _objectSpread2({
3488 critical: 'red',
3489 positive: 'green'
3490 }, (_props5 = props) === null || _props5 === void 0 ? void 0 : (_props5$icon = _props5.icon) === null || _props5$icon === void 0 ? void 0 : _props5$icon.color)
3491 }),
3492 close: _objectSpread2({
3493 color: 'ink.600'
3494 }, (_props6 = props) === null || _props6 === void 0 ? void 0 : _props6.close),
3495 action: _objectSpread2({
3496 color: 'blue',
3497 fontSize: '14px'
3498 }, (_props7 = props) === null || _props7 === void 0 ? void 0 : _props7.action)
3499 };
3500};
3501
3502var CloseButton = function CloseButton(_ref2) {
3503 var onClick = _ref2.onClick,
3504 rest = _objectWithoutPropertiesLoose(_ref2, ["onClick"]);
3505
3506 var _useHover = useEvents.useHover(),
3507 hover = _useHover[0],
3508 bind = _useHover[1];
3509
3510 var _useFocus = useEvents.useFocus(),
3511 focus = _useFocus[0],
3512 focusBind = _useFocus[1];
3513
3514 return React__default.createElement(Flex, Object.assign({
3515 position: "relative",
3516 justify: "center",
3517 cursor: hover ? 'pointer' : 'unset',
3518 onClick: onClick
3519 }, bind, rest), React__default.createElement(Box, Object.assign({
3520 ml: "tight",
3521 mt: "extra-tight",
3522 opacity: hover ? 1 : 0.5,
3523 as: "button",
3524 role: "button",
3525 "aria-label": "Close popup",
3526 title: "Close",
3527 style: {
3528 outline: 'none'
3529 },
3530 position: "relative",
3531 zIndex: 99,
3532 transition: transition
3533 }, focusBind), React__default.createElement(CloseIcon, {
3534 size: "12px"
3535 })), React__default.createElement(Box, {
3536 size: "24px",
3537 bg: "currentColor",
3538 borderRadius: "100%",
3539 position: "absolute",
3540 left: "-50%",
3541 top: "-50%",
3542 opacity: hover ? 0.1 : 0,
3543 transform: "translate3d(12px, 6px, 0)",
3544 transition: transition,
3545 boxShadow: focus ? 'focus' : 'unset'
3546 }));
3547};
3548
3549var Description = function Description(_ref3) {
3550 var children = _ref3.children,
3551 rest = _objectWithoutPropertiesLoose(_ref3, ["children"]);
3552
3553 return React__default.createElement(Text, Object.assign({
3554 fontSize: "14px",
3555 style: {
3556 wordBreak: 'break-word'
3557 },
3558 display: "block"
3559 }, rest), children);
3560};
3561
3562var Message = function Message(_ref4) {
3563 var children = _ref4.children,
3564 rest = _objectWithoutPropertiesLoose(_ref4, ["children"]);
3565
3566 return React__default.createElement(Text, Object.assign({
3567 fontWeight: "600",
3568 display: "block"
3569 }, rest), children);
3570};
3571
3572var ToastContent = function ToastContent(_ref5) {
3573 var _ref5$styles = _ref5.styles,
3574 styles = _ref5$styles === void 0 ? {} : _ref5$styles,
3575 message = _ref5.message,
3576 description = _ref5.description,
3577 action = _ref5.action,
3578 remove = _ref5.remove,
3579 rest = _objectWithoutPropertiesLoose(_ref5, ["styles", "message", "description", "action", "remove"]);
3580
3581 return description ? React__default.createElement(Stack, Object.assign({
3582 spacing: "tight"
3583 }, rest), React__default.createElement(Message, Object.assign({}, styles === null || styles === void 0 ? void 0 : styles.message), message), description ? React__default.createElement(Description, Object.assign({}, styles === null || styles === void 0 ? void 0 : styles.description), description) : null, action ? React__default.createElement(Action, Object.assign({
3584 key: action.label,
3585 removeToast: remove
3586 }, action, styles.action)) : null) : React__default.createElement(Stack, Object.assign({
3587 spacing: "tight"
3588 }, rest), React__default.createElement(Message, Object.assign({}, styles === null || styles === void 0 ? void 0 : styles.message), message), action ? React__default.createElement(Action, Object.assign({
3589 key: action.label,
3590 removeToast: remove
3591 }, action, styles.action)) : null);
3592};
3593
3594var Toast = /*#__PURE__*/React__default.forwardRef(function (_ref6, ref) {
3595 var _rect$height;
3596
3597 var propsId = _ref6.id,
3598 message = _ref6.message,
3599 description = _ref6.description,
3600 _ref6$tone = _ref6.tone,
3601 tone = _ref6$tone === void 0 ? 'none' : _ref6$tone,
3602 onClear = _ref6.onClear,
3603 action = _ref6.action,
3604 _ref6$toastProps = _ref6.toastProps,
3605 toastProps = _ref6$toastProps === void 0 ? {} : _ref6$toastProps;
3606 var id = autoId.useId(propsId);
3607 var styles = React.useMemo(function () {
3608 return getCustomProps(toastProps);
3609 }, [toastProps]);
3610 var remove = React.useCallback(function () {
3611 return onClear(id);
3612 }, [onClear, id]);
3613 var toastRef = React.useRef(null);
3614 var rect$1 = rect.useRect(toastRef);
3615
3616 var _React$useState = React__default.useState(true),
3617 show = _React$useState[0],
3618 setShow = _React$useState[1];
3619
3620 var height = (_rect$height = rect$1 === null || rect$1 === void 0 ? void 0 : rect$1.height) !== null && _rect$height !== void 0 ? _rect$height : 0;
3621
3622 var onExit = function onExit() {
3623 if (!show) {
3624 onClear(id);
3625 }
3626 };
3627
3628 var onClose = React__default.useCallback(function () {
3629 setShow(false);
3630 }, []);
3631
3632 var _useTimeout = useTimeout({
3633 duration: 7200,
3634 onTimeout: onClose
3635 }),
3636 stopTimeout = _useTimeout.stopTimeout,
3637 startTimeout = _useTimeout.startTimeout;
3638
3639 var animationStyles = {
3640 init: {
3641 opacity: 0,
3642 height: 0,
3643 transform: 'scale(1)'
3644 },
3645 entered: {
3646 opacity: 1,
3647 height: height,
3648 transform: 'scale(1)'
3649 },
3650 exiting: {
3651 opacity: 0,
3652 height: 0,
3653 transform: 'scale(0.9)'
3654 }
3655 };
3656 var noIcon = tone === 'none';
3657 var Icon = toneToIcon[tone];
3658 return React__default.createElement(Transition, {
3659 styles: animationStyles,
3660 "in": show,
3661 onExited: onExit,
3662 timeout: 350
3663 }, function (transitionStyles) {
3664 return React__default.createElement(Box, {
3665 onMouseEnter: stopTimeout,
3666 onMouseLeave: startTimeout,
3667 style: _objectSpread2({
3668 willChange: 'transform, height, opacity'
3669 }, transitionStyles),
3670 ref: ref
3671 }, React__default.createElement(Flex, {
3672 justify: "center",
3673 as: ReachAlert,
3674 maxWidth: "100%",
3675 pb: "tight",
3676 px: "tight",
3677 ref: toastRef
3678 }, React__default.createElement(Box, Object.assign({
3679 p: "base",
3680 border: "1px solid",
3681 borderColor: "inherit",
3682 borderRadius: "6px",
3683 maxWidth: "100%"
3684 }, styles.toast, {
3685 style: {
3686 pointerEvents: 'all'
3687 }
3688 }), React__default.createElement(Box, {
3689 position: "relative"
3690 }, React__default.createElement(Flex, {
3691 align: "flex-start"
3692 }, tone !== 'none' ? React__default.createElement(Box, Object.assign({
3693 pt: "extra-tight",
3694 pr: "tight"
3695 }, styles === null || styles === void 0 ? void 0 : styles.icon, {
3696 color: styles.icon.color[tone]
3697 }), React__default.createElement(Icon, {
3698 size: "16px"
3699 })) : null, React__default.createElement(Box, {
3700 pr: noIcon ? 'unset' : 'base'
3701 }, React__default.createElement(ToastContent, {
3702 message: message,
3703 description: description,
3704 action: action,
3705 styles: styles,
3706 remove: remove
3707 })), React__default.createElement(CloseButton, {
3708 onClick: onClose
3709 }))))));
3710 });
3711});
3712
3713var Toaster = function Toaster(_ref) {
3714 var toasts = _ref.toasts,
3715 removeToast = _ref.removeToast,
3716 rest = _objectWithoutPropertiesLoose(_ref, ["toasts", "removeToast"]);
3717
3718 var onClear = React.useCallback(function (id) {
3719 removeToast(id);
3720 }, [removeToast]);
3721 return React__default.createElement(Flex, Object.assign({
3722 align: "center",
3723 justify: "flex-end",
3724 flexDirection: "column",
3725 position: "fixed",
3726 width: "100%",
3727 height: "100vh",
3728 bottom: 0,
3729 zIndex: 9999999,
3730 style: {
3731 pointerEvents: 'none'
3732 }
3733 }, rest), toasts.map(function (_ref2) {
3734 var id = _ref2.id,
3735 rest = _objectWithoutPropertiesLoose(_ref2, ["id"]);
3736
3737 return React__default.createElement(Box, {
3738 key: id
3739 }, React__default.createElement(Toast, Object.assign({
3740 id: id,
3741 onClear: onClear
3742 }, rest)));
3743 }));
3744};
3745
3746var toastCounter = 0;
3747var ToastControllerContext = /*#__PURE__*/React.createContext(null);
3748var QUEUE_TOAST = 0;
3749var REMOVE_TOAST = 1;
3750
3751function reducer(state, action) {
3752 switch (action.type) {
3753 case QUEUE_TOAST:
3754 {
3755 return _objectSpread2({}, state, {
3756 toasts: [].concat(state.toasts, [action.payload])
3757 });
3758 }
3759
3760 case REMOVE_TOAST:
3761 {
3762 var toasts = state.toasts.filter(function (_ref) {
3763 var id = _ref.id;
3764 return id !== action.payload;
3765 });
3766 return _objectSpread2({}, state, {
3767 toasts: toasts
3768 });
3769 }
3770 }
3771
3772 return state;
3773}
3774
3775var InternalToastProvider = function InternalToastProvider(_ref2) {
3776 var children = _ref2.children;
3777
3778 var _useReducer = React.useReducer(reducer, {
3779 toasts: []
3780 }),
3781 toasts = _useReducer[0].toasts,
3782 dispatch = _useReducer[1];
3783
3784 var addToast = React.useCallback(function (props) {
3785 return dispatch({
3786 type: QUEUE_TOAST,
3787 payload: props
3788 });
3789 }, []);
3790 var removeToast = React.useCallback(function (id) {
3791 return dispatch({
3792 type: REMOVE_TOAST,
3793 payload: id
3794 });
3795 }, []);
3796 return React__default.createElement(ToastControllerContext.Provider, {
3797 value: addToast
3798 }, children, React__default.createElement(Portal, null, React__default.createElement(Toaster, {
3799 toasts: toasts,
3800 removeToast: removeToast
3801 })));
3802};
3803
3804var ToastProvider = function ToastProvider(_ref3) {
3805 var children = _ref3.children;
3806 var currentContext = React.useContext(ToastControllerContext);
3807
3808 if (currentContext !== null) {
3809 return React__default.createElement(React__default.Fragment, null, children);
3810 }
3811
3812 return React__default.createElement(InternalToastProvider, null, children);
3813};
3814var useToast = function useToast() {
3815 var addToast = React.useContext(ToastControllerContext);
3816
3817 if (addToast === null) {
3818 throw new Error('No "ToastProvider" configured');
3819 }
3820
3821 return React.useCallback(function (props) {
3822 return addToast(_objectSpread2({}, props, {
3823 id: "" + toastCounter++
3824 }));
3825 }, [addToast]);
3826};
3827
3828var hideOperation;
3829var activeId = null;
3830
3831function show(fn, delay) {
3832 var _hideOperation;
3833
3834 var isHidePending = (_hideOperation = hideOperation) === null || _hideOperation === void 0 ? void 0 : _hideOperation.pending();
3835
3836 if (isHidePending) {
3837 hideOperation.flush();
3838 }
3839
3840 var showOperation = flushable(function () {
3841 return fn(isHidePending);
3842 }, isHidePending ? 0 : delay);
3843 return showOperation.cancel;
3844}
3845
3846function hide(fn, delay) {
3847 hideOperation = flushable(function (flushed) {
3848 return fn(flushed);
3849 }, delay);
3850 return hideOperation.cancel;
3851}
3852
3853function useTooltip(props) {
3854 if (props === void 0) {
3855 props = {};
3856 }
3857
3858 var _props = props,
3859 _props$showDelay = _props.showDelay,
3860 showDelay = _props$showDelay === void 0 ? 200 : _props$showDelay,
3861 _props$hideDelay = _props.hideDelay,
3862 hideDelay = _props$hideDelay === void 0 ? 200 : _props$hideDelay,
3863 _props$hideOnClick = _props.hideOnClick,
3864 hideOnClick = _props$hideOnClick === void 0 ? false : _props$hideOnClick,
3865 onShow = _props.onShow,
3866 onHide = _props.onHide,
3867 hideOnMouseDown = _props.hideOnMouseDown,
3868 placement = _props.placement,
3869 id = _props.id,
3870 isOpenProp = _props.isOpen,
3871 defaultIsOpen = _props.defaultIsOpen,
3872 _props$arrowSize = _props.arrowSize,
3873 arrowSize = _props$arrowSize === void 0 ? 10 : _props$arrowSize,
3874 _label = _props.label;
3875
3876 var _React$useState = React.useState(_label),
3877 label = _React$useState[0],
3878 setLabel = _React$useState[1];
3879
3880 var labelIsUpToDate = _label === label;
3881 if (!labelIsUpToDate) setLabel(_label);
3882
3883 var _useDisclosure = useDisclosure({
3884 isOpen: isOpenProp,
3885 defaultIsOpen: defaultIsOpen,
3886 onOpen: onShow,
3887 onClose: onHide
3888 }),
3889 isOpen = _useDisclosure.isOpen,
3890 open = _useDisclosure.onOpen,
3891 close = _useDisclosure.onClose;
3892
3893 var popper = usePopper({
3894 forceUpdate: isOpen && labelIsUpToDate,
3895 placement: placement,
3896 arrowSize: arrowSize
3897 });
3898 var tooltipId = useId(id, 'tooltip');
3899 var ref = React.useRef(null);
3900 var triggerRef = useMergeRefs(ref, popper.reference.ref);
3901 var flushRef = React.useRef();
3902 React.useEffect(function () {
3903 return function () {
3904 var _flushRef$current;
3905
3906 return (_flushRef$current = flushRef.current) === null || _flushRef$current === void 0 ? void 0 : _flushRef$current.call(flushRef);
3907 };
3908 }, []);
3909 var hideImmediately = React.useCallback(function () {
3910 var _flushRef$current2;
3911
3912 (_flushRef$current2 = flushRef.current) === null || _flushRef$current2 === void 0 ? void 0 : _flushRef$current2.call(flushRef);
3913 close();
3914 }, [close]);
3915 var onClick = React.useCallback(function () {
3916 if (hideOnClick) {
3917 hideImmediately();
3918 }
3919 }, [hideOnClick, hideImmediately]);
3920 var onMouseDown = React.useCallback(function () {
3921 if (hideOnMouseDown) {
3922 hideImmediately();
3923 }
3924 }, [hideOnMouseDown, hideImmediately]);
3925 var showTooltip = React.useCallback(function () {
3926 var _flushRef$current3;
3927
3928 (_flushRef$current3 = flushRef.current) === null || _flushRef$current3 === void 0 ? void 0 : _flushRef$current3.call(flushRef);
3929
3930 if (tooltipId !== activeId) {
3931 hideImmediately();
3932 }
3933
3934 activeId = tooltipId;
3935
3936 if (!isOpen) {
3937 flushRef.current = show(function () {
3938 open();
3939 }, showDelay);
3940 }
3941 }, [isOpen, showDelay, open, tooltipId, hideImmediately]);
3942 var hideTooltip = React.useCallback(function () {
3943 var _flushRef$current4;
3944
3945 (_flushRef$current4 = flushRef.current) === null || _flushRef$current4 === void 0 ? void 0 : _flushRef$current4.call(flushRef);
3946 activeId = null;
3947
3948 if (isOpen) {
3949 flushRef.current = hide(function () {
3950 close();
3951 }, hideDelay);
3952 }
3953 }, [isOpen, hideDelay, close]);
3954 var onMouseOver = React.useCallback(function (event) {
3955 var isSelf = event.target === ref.current;
3956
3957 if (isOpen && isSelf) {
3958 return;
3959 }
3960
3961 showTooltip();
3962 }, [isOpen, showTooltip]);
3963 var onKeyDown = React.useCallback(function (event) {
3964 if (isOpen && event.key === 'Escape') {
3965 hideImmediately();
3966 }
3967 }, [isOpen, hideImmediately]);
3968 useEventListener('keydown', onKeyDown);
3969 return {
3970 isOpen: isOpen,
3971 show: open,
3972 hide: close,
3973 placement: popper.placement,
3974 getTriggerProps: function getTriggerProps(props) {
3975 if (props === void 0) {
3976 props = {};
3977 }
3978
3979 return _objectSpread2({}, props, {
3980 ref: mergeRefs(props.ref, triggerRef),
3981 onMouseOut: callAllHandlers(props.onMouseOut, hideTooltip),
3982 onMouseOver: callAllHandlers(props.onMouseOver, onMouseOver),
3983 onClick: callAllHandlers(props.onClick, onClick),
3984 onMouseDown: callAllHandlers(props.onMouseDown, onMouseDown),
3985 onFocus: callAllHandlers(props.onFocus, showTooltip),
3986 onBlur: callAllHandlers(props.onBlur, hideTooltip),
3987 'aria-describedby': isOpen ? tooltipId : undefined
3988 });
3989 },
3990 getTooltipProps: function getTooltipProps(props) {
3991 if (props === void 0) {
3992 props = {};
3993 }
3994
3995 return _objectSpread2({}, props, {
3996 id: tooltipId,
3997 role: 'tooltip',
3998 ref: mergeRefs(props.ref, popper.popper.ref),
3999 style: _objectSpread2({}, props.style, {}, popper.popper.style)
4000 });
4001 },
4002 getArrowProps: function getArrowProps(props) {
4003 if (props === void 0) {
4004 props = {};
4005 }
4006
4007 return _objectSpread2({}, props, {
4008 ref: mergeRefs(props.ref, popper.arrow.ref),
4009 style: _objectSpread2({}, props.style, {}, popper.arrow.style)
4010 });
4011 }
4012 };
4013}
4014
4015function Tooltip(props) {
4016 var children = props.children,
4017 label = props.label,
4018 shouldWrapChildren = props.shouldWrapChildren,
4019 ariaLabel = props['aria-label'],
4020 hasArrow = props.hasArrow,
4021 rest = _objectWithoutPropertiesLoose(props, ["children", "label", "shouldWrapChildren", "aria-label", "hasArrow"]);
4022
4023 if (!label || label === '') {
4024 var child = React.Children.only(children);
4025 return React.cloneElement(child, _objectSpread2({}, child.props, {}, rest));
4026 }
4027
4028 var _useTooltip = useTooltip(props),
4029 isOpen = _useTooltip.isOpen,
4030 getTriggerProps = _useTooltip.getTriggerProps,
4031 getTooltipProps = _useTooltip.getTooltipProps,
4032 getArrowProps = _useTooltip.getArrowProps;
4033
4034 var trigger;
4035
4036 if (isString(children) || shouldWrapChildren) {
4037 trigger = React.createElement(Box, Object.assign({
4038 as: "span",
4039 tabIndex: 0
4040 }, getTriggerProps()), children);
4041 } else {
4042 var _child = React.Children.only(children);
4043
4044 trigger = React.cloneElement(_child, getTriggerProps(_child.props));
4045 }
4046
4047 var hasAriaLabel = Boolean(ariaLabel);
4048 var baseTooltipProps = getTooltipProps(rest);
4049
4050 var _ref = hasAriaLabel ? omit(baseTooltipProps, ['role', 'id']) : baseTooltipProps,
4051 style = _ref.style,
4052 tooltipProps = _objectWithoutPropertiesLoose(_ref, ["style"]);
4053
4054 var hiddenProps = pick(baseTooltipProps, ['role', 'id']);
4055 return React.createElement(React.Fragment, null, trigger, isOpen && React.createElement(Portal, null, React.createElement(Box, Object.assign({
4056 paddingX: "8px",
4057 paddingY: "tight",
4058 bg: "ink",
4059 color: "white",
4060 borderRadius: "6px",
4061 textStyle: "caption.medium",
4062 maxWidth: "320px"
4063 }, tooltipProps, {
4064 style: _objectSpread2({}, style, {
4065 useSelect: 'none'
4066 })
4067 }), label, hasAriaLabel && React.createElement(VisuallyHidden, Object.assign({}, hiddenProps), ariaLabel), hasArrow && React.createElement(Box, Object.assign({
4068 "data-arrow": "",
4069 bg: "inherit"
4070 }, getArrowProps())))));
4071}
4072
4073var copyToClipboard = function copyToClipboard(value) {
4074 var el = document.createElement('textarea');
4075 el.value = value;
4076 el.setAttribute('readonly', '');
4077 el.style.position = 'absolute';
4078 el.style.left = '-9999px';
4079 document.body.appendChild(el);
4080 var curSelection = document.getSelection();
4081 var selected = curSelection && curSelection.rangeCount > 0 ? curSelection.getRangeAt(0) : false;
4082 el.select();
4083 document.execCommand('copy');
4084 document.body.removeChild(el);
4085
4086 if (selected) {
4087 var _document$getSelectio, _document$getSelectio2;
4088
4089 (_document$getSelectio = document.getSelection()) === null || _document$getSelectio === void 0 ? void 0 : _document$getSelectio.removeAllRanges();
4090 (_document$getSelectio2 = document.getSelection()) === null || _document$getSelectio2 === void 0 ? void 0 : _document$getSelectio2.addRange(selected);
4091 }
4092};
4093
4094function useClipboard(value) {
4095 var _useState = React.useState(false),
4096 hasCopied = _useState[0],
4097 setHasCopied = _useState[1];
4098
4099 var onCopy = function onCopy() {
4100 copyToClipboard(value);
4101 setHasCopied(true);
4102 setTimeout(function () {
4103 return setHasCopied(false);
4104 }, 1500);
4105 };
4106
4107 return {
4108 value: value,
4109 onCopy: onCopy,
4110 hasCopied: hasCopied
4111 };
4112}
4113
4114var nativeExceptions = /*#__PURE__*/[EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError].filter(function (except) {
4115 return typeof except === 'function';
4116});
4117
4118function throwNative(error) {
4119 for (var _iterator = _createForOfIteratorHelperLoose(nativeExceptions), _step; !(_step = _iterator()).done;) {
4120 var Exception = _step.value;
4121 if (error instanceof Exception) throw error;
4122 }
4123}
4124
4125function safeAwait(promise, finallyFn) {
4126 return promise.then(function (data) {
4127 if (data instanceof Error) {
4128 throwNative(data);
4129 return [data];
4130 }
4131
4132 return [undefined, data];
4133 })["catch"](function (error) {
4134 throwNative(error);
4135 return [error];
4136 })["finally"](function () {
4137 if (finallyFn) finallyFn();
4138 });
4139}
4140
4141exports.AppsIcon = AppsIcon;
4142exports.ArrowIcon = ArrowIcon;
4143exports.BlockchainIcon = BlockchainIcon;
4144exports.BlockstackIcon = BlockstackIcon;
4145exports.Box = Box;
4146exports.Button = Button;
4147exports.ButtonGroup = ButtonGroup;
4148exports.CSSReset = CSSReset;
4149exports.CheckmarkCircleIcon = CheckmarkCircleIcon;
4150exports.CheckmarkIcon = CheckmarkIcon;
4151exports.ChevronIcon = ChevronIcon;
4152exports.CloseIcon = CloseIcon;
4153exports.CodeBlock = CodeBlock;
4154exports.ColorModeContext = ColorModeContext;
4155exports.ColorModeProvider = ColorModeProvider;
4156exports.ColorModes = ColorModes;
4157exports.ConnectLogoIcon = ConnectLogoIcon;
4158exports.EncryptionIcon = EncryptionIcon;
4159exports.ExclamationMarkCircleIcon = ExclamationMarkCircleIcon;
4160exports.ExclamationMarkIcon = ExclamationMarkIcon;
4161exports.ExternalIcon = ExternalIcon;
4162exports.EyeIcon = EyeIcon;
4163exports.Fade = Fade;
4164exports.FailedIcon = FailedIcon;
4165exports.Flex = Flex;
4166exports.FormControl = FormControl;
4167exports.FormLabel = FormLabel;
4168exports.Grid = Grid;
4169exports.Highlighter = Highlighter;
4170exports.Input = Input;
4171exports.InputAddon = InputAddon;
4172exports.InputElement = InputElement;
4173exports.InputGroup = InputGroup;
4174exports.InputLeftAddon = InputLeftAddon;
4175exports.InputLeftElement = InputLeftElement;
4176exports.InputRightAddon = InputRightAddon;
4177exports.InputRightElement = InputRightElement;
4178exports.Modal = Modal;
4179exports.ModalProvider = ModalProvider;
4180exports.PadlockIcon = PadlockIcon;
4181exports.PlusCircleIcon = PlusCircleIcon;
4182exports.Portal = Portal;
4183exports.PrivateIcon = PrivateIcon;
4184exports.PseudoBox = Box;
4185exports.RequiredIndicator = RequiredIndicator;
4186exports.ScaleFade = ScaleFade;
4187exports.ScopedCSSReset = ScopedCSSReset;
4188exports.Slide = Slide;
4189exports.SlideFade = SlideFade;
4190exports.Spinner = Spinner;
4191exports.Stack = Stack;
4192exports.StyledBox = StyledBox;
4193exports.Svg = Svg;
4194exports.Text = Text;
4195exports.ThemeContext = ThemeContext;
4196exports.ThemeProvider = ThemeProvider;
4197exports.Toast = Toast;
4198exports.ToastProvider = ToastProvider;
4199exports.Toaster = Toaster;
4200exports.Tooltip = Tooltip;
4201exports.Transition = Transition;
4202exports.UnionLineIcon = UnionLineIcon;
4203exports.VisuallyHidden = VisuallyHidden;
4204exports.addBlack = addBlack;
4205exports.addOpacity = addOpacity;
4206exports.addWhite = addWhite;
4207exports.assignRef = assignRef$1;
4208exports.baseSizes = baseSizes;
4209exports.color = color;
4210exports.colorEmphasis = colorEmphasis;
4211exports.colorGet = colorGet;
4212exports.generateAlphaColors = generateAlphaColors;
4213exports.generateCssVariables = generateCssVariables;
4214exports.generateStripe = generateStripe;
4215exports.get = get;
4216exports.getArrowStyles = getArrowStyles;
4217exports.getOppositePosition = getOppositePosition;
4218exports.isDarkColor = isDarkColor;
4219exports.namedSpacingUnits = namedSpacingUnits;
4220exports.safeAwait = safeAwait;
4221exports.shadows = shadows;
4222exports.sizes = sizes;
4223exports.space = space;
4224exports.systemProps = systemProps;
4225exports.textStyles = textStyles;
4226exports.theme = theme;
4227exports.themeColor = themeColor;
4228exports.transition = transition;
4229exports.useClipboard = useClipboard;
4230exports.useColorMode = useColorMode;
4231exports.useControllableProp = useControllableProp;
4232exports.useControllableState = useControllableState;
4233exports.useDisclosure = useDisclosure;
4234exports.useEventListener = useEventListener;
4235exports.useForceUpdate = useForceUpdate;
4236exports.useFormControl = useFormControl;
4237exports.useFormControlContext = useFormControlContext;
4238exports.useId = useId;
4239exports.useIds = useIds;
4240exports.useLatestRef = useLatestRef;
4241exports.useMergeRefs = useMergeRefs;
4242exports.useModalState = useModalState;
4243exports.usePopper = usePopper;
4244exports.usePrevious = usePrevious;
4245exports.useSafeLayoutEffect = useSafeLayoutEffect;
4246exports.useTheme = useTheme;
4247exports.useTimeout = useTimeout;
4248exports.useToast = useToast;
4249//# sourceMappingURL=ui.cjs.development.js.map