@carbonplan/components 11.1.0 → 11.1.4-develop.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dst/index.js CHANGED
@@ -1,2960 +1,2 @@
1
- var React = require('react');
2
- var themeUi = require('theme-ui');
3
- var color = require('@theme-ui/color');
4
- var NextLink = require('next/link');
5
- var icons = require('@carbonplan/icons');
6
- var emoji = require('@carbonplan/emoji');
7
- var Head = require('next/head');
8
- var react = require('@emotion/react');
9
-
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
-
12
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
- var NextLink__default = /*#__PURE__*/_interopDefaultLegacy(NextLink);
14
- var Head__default = /*#__PURE__*/_interopDefaultLegacy(Head);
15
-
16
- function _extends() {
17
- _extends = Object.assign || function (target) {
18
- for (var i = 1; i < arguments.length; i++) {
19
- var source = arguments[i];
20
-
21
- for (var key in source) {
22
- if (Object.prototype.hasOwnProperty.call(source, key)) {
23
- target[key] = source[key];
24
- }
25
- }
26
- }
27
-
28
- return target;
29
- };
30
-
31
- return _extends.apply(this, arguments);
32
- }
33
-
34
- function _objectWithoutPropertiesLoose(source, excluded) {
35
- if (source == null) return {};
36
- var target = {};
37
- var sourceKeys = Object.keys(source);
38
- var key, i;
39
-
40
- for (i = 0; i < sourceKeys.length; i++) {
41
- key = sourceKeys[i];
42
- if (excluded.indexOf(key) >= 0) continue;
43
- target[key] = source[key];
44
- }
45
-
46
- return target;
47
- }
48
-
49
- var _excluded$g = ["sx", "children"];
50
-
51
- var Badge = function Badge(_ref) {
52
- var sx = _ref.sx,
53
- children = _ref.children,
54
- props = _objectWithoutPropertiesLoose(_ref, _excluded$g);
55
-
56
- var color$1 = sx && sx.color ? sx.color : 'primary';
57
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
58
- sx: _extends({
59
- display: 'inline-block',
60
- width: 'fit-content',
61
- height: ['24px', '24px', '24px', '26px'],
62
- borderRadius: '5px',
63
- backgroundColor: color$1 == 'primary' || color$1 == 'secondary' ? 'muted' : color.transparentize(color$1, 0.7),
64
- textAlign: 'center',
65
- userSelect: 'none',
66
- fontSize: [2, 2, 2, 3]
67
- }, sx)
68
- }, props), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
69
- sx: {
70
- letterSpacing: '0.02em',
71
- fontFamily: 'mono',
72
- mt: ['1px', '1px', '1px', '0px'],
73
- px: [1, 1, 1, '5px'],
74
- color: color$1
75
- }
76
- }, children));
77
- };
78
-
79
- var _excluded$f = ["href", "children", "internal", "tracking"];
80
-
81
- var event = function event(_ref) {
82
- var action = _ref.action,
83
- category = _ref.category,
84
- label = _ref.label,
85
- value = _ref.value;
86
-
87
- if (typeof window.gtag !== 'function') {
88
- console.warn("Missing window.gtag, skipping analytics action: '" + action + "'.");
89
- return;
90
- }
91
-
92
- window.gtag('event', action, {
93
- event_category: category,
94
- event_label: label,
95
- value: value
96
- });
97
- };
98
-
99
- var Link = function Link(_ref2, ref) {
100
- var href = _ref2.href,
101
- children = _ref2.children,
102
- _ref2$internal = _ref2.internal,
103
- internal = _ref2$internal === void 0 ? false : _ref2$internal,
104
- _ref2$tracking = _ref2.tracking,
105
- tracking = _ref2$tracking === void 0 ? false : _ref2$tracking,
106
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$f);
107
-
108
- if (internal || href && href.startsWith('/')) {
109
- return /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
110
- href: href,
111
- passHref: true
112
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Link, _extends({
113
- ref: ref
114
- }, props), children));
115
- } else if (tracking) {
116
- var action;
117
- var category;
118
-
119
- if (href && href.includes('pdf')) {
120
- action = 'PDF';
121
- category = 'download';
122
- } else {
123
- action = 'website';
124
- category = 'external';
125
- }
126
-
127
- var track = function track(e) {
128
- event({
129
- action: action,
130
- category: category,
131
- label: href
132
- });
133
- };
134
-
135
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Link, _extends({
136
- ref: ref,
137
- onClick: track,
138
- onContextMenu: track,
139
- href: href
140
- }, props), children);
141
- } else {
142
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Link, _extends({
143
- ref: ref,
144
- href: href
145
- }, props), children);
146
- }
147
- };
148
-
149
- var Link$1 = React.forwardRef(Link);
150
-
151
- var getSizeStyles = function getSizeStyles(size) {
152
- if (!['xs', 'sm', 'md', 'lg', 'xl'].includes(size)) {
153
- throw new Error('Size must be xs, sm, md, lg, or xl');
154
- }
155
-
156
- var fontSize, fontFamily, letterSpacing, lineHeight;
157
-
158
- if (size === 'xs') {
159
- fontSize = [2, 2, 2, 3];
160
- fontFamily = 'body';
161
- letterSpacing = 'body';
162
- lineHeight = [1.2];
163
- }
164
-
165
- if (size === 'sm') {
166
- fontSize = [3, 3, 3, 4];
167
- fontFamily = 'body';
168
- letterSpacing = 'body';
169
- lineHeight = [1.2];
170
- }
171
-
172
- if (size === 'md') {
173
- fontSize = [4, 4, 4, 5];
174
- fontFamily = 'body';
175
- letterSpacing = 'body';
176
- lineHeight = [1.2];
177
- }
178
-
179
- if (size === 'lg') {
180
- fontSize = [5, 5, 6, 7];
181
- fontFamily = 'heading';
182
- letterSpacing = 'heading';
183
- lineHeight = [1.2, 1.2, 1.25, 1.25];
184
- }
185
-
186
- if (size === 'xl') {
187
- fontSize = [6, 7, 8, 9];
188
- fontFamily = 'heading';
189
- letterSpacing = 'heading';
190
- lineHeight = [1.25];
191
- }
192
-
193
- return {
194
- fontSize: fontSize,
195
- fontFamily: fontFamily,
196
- letterSpacing: letterSpacing,
197
- lineHeight: lineHeight
198
- };
199
- };
200
-
201
- var _excluded$e = ["size", "prefix", "suffix", "inverted", "sx", "children", "align", "href", "internal", "tracking"];
202
-
203
- var Button = function Button(_ref, ref) {
204
- var _ref$size = _ref.size,
205
- size = _ref$size === void 0 ? 'sm' : _ref$size,
206
- prefix = _ref.prefix,
207
- suffix = _ref.suffix,
208
- inverted = _ref.inverted,
209
- sx = _ref.sx,
210
- children = _ref.children,
211
- align = _ref.align,
212
- href = _ref.href,
213
- internal = _ref.internal,
214
- tracking = _ref.tracking,
215
- props = _objectWithoutPropertiesLoose(_ref, _excluded$e);
216
-
217
- if (!['xs', 'sm', 'md', 'lg', 'xl'].includes(size)) {
218
- throw new Error('Size must be xs, sm, md, lg, or xl');
219
- }
220
-
221
- var offset, margin, height, width, strokeWidth;
222
- var color = sx && sx.color ? sx.color : null;
223
- var baseColor = color || (inverted ? 'secondary' : 'primary');
224
- var hoverColor = color ? 'primary' : inverted ? 'primary' : 'secondary';
225
-
226
- if (size === 'xs') {
227
- margin = ['6px', '6px', '6px', '6px'];
228
- height = [12, 12, 12, 13];
229
- width = [12, 12, 12, 13];
230
- strokeWidth = [1.5, 1.5, 1.5, 1.5];
231
- offset = {
232
- transform: 'translateY(0.25px)'
233
- };
234
- }
235
-
236
- if (size === 'sm') {
237
- margin = ['7px', '7px', '7px', '7px'];
238
- height = [13, 13, 13, 18];
239
- width = [13, 13, 13, 18];
240
- strokeWidth = [1.5, 1.5, 1.5, 2];
241
- offset = {
242
- transform: 'translateY(0.25px)'
243
- };
244
- }
245
-
246
- if (size === 'md') {
247
- margin = ['8px', '8px', '8px', '8px'];
248
- height = [18, 18, 18, 24];
249
- width = [18, 18, 18, 24];
250
- strokeWidth = [2, 2, 2, 3];
251
- }
252
-
253
- if (size === 'lg') {
254
- margin = ['10px', '10px', '12px', '16px'];
255
- height = [24, 24, 34, 46];
256
- width = [24, 24, 34, 46];
257
- strokeWidth = [3, 3, 4, 5];
258
- }
259
-
260
- if (size === 'xl') {
261
- margin = ['12px', '16px', '18px', '20px'];
262
- height = [34, 46, 56, 68];
263
- width = [34, 46, 56, 68];
264
- strokeWidth = [4, 5, 6, 7];
265
- }
266
-
267
- var prefixHover, suffixHover, prefixAlign, suffixAlign, prefixOffset, suffixOffset;
268
-
269
- if (align) {
270
- prefixAlign = align;
271
- suffixAlign = align;
272
- } else {
273
- if (prefix && suffix) {
274
- prefixAlign = 'initial';
275
- suffixAlign = 'initial';
276
- } else if (prefix) {
277
- prefixAlign = 'initial';
278
- } else if (suffix) {
279
- suffixAlign = 'middle';
280
- }
281
- }
282
-
283
- if (prefixAlign === 'middle') {
284
- prefixOffset = {};
285
- } else {
286
- prefixOffset = offset;
287
- }
288
-
289
- if (suffixAlign === 'middle') {
290
- suffixOffset = {};
291
- } else {
292
- suffixOffset = offset;
293
- }
294
-
295
- if (prefix) {
296
- prefixHover = {
297
- '&:hover > #prefix-span > #prefix': _extends({
298
- color: hoverColor
299
- }, prefix.type.hover)
300
- };
301
- prefix = React.cloneElement(prefix, {
302
- id: 'prefix',
303
- sx: _extends({
304
- position: 'relative',
305
- height: height,
306
- width: width,
307
- mr: children ? margin : [0],
308
- strokeWidth: strokeWidth,
309
- verticalAlign: prefixAlign,
310
- transition: 'color 0.15s, transform 0.15s'
311
- }, prefix.props.sx)
312
- });
313
- }
314
-
315
- if (suffix) {
316
- suffixHover = {
317
- '&:hover > #suffix-span >#suffix': _extends({
318
- color: hoverColor
319
- }, suffix.type.hover)
320
- };
321
- suffix = React.cloneElement(suffix, {
322
- id: 'suffix',
323
- sx: _extends({
324
- height: height,
325
- width: width,
326
- ml: children ? margin : [0],
327
- strokeWidth: strokeWidth,
328
- verticalAlign: suffixAlign,
329
- transition: 'color 0.15s, transform 0.15s'
330
- }, suffix.props.sx)
331
- });
332
- }
333
-
334
- var sizeStyles = getSizeStyles(size);
335
-
336
- var style = _extends({}, sizeStyles, {
337
- lineHeight: 1.05,
338
- border: 'none',
339
- background: 'transparent',
340
- display: 'block',
341
- color: baseColor,
342
- padding: [0],
343
- textAlign: 'left',
344
- cursor: 'pointer',
345
- width: 'fit-content',
346
- '@media (hover: hover) and (pointer: fine)': _extends({
347
- '&:hover': {
348
- color: hoverColor
349
- }
350
- }, suffixHover, prefixHover)
351
- }, sx);
352
-
353
- var Inner = /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
354
- as: "span",
355
- id: "prefix-span",
356
- sx: _extends({
357
- display: 'inline-block'
358
- }, prefixOffset)
359
- }, prefix && prefix), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
360
- as: "span",
361
- sx: {
362
- transition: 'color 0.15s'
363
- }
364
- }, children), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
365
- as: "span",
366
- id: "suffix-span",
367
- sx: _extends({
368
- display: 'inline-block'
369
- }, suffixOffset)
370
- }, suffix && suffix));
371
-
372
- if (href) {
373
- return /*#__PURE__*/React__default["default"].createElement(Link$1, _extends({
374
- ref: ref,
375
- href: href,
376
- internal: internal,
377
- tracking: tracking,
378
- sx: _extends({}, style, {
379
- textDecoration: 'none'
380
- })
381
- }, props), Inner);
382
- } else {
383
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
384
- ref: ref,
385
- as: "button",
386
- sx: style
387
- }, props), Inner);
388
- }
389
- };
390
-
391
- var button = React.forwardRef(Button);
392
-
393
- var _excluded$d = ["label", "children", "inverted", "color", "href", "internal", "tracking", "sx"];
394
-
395
- var Callout = function Callout(_ref, ref) {
396
- var label = _ref.label,
397
- children = _ref.children,
398
- inverted = _ref.inverted,
399
- color = _ref.color,
400
- href = _ref.href,
401
- internal = _ref.internal,
402
- tracking = _ref.tracking,
403
- sx = _ref.sx,
404
- props = _objectWithoutPropertiesLoose(_ref, _excluded$d);
405
-
406
- var baseColor = color || (inverted ? 'secondary' : 'primary');
407
- var hoverColor = color ? 'primary' : inverted ? 'primary' : 'secondary';
408
-
409
- var style = _extends({
410
- border: 'none',
411
- padding: [0],
412
- fontSize: [3, 3, 3, 4],
413
- color: baseColor,
414
- background: 'transparent',
415
- textDecoration: 'none',
416
- fontFamily: 'body',
417
- lineHeight: 'h3',
418
- letterSpacing: 'body',
419
- width: 'fit-content',
420
- cursor: 'pointer',
421
- textAlign: 'left',
422
- mb: [1],
423
- '@media (hover: hover) and (pointer: fine)': {
424
- '&:hover > #container > #arrow': {
425
- transform: 'rotate(45deg)',
426
- fill: hoverColor
427
- },
428
- '&:hover': {
429
- color: hoverColor
430
- }
431
- }
432
- }, sx);
433
-
434
- var Inner = /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
435
- sx: {
436
- transition: '0.15s',
437
- letterSpacing: 'body',
438
- pb: ['6px']
439
- }
440
- }, children), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
441
- sx: {
442
- transition: '0.15s',
443
- display: 'inline-block',
444
- textTransform: 'uppercase',
445
- letterSpacing: 'smallcaps',
446
- fontFamily: 'heading',
447
- fontSize: [2, 2, 2, 3]
448
- }
449
- }, label), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
450
- as: "span",
451
- id: "container",
452
- sx: {
453
- ml: [2],
454
- display: 'inline-block'
455
- }
456
- }, /*#__PURE__*/React__default["default"].createElement(icons.Arrow, {
457
- id: "arrow",
458
- sx: {
459
- transition: 'fill 0.15s, transform 0.15s',
460
- position: 'relative',
461
- top: ['2px'],
462
- color: baseColor,
463
- height: [15, 15, 15, 17],
464
- width: [15, 15, 15, 17]
465
- }
466
- })));
467
-
468
- if (href) {
469
- return /*#__PURE__*/React__default["default"].createElement(Link$1, _extends({
470
- ref: ref,
471
- href: href,
472
- internal: internal,
473
- tracking: tracking,
474
- sx: style
475
- }, props), Inner);
476
- } else {
477
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
478
- ref: ref,
479
- as: "button",
480
- sx: style
481
- }, props), Inner);
482
- }
483
- };
484
-
485
- var callout = React.forwardRef(Callout);
486
-
487
- var _excluded$c = ["colormap", "label", "clim", "setClim", "setClimStep", "discrete", "units", "width", "height", "format", "horizontal", "bottom", "sx", "sxClim"];
488
- var styles$1 = {
489
- clim: function clim(setClim) {
490
- return {
491
- fontFamily: 'mono',
492
- fontSize: ['9px', 0, 0, 1],
493
- letterSpacing: 'smallcaps',
494
- textTransform: 'uppercase',
495
- '@media (hover: hover) and (pointer: fine)': {
496
- '&:hover': {
497
- borderBottom: setClim ? function (_ref) {
498
- var colors = _ref.colors;
499
- return "solid 1px " + colors.primary + " !important";
500
- } : 'unset'
501
- }
502
- },
503
- '&:focus': {
504
- outline: 'none',
505
- borderBottom: setClim ? function (_ref2) {
506
- var colors = _ref2.colors;
507
- return "solid 1px " + colors.primary + " !important";
508
- } : 'unset'
509
- },
510
- transition: 'border 0.15s',
511
- userSelect: setClim ? 'none !important' : 'unset',
512
- width: 'fit-content',
513
- minWidth: 'fit-content'
514
- };
515
- }
516
- };
517
- var DIMENSIONS = {
518
- width: ['10px', '16px', '16px', '17px'],
519
- height: ['80px', '110px', '110px', '130px']
520
- };
521
-
522
- var Gradient = function Gradient(_ref3) {
523
- var colormap = _ref3.colormap,
524
- discrete = _ref3.discrete,
525
- horizontal = _ref3.horizontal,
526
- width = _ref3.width,
527
- height = _ref3.height;
528
- var step = 1 / colormap.length * 100;
529
- var values = colormap.map(function (d, i) {
530
- return "rgb(" + d + ") " + i * step + "% " + (discrete && i < colormap.length - 1 ? (i + 1) * step + "%" : '');
531
- });
532
- var css = "linear-gradient(to " + (horizontal ? 'right' : 'top') + ", " + values.join(',') + ")";
533
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
534
- sx: _extends({}, horizontal ? {
535
- width: width || DIMENSIONS.height,
536
- height: height || DIMENSIONS.width
537
- } : {
538
- width: width || DIMENSIONS.width,
539
- minHeight: height || DIMENSIONS.height
540
- }, {
541
- mt: horizontal ? ['1px', '1px', '1px', 0] : 0,
542
- border: function border(_ref4) {
543
- var colors = _ref4.colors;
544
- return "solid 1px " + colors.hinted;
545
- },
546
- background: css
547
- })
548
- });
549
- };
550
-
551
- var Label = function Label(_ref5) {
552
- var label = _ref5.label,
553
- units = _ref5.units,
554
- horizontal = _ref5.horizontal;
555
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
556
- sx: !horizontal && {
557
- width: ['13px', '17px', '17px', '19px'],
558
- alignSelf: 'flex-end'
559
- }
560
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
561
- sx: _extends({
562
- mb: horizontal ? 0 : ['-4px', '-4px', '-4px', '-3px'],
563
- fontFamily: 'mono',
564
- fontSize: ['9px', 0, 0, 1],
565
- letterSpacing: 'smallcaps',
566
- textTransform: 'uppercase'
567
- }, horizontal ? {} : {
568
- writingMode: 'vertical-rl',
569
- transform: 'rotate(180deg)',
570
- whiteSpace: 'nowrap',
571
- display: 'inline-block',
572
- overflow: 'visible'
573
- })
574
- }, label, ' ', /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
575
- as: "span",
576
- sx: {
577
- textTransform: 'none',
578
- color: 'secondary',
579
- display: 'inline-block'
580
- }
581
- }, units)));
582
- };
583
-
584
- var Colorbar = function Colorbar(_ref6) {
585
- var colormap = _ref6.colormap,
586
- label = _ref6.label,
587
- clim = _ref6.clim,
588
- setClim = _ref6.setClim,
589
- _ref6$setClimStep = _ref6.setClimStep,
590
- setClimStep = _ref6$setClimStep === void 0 ? 1 : _ref6$setClimStep,
591
- discrete = _ref6.discrete,
592
- units = _ref6.units,
593
- width = _ref6.width,
594
- height = _ref6.height,
595
- _ref6$format = _ref6.format,
596
- format = _ref6$format === void 0 ? function (d) {
597
- return d;
598
- } : _ref6$format,
599
- _ref6$horizontal = _ref6.horizontal,
600
- horizontal = _ref6$horizontal === void 0 ? false : _ref6$horizontal,
601
- _ref6$bottom = _ref6.bottom,
602
- bottom = _ref6$bottom === void 0 ? false : _ref6$bottom,
603
- sx = _ref6.sx,
604
- sxClim = _ref6.sxClim,
605
- props = _objectWithoutPropertiesLoose(_ref6, _excluded$c);
606
-
607
- if (!Array.isArray(colormap)) {
608
- throw new Error("expected array for colormap, got '" + colormap + "'.");
609
- }
610
-
611
- var climRef = [React.useRef(), React.useRef()];
612
-
613
- var _useState = React.useState(false),
614
- climMinDragging = _useState[0],
615
- setClimMinDragging = _useState[1];
616
-
617
- var _useState2 = React.useState(false),
618
- climMaxDragging = _useState2[0],
619
- setClimMaxDragging = _useState2[1];
620
-
621
- var x,
622
- y,
623
- dx,
624
- dy = 0;
625
- var id = null;
626
- var init = [0, 0];
627
- var scale = setClimStep;
628
-
629
- var draggingFunction = function draggingFunction(e) {
630
- if (id === 'min' && !climMinDragging) setClimMinDragging(true);
631
- if (id === 'max' && !climMaxDragging) setClimMaxDragging(true);
632
- dx = e.pageX - x;
633
- dy = e.pageY - y;
634
-
635
- if (horizontal) {
636
- if (id === 'min') setClim(function (prev) {
637
- return [Math.min(init[0] + dx * scale, init[1]), prev[1]];
638
- });
639
- if (id === 'max') setClim(function (prev) {
640
- return [prev[0], Math.max(init[1] + dx * scale, init[0])];
641
- });
642
- } else {
643
- if (id === 'min') setClim(function (prev) {
644
- return [Math.min(init[0] - dy * scale, init[1]), prev[1]];
645
- });
646
- if (id === 'max') setClim(function (prev) {
647
- return [prev[0], Math.max(init[1] - dy * scale, init[0])];
648
- });
649
- }
650
- };
651
-
652
- var handleMouseDown = function handleMouseDown(e) {
653
- y = e.pageY;
654
- x = e.pageX;
655
- id = e.target.id;
656
- init = clim;
657
- document.body.setAttribute('style', horizontal ? 'cursor: ew-resize !important' : 'cursor: ns-resize !important');
658
- document.addEventListener('mousemove', draggingFunction);
659
-
660
- var updater = function updater() {
661
- document.body.setAttribute('style', 'cursor: unset');
662
- document.removeEventListener('mousemove', draggingFunction);
663
- window.removeEventListener('mouseup', updater);
664
- if (id === 'min') setClimMinDragging(false);
665
- if (id === 'max') setClimMaxDragging(false);
666
- };
667
-
668
- window.addEventListener('mouseup', updater);
669
- };
670
-
671
- var increment = function increment(e) {
672
- if (climRef[0].current === document.activeElement) {
673
- e.preventDefault();
674
- setClim(function (prev) {
675
- return [Math.min(prev[0] + scale, prev[1]), prev[1]];
676
- });
677
- climRef[0].current.focus();
678
- }
679
-
680
- if (climRef[1].current === document.activeElement) {
681
- e.preventDefault();
682
- setClim(function (prev) {
683
- return [prev[0], Math.max(prev[1] + scale, prev[0])];
684
- });
685
- climRef[1].current.focus();
686
- }
687
- };
688
-
689
- var decrement = function decrement(e) {
690
- if (climRef[0].current === document.activeElement) {
691
- e.preventDefault();
692
- setClim(function (prev) {
693
- return [Math.min(prev[0] - scale, prev[1]), prev[1]];
694
- });
695
- climRef[0].current.focus();
696
- }
697
-
698
- if (climRef[1].current === document.activeElement) {
699
- e.preventDefault();
700
- setClim(function (prev) {
701
- return [prev[0], Math.max(prev[1] - scale, prev[0])];
702
- });
703
- climRef[1].current.focus();
704
- }
705
- };
706
-
707
- React.useEffect(function () {
708
- var listener = function listener(e) {
709
- if (['ArrowUp', 'ArrowRight'].includes(e.code) || ['ArrowUp', 'ArrowRight'].includes(e.key)) {
710
- increment(e);
711
- }
712
-
713
- if (['ArrowDown', 'ArrowLeft'].includes(e.code) || ['ArrowDown', 'ArrowLeft'].includes(e.key)) {
714
- decrement(e);
715
- }
716
- };
717
-
718
- window.addEventListener('keydown', listener);
719
- return function () {
720
- window.removeEventListener('keydown', listener);
721
- };
722
- }, [clim]);
723
-
724
- var ClimMin = function ClimMin() {
725
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
726
- id: "min",
727
- ref: climRef[0],
728
- tabIndex: 0,
729
- sx: _extends({}, styles$1.clim(setClim), {
730
- ml: label ? horizontal ? bottom ? '0px' : '10px' : ['2px', '1px', '1px', '2px'] : 0,
731
- mr: horizontal ? ['2px', '1px', '1px', '2px'] : 0,
732
- mb: horizontal ? 0 : ['-2px', '-2px', '-2px', '-3px'],
733
- borderBottom: setClim ? climMinDragging ? function (_ref7) {
734
- var colors = _ref7.colors;
735
- return "solid 1px " + colors.primary;
736
- } : function (_ref8) {
737
- var colors = _ref8.colors;
738
- return "solid 1px " + colors.secondary;
739
- } : 'unset',
740
- cursor: setClim ? horizontal ? 'ew-resize' : 'ns-resize' : 'default'
741
- }, sxClim),
742
- onMouseDown: setClim ? handleMouseDown : function () {},
743
- onClick: function onClick() {
744
- return climRef[0].current.focus();
745
- }
746
- }, format(clim[0]));
747
- };
748
-
749
- var ClimMax = function ClimMax() {
750
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
751
- id: "max",
752
- ref: climRef[1],
753
- tabIndex: 0,
754
- sx: _extends({}, styles$1.clim(setClim), {
755
- ml: horizontal ? ['2px', '1px', '1px', '2px'] : ['2px', '1px', '1px', '2px'],
756
- mt: horizontal ? 0 : ['-2px', '-3px', '-3px', '-3px'],
757
- borderBottom: setClim ? climMaxDragging ? function (_ref9) {
758
- var colors = _ref9.colors;
759
- return "solid 1px " + colors.primary;
760
- } : function (_ref10) {
761
- var colors = _ref10.colors;
762
- return "solid 1px " + colors.secondary;
763
- } : 'unset',
764
- cursor: setClim ? horizontal ? 'ew-resize' : 'ns-resize' : 'default'
765
- }, sxClim),
766
- onMouseDown: setClim ? handleMouseDown : function () {},
767
- onClick: function onClick() {
768
- return climRef[1].current.focus();
769
- }
770
- }, format(clim[1]));
771
- };
772
-
773
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, _extends({}, props, {
774
- sx: _extends({
775
- flexDirection: 'row',
776
- alignItems: 'start',
777
- justifyContent: 'flex-start',
778
- gap: ['3px', '6px', '6px', '7px'],
779
- height: !horizontal ? '100%' : 'unset'
780
- }, sx)
781
- }), label && /*#__PURE__*/React__default["default"].createElement(Label, {
782
- label: label,
783
- units: units,
784
- horizontal: horizontal
785
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
786
- sx: {
787
- flexGrow: horizontal ? 1 : 'unset',
788
- flexDirection: 'column',
789
- ml: bottom && label ? '4px' : '0px',
790
- height: !horizontal ? '100%' : 'unset'
791
- }
792
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
793
- sx: {
794
- gap: ['3px', '6px', '6px', '7px'],
795
- height: !horizontal ? '100%' : 'unset'
796
- }
797
- }, horizontal && clim && !bottom && /*#__PURE__*/React__default["default"].createElement(ClimMin, null), /*#__PURE__*/React__default["default"].createElement(Gradient, {
798
- colormap: colormap,
799
- horizontal: horizontal,
800
- discrete: discrete,
801
- width: width,
802
- height: height
803
- }), horizontal && clim && !bottom && /*#__PURE__*/React__default["default"].createElement(ClimMax, null)), horizontal && clim && bottom && /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
804
- sx: {
805
- justifyContent: 'space-between'
806
- }
807
- }, /*#__PURE__*/React__default["default"].createElement(ClimMin, null), /*#__PURE__*/React__default["default"].createElement(ClimMax, null))), !horizontal && /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
808
- sx: {
809
- flexDirection: 'column-reverse',
810
- justifyContent: 'space-between',
811
- height: height || DIMENSIONS.height
812
- }
813
- }, clim && /*#__PURE__*/React__default["default"].createElement(ClimMin, null), clim && /*#__PURE__*/React__default["default"].createElement(ClimMax, null)));
814
- };
815
-
816
- var _excluded$b = ["start", "width", "dl", "dr", "children", "sx"];
817
-
818
- var Column = function Column(_ref) {
819
- var start = _ref.start,
820
- width = _ref.width,
821
- dl = _ref.dl,
822
- dr = _ref.dr,
823
- children = _ref.children,
824
- sx = _ref.sx,
825
- props = _objectWithoutPropertiesLoose(_ref, _excluded$b);
826
-
827
- start = start || 'auto';
828
- width = width || 'auto';
829
-
830
- var makeArray = function makeArray(input) {
831
- if (input && !Array.isArray(input)) {
832
- input = [input];
833
- }
834
-
835
- if (![1, 2, 4].includes(input.length)) {
836
- throw new Error('Array length must be 1, 2, or 4');
837
- }
838
-
839
- if (Array.isArray(input) && input.length == 1) {
840
- input = input.map(function (d) {
841
- return [d, d, d, d];
842
- }).flat();
843
- } else if (Array.isArray(input) && input.length == 2) {
844
- input = input.map(function (d) {
845
- return [d, d];
846
- }).flat();
847
- }
848
-
849
- return input;
850
- };
851
-
852
- start = makeArray(start);
853
- width = makeArray(width);
854
- var end = start.map(function (d, i) {
855
- if (d == 'auto') return 'auto';
856
- return d + width[i];
857
- });
858
- var ml, mr;
859
-
860
- if (dl) {
861
- if (![0.5, 1].includes(dl)) {
862
- throw new Error('dl must be 0.5 or 1');
863
- }
864
-
865
- if (dl === 0.5) {
866
- ml = ['-12px', -3, -3, -4];
867
- }
868
-
869
- if (dl === 1) {
870
- ml = [-4, -5, -5, -6];
871
- }
872
- }
873
-
874
- if (dr) {
875
- if (![0.5, 1].includes(dr)) {
876
- throw new Error('dr must be 0.5 or 1');
877
- }
878
-
879
- if (dr === 0.5) {
880
- mr = ['-12px', -3, -3, -4];
881
- }
882
-
883
- if (dr === 1) {
884
- mr = [-4, -5, -5, -6];
885
- }
886
- }
887
-
888
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({}, props, {
889
- sx: _extends({
890
- gridColumnStart: start,
891
- gridColumnEnd: end,
892
- ml: ml,
893
- mr: mr
894
- }, sx)
895
- }), children);
896
- };
897
-
898
- var Meta = function Meta(_ref) {
899
- var title = _ref.title,
900
- description = _ref.description,
901
- card = _ref.card;
902
- title = title ? title : 'carbonplan';
903
- description = description ? description : 'Data and science for climate action.';
904
- card = card ? card : 'https://images.carbonplan.org/social/homepage.png';
905
- return /*#__PURE__*/React__default["default"].createElement(Head__default["default"], null, /*#__PURE__*/React__default["default"].createElement("title", null, title), /*#__PURE__*/React__default["default"].createElement("meta", {
906
- name: "description",
907
- content: description
908
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
909
- name: "viewport",
910
- content: "initial-scale=1.0, width=device-width"
911
- }), /*#__PURE__*/React__default["default"].createElement("link", {
912
- rel: "canonical",
913
- content: "https://carbonplan.org/"
914
- }), /*#__PURE__*/React__default["default"].createElement("link", {
915
- rel: "icon",
916
- type: "image/svg+xml",
917
- href: "https://images.carbonplan.org/favicon.svg"
918
- }), /*#__PURE__*/React__default["default"].createElement("link", {
919
- rel: "preload",
920
- href: "https://fonts.carbonplan.org/relative/relative-book-pro.woff2",
921
- as: "font",
922
- type: "font/woff2",
923
- crossOrigin: "anonymous"
924
- }), /*#__PURE__*/React__default["default"].createElement("link", {
925
- rel: "preload",
926
- href: "https://fonts.carbonplan.org/relative/relative-medium-pro.woff2",
927
- as: "font",
928
- type: "font/woff2",
929
- crossOrigin: "anonymous"
930
- }), /*#__PURE__*/React__default["default"].createElement("link", {
931
- rel: "preload",
932
- href: "https://fonts.carbonplan.org/relative/relative-mono-11-pitch-pro.woff2",
933
- as: "font",
934
- type: "font/woff2",
935
- crossOrigin: "anonymous"
936
- }), /*#__PURE__*/React__default["default"].createElement("link", {
937
- rel: "preload",
938
- href: "https://fonts.carbonplan.org/relative/relative-faux-book-pro.woff2",
939
- as: "font",
940
- type: "font/woff2",
941
- crossOrigin: "anonymous"
942
- }), /*#__PURE__*/React__default["default"].createElement("link", {
943
- rel: "manifest",
944
- href: "https://images.carbonplan.org/manifest.json"
945
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
946
- name: "theme-color",
947
- content: "#1b1e23"
948
- }), /*#__PURE__*/React__default["default"].createElement("link", {
949
- rel: "alternate icon",
950
- type: "image/png",
951
- href: "https://images.carbonplan.org/favicon.png"
952
- }), /*#__PURE__*/React__default["default"].createElement("link", {
953
- rel: "mask-icon",
954
- href: "https://images.carbonplan.org/safari-pinned-tab.svg",
955
- color: "#000000"
956
- }), /*#__PURE__*/React__default["default"].createElement("link", {
957
- rel: "apple-touch-icon",
958
- sizes: "180x180",
959
- href: "https://images.carbonplan.org/apple-touch-icon.png"
960
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
961
- name: "msapplication-TileColor",
962
- content: "#1b1e23"
963
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
964
- name: "msapplication-TileImage",
965
- content: "https://images.carbonplan.org/mstile-144x144.png"
966
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
967
- name: "msapplication-config",
968
- content: "https://images.carbonplan.org/browserconfig.xml"
969
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
970
- property: "og:title",
971
- content: title
972
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
973
- property: "og:description",
974
- content: description
975
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
976
- property: "og:image",
977
- content: card
978
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
979
- property: "og:url",
980
- content: "https://carbonplan.org"
981
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
982
- name: "twitter:title",
983
- content: title
984
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
985
- name: "twitter:description",
986
- content: description
987
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
988
- name: "twitter:image",
989
- content: card
990
- }), /*#__PURE__*/React__default["default"].createElement("meta", {
991
- name: "twitter:card",
992
- content: "summary_large_image"
993
- }));
994
- };
995
-
996
- var Logo = function Logo(_ref) {
997
- var props = _extends({}, _ref);
998
-
999
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
1000
- as: "svg",
1001
- width: "150",
1002
- fill: "currentColor",
1003
- stroke: "none",
1004
- viewBox: "0 0 151.1 28.8"
1005
- }, props), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1006
- 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"
1007
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1008
- 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"
1009
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1010
- 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"
1011
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1012
- 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"
1013
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1014
- 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"
1015
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1016
- 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"
1017
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1018
- 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"
1019
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1020
- 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"
1021
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1022
- 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"
1023
- })), /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
1024
- 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"
1025
- })), /*#__PURE__*/React__default["default"].createElement("path", {
1026
- 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"
1027
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1028
- 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"
1029
- })));
1030
- };
1031
-
1032
- var _excluded$a = ["children", "sx", "columns", "gap"];
1033
-
1034
- var Row = function Row(_ref) {
1035
- var children = _ref.children,
1036
- sx = _ref.sx,
1037
- columns = _ref.columns,
1038
- gap = _ref.gap,
1039
- props = _objectWithoutPropertiesLoose(_ref, _excluded$a);
1040
-
1041
- var makeArray = function makeArray(input) {
1042
- if (!Array.isArray(input)) {
1043
- input = [input, input, input, input];
1044
- }
1045
-
1046
- if (Array.isArray(input) && ![1, 2, 4].includes(input.length)) {
1047
- throw new Error('Array length must be 1, 2, or 4');
1048
- }
1049
-
1050
- if (Array.isArray(input) && input.length == 1) {
1051
- input = input.map(function (d) {
1052
- return [d];
1053
- }).flat();
1054
- }
1055
-
1056
- if (Array.isArray(input) && input.length == 2) {
1057
- input = input.map(function (d) {
1058
- return [d, d];
1059
- }).flat();
1060
- }
1061
-
1062
- return input;
1063
- };
1064
-
1065
- var columnGap, rowGap;
1066
-
1067
- if (Number.isInteger(gap) || Array.isArray(gap)) {
1068
- gap = makeArray(gap);
1069
- columnGap = gap;
1070
- rowGap = gap;
1071
- } else {
1072
- columnGap = [4, 5, 5, 6];
1073
- rowGap = [0, 0, 0, 0];
1074
- }
1075
-
1076
- if (Number.isInteger(columns) || Array.isArray(columns)) {
1077
- columns = makeArray(columns);
1078
- } else {
1079
- columns = [6, 8, 12, 12];
1080
- }
1081
-
1082
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Grid, _extends({}, props, {
1083
- columns: columns,
1084
- sx: _extends({
1085
- columnGap: columnGap,
1086
- rowGap: rowGap
1087
- }, sx)
1088
- }), children);
1089
- };
1090
-
1091
- var _excluded$9 = ["value", "sx"];
1092
-
1093
- var Menu = function Menu(_ref) {
1094
- var value = _ref.value,
1095
- sx = _ref.sx,
1096
- props = _objectWithoutPropertiesLoose(_ref, _excluded$9);
1097
-
1098
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, _extends({
1099
- sx: _extends({
1100
- cursor: 'pointer',
1101
- fill: 'none',
1102
- strokeWidth: '2px',
1103
- stroke: 'text',
1104
- '.paren': {
1105
- opacity: '0'
1106
- },
1107
- '@media (hover: hover) and (pointer: fine)': {
1108
- '&:hover .paren': {
1109
- opacity: '1'
1110
- }
1111
- }
1112
- }, sx),
1113
- "aria-label": "Toggle Menu"
1114
- }, props), !value && /*#__PURE__*/React__default["default"].createElement("svg", {
1115
- style: {
1116
- width: '50px',
1117
- height: '30px',
1118
- transform: 'scale(2)',
1119
- marginTop: '-3px'
1120
- },
1121
- xmlns: "http://www.w3.org/2000/svg",
1122
- viewBox: "0 0 68 36"
1123
- }, /*#__PURE__*/React__default["default"].createElement("line", {
1124
- x1: "52",
1125
- y1: "29.9",
1126
- x2: "16",
1127
- y2: "29.9"
1128
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1129
- x1: "52",
1130
- y1: "6.1",
1131
- x2: "16",
1132
- y2: "6.1"
1133
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1134
- x1: "52",
1135
- y1: "18",
1136
- x2: "16",
1137
- y2: "18"
1138
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1139
- style: {
1140
- transition: 'all 0.2s'
1141
- },
1142
- className: "paren",
1143
- d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
1144
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1145
- style: {
1146
- transition: 'all 0.2s'
1147
- },
1148
- className: "paren",
1149
- d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
1150
- })), value && /*#__PURE__*/React__default["default"].createElement("svg", {
1151
- style: {
1152
- width: '50px',
1153
- height: '30px',
1154
- transform: 'scale(2)',
1155
- marginTop: '-3px'
1156
- },
1157
- xmlns: "http://www.w3.org/2000/svg",
1158
- viewBox: "0 0 68 36"
1159
- }, /*#__PURE__*/React__default["default"].createElement("line", {
1160
- x1: "50.85",
1161
- y1: "29.79",
1162
- x2: "17.15",
1163
- y2: "6.21"
1164
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1165
- x1: "17.15",
1166
- y1: "29.79",
1167
- x2: "50.85",
1168
- y2: "6.21"
1169
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1170
- style: {
1171
- transition: 'all 0.2s'
1172
- },
1173
- className: "paren",
1174
- d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
1175
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1176
- style: {
1177
- transition: 'all 0.2s'
1178
- },
1179
- className: "paren",
1180
- d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
1181
- })));
1182
- };
1183
-
1184
- var sx$1 = {
1185
- link: function link(current, label, first) {
1186
- if (first === void 0) {
1187
- first = false;
1188
- }
1189
-
1190
- return {
1191
- width: 'auto',
1192
- color: current === label ? 'secondary' : 'text',
1193
- fontSize: [6, 6, 7, 8],
1194
- fontFamily: 'heading',
1195
- letterSpacing: 'heading',
1196
- borderStyle: 'solid',
1197
- borderColor: 'muted',
1198
- borderWidth: '0px',
1199
- borderBottomWidth: '1px',
1200
- borderTopWidth: first ? '1px' : '0px',
1201
- py: [3, 3, 4, 5],
1202
- textDecoration: 'none',
1203
- display: 'block',
1204
- position: 'relative',
1205
- transition: 'color 0.15s',
1206
- '@media (hover: hover) and (pointer: fine)': {
1207
- '&:hover > #arrow': {
1208
- opacity: 1
1209
- }
1210
- },
1211
- '&:hover': {
1212
- color: current == label ? 'secondary' : 'text'
1213
- }
1214
- };
1215
- }
1216
- };
1217
- var links = [{
1218
- url: 'about',
1219
- display: 'About'
1220
- }, {
1221
- url: 'research',
1222
- display: 'Research'
1223
- }, {
1224
- url: 'blog',
1225
- display: 'Blog'
1226
- }, {
1227
- url: 'press',
1228
- display: 'Press'
1229
- }];
1230
-
1231
- var HoverArrow = function HoverArrow() {
1232
- return /*#__PURE__*/React__default["default"].createElement(icons.Arrow, {
1233
- id: "arrow",
1234
- sx: {
1235
- pointerEvents: 'none',
1236
- display: 'inline-block',
1237
- position: 'absolute',
1238
- left: ['-60px', '-68px', '-80px', '-104px'],
1239
- top: ['32px', '32px', '46px', '62px'],
1240
- opacity: 0,
1241
- transition: 'opacity 0.2s ease-out',
1242
- transform: 'rotate(45deg)',
1243
- width: [36, 36, 48, 56],
1244
- height: [36, 36, 48, 56]
1245
- }
1246
- });
1247
- };
1248
-
1249
- var Nav = function Nav(_ref) {
1250
- var link = _ref.link,
1251
- mode = _ref.mode,
1252
- nav = _ref.nav,
1253
- first = _ref.first,
1254
- setExpanded = _ref.setExpanded;
1255
- var url = link.url,
1256
- display = link.display;
1257
- var href = mode === 'remote' ? 'https://carbonplan.org/' + url : '/' + url;
1258
-
1259
- if (mode === 'homepage' || mode === 'local' && nav === url) {
1260
- return /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
1261
- href: href,
1262
- passHref: true
1263
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1264
- onClick: function onClick() {
1265
- if (nav === url) setExpanded(false);
1266
- },
1267
- sx: sx$1.link(nav, url, first)
1268
- }, /*#__PURE__*/React__default["default"].createElement(HoverArrow, null), display));
1269
- } else {
1270
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1271
- href: href,
1272
- sx: sx$1.link(nav, url, first)
1273
- }, /*#__PURE__*/React__default["default"].createElement(HoverArrow, null), display);
1274
- }
1275
- };
1276
-
1277
- var NavGroup = function NavGroup(_ref2) {
1278
- var links = _ref2.links,
1279
- nav = _ref2.nav,
1280
- mode = _ref2.mode,
1281
- setExpanded = _ref2.setExpanded;
1282
- return links.map(function (d, i) {
1283
- return /*#__PURE__*/React__default["default"].createElement(Nav, {
1284
- key: i,
1285
- link: d,
1286
- mode: mode,
1287
- nav: nav,
1288
- first: i === 0,
1289
- setExpanded: setExpanded
1290
- });
1291
- });
1292
- };
1293
-
1294
- var Header = function Header(_ref3) {
1295
- var status = _ref3.status,
1296
- mode = _ref3.mode,
1297
- nav = _ref3.nav,
1298
- menuItems = _ref3.menuItems;
1299
-
1300
- var _useState = React.useState(false),
1301
- expanded = _useState[0],
1302
- setExpanded = _useState[1];
1303
-
1304
- var toggle = function toggle(e) {
1305
- setExpanded(!expanded);
1306
- };
1307
-
1308
- return /*#__PURE__*/React__default["default"].createElement(Row, {
1309
- sx: {
1310
- pt: ['12px'],
1311
- pb: [3]
1312
- }
1313
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
1314
- start: [1],
1315
- width: [2]
1316
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1317
- sx: {
1318
- display: 'block',
1319
- width: 'fit-content'
1320
- }
1321
- }, (mode == 'homepage' || mode == 'local') && /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
1322
- href: "/",
1323
- passHref: true
1324
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1325
- "aria-label": "CarbonPlan Homepage",
1326
- sx: {
1327
- display: 'block'
1328
- }
1329
- }, /*#__PURE__*/React__default["default"].createElement(Logo, {
1330
- id: "logo",
1331
- sx: {
1332
- cursor: 'pointer',
1333
- color: 'primary'
1334
- }
1335
- }))), (mode == null || mode == 'remote') && /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1336
- href: "https://carbonplan.org",
1337
- "aria-label": "CarbonPlan Homepage",
1338
- sx: {
1339
- display: 'block'
1340
- }
1341
- }, /*#__PURE__*/React__default["default"].createElement(Logo, {
1342
- sx: {
1343
- cursor: 'pointer',
1344
- color: 'primary'
1345
- }
1346
- })))), /*#__PURE__*/React__default["default"].createElement(Column, {
1347
- start: [4, 9],
1348
- width: [2, 2],
1349
- dr: 1,
1350
- sx: {
1351
- display: [status ? 'flex' : 'none', 'flex', 'flex', 'flex'],
1352
- alignItems: 'center'
1353
- }
1354
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1355
- sx: {
1356
- fontSize: [1, 2, 3],
1357
- position: 'relative',
1358
- top: ['-2px', '-3px', '-3px']
1359
- }
1360
- }, status ? "(" + status + ")" : '')), /*#__PURE__*/React__default["default"].createElement(Column, {
1361
- start: [status ? 6 : 4, 6, 11, 11],
1362
- width: [status ? 1 : 3, 3, 2, 2],
1363
- sx: {
1364
- zIndex: 5000
1365
- }
1366
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
1367
- sx: {
1368
- justifyContent: 'flex-end'
1369
- }
1370
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
1371
- sx: {
1372
- mr: '18px',
1373
- gap: '18px',
1374
- opacity: expanded ? 0 : 1,
1375
- transition: 'opacity 0.15s',
1376
- justifyContent: 'space-between',
1377
- alignItems: 'center'
1378
- }
1379
- }, menuItems), /*#__PURE__*/React__default["default"].createElement(Menu, {
1380
- sx: {
1381
- mr: ['-2px']
1382
- },
1383
- value: expanded,
1384
- onClick: toggle
1385
- }))), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1386
- sx: {
1387
- opacity: expanded ? 1 : 0,
1388
- pointerEvents: expanded ? 'all' : 'none',
1389
- position: 'fixed',
1390
- top: '0px',
1391
- right: '0px',
1392
- bottom: '0px',
1393
- minWidth: '0px',
1394
- maxHeight: '100vh',
1395
- width: '100vw',
1396
- backgroundColor: 'background',
1397
- zIndex: 4000,
1398
- pt: ['79px'],
1399
- transition: 'opacity 0.25s'
1400
- }
1401
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(Row, null, /*#__PURE__*/React__default["default"].createElement(Column, {
1402
- start: [2, 4, 7, 7],
1403
- width: [5, 4, 5, 5]
1404
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1405
- as: "nav",
1406
- sx: {
1407
- display: expanded ? 'inherit' : 'none',
1408
- mt: [5, 5, 5, 6]
1409
- }
1410
- }, /*#__PURE__*/React__default["default"].createElement(NavGroup, {
1411
- links: links,
1412
- nav: nav,
1413
- mode: mode,
1414
- setExpanded: setExpanded
1415
- })))))));
1416
- };
1417
-
1418
- var Monogram = function Monogram(_ref) {
1419
- var props = _extends({}, _ref);
1420
-
1421
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
1422
- as: "svg",
1423
- width: "80",
1424
- stroke: "none",
1425
- fill: "currentColor",
1426
- viewBox: "0 0 32 32"
1427
- }, props), /*#__PURE__*/React__default["default"].createElement("path", {
1428
- 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"
1429
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1430
- 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"
1431
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1432
- 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"
1433
- }));
1434
- };
1435
-
1436
- var Footer = function Footer() {
1437
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1438
- sx: {
1439
- mt: [7, 7, 7, 8],
1440
- mb: [7, 7, 7, 8],
1441
- pb: [2, 1, 0, 0]
1442
- }
1443
- }, /*#__PURE__*/React__default["default"].createElement(Row, {
1444
- sx: {
1445
- mb: [0, 0, 4, 5]
1446
- }
1447
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
1448
- start: [1, 2],
1449
- width: [3, 3]
1450
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1451
- sx: {
1452
- fontSize: [2, 2, 2, 3],
1453
- fontFamily: 'heading',
1454
- letterSpacing: 'mono',
1455
- mb: [2]
1456
- }
1457
- }, "EMAIL"), /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1458
- href: "mailto:hello@carbonplan.org",
1459
- sx: {
1460
- textDecoration: 'none',
1461
- fontSize: [2, 2, 2, 3]
1462
- }
1463
- }, "hello@carbonplan.org"))), /*#__PURE__*/React__default["default"].createElement(Column, {
1464
- start: [5],
1465
- width: [1],
1466
- dl: 1,
1467
- dr: 1,
1468
- sx: {
1469
- display: ['flex', 'none', 'none', 'none'],
1470
- justifyContent: ['center']
1471
- }
1472
- }, /*#__PURE__*/React__default["default"].createElement(Monogram, {
1473
- sx: {
1474
- mt: ['-4px'],
1475
- width: '60px',
1476
- height: '60px'
1477
- }
1478
- })), /*#__PURE__*/React__default["default"].createElement(Column, {
1479
- start: [1, 5, 5, 5],
1480
- width: [3, 3],
1481
- sx: {
1482
- mt: [3, 0, 0, 0]
1483
- }
1484
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1485
- sx: {
1486
- fontSize: [2, 2, 2, 3],
1487
- fontFamily: 'heading',
1488
- letterSpacing: 'mono',
1489
- mb: [2]
1490
- }
1491
- }, "FOLLOW"), /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1492
- href: "https://twitter.com/carbonplanorg",
1493
- sx: {
1494
- textDecoration: 'none',
1495
- fontSize: [2, 2, 2, 3]
1496
- }
1497
- }, "@carbonplanorg"))), /*#__PURE__*/React__default["default"].createElement(Column, {
1498
- start: [1, 9],
1499
- width: [5, 4, 3, 3],
1500
- sx: {
1501
- mt: ['42px', '42px', 0, 0],
1502
- mb: [3, 3, 0, 0]
1503
- }
1504
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1505
- sx: {
1506
- fontSize: [2, 2, 2, 3],
1507
- fontFamily: 'body',
1508
- color: 'secondary'
1509
- }
1510
- }, "CarbonPlan is a registered non-profit public benefit corporation in California with 501(c)(3) status.")))), /*#__PURE__*/React__default["default"].createElement(Row, {
1511
- sx: {
1512
- mb: ['2px'],
1513
- mt: [5, 5, 4]
1514
- }
1515
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
1516
- start: [1, 1, 2, 2],
1517
- width: [3, 2, 3, 3],
1518
- sx: {
1519
- display: 'flex',
1520
- alignItems: ['flex-start', 'flex-start', 'flex-end']
1521
- }
1522
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1523
- sx: {
1524
- bottom: '0px',
1525
- borderStyle: 'solid',
1526
- borderColor: 'muted',
1527
- borderWidth: '0px',
1528
- borderTopWidth: '1px',
1529
- pt: [2]
1530
- }
1531
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1532
- sx: {
1533
- color: 'secondary',
1534
- fontSize: [1, 1, 1, 2],
1535
- fontFamily: 'mono',
1536
- letterSpacing: 'mono'
1537
- }
1538
- }, "(c) 2021 CARBONPLAN"))), /*#__PURE__*/React__default["default"].createElement(Column, {
1539
- start: [4, 3, 5, 5],
1540
- width: [2, 2, 3, 3],
1541
- sx: {
1542
- display: 'flex',
1543
- alignItems: ['flex-start', 'flex-start', 'flex-end'],
1544
- mt: [0, 0, 0, 0]
1545
- }
1546
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1547
- sx: {
1548
- bottom: '0px',
1549
- borderStyle: 'solid',
1550
- borderColor: 'muted',
1551
- borderWidth: '0px',
1552
- borderTopWidth: '1px',
1553
- width: ['100%', 'auto', 'auto', 'auto'],
1554
- pt: [2]
1555
- }
1556
- }, /*#__PURE__*/React__default["default"].createElement(NextLink__default["default"], {
1557
- href: "/terms",
1558
- passHref: true
1559
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1560
- as: "a",
1561
- sx: {
1562
- textDecoration: 'none',
1563
- fontSize: [1, 1, 1, 2],
1564
- color: 'secondary',
1565
- fontFamily: 'mono',
1566
- letterSpacing: 'mono',
1567
- display: 'block'
1568
- }
1569
- }, "READ OUR TERMS")))), /*#__PURE__*/React__default["default"].createElement(Column, {
1570
- start: [5, 7, 9, 9],
1571
- width: [2, 3, 3, 3],
1572
- sx: {
1573
- display: ['none', 'initial', 'initial', 'initial']
1574
- }
1575
- }, /*#__PURE__*/React__default["default"].createElement(Monogram, {
1576
- sx: {
1577
- width: 80,
1578
- height: 80,
1579
- mt: [0, '-10px', 4, 5],
1580
- mb: ['-12px']
1581
- }
1582
- }))));
1583
- };
1584
-
1585
- var _excluded$8 = ["sx"];
1586
-
1587
- var Dimmer = function Dimmer(_ref) {
1588
- var sx = _ref.sx,
1589
- props = _objectWithoutPropertiesLoose(_ref, _excluded$8);
1590
-
1591
- var _useColorMode = themeUi.useColorMode(),
1592
- colorMode = _useColorMode[0],
1593
- setColorMode = _useColorMode[1];
1594
-
1595
- var toggle = React.useCallback(function () {
1596
- setColorMode(colorMode === 'light' ? 'dark' : 'light');
1597
- }, [colorMode]);
1598
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, _extends({
1599
- "aria-label": "Toggle dark mode",
1600
- onClick: toggle,
1601
- role: "checkbox",
1602
- sx: _extends({
1603
- width: 32,
1604
- height: 32,
1605
- display: 'inline-block',
1606
- cursor: 'pointer',
1607
- color: 'secondary'
1608
- }, sx)
1609
- }, props), /*#__PURE__*/React__default["default"].createElement(icons.Sun, {
1610
- sx: {
1611
- strokeWidth: '1.75',
1612
- transition: 'stroke 0.15s',
1613
- '@media (hover: hover) and (pointer: fine)': {
1614
- '&:hover': {
1615
- stroke: 'primary'
1616
- }
1617
- }
1618
- }
1619
- }));
1620
- };
1621
-
1622
- var GitSha = function GitSha() {
1623
- var sha = process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA;
1624
- var owner = process.env.NEXT_PUBLIC_VERCEL_GIT_REPO_OWNER;
1625
- var slug = process.env.NEXT_PUBLIC_VERCEL_GIT_REPO_SLUG;
1626
-
1627
- var _useThemeUI = themeUi.useThemeUI(),
1628
- theme = _useThemeUI.theme;
1629
-
1630
- var color = theme.rawColors.secondary;
1631
-
1632
- if (sha && owner && slug) {
1633
- var shortSha = sha.substring(0, 7);
1634
- var href = 'https://github.com/' + owner + '/' + slug + '/tree/' + sha;
1635
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1636
- sx: {
1637
- display: 'inline-block',
1638
- width: '87px'
1639
- }
1640
- }, /*#__PURE__*/React__default["default"].createElement(Separator, {
1641
- color: color
1642
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Link, {
1643
- href: href,
1644
- sx: {
1645
- whiteSpace: 'nowrap',
1646
- display: 'inline-block',
1647
- ml: [2],
1648
- fontFamily: 'mono',
1649
- letterSpacing: 'body',
1650
- color: color,
1651
- fontSize: [1],
1652
- textTransform: 'uppercase',
1653
- textDecoration: 'none'
1654
- }
1655
- }, shortSha));
1656
- } else {
1657
- // fallback
1658
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1659
- sx: {
1660
- display: 'inline-block',
1661
- width: '87px'
1662
- }
1663
- }, /*#__PURE__*/React__default["default"].createElement(Separator, {
1664
- color: color
1665
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Text, {
1666
- sx: {
1667
- whiteSpace: 'nowrap',
1668
- display: 'inline-block',
1669
- ml: [2],
1670
- fontFamily: 'mono',
1671
- letterSpacing: 'body',
1672
- color: color,
1673
- fontSize: [1],
1674
- textTransform: 'uppercase'
1675
- }
1676
- }, color));
1677
- }
1678
- };
1679
-
1680
- var Separator = function Separator(_ref) {
1681
- var color = _ref.color;
1682
- return /*#__PURE__*/React__default["default"].createElement("svg", {
1683
- fill: color,
1684
- opacity: "0.8",
1685
- viewBox: "0 0 24 24",
1686
- width: "24",
1687
- height: "24"
1688
- }, /*#__PURE__*/React__default["default"].createElement("circle", {
1689
- r: 5,
1690
- cx: 19,
1691
- cy: 19
1692
- }));
1693
- };
1694
-
1695
- var Value = function Value(_ref) {
1696
- var mode = _ref.mode;
1697
-
1698
- var _useState = React.useState(init(mode)),
1699
- display = _useState[0],
1700
- setDisplay = _useState[1];
1701
-
1702
- React.useEffect(function () {
1703
- if (mode === 'mouse') {
1704
- var setFromEvent = function setFromEvent(e) {
1705
- var x = format(e.clientX, 4);
1706
- var y = format(e.clientY, 4);
1707
- setDisplay("X,Y: " + x + "," + y);
1708
- };
1709
-
1710
- window.addEventListener('mousemove', setFromEvent);
1711
- return function () {
1712
- window.removeEventListener('mousemove', setFromEvent);
1713
- };
1714
- }
1715
-
1716
- if (mode === 'scroll') {
1717
- var _setFromEvent = function _setFromEvent(e) {
1718
- var y = scrollFraction(window);
1719
- setDisplay("SCROLL: 0." + format((y * 100).toFixed(0), 2));
1720
- };
1721
-
1722
- window.addEventListener('scroll', _setFromEvent);
1723
- return function () {
1724
- window.removeEventListener('scroll', _setFromEvent);
1725
- };
1726
- }
1727
- }, []);
1728
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Text, {
1729
- sx: {
1730
- whiteSpace: 'nowrap',
1731
- display: 'inline-block',
1732
- mr: '-6px',
1733
- fontFamily: 'mono',
1734
- letterSpacing: 'body',
1735
- color: 'secondary',
1736
- fontSize: [1],
1737
- textTransform: 'uppercase'
1738
- }
1739
- }, display);
1740
- };
1741
-
1742
- var Metadata = function Metadata(_ref2) {
1743
- var mode = _ref2.mode;
1744
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1745
- sx: {
1746
- userSelect: 'none',
1747
- position: 'fixed',
1748
- bottom: '42px',
1749
- right: '24px',
1750
- transformOrigin: 'right',
1751
- transform: 'rotate(90deg)',
1752
- display: ['none', 'none', 'initial']
1753
- }
1754
- }, /*#__PURE__*/React__default["default"].createElement(Value, {
1755
- mode: mode
1756
- }), /*#__PURE__*/React__default["default"].createElement(GitSha, null));
1757
- };
1758
-
1759
- function init(mode) {
1760
- if (mode === 'mouse') {
1761
- return "X,Y: " + format(0, 4) + "," + format(0, 4);
1762
- } else if (mode === 'scroll') {
1763
- return "SCROLL: 0." + format(0 .toFixed(0), 2);
1764
- } else {
1765
- return mode;
1766
- }
1767
- }
1768
-
1769
- function format(num, pad) {
1770
- return num.toString().padStart(pad, '0');
1771
- }
1772
-
1773
- function scrollFraction(window, documnt) {
1774
- return Math.min(window.scrollY / (document.body.offsetHeight - 770), 0.99);
1775
- }
1776
-
1777
- var _excluded$7 = ["duration", "delay", "children"];
1778
- var fade = react.keyframes({
1779
- from: {
1780
- opacity: 0
1781
- },
1782
- to: {
1783
- opacity: 1
1784
- }
1785
- });
1786
-
1787
- var FadeIn = function FadeIn(_ref) {
1788
- var _ref$duration = _ref.duration,
1789
- duration = _ref$duration === void 0 ? 300 : _ref$duration,
1790
- _ref$delay = _ref.delay,
1791
- delay = _ref$delay === void 0 ? 0 : _ref$delay,
1792
- children = _ref.children,
1793
- delegated = _objectWithoutPropertiesLoose(_ref, _excluded$7);
1794
-
1795
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({}, delegated, {
1796
- sx: {
1797
- animationDuration: duration + 'ms',
1798
- animationDelay: delay + 'ms',
1799
- animationName: fade.toString(),
1800
- animationFillMode: 'backwards'
1801
- }
1802
- }), children);
1803
- };
1804
-
1805
- var getScrollbarWidth = function getScrollbarWidth(document) {
1806
- var outer = document.createElement('div');
1807
- outer.style.visibility = 'hidden';
1808
- outer.style.width = '100px';
1809
- document.body.appendChild(outer);
1810
- outer.style.overflow = 'scroll';
1811
- var inner = document.createElement('div');
1812
- inner.style.width = '100%';
1813
- outer.appendChild(inner);
1814
- var delta = outer.offsetWidth - inner.offsetWidth;
1815
- outer.parentNode.removeChild(outer);
1816
- return delta;
1817
- };
1818
-
1819
- var Scrollbar = function Scrollbar() {
1820
- React.useEffect(function () {
1821
- if (typeof document !== 'undefined') {
1822
- var delta = getScrollbarWidth(document);
1823
-
1824
- if (delta > 0) {
1825
- document.body.classList.add('custom-scrollbar');
1826
- document.getElementsByTagName('html')[0].classList.add('custom-scrollbar');
1827
- }
1828
- }
1829
- }, []);
1830
- return null;
1831
- };
1832
-
1833
- var Guide = function Guide(_ref) {
1834
- var _ref$color = _ref.color,
1835
- color = _ref$color === void 0 ? 'muted' : _ref$color;
1836
-
1837
- var _useState = React.useState(false),
1838
- display = _useState[0],
1839
- setDisplay = _useState[1];
1840
-
1841
- React.useEffect(function () {
1842
- function handler(event) {
1843
- var key = event.key,
1844
- metaKey = event.metaKey;
1845
-
1846
- if (key === ';' && metaKey) {
1847
- setDisplay(function (prev) {
1848
- return !prev;
1849
- });
1850
- }
1851
- }
1852
-
1853
- document.addEventListener('keydown', handler);
1854
- return function () {
1855
- document.removeEventListener('keydown', handler);
1856
- };
1857
- }, []);
1858
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1859
- sx: {
1860
- position: 'fixed',
1861
- width: '100%',
1862
- left: 0,
1863
- top: 0,
1864
- zIndex: color === 'teal' ? 5000 : -1,
1865
- pointerEvents: 'none',
1866
- display: display ? 'initial' : 'none'
1867
- }
1868
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1869
- sx: {
1870
- display: ['none', 'none', 'initial', 'initial']
1871
- }
1872
- }, /*#__PURE__*/React__default["default"].createElement(GuideColumns, {
1873
- indices: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
1874
- color: color
1875
- })), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1876
- sx: {
1877
- display: ['none', 'initial', 'none', 'none']
1878
- }
1879
- }, /*#__PURE__*/React__default["default"].createElement(GuideColumns, {
1880
- indices: [1, 2, 3, 4, 5, 6, 7, 8],
1881
- color: color
1882
- })), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1883
- sx: {
1884
- display: ['initial', 'none', 'none', 'none']
1885
- }
1886
- }, /*#__PURE__*/React__default["default"].createElement(GuideColumns, {
1887
- indices: [1, 2, 3, 4, 5, 6],
1888
- color: color
1889
- }))));
1890
- };
1891
-
1892
- var colorCycle = ['red', 'orange', 'yellow', 'green', 'teal', 'blue', 'purple', 'pink'];
1893
-
1894
- function GuideColumns(_ref2) {
1895
- var indices = _ref2.indices,
1896
- color = _ref2.color;
1897
- var sx = {
1898
- outerGuideColumn: {
1899
- borderStyle: 'solid',
1900
- borderWidth: '0px',
1901
- borderLeftWidth: color === 'teal' ? '0px' : '1px',
1902
- borderRightWidth: color === 'teal' ? '0px' : '1px',
1903
- opacity: color == 'teal' ? 0.4 : 1
1904
- },
1905
- innerGuideColumn: {
1906
- borderStyle: 'solid',
1907
- borderWidth: '0px',
1908
- borderLeftWidth: '0px',
1909
- borderRightWidth: '0px',
1910
- opacity: color == 'teal' ? 0.4 : 1
1911
- }
1912
- };
1913
- return /*#__PURE__*/React__default["default"].createElement(Row, null, indices.map(function (i) {
1914
- return /*#__PURE__*/React__default["default"].createElement(Column, {
1915
- key: i,
1916
- start: [i],
1917
- width: [1, 1],
1918
- dl: 0.5,
1919
- dr: 0.5,
1920
- sx: _extends({
1921
- bg: color === 'teal' ? 'teal' : 'transparent',
1922
- height: '100vh'
1923
- }, sx.innerGuideColumn)
1924
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
1925
- sx: _extends({
1926
- mx: ['12px', 3, 3, 4],
1927
- bg: color === 'teal' ? 'background' : 'transparent',
1928
- height: '100%',
1929
- borderLeftColor: color === 'rainbow' ? colorCycle[i % 8] : 'muted',
1930
- borderRightColor: color === 'rainbow' ? colorCycle[i % 8] : 'muted'
1931
- }, sx.outerGuideColumn)
1932
- }));
1933
- }));
1934
- }
1935
-
1936
- var _excluded$6 = ["value", "sx"];
1937
-
1938
- var Settings = function Settings(_ref) {
1939
- var value = _ref.value,
1940
- sx = _ref.sx,
1941
- props = _objectWithoutPropertiesLoose(_ref, _excluded$6);
1942
-
1943
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, _extends({
1944
- sx: _extends({
1945
- cursor: 'pointer',
1946
- fill: 'none',
1947
- strokeWidth: '2px',
1948
- stroke: 'text',
1949
- '.paren': {
1950
- opacity: '0'
1951
- },
1952
- '@media (hover: hover) and (pointer: fine)': {
1953
- '&:hover .paren': {
1954
- opacity: '1'
1955
- }
1956
- }
1957
- }, sx),
1958
- "aria-label": "Toggle Menu"
1959
- }, props), !value && /*#__PURE__*/React__default["default"].createElement("svg", {
1960
- style: {
1961
- width: '50px',
1962
- height: '30px',
1963
- transform: 'scale(2)',
1964
- marginTop: '-3px'
1965
- },
1966
- xmlns: "http://www.w3.org/2000/svg",
1967
- viewBox: "0 0 68 36"
1968
- }, /*#__PURE__*/React__default["default"].createElement("line", {
1969
- x1: "24",
1970
- y1: "2.1",
1971
- x2: "24",
1972
- y2: "6.1"
1973
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1974
- x1: "24",
1975
- y1: "24.1",
1976
- x2: "24",
1977
- y2: "33.9"
1978
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1979
- x1: "44",
1980
- y1: "2.1",
1981
- x2: "44",
1982
- y2: "12.1"
1983
- }), /*#__PURE__*/React__default["default"].createElement("line", {
1984
- x1: "44",
1985
- y1: "30.1",
1986
- x2: "44",
1987
- y2: "33.9"
1988
- }), /*#__PURE__*/React__default["default"].createElement("circle", {
1989
- cx: "24",
1990
- cy: "15.1",
1991
- r: "5"
1992
- }), /*#__PURE__*/React__default["default"].createElement("circle", {
1993
- cx: "44",
1994
- cy: "21.1",
1995
- r: "5"
1996
- }), /*#__PURE__*/React__default["default"].createElement("path", {
1997
- style: {
1998
- transition: 'all 0.2s'
1999
- },
2000
- className: "paren",
2001
- d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
2002
- }), /*#__PURE__*/React__default["default"].createElement("path", {
2003
- style: {
2004
- transition: 'all 0.2s'
2005
- },
2006
- className: "paren",
2007
- d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
2008
- })), value && /*#__PURE__*/React__default["default"].createElement("svg", {
2009
- style: {
2010
- width: '50px',
2011
- height: '30px',
2012
- transform: 'scale(2)',
2013
- marginTop: '-3px'
2014
- },
2015
- xmlns: "http://www.w3.org/2000/svg",
2016
- viewBox: "0 0 68 36"
2017
- }, /*#__PURE__*/React__default["default"].createElement("line", {
2018
- x1: "50.85",
2019
- y1: "29.79",
2020
- x2: "17.15",
2021
- y2: "6.21"
2022
- }), /*#__PURE__*/React__default["default"].createElement("line", {
2023
- x1: "17.15",
2024
- y1: "29.79",
2025
- x2: "50.85",
2026
- y2: "6.21"
2027
- }), /*#__PURE__*/React__default["default"].createElement("path", {
2028
- style: {
2029
- transition: 'all 0.2s'
2030
- },
2031
- className: "paren",
2032
- d: "M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"
2033
- }), /*#__PURE__*/React__default["default"].createElement("path", {
2034
- style: {
2035
- transition: 'all 0.2s'
2036
- },
2037
- className: "paren",
2038
- d: "M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"
2039
- })));
2040
- };
2041
-
2042
- var Layout = function Layout(_ref) {
2043
- var title = _ref.title,
2044
- description = _ref.description,
2045
- card = _ref.card,
2046
- children = _ref.children,
2047
- status = _ref.status,
2048
- nav = _ref.nav,
2049
- settings = _ref.settings,
2050
- _ref$footer = _ref.footer,
2051
- footer = _ref$footer === void 0 ? true : _ref$footer,
2052
- _ref$header = _ref.header,
2053
- header = _ref$header === void 0 ? true : _ref$header,
2054
- _ref$metadata = _ref.metadata,
2055
- metadata = _ref$metadata === void 0 ? 'mouse' : _ref$metadata,
2056
- _ref$links = _ref.links,
2057
- links = _ref$links === void 0 ? 'remote' : _ref$links,
2058
- _ref$dimmer = _ref.dimmer,
2059
- dimmer = _ref$dimmer === void 0 ? 'bottom' : _ref$dimmer,
2060
- _ref$guide = _ref.guide,
2061
- guide = _ref$guide === void 0 ? true : _ref$guide,
2062
- _ref$scrollbar = _ref.scrollbar,
2063
- scrollbar = _ref$scrollbar === void 0 ? true : _ref$scrollbar,
2064
- _ref$fade = _ref.fade,
2065
- fade = _ref$fade === void 0 ? true : _ref$fade,
2066
- _ref$container = _ref.container,
2067
- container = _ref$container === void 0 ? true : _ref$container;
2068
- var content = children;
2069
-
2070
- if (fade) {
2071
- content = /*#__PURE__*/React__default["default"].createElement(FadeIn, {
2072
- duration: 250
2073
- }, content);
2074
- }
2075
-
2076
- if (container) {
2077
- content = /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2078
- sx: {
2079
- mb: [8, 8, 9, 10]
2080
- }
2081
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, content));
2082
- }
2083
-
2084
- var _useThemeUI = themeUi.useThemeUI(),
2085
- theme = _useThemeUI.theme;
2086
-
2087
- React.useEffect(function () {
2088
- if (!theme) return;
2089
-
2090
- var handler = function handler(e) {
2091
- if (e.matches && settings != null && settings.value && settings != null && settings.onClick) {
2092
- settings == null ? void 0 : settings.onClick();
2093
- }
2094
- };
2095
-
2096
- var query = window.matchMedia("(min-width: " + theme.breakpoints[1] + ")");
2097
- query.onchange = handler;
2098
- return function () {
2099
- query.onchange = null;
2100
- };
2101
- }, [theme == null ? void 0 : theme.breakpoints, settings == null ? void 0 : settings.value, settings == null ? void 0 : settings.onClick]);
2102
- var menuItems = [/*#__PURE__*/React__default["default"].createElement(Dimmer, {
2103
- key: "dimmer",
2104
- sx: {
2105
- color: 'primary',
2106
- mt: '-2px',
2107
- display: ['block', 'block', dimmer === 'top' ? 'block' : 'none', dimmer === 'top' ? 'block' : 'none']
2108
- }
2109
- })];
2110
-
2111
- if (settings) {
2112
- menuItems.push( /*#__PURE__*/React__default["default"].createElement(Settings, _extends({
2113
- key: "settings",
2114
- sx: {
2115
- mr: ['2px'],
2116
- display: ['inherit', 'inherit', 'none', 'none']
2117
- }
2118
- }, settings)));
2119
- }
2120
-
2121
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, guide && /*#__PURE__*/React__default["default"].createElement(Guide, {
2122
- color: guide
2123
- }), scrollbar && /*#__PURE__*/React__default["default"].createElement(Scrollbar, null), /*#__PURE__*/React__default["default"].createElement(Meta, {
2124
- card: card,
2125
- description: description,
2126
- title: title
2127
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Flex, {
2128
- sx: {
2129
- flexDirection: 'column',
2130
- minHeight: '100vh'
2131
- }
2132
- }, header && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2133
- as: "header",
2134
- sx: {
2135
- width: '100%',
2136
- borderStyle: 'solid',
2137
- borderColor: 'muted',
2138
- borderWidth: '0px',
2139
- borderBottomWidth: '1px',
2140
- position: 'sticky',
2141
- top: 0,
2142
- bg: 'background',
2143
- height: '56px',
2144
- zIndex: 2000
2145
- }
2146
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(Header, {
2147
- mode: links,
2148
- status: status,
2149
- nav: nav,
2150
- menuItems: menuItems
2151
- }))), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2152
- sx: {
2153
- width: '100%',
2154
- flex: '1 1 auto'
2155
- }
2156
- }, content), footer && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2157
- as: "footer",
2158
- sx: {
2159
- width: '100%',
2160
- borderStyle: 'solid',
2161
- borderColor: 'muted',
2162
- borderWidth: '0px',
2163
- borderTopWidth: '1px'
2164
- }
2165
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Container, null, /*#__PURE__*/React__default["default"].createElement(Footer, null))), dimmer === 'bottom' && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2166
- sx: {
2167
- display: ['none', 'none', 'initial', 'initial'],
2168
- position: ['fixed'],
2169
- right: [13],
2170
- bottom: [17, 17, 15, 15]
2171
- }
2172
- }, /*#__PURE__*/React__default["default"].createElement(Dimmer, null)), metadata && /*#__PURE__*/React__default["default"].createElement(Metadata, {
2173
- mode: metadata
2174
- })));
2175
- };
2176
-
2177
- var Custom404 = function Custom404() {
2178
- return /*#__PURE__*/React__default["default"].createElement(Layout, {
2179
- footer: false,
2180
- title: '404 / carbonplan'
2181
- }, /*#__PURE__*/React__default["default"].createElement(Row, {
2182
- sx: {
2183
- mb: [5, 0, 0],
2184
- pt: [0, 0, 6]
2185
- }
2186
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
2187
- start: [1, 1, 3, 3],
2188
- width: [6, 4, 4, 4]
2189
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Styled.h1, null, "Oops!"), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2190
- sx: {
2191
- fontSize: [4, 4, 4, 5],
2192
- lineHeight: 'h3',
2193
- mt: [3, 4, 4],
2194
- mb: [2, 3, 3],
2195
- maxWidth: ['90%', '90%', '400px']
2196
- }
2197
- }, "Sorry but we can't seem to find the page you are looking for."), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2198
- sx: {
2199
- color: 'secondary',
2200
- fontFamily: 'mono',
2201
- letterSpacing: 'mono',
2202
- fontSize: [2, 2, 2, 3],
2203
- mt: [4, 5, 5]
2204
- }
2205
- }, "ERROR CODE 404")), /*#__PURE__*/React__default["default"].createElement(Column, {
2206
- start: [2, 5, 7, 7],
2207
- width: [4, 4, 4, 4]
2208
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2209
- sx: {
2210
- width: ['100%'],
2211
- mt: [2, 4, 4, 5],
2212
- fill: 'primary'
2213
- }
2214
- }, /*#__PURE__*/React__default["default"].createElement(emoji.PoopSad, {
2215
- sx: {
2216
- width: '100%',
2217
- height: 'auto'
2218
- }
2219
- })))));
2220
- };
2221
-
2222
- var Expander = function Expander(_ref) {
2223
- var value = _ref.value,
2224
- id = _ref.id,
2225
- onClick = _ref.onClick,
2226
- sx = _ref.sx;
2227
- return /*#__PURE__*/React__default["default"].createElement(themeUi.IconButton, {
2228
- onClick: onClick,
2229
- id: id,
2230
- role: "checkbox",
2231
- "aria-checked": value,
2232
- "aria-label": "Expand",
2233
- sx: _extends({
2234
- display: 'inline-block',
2235
- width: 24,
2236
- height: 24,
2237
- p: [1],
2238
- cursor: 'pointer',
2239
- fill: 'secondary',
2240
- stroke: 'secondary',
2241
- '@media (hover: hover) and (pointer: fine)': {
2242
- '&:hover': {
2243
- fill: 'primary',
2244
- stroke: 'primary'
2245
- }
2246
- }
2247
- }, sx)
2248
- }, /*#__PURE__*/React__default["default"].createElement("svg", {
2249
- viewBox: "0 0 16 16"
2250
- }, /*#__PURE__*/React__default["default"].createElement("path", {
2251
- d: "M8,0 V16 M0,8 H16",
2252
- style: {
2253
- strokeWidth: 2,
2254
- transition: '0.25s all',
2255
- transformOrigin: '8px 8px',
2256
- transform: value ? 'rotate(45deg)' : ''
2257
- }
2258
- })));
2259
- };
2260
-
2261
- var _excluded$5 = ["label", "value", "sx", "children"];
2262
-
2263
- var Tag = function Tag(_ref) {
2264
- var label = _ref.label,
2265
- value = _ref.value,
2266
- sx = _ref.sx,
2267
- children = _ref.children,
2268
- props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
2269
-
2270
- var color = sx && sx.color ? sx.color : 'primary';
2271
- var isClickable = props && (props.onClick || props.onDoubleClick);
2272
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
2273
- as: isClickable ? 'button' : 'span',
2274
- role: "checkbox",
2275
- "aria-checked": value,
2276
- "aria-label": label,
2277
- sx: _extends({
2278
- display: 'inline-block',
2279
- fontSize: [1, 1, 1, 2],
2280
- fontFamily: 'mono',
2281
- letterSpacing: 'mono',
2282
- cursor: isClickable ? 'pointer' : 'inherit',
2283
- color: color,
2284
- backgroundColor: 'transparent',
2285
- borderStyle: 'solid',
2286
- borderColor: color,
2287
- lineHeight: 'body',
2288
- borderWidth: '0px',
2289
- borderBottomWidth: '1px',
2290
- textTransform: 'uppercase',
2291
- userSelect: 'none',
2292
- transition: 'opacity 0.05s',
2293
- pt: ['1px'],
2294
- pb: ['2px'],
2295
- px: [0],
2296
- m: [0],
2297
- opacity: value == null || value ? 1 : color == 'primary' ? 0.24 : 0.33
2298
- }, sx)
2299
- }, props), children);
2300
- };
2301
-
2302
- var _excluded$4 = ["values", "setValues", "label", "colors", "showAll", "multiSelect"];
2303
- var sx = {
2304
- label: {
2305
- fontFamily: 'mono',
2306
- letterSpacing: 'mono',
2307
- fontSize: [1, 1, 1, 2],
2308
- color: 'secondary',
2309
- userSelect: 'none',
2310
- textTransform: 'uppercase'
2311
- }
2312
- };
2313
-
2314
- var duplicateOptions = function duplicateOptions(options, defaultValue, overrides) {
2315
- if (overrides === void 0) {
2316
- overrides = {};
2317
- }
2318
-
2319
- return Object.keys(options).reduce(function (o, key) {
2320
- var _Object$assign;
2321
-
2322
- return Object.assign(o, (_Object$assign = {}, _Object$assign[key] = overrides[key] || defaultValue, _Object$assign));
2323
- }, {});
2324
- };
2325
-
2326
- var isAll = function isAll(option) {
2327
- return Object.keys(option).filter(function (d) {
2328
- return option[d];
2329
- }).length == Object.keys(option).length;
2330
- };
2331
-
2332
- var updateValues = function updateValues(_ref) {
2333
- var values = _ref.values,
2334
- multiSelect = _ref.multiSelect,
2335
- setValues = _ref.setValues,
2336
- value = _ref.value;
2337
- var isAllAlreadySelected = isAll(values);
2338
- var isSelectingAll = value === 'all';
2339
- var updatedToggle;
2340
-
2341
- if (multiSelect) {
2342
- if (isSelectingAll && !isAllAlreadySelected) {
2343
- // select all
2344
- updatedToggle = duplicateOptions(values, true);
2345
- } else if (isSelectingAll && isAllAlreadySelected) {
2346
- // deselect all
2347
- updatedToggle = duplicateOptions(values, false);
2348
- } else {
2349
- var _extends2;
2350
-
2351
- // de/select value, inherit other values
2352
- updatedToggle = _extends({}, values, (_extends2 = {}, _extends2[value] = !values[value], _extends2));
2353
- }
2354
- } else {
2355
- if (isSelectingAll && !isAllAlreadySelected) {
2356
- // select all
2357
- updatedToggle = duplicateOptions(values, true);
2358
- } else if (isSelectingAll && isAllAlreadySelected) ; else {
2359
- var _duplicateOptions;
2360
-
2361
- // select only value
2362
- updatedToggle = duplicateOptions(values, false, (_duplicateOptions = {}, _duplicateOptions[value] = true, _duplicateOptions));
2363
- }
2364
- }
2365
-
2366
- if (updatedToggle) {
2367
- setValues(updatedToggle);
2368
- }
2369
- };
2370
-
2371
- var Filter = function Filter(_ref2) {
2372
- var values = _ref2.values,
2373
- setValues = _ref2.setValues,
2374
- label = _ref2.label,
2375
- colors = _ref2.colors,
2376
- _ref2$showAll = _ref2.showAll,
2377
- showAll = _ref2$showAll === void 0 ? false : _ref2$showAll,
2378
- _ref2$multiSelect = _ref2.multiSelect,
2379
- multiSelect = _ref2$multiSelect === void 0 ? false : _ref2$multiSelect,
2380
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$4);
2381
-
2382
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, props, label && /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2383
- sx: sx.label
2384
- }, label), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2385
- sx: {
2386
- mt: label ? [3] : 0
2387
- }
2388
- }, showAll && /*#__PURE__*/React__default["default"].createElement(Tag, {
2389
- onClick: function onClick() {
2390
- return updateValues({
2391
- values: values,
2392
- multiSelect: multiSelect,
2393
- setValues: setValues,
2394
- value: 'all'
2395
- });
2396
- },
2397
- value: isAll(values),
2398
- sx: {
2399
- mr: [2]
2400
- }
2401
- }, "All"), Object.keys(values).map(function (d, i) {
2402
- return /*#__PURE__*/React__default["default"].createElement(Tag, {
2403
- onClick: function onClick() {
2404
- return updateValues({
2405
- values: values,
2406
- multiSelect: multiSelect,
2407
- setValues: setValues,
2408
- value: d
2409
- });
2410
- },
2411
- onDoubleClick: function onDoubleClick() {
2412
- return updateValues({
2413
- values: values,
2414
- multiSelect: false,
2415
- setValues: setValues,
2416
- value: d
2417
- });
2418
- },
2419
- key: i,
2420
- value: values[d],
2421
- sx: {
2422
- width: 'max-content',
2423
- color: colors ? colors[d] : 'primary',
2424
- mr: [2],
2425
- mb: [1]
2426
- }
2427
- }, d);
2428
- })));
2429
- };
2430
-
2431
- var sizes = {
2432
- xs: [1],
2433
- sm: [3],
2434
- md: [5],
2435
- lg: [7],
2436
- xl: [9]
2437
- };
2438
-
2439
- var Group = function Group(_ref) {
2440
- var children = _ref.children,
2441
- _ref$direction = _ref.direction,
2442
- direction = _ref$direction === void 0 ? 'vertical' : _ref$direction,
2443
- _ref$spacing = _ref.spacing,
2444
- spacing = _ref$spacing === void 0 ? 'md' : _ref$spacing;
2445
- var marginValue;
2446
-
2447
- if (typeof spacing === 'string') {
2448
- marginValue = sizes[spacing];
2449
- } else if (typeof spacing === 'number') {
2450
- marginValue = [spacing];
2451
- } else if (Array.isArray(spacing) && spacing.every(function (el) {
2452
- return typeof el === 'number';
2453
- })) {
2454
- marginValue = spacing;
2455
- }
2456
-
2457
- if (!marginValue) {
2458
- throw new Error('Invalid spacing size. Must be numeric value(s) or one of xs, sm, md, lg, or xl');
2459
- }
2460
-
2461
- if (!['horizontal', 'vertical'].includes(direction)) {
2462
- throw new Error('Invalid direction value. Must be either horizontal or vertical');
2463
- }
2464
-
2465
- var marginProperty = direction === 'vertical' ? 'mt' : 'ml';
2466
- var additionalStyles = direction === 'horizontal' ? {
2467
- display: 'inline-block'
2468
- } : {};
2469
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, null, React__default["default"].Children.map(children, function (child, i) {
2470
- var _extends2;
2471
-
2472
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2473
- sx: _extends((_extends2 = {}, _extends2[marginProperty] = i > 0 ? marginValue : 0, _extends2), additionalStyles)
2474
- }, child);
2475
- }));
2476
- };
2477
-
2478
- var _excluded$3 = ["size", "inverted", "sx"];
2479
-
2480
- var Input = function Input(_ref, ref) {
2481
- var _extends2;
2482
-
2483
- var _ref$size = _ref.size,
2484
- size = _ref$size === void 0 ? 'sm' : _ref$size,
2485
- inverted = _ref.inverted,
2486
- sx = _ref.sx,
2487
- props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
2488
-
2489
- var defaultColor = inverted ? 'secondary' : 'primary';
2490
-
2491
- var styles = _extends((_extends2 = {
2492
- color: defaultColor,
2493
- borderColor: 'secondary',
2494
- borderStyle: 'solid',
2495
- borderWidth: '0px',
2496
- borderBottomWidth: '1px',
2497
- borderRadius: '0px',
2498
- transition: 'border 0.15s'
2499
- }, _extends2["borderBottomWidth"] = '1px', _extends2.width = 'calc(min(15ch, 100%))', _extends2.p = [0], _extends2.py = ['2px'], _extends2['input::-webkit-outer-spin-button'] = {
2500
- WebkitAppearance: 'none',
2501
- margin: 0
2502
- }, _extends2['input::-webkit-inner-spin-button'] = {
2503
- WebkitAppearance: 'none',
2504
- margin: 0
2505
- }, _extends2[':focus'] = {
2506
- borderColor: 'primary'
2507
- }, _extends2[':focus-visible'] = {
2508
- outline: 'none !important',
2509
- background: 'none !important'
2510
- }, _extends2), getSizeStyles(size), sx);
2511
-
2512
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Input, _extends({}, props, {
2513
- ref: ref,
2514
- sx: styles
2515
- }));
2516
- };
2517
-
2518
- var input = React.forwardRef(Input);
2519
-
2520
- var getProps = function getProps(test) {
2521
- return function (props) {
2522
- var next = {};
2523
-
2524
- for (var key in props) {
2525
- if (test(key || '')) next[key] = props[key];
2526
- }
2527
-
2528
- return next;
2529
- };
2530
- };
2531
-
2532
- var _excluded$2 = ["children", "size", "sx", "sxSelect"];
2533
-
2534
- var Select = function Select(_ref) {
2535
- var _extends2;
2536
-
2537
- var children = _ref.children,
2538
- _ref$size = _ref.size,
2539
- size = _ref$size === void 0 ? 'sm' : _ref$size,
2540
- sx = _ref.sx,
2541
- sxSelect = _ref.sxSelect,
2542
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
2543
-
2544
- var color = sx && sx.color ? sx.color : 'primary';
2545
- var sizeStyles = getSizeStyles(size);
2546
- var ref = React.useRef(null);
2547
- var _onChange = props.onChange;
2548
- var omitOnChange = getProps(function (k) {
2549
- return k !== 'onChange';
2550
- })(props);
2551
-
2552
- if (!['xs', 'sm', 'md'].includes(size)) {
2553
- throw new Error('Size must be xs, sm, or md');
2554
- }
2555
-
2556
- var pr, height, width, ml, top;
2557
-
2558
- if (size === 'xs') {
2559
- height = [14, 14, 14, 16];
2560
- width = [14, 14, 14, 14];
2561
- top = ['1px'];
2562
- ml = ['-14px', '-14px', '-14px', '-16px'];
2563
- }
2564
-
2565
- if (size === 'sm') {
2566
- height = [15, 15, 15, 20];
2567
- width = [15, 15, 15, 20];
2568
- top = ['1px'];
2569
- ml = ['-16px', '-16px', '-16px', '-20px'];
2570
- }
2571
-
2572
- if (size === 'md') {
2573
- height = [20, 20, 20, 20];
2574
- width = [20, 20, 20, 20];
2575
- top = ['2px'];
2576
- ml = ['-20px', '-20px', '-20px', '-20px'];
2577
- }
2578
-
2579
- pr = width.map(function (d) {
2580
- return d + 12;
2581
- });
2582
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2583
- sx: _extends({
2584
- display: 'inline-block'
2585
- }, sx)
2586
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
2587
- as: "select",
2588
- ref: ref,
2589
- onChange: function onChange(e) {
2590
- ref.current.blur();
2591
- if (_onChange) _onChange(e);
2592
- },
2593
- sx: _extends({}, sizeStyles, (_extends2 = {
2594
- lineHeight: 'normal',
2595
- cursor: 'pointer',
2596
- WebkitAppearance: 'none',
2597
- MozAppearance: 'none',
2598
- pb: ['5px'],
2599
- bg: 'transparent',
2600
- pr: pr,
2601
- border: 'none',
2602
- borderBottomStyle: 'solid',
2603
- borderBottomWidth: '1px',
2604
- borderBottomColor: 'primary',
2605
- borderRadius: '0px',
2606
- color: 'text',
2607
- width: 'fit-content'
2608
- }, _extends2["color"] = color, _extends2.userSelect = 'none', _extends2['@media (hover: none) and (pointer: coarse)'] = {
2609
- '&:focus-visible': {
2610
- outline: 'none !important',
2611
- background: 'transparent !important'
2612
- }
2613
- }, _extends2), sxSelect)
2614
- }, omitOnChange), children), /*#__PURE__*/React__default["default"].createElement(icons.Arrow, {
2615
- sx: {
2616
- width: width,
2617
- height: height,
2618
- position: 'relative',
2619
- ml: ml,
2620
- top: top,
2621
- fill: 'secondary',
2622
- transform: 'rotate(135deg)',
2623
- pointerEvents: 'none'
2624
- }
2625
- }));
2626
- };
2627
-
2628
- var _excluded$1 = ["sx"];
2629
-
2630
- var Slider = function Slider(_ref, ref) {
2631
- var sx = _ref.sx,
2632
- props = _objectWithoutPropertiesLoose(_ref, _excluded$1);
2633
-
2634
- var color = sx && sx.color ? sx.color : 'primary';
2635
-
2636
- var _useThemeUI = themeUi.useThemeUI(),
2637
- colors = _useThemeUI.theme.rawColors;
2638
-
2639
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Slider, _extends({
2640
- ref: ref,
2641
- sx: _extends({
2642
- '&::-webkit-slider-thumb': {
2643
- height: [22, 18, 16],
2644
- width: [22, 18, 16],
2645
- boxShadow: "0 0 0 0px " + colors.secondary,
2646
- transition: 'box-shadow .15s ease'
2647
- },
2648
- '&::-moz-range-thumb': {
2649
- height: [22, 18, 16],
2650
- width: [22, 18, 16],
2651
- boxShadow: "0 0 0 0px " + colors.secondary,
2652
- transition: 'box-shadow .15s ease'
2653
- },
2654
- ':focus-visible': {
2655
- outline: 'none !important',
2656
- background: colors.secondary + " !important"
2657
- },
2658
- ':focus': {
2659
- color: color,
2660
- '&::-webkit-slider-thumb': {
2661
- boxShadow: "0 0 0 4px " + colors.secondary
2662
- },
2663
- '&::-moz-range-thumb': {
2664
- boxShadow: "0 0 0 4px " + colors.secondary
2665
- }
2666
- },
2667
- color: color
2668
- }, sx)
2669
- }, props));
2670
- };
2671
-
2672
- var slider = React.forwardRef(Slider);
2673
-
2674
- var styles = {
2675
- reset: {
2676
- verticalAlign: 'baseline',
2677
- border: 0,
2678
- outline: 0,
2679
- margin: 0,
2680
- padding: 0
2681
- },
2682
- row: {
2683
- borderStyle: 'solid',
2684
- borderWidth: '0px',
2685
- borderTopWidth: '1px',
2686
- borderColor: 'muted',
2687
- pt: [3, 3, 3, '20px'],
2688
- pb: [3, 3, 3, '20px'],
2689
- mb: ['2px']
2690
- },
2691
- header: {
2692
- display: 'block',
2693
- textTransform: 'uppercase',
2694
- letterSpacing: 'smallcaps',
2695
- fontFamily: 'heading',
2696
- fontSize: [2, 2, 2, 3]
2697
- },
2698
- index: {
2699
- display: 'block',
2700
- textTransform: 'uppercase',
2701
- letterSpacing: 'smallcaps',
2702
- fontFamily: 'heading',
2703
- fontSize: [2, 2, 2, 3]
2704
- },
2705
- entry: {
2706
- display: 'block',
2707
- fontSize: [2, 2, 2, 3],
2708
- fontFamily: 'faux',
2709
- letterSpacing: 'faux',
2710
- mb: ['1px'],
2711
- mt: [2, 0, 0, 0]
2712
- }
2713
- };
2714
-
2715
- var Table = function Table(_ref) {
2716
- var data = _ref.data,
2717
- sx = _ref.sx,
2718
- color = _ref.color,
2719
- header = _ref.header,
2720
- columns = _ref.columns,
2721
- start = _ref.start,
2722
- width = _ref.width,
2723
- _ref$index = _ref.index,
2724
- index = _ref$index === void 0 ? true : _ref$index,
2725
- _ref$borderBottom = _ref.borderBottom,
2726
- borderBottom = _ref$borderBottom === void 0 ? true : _ref$borderBottom,
2727
- _ref$borderTop = _ref.borderTop,
2728
- borderTop = _ref$borderTop === void 0 ? true : _ref$borderTop;
2729
-
2730
- if (!start || !columns || !width) {
2731
- throw new Error('Must provide columns, start, and width');
2732
- }
2733
-
2734
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2735
- as: "table",
2736
- sx: _extends({
2737
- display: 'block'
2738
- }, sx)
2739
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2740
- as: "tbody",
2741
- sx: {
2742
- display: 'block'
2743
- }
2744
- }, header && /*#__PURE__*/React__default["default"].createElement(Row, {
2745
- as: "tr",
2746
- sx: _extends({}, styles.reset, styles.header, styles.row, {
2747
- color: color,
2748
- borderTopWidth: !borderTop ? '0px' : '1px'
2749
- })
2750
- }, /*#__PURE__*/React__default["default"].createElement(Column, {
2751
- as: "td",
2752
- start: [1],
2753
- width: columns,
2754
- sx: styles.index
2755
- }, header)), data.map(function (row, i) {
2756
- return /*#__PURE__*/React__default["default"].createElement(Row, {
2757
- as: "tr",
2758
- columns: columns,
2759
- key: i,
2760
- sx: _extends({}, styles.reset, styles.row, {
2761
- pb: borderBottom && i === data.length - 1 ? ['18px', '18px', '18px', '22px'] : [3, 3, 3, '20px'],
2762
- borderBottomWidth: borderBottom && i === data.length - 1 ? '1px' : '0px',
2763
- borderTopWidth: !borderTop && i === 0 && !header ? '0px' : '1px'
2764
- })
2765
- }, row.map(function (column, j) {
2766
- return /*#__PURE__*/React__default["default"].createElement(Column, {
2767
- as: "td",
2768
- key: j,
2769
- start: start[j],
2770
- width: width[j],
2771
- sx: j == 0 && index ? _extends({}, styles.reset, styles.index) : _extends({}, styles.reset, styles.entry)
2772
- }, column);
2773
- }));
2774
- })));
2775
- };
2776
-
2777
- var _excluded = ["value", "onClick", "disabled", "sx"];
2778
-
2779
- var Toggle = function Toggle(_ref, ref) {
2780
- var value = _ref.value,
2781
- onClick = _ref.onClick,
2782
- disabled = _ref.disabled,
2783
- sx = _ref.sx,
2784
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
2785
-
2786
- var color$1 = sx && sx.color ? sx.color : 'primary';
2787
- value = disabled ? false : value;
2788
- return /*#__PURE__*/React__default["default"].createElement(themeUi.Box, _extends({
2789
- ref: ref,
2790
- as: "button",
2791
- onClick: onClick,
2792
- role: "checkbox",
2793
- "aria-checked": value,
2794
- "aria-label": "Toggle",
2795
- sx: _extends({
2796
- border: 'none',
2797
- background: 'none',
2798
- cursor: disabled ? 'default' : 'pointer',
2799
- p: [0],
2800
- m: [0],
2801
- display: 'inline-block'
2802
- }, sx)
2803
- }, props), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2804
- sx: {
2805
- width: '50px',
2806
- height: '20px',
2807
- borderRadius: '20px',
2808
- backgroundColor: value ? color.transparentize(color$1, color$1 == 'primary' ? 0.5 : 0.45) : 'muted',
2809
- position: 'relative',
2810
- transition: '0.15s',
2811
- display: 'inline-block'
2812
- }
2813
- }, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2814
- sx: {
2815
- width: '14px',
2816
- height: '14px',
2817
- borderRadius: '7px',
2818
- position: 'absolute',
2819
- left: value ? '32px' : '4px',
2820
- top: '3px',
2821
- backgroundColor: value ? color$1 : 'secondary',
2822
- transition: '0.15s'
2823
- }
2824
- })));
2825
- };
2826
-
2827
- var toggle = React.forwardRef(Toggle);
2828
-
2829
- var Tracking = function Tracking(_ref) {
2830
- var id = _ref.id;
2831
-
2832
- if (!id) {
2833
- return null;
2834
- }
2835
-
2836
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("script", {
2837
- async: true,
2838
- src: "https://www.googletagmanager.com/gtag/js?id=" + id
2839
- }), /*#__PURE__*/React__default["default"].createElement("script", {
2840
- dangerouslySetInnerHTML: {
2841
- __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 "
2842
- }
2843
- }));
2844
- };
2845
-
2846
- var Tray = function Tray(_ref) {
2847
- var expanded = _ref.expanded,
2848
- sx = _ref.sx,
2849
- children = _ref.children;
2850
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2851
- sx: {
2852
- position: 'fixed',
2853
- top: '56px',
2854
- bottom: '0px',
2855
- left: '0px',
2856
- width: 'calc(100vw)',
2857
- mt: ['56px'],
2858
- bg: 'background',
2859
- zIndex: 1000,
2860
- transition: 'opacity 0.15s',
2861
- opacity: expanded ? 0.9 : 0,
2862
- pointerEvents: expanded ? 'all' : 'none'
2863
- }
2864
- }), /*#__PURE__*/React__default["default"].createElement(themeUi.Box, {
2865
- sx: _extends({
2866
- position: 'fixed',
2867
- width: 'calc(100vw)',
2868
- top: '0px',
2869
- mt: ['56px'],
2870
- pb: [6, 7, 7, 8],
2871
- pt: [5, 6, 7, 8],
2872
- bg: 'background',
2873
- zIndex: 1100,
2874
- borderStyle: 'solid',
2875
- borderColor: 'muted',
2876
- borderWidth: '0px',
2877
- borderBottomWidth: '1px',
2878
- transition: 'transform 0.15s',
2879
- ml: [-3, -4, -5, -6],
2880
- pl: [3, 4, 5, 6],
2881
- pr: [3, 4, 5, 6],
2882
- transform: expanded ? 'translateY(0)' : 'translateY(-100%)'
2883
- }, sx)
2884
- }, /*#__PURE__*/React__default["default"].createElement(Row, null, /*#__PURE__*/React__default["default"].createElement(Column, {
2885
- start: [1, 1, 1, 1],
2886
- width: [6, 8, 10, 10]
2887
- }, children))));
2888
- };
2889
-
2890
- var defaultOptions = {
2891
- month: 'short',
2892
- day: 'numeric',
2893
- year: 'numeric'
2894
- };
2895
-
2896
- var formatDateElement = function formatDateElement(date, element, option) {
2897
- var _date$toLocaleString;
2898
-
2899
- if (!option) {
2900
- return null;
2901
- }
2902
-
2903
- var format = typeof option === 'string' ? option : defaultOptions[element];
2904
- var result = date.toLocaleString('default', (_date$toLocaleString = {}, _date$toLocaleString[element] = format, _date$toLocaleString));
2905
-
2906
- if (format === 'numeric' && element === 'day') {
2907
- return result.padStart(2, '0');
2908
- } else {
2909
- return result;
2910
- }
2911
- };
2912
-
2913
- var formatDate = function formatDate(date, options) {
2914
- var _options$separator;
2915
-
2916
- if (options === void 0) {
2917
- options = defaultOptions;
2918
- }
2919
-
2920
- var d = new Date(date.replace(/-/g, '/'));
2921
- var month = formatDateElement(d, 'month', options.month);
2922
- var day = formatDateElement(d, 'day', options.day);
2923
- var year = formatDateElement(d, 'year', options.year);
2924
- return [month, day, year].filter(Boolean).join((_options$separator = options.separator) != null ? _options$separator : ' ');
2925
- };
2926
-
2927
- exports.Badge = Badge;
2928
- exports.Button = button;
2929
- exports.Callout = callout;
2930
- exports.Colorbar = Colorbar;
2931
- exports.Column = Column;
2932
- exports.Custom404 = Custom404;
2933
- exports.Dimmer = Dimmer;
2934
- exports.Expander = Expander;
2935
- exports.FadeIn = FadeIn;
2936
- exports.Filter = Filter;
2937
- exports.Footer = Footer;
2938
- exports.Group = Group;
2939
- exports.Guide = Guide;
2940
- exports.Header = Header;
2941
- exports.Input = input;
2942
- exports.Layout = Layout;
2943
- exports.Link = Link$1;
2944
- exports.Logo = Logo;
2945
- exports.Menu = Menu;
2946
- exports.Meta = Meta;
2947
- exports.Monogram = Monogram;
2948
- exports.Row = Row;
2949
- exports.Scrollbar = Scrollbar;
2950
- exports.Select = Select;
2951
- exports.Settings = Settings;
2952
- exports.Slider = slider;
2953
- exports.Table = Table;
2954
- exports.Tag = Tag;
2955
- exports.Toggle = toggle;
2956
- exports.Tracking = Tracking;
2957
- exports.Tray = Tray;
2958
- exports.formatDate = formatDate;
2959
- exports.getScrollbarWidth = getScrollbarWidth;
1
+ var e=require("react"),t=require("theme-ui"),n=require("@theme-ui/color"),r=require("next/link"),a=require("@carbonplan/icons"),o=require("@carbonplan/emoji"),l=require("next/head"),i=require("@emotion/react");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=c(e),s=c(r),u=c(l);function m(){return m=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},m.apply(this,arguments)}function p(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)t.indexOf(n=o[r])>=0||(a[n]=e[n]);return a}var f=["sx","children"],x=["href","children","internal","tracking"],h=e.forwardRef(function(e,n){var r=e.href,a=e.children,o=e.internal,l=void 0!==o&&o,i=e.tracking,c=void 0!==i&&i,u=p(e,x);if(l||r&&r.startsWith("/"))return d.default.createElement(s.default,{href:r,passHref:!0},d.default.createElement(t.Link,m({ref:n},u),a));if(c){var f,h;r&&r.includes("pdf")?(f="PDF",h="download"):(f="website",h="external");var g=function(e){!function(e){var t=e.action;"function"==typeof window.gtag?window.gtag("event",t,{event_category:e.category,event_label:e.label,value:e.value}):console.warn("Missing window.gtag, skipping analytics action: '"+t+"'.")}({action:f,category:h,label:r})};return d.default.createElement(t.Link,m({ref:n,onClick:g,onContextMenu:g,href:r},u),a)}return d.default.createElement(t.Link,m({ref:n,href:r},u),a)}),g=function(e){if(!["xs","sm","md","lg","xl"].includes(e))throw new Error("Size must be xs, sm, md, lg, or xl");var t,n,r,a;return"xs"===e&&(t=[2,2,2,3],n="body",r="body",a=[1.2]),"sm"===e&&(t=[3,3,3,4],n="body",r="body",a=[1.2]),"md"===e&&(t=[4,4,4,5],n="body",r="body",a=[1.2]),"lg"===e&&(t=[5,5,6,7],n="heading",r="heading",a=[1.2,1.2,1.25,1.25]),"xl"===e&&(t=[6,7,8,9],n="heading",r="heading",a=[1.25]),{fontSize:t,fontFamily:n,letterSpacing:r,lineHeight:a}},y=["size","prefix","suffix","inverted","sx","children","align","href","internal","tracking"],E=e.forwardRef(function(n,r){var a,o,l,i,c,s=n.size,u=void 0===s?"sm":s,f=n.prefix,x=n.suffix,E=n.inverted,b=n.sx,v=n.children,w=n.align,k=n.href,C=n.internal,S=n.tracking,B=p(n,y);if(!["xs","sm","md","lg","xl"].includes(u))throw new Error("Size must be xs, sm, md, lg, or xl");var z,L,M,A,T,W,F=b&&b.color?b.color:null,I=F||(E?"secondary":"primary"),R=F||E?"primary":"secondary";"xs"===u&&(o=["6px","6px","6px","6px"],l=[12,12,12,13],i=[12,12,12,13],c=[1.5,1.5,1.5,1.5],a={transform:"translateY(0.25px)"}),"sm"===u&&(o=["7px","7px","7px","7px"],l=[13,13,13,18],i=[13,13,13,18],c=[1.5,1.5,1.5,2],a={transform:"translateY(0.25px)"}),"md"===u&&(o=["8px","8px","8px","8px"],l=[18,18,18,24],i=[18,18,18,24],c=[2,2,2,3]),"lg"===u&&(o=["10px","10px","12px","16px"],l=[24,24,34,46],i=[24,24,34,46],c=[3,3,4,5]),"xl"===u&&(o=["12px","16px","18px","20px"],l=[34,46,56,68],i=[34,46,56,68],c=[4,5,6,7]),w?(M=w,A=w):f&&x?(M="initial",A="initial"):f?M="initial":x&&(A="middle"),T="middle"===M?{}:a,W="middle"===A?{}:a,f&&(z={"&:hover > #prefix-span > #prefix":m({color:R},f.type.hover)},f=e.cloneElement(f,{id:"prefix",sx:m({position:"relative",height:l,width:i,mr:v?o:[0],strokeWidth:c,verticalAlign:M,transition:"color 0.15s, transform 0.15s"},f.props.sx)})),x&&(L={"&:hover > #suffix-span >#suffix":m({color:R},x.type.hover)},x=e.cloneElement(x,{id:"suffix",sx:m({height:l,width:i,ml:v?o:[0],strokeWidth:c,verticalAlign:A,transition:"color 0.15s, transform 0.15s"},x.props.sx)}));var D=m({},g(u),{lineHeight:1.05,border:"none",background:"transparent",display:"block",color:I,padding:[0],textAlign:"left",cursor:"pointer",width:"fit-content","@media (hover: hover) and (pointer: fine)":m({"&:hover":{color:R}},L,z)},b),O=d.default.createElement(d.default.Fragment,null,d.default.createElement(t.Box,{as:"span",id:"prefix-span",sx:m({display:"inline-block"},T)},f&&f),d.default.createElement(t.Box,{as:"span",sx:{transition:"color 0.15s"}},v),d.default.createElement(t.Box,{as:"span",id:"suffix-span",sx:m({display:"inline-block"},W)},x&&x));return k?d.default.createElement(h,m({ref:r,href:k,internal:C,tracking:S,sx:m({},D,{textDecoration:"none"})},B),O):d.default.createElement(t.Box,m({ref:r,as:"button",sx:D},B),O)}),b=["label","children","inverted","color","href","internal","tracking","sx"],v=e.forwardRef(function(e,n){var r=e.label,o=e.children,l=e.inverted,i=e.color,c=e.href,s=e.internal,u=e.tracking,f=e.sx,x=p(e,b),g=i||(l?"secondary":"primary"),y=i||l?"primary":"secondary",E=m({border:"none",padding:[0],fontSize:[3,3,3,4],color:g,background:"transparent",textDecoration:"none",fontFamily:"body",lineHeight:"h3",letterSpacing:"body",width:"fit-content",cursor:"pointer",textAlign:"left",mb:[1],"@media (hover: hover) and (pointer: fine)":{"&:hover > #container > #arrow":{transform:"rotate(45deg)",fill:y},"&:hover":{color:y}}},f),v=d.default.createElement(d.default.Fragment,null,d.default.createElement(t.Box,{sx:{transition:"0.15s",letterSpacing:"body",pb:["6px"]}},o),d.default.createElement(t.Box,{sx:{transition:"0.15s",display:"inline-block",textTransform:"uppercase",letterSpacing:"smallcaps",fontFamily:"heading",fontSize:[2,2,2,3]}},r),d.default.createElement(t.Box,{as:"span",id:"container",sx:{ml:[2],display:"inline-block"}},d.default.createElement(a.Arrow,{id:"arrow",sx:{transition:"fill 0.15s, transform 0.15s",position:"relative",top:["2px"],color:g,height:[15,15,15,17],width:[15,15,15,17]}})));return c?d.default.createElement(h,m({ref:n,href:c,internal:s,tracking:u,sx:E},x),v):d.default.createElement(t.Box,m({ref:n,as:"button",sx:E},x),v)}),w=["colormap","label","clim","setClim","setClimStep","discrete","units","width","height","format","horizontal","bottom","sx","sxClim"],k=function(e){return{fontFamily:"mono",fontSize:["9px",0,0,1],letterSpacing:"smallcaps",textTransform:"uppercase","@media (hover: hover) and (pointer: fine)":{"&:hover":{borderBottom:e?function(e){return"solid 1px "+e.colors.primary+" !important"}:"unset"}},"&:focus":{outline:"none",borderBottom:e?function(e){return"solid 1px "+e.colors.primary+" !important"}:"unset"},transition:"border 0.15s",userSelect:e?"none !important":"unset",width:"fit-content",minWidth:"fit-content"}},C={width:["10px","16px","16px","17px"],height:["80px","110px","110px","130px"]},S=function(e){var n=e.colormap,r=e.discrete,a=e.horizontal,o=e.width,l=e.height,i=1/n.length*100,c="linear-gradient(to "+(a?"right":"top")+", "+n.map(function(e,t){return"rgb("+e+") "+t*i+"% "+(r&&t<n.length-1?(t+1)*i+"%":"")}).join(",")+")";return d.default.createElement(t.Box,{sx:m({},a?{width:o||C.height,height:l||C.width}:{width:o||C.width,minHeight:l||C.height},{mt:a?["1px","1px","1px",0]:0,border:function(e){return"solid 1px "+e.colors.hinted},background:c})})},B=function(e){var n=e.label,r=e.units,a=e.horizontal;return d.default.createElement(t.Box,{sx:!a&&{width:["13px","17px","17px","19px"],alignSelf:"flex-end"}},d.default.createElement(t.Box,{sx:m({mb:a?0:["-4px","-4px","-4px","-3px"],fontFamily:"mono",fontSize:["9px",0,0,1],letterSpacing:"smallcaps",textTransform:"uppercase"},a?{}:{writingMode:"vertical-rl",transform:"rotate(180deg)",whiteSpace:"nowrap",display:"inline-block",overflow:"visible"})},n," ",d.default.createElement(t.Box,{as:"span",sx:{textTransform:"none",color:"secondary",display:"inline-block"}},r)))},z=["start","width","dl","dr","children","sx"],L=function(e){var n=e.start,r=e.width,a=e.dl,o=e.dr,l=e.children,i=e.sx,c=p(e,z);r=r||"auto";var s=function(e){if(e&&!Array.isArray(e)&&(e=[e]),![1,2,4].includes(e.length))throw new Error("Array length must be 1, 2, or 4");return Array.isArray(e)&&1==e.length?e=e.map(function(e){return[e,e,e,e]}).flat():Array.isArray(e)&&2==e.length&&(e=e.map(function(e){return[e,e]}).flat()),e};n=s(n=n||"auto"),r=s(r);var u,f,x=n.map(function(e,t){return"auto"==e?"auto":e+r[t]});if(a){if(![.5,1].includes(a))throw new Error("dl must be 0.5 or 1");.5===a&&(u=["-12px",-3,-3,-4]),1===a&&(u=[-4,-5,-5,-6])}if(o){if(![.5,1].includes(o))throw new Error("dr must be 0.5 or 1");.5===o&&(f=["-12px",-3,-3,-4]),1===o&&(f=[-4,-5,-5,-6])}return d.default.createElement(t.Box,m({},c,{sx:m({gridColumnStart:n,gridColumnEnd:x,ml:u,mr:f},i)}),l)},M=function(e){var t=e.title,n=e.description,r=e.card;return n=n||"Data and science for climate action.",r=r||"https://images.carbonplan.org/social/homepage.png",d.default.createElement(u.default,null,d.default.createElement("title",null,t=t||"carbonplan"),d.default.createElement("meta",{name:"description",content:n}),d.default.createElement("meta",{name:"viewport",content:"initial-scale=1.0, width=device-width"}),d.default.createElement("link",{rel:"canonical",content:"https://carbonplan.org/"}),d.default.createElement("link",{rel:"icon",type:"image/svg+xml",href:"https://images.carbonplan.org/favicon.svg"}),d.default.createElement("link",{rel:"preload",href:"https://fonts.carbonplan.org/relative/relative-book-pro.woff2",as:"font",type:"font/woff2",crossOrigin:"anonymous"}),d.default.createElement("link",{rel:"preload",href:"https://fonts.carbonplan.org/relative/relative-medium-pro.woff2",as:"font",type:"font/woff2",crossOrigin:"anonymous"}),d.default.createElement("link",{rel:"preload",href:"https://fonts.carbonplan.org/relative/relative-mono-11-pitch-pro.woff2",as:"font",type:"font/woff2",crossOrigin:"anonymous"}),d.default.createElement("link",{rel:"preload",href:"https://fonts.carbonplan.org/relative/relative-faux-book-pro.woff2",as:"font",type:"font/woff2",crossOrigin:"anonymous"}),d.default.createElement("link",{rel:"manifest",href:"https://images.carbonplan.org/manifest.json"}),d.default.createElement("meta",{name:"theme-color",content:"#1b1e23"}),d.default.createElement("link",{rel:"alternate icon",type:"image/png",href:"https://images.carbonplan.org/favicon.png"}),d.default.createElement("link",{rel:"mask-icon",href:"https://images.carbonplan.org/safari-pinned-tab.svg",color:"#000000"}),d.default.createElement("link",{rel:"apple-touch-icon",sizes:"180x180",href:"https://images.carbonplan.org/apple-touch-icon.png"}),d.default.createElement("meta",{name:"msapplication-TileColor",content:"#1b1e23"}),d.default.createElement("meta",{name:"msapplication-TileImage",content:"https://images.carbonplan.org/mstile-144x144.png"}),d.default.createElement("meta",{name:"msapplication-config",content:"https://images.carbonplan.org/browserconfig.xml"}),d.default.createElement("meta",{property:"og:title",content:t}),d.default.createElement("meta",{property:"og:description",content:n}),d.default.createElement("meta",{property:"og:image",content:r}),d.default.createElement("meta",{property:"og:url",content:"https://carbonplan.org"}),d.default.createElement("meta",{name:"twitter:title",content:t}),d.default.createElement("meta",{name:"twitter:description",content:n}),d.default.createElement("meta",{name:"twitter:image",content:r}),d.default.createElement("meta",{name:"twitter:card",content:"summary_large_image"}))},A=function(e){var n=m({},e);return d.default.createElement(t.Box,m({as:"svg",width:"150",fill:"currentColor",stroke:"none",viewBox:"0 0 151.1 28.8"},n),d.default.createElement("g",null,d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("g",null,d.default.createElement("path",{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"})),d.default.createElement("path",{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"}),d.default.createElement("path",{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"})))},T=["children","sx","columns","gap"],W=function(e){var n,r,a=e.children,o=e.sx,l=e.columns,i=e.gap,c=p(e,T),s=function(e){if(Array.isArray(e)||(e=[e,e,e,e]),Array.isArray(e)&&![1,2,4].includes(e.length))throw new Error("Array length must be 1, 2, or 4");return Array.isArray(e)&&1==e.length&&(e=e.map(function(e){return[e]}).flat()),Array.isArray(e)&&2==e.length&&(e=e.map(function(e){return[e,e]}).flat()),e};return Number.isInteger(i)||Array.isArray(i)?(n=i=s(i),r=i):(n=[4,5,5,6],r=[0,0,0,0]),l=Number.isInteger(l)||Array.isArray(l)?s(l):[6,8,12,12],d.default.createElement(t.Grid,m({},c,{columns:l,sx:m({columnGap:n,rowGap:r},o)}),a)},F=["value","sx"],I=function(e){var n=e.value,r=e.sx,a=p(e,F);return d.default.createElement(t.IconButton,m({sx:m({cursor:"pointer",fill:"none",strokeWidth:"2px",stroke:"text",".paren":{opacity:"0"},"@media (hover: hover) and (pointer: fine)":{"&:hover .paren":{opacity:"1"}}},r),"aria-label":"Toggle Menu"},a),!n&&d.default.createElement("svg",{style:{width:"50px",height:"30px",transform:"scale(2)",marginTop:"-3px"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 68 36"},d.default.createElement("line",{x1:"52",y1:"29.9",x2:"16",y2:"29.9"}),d.default.createElement("line",{x1:"52",y1:"6.1",x2:"16",y2:"6.1"}),d.default.createElement("line",{x1:"52",y1:"18",x2:"16",y2:"18"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"})),n&&d.default.createElement("svg",{style:{width:"50px",height:"30px",transform:"scale(2)",marginTop:"-3px"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 68 36"},d.default.createElement("line",{x1:"50.85",y1:"29.79",x2:"17.15",y2:"6.21"}),d.default.createElement("line",{x1:"17.15",y1:"29.79",x2:"50.85",y2:"6.21"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"})))},R=function(e,t,n){return void 0===n&&(n=!1),{width:"auto",color:e===t?"secondary":"text",fontSize:[6,6,7,8],fontFamily:"heading",letterSpacing:"heading",borderStyle:"solid",borderColor:"muted",borderWidth:"0px",borderBottomWidth:"1px",borderTopWidth:n?"1px":"0px",py:[3,3,4,5],textDecoration:"none",display:"block",position:"relative",transition:"color 0.15s","@media (hover: hover) and (pointer: fine)":{"&:hover > #arrow":{opacity:1}},"&:hover":{color:e==t?"secondary":"text"}}},D=[{url:"about",display:"About"},{url:"research",display:"Research"},{url:"blog",display:"Blog"},{url:"press",display:"Press"}],O=function(){return d.default.createElement(a.Arrow,{id:"arrow",sx:{pointerEvents:"none",display:"inline-block",position:"absolute",left:["-60px","-68px","-80px","-104px"],top:["32px","32px","46px","62px"],opacity:0,transition:"opacity 0.2s ease-out",transform:"rotate(45deg)",width:[36,36,48,56],height:[36,36,48,56]}})},H=function(e){var n=e.link,r=e.mode,a=e.nav,o=e.first,l=e.setExpanded,i=n.url,c=n.display,u="remote"===r?"https://carbonplan.org/"+i:"/"+i;return"homepage"===r||"local"===r&&a===i?d.default.createElement(s.default,{href:u,passHref:!0},d.default.createElement(t.Link,{onClick:function(){a===i&&l(!1)},sx:R(a,i,o)},d.default.createElement(O,null),c)):d.default.createElement(t.Link,{href:u,sx:R(a,i,o)},d.default.createElement(O,null),c)},_=function(e){var t=e.nav,n=e.mode,r=e.setExpanded;return e.links.map(function(e,a){return d.default.createElement(H,{key:a,link:e,mode:n,nav:t,first:0===a,setExpanded:r})})},j=function(n){var r=n.status,a=n.mode,o=n.nav,l=n.menuItems,i=e.useState(!1),c=i[0],u=i[1];return d.default.createElement(W,{sx:{pt:["12px"],pb:[3]}},d.default.createElement(L,{start:[1],width:[2]},d.default.createElement(t.Box,{sx:{pointerEvents:"all",display:"block",width:"fit-content"}},("homepage"==a||"local"==a)&&d.default.createElement(s.default,{href:"/",passHref:!0},d.default.createElement(t.Link,{"aria-label":"CarbonPlan Homepage",sx:{display:"block"}},d.default.createElement(A,{id:"logo",sx:{cursor:"pointer",color:"primary"}}))),(null==a||"remote"==a)&&d.default.createElement(t.Link,{href:"https://carbonplan.org","aria-label":"CarbonPlan Homepage",sx:{display:"block"}},d.default.createElement(A,{sx:{cursor:"pointer",color:"primary"}})))),d.default.createElement(L,{start:[4,9],width:[2,2],dr:1,sx:{display:[r?"flex":"none","flex","flex","flex"],alignItems:"center"}},d.default.createElement(t.Box,{sx:{fontSize:[1,2,3],position:"relative",top:["-2px","-3px","-3px"]}},r?"("+r+")":"")),d.default.createElement(L,{start:[r?6:4,6,11,11],width:[r?1:3,3,2,2],sx:{zIndex:5e3}},d.default.createElement(t.Flex,{sx:{pointerEvents:"all",justifyContent:"flex-end"}},d.default.createElement(t.Box,{sx:{display:[r?"none":"flex","flex","flex","flex"],mr:"18px",gap:"18px",opacity:c?0:1,transition:"opacity 0.15s",justifyContent:"space-between",alignItems:"center"}},l),d.default.createElement(I,{sx:{flexShrink:0,mr:["-2px"]},value:c,onClick:function(e){u(!c)}}))),d.default.createElement(t.Box,{sx:{opacity:c?1:0,pointerEvents:c?"all":"none",position:"fixed",top:"0px",right:"0px",bottom:"0px",minWidth:"0px",maxHeight:"100vh",width:"100vw",backgroundColor:"background",zIndex:4e3,pt:["79px"],transition:"opacity 0.25s"}},d.default.createElement(t.Container,null,d.default.createElement(W,null,d.default.createElement(L,{start:[2,4,7,7],width:[5,4,5,5]},d.default.createElement(t.Box,{as:"nav",sx:{display:c?"inherit":"none",mt:[5,5,5,6]}},d.default.createElement(_,{links:D,nav:o,mode:a,setExpanded:u})))))))},V=function(e){var n=m({},e);return d.default.createElement(t.Box,m({as:"svg",width:"80",stroke:"none",fill:"currentColor",viewBox:"0 0 32 32"},n),d.default.createElement("path",{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"}),d.default.createElement("path",{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"}),d.default.createElement("path",{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"}))},N=function(){return d.default.createElement(t.Box,{sx:{mt:[7,7,7,8],mb:[7,7,7,8],pb:[2,1,0,0]}},d.default.createElement(W,{sx:{mb:[0,0,4,5]}},d.default.createElement(L,{start:[1,2],width:[3,3]},d.default.createElement(t.Box,null,d.default.createElement(t.Box,{sx:{fontSize:[2,2,2,3],fontFamily:"heading",letterSpacing:"mono",mb:[2]}},"EMAIL"),d.default.createElement(t.Link,{href:"mailto:hello@carbonplan.org",sx:{textDecoration:"none",fontSize:[2,2,2,3]}},"hello@carbonplan.org"))),d.default.createElement(L,{start:[5],width:[1],dl:1,dr:1,sx:{display:["flex","none","none","none"],justifyContent:["center"]}},d.default.createElement(V,{sx:{mt:["-4px"],width:"60px",height:"60px"}})),d.default.createElement(L,{start:[1,5,5,5],width:[3,3],sx:{mt:[3,0,0,0]}},d.default.createElement(t.Box,null,d.default.createElement(t.Box,{sx:{fontSize:[2,2,2,3],fontFamily:"heading",letterSpacing:"mono",mb:[2]}},"FOLLOW"),d.default.createElement(t.Link,{href:"https://twitter.com/carbonplanorg",sx:{textDecoration:"none",fontSize:[2,2,2,3]}},"@carbonplanorg"))),d.default.createElement(L,{start:[1,9],width:[5,4,3,3],sx:{mt:["42px","42px",0,0],mb:[3,3,0,0]}},d.default.createElement(t.Box,null,d.default.createElement(t.Box,{sx:{fontSize:[2,2,2,3],fontFamily:"body",color:"secondary"}},"CarbonPlan is a registered non-profit public benefit corporation in California with 501(c)(3) status.")))),d.default.createElement(W,{sx:{mb:["2px"],mt:[5,5,4]}},d.default.createElement(L,{start:[1,1,2,2],width:[3,2,3,3],sx:{display:"flex",alignItems:["flex-start","flex-start","flex-end"]}},d.default.createElement(t.Box,{sx:{bottom:"0px",borderStyle:"solid",borderColor:"muted",borderWidth:"0px",borderTopWidth:"1px",pt:[2]}},d.default.createElement(t.Box,{sx:{color:"secondary",fontSize:[1,1,1,2],fontFamily:"mono",letterSpacing:"mono"}},"(c) 2021 CARBONPLAN"))),d.default.createElement(L,{start:[4,3,5,5],width:[2,2,3,3],sx:{display:"flex",alignItems:["flex-start","flex-start","flex-end"],mt:[0,0,0,0]}},d.default.createElement(t.Box,{sx:{bottom:"0px",borderStyle:"solid",borderColor:"muted",borderWidth:"0px",borderTopWidth:"1px",width:["100%","auto","auto","auto"],pt:[2]}},d.default.createElement(s.default,{href:"/terms",passHref:!0},d.default.createElement(t.Box,{as:"a",sx:{textDecoration:"none",fontSize:[1,1,1,2],color:"secondary",fontFamily:"mono",letterSpacing:"mono",display:"block"}},"READ OUR TERMS")))),d.default.createElement(L,{start:[5,7,9,9],width:[2,3,3,3],sx:{display:["none","initial","initial","initial"]}},d.default.createElement(V,{sx:{width:80,height:80,mt:[0,"-10px",4,5],mb:["-12px"]}}))))},G=["sx"],P=function(n){var r=n.sx,o=p(n,G),l=t.useColorMode(),i=l[0],c=l[1],s=e.useCallback(function(){c("light"===i?"dark":"light")},[i]);return d.default.createElement(t.IconButton,m({"aria-label":"Toggle dark mode",onClick:s,role:"checkbox",sx:m({width:32,height:32,display:"inline-block",cursor:"pointer",color:"secondary"},r)},o),d.default.createElement(a.Sun,{sx:{strokeWidth:"1.75",transition:"stroke 0.15s","@media (hover: hover) and (pointer: fine)":{"&:hover":{stroke:"primary"}}}}))},q=function(){var e=process.env.NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA,n=process.env.NEXT_PUBLIC_VERCEL_GIT_REPO_OWNER,r=process.env.NEXT_PUBLIC_VERCEL_GIT_REPO_SLUG,a=t.useThemeUI().theme.rawColors.secondary;if(e&&n&&r){var o=e.substring(0,7),l="https://github.com/"+n+"/"+r+"/tree/"+e;return d.default.createElement(t.Box,{sx:{display:"inline-block",width:"87px"}},d.default.createElement(U,{color:a}),d.default.createElement(t.Link,{href:l,sx:{whiteSpace:"nowrap",display:"inline-block",ml:[2],fontFamily:"mono",letterSpacing:"body",color:a,fontSize:[1],textTransform:"uppercase",textDecoration:"none"}},o))}return d.default.createElement(t.Box,{sx:{display:"inline-block",width:"87px"}},d.default.createElement(U,{color:a}),d.default.createElement(t.Text,{sx:{whiteSpace:"nowrap",display:"inline-block",ml:[2],fontFamily:"mono",letterSpacing:"body",color:a,fontSize:[1],textTransform:"uppercase"}},a))},U=function(e){return d.default.createElement("svg",{fill:e.color,opacity:"0.8",viewBox:"0 0 24 24",width:"24",height:"24"},d.default.createElement("circle",{r:5,cx:19,cy:19}))},Y=function(n){var r=n.mode,a=e.useState(function(e){return"mouse"===e?"X,Y: "+K(0,4)+","+K(0,4):"scroll"===e?"SCROLL: 0."+K((0).toFixed(0),2):e}(r)),o=a[0],l=a[1];return e.useEffect(function(){if("mouse"===r){var e=function(e){var t=K(e.clientX,4),n=K(e.clientY,4);l("X,Y: "+t+","+n)};return window.addEventListener("mousemove",e),function(){window.removeEventListener("mousemove",e)}}if("scroll"===r){var t=function(e){var t=function(e,t){return Math.min(e.scrollY/(document.body.offsetHeight-770),.99)}(window);l("SCROLL: 0."+K((100*t).toFixed(0),2))};return window.addEventListener("scroll",t),function(){window.removeEventListener("scroll",t)}}},[]),d.default.createElement(t.Text,{sx:{whiteSpace:"nowrap",display:"inline-block",mr:"-6px",fontFamily:"mono",letterSpacing:"body",color:"secondary",fontSize:[1],textTransform:"uppercase"}},o)},X=function(e){return d.default.createElement(t.Box,{sx:{userSelect:"none",position:"fixed",bottom:"42px",right:"24px",transformOrigin:"right",transform:"rotate(90deg)",display:["none","none","initial"]}},d.default.createElement(Y,{mode:e.mode}),d.default.createElement(q,null))};function K(e,t){return e.toString().padStart(t,"0")}var Z=["duration","delay","children"],J=i.keyframes({from:{opacity:0},to:{opacity:1}}),Q=function(e){var n=e.duration,r=void 0===n?300:n,a=e.delay,o=void 0===a?0:a,l=e.children,i=p(e,Z);return d.default.createElement(t.Box,m({},i,{sx:{animationDuration:r+"ms",animationDelay:o+"ms",animationName:J.toString(),animationFillMode:"backwards"}}),l)},$=function(e){var t=e.createElement("div");t.style.visibility="hidden",t.style.width="100px",e.body.appendChild(t),t.style.overflow="scroll";var n=e.createElement("div");n.style.width="100%",t.appendChild(n);var r=t.offsetWidth-n.offsetWidth;return t.parentNode.removeChild(t),r},ee=function(){return e.useEffect(function(){"undefined"!=typeof document&&$(document)>0&&(document.body.classList.add("custom-scrollbar"),document.getElementsByTagName("html")[0].classList.add("custom-scrollbar"))},[]),null},te=function(n){var r=n.color,a=void 0===r?"muted":r,o=e.useState(!1),l=o[0],i=o[1];return e.useEffect(function(){function e(e){";"===e.key&&e.metaKey&&i(function(e){return!e})}return document.addEventListener("keydown",e),function(){document.removeEventListener("keydown",e)}},[]),d.default.createElement(t.Box,{sx:{position:"fixed",width:"100%",left:0,top:0,zIndex:"teal"===a?5e3:-1,pointerEvents:"none",display:l?"initial":"none"}},d.default.createElement(t.Container,null,d.default.createElement(t.Box,{sx:{display:["none","none","initial","initial"]}},d.default.createElement(re,{indices:[1,2,3,4,5,6,7,8,9,10,11,12],color:a})),d.default.createElement(t.Box,{sx:{display:["none","initial","none","none"]}},d.default.createElement(re,{indices:[1,2,3,4,5,6,7,8],color:a})),d.default.createElement(t.Box,{sx:{display:["initial","none","none","none"]}},d.default.createElement(re,{indices:[1,2,3,4,5,6],color:a}))))},ne=["red","orange","yellow","green","teal","blue","purple","pink"];function re(e){var n=e.color,r={outerGuideColumn:{borderStyle:"solid",borderWidth:"0px",borderLeftWidth:"teal"===n?"0px":"1px",borderRightWidth:"teal"===n?"0px":"1px",opacity:"teal"==n?.4:1},innerGuideColumn:{borderStyle:"solid",borderWidth:"0px",borderLeftWidth:"0px",borderRightWidth:"0px",opacity:"teal"==n?.4:1}};return d.default.createElement(W,null,e.indices.map(function(e){return d.default.createElement(L,{key:e,start:[e],width:[1,1],dl:.5,dr:.5,sx:m({bg:"teal"===n?"teal":"transparent",height:"100vh"},r.innerGuideColumn)},d.default.createElement(t.Box,{sx:m({mx:["12px",3,3,4],bg:"teal"===n?"background":"transparent",height:"100%",borderLeftColor:"rainbow"===n?ne[e%8]:"muted",borderRightColor:"rainbow"===n?ne[e%8]:"muted"},r.outerGuideColumn)}))}))}var ae=["value","sx"],oe=function(e){var n=e.value,r=e.sx,a=p(e,ae);return d.default.createElement(t.IconButton,m({sx:m({cursor:"pointer",fill:"none",strokeWidth:"2px",stroke:"text",".paren":{opacity:"0"},"@media (hover: hover) and (pointer: fine)":{"&:hover .paren":{opacity:"1"}}},r),"aria-label":"Toggle Menu"},a),!n&&d.default.createElement("svg",{style:{width:"50px",height:"30px",transform:"scale(2)",marginTop:"-3px"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 68 36"},d.default.createElement("line",{x1:"24",y1:"2.1",x2:"24",y2:"6.1"}),d.default.createElement("line",{x1:"24",y1:"24.1",x2:"24",y2:"33.9"}),d.default.createElement("line",{x1:"44",y1:"2.1",x2:"44",y2:"12.1"}),d.default.createElement("line",{x1:"44",y1:"30.1",x2:"44",y2:"33.9"}),d.default.createElement("circle",{cx:"24",cy:"15.1",r:"5"}),d.default.createElement("circle",{cx:"44",cy:"21.1",r:"5"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"})),n&&d.default.createElement("svg",{style:{width:"50px",height:"30px",transform:"scale(2)",marginTop:"-3px"},xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 68 36"},d.default.createElement("line",{x1:"50.85",y1:"29.79",x2:"17.15",y2:"6.21"}),d.default.createElement("line",{x1:"17.15",y1:"29.79",x2:"50.85",y2:"6.21"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M6.4,1.2c-6.3,10.3-6.3,23.3,0,33.6"}),d.default.createElement("path",{style:{transition:"all 0.2s"},className:"paren",d:"M61.6,34.8c6.3-10.3,6.3-23.3,0-33.6"})))},le=function(n){var r=n.title,a=n.description,o=n.card,l=n.status,i=n.nav,c=n.settings,s=n.footer,u=void 0===s||s,p=n.header,f=void 0===p||p,x=n.metadata,h=void 0===x?"mouse":x,g=n.links,y=void 0===g?"remote":g,E=n.dimmer,b=void 0===E?"bottom":E,v=n.guide,w=void 0===v||v,k=n.scrollbar,C=void 0===k||k,S=n.fade,B=n.container,z=void 0===B||B,L=n.children;(void 0===S||S)&&(L=d.default.createElement(Q,{duration:250},L)),z&&(L=d.default.createElement(t.Box,{sx:{mb:[8,8,9,10]}},d.default.createElement(t.Container,null,L)));var A=t.useThemeUI().theme;e.useEffect(function(){if(A){var e=window.matchMedia("(min-width: "+A.breakpoints[1]+")");return e.onchange=function(e){e.matches&&null!=c&&c.value&&null!=c&&c.onClick&&(null==c||c.onClick())},function(){e.onchange=null}}},[null==A?void 0:A.breakpoints,null==c?void 0:c.value,null==c?void 0:c.onClick]);var T=[d.default.createElement(P,{key:"dimmer",sx:{color:"primary",mt:"-2px",display:["block","block","top"===b?"block":"none","top"===b?"block":"none"]}})];return c&&T.push(d.default.createElement(oe,m({key:"settings",sx:{mr:["2px"],display:["inherit","inherit","none","none"]}},c))),d.default.createElement(d.default.Fragment,null,w&&d.default.createElement(te,{color:w}),C&&d.default.createElement(ee,null),d.default.createElement(M,{card:o,description:a,title:r}),d.default.createElement(t.Flex,{sx:{flexDirection:"column",minHeight:"100vh"}},f&&d.default.createElement(t.Box,{as:"header",sx:{width:"100%",borderStyle:"solid",borderColor:"muted",borderWidth:"0px",borderBottomWidth:"1px",position:"sticky",top:0,bg:"background",height:"56px",zIndex:2e3}},d.default.createElement(t.Container,null,d.default.createElement(j,{mode:y,status:l,nav:i,menuItems:T}))),d.default.createElement(t.Box,{sx:{width:"100%",flex:"1 1 auto"}},L),u&&d.default.createElement(t.Box,{as:"footer",sx:{width:"100%",borderStyle:"solid",borderColor:"muted",borderWidth:"0px",borderTopWidth:"1px"}},d.default.createElement(t.Container,null,d.default.createElement(N,null))),"bottom"===b&&d.default.createElement(t.Box,{sx:{display:["none","none","initial","initial"],position:["fixed"],right:[13],bottom:[17,17,15,15]}},d.default.createElement(P,null)),h&&d.default.createElement(X,{mode:h})))},ie=["label","value","sx","children"],ce=function(e){var n=e.label,r=e.value,a=e.sx,o=e.children,l=p(e,ie),i=a&&a.color?a.color:"primary",c=l&&(l.onClick||l.onDoubleClick);return d.default.createElement(t.Box,m({as:c?"button":"span",role:"checkbox","aria-checked":r,"aria-label":n,sx:m({display:"inline-block",fontSize:[1,1,1,2],fontFamily:"mono",letterSpacing:"mono",cursor:c?"pointer":"inherit",color:i,backgroundColor:"transparent",borderStyle:"solid",borderColor:i,lineHeight:"body",borderWidth:"0px",borderBottomWidth:"1px",textTransform:"uppercase",userSelect:"none",transition:"opacity 0.05s",pt:["1px"],pb:["2px"],px:[0],m:[0],opacity:null==r||r?1:"primary"==i?.24:.33},a)},l),o)},de=["values","setValues","label","colors","showAll","multiSelect"],se={label:{fontFamily:"mono",letterSpacing:"mono",fontSize:[1,1,1,2],color:"secondary",userSelect:"none",textTransform:"uppercase"}},ue=function(e,t,n){return void 0===n&&(n={}),Object.keys(e).reduce(function(e,r){var a;return Object.assign(e,((a={})[r]=n[r]||t,a))},{})},me=function(e){return Object.keys(e).filter(function(t){return e[t]}).length==Object.keys(e).length},pe=function(e){var t,n=e.values,r=e.multiSelect,a=e.setValues,o=e.value,l=me(n),i="all"===o;if(r)if(i&&!l)t=ue(n,!0);else if(i&&l)t=ue(n,!1);else{var c;t=m({},n,((c={})[o]=!n[o],c))}else if(i&&!l)t=ue(n,!0);else if(i&&l);else{var d;t=ue(n,!1,((d={})[o]=!0,d))}t&&a(t)},fe={xs:[1],sm:[3],md:[5],lg:[7],xl:[9]},xe=function(e){var n,r=e.children,a=e.variant,o=void 0===a?"h1":a;return"h1"===o&&(n=[4,"27px","42px","54px"]),"h2"===o&&(n=[4,4,"14px","54px"]),d.default.createElement(d.default.Fragment,null,d.default.createElement(L,{start:[1,4,8,8],width:[1,1,1,1]},d.default.createElement(t.Box,{sx:{mt:n,fontFamily:"faux",letterSpacing:"faux",fontSize:[2,2,2,3],textAlign:"right"}},"/")),d.default.createElement(L,{start:[2,5,9,9],width:[3,3,2,2]},d.default.createElement(t.Box,{sx:{mt:n,fontFamily:"faux",letterSpacing:"faux",fontSize:[2,2,2,3],height:["100%","0px","0px","0px"]}},r)))},he=["size","inverted","sx"],ge=e.forwardRef(function(e,n){var r,a=e.size,o=void 0===a?"sm":a,l=e.inverted,i=e.sx,c=p(e,he),s=m(((r={color:l?"secondary":"primary",borderColor:"secondary",borderStyle:"solid",borderWidth:"0px",borderBottomWidth:"1px",borderRadius:"0px",transition:"border 0.15s"}).borderBottomWidth="1px",r.width="calc(min(15ch, 100%))",r.p=[0],r.py=["2px"],r["input::-webkit-outer-spin-button"]={WebkitAppearance:"none",margin:0},r["input::-webkit-inner-spin-button"]={WebkitAppearance:"none",margin:0},r[":focus"]={borderColor:"primary"},r[":focus-visible"]={outline:"none !important",background:"none !important"},r),g(o),i);return d.default.createElement(t.Input,m({},c,{ref:n,sx:s}))}),ye=["children","size","sx","sxSelect"],Ee=["sx"],be=e.forwardRef(function(e,n){var r=e.sx,a=p(e,Ee),o=r&&r.color?r.color:"primary",l=t.useThemeUI().theme.rawColors;return d.default.createElement(t.Slider,m({ref:n,sx:m({"&::-webkit-slider-thumb":{height:[22,18,16],width:[22,18,16],boxShadow:"0 0 0 0px "+l.secondary,transition:"box-shadow .15s ease"},"&::-moz-range-thumb":{height:[22,18,16],width:[22,18,16],boxShadow:"0 0 0 0px "+l.secondary,transition:"box-shadow .15s ease"},":focus-visible":{outline:"none !important",background:l.secondary+" !important"},":focus":{color:o,"&::-webkit-slider-thumb":{boxShadow:"0 0 0 4px "+l.secondary},"&::-moz-range-thumb":{boxShadow:"0 0 0 4px "+l.secondary}},color:o},r)},a))}),ve={reset:{verticalAlign:"baseline",border:0,outline:0,margin:0,padding:0},row:{borderStyle:"solid",borderWidth:"0px",borderTopWidth:"1px",borderColor:"muted",pt:[3,3,3,"20px"],pb:[3,3,3,"20px"],mb:["2px"]},header:{display:"block",textTransform:"uppercase",letterSpacing:"smallcaps",fontFamily:"heading",fontSize:[2,2,2,3]},index:{display:"block",textTransform:"uppercase",letterSpacing:"smallcaps",fontFamily:"heading",fontSize:[2,2,2,3]},entry:{display:"block",fontSize:[2,2,2,3],fontFamily:"faux",letterSpacing:"faux",mb:["1px"],mt:[2,0,0,0]}},we=["value","onClick","disabled","sx"],ke=e.forwardRef(function(e,r){var a=e.value,o=e.onClick,l=e.disabled,i=e.sx,c=p(e,we),s=i&&i.color?i.color:"primary";return d.default.createElement(t.Box,m({ref:r,as:"button",onClick:o,role:"checkbox","aria-checked":a=!l&&a,"aria-label":"Toggle",sx:m({border:"none",background:"none",cursor:l?"default":"pointer",p:[0],m:[0],display:"inline-block"},i)},c),d.default.createElement(t.Box,{sx:{width:"50px",height:"20px",borderRadius:"20px",backgroundColor:a?n.transparentize(s,"primary"==s?.5:.45):"muted",position:"relative",transition:"0.15s",display:"inline-block"}},d.default.createElement(t.Box,{sx:{width:"14px",height:"14px",borderRadius:"7px",position:"absolute",left:a?"32px":"4px",top:"3px",backgroundColor:a?s:"secondary",transition:"0.15s"}})))}),Ce={month:"short",day:"numeric",year:"numeric"},Se=function(e,t,n){var r;if(!n)return null;var a="string"==typeof n?n:Ce[t],o=e.toLocaleString("default",((r={})[t]=a,r));return"numeric"===a&&["day","month"].includes(t)?o.padStart(2,"0"):o};exports.Badge=function(e){var r=e.sx,a=e.children,o=p(e,f),l=r&&r.color?r.color:"primary";return d.default.createElement(t.Box,m({sx:m({display:"inline-block",width:"fit-content",height:["24px","24px","24px","26px"],borderRadius:"5px",backgroundColor:"primary"==l||"secondary"==l?"muted":n.transparentize(l,.7),textAlign:"center",userSelect:"none",fontSize:[2,2,2,3]},r)},o),d.default.createElement(t.Box,{sx:{letterSpacing:"0.02em",fontFamily:"mono",mt:["1px","1px","1px","0px"],px:[1,1,1,"5px"],color:l}},a))},exports.Blockquote=function(e){var n=e.children,r=n.props.children.slice(0,1);return d.default.createElement(t.Box,{variant:"styles.blockquote",sx:{textIndent:"“"===r?["-0.4em"]:[0]}},n)},exports.Button=E,exports.Callout=v,exports.Colorbar=function(n){var r=n.colormap,a=n.label,o=n.clim,l=n.setClim,i=n.setClimStep,c=void 0===i?1:i,s=n.discrete,u=n.units,f=n.width,x=n.height,h=n.format,g=void 0===h?function(e){return e}:h,y=n.horizontal,E=void 0!==y&&y,b=n.bottom,v=void 0!==b&&b,z=n.sx,L=n.sxClim,M=p(n,w);if(!Array.isArray(r))throw new Error("expected array for colormap, got '"+r+"'.");var A,T,W,F=[e.useRef(),e.useRef()],I=e.useState(!1),R=I[0],D=I[1],O=e.useState(!1),H=O[0],_=O[1],j=0,V=null,N=[0,0],G=c,P=function(e){"min"!==V||R||D(!0),"max"!==V||H||_(!0),W=e.pageX-A,j=e.pageY-T,E?("min"===V&&l(function(e){return[Math.min(N[0]+W*G,N[1]),e[1]]}),"max"===V&&l(function(e){return[e[0],Math.max(N[1]+W*G,N[0])]})):("min"===V&&l(function(e){return[Math.min(N[0]-j*G,N[1]),e[1]]}),"max"===V&&l(function(e){return[e[0],Math.max(N[1]-j*G,N[0])]}))},q=function(e){T=e.pageY,A=e.pageX,V=e.target.id,N=o,document.body.setAttribute("style",E?"cursor: ew-resize !important":"cursor: ns-resize !important"),document.addEventListener("mousemove",P),window.addEventListener("mouseup",function e(){document.body.setAttribute("style","cursor: unset"),document.removeEventListener("mousemove",P),window.removeEventListener("mouseup",e),"min"===V&&D(!1),"max"===V&&_(!1)})};e.useEffect(function(){var e=function(e){(["ArrowUp","ArrowRight"].includes(e.code)||["ArrowUp","ArrowRight"].includes(e.key))&&function(e){F[0].current===document.activeElement&&(e.preventDefault(),l(function(e){return[Math.min(e[0]+G,e[1]),e[1]]}),F[0].current.focus()),F[1].current===document.activeElement&&(e.preventDefault(),l(function(e){return[e[0],Math.max(e[1]+G,e[0])]}),F[1].current.focus())}(e),(["ArrowDown","ArrowLeft"].includes(e.code)||["ArrowDown","ArrowLeft"].includes(e.key))&&function(e){F[0].current===document.activeElement&&(e.preventDefault(),l(function(e){return[Math.min(e[0]-G,e[1]),e[1]]}),F[0].current.focus()),F[1].current===document.activeElement&&(e.preventDefault(),l(function(e){return[e[0],Math.max(e[1]-G,e[0])]}),F[1].current.focus())}(e)};return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}},[o]);var U=function(){return d.default.createElement(t.Box,{id:"min",ref:F[0],tabIndex:0,sx:m({},k(l),{ml:a?E?v?"0px":"10px":["2px","1px","1px","2px"]:0,mr:E?["2px","1px","1px","2px"]:0,mb:E?0:["-2px","-2px","-2px","-3px"],borderBottom:l?R?function(e){return"solid 1px "+e.colors.primary}:function(e){return"solid 1px "+e.colors.secondary}:"unset",cursor:l?E?"ew-resize":"ns-resize":"default"},L),onMouseDown:l?q:function(){},onClick:function(){return F[0].current.focus()}},g(o[0]))},Y=function(){return d.default.createElement(t.Box,{id:"max",ref:F[1],tabIndex:0,sx:m({},k(l),{ml:["2px","1px","1px","2px"],mt:E?0:["-2px","-3px","-3px","-3px"],borderBottom:l?H?function(e){return"solid 1px "+e.colors.primary}:function(e){return"solid 1px "+e.colors.secondary}:"unset",cursor:l?E?"ew-resize":"ns-resize":"default"},L),onMouseDown:l?q:function(){},onClick:function(){return F[1].current.focus()}},g(o[1]))};return d.default.createElement(t.Flex,m({},M,{sx:m({flexDirection:"row",alignItems:"start",justifyContent:"flex-start",gap:["3px","6px","6px","7px"],height:E?"unset":"100%"},z)}),a&&d.default.createElement(B,{label:a,units:u,horizontal:E}),d.default.createElement(t.Flex,{sx:{flexGrow:E?1:"unset",flexDirection:"column",ml:v&&a?"4px":"0px",height:E?"unset":"100%"}},d.default.createElement(t.Flex,{sx:{gap:["3px","6px","6px","7px"],height:E?"unset":"100%"}},E&&o&&!v&&d.default.createElement(U,null),d.default.createElement(S,{colormap:r,horizontal:E,discrete:s,width:f,height:x}),E&&o&&!v&&d.default.createElement(Y,null)),E&&o&&v&&d.default.createElement(t.Flex,{sx:{justifyContent:"space-between"}},d.default.createElement(U,null),d.default.createElement(Y,null))),!E&&d.default.createElement(t.Flex,{sx:{flexDirection:"column-reverse",justifyContent:"space-between",height:x||C.height}},o&&d.default.createElement(U,null),o&&d.default.createElement(Y,null)))},exports.Column=L,exports.Custom404=function(){return d.default.createElement(le,{footer:!1,title:"404 / carbonplan"},d.default.createElement(W,{sx:{mb:[5,0,0],pt:[0,0,6]}},d.default.createElement(L,{start:[1,1,3,3],width:[6,4,4,4]},d.default.createElement(t.Styled.h1,null,"Oops!"),d.default.createElement(t.Box,{sx:{fontSize:[4,4,4,5],lineHeight:"h3",mt:[3,4,4],mb:[2,3,3],maxWidth:["90%","90%","400px"]}},"Sorry but we can't seem to find the page you are looking for."),d.default.createElement(t.Box,{sx:{color:"secondary",fontFamily:"mono",letterSpacing:"mono",fontSize:[2,2,2,3],mt:[4,5,5]}},"ERROR CODE 404")),d.default.createElement(L,{start:[2,5,7,7],width:[4,4,4,4]},d.default.createElement(t.Box,{sx:{width:["100%"],mt:[2,4,4,5],fill:"primary"}},d.default.createElement(o.PoopSad,{sx:{width:"100%",height:"auto"}})))))},exports.Dimmer=P,exports.Expander=function(e){var n=e.value;return d.default.createElement(t.IconButton,{onClick:e.onClick,id:e.id,role:"checkbox","aria-checked":n,"aria-label":"Expand",sx:m({display:"inline-block",width:24,height:24,p:[1],cursor:"pointer",fill:"secondary",stroke:"secondary","@media (hover: hover) and (pointer: fine)":{"&:hover":{fill:"primary",stroke:"primary"}}},e.sx)},d.default.createElement("svg",{viewBox:"0 0 16 16"},d.default.createElement("path",{d:"M8,0 V16 M0,8 H16",style:{strokeWidth:2,transition:"0.25s all",transformOrigin:"8px 8px",transform:n?"rotate(45deg)":""}})))},exports.FadeIn=Q,exports.Filter=function(e){var n=e.values,r=e.setValues,a=e.label,o=e.colors,l=e.showAll,i=void 0!==l&&l,c=e.multiSelect,s=void 0!==c&&c,u=p(e,de);return d.default.createElement(t.Box,u,a&&d.default.createElement(t.Box,{sx:se.label},a),d.default.createElement(t.Box,{sx:{mt:a?[3]:0}},i&&d.default.createElement(ce,{onClick:function(){return pe({values:n,multiSelect:s,setValues:r,value:"all"})},value:me(n),sx:{mr:[2]}},"All"),Object.keys(n).map(function(e,t){return d.default.createElement(ce,{onClick:function(){return pe({values:n,multiSelect:s,setValues:r,value:e})},onDoubleClick:function(){return pe({values:n,multiSelect:!1,setValues:r,value:e})},key:t,value:n[e],sx:{width:"max-content",color:o?o[e]:"primary",mr:[2],mb:[1]}},e)})))},exports.Footer=N,exports.Group=function(e){var n,r=e.children,a=e.direction,o=void 0===a?"vertical":a,l=e.spacing,i=void 0===l?"md":l;if("string"==typeof i?n=fe[i]:"number"==typeof i?n=[i]:Array.isArray(i)&&i.every(function(e){return"number"==typeof e})&&(n=i),!n)throw new Error("Invalid spacing size. Must be numeric value(s) or one of xs, sm, md, lg, or xl");if(!["horizontal","vertical"].includes(o))throw new Error("Invalid direction value. Must be either horizontal or vertical");var c="vertical"===o?"mt":"ml",s="horizontal"===o?{display:"inline-block"}:{};return d.default.createElement(t.Box,null,d.default.Children.map(r,function(e,r){var a;return d.default.createElement(t.Box,{sx:m((a={},a[c]=r>0?n:0,a),s)},e)}))},exports.Guide=te,exports.Header=j,exports.Heading=function(e){var n=e.children,r=e.sidenote,a=e.description,o=e.descriptionStart,l=void 0===o?[1,3,5,5]:o,i=e.descriptionWidth,c=void 0===i?[5,5,5,4]:i;return d.default.createElement(W,{sx:{mt:[5,6,7,8],mb:[5,6,7,8]}},d.default.createElement(L,{start:[1,1,2,2],width:[6,2,3,3]},d.default.createElement(t.Box,{as:"h1",variant:"styles.h1",sx:m({my:[0,0,0,0]},e.sx)},n)),r&&d.default.createElement(xe,null,r),a&&d.default.createElement(L,{start:l,width:c},d.default.createElement(t.Box,{sx:{mt:[4,"5px","20px","31px"],fontSize:[2,2,2,3]}},a)))},exports.Input=ge,exports.Layout=le,exports.Link=h,exports.Logo=A,exports.Menu=I,exports.Meta=M,exports.Monogram=V,exports.Row=W,exports.Scrollbar=ee,exports.Select=function(n){var r,o,l,i,c,s,u,f=n.children,x=n.size,h=void 0===x?"sm":x,y=n.sx,E=n.sxSelect,b=p(n,ye),v=y&&y.color?y.color:"primary",w=g(h),k=e.useRef(null),C=b.onChange,S=(o=function(e){return"onChange"!==e},function(e){var t={};for(var n in e)o(n||"")&&(t[n]=e[n]);return t})(b);if(!["xs","sm","md"].includes(h))throw new Error("Size must be xs, sm, or md");return"xs"===h&&(i=[14,14,14,16],c=[14,14,14,14],u=["1px"],s=["-14px","-14px","-14px","-16px"]),"sm"===h&&(i=[15,15,15,20],c=[15,15,15,20],u=["1px"],s=["-16px","-16px","-16px","-20px"]),"md"===h&&(i=[20,20,20,20],c=[20,20,20,20],u=["2px"],s=["-20px","-20px","-20px","-20px"]),l=c.map(function(e){return e+12}),d.default.createElement(t.Box,{sx:m({display:"inline-block"},y)},d.default.createElement(t.Box,m({as:"select",ref:k,onChange:function(e){k.current.blur(),C&&C(e)},sx:m({},w,(r={lineHeight:"normal",cursor:"pointer",WebkitAppearance:"none",MozAppearance:"none",pb:["5px"],bg:"transparent",pr:l,border:"none",borderBottomStyle:"solid",borderBottomWidth:"1px",borderBottomColor:"primary",borderRadius:"0px",color:"text",width:"fit-content"},r.color=v,r.userSelect="none",r["@media (hover: none) and (pointer: coarse)"]={"&:focus-visible":{outline:"none !important",background:"transparent !important"}},r),E)},S),f),d.default.createElement(a.Arrow,{sx:{width:c,height:i,position:"relative",ml:s,top:u,fill:"secondary",transform:"rotate(135deg)",pointerEvents:"none"}}))},exports.Settings=oe,exports.Sidenote=xe,exports.Slider=be,exports.Table=function(e){var n=e.data,r=e.sx,a=e.color,o=e.header,l=e.columns,i=e.start,c=e.width,s=e.index,u=void 0===s||s,p=e.borderBottom,f=void 0===p||p,x=e.borderTop,h=void 0===x||x;if(!i||!l||!c)throw new Error("Must provide columns, start, and width");return d.default.createElement(t.Box,{as:"table",sx:m({display:"block"},r)},d.default.createElement(t.Box,{as:"tbody",sx:{display:"block"}},o&&d.default.createElement(W,{as:"tr",sx:m({},ve.reset,ve.header,ve.row,{color:a,borderTopWidth:h?"1px":"0px"})},d.default.createElement(L,{as:"td",start:[1],width:l,sx:ve.index},o)),n.map(function(e,t){return d.default.createElement(W,{as:"tr",columns:l,key:t,sx:m({},ve.reset,ve.row,{pb:f&&t===n.length-1?["18px","18px","18px","22px"]:[3,3,3,"20px"],borderBottomWidth:f&&t===n.length-1?"1px":"0px",borderTopWidth:h||0!==t||o?"1px":"0px"})},e.map(function(e,t){return d.default.createElement(L,{as:"td",key:t,start:i[t],width:c[t],sx:m({},ve.reset,0==t&&u?ve.index:ve.entry)},e)}))})))},exports.Tag=ce,exports.Toggle=ke,exports.Tracking=function(e){var t=e.id;return t?d.default.createElement(d.default.Fragment,null,d.default.createElement("script",{async:!0,src:"https://www.googletagmanager.com/gtag/js?id="+t}),d.default.createElement("script",{dangerouslySetInnerHTML:{__html:"\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '"+t+"', {\n page_path: window.location.pathname,\n });\n "}})):null},exports.Tray=function(e){var n=e.expanded,r=e.sx,a=e.children;return d.default.createElement(d.default.Fragment,null,d.default.createElement(t.Box,{sx:{position:"fixed",top:"56px",bottom:"0px",left:"0px",width:"calc(100vw)",mt:["56px"],bg:"background",zIndex:1e3,transition:"opacity 0.15s",opacity:n?.9:0,pointerEvents:n?"all":"none"}}),d.default.createElement(t.Box,{sx:m({position:"fixed",width:"calc(100vw)",top:"0px",mt:["56px"],pb:[6,7,7,8],pt:[5,6,7,8],bg:"background",zIndex:1100,borderStyle:"solid",borderColor:"muted",borderWidth:"0px",borderBottomWidth:"1px",transition:"transform 0.15s",ml:[-3,-4,-5,-6],pl:[3,4,5,6],pr:[3,4,5,6],transform:n?"translateY(0)":"translateY(-100%)"},r)},d.default.createElement(W,null,d.default.createElement(L,{start:[1,1,1,1],width:[6,8,10,10]},a))))},exports.formatDate=function(e,t){var n;void 0===t&&(t=Ce);var r=new Date(e.replace(/-/g,"/"));return[Se(r,"month",t.month),Se(r,"day",t.day),Se(r,"year",t.year)].filter(Boolean).join(null!=(n=t.separator)?n:" ")},exports.getScrollbarWidth=$;
2960
2
  //# sourceMappingURL=index.js.map