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