@carbonplan/components 10.5.0 → 11.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dst/index.js CHANGED
@@ -4,6 +4,7 @@ var color = require('@theme-ui/color');
4
4
  var NextLink = require('next/link');
5
5
  var icons = require('@carbonplan/icons');
6
6
  var emoji = require('@carbonplan/emoji');
7
+ var matchMedia = require('@theme-ui/match-media');
7
8
  var Head = require('next/head');
8
9
  var react = require('@emotion/react');
9
10
 
@@ -46,15 +47,13 @@ function _objectWithoutPropertiesLoose(source, excluded) {
46
47
  return target;
47
48
  }
48
49
 
49
- var _excluded$g = ["sx", "children"];
50
-
51
50
  var Badge = function Badge(_ref) {
52
51
  var sx = _ref.sx,
53
52
  children = _ref.children,
54
- props = _objectWithoutPropertiesLoose(_ref, _excluded$g);
53
+ props = _objectWithoutPropertiesLoose(_ref, ["sx", "children"]);
55
54
 
56
55
  var color$1 = sx && sx.color ? sx.color : 'primary';
57
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
56
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
58
57
  sx: _extends({
59
58
  display: 'inline-block',
60
59
  width: 'fit-content',
@@ -65,7 +64,7 @@ var Badge = function Badge(_ref) {
65
64
  userSelect: 'none',
66
65
  fontSize: [2, 2, 2, 3]
67
66
  }, sx)
68
- }, props), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
67
+ }, props), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
69
68
  sx: {
70
69
  letterSpacing: '0.02em',
71
70
  fontFamily: 'mono',
@@ -76,8 +75,6 @@ var Badge = function Badge(_ref) {
76
75
  }, children));
77
76
  };
78
77
 
79
- var _excluded$f = ["href", "children", "internal", "tracking"];
80
-
81
78
  var event = function event(_ref) {
82
79
  var action = _ref.action,
83
80
  category = _ref.category,
@@ -96,20 +93,22 @@ var event = function event(_ref) {
96
93
  });
97
94
  };
98
95
 
99
- var Link = function Link(_ref2) {
96
+ var Link = function Link(_ref2, ref) {
100
97
  var href = _ref2.href,
101
98
  children = _ref2.children,
102
99
  _ref2$internal = _ref2.internal,
103
100
  internal = _ref2$internal === void 0 ? false : _ref2$internal,
104
101
  _ref2$tracking = _ref2.tracking,
105
102
  tracking = _ref2$tracking === void 0 ? false : _ref2$tracking,
106
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$f);
103
+ props = _objectWithoutPropertiesLoose(_ref2, ["href", "children", "internal", "tracking"]);
107
104
 
108
105
  if (internal || href && href.startsWith('/')) {
109
- return /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
106
+ return /*#__PURE__*/React__default['default'].createElement(NextLink__default['default'], {
110
107
  href: href,
111
108
  passHref: true
112
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Link, props, children));
109
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Link, _extends({
110
+ ref: ref
111
+ }, props), children));
113
112
  } else if (tracking) {
114
113
  var action;
115
114
  var category;
@@ -130,18 +129,22 @@ var Link = function Link(_ref2) {
130
129
  });
131
130
  };
132
131
 
133
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Link, _extends({
132
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Link, _extends({
133
+ ref: ref,
134
134
  onClick: track,
135
135
  onContextMenu: track,
136
136
  href: href
137
137
  }, props), children);
138
138
  } else {
139
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Link, _extends({
139
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Link, _extends({
140
+ ref: ref,
140
141
  href: href
141
142
  }, props), children);
142
143
  }
143
144
  };
144
145
 
146
+ var Link$1 = React.forwardRef(Link);
147
+
145
148
  var getSizeStyles = function getSizeStyles(size) {
146
149
  if (!['xs', 'sm', 'md', 'lg', 'xl'].includes(size)) {
147
150
  throw new Error('Size must be xs, sm, md, lg, or xl');
@@ -192,9 +195,7 @@ var getSizeStyles = function getSizeStyles(size) {
192
195
  };
193
196
  };
194
197
 
195
- var _excluded$e = ["size", "prefix", "suffix", "inverted", "sx", "children", "align", "href", "internal", "tracking"];
196
-
197
- var Button = function Button(_ref) {
198
+ var Button = function Button(_ref, ref) {
198
199
  var _ref$size = _ref.size,
199
200
  size = _ref$size === void 0 ? 'sm' : _ref$size,
200
201
  prefix = _ref.prefix,
@@ -206,7 +207,7 @@ var Button = function Button(_ref) {
206
207
  href = _ref.href,
207
208
  internal = _ref.internal,
208
209
  tracking = _ref.tracking,
209
- props = _objectWithoutPropertiesLoose(_ref, _excluded$e);
210
+ props = _objectWithoutPropertiesLoose(_ref, ["size", "prefix", "suffix", "inverted", "sx", "children", "align", "href", "internal", "tracking"]);
210
211
 
211
212
  if (!['xs', 'sm', 'md', 'lg', 'xl'].includes(size)) {
212
213
  throw new Error('Size must be xs, sm, md, lg, or xl');
@@ -344,18 +345,18 @@ var Button = function Button(_ref) {
344
345
  }, suffixHover, prefixHover)
345
346
  }, sx);
346
347
 
347
- var Inner = /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
348
+ var Inner = /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
348
349
  as: "span",
349
350
  id: "prefix-span",
350
351
  sx: _extends({
351
352
  display: 'inline-block'
352
353
  }, prefixOffset)
353
- }, prefix && prefix), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
354
+ }, prefix && prefix), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
354
355
  as: "span",
355
356
  sx: {
356
357
  transition: 'color 0.15s'
357
358
  }
358
- }, children), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
359
+ }, children), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
359
360
  as: "span",
360
361
  id: "suffix-span",
361
362
  sx: _extends({
@@ -364,7 +365,8 @@ var Button = function Button(_ref) {
364
365
  }, suffix && suffix));
365
366
 
366
367
  if (href) {
367
- return /*#__PURE__*/React__default["default"].createElement(Link, _extends({
368
+ return /*#__PURE__*/React__default['default'].createElement(Link$1, _extends({
369
+ ref: ref,
368
370
  href: href,
369
371
  internal: internal,
370
372
  tracking: tracking,
@@ -373,16 +375,17 @@ var Button = function Button(_ref) {
373
375
  })
374
376
  }, props), Inner);
375
377
  } else {
376
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
378
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
379
+ ref: ref,
377
380
  as: "button",
378
381
  sx: style
379
382
  }, props), Inner);
380
383
  }
381
384
  };
382
385
 
383
- var _excluded$d = ["label", "children", "inverted", "color", "href", "internal", "tracking", "sx"];
386
+ var button = React.forwardRef(Button);
384
387
 
385
- var Callout = function Callout(_ref) {
388
+ var Callout = function Callout(_ref, ref) {
386
389
  var label = _ref.label,
387
390
  children = _ref.children,
388
391
  inverted = _ref.inverted,
@@ -391,7 +394,7 @@ var Callout = function Callout(_ref) {
391
394
  internal = _ref.internal,
392
395
  tracking = _ref.tracking,
393
396
  sx = _ref.sx,
394
- props = _objectWithoutPropertiesLoose(_ref, _excluded$d);
397
+ props = _objectWithoutPropertiesLoose(_ref, ["label", "children", "inverted", "color", "href", "internal", "tracking", "sx"]);
395
398
 
396
399
  var baseColor = color || (inverted ? 'secondary' : 'primary');
397
400
  var hoverColor = color ? 'primary' : inverted ? 'primary' : 'secondary';
@@ -421,13 +424,13 @@ var Callout = function Callout(_ref) {
421
424
  }
422
425
  }, sx);
423
426
 
424
- var Inner = /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
427
+ var Inner = /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
425
428
  sx: {
426
429
  transition: '0.15s',
427
430
  letterSpacing: 'body',
428
431
  pb: ['6px']
429
432
  }
430
- }, children), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
433
+ }, children), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
431
434
  sx: {
432
435
  transition: '0.15s',
433
436
  display: 'inline-block',
@@ -436,14 +439,14 @@ var Callout = function Callout(_ref) {
436
439
  fontFamily: 'heading',
437
440
  fontSize: [2, 2, 2, 3]
438
441
  }
439
- }, label), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
442
+ }, label), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
440
443
  as: "span",
441
444
  id: "container",
442
445
  sx: {
443
446
  ml: [2],
444
447
  display: 'inline-block'
445
448
  }
446
- }, /*#__PURE__*/React__default["default"].createElement(icons.Arrow, {
449
+ }, /*#__PURE__*/React__default['default'].createElement(icons.Arrow, {
447
450
  id: "arrow",
448
451
  sx: {
449
452
  transition: 'fill 0.15s, transform 0.15s',
@@ -456,27 +459,51 @@ var Callout = function Callout(_ref) {
456
459
  })));
457
460
 
458
461
  if (href) {
459
- return /*#__PURE__*/React__default["default"].createElement(Link, _extends({
462
+ return /*#__PURE__*/React__default['default'].createElement(Link$1, _extends({
463
+ ref: ref,
460
464
  href: href,
461
465
  internal: internal,
462
466
  tracking: tracking,
463
467
  sx: style
464
468
  }, props), Inner);
465
469
  } else {
466
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
470
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
471
+ ref: ref,
467
472
  as: "button",
468
473
  sx: style
469
474
  }, props), Inner);
470
475
  }
471
476
  };
472
477
 
473
- var _excluded$c = ["colormap", "label", "clim", "discrete", "units", "width", "height", "format", "horizontal"];
474
- var sx$2 = {
475
- clim: {
476
- fontFamily: 'mono',
477
- fontSize: ['9px', 0, 0, 1],
478
- letterSpacing: 'smallcaps',
479
- textTransform: 'uppercase'
478
+ var callout = React.forwardRef(Callout);
479
+
480
+ var styles = {
481
+ clim: function clim(setClim) {
482
+ return {
483
+ fontFamily: 'mono',
484
+ fontSize: ['9px', 0, 0, 1],
485
+ letterSpacing: 'smallcaps',
486
+ textTransform: 'uppercase',
487
+ '@media (hover: hover) and (pointer: fine)': {
488
+ '&:hover': {
489
+ borderBottom: setClim ? function (_ref) {
490
+ var colors = _ref.colors;
491
+ return "solid 1px " + colors.primary + " !important";
492
+ } : 'unset'
493
+ }
494
+ },
495
+ '&:focus': {
496
+ outline: 'none',
497
+ borderBottom: setClim ? function (_ref2) {
498
+ var colors = _ref2.colors;
499
+ return "solid 1px " + colors.primary + " !important";
500
+ } : 'unset'
501
+ },
502
+ transition: 'border 0.15s',
503
+ userSelect: setClim ? 'none !important' : 'unset',
504
+ width: 'fit-content',
505
+ minWidth: 'fit-content'
506
+ };
480
507
  }
481
508
  };
482
509
  var DIMENSIONS = {
@@ -484,18 +511,18 @@ var DIMENSIONS = {
484
511
  height: ['80px', '110px', '110px', '130px']
485
512
  };
486
513
 
487
- var Gradient = function Gradient(_ref) {
488
- var colormap = _ref.colormap,
489
- discrete = _ref.discrete,
490
- horizontal = _ref.horizontal,
491
- width = _ref.width,
492
- height = _ref.height;
514
+ var Gradient = function Gradient(_ref3) {
515
+ var colormap = _ref3.colormap,
516
+ discrete = _ref3.discrete,
517
+ horizontal = _ref3.horizontal,
518
+ width = _ref3.width,
519
+ height = _ref3.height;
493
520
  var step = 1 / colormap.length * 100;
494
521
  var values = colormap.map(function (d, i) {
495
522
  return "rgb(" + d + ") " + i * step + "% " + (discrete && i < colormap.length - 1 ? (i + 1) * step + "%" : '');
496
523
  });
497
524
  var css = "linear-gradient(to " + (horizontal ? 'right' : 'top') + ", " + values.join(',') + ")";
498
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
525
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
499
526
  sx: _extends({}, horizontal ? {
500
527
  width: width || DIMENSIONS.height,
501
528
  height: height || DIMENSIONS.width
@@ -503,9 +530,9 @@ var Gradient = function Gradient(_ref) {
503
530
  width: width || DIMENSIONS.width,
504
531
  minHeight: height || DIMENSIONS.height
505
532
  }, {
506
- mt: horizontal ? [0, '1px', '1px', 0] : 0,
507
- border: function border(_ref2) {
508
- var colors = _ref2.colors;
533
+ mt: horizontal ? ['1px', '1px', '1px', 0] : 0,
534
+ border: function border(_ref4) {
535
+ var colors = _ref4.colors;
509
536
  return "solid 1px " + colors.hinted;
510
537
  },
511
538
  background: css
@@ -513,15 +540,16 @@ var Gradient = function Gradient(_ref) {
513
540
  });
514
541
  };
515
542
 
516
- var Label = function Label(_ref3) {
517
- var label = _ref3.label,
518
- units = _ref3.units,
519
- horizontal = _ref3.horizontal;
520
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
543
+ var Label = function Label(_ref5) {
544
+ var label = _ref5.label,
545
+ units = _ref5.units,
546
+ horizontal = _ref5.horizontal;
547
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
521
548
  sx: !horizontal && {
549
+ width: ['13px', '17px', '17px', '19px'],
522
550
  alignSelf: 'flex-end'
523
551
  }
524
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
552
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
525
553
  sx: _extends({
526
554
  mb: horizontal ? 0 : ['-4px', '-4px', '-4px', '-3px'],
527
555
  fontFamily: 'mono',
@@ -535,7 +563,7 @@ var Label = function Label(_ref3) {
535
563
  display: 'inline-block',
536
564
  overflow: 'visible'
537
565
  })
538
- }, label, ' ', /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
566
+ }, label, ' ', /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
539
567
  as: "span",
540
568
  sx: {
541
569
  textTransform: 'none',
@@ -545,73 +573,238 @@ var Label = function Label(_ref3) {
545
573
  }, units)));
546
574
  };
547
575
 
548
- var Colorbar = function Colorbar(_ref4) {
549
- var colormap = _ref4.colormap,
550
- label = _ref4.label,
551
- clim = _ref4.clim,
552
- discrete = _ref4.discrete,
553
- units = _ref4.units,
554
- width = _ref4.width,
555
- height = _ref4.height,
556
- _ref4$format = _ref4.format,
557
- format = _ref4$format === void 0 ? function (d) {
576
+ var Colorbar = function Colorbar(_ref6) {
577
+ var colormap = _ref6.colormap,
578
+ label = _ref6.label,
579
+ clim = _ref6.clim,
580
+ setClim = _ref6.setClim,
581
+ _ref6$setClimStep = _ref6.setClimStep,
582
+ setClimStep = _ref6$setClimStep === void 0 ? 1 : _ref6$setClimStep,
583
+ discrete = _ref6.discrete,
584
+ units = _ref6.units,
585
+ width = _ref6.width,
586
+ height = _ref6.height,
587
+ _ref6$format = _ref6.format,
588
+ format = _ref6$format === void 0 ? function (d) {
558
589
  return d;
559
- } : _ref4$format,
560
- _ref4$horizontal = _ref4.horizontal,
561
- horizontal = _ref4$horizontal === void 0 ? false : _ref4$horizontal,
562
- props = _objectWithoutPropertiesLoose(_ref4, _excluded$c);
590
+ } : _ref6$format,
591
+ _ref6$horizontal = _ref6.horizontal,
592
+ horizontal = _ref6$horizontal === void 0 ? false : _ref6$horizontal,
593
+ _ref6$bottom = _ref6.bottom,
594
+ bottom = _ref6$bottom === void 0 ? false : _ref6$bottom,
595
+ sx = _ref6.sx,
596
+ sxClim = _ref6.sxClim,
597
+ props = _objectWithoutPropertiesLoose(_ref6, ["colormap", "label", "clim", "setClim", "setClimStep", "discrete", "units", "width", "height", "format", "horizontal", "bottom", "sx", "sxClim"]);
563
598
 
564
599
  if (!Array.isArray(colormap)) {
565
600
  throw new Error("expected array for colormap, got '" + colormap + "'.");
566
601
  }
567
602
 
603
+ var climRef = [React.useRef(), React.useRef()];
604
+
605
+ var _useState = React.useState(false),
606
+ climMinDragging = _useState[0],
607
+ setClimMinDragging = _useState[1];
608
+
609
+ var _useState2 = React.useState(false),
610
+ climMaxDragging = _useState2[0],
611
+ setClimMaxDragging = _useState2[1];
612
+
613
+ var x,
614
+ y,
615
+ dx,
616
+ dy = 0;
617
+ var id = null;
618
+ var init = [0, 0];
619
+ var scale = setClimStep;
620
+
621
+ var draggingFunction = function draggingFunction(e) {
622
+ if (id === 'min' && !climMinDragging) setClimMinDragging(true);
623
+ if (id === 'max' && !climMaxDragging) setClimMaxDragging(true);
624
+ dx = e.pageX - x;
625
+ dy = e.pageY - y;
626
+
627
+ if (horizontal) {
628
+ if (id === 'min') setClim(function (prev) {
629
+ return [Math.min(init[0] + dx * scale, init[1]), prev[1]];
630
+ });
631
+ if (id === 'max') setClim(function (prev) {
632
+ return [prev[0], Math.max(init[1] + dx * scale, init[0])];
633
+ });
634
+ } else {
635
+ if (id === 'min') setClim(function (prev) {
636
+ return [Math.min(init[0] - dy * scale, init[1]), prev[1]];
637
+ });
638
+ if (id === 'max') setClim(function (prev) {
639
+ return [prev[0], Math.max(init[1] - dy * scale, init[0])];
640
+ });
641
+ }
642
+ };
643
+
644
+ var handleMouseDown = function handleMouseDown(e) {
645
+ y = e.pageY;
646
+ x = e.pageX;
647
+ id = e.target.id;
648
+ init = clim;
649
+ document.body.setAttribute('style', horizontal ? 'cursor: ew-resize !important' : 'cursor: ns-resize !important');
650
+ document.addEventListener('mousemove', draggingFunction);
651
+
652
+ var updater = function updater() {
653
+ document.body.setAttribute('style', 'cursor: unset');
654
+ document.removeEventListener('mousemove', draggingFunction);
655
+ window.removeEventListener('mouseup', updater);
656
+ if (id === 'min') setClimMinDragging(false);
657
+ if (id === 'max') setClimMaxDragging(false);
658
+ };
659
+
660
+ window.addEventListener('mouseup', updater);
661
+ };
662
+
663
+ var increment = function increment(e) {
664
+ if (climRef[0].current === document.activeElement) {
665
+ e.preventDefault();
666
+ setClim(function (prev) {
667
+ return [Math.min(prev[0] + scale, prev[1]), prev[1]];
668
+ });
669
+ climRef[0].current.focus();
670
+ }
671
+
672
+ if (climRef[1].current === document.activeElement) {
673
+ e.preventDefault();
674
+ setClim(function (prev) {
675
+ return [prev[0], Math.max(prev[1] + scale, prev[0])];
676
+ });
677
+ climRef[1].current.focus();
678
+ }
679
+ };
680
+
681
+ var decrement = function decrement(e) {
682
+ if (climRef[0].current === document.activeElement) {
683
+ e.preventDefault();
684
+ setClim(function (prev) {
685
+ return [Math.min(prev[0] - scale, prev[1]), prev[1]];
686
+ });
687
+ climRef[0].current.focus();
688
+ }
689
+
690
+ if (climRef[1].current === document.activeElement) {
691
+ e.preventDefault();
692
+ setClim(function (prev) {
693
+ return [prev[0], Math.max(prev[1] - scale, prev[0])];
694
+ });
695
+ climRef[1].current.focus();
696
+ }
697
+ };
698
+
699
+ React.useEffect(function () {
700
+ var listener = function listener(e) {
701
+ if (['ArrowUp', 'ArrowRight'].includes(e.code) || ['ArrowUp', 'ArrowRight'].includes(e.key)) {
702
+ increment(e);
703
+ }
704
+
705
+ if (['ArrowDown', 'ArrowLeft'].includes(e.code) || ['ArrowDown', 'ArrowLeft'].includes(e.key)) {
706
+ decrement(e);
707
+ }
708
+ };
709
+
710
+ window.addEventListener('keydown', listener);
711
+ return function () {
712
+ window.removeEventListener('keydown', listener);
713
+ };
714
+ }, [clim]);
715
+
568
716
  var ClimMin = function ClimMin() {
569
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
570
- sx: _extends({}, sx$2.clim, {
571
- ml: label ? horizontal ? '10px' : '2px' : 0,
717
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
718
+ id: "min",
719
+ ref: climRef[0],
720
+ tabIndex: 0,
721
+ sx: _extends({}, styles.clim(setClim), {
722
+ ml: label ? horizontal ? bottom ? '0px' : '10px' : ['2px', '1px', '1px', '2px'] : 0,
572
723
  mr: horizontal ? ['2px', '1px', '1px', '2px'] : 0,
573
- mb: horizontal ? 0 : ['-2px', '-2px', '-2px', '-3px']
574
- })
724
+ mb: horizontal ? 0 : ['-2px', '-2px', '-2px', '-3px'],
725
+ borderBottom: setClim ? climMinDragging ? function (_ref7) {
726
+ var colors = _ref7.colors;
727
+ return "solid 1px " + colors.primary;
728
+ } : function (_ref8) {
729
+ var colors = _ref8.colors;
730
+ return "solid 1px " + colors.secondary;
731
+ } : 'unset',
732
+ cursor: setClim ? horizontal ? 'ew-resize' : 'ns-resize' : 'default'
733
+ }, sxClim),
734
+ onMouseDown: setClim ? handleMouseDown : function () {},
735
+ onClick: function onClick() {
736
+ return climRef[0].current.focus();
737
+ }
575
738
  }, format(clim[0]));
576
739
  };
577
740
 
578
741
  var ClimMax = function ClimMax() {
579
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
580
- sx: _extends({}, sx$2.clim, {
581
- ml: horizontal ? ['2px', '1px', '1px', '2px'] : '2px',
582
- mt: horizontal ? 0 : ['-2px', '-3px', '-3px', '-3px']
583
- })
742
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
743
+ id: "max",
744
+ ref: climRef[1],
745
+ tabIndex: 0,
746
+ sx: _extends({}, styles.clim(setClim), {
747
+ ml: horizontal ? ['2px', '1px', '1px', '2px'] : ['2px', '1px', '1px', '2px'],
748
+ mt: horizontal ? 0 : ['-2px', '-3px', '-3px', '-3px'],
749
+ borderBottom: setClim ? climMaxDragging ? function (_ref9) {
750
+ var colors = _ref9.colors;
751
+ return "solid 1px " + colors.primary;
752
+ } : function (_ref10) {
753
+ var colors = _ref10.colors;
754
+ return "solid 1px " + colors.secondary;
755
+ } : 'unset',
756
+ cursor: setClim ? horizontal ? 'ew-resize' : 'ns-resize' : 'default'
757
+ }, sxClim),
758
+ onMouseDown: setClim ? handleMouseDown : function () {},
759
+ onClick: function onClick() {
760
+ return climRef[1].current.focus();
761
+ }
584
762
  }, format(clim[1]));
585
763
  };
586
764
 
587
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
588
- sx: _extends({}, props.sx, {
765
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, _extends({}, props, {
766
+ sx: _extends({
589
767
  flexDirection: 'row',
590
- alignItems: 'center',
768
+ alignItems: 'start',
591
769
  justifyContent: 'flex-start',
592
- gap: ['3px', '6px', '6px', '7px']
593
- })
594
- }, label && /*#__PURE__*/React__default["default"].createElement(Label, {
770
+ gap: ['3px', '6px', '6px', '7px'],
771
+ height: !horizontal ? '100%' : 'unset'
772
+ }, sx)
773
+ }), label && /*#__PURE__*/React__default['default'].createElement(Label, {
595
774
  label: label,
596
775
  units: units,
597
776
  horizontal: horizontal
598
- }), horizontal && clim && /*#__PURE__*/React__default["default"].createElement(ClimMin, null), /*#__PURE__*/React__default["default"].createElement(Gradient, {
777
+ }), /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, {
778
+ sx: {
779
+ flexGrow: horizontal ? 1 : 'unset',
780
+ flexDirection: 'column',
781
+ ml: bottom && label ? '4px' : '0px',
782
+ height: !horizontal ? '100%' : 'unset'
783
+ }
784
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, {
785
+ sx: {
786
+ gap: ['3px', '6px', '6px', '7px'],
787
+ height: !horizontal ? '100%' : 'unset'
788
+ }
789
+ }, horizontal && clim && !bottom && /*#__PURE__*/React__default['default'].createElement(ClimMin, null), /*#__PURE__*/React__default['default'].createElement(Gradient, {
599
790
  colormap: colormap,
600
791
  horizontal: horizontal,
601
792
  discrete: discrete,
602
793
  width: width,
603
794
  height: height
604
- }), horizontal && clim && /*#__PURE__*/React__default["default"].createElement(ClimMax, null), !horizontal && /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
795
+ }), horizontal && clim && !bottom && /*#__PURE__*/React__default['default'].createElement(ClimMax, null)), horizontal && clim && bottom && /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, {
796
+ sx: {
797
+ justifyContent: 'space-between'
798
+ }
799
+ }, /*#__PURE__*/React__default['default'].createElement(ClimMin, null), /*#__PURE__*/React__default['default'].createElement(ClimMax, null))), !horizontal && /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, {
605
800
  sx: {
606
801
  flexDirection: 'column-reverse',
607
802
  justifyContent: 'space-between',
608
803
  height: height || DIMENSIONS.height
609
804
  }
610
- }, clim && /*#__PURE__*/React__default["default"].createElement(ClimMin, null), clim && /*#__PURE__*/React__default["default"].createElement(ClimMax, null)));
805
+ }, clim && /*#__PURE__*/React__default['default'].createElement(ClimMin, null), clim && /*#__PURE__*/React__default['default'].createElement(ClimMax, null)));
611
806
  };
612
807
 
613
- var _excluded$b = ["start", "width", "dl", "dr", "children", "sx"];
614
-
615
808
  var Column = function Column(_ref) {
616
809
  var start = _ref.start,
617
810
  width = _ref.width,
@@ -619,7 +812,7 @@ var Column = function Column(_ref) {
619
812
  dr = _ref.dr,
620
813
  children = _ref.children,
621
814
  sx = _ref.sx,
622
- props = _objectWithoutPropertiesLoose(_ref, _excluded$b);
815
+ props = _objectWithoutPropertiesLoose(_ref, ["start", "width", "dl", "dr", "children", "sx"]);
623
816
 
624
817
  start = start || 'auto';
625
818
  width = width || 'auto';
@@ -682,7 +875,7 @@ var Column = function Column(_ref) {
682
875
  }
683
876
  }
684
877
 
685
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({}, props, {
878
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({}, props, {
686
879
  sx: _extends({
687
880
  gridColumnStart: start,
688
881
  gridColumnEnd: end,
@@ -699,92 +892,92 @@ var Meta = function Meta(_ref) {
699
892
  title = title ? title : 'carbonplan';
700
893
  description = description ? description : 'Data and science for climate action.';
701
894
  card = card ? card : 'https://images.carbonplan.org/social/homepage.png';
702
- return /*#__PURE__*/React__default["default"].createElement(Head__default["default"], null, /*#__PURE__*/React__default["default"].createElement("title", null, title), /*#__PURE__*/React__default["default"].createElement("meta", {
895
+ return /*#__PURE__*/React__default['default'].createElement(Head__default['default'], null, /*#__PURE__*/React__default['default'].createElement("title", null, title), /*#__PURE__*/React__default['default'].createElement("meta", {
703
896
  name: "description",
704
897
  content: description
705
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
898
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
706
899
  name: "viewport",
707
900
  content: "initial-scale=1.0, width=device-width"
708
- }), /*#__PURE__*/React__default["default"].createElement("link", {
901
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
709
902
  rel: "canonical",
710
903
  content: "https://carbonplan.org/"
711
- }), /*#__PURE__*/React__default["default"].createElement("link", {
904
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
712
905
  rel: "icon",
713
906
  type: "image/svg+xml",
714
907
  href: "https://images.carbonplan.org/favicon.svg"
715
- }), /*#__PURE__*/React__default["default"].createElement("link", {
908
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
716
909
  rel: "preload",
717
910
  href: "https://fonts.carbonplan.org/relative/relative-book-pro.woff2",
718
911
  as: "font",
719
912
  type: "font/woff2",
720
913
  crossOrigin: "anonymous"
721
- }), /*#__PURE__*/React__default["default"].createElement("link", {
914
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
722
915
  rel: "preload",
723
916
  href: "https://fonts.carbonplan.org/relative/relative-medium-pro.woff2",
724
917
  as: "font",
725
918
  type: "font/woff2",
726
919
  crossOrigin: "anonymous"
727
- }), /*#__PURE__*/React__default["default"].createElement("link", {
920
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
728
921
  rel: "preload",
729
922
  href: "https://fonts.carbonplan.org/relative/relative-mono-11-pitch-pro.woff2",
730
923
  as: "font",
731
924
  type: "font/woff2",
732
925
  crossOrigin: "anonymous"
733
- }), /*#__PURE__*/React__default["default"].createElement("link", {
926
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
734
927
  rel: "preload",
735
928
  href: "https://fonts.carbonplan.org/relative/relative-faux-book-pro.woff2",
736
929
  as: "font",
737
930
  type: "font/woff2",
738
931
  crossOrigin: "anonymous"
739
- }), /*#__PURE__*/React__default["default"].createElement("link", {
932
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
740
933
  rel: "manifest",
741
934
  href: "https://images.carbonplan.org/manifest.json"
742
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
935
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
743
936
  name: "theme-color",
744
937
  content: "#1b1e23"
745
- }), /*#__PURE__*/React__default["default"].createElement("link", {
938
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
746
939
  rel: "alternate icon",
747
940
  type: "image/png",
748
941
  href: "https://images.carbonplan.org/favicon.png"
749
- }), /*#__PURE__*/React__default["default"].createElement("link", {
942
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
750
943
  rel: "mask-icon",
751
944
  href: "https://images.carbonplan.org/safari-pinned-tab.svg",
752
945
  color: "#000000"
753
- }), /*#__PURE__*/React__default["default"].createElement("link", {
946
+ }), /*#__PURE__*/React__default['default'].createElement("link", {
754
947
  rel: "apple-touch-icon",
755
948
  sizes: "180x180",
756
949
  href: "https://images.carbonplan.org/apple-touch-icon.png"
757
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
950
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
758
951
  name: "msapplication-TileColor",
759
952
  content: "#1b1e23"
760
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
953
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
761
954
  name: "msapplication-TileImage",
762
955
  content: "https://images.carbonplan.org/mstile-144x144.png"
763
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
956
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
764
957
  name: "msapplication-config",
765
958
  content: "https://images.carbonplan.org/browserconfig.xml"
766
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
959
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
767
960
  property: "og:title",
768
961
  content: title
769
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
962
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
770
963
  property: "og:description",
771
964
  content: description
772
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
965
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
773
966
  property: "og:image",
774
967
  content: card
775
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
968
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
776
969
  property: "og:url",
777
970
  content: "https://carbonplan.org"
778
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
971
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
779
972
  name: "twitter:title",
780
973
  content: title
781
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
974
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
782
975
  name: "twitter:description",
783
976
  content: description
784
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
977
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
785
978
  name: "twitter:image",
786
979
  content: card
787
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
980
+ }), /*#__PURE__*/React__default['default'].createElement("meta", {
788
981
  name: "twitter:card",
789
982
  content: "summary_large_image"
790
983
  }));
@@ -793,47 +986,45 @@ var Meta = function Meta(_ref) {
793
986
  var Logo = function Logo(_ref) {
794
987
  var props = _extends({}, _ref);
795
988
 
796
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
989
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
797
990
  as: "svg",
798
991
  width: "150",
799
992
  fill: "currentColor",
800
993
  stroke: "none",
801
994
  viewBox: "0 0 151.1 28.8"
802
- }, props), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
995
+ }, props), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
803
996
  d: "M9.7,20.1c-1.3-1.4-2-3.1-2-5.2c0-2.1,0.7-3.9,2-5.2c1.3-1.4,3-2,5.1-2c1.7,0,3.1,0.4,4.3,1.3 c1.1,0.9,1.8,2.1,2.1,3.5c0,0.1,0,0.2,0,0.3s-0.1,0.2-0.2,0.2h-2.3c-0.2,0-0.3-0.1-0.4-0.2c-0.3-0.8-0.7-1.4-1.3-1.8 c-0.6-0.4-1.4-0.6-2.2-0.6c-1.3,0-2.3,0.4-3,1.2c-0.8,0.8-1.1,1.9-1.1,3.4c0,1.5,0.4,2.6,1.1,3.4c0.8,0.8,1.8,1.2,3,1.2 c0.8,0,1.6-0.2,2.2-0.6c0.6-0.4,1.1-1,1.3-1.8c0.1-0.2,0.2-0.2,0.4-0.3H21c0.1,0,0.2,0.1,0.2,0.2c0,0.1,0,0.2,0,0.3 c-0.3,1.4-1,2.6-2.1,3.5c-1.1,0.9-2.5,1.3-4.3,1.3C12.7,22.1,11,21.4,9.7,20.1z"
804
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
997
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
805
998
  d: "M22.5,17.6c0-1.5,0.5-2.6,1.6-3.5c1.1-0.8,2.4-1.2,4.1-1.2c1.1,0,2.4,0.2,3.7,0.6V13c0-0.9-0.3-1.6-0.8-2.1 c-0.5-0.5-1.2-0.8-2.2-0.8c-1.4,0-2.4,0.6-2.9,1.8c-0.1,0.2-0.2,0.2-0.4,0.2h-2.3c-0.1,0-0.2-0.1-0.2-0.2c0-0.1,0-0.2,0-0.3 c0.3-1.2,0.9-2.2,1.9-2.9c1-0.8,2.3-1.1,3.8-1.1C30.6,7.6,32,8.1,33,9c1,0.9,1.5,2.2,1.5,3.8V19c0,1.1,0.2,1.9,0.5,2.6 c0,0.1,0.1,0.1,0.1,0.1c0,0.1-0.1,0.1-0.3,0.1h-2.8c-0.2,0-0.3-0.1-0.3-0.3v-1c-1.1,1.1-2.5,1.6-4.3,1.6c-1.4,0-2.6-0.4-3.6-1.2 C23,20.1,22.5,19,22.5,17.6z M25.4,17.5c0,0.6,0.2,1.1,0.7,1.5c0.4,0.4,1.1,0.5,1.9,0.5c1.1,0,2-0.3,2.8-0.9 c0.8-0.6,1.1-1.5,1.1-2.6c-1.3-0.4-2.5-0.6-3.6-0.6c-0.8,0-1.5,0.2-2.1,0.5C25.7,16.3,25.4,16.8,25.4,17.5z"
806
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
999
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
807
1000
  d: "M37,21.6V8.2c0-0.2,0.1-0.3,0.3-0.3h2.2c0.2,0,0.3,0.1,0.3,0.3v1.1c1-1.1,2.3-1.6,3.7-1.6 c0.8,0,1.7,0.1,2.5,0.4c0.2,0.1,0.3,0.3,0.3,0.5v2.2c0,0.2-0.1,0.3-0.2,0.3c0,0-0.1,0-0.2-0.1c-1.1-0.5-2-0.8-2.9-0.8 c-0.9,0-1.7,0.4-2.3,1.1c-0.6,0.7-0.9,1.7-0.9,3v7.3c0,0.2-0.1,0.3-0.3,0.3h-2.2C37.1,21.8,37,21.7,37,21.6z"
808
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1001
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
809
1002
  d: "M47.6,21.6V2.7c0-0.2,0.1-0.3,0.3-0.3H50c0.2,0,0.3,0.1,0.3,0.3v6.5c1.3-1.1,2.7-1.6,4.3-1.6 c1.9,0,3.4,0.7,4.6,2c1.1,1.3,1.7,3.1,1.7,5.3c0,2.2-0.6,4-1.7,5.3c-1.1,1.3-2.7,2-4.6,2c-1.8,0-3.2-0.5-4.3-1.6v1 c0,0.2-0.1,0.3-0.3,0.3h-2.2C47.7,21.8,47.6,21.7,47.6,21.6z M51.2,11.5c-0.7,0.9-1.1,2-1.1,3.3c0,1.4,0.4,2.5,1.1,3.3 s1.7,1.3,2.9,1.3c1.2,0,2.2-0.4,2.9-1.3c0.7-0.9,1.1-2,1.1-3.3c0-1.4-0.4-2.5-1.1-3.3c-0.7-0.9-1.7-1.3-2.9-1.3 C52.9,10.2,51.9,10.7,51.2,11.5z"
810
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1003
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
811
1004
  d: "M64.3,20.1c-1.4-1.4-2.1-3.1-2.1-5.2c0-2.1,0.7-3.9,2.1-5.2c1.4-1.4,3.1-2,5.2-2c2.1,0,3.8,0.7,5.2,2 c1.4,1.4,2.1,3.1,2.1,5.2c0,2.1-0.7,3.9-2.1,5.2c-1.4,1.4-3.1,2-5.2,2C67.4,22.1,65.7,21.4,64.3,20.1z M66.4,11.5 c-0.8,0.8-1.2,2-1.2,3.4c0,1.4,0.4,2.5,1.2,3.4s1.9,1.3,3.1,1.3c1.3,0,2.3-0.4,3.1-1.3c0.8-0.8,1.2-2,1.2-3.4 c0-1.4-0.4-2.5-1.2-3.4c-0.8-0.8-1.9-1.3-3.1-1.3C68.2,10.2,67.2,10.7,66.4,11.5z"
812
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1005
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
813
1006
  d: "M78.7,21.6V8.2c0-0.2,0.1-0.3,0.3-0.3h2.2c0.2,0,0.3,0.1,0.3,0.3v1.3c1.3-1.2,2.7-1.8,4.4-1.8 c1.5,0,2.7,0.4,3.5,1.3c0.8,0.9,1.3,2,1.3,3.6v9.1c0,0.2-0.1,0.3-0.3,0.3h-2.2c-0.2,0-0.3-0.1-0.3-0.3v-8.3c0-2-0.9-3.1-2.8-3.1 c-1.1,0-1.9,0.4-2.7,1.2c-0.7,0.8-1.1,2-1.1,3.5v6.6c0,0.2-0.1,0.3-0.3,0.3h-2.2C78.7,21.8,78.7,21.7,78.7,21.6z"
814
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1007
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
815
1008
  d: "M101.7,27.1V8.2c0-0.2,0.1-0.3,0.3-0.3h2.2c0.2,0,0.3,0.1,0.3,0.3v1c1.1-1.1,2.5-1.6,4.3-1.6 c1.9,0,3.4,0.7,4.6,2s1.7,3.1,1.7,5.3c0,2.2-0.6,4-1.7,5.3c-1.1,1.3-2.7,2-4.6,2c-1.5,0-3-0.5-4.3-1.6v6.6c0,0.2-0.1,0.3-0.3,0.3 H102C101.8,27.3,101.7,27.2,101.7,27.1z M105.3,11.5c-0.7,0.9-1.1,2-1.1,3.3c0,1.4,0.4,2.5,1.1,3.3s1.7,1.3,2.9,1.3 c1.2,0,2.2-0.4,2.9-1.3c0.7-0.9,1.1-2,1.1-3.3c0-1.4-0.4-2.5-1.1-3.3c-0.7-0.9-1.7-1.3-2.9-1.3C107,10.2,106,10.7,105.3,11.5z"
816
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1009
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
817
1010
  d: "M117.2,21.6V2.7c0-0.2,0.1-0.3,0.3-0.3h2.2c0.2,0,0.3,0.1,0.3,0.3v18.9c0,0.2-0.1,0.3-0.3,0.3h-2.2 C117.3,21.8,117.2,21.7,117.2,21.6z"
818
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1011
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
819
1012
  d: "M122,17.6c0-1.5,0.5-2.6,1.6-3.5c1.1-0.8,2.4-1.2,4.1-1.2c1.1,0,2.4,0.2,3.7,0.6V13c0-0.9-0.3-1.6-0.8-2.1 c-0.5-0.5-1.2-0.8-2.2-0.8c-1.4,0-2.4,0.6-2.9,1.8c-0.1,0.2-0.2,0.2-0.4,0.2h-2.3c-0.1,0-0.2-0.1-0.2-0.2c0-0.1,0-0.2,0-0.3 c0.3-1.2,0.9-2.2,1.9-2.9c1-0.8,2.3-1.1,3.8-1.1c1.7,0,3.1,0.5,4.2,1.4s1.5,2.2,1.5,3.8V19c0,1.1,0.2,1.9,0.5,2.6 c0,0.1,0.1,0.1,0.1,0.1c0,0.1-0.1,0.1-0.3,0.1h-2.8c-0.2,0-0.3-0.1-0.3-0.3v-1c-1.1,1.1-2.5,1.6-4.3,1.6c-1.4,0-2.6-0.4-3.6-1.2 C122.5,20.1,122,19,122,17.6z M124.9,17.5c0,0.6,0.2,1.1,0.7,1.5c0.4,0.4,1.1,0.5,1.9,0.5c1.1,0,2-0.3,2.8-0.9 c0.8-0.6,1.1-1.5,1.1-2.6c-1.3-0.4-2.5-0.6-3.6-0.6c-0.8,0-1.5,0.2-2.1,0.5C125.2,16.3,124.9,16.8,124.9,17.5z"
820
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1013
+ })), /*#__PURE__*/React__default['default'].createElement("g", null, /*#__PURE__*/React__default['default'].createElement("path", {
821
1014
  d: "M136.9,21.6V8.2c0-0.2,0.1-0.3,0.3-0.3h2.2c0.2,0,0.3,0.1,0.3,0.3v1.3c1.3-1.2,2.7-1.8,4.4-1.8 c1.5,0,2.7,0.4,3.5,1.3c0.8,0.9,1.3,2,1.3,3.6v9.1c0,0.2-0.1,0.3-0.3,0.3h-2.2c-0.2,0-0.3-0.1-0.3-0.3v-8.3c0-2-0.9-3.1-2.8-3.1 c-1.1,0-1.9,0.4-2.7,1.2c-0.7,0.8-1.1,2-1.1,3.5v6.6c0,0.2-0.1,0.3-0.3,0.3h-2.2C137,21.8,136.9,21.7,136.9,21.6z"
822
- })), /*#__PURE__*/React__default["default"].createElement("path", {
1015
+ })), /*#__PURE__*/React__default['default'].createElement("path", {
823
1016
  d: "M97.6,14.9c0,4.2-0.6,8.3-1.6,12.3c0,0.1-0.1,0.2-0.2,0.2h-2.4c-0.1,0-0.2-0.1-0.2-0.3c1.1-3.9,1.7-8,1.7-12.2 s-0.6-8.3-1.7-12.2c0-0.1,0.1-0.3,0.2-0.3l2.4,0c0.1,0,0.2,0.1,0.2,0.2C97.1,6.5,97.6,10.6,97.6,14.9z"
824
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1017
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
825
1018
  d: "M1.4,14.9C1.4,10.6,2,6.5,3,2.6c0-0.1,0.1-0.2,0.2-0.2l2.4,0c0.1,0,0.2,0.1,0.2,0.3c-1.1,3.9-1.7,8-1.7,12.2 s0.6,8.3,1.7,12.2c0,0.1-0.1,0.3-0.2,0.3H3.3c-0.1,0-0.2-0.1-0.2-0.2C2,23.2,1.4,19.1,1.4,14.9z"
826
1019
  })));
827
1020
  };
828
1021
 
829
- var _excluded$a = ["children", "sx", "columns", "gap"];
830
-
831
1022
  var Row = function Row(_ref) {
832
1023
  var children = _ref.children,
833
1024
  sx = _ref.sx,
834
1025
  columns = _ref.columns,
835
1026
  gap = _ref.gap,
836
- props = _objectWithoutPropertiesLoose(_ref, _excluded$a);
1027
+ props = _objectWithoutPropertiesLoose(_ref, ["children", "sx", "columns", "gap"]);
837
1028
 
838
1029
  var makeArray = function makeArray(input) {
839
1030
  if (!Array.isArray(input)) {
@@ -876,7 +1067,7 @@ var Row = function Row(_ref) {
876
1067
  columns = [6, 8, 12, 12];
877
1068
  }
878
1069
 
879
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Grid, _extends({}, props, {
1070
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Grid, _extends({}, props, {
880
1071
  columns: columns,
881
1072
  sx: _extends({
882
1073
  columnGap: columnGap,
@@ -885,14 +1076,12 @@ var Row = function Row(_ref) {
885
1076
  }), children);
886
1077
  };
887
1078
 
888
- var _excluded$9 = ["value", "sx"];
889
-
890
1079
  var Menu = function Menu(_ref) {
891
1080
  var value = _ref.value,
892
1081
  sx = _ref.sx,
893
- props = _objectWithoutPropertiesLoose(_ref, _excluded$9);
1082
+ props = _objectWithoutPropertiesLoose(_ref, ["value", "sx"]);
894
1083
 
895
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, _extends({
1084
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.IconButton, _extends({
896
1085
  sx: _extends({
897
1086
  cursor: 'pointer',
898
1087
  fill: 'none',
@@ -908,7 +1097,7 @@ var Menu = function Menu(_ref) {
908
1097
  }
909
1098
  }, sx),
910
1099
  "aria-label": "Toggle Menu"
911
- }, props), !value && /*#__PURE__*/React__default["default"].createElement("svg", {
1100
+ }, props), !value && /*#__PURE__*/React__default['default'].createElement("svg", {
912
1101
  style: {
913
1102
  width: '50px',
914
1103
  height: '30px',
@@ -917,34 +1106,34 @@ var Menu = function Menu(_ref) {
917
1106
  },
918
1107
  xmlns: "http://www.w3.org/2000/svg",
919
1108
  viewBox: "0 0 68 36"
920
- }, /*#__PURE__*/React__default["default"].createElement("line", {
1109
+ }, /*#__PURE__*/React__default['default'].createElement("line", {
921
1110
  x1: "52",
922
1111
  y1: "29.9",
923
1112
  x2: "16",
924
1113
  y2: "29.9"
925
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1114
+ }), /*#__PURE__*/React__default['default'].createElement("line", {
926
1115
  x1: "52",
927
1116
  y1: "6.1",
928
1117
  x2: "16",
929
1118
  y2: "6.1"
930
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1119
+ }), /*#__PURE__*/React__default['default'].createElement("line", {
931
1120
  x1: "52",
932
1121
  y1: "18",
933
1122
  x2: "16",
934
1123
  y2: "18"
935
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1124
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
936
1125
  style: {
937
1126
  transition: 'all 0.2s'
938
1127
  },
939
1128
  className: "paren",
940
1129
  d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
941
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1130
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
942
1131
  style: {
943
1132
  transition: 'all 0.2s'
944
1133
  },
945
1134
  className: "paren",
946
1135
  d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
947
- })), value && /*#__PURE__*/React__default["default"].createElement("svg", {
1136
+ })), value && /*#__PURE__*/React__default['default'].createElement("svg", {
948
1137
  style: {
949
1138
  width: '50px',
950
1139
  height: '30px',
@@ -953,23 +1142,23 @@ var Menu = function Menu(_ref) {
953
1142
  },
954
1143
  xmlns: "http://www.w3.org/2000/svg",
955
1144
  viewBox: "0 0 68 36"
956
- }, /*#__PURE__*/React__default["default"].createElement("line", {
1145
+ }, /*#__PURE__*/React__default['default'].createElement("line", {
957
1146
  x1: "50.85",
958
1147
  y1: "29.79",
959
1148
  x2: "17.15",
960
1149
  y2: "6.21"
961
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1150
+ }), /*#__PURE__*/React__default['default'].createElement("line", {
962
1151
  x1: "17.15",
963
1152
  y1: "29.79",
964
1153
  x2: "50.85",
965
1154
  y2: "6.21"
966
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1155
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
967
1156
  style: {
968
1157
  transition: 'all 0.2s'
969
1158
  },
970
1159
  className: "paren",
971
1160
  d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
972
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1161
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
973
1162
  style: {
974
1163
  transition: 'all 0.2s'
975
1164
  },
@@ -978,150 +1167,7 @@ var Menu = function Menu(_ref) {
978
1167
  })));
979
1168
  };
980
1169
 
981
- var _excluded$8 = ["value", "sx"];
982
-
983
- var Settings = function Settings(_ref) {
984
- var value = _ref.value,
985
- sx = _ref.sx,
986
- props = _objectWithoutPropertiesLoose(_ref, _excluded$8);
987
-
988
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, _extends({
989
- sx: _extends({
990
- cursor: 'pointer',
991
- fill: 'none',
992
- strokeWidth: '2px',
993
- stroke: 'text',
994
- '.paren': {
995
- opacity: '0'
996
- },
997
- '@media (hover: hover) and (pointer: fine)': {
998
- '&:hover .paren': {
999
- opacity: '1'
1000
- }
1001
- }
1002
- }, sx),
1003
- "aria-label": "Toggle Menu"
1004
- }, props), !value && /*#__PURE__*/React__default["default"].createElement("svg", {
1005
- style: {
1006
- width: '50px',
1007
- height: '30px',
1008
- transform: 'scale(2)',
1009
- marginTop: '-3px'
1010
- },
1011
- xmlns: "http://www.w3.org/2000/svg",
1012
- viewBox: "0 0 68 36"
1013
- }, /*#__PURE__*/React__default["default"].createElement("line", {
1014
- x1: "24",
1015
- y1: "2.1",
1016
- x2: "24",
1017
- y2: "6.1"
1018
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1019
- x1: "24",
1020
- y1: "24.1",
1021
- x2: "24",
1022
- y2: "33.9"
1023
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1024
- x1: "44",
1025
- y1: "2.1",
1026
- x2: "44",
1027
- y2: "12.1"
1028
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1029
- x1: "44",
1030
- y1: "30.1",
1031
- x2: "44",
1032
- y2: "33.9"
1033
- }), /*#__PURE__*/React__default["default"].createElement("circle", {
1034
- cx: "24",
1035
- cy: "15.1",
1036
- r: "5"
1037
- }), /*#__PURE__*/React__default["default"].createElement("circle", {
1038
- cx: "44",
1039
- cy: "21.1",
1040
- r: "5"
1041
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1042
- style: {
1043
- transition: 'all 0.2s'
1044
- },
1045
- className: "paren",
1046
- d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
1047
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1048
- style: {
1049
- transition: 'all 0.2s'
1050
- },
1051
- className: "paren",
1052
- d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
1053
- })), value && /*#__PURE__*/React__default["default"].createElement("svg", {
1054
- style: {
1055
- width: '50px',
1056
- height: '30px',
1057
- transform: 'scale(2)',
1058
- marginTop: '-3px'
1059
- },
1060
- xmlns: "http://www.w3.org/2000/svg",
1061
- viewBox: "0 0 68 36"
1062
- }, /*#__PURE__*/React__default["default"].createElement("line", {
1063
- x1: "50.85",
1064
- y1: "29.79",
1065
- x2: "17.15",
1066
- y2: "6.21"
1067
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1068
- x1: "17.15",
1069
- y1: "29.79",
1070
- x2: "50.85",
1071
- y2: "6.21"
1072
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1073
- style: {
1074
- transition: 'all 0.2s'
1075
- },
1076
- className: "paren",
1077
- d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
1078
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1079
- style: {
1080
- transition: 'all 0.2s'
1081
- },
1082
- className: "paren",
1083
- d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
1084
- })));
1085
- };
1086
-
1087
- var _excluded$7 = ["sx"];
1088
-
1089
- var Dimmer = function Dimmer(_ref) {
1090
- var sx = _ref.sx,
1091
- props = _objectWithoutPropertiesLoose(_ref, _excluded$7);
1092
-
1093
- var _useColorMode = themeUi.useColorMode(),
1094
- colorMode = _useColorMode[0],
1095
- setColorMode = _useColorMode[1];
1096
-
1097
- var toggle = React.useCallback(function () {
1098
- setColorMode(colorMode === 'light' ? 'dark' : 'light');
1099
- }, [colorMode]);
1100
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, _extends({
1101
- "aria-label": "Toggle dark mode",
1102
- onClick: toggle,
1103
- role: "checkbox",
1104
- sx: _extends({
1105
- width: 32,
1106
- height: 32,
1107
- display: 'inline-block',
1108
- cursor: 'pointer',
1109
- color: 'secondary'
1110
- }, sx)
1111
- }, props), /*#__PURE__*/React__default["default"].createElement(icons.Sun, {
1112
- sx: {
1113
- strokeWidth: '1.75',
1114
- transition: 'stroke 0.15s',
1115
- '@media (hover: hover) and (pointer: fine)': {
1116
- '&:hover': {
1117
- stroke: 'primary'
1118
- }
1119
- }
1120
- }
1121
- }));
1122
- };
1123
-
1124
- var sx$1 = {
1170
+ var sx = {
1125
1171
  link: function link(current, label, first) {
1126
1172
  if (first === void 0) {
1127
1173
  first = false;
@@ -1169,7 +1215,7 @@ var links = [{
1169
1215
  }];
1170
1216
 
1171
1217
  var HoverArrow = function HoverArrow() {
1172
- return /*#__PURE__*/React__default["default"].createElement(icons.Arrow, {
1218
+ return /*#__PURE__*/React__default['default'].createElement(icons.Arrow, {
1173
1219
  id: "arrow",
1174
1220
  sx: {
1175
1221
  pointerEvents: 'none',
@@ -1197,20 +1243,20 @@ var Nav = function Nav(_ref) {
1197
1243
  var href = mode === 'remote' ? 'https://carbonplan.org/' + url : '/' + url;
1198
1244
 
1199
1245
  if (mode === 'homepage' || mode === 'local' && nav === url) {
1200
- return /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
1246
+ return /*#__PURE__*/React__default['default'].createElement(NextLink__default['default'], {
1201
1247
  href: href,
1202
1248
  passHref: true
1203
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1249
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Link, {
1204
1250
  onClick: function onClick() {
1205
1251
  if (nav === url) setExpanded(false);
1206
1252
  },
1207
- sx: sx$1.link(nav, url, first)
1208
- }, /*#__PURE__*/React__default["default"].createElement(HoverArrow, null), display));
1253
+ sx: sx.link(nav, url, first)
1254
+ }, /*#__PURE__*/React__default['default'].createElement(HoverArrow, null), display));
1209
1255
  } else {
1210
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1256
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Link, {
1211
1257
  href: href,
1212
- sx: sx$1.link(nav, url, first)
1213
- }, /*#__PURE__*/React__default["default"].createElement(HoverArrow, null), display);
1258
+ sx: sx.link(nav, url, first)
1259
+ }, /*#__PURE__*/React__default['default'].createElement(HoverArrow, null), display);
1214
1260
  }
1215
1261
  };
1216
1262
 
@@ -1220,7 +1266,7 @@ var NavGroup = function NavGroup(_ref2) {
1220
1266
  mode = _ref2.mode,
1221
1267
  setExpanded = _ref2.setExpanded;
1222
1268
  return links.map(function (d, i) {
1223
- return /*#__PURE__*/React__default["default"].createElement(Nav, {
1269
+ return /*#__PURE__*/React__default['default'].createElement(Nav, {
1224
1270
  key: i,
1225
1271
  link: d,
1226
1272
  mode: mode,
@@ -1235,8 +1281,7 @@ var Header = function Header(_ref3) {
1235
1281
  var status = _ref3.status,
1236
1282
  mode = _ref3.mode,
1237
1283
  nav = _ref3.nav,
1238
- dimmer = _ref3.dimmer,
1239
- settings = _ref3.settings;
1284
+ menuItems = _ref3.menuItems;
1240
1285
 
1241
1286
  var _useState = React.useState(false),
1242
1287
  expanded = _useState[0],
@@ -1246,46 +1291,45 @@ var Header = function Header(_ref3) {
1246
1291
  setExpanded(!expanded);
1247
1292
  };
1248
1293
 
1249
- return /*#__PURE__*/React__default["default"].createElement(Row, {
1294
+ return /*#__PURE__*/React__default['default'].createElement(Row, {
1250
1295
  sx: {
1251
- width: '100%',
1252
1296
  pt: ['12px'],
1253
1297
  pb: [3]
1254
1298
  }
1255
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
1299
+ }, /*#__PURE__*/React__default['default'].createElement(Column, {
1256
1300
  start: [1],
1257
1301
  width: [2]
1258
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1302
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1259
1303
  sx: {
1260
1304
  display: 'block',
1261
1305
  width: 'fit-content'
1262
1306
  }
1263
- }, (mode == 'homepage' || mode == 'local') && /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
1307
+ }, (mode == 'homepage' || mode == 'local') && /*#__PURE__*/React__default['default'].createElement(NextLink__default['default'], {
1264
1308
  href: "/",
1265
1309
  passHref: true
1266
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1310
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Link, {
1267
1311
  "aria-label": "CarbonPlan Homepage",
1268
1312
  sx: {
1269
1313
  display: 'block'
1270
1314
  }
1271
- }, /*#__PURE__*/React__default["default"].createElement(Logo, {
1315
+ }, /*#__PURE__*/React__default['default'].createElement(Logo, {
1272
1316
  id: "logo",
1273
1317
  sx: {
1274
1318
  cursor: 'pointer',
1275
1319
  color: 'primary'
1276
1320
  }
1277
- }))), (mode == null || mode == 'remote') && /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1321
+ }))), (mode == null || mode == 'remote') && /*#__PURE__*/React__default['default'].createElement(themeUi.Link, {
1278
1322
  href: "https://carbonplan.org",
1279
1323
  "aria-label": "CarbonPlan Homepage",
1280
1324
  sx: {
1281
1325
  display: 'block'
1282
1326
  }
1283
- }, /*#__PURE__*/React__default["default"].createElement(Logo, {
1327
+ }, /*#__PURE__*/React__default['default'].createElement(Logo, {
1284
1328
  sx: {
1285
1329
  cursor: 'pointer',
1286
1330
  color: 'primary'
1287
1331
  }
1288
- })))), /*#__PURE__*/React__default["default"].createElement(Column, {
1332
+ })))), /*#__PURE__*/React__default['default'].createElement(Column, {
1289
1333
  start: [4, 9],
1290
1334
  width: [2, 2],
1291
1335
  dr: 1,
@@ -1293,60 +1337,38 @@ var Header = function Header(_ref3) {
1293
1337
  display: [status ? 'flex' : 'none', 'flex', 'flex', 'flex'],
1294
1338
  alignItems: 'center'
1295
1339
  }
1296
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1340
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1297
1341
  sx: {
1298
1342
  fontSize: [1, 2, 3],
1299
1343
  position: 'relative',
1300
1344
  top: ['-2px', '-3px', '-3px']
1301
1345
  }
1302
- }, status ? "(" + status + ")" : '')), /*#__PURE__*/React__default["default"].createElement(Column, {
1303
- start: [status ? 6 : 4, 6, 12, 12],
1346
+ }, status ? "(" + status + ")" : '')), /*#__PURE__*/React__default['default'].createElement(Column, {
1347
+ start: [status ? 6 : 4, 6, 11, 11],
1304
1348
  width: [status ? 1 : 3, 3, 2, 2],
1305
1349
  sx: {
1306
- display: 'flex',
1307
- alignItems: 'center',
1308
- justifyContent: 'flex-end'
1309
- }
1310
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1311
- sx: {
1312
- mr: ['18px'],
1313
- position: 'relative',
1314
- top: ['-1px'],
1315
- pointerEvents: expanded || settings && settings.value ? 'none' : 'all',
1316
- transition: 'opacity 0.15s',
1317
- display: [status ? 'none' : 'block', 'block', dimmer === 'top' ? 'block' : 'none', dimmer === 'top' ? 'block' : 'none']
1318
- }
1319
- }, /*#__PURE__*/React__default["default"].createElement(Dimmer, {
1320
- sx: {
1321
- opacity: expanded || settings && settings.value ? 0 : 1,
1322
- color: 'primary'
1350
+ zIndex: 5000
1323
1351
  }
1324
- })), settings && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1352
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, {
1325
1353
  sx: {
1326
- mr: ['21px'],
1327
- position: 'relative',
1328
- pointerEvents: expanded ? 'none' : 'all',
1329
- transition: 'opacity 0.15s',
1330
- display: [status ? 'none' : 'block', 'block', 'none', 'none']
1354
+ justifyContent: 'flex-end'
1331
1355
  }
1332
- }, /*#__PURE__*/React__default["default"].createElement(Settings, {
1333
- value: settings.value,
1334
- onClick: settings.onClick,
1356
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, {
1335
1357
  sx: {
1358
+ mr: '18px',
1359
+ gap: '18px',
1336
1360
  opacity: expanded ? 0 : 1,
1337
- stroke: 'primary'
1361
+ transition: 'opacity 0.15s',
1362
+ justifyContent: 'space-between',
1363
+ alignItems: 'center'
1338
1364
  }
1339
- })), /*#__PURE__*/React__default["default"].createElement(Menu, {
1365
+ }, menuItems), /*#__PURE__*/React__default['default'].createElement(Menu, {
1340
1366
  sx: {
1341
- transition: 'opacity 0.15s',
1342
- pointerEvents: settings && settings.value ? 'none' : 'all',
1343
- opacity: settings && settings.value ? 0 : 1,
1344
- mr: ['-2px'],
1345
- zIndex: 5000
1367
+ mr: ['-2px']
1346
1368
  },
1347
1369
  value: expanded,
1348
1370
  onClick: toggle
1349
- })), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1371
+ }))), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1350
1372
  sx: {
1351
1373
  opacity: expanded ? 1 : 0,
1352
1374
  pointerEvents: expanded ? 'all' : 'none',
@@ -1362,16 +1384,16 @@ var Header = function Header(_ref3) {
1362
1384
  pt: ['79px'],
1363
1385
  transition: 'opacity 0.25s'
1364
1386
  }
1365
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(Row, null, /*#__PURE__*/React__default["default"].createElement(Column, {
1387
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Container, null, /*#__PURE__*/React__default['default'].createElement(Row, null, /*#__PURE__*/React__default['default'].createElement(Column, {
1366
1388
  start: [2, 4, 7, 7],
1367
1389
  width: [5, 4, 5, 5]
1368
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1390
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1369
1391
  as: "nav",
1370
1392
  sx: {
1371
1393
  display: expanded ? 'inherit' : 'none',
1372
1394
  mt: [5, 5, 5, 6]
1373
1395
  }
1374
- }, /*#__PURE__*/React__default["default"].createElement(NavGroup, {
1396
+ }, /*#__PURE__*/React__default['default'].createElement(NavGroup, {
1375
1397
  links: links,
1376
1398
  nav: nav,
1377
1399
  mode: mode,
@@ -1382,49 +1404,49 @@ var Header = function Header(_ref3) {
1382
1404
  var Monogram = function Monogram(_ref) {
1383
1405
  var props = _extends({}, _ref);
1384
1406
 
1385
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
1407
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
1386
1408
  as: "svg",
1387
1409
  width: "80",
1388
1410
  stroke: "none",
1389
1411
  fill: "currentColor",
1390
1412
  viewBox: "0 0 32 32"
1391
- }, props), /*#__PURE__*/React__default["default"].createElement("path", {
1413
+ }, props), /*#__PURE__*/React__default['default'].createElement("path", {
1392
1414
  d: "M21.9395,14.9395 L17.5005,19.3785 L17.5005,7.0005 L14.5005,7.0005 L14.5005,19.3785 L10.0605,14.9395 L7.9395,17.0605 L14.9395,24.0605 C15.2325,24.3535 15.6165,24.5005 16.0005,24.5005 C16.3835,24.5005 16.7675,24.3535 17.0605,24.0605 L24.0605,17.0605 L21.9395,14.9395 Z"
1393
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1415
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
1394
1416
  d: "M27.5986,4 L22.8966,4 C26.5556,6.303 28.9996,10.366 28.9996,15 C28.9996,20.4 25.6896,25.039 20.9926,27 L26.5586,27 C29.8886,24.068 31.9996,19.785 31.9996,15 C31.9996,10.734 30.3196,6.868 27.5986,4"
1395
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1417
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
1396
1418
  d: "M3,15 C3,10.366 5.444,6.303 9.104,4 L4.401,4 C1.68,6.868 0,10.734 0,15 C0,19.785 2.112,24.068 5.441,27 L11.008,27 C6.311,25.039 3,20.4 3,15"
1397
1419
  }));
1398
1420
  };
1399
1421
 
1400
1422
  var Footer = function Footer() {
1401
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1423
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1402
1424
  sx: {
1403
1425
  mt: [7, 7, 7, 8],
1404
1426
  mb: [7, 7, 7, 8],
1405
1427
  pb: [2, 1, 0, 0]
1406
1428
  }
1407
- }, /*#__PURE__*/React__default["default"].createElement(Row, {
1429
+ }, /*#__PURE__*/React__default['default'].createElement(Row, {
1408
1430
  sx: {
1409
1431
  mb: [0, 0, 4, 5]
1410
1432
  }
1411
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
1433
+ }, /*#__PURE__*/React__default['default'].createElement(Column, {
1412
1434
  start: [1, 2],
1413
1435
  width: [3, 3]
1414
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1436
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, null, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1415
1437
  sx: {
1416
1438
  fontSize: [2, 2, 2, 3],
1417
1439
  fontFamily: 'heading',
1418
1440
  letterSpacing: 'mono',
1419
1441
  mb: [2]
1420
1442
  }
1421
- }, "EMAIL"), /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1443
+ }, "EMAIL"), /*#__PURE__*/React__default['default'].createElement(themeUi.Link, {
1422
1444
  href: "mailto:hello@carbonplan.org",
1423
1445
  sx: {
1424
1446
  textDecoration: 'none',
1425
1447
  fontSize: [2, 2, 2, 3]
1426
1448
  }
1427
- }, "hello@carbonplan.org"))), /*#__PURE__*/React__default["default"].createElement(Column, {
1449
+ }, "hello@carbonplan.org"))), /*#__PURE__*/React__default['default'].createElement(Column, {
1428
1450
  start: [5],
1429
1451
  width: [1],
1430
1452
  dl: 1,
@@ -1433,57 +1455,57 @@ var Footer = function Footer() {
1433
1455
  display: ['flex', 'none', 'none', 'none'],
1434
1456
  justifyContent: ['center']
1435
1457
  }
1436
- }, /*#__PURE__*/React__default["default"].createElement(Monogram, {
1458
+ }, /*#__PURE__*/React__default['default'].createElement(Monogram, {
1437
1459
  sx: {
1438
1460
  mt: ['-4px'],
1439
1461
  width: '60px',
1440
1462
  height: '60px'
1441
1463
  }
1442
- })), /*#__PURE__*/React__default["default"].createElement(Column, {
1464
+ })), /*#__PURE__*/React__default['default'].createElement(Column, {
1443
1465
  start: [1, 5, 5, 5],
1444
1466
  width: [3, 3],
1445
1467
  sx: {
1446
1468
  mt: [3, 0, 0, 0]
1447
1469
  }
1448
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1470
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, null, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1449
1471
  sx: {
1450
1472
  fontSize: [2, 2, 2, 3],
1451
1473
  fontFamily: 'heading',
1452
1474
  letterSpacing: 'mono',
1453
1475
  mb: [2]
1454
1476
  }
1455
- }, "FOLLOW"), /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1477
+ }, "FOLLOW"), /*#__PURE__*/React__default['default'].createElement(themeUi.Link, {
1456
1478
  href: "https://twitter.com/carbonplanorg",
1457
1479
  sx: {
1458
1480
  textDecoration: 'none',
1459
1481
  fontSize: [2, 2, 2, 3]
1460
1482
  }
1461
- }, "@carbonplanorg"))), /*#__PURE__*/React__default["default"].createElement(Column, {
1483
+ }, "@carbonplanorg"))), /*#__PURE__*/React__default['default'].createElement(Column, {
1462
1484
  start: [1, 9],
1463
1485
  width: [5, 4, 3, 3],
1464
1486
  sx: {
1465
1487
  mt: ['42px', '42px', 0, 0],
1466
1488
  mb: [3, 3, 0, 0]
1467
1489
  }
1468
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1490
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, null, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1469
1491
  sx: {
1470
1492
  fontSize: [2, 2, 2, 3],
1471
1493
  fontFamily: 'body',
1472
1494
  color: 'secondary'
1473
1495
  }
1474
- }, "CarbonPlan is a registered non-profit public benefit corporation in California with 501(c)(3) status.")))), /*#__PURE__*/React__default["default"].createElement(Row, {
1496
+ }, "CarbonPlan is a registered non-profit public benefit corporation in California with 501(c)(3) status.")))), /*#__PURE__*/React__default['default'].createElement(Row, {
1475
1497
  sx: {
1476
1498
  mb: ['2px'],
1477
1499
  mt: [5, 5, 4]
1478
1500
  }
1479
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
1501
+ }, /*#__PURE__*/React__default['default'].createElement(Column, {
1480
1502
  start: [1, 1, 2, 2],
1481
1503
  width: [3, 2, 3, 3],
1482
1504
  sx: {
1483
1505
  display: 'flex',
1484
1506
  alignItems: ['flex-start', 'flex-start', 'flex-end']
1485
1507
  }
1486
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1508
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1487
1509
  sx: {
1488
1510
  bottom: '0px',
1489
1511
  borderStyle: 'solid',
@@ -1492,14 +1514,14 @@ var Footer = function Footer() {
1492
1514
  borderTopWidth: '1px',
1493
1515
  pt: [2]
1494
1516
  }
1495
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1517
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1496
1518
  sx: {
1497
1519
  color: 'secondary',
1498
1520
  fontSize: [1, 1, 1, 2],
1499
1521
  fontFamily: 'mono',
1500
1522
  letterSpacing: 'mono'
1501
1523
  }
1502
- }, "(c) 2021 CARBONPLAN"))), /*#__PURE__*/React__default["default"].createElement(Column, {
1524
+ }, "(c) 2021 CARBONPLAN"))), /*#__PURE__*/React__default['default'].createElement(Column, {
1503
1525
  start: [4, 3, 5, 5],
1504
1526
  width: [2, 2, 3, 3],
1505
1527
  sx: {
@@ -1507,7 +1529,7 @@ var Footer = function Footer() {
1507
1529
  alignItems: ['flex-start', 'flex-start', 'flex-end'],
1508
1530
  mt: [0, 0, 0, 0]
1509
1531
  }
1510
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1532
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1511
1533
  sx: {
1512
1534
  bottom: '0px',
1513
1535
  borderStyle: 'solid',
@@ -1517,10 +1539,10 @@ var Footer = function Footer() {
1517
1539
  width: ['100%', 'auto', 'auto', 'auto'],
1518
1540
  pt: [2]
1519
1541
  }
1520
- }, /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
1542
+ }, /*#__PURE__*/React__default['default'].createElement(NextLink__default['default'], {
1521
1543
  href: "/terms",
1522
1544
  passHref: true
1523
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1545
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1524
1546
  as: "a",
1525
1547
  sx: {
1526
1548
  textDecoration: 'none',
@@ -1530,13 +1552,13 @@ var Footer = function Footer() {
1530
1552
  letterSpacing: 'mono',
1531
1553
  display: 'block'
1532
1554
  }
1533
- }, "READ OUR TERMS")))), /*#__PURE__*/React__default["default"].createElement(Column, {
1555
+ }, "READ OUR TERMS")))), /*#__PURE__*/React__default['default'].createElement(Column, {
1534
1556
  start: [5, 7, 9, 9],
1535
1557
  width: [2, 3, 3, 3],
1536
1558
  sx: {
1537
1559
  display: ['none', 'initial', 'initial', 'initial']
1538
1560
  }
1539
- }, /*#__PURE__*/React__default["default"].createElement(Monogram, {
1561
+ }, /*#__PURE__*/React__default['default'].createElement(Monogram, {
1540
1562
  sx: {
1541
1563
  width: 80,
1542
1564
  height: 80,
@@ -1546,6 +1568,41 @@ var Footer = function Footer() {
1546
1568
  }))));
1547
1569
  };
1548
1570
 
1571
+ var Dimmer = function Dimmer(_ref) {
1572
+ var sx = _ref.sx,
1573
+ props = _objectWithoutPropertiesLoose(_ref, ["sx"]);
1574
+
1575
+ var _useColorMode = themeUi.useColorMode(),
1576
+ colorMode = _useColorMode[0],
1577
+ setColorMode = _useColorMode[1];
1578
+
1579
+ var toggle = React.useCallback(function () {
1580
+ setColorMode(colorMode === 'light' ? 'dark' : 'light');
1581
+ }, [colorMode]);
1582
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.IconButton, _extends({
1583
+ "aria-label": "Toggle dark mode",
1584
+ onClick: toggle,
1585
+ role: "checkbox",
1586
+ sx: _extends({
1587
+ width: 32,
1588
+ height: 32,
1589
+ display: 'inline-block',
1590
+ cursor: 'pointer',
1591
+ color: 'secondary'
1592
+ }, sx)
1593
+ }, props), /*#__PURE__*/React__default['default'].createElement(icons.Sun, {
1594
+ sx: {
1595
+ strokeWidth: '1.75',
1596
+ transition: 'stroke 0.15s',
1597
+ '@media (hover: hover) and (pointer: fine)': {
1598
+ '&:hover': {
1599
+ stroke: 'primary'
1600
+ }
1601
+ }
1602
+ }
1603
+ }));
1604
+ };
1605
+
1549
1606
  var GitSha = function GitSha() {
1550
1607
  var sha = process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA;
1551
1608
  var owner = process.env.NEXT_PUBLIC_VERCEL_GIT_REPO_OWNER;
@@ -1559,13 +1616,13 @@ var GitSha = function GitSha() {
1559
1616
  if (sha && owner && slug) {
1560
1617
  var shortSha = sha.substring(0, 7);
1561
1618
  var href = 'https://github.com/' + owner + '/' + slug + '/tree/' + sha;
1562
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1619
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1563
1620
  sx: {
1564
1621
  display: 'inline-block'
1565
1622
  }
1566
- }, /*#__PURE__*/React__default["default"].createElement(Separator, {
1623
+ }, /*#__PURE__*/React__default['default'].createElement(Separator, {
1567
1624
  color: color
1568
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1625
+ }), /*#__PURE__*/React__default['default'].createElement(themeUi.Link, {
1569
1626
  href: href,
1570
1627
  sx: {
1571
1628
  whiteSpace: 'nowrap',
@@ -1581,13 +1638,13 @@ var GitSha = function GitSha() {
1581
1638
  }, shortSha));
1582
1639
  } else {
1583
1640
  // fallback
1584
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1641
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1585
1642
  sx: {
1586
1643
  display: 'inline-block'
1587
1644
  }
1588
- }, /*#__PURE__*/React__default["default"].createElement(Separator, {
1645
+ }, /*#__PURE__*/React__default['default'].createElement(Separator, {
1589
1646
  color: color
1590
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Text, {
1647
+ }), /*#__PURE__*/React__default['default'].createElement(themeUi.Text, {
1591
1648
  sx: {
1592
1649
  whiteSpace: 'nowrap',
1593
1650
  display: 'inline-block',
@@ -1604,13 +1661,13 @@ var GitSha = function GitSha() {
1604
1661
 
1605
1662
  var Separator = function Separator(_ref) {
1606
1663
  var color = _ref.color;
1607
- return /*#__PURE__*/React__default["default"].createElement("svg", {
1664
+ return /*#__PURE__*/React__default['default'].createElement("svg", {
1608
1665
  fill: color,
1609
1666
  opacity: "0.8",
1610
1667
  viewBox: "0 0 24 24",
1611
1668
  width: "24",
1612
1669
  height: "24"
1613
- }, /*#__PURE__*/React__default["default"].createElement("circle", {
1670
+ }, /*#__PURE__*/React__default['default'].createElement("circle", {
1614
1671
  r: 5,
1615
1672
  cx: 19,
1616
1673
  cy: 19
@@ -1650,7 +1707,7 @@ var Value = function Value(_ref) {
1650
1707
  };
1651
1708
  }
1652
1709
  }, []);
1653
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Text, {
1710
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Text, {
1654
1711
  sx: {
1655
1712
  whiteSpace: 'nowrap',
1656
1713
  display: 'inline-block',
@@ -1666,7 +1723,7 @@ var Value = function Value(_ref) {
1666
1723
 
1667
1724
  var Metadata = function Metadata(_ref2) {
1668
1725
  var mode = _ref2.mode;
1669
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1726
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1670
1727
  sx: {
1671
1728
  userSelect: 'none',
1672
1729
  position: 'fixed',
@@ -1676,9 +1733,9 @@ var Metadata = function Metadata(_ref2) {
1676
1733
  transform: 'rotate(90deg)',
1677
1734
  display: ['none', 'none', 'initial']
1678
1735
  }
1679
- }, /*#__PURE__*/React__default["default"].createElement(Value, {
1736
+ }, /*#__PURE__*/React__default['default'].createElement(Value, {
1680
1737
  mode: mode
1681
- }), /*#__PURE__*/React__default["default"].createElement(GitSha, null));
1738
+ }), /*#__PURE__*/React__default['default'].createElement(GitSha, null));
1682
1739
  };
1683
1740
 
1684
1741
  function init(mode) {
@@ -1699,7 +1756,6 @@ function scrollFraction(window, documnt) {
1699
1756
  return Math.min(window.scrollY / (document.body.offsetHeight - 770), 0.99);
1700
1757
  }
1701
1758
 
1702
- var _excluded$6 = ["duration", "delay", "children"];
1703
1759
  var fade = react.keyframes({
1704
1760
  from: {
1705
1761
  opacity: 0
@@ -1715,9 +1771,9 @@ var FadeIn = function FadeIn(_ref) {
1715
1771
  _ref$delay = _ref.delay,
1716
1772
  delay = _ref$delay === void 0 ? 0 : _ref$delay,
1717
1773
  children = _ref.children,
1718
- delegated = _objectWithoutPropertiesLoose(_ref, _excluded$6);
1774
+ delegated = _objectWithoutPropertiesLoose(_ref, ["duration", "delay", "children"]);
1719
1775
 
1720
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({}, delegated, {
1776
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({}, delegated, {
1721
1777
  sx: {
1722
1778
  animationDuration: duration + 'ms',
1723
1779
  animationDelay: delay + 'ms',
@@ -1780,7 +1836,7 @@ var Guide = function Guide(_ref) {
1780
1836
  document.removeEventListener('keydown', handler);
1781
1837
  };
1782
1838
  }, []);
1783
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1839
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1784
1840
  sx: {
1785
1841
  position: 'fixed',
1786
1842
  width: '100%',
@@ -1790,25 +1846,25 @@ var Guide = function Guide(_ref) {
1790
1846
  pointerEvents: 'none',
1791
1847
  display: display ? 'initial' : 'none'
1792
1848
  }
1793
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1849
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Container, null, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1794
1850
  sx: {
1795
1851
  display: ['none', 'none', 'initial', 'initial']
1796
1852
  }
1797
- }, /*#__PURE__*/React__default["default"].createElement(GuideColumns, {
1853
+ }, /*#__PURE__*/React__default['default'].createElement(GuideColumns, {
1798
1854
  indices: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
1799
1855
  color: color
1800
- })), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1856
+ })), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1801
1857
  sx: {
1802
1858
  display: ['none', 'initial', 'none', 'none']
1803
1859
  }
1804
- }, /*#__PURE__*/React__default["default"].createElement(GuideColumns, {
1860
+ }, /*#__PURE__*/React__default['default'].createElement(GuideColumns, {
1805
1861
  indices: [1, 2, 3, 4, 5, 6, 7, 8],
1806
1862
  color: color
1807
- })), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1863
+ })), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1808
1864
  sx: {
1809
1865
  display: ['initial', 'none', 'none', 'none']
1810
1866
  }
1811
- }, /*#__PURE__*/React__default["default"].createElement(GuideColumns, {
1867
+ }, /*#__PURE__*/React__default['default'].createElement(GuideColumns, {
1812
1868
  indices: [1, 2, 3, 4, 5, 6],
1813
1869
  color: color
1814
1870
  }))));
@@ -1835,8 +1891,8 @@ function GuideColumns(_ref2) {
1835
1891
  opacity: color == 'teal' ? 0.4 : 1
1836
1892
  }
1837
1893
  };
1838
- return /*#__PURE__*/React__default["default"].createElement(Row, null, indices.map(function (i) {
1839
- return /*#__PURE__*/React__default["default"].createElement(Column, {
1894
+ return /*#__PURE__*/React__default['default'].createElement(Row, null, indices.map(function (i) {
1895
+ return /*#__PURE__*/React__default['default'].createElement(Column, {
1840
1896
  key: i,
1841
1897
  start: [i],
1842
1898
  width: [1, 1],
@@ -1846,7 +1902,7 @@ function GuideColumns(_ref2) {
1846
1902
  bg: color === 'teal' ? 'teal' : 'transparent',
1847
1903
  height: '100vh'
1848
1904
  }, sx.innerGuideColumn)
1849
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1905
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1850
1906
  sx: _extends({
1851
1907
  mx: ['12px', 3, 3, 4],
1852
1908
  bg: color === 'teal' ? 'background' : 'transparent',
@@ -1858,6 +1914,110 @@ function GuideColumns(_ref2) {
1858
1914
  }));
1859
1915
  }
1860
1916
 
1917
+ var Settings = function Settings(_ref) {
1918
+ var value = _ref.value,
1919
+ sx = _ref.sx,
1920
+ props = _objectWithoutPropertiesLoose(_ref, ["value", "sx"]);
1921
+
1922
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.IconButton, _extends({
1923
+ sx: _extends({
1924
+ cursor: 'pointer',
1925
+ fill: 'none',
1926
+ strokeWidth: '2px',
1927
+ stroke: 'text',
1928
+ '.paren': {
1929
+ opacity: '0'
1930
+ },
1931
+ '@media (hover: hover) and (pointer: fine)': {
1932
+ '&:hover .paren': {
1933
+ opacity: '1'
1934
+ }
1935
+ }
1936
+ }, sx),
1937
+ "aria-label": "Toggle Menu"
1938
+ }, props), !value && /*#__PURE__*/React__default['default'].createElement("svg", {
1939
+ style: {
1940
+ width: '50px',
1941
+ height: '30px',
1942
+ transform: 'scale(2)',
1943
+ marginTop: '-3px'
1944
+ },
1945
+ xmlns: "http://www.w3.org/2000/svg",
1946
+ viewBox: "0 0 68 36"
1947
+ }, /*#__PURE__*/React__default['default'].createElement("line", {
1948
+ x1: "24",
1949
+ y1: "2.1",
1950
+ x2: "24",
1951
+ y2: "6.1"
1952
+ }), /*#__PURE__*/React__default['default'].createElement("line", {
1953
+ x1: "24",
1954
+ y1: "24.1",
1955
+ x2: "24",
1956
+ y2: "33.9"
1957
+ }), /*#__PURE__*/React__default['default'].createElement("line", {
1958
+ x1: "44",
1959
+ y1: "2.1",
1960
+ x2: "44",
1961
+ y2: "12.1"
1962
+ }), /*#__PURE__*/React__default['default'].createElement("line", {
1963
+ x1: "44",
1964
+ y1: "30.1",
1965
+ x2: "44",
1966
+ y2: "33.9"
1967
+ }), /*#__PURE__*/React__default['default'].createElement("circle", {
1968
+ cx: "24",
1969
+ cy: "15.1",
1970
+ r: "5"
1971
+ }), /*#__PURE__*/React__default['default'].createElement("circle", {
1972
+ cx: "44",
1973
+ cy: "21.1",
1974
+ r: "5"
1975
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
1976
+ style: {
1977
+ transition: 'all 0.2s'
1978
+ },
1979
+ className: "paren",
1980
+ d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
1981
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
1982
+ style: {
1983
+ transition: 'all 0.2s'
1984
+ },
1985
+ className: "paren",
1986
+ d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
1987
+ })), value && /*#__PURE__*/React__default['default'].createElement("svg", {
1988
+ style: {
1989
+ width: '50px',
1990
+ height: '30px',
1991
+ transform: 'scale(2)',
1992
+ marginTop: '-3px'
1993
+ },
1994
+ xmlns: "http://www.w3.org/2000/svg",
1995
+ viewBox: "0 0 68 36"
1996
+ }, /*#__PURE__*/React__default['default'].createElement("line", {
1997
+ x1: "50.85",
1998
+ y1: "29.79",
1999
+ x2: "17.15",
2000
+ y2: "6.21"
2001
+ }), /*#__PURE__*/React__default['default'].createElement("line", {
2002
+ x1: "17.15",
2003
+ y1: "29.79",
2004
+ x2: "50.85",
2005
+ y2: "6.21"
2006
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
2007
+ style: {
2008
+ transition: 'all 0.2s'
2009
+ },
2010
+ className: "paren",
2011
+ d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
2012
+ }), /*#__PURE__*/React__default['default'].createElement("path", {
2013
+ style: {
2014
+ transition: 'all 0.2s'
2015
+ },
2016
+ className: "paren",
2017
+ d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
2018
+ })));
2019
+ };
2020
+
1861
2021
  var Layout = function Layout(_ref) {
1862
2022
  var title = _ref.title,
1863
2023
  description = _ref.description,
@@ -1885,29 +2045,57 @@ var Layout = function Layout(_ref) {
1885
2045
  _ref$container = _ref.container,
1886
2046
  container = _ref$container === void 0 ? true : _ref$container;
1887
2047
  var content = children;
2048
+ var index = matchMedia.useBreakpointIndex();
1888
2049
 
1889
2050
  if (fade) {
1890
- content = /*#__PURE__*/React__default["default"].createElement(FadeIn, {
2051
+ content = /*#__PURE__*/React__default['default'].createElement(FadeIn, {
1891
2052
  duration: 250
1892
2053
  }, content);
1893
2054
  }
1894
2055
 
1895
2056
  if (container) {
1896
- content = /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, content);
2057
+ content = /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2058
+ sx: {
2059
+ mb: [8, 8, 9, 10]
2060
+ }
2061
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Container, null, content));
1897
2062
  }
1898
2063
 
1899
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, guide && /*#__PURE__*/React__default["default"].createElement(Guide, {
2064
+ React.useEffect(function () {
2065
+ if (index > 2 && settings != null && settings.value && settings != null && settings.onClick) {
2066
+ settings == null ? void 0 : settings.onClick();
2067
+ }
2068
+ }, [index, settings == null ? void 0 : settings.value, settings == null ? void 0 : settings.onClick]);
2069
+ var menuItems = [/*#__PURE__*/React__default['default'].createElement(Dimmer, {
2070
+ key: "dimmer",
2071
+ sx: {
2072
+ color: 'primary',
2073
+ mt: '-2px',
2074
+ display: ['block', 'block', dimmer === 'top' ? 'block' : 'none', dimmer === 'top' ? 'block' : 'none']
2075
+ }
2076
+ })];
2077
+
2078
+ if (settings) {
2079
+ menuItems.push( /*#__PURE__*/React__default['default'].createElement(Settings, _extends({
2080
+ key: "settings",
2081
+ sx: {
2082
+ display: ['inherit', 'inherit', 'none', 'none']
2083
+ }
2084
+ }, settings)));
2085
+ }
2086
+
2087
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, guide && /*#__PURE__*/React__default['default'].createElement(Guide, {
1900
2088
  color: guide
1901
- }), scrollbar && /*#__PURE__*/React__default["default"].createElement(Scrollbar, null), /*#__PURE__*/React__default["default"].createElement(Meta, {
2089
+ }), scrollbar && /*#__PURE__*/React__default['default'].createElement(Scrollbar, null), /*#__PURE__*/React__default['default'].createElement(Meta, {
1902
2090
  card: card,
1903
2091
  description: description,
1904
2092
  title: title
1905
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
2093
+ }), /*#__PURE__*/React__default['default'].createElement(themeUi.Flex, {
1906
2094
  sx: {
1907
2095
  flexDirection: 'column',
1908
2096
  minHeight: '100vh'
1909
2097
  }
1910
- }, header && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2098
+ }, header && /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1911
2099
  as: "header",
1912
2100
  sx: {
1913
2101
  width: '100%',
@@ -1921,18 +2109,17 @@ var Layout = function Layout(_ref) {
1921
2109
  height: '56px',
1922
2110
  zIndex: 2000
1923
2111
  }
1924
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(Header, {
2112
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Container, null, /*#__PURE__*/React__default['default'].createElement(Header, {
1925
2113
  mode: links,
1926
2114
  status: status,
1927
2115
  nav: nav,
1928
- settings: settings,
1929
- dimmer: dimmer
1930
- }))), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2116
+ menuItems: menuItems
2117
+ }))), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1931
2118
  sx: {
1932
2119
  width: '100%',
1933
2120
  flex: '1 1 auto'
1934
2121
  }
1935
- }, content), footer && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2122
+ }, content), footer && /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1936
2123
  as: "footer",
1937
2124
  sx: {
1938
2125
  width: '100%',
@@ -1941,31 +2128,31 @@ var Layout = function Layout(_ref) {
1941
2128
  borderWidth: '0px',
1942
2129
  borderTopWidth: '1px'
1943
2130
  }
1944
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(Footer, null))), dimmer === 'bottom' && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2131
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Container, null, /*#__PURE__*/React__default['default'].createElement(Footer, null))), dimmer === 'bottom' && /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1945
2132
  sx: {
1946
2133
  display: ['none', 'none', 'initial', 'initial'],
1947
2134
  position: ['fixed'],
1948
2135
  right: [13],
1949
2136
  bottom: [17, 17, 15, 15]
1950
2137
  }
1951
- }, /*#__PURE__*/React__default["default"].createElement(Dimmer, null)), metadata && /*#__PURE__*/React__default["default"].createElement(Metadata, {
2138
+ }, /*#__PURE__*/React__default['default'].createElement(Dimmer, null)), metadata && /*#__PURE__*/React__default['default'].createElement(Metadata, {
1952
2139
  mode: metadata
1953
2140
  })));
1954
2141
  };
1955
2142
 
1956
2143
  var Custom404 = function Custom404() {
1957
- return /*#__PURE__*/React__default["default"].createElement(Layout, {
2144
+ return /*#__PURE__*/React__default['default'].createElement(Layout, {
1958
2145
  footer: false,
1959
2146
  title: '404 / carbonplan'
1960
- }, /*#__PURE__*/React__default["default"].createElement(Row, {
2147
+ }, /*#__PURE__*/React__default['default'].createElement(Row, {
1961
2148
  sx: {
1962
2149
  mb: [5, 0, 0],
1963
2150
  pt: [0, 0, 6]
1964
2151
  }
1965
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
2152
+ }, /*#__PURE__*/React__default['default'].createElement(Column, {
1966
2153
  start: [1, 1, 3, 3],
1967
2154
  width: [6, 4, 4, 4]
1968
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Styled.h1, null, "Oops!"), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2155
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Styled.h1, null, "Oops!"), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1969
2156
  sx: {
1970
2157
  fontSize: [4, 4, 4, 5],
1971
2158
  lineHeight: 'h3',
@@ -1973,7 +2160,7 @@ var Custom404 = function Custom404() {
1973
2160
  mb: [2, 3, 3],
1974
2161
  maxWidth: ['90%', '90%', '400px']
1975
2162
  }
1976
- }, "Sorry but we can't seem to find the page you are looking for."), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2163
+ }, "Sorry but we can't seem to find the page you are looking for."), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1977
2164
  sx: {
1978
2165
  color: 'secondary',
1979
2166
  fontFamily: 'mono',
@@ -1981,16 +2168,16 @@ var Custom404 = function Custom404() {
1981
2168
  fontSize: [2, 2, 2, 3],
1982
2169
  mt: [4, 5, 5]
1983
2170
  }
1984
- }, "ERROR CODE 404")), /*#__PURE__*/React__default["default"].createElement(Column, {
2171
+ }, "ERROR CODE 404")), /*#__PURE__*/React__default['default'].createElement(Column, {
1985
2172
  start: [2, 5, 7, 7],
1986
2173
  width: [4, 4, 4, 4]
1987
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2174
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
1988
2175
  sx: {
1989
2176
  width: ['100%'],
1990
2177
  mt: [2, 4, 4, 5],
1991
2178
  fill: 'primary'
1992
2179
  }
1993
- }, /*#__PURE__*/React__default["default"].createElement(emoji.PoopSad, {
2180
+ }, /*#__PURE__*/React__default['default'].createElement(emoji.PoopSad, {
1994
2181
  sx: {
1995
2182
  width: '100%',
1996
2183
  height: 'auto'
@@ -2003,7 +2190,7 @@ var Expander = function Expander(_ref) {
2003
2190
  id = _ref.id,
2004
2191
  onClick = _ref.onClick,
2005
2192
  sx = _ref.sx;
2006
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, {
2193
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.IconButton, {
2007
2194
  onClick: onClick,
2008
2195
  id: id,
2009
2196
  role: "checkbox",
@@ -2024,9 +2211,9 @@ var Expander = function Expander(_ref) {
2024
2211
  }
2025
2212
  }
2026
2213
  }, sx)
2027
- }, /*#__PURE__*/React__default["default"].createElement("svg", {
2214
+ }, /*#__PURE__*/React__default['default'].createElement("svg", {
2028
2215
  viewBox: "0 0 16 16"
2029
- }, /*#__PURE__*/React__default["default"].createElement("path", {
2216
+ }, /*#__PURE__*/React__default['default'].createElement("path", {
2030
2217
  d: "M8,0 V16 M0,8 H16",
2031
2218
  style: {
2032
2219
  strokeWidth: 2,
@@ -2037,18 +2224,16 @@ var Expander = function Expander(_ref) {
2037
2224
  })));
2038
2225
  };
2039
2226
 
2040
- var _excluded$5 = ["label", "value", "sx", "children"];
2041
-
2042
2227
  var Tag = function Tag(_ref) {
2043
2228
  var label = _ref.label,
2044
2229
  value = _ref.value,
2045
2230
  sx = _ref.sx,
2046
2231
  children = _ref.children,
2047
- props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
2232
+ props = _objectWithoutPropertiesLoose(_ref, ["label", "value", "sx", "children"]);
2048
2233
 
2049
2234
  var color = sx && sx.color ? sx.color : 'primary';
2050
2235
  var isClickable = props && (props.onClick || props.onDoubleClick);
2051
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
2236
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
2052
2237
  as: isClickable ? 'button' : 'span',
2053
2238
  role: "checkbox",
2054
2239
  "aria-checked": value,
@@ -2078,8 +2263,7 @@ var Tag = function Tag(_ref) {
2078
2263
  }, props), children);
2079
2264
  };
2080
2265
 
2081
- var _excluded$4 = ["values", "setValues", "label", "colors", "showAll", "multiSelect"];
2082
- var sx = {
2266
+ var sx$1 = {
2083
2267
  label: {
2084
2268
  fontFamily: 'mono',
2085
2269
  letterSpacing: 'mono',
@@ -2156,15 +2340,15 @@ var Filter = function Filter(_ref2) {
2156
2340
  showAll = _ref2$showAll === void 0 ? false : _ref2$showAll,
2157
2341
  _ref2$multiSelect = _ref2.multiSelect,
2158
2342
  multiSelect = _ref2$multiSelect === void 0 ? false : _ref2$multiSelect,
2159
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$4);
2343
+ props = _objectWithoutPropertiesLoose(_ref2, ["values", "setValues", "label", "colors", "showAll", "multiSelect"]);
2160
2344
 
2161
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, props, label && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2162
- sx: sx.label
2163
- }, label), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2345
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, props, label && /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2346
+ sx: sx$1.label
2347
+ }, label), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2164
2348
  sx: {
2165
2349
  mt: label ? [3] : 0
2166
2350
  }
2167
- }, showAll && /*#__PURE__*/React__default["default"].createElement(Tag, {
2351
+ }, showAll && /*#__PURE__*/React__default['default'].createElement(Tag, {
2168
2352
  onClick: function onClick() {
2169
2353
  return updateValues({
2170
2354
  values: values,
@@ -2178,7 +2362,7 @@ var Filter = function Filter(_ref2) {
2178
2362
  mr: [2]
2179
2363
  }
2180
2364
  }, "All"), Object.keys(values).map(function (d, i) {
2181
- return /*#__PURE__*/React__default["default"].createElement(Tag, {
2365
+ return /*#__PURE__*/React__default['default'].createElement(Tag, {
2182
2366
  onClick: function onClick() {
2183
2367
  return updateValues({
2184
2368
  values: values,
@@ -2245,25 +2429,23 @@ var Group = function Group(_ref) {
2245
2429
  var additionalStyles = direction === 'horizontal' ? {
2246
2430
  display: 'inline-block'
2247
2431
  } : {};
2248
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, React__default["default"].Children.map(children, function (child, i) {
2432
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, null, React__default['default'].Children.map(children, function (child, i) {
2249
2433
  var _extends2;
2250
2434
 
2251
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2435
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2252
2436
  sx: _extends((_extends2 = {}, _extends2[marginProperty] = i > 0 ? marginValue : 0, _extends2), additionalStyles)
2253
2437
  }, child);
2254
2438
  }));
2255
2439
  };
2256
2440
 
2257
- var _excluded$3 = ["size", "inverted", "sx"];
2258
-
2259
- var Input = function Input(_ref) {
2441
+ var Input = function Input(_ref, ref) {
2260
2442
  var _extends2;
2261
2443
 
2262
2444
  var _ref$size = _ref.size,
2263
2445
  size = _ref$size === void 0 ? 'sm' : _ref$size,
2264
2446
  inverted = _ref.inverted,
2265
2447
  sx = _ref.sx,
2266
- props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
2448
+ props = _objectWithoutPropertiesLoose(_ref, ["size", "inverted", "sx"]);
2267
2449
 
2268
2450
  var defaultColor = inverted ? 'secondary' : 'primary';
2269
2451
 
@@ -2288,11 +2470,14 @@ var Input = function Input(_ref) {
2288
2470
  background: 'none !important'
2289
2471
  }, _extends2), getSizeStyles(size), sx);
2290
2472
 
2291
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Input, _extends({}, props, {
2473
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Input, _extends({}, props, {
2474
+ ref: ref,
2292
2475
  sx: styles
2293
2476
  }));
2294
2477
  };
2295
2478
 
2479
+ var input = React.forwardRef(Input);
2480
+
2296
2481
  var getProps = function getProps(test) {
2297
2482
  return function (props) {
2298
2483
  var next = {};
@@ -2305,8 +2490,6 @@ var getProps = function getProps(test) {
2305
2490
  };
2306
2491
  };
2307
2492
 
2308
- var _excluded$2 = ["children", "size", "sx"];
2309
-
2310
2493
  var Select = function Select(_ref) {
2311
2494
  var _extends2;
2312
2495
 
@@ -2314,7 +2497,8 @@ var Select = function Select(_ref) {
2314
2497
  _ref$size = _ref.size,
2315
2498
  size = _ref$size === void 0 ? 'sm' : _ref$size,
2316
2499
  sx = _ref.sx,
2317
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
2500
+ sxSelect = _ref.sxSelect,
2501
+ props = _objectWithoutPropertiesLoose(_ref, ["children", "size", "sx", "sxSelect"]);
2318
2502
 
2319
2503
  var color = sx && sx.color ? sx.color : 'primary';
2320
2504
  var sizeStyles = getSizeStyles(size);
@@ -2354,11 +2538,11 @@ var Select = function Select(_ref) {
2354
2538
  pr = width.map(function (d) {
2355
2539
  return d + 12;
2356
2540
  });
2357
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2541
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2358
2542
  sx: _extends({
2359
2543
  display: 'inline-block'
2360
2544
  }, sx)
2361
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
2545
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
2362
2546
  as: "select",
2363
2547
  ref: ref,
2364
2548
  onChange: function onChange(e) {
@@ -2385,8 +2569,8 @@ var Select = function Select(_ref) {
2385
2569
  outline: 'none !important',
2386
2570
  background: 'transparent !important'
2387
2571
  }
2388
- }, _extends2))
2389
- }, omitOnChange), children), /*#__PURE__*/React__default["default"].createElement(icons.Arrow, {
2572
+ }, _extends2), sxSelect)
2573
+ }, omitOnChange), children), /*#__PURE__*/React__default['default'].createElement(icons.Arrow, {
2390
2574
  sx: {
2391
2575
  width: width,
2392
2576
  height: height,
@@ -2400,18 +2584,17 @@ var Select = function Select(_ref) {
2400
2584
  }));
2401
2585
  };
2402
2586
 
2403
- var _excluded$1 = ["sx"];
2404
-
2405
- var Slider = function Slider(_ref) {
2587
+ var Slider = function Slider(_ref, ref) {
2406
2588
  var sx = _ref.sx,
2407
- props = _objectWithoutPropertiesLoose(_ref, _excluded$1);
2589
+ props = _objectWithoutPropertiesLoose(_ref, ["sx"]);
2408
2590
 
2409
2591
  var color = sx && sx.color ? sx.color : 'primary';
2410
2592
 
2411
2593
  var _useThemeUI = themeUi.useThemeUI(),
2412
2594
  colors = _useThemeUI.theme.rawColors;
2413
2595
 
2414
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Slider, _extends({
2596
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Slider, _extends({
2597
+ ref: ref,
2415
2598
  sx: _extends({
2416
2599
  '&::-webkit-slider-thumb': {
2417
2600
  height: [22, 18, 16],
@@ -2443,7 +2626,9 @@ var Slider = function Slider(_ref) {
2443
2626
  }, props));
2444
2627
  };
2445
2628
 
2446
- var styles = {
2629
+ var slider = React.forwardRef(Slider);
2630
+
2631
+ var styles$1 = {
2447
2632
  reset: {
2448
2633
  verticalAlign: 'baseline',
2449
2634
  border: 0,
@@ -2503,61 +2688,60 @@ var Table = function Table(_ref) {
2503
2688
  throw new Error('Must provide columns, start, and width');
2504
2689
  }
2505
2690
 
2506
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2691
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2507
2692
  as: "table",
2508
2693
  sx: _extends({
2509
2694
  display: 'block'
2510
2695
  }, sx)
2511
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2696
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2512
2697
  as: "tbody",
2513
2698
  sx: {
2514
2699
  display: 'block'
2515
2700
  }
2516
- }, header && /*#__PURE__*/React__default["default"].createElement(Row, {
2701
+ }, header && /*#__PURE__*/React__default['default'].createElement(Row, {
2517
2702
  as: "tr",
2518
- sx: _extends({}, styles.reset, styles.header, styles.row, {
2703
+ sx: _extends({}, styles$1.reset, styles$1.header, styles$1.row, {
2519
2704
  color: color,
2520
2705
  borderTopWidth: !borderTop ? '0px' : '1px'
2521
2706
  })
2522
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
2707
+ }, /*#__PURE__*/React__default['default'].createElement(Column, {
2523
2708
  as: "td",
2524
2709
  start: [1],
2525
2710
  width: columns,
2526
- sx: styles.index
2711
+ sx: styles$1.index
2527
2712
  }, header)), data.map(function (row, i) {
2528
- return /*#__PURE__*/React__default["default"].createElement(Row, {
2713
+ return /*#__PURE__*/React__default['default'].createElement(Row, {
2529
2714
  as: "tr",
2530
2715
  columns: columns,
2531
2716
  key: i,
2532
- sx: _extends({}, styles.reset, styles.row, {
2717
+ sx: _extends({}, styles$1.reset, styles$1.row, {
2533
2718
  pb: borderBottom && i === data.length - 1 ? ['18px', '18px', '18px', '22px'] : [3, 3, 3, '20px'],
2534
2719
  borderBottomWidth: borderBottom && i === data.length - 1 ? '1px' : '0px',
2535
2720
  borderTopWidth: !borderTop && i === 0 && !header ? '0px' : '1px'
2536
2721
  })
2537
2722
  }, row.map(function (column, j) {
2538
- return /*#__PURE__*/React__default["default"].createElement(Column, {
2723
+ return /*#__PURE__*/React__default['default'].createElement(Column, {
2539
2724
  as: "td",
2540
2725
  key: j,
2541
2726
  start: start[j],
2542
2727
  width: width[j],
2543
- sx: j == 0 && index ? _extends({}, styles.reset, styles.index) : _extends({}, styles.reset, styles.entry)
2728
+ sx: j == 0 && index ? _extends({}, styles$1.reset, styles$1.index) : _extends({}, styles$1.reset, styles$1.entry)
2544
2729
  }, column);
2545
2730
  }));
2546
2731
  })));
2547
2732
  };
2548
2733
 
2549
- var _excluded = ["value", "onClick", "disabled", "sx"];
2550
-
2551
- var Toggle = function Toggle(_ref) {
2734
+ var Toggle = function Toggle(_ref, ref) {
2552
2735
  var value = _ref.value,
2553
2736
  onClick = _ref.onClick,
2554
2737
  disabled = _ref.disabled,
2555
2738
  sx = _ref.sx,
2556
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
2739
+ props = _objectWithoutPropertiesLoose(_ref, ["value", "onClick", "disabled", "sx"]);
2557
2740
 
2558
2741
  var color$1 = sx && sx.color ? sx.color : 'primary';
2559
2742
  value = disabled ? false : value;
2560
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
2743
+ return /*#__PURE__*/React__default['default'].createElement(themeUi.Box, _extends({
2744
+ ref: ref,
2561
2745
  as: "button",
2562
2746
  onClick: onClick,
2563
2747
  role: "checkbox",
@@ -2571,7 +2755,7 @@ var Toggle = function Toggle(_ref) {
2571
2755
  m: [0],
2572
2756
  display: 'inline-block'
2573
2757
  }, sx)
2574
- }, props), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2758
+ }, props), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2575
2759
  sx: {
2576
2760
  width: '50px',
2577
2761
  height: '20px',
@@ -2581,7 +2765,7 @@ var Toggle = function Toggle(_ref) {
2581
2765
  transition: '0.15s',
2582
2766
  display: 'inline-block'
2583
2767
  }
2584
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2768
+ }, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2585
2769
  sx: {
2586
2770
  width: '14px',
2587
2771
  height: '14px',
@@ -2595,6 +2779,8 @@ var Toggle = function Toggle(_ref) {
2595
2779
  })));
2596
2780
  };
2597
2781
 
2782
+ var toggle = React.forwardRef(Toggle);
2783
+
2598
2784
  var Tracking = function Tracking(_ref) {
2599
2785
  var id = _ref.id;
2600
2786
 
@@ -2602,10 +2788,10 @@ var Tracking = function Tracking(_ref) {
2602
2788
  return null;
2603
2789
  }
2604
2790
 
2605
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("script", {
2791
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("script", {
2606
2792
  async: true,
2607
2793
  src: "https://www.googletagmanager.com/gtag/js?id=" + id
2608
- }), /*#__PURE__*/React__default["default"].createElement("script", {
2794
+ }), /*#__PURE__*/React__default['default'].createElement("script", {
2609
2795
  dangerouslySetInnerHTML: {
2610
2796
  __html: "\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '" + id + "', {\n page_path: window.location.pathname,\n });\n "
2611
2797
  }
@@ -2616,9 +2802,8 @@ var Tray = function Tray(_ref) {
2616
2802
  var expanded = _ref.expanded,
2617
2803
  sx = _ref.sx,
2618
2804
  children = _ref.children;
2619
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2805
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2620
2806
  sx: {
2621
- display: ['initial', 'initial', 'none', 'none'],
2622
2807
  position: 'fixed',
2623
2808
  top: '56px',
2624
2809
  bottom: '0px',
@@ -2631,9 +2816,8 @@ var Tray = function Tray(_ref) {
2631
2816
  opacity: expanded ? 0.9 : 0,
2632
2817
  pointerEvents: expanded ? 'all' : 'none'
2633
2818
  }
2634
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2819
+ }), /*#__PURE__*/React__default['default'].createElement(themeUi.Box, {
2635
2820
  sx: _extends({
2636
- display: ['initial', 'initial', 'none', 'none'],
2637
2821
  position: 'fixed',
2638
2822
  width: 'calc(100vw)',
2639
2823
  top: '0px',
@@ -2652,7 +2836,7 @@ var Tray = function Tray(_ref) {
2652
2836
  pr: [3, 4, 5, 6],
2653
2837
  transform: expanded ? 'translateY(0)' : 'translateY(-100%)'
2654
2838
  }, sx)
2655
- }, /*#__PURE__*/React__default["default"].createElement(Row, null, /*#__PURE__*/React__default["default"].createElement(Column, {
2839
+ }, /*#__PURE__*/React__default['default'].createElement(Row, null, /*#__PURE__*/React__default['default'].createElement(Column, {
2656
2840
  start: [1, 1, 1, 1],
2657
2841
  width: [6, 8, 10, 10]
2658
2842
  }, children))));
@@ -2694,8 +2878,8 @@ var formatDate = function formatDate(date, options) {
2694
2878
  };
2695
2879
 
2696
2880
  exports.Badge = Badge;
2697
- exports.Button = Button;
2698
- exports.Callout = Callout;
2881
+ exports.Button = button;
2882
+ exports.Callout = callout;
2699
2883
  exports.Colorbar = Colorbar;
2700
2884
  exports.Column = Column;
2701
2885
  exports.Custom404 = Custom404;
@@ -2707,9 +2891,9 @@ exports.Footer = Footer;
2707
2891
  exports.Group = Group;
2708
2892
  exports.Guide = Guide;
2709
2893
  exports.Header = Header;
2710
- exports.Input = Input;
2894
+ exports.Input = input;
2711
2895
  exports.Layout = Layout;
2712
- exports.Link = Link;
2896
+ exports.Link = Link$1;
2713
2897
  exports.Logo = Logo;
2714
2898
  exports.Menu = Menu;
2715
2899
  exports.Meta = Meta;
@@ -2718,10 +2902,10 @@ exports.Row = Row;
2718
2902
  exports.Scrollbar = Scrollbar;
2719
2903
  exports.Select = Select;
2720
2904
  exports.Settings = Settings;
2721
- exports.Slider = Slider;
2905
+ exports.Slider = slider;
2722
2906
  exports.Table = Table;
2723
2907
  exports.Tag = Tag;
2724
- exports.Toggle = Toggle;
2908
+ exports.Toggle = toggle;
2725
2909
  exports.Tracking = Tracking;
2726
2910
  exports.Tray = Tray;
2727
2911
  exports.formatDate = formatDate;