@codecademy/codebytes 0.6.13-alpha.777ceb.0 → 0.6.14-alpha.d2a441.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/CHANGELOG.md CHANGED
@@ -3,7 +3,15 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ### [0.6.13-alpha.777ceb.0](https://github.com/Codecademy/client-modules/compare/@codecademy/codebytes@0.6.12...@codecademy/codebytes@0.6.13-alpha.777ceb.0) (2022-04-05)
6
+ ### [0.6.14-alpha.d2a441.0](https://github.com/Codecademy/client-modules/compare/@codecademy/codebytes@0.6.13...@codecademy/codebytes@0.6.14-alpha.d2a441.0) (2022-04-29)
7
+
8
+ **Note:** Version bump only for package @codecademy/codebytes
9
+
10
+
11
+
12
+
13
+
14
+ ### [0.6.13](https://github.com/Codecademy/client-modules/compare/@codecademy/codebytes@0.6.12...@codecademy/codebytes@0.6.13) (2022-04-11)
7
15
 
8
16
  **Note:** Version bump only for package @codecademy/codebytes
9
17
 
@@ -0,0 +1,13 @@
1
+ import { GamutIconProps } from '@codecademy/gamut-icons';
2
+ import React from 'react';
3
+ export declare type BaseSocialShareProps = {
4
+ sectionId?: string;
5
+ size?: 'small' | 'normal';
6
+ };
7
+ export declare type SocialShareIconLinkProps = BaseSocialShareProps & {
8
+ icon: React.ComponentType<GamutIconProps>;
9
+ id: string;
10
+ href: string;
11
+ onClick?: (e: React.MouseEvent) => void;
12
+ };
13
+ export declare const SocialShareIconLink: React.FC<SocialShareIconLinkProps>;
@@ -0,0 +1,51 @@
1
+ import _styled from "@emotion/styled/base";
2
+ import { Anchor, Box } from '@codecademy/gamut';
3
+ import React from 'react';
4
+
5
+ var IconLink = /*#__PURE__*/_styled(Box, {
6
+ target: "e1k7a7ka0",
7
+ label: "IconLink"
8
+ })(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9CZXR0ZXJTb2NpYWxTaGFyaW5nL1NvY2lhbFNoYXJlSWNvbkxpbmsudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUs0QiIsImZpbGUiOiIuLi8uLi9zcmMvQmV0dGVyU29jaWFsU2hhcmluZy9Tb2NpYWxTaGFyZUljb25MaW5rLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFuY2hvciwgQm94IH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQnO1xuaW1wb3J0IHsgR2FtdXRJY29uUHJvcHMgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5jb25zdCBJY29uTGluayA9IHN0eWxlZChCb3gpYGAud2l0aENvbXBvbmVudChBbmNob3IpO1xuXG5leHBvcnQgdHlwZSBCYXNlU29jaWFsU2hhcmVQcm9wcyA9IHtcbiAgc2VjdGlvbklkPzogc3RyaW5nO1xuICBzaXplPzogJ3NtYWxsJyB8ICdub3JtYWwnO1xufTtcblxuZXhwb3J0IHR5cGUgU29jaWFsU2hhcmVJY29uTGlua1Byb3BzID0gQmFzZVNvY2lhbFNoYXJlUHJvcHMgJiB7XG4gIGljb246IFJlYWN0LkNvbXBvbmVudFR5cGU8R2FtdXRJY29uUHJvcHM+O1xuICBpZDogc3RyaW5nO1xuICBocmVmOiBzdHJpbmc7XG4gIG9uQ2xpY2s/OiAoZTogUmVhY3QuTW91c2VFdmVudCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCBjb25zdCBTb2NpYWxTaGFyZUljb25MaW5rOiBSZWFjdC5GQzxTb2NpYWxTaGFyZUljb25MaW5rUHJvcHM+ID0gKHtcbiAgaWNvbjogSWNvbkNvbXBvbmVudCxcbiAgaWQsXG4gIGhyZWYsXG4gIG9uQ2xpY2ssXG4gIHNpemUsXG4gIHNlY3Rpb25JZCxcbn0pID0+IHtcbiAgY29uc3Qgb25JY29uQ2xpY2sgPSAoZTogUmVhY3QuTW91c2VFdmVudCkgPT4ge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBvbkNsaWNrPy4oZSk7XG4gICAgY29uc3QgcG9wdXBTaXplID0gNTcwO1xuICAgIGNvbnN0IGxlZnQgPSAod2luZG93LnNjcmVlbi53aWR0aCAtIHBvcHVwU2l6ZSkgLyAyO1xuICAgIGNvbnN0IHRvcCA9ICh3aW5kb3cuc2NyZWVuLmhlaWdodCAtIHBvcHVwU2l6ZSkgLyAyO1xuICAgIGNvbnN0IGZlYXR1cmVzID0gYG1lbnViYXI9bm8sdG9vbGJhcj1ubyxzdGF0dXM9bm8sd2lkdGg9JHtwb3B1cFNpemV9LGhlaWdodD0ke3BvcHVwU2l6ZX0sdG9wPSR7dG9wfSxsZWZ0PSR7bGVmdH1gO1xuICAgIHdpbmRvdy5vcGVuKGhyZWYsICdfYmxhbmsnLCBmZWF0dXJlcyk/LmZvY3VzKCk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8SWNvbkxpbmtcbiAgICAgIGhyZWY9e2hyZWZ9XG4gICAgICBvbkNsaWNrPXtvbkljb25DbGlja31cbiAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgIGFyaWEtbGFiZWw9e2BzaGFyZSBvbiAke2lkfWB9XG4gICAgICBwPXs4fVxuICAgICAgbGluZUhlaWdodD17MH1cbiAgICAgIGJvcmRlclN0eWxlPVwic29saWRcIlxuICAgICAgYm9yZGVyV2lkdGg9e3NpemUgPT09ICdzbWFsbCcgPyAxIDogMn1cbiAgICAgIGJvcmRlckNvbG9yPVwidGV4dFwiXG4gICAgICBib3JkZXJSYWRpdXM9XCI1MCVcIlxuICAgID5cbiAgICAgIDxJY29uQ29tcG9uZW50XG4gICAgICAgIHRpdGxlPXtpZH1cbiAgICAgICAgdGl0bGVJZD17YCR7c2VjdGlvbklkfS0ke2lkfWB9XG4gICAgICAgIHNpemU9e3NpemUgPT09ICdzbWFsbCcgPyAxNiA6IDI0fVxuICAgICAgICBjb2xvcj1cInRleHRcIlxuICAgICAgLz5cbiAgICA8L0ljb25MaW5rPlxuICApO1xufTtcbiJdfQ== */").withComponent(Anchor, {
9
+ target: "e1k7a7ka1",
10
+ label: "IconLink"
11
+ });
12
+
13
+ export var SocialShareIconLink = function SocialShareIconLink(_ref) {
14
+ var IconComponent = _ref.icon,
15
+ id = _ref.id,
16
+ href = _ref.href,
17
+ onClick = _ref.onClick,
18
+ size = _ref.size,
19
+ sectionId = _ref.sectionId;
20
+
21
+ var onIconClick = function onIconClick(e) {
22
+ var _window$open;
23
+
24
+ e.preventDefault();
25
+ onClick === null || onClick === void 0 ? void 0 : onClick(e);
26
+ var popupSize = 570;
27
+ var left = (window.screen.width - popupSize) / 2;
28
+ var top = (window.screen.height - popupSize) / 2;
29
+ var features = "menubar=no,toolbar=no,status=no,width=".concat(popupSize, ",height=").concat(popupSize, ",top=").concat(top, ",left=").concat(left);
30
+ (_window$open = window.open(href, '_blank', features)) === null || _window$open === void 0 ? void 0 : _window$open.focus();
31
+ };
32
+
33
+ return /*#__PURE__*/React.createElement(IconLink, {
34
+ href: href,
35
+ onClick: onIconClick,
36
+ target: "_blank",
37
+ rel: "noopener noreferrer",
38
+ "aria-label": "share on ".concat(id),
39
+ p: 8,
40
+ lineHeight: 0,
41
+ borderStyle: "solid",
42
+ borderWidth: size === 'small' ? 1 : 2,
43
+ borderColor: "text",
44
+ borderRadius: "50%"
45
+ }, /*#__PURE__*/React.createElement(IconComponent, {
46
+ title: id,
47
+ titleId: "".concat(sectionId, "-").concat(id),
48
+ size: size === 'small' ? 16 : 24,
49
+ color: "text"
50
+ }));
51
+ };
@@ -0,0 +1,47 @@
1
+ import React from 'react';
2
+ import { BaseSocialShareProps } from './SocialShareIconLink';
3
+ export declare type SocialMediaShare = {
4
+ url: string;
5
+ message?: string;
6
+ hashtags?: string[];
7
+ mention?: string;
8
+ };
9
+ export declare const createShareLink: (formatter: (payload: SocialMediaShare) => Record<string, string>, baseUri: string, payload: SocialMediaShare) => string;
10
+ export declare const SOCIAL_SHARING_PLATFORMS: ({
11
+ id: string;
12
+ icon: React.ForwardRefExoticComponent<Pick<import("@codecademy/gamut-icons").GamutIconProps, "string" | "method" | "p" | "style" | "title" | "clipPath" | "filter" | "mask" | "path" | "onAnimationStart" | "onDragStart" | "onDragEnd" | "onDrag" | "className" | "id" | "lang" | "tabIndex" | "role" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDragCapture" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "key" | "px" | "py" | "pt" | "pb" | "pr" | "pl" | "m" | "mx" | "my" | "mt" | "mb" | "mr" | "ml" | "border" | "borderX" | "borderY" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "borderWidth" | "borderWidthX" | "borderWidthY" | "borderWidthLeft" | "borderWidthRight" | "borderWidthTop" | "borderWidthBottom" | "borderRadius" | "borderRadiusLeft" | "borderRadiusTop" | "borderRadiusBottom" | "borderRadiusRight" | "borderRadiusTopLeft" | "borderRadiusTopRight" | "borderRadiusBottomRight" | "borderRadiusBottomLeft" | "borderStyle" | "borderStyleX" | "borderStyleY" | "borderStyleLeft" | "borderStyleRight" | "borderStyleTop" | "borderStyleBottom" | "flexBasis" | "flexShrink" | "flexGrow" | "order" | "gridColumn" | "gridRow" | "gridColumnStart" | "gridRowStart" | "gridColumnEnd" | "gridRowEnd" | "justifySelf" | "alignSelf" | "gridArea" | "display" | "overflow" | "overflowX" | "overflowY" | "dimensions" | "width" | "minWidth" | "maxWidth" | "height" | "minHeight" | "maxHeight" | "verticalAlign" | "color" | "textColor" | "bg" | "borderColor" | "borderColorX" | "borderColorY" | "borderColorLeft" | "borderColorRight" | "borderColorTop" | "borderColorBottom" | "position" | "inset" | "top" | "right" | "bottom" | "left" | "zIndex" | "opacity" | "fontFamily" | "fontWeight" | "fontSize" | "letterSpacing" | "fontStyle" | "textDecoration" | "theme" | "cursor" | "direction" | "fontSizeAdjust" | "fontStretch" | "fontVariant" | "imageRendering" | "paintOrder" | "pointerEvents" | "rotate" | "scale" | "textRendering" | "transform" | "unicodeBidi" | "visibility" | "wordSpacing" | "writingMode" | "offset" | "azimuth" | "clip" | "alignmentBaseline" | "baselineShift" | "clipRule" | "colorInterpolation" | "colorRendering" | "dominantBaseline" | "fill" | "fillOpacity" | "fillRule" | "floodColor" | "floodOpacity" | "glyphOrientationVertical" | "lightingColor" | "markerEnd" | "markerMid" | "markerStart" | "shapeRendering" | "stopColor" | "stopOpacity" | "stroke" | "strokeDasharray" | "strokeDashoffset" | "strokeLinecap" | "strokeLinejoin" | "strokeMiterlimit" | "strokeOpacity" | "strokeWidth" | "textAnchor" | "vectorEffect" | "end" | "local" | "size" | "x" | "y" | "alphabetic" | "hanging" | "ideographic" | "mathematical" | "values" | "href" | "spacing" | "mode" | "min" | "max" | "target" | "media" | "name" | "type" | "crossOrigin" | "accentHeight" | "accumulate" | "additive" | "allowReorder" | "amplitude" | "arabicForm" | "ascent" | "attributeName" | "attributeType" | "autoReverse" | "baseFrequency" | "baseProfile" | "bbox" | "begin" | "bias" | "by" | "calcMode" | "capHeight" | "clipPathUnits" | "colorInterpolationFilters" | "colorProfile" | "contentScriptType" | "contentStyleType" | "cx" | "cy" | "d" | "decelerate" | "descent" | "diffuseConstant" | "divisor" | "dur" | "dx" | "dy" | "edgeMode" | "elevation" | "enableBackground" | "exponent" | "externalResourcesRequired" | "filterRes" | "filterUnits" | "focusable" | "format" | "from" | "fx" | "fy" | "g1" | "g2" | "glyphName" | "glyphOrientationHorizontal" | "glyphRef" | "gradientTransform" | "gradientUnits" | "horizAdvX" | "horizOriginX" | "in2" | "in" | "intercept" | "k1" | "k2" | "k3" | "k4" | "k" | "kernelMatrix" | "kernelUnitLength" | "kerning" | "keyPoints" | "keySplines" | "keyTimes" | "lengthAdjust" | "limitingConeAngle" | "markerHeight" | "markerUnits" | "markerWidth" | "maskContentUnits" | "maskUnits" | "numOctaves" | "operator" | "orient" | "orientation" | "origin" | "overlinePosition" | "overlineThickness" | "panose1" | "pathLength" | "patternContentUnits" | "patternTransform" | "patternUnits" | "points" | "pointsAtX" | "pointsAtY" | "pointsAtZ" | "preserveAlpha" | "preserveAspectRatio" | "primitiveUnits" | "r" | "radius" | "refX" | "refY" | "renderingIntent" | "repeatCount" | "repeatDur" | "requiredExtensions" | "requiredFeatures" | "restart" | "result" | "rx" | "ry" | "seed" | "slope" | "specularConstant" | "specularExponent" | "speed" | "spreadMethod" | "startOffset" | "stdDeviation" | "stemh" | "stemv" | "stitchTiles" | "strikethroughPosition" | "strikethroughThickness" | "surfaceScale" | "systemLanguage" | "tableValues" | "targetX" | "targetY" | "textLength" | "to" | "u1" | "u2" | "underlinePosition" | "underlineThickness" | "unicode" | "unicodeRange" | "unitsPerEm" | "vAlphabetic" | "version" | "vertAdvY" | "vertOriginX" | "vertOriginY" | "vHanging" | "vIdeographic" | "viewBox" | "viewTarget" | "vMathematical" | "widths" | "x1" | "x2" | "xChannelSelector" | "xHeight" | "xlinkActuate" | "xlinkArcrole" | "xlinkHref" | "xlinkRole" | "xlinkShow" | "xlinkTitle" | "xlinkType" | "xmlBase" | "xmlLang" | "xmlns" | "xmlnsXlink" | "xmlSpace" | "y1" | "y2" | "yChannelSelector" | "z" | "zoomAndPan" | "titleId"> & React.RefAttributes<SVGSVGElement>>;
13
+ baseUrl: string;
14
+ formatShare: ({ url, message, hashtags }: SocialMediaShare) => {
15
+ hashtag: string;
16
+ quote?: string | undefined;
17
+ href?: string | undefined;
18
+ };
19
+ } | {
20
+ id: string;
21
+ icon: React.ForwardRefExoticComponent<Pick<import("@codecademy/gamut-icons").GamutIconProps, "string" | "method" | "p" | "style" | "title" | "clipPath" | "filter" | "mask" | "path" | "onAnimationStart" | "onDragStart" | "onDragEnd" | "onDrag" | "className" | "id" | "lang" | "tabIndex" | "role" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDragCapture" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "key" | "px" | "py" | "pt" | "pb" | "pr" | "pl" | "m" | "mx" | "my" | "mt" | "mb" | "mr" | "ml" | "border" | "borderX" | "borderY" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "borderWidth" | "borderWidthX" | "borderWidthY" | "borderWidthLeft" | "borderWidthRight" | "borderWidthTop" | "borderWidthBottom" | "borderRadius" | "borderRadiusLeft" | "borderRadiusTop" | "borderRadiusBottom" | "borderRadiusRight" | "borderRadiusTopLeft" | "borderRadiusTopRight" | "borderRadiusBottomRight" | "borderRadiusBottomLeft" | "borderStyle" | "borderStyleX" | "borderStyleY" | "borderStyleLeft" | "borderStyleRight" | "borderStyleTop" | "borderStyleBottom" | "flexBasis" | "flexShrink" | "flexGrow" | "order" | "gridColumn" | "gridRow" | "gridColumnStart" | "gridRowStart" | "gridColumnEnd" | "gridRowEnd" | "justifySelf" | "alignSelf" | "gridArea" | "display" | "overflow" | "overflowX" | "overflowY" | "dimensions" | "width" | "minWidth" | "maxWidth" | "height" | "minHeight" | "maxHeight" | "verticalAlign" | "color" | "textColor" | "bg" | "borderColor" | "borderColorX" | "borderColorY" | "borderColorLeft" | "borderColorRight" | "borderColorTop" | "borderColorBottom" | "position" | "inset" | "top" | "right" | "bottom" | "left" | "zIndex" | "opacity" | "fontFamily" | "fontWeight" | "fontSize" | "letterSpacing" | "fontStyle" | "textDecoration" | "theme" | "cursor" | "direction" | "fontSizeAdjust" | "fontStretch" | "fontVariant" | "imageRendering" | "paintOrder" | "pointerEvents" | "rotate" | "scale" | "textRendering" | "transform" | "unicodeBidi" | "visibility" | "wordSpacing" | "writingMode" | "offset" | "azimuth" | "clip" | "alignmentBaseline" | "baselineShift" | "clipRule" | "colorInterpolation" | "colorRendering" | "dominantBaseline" | "fill" | "fillOpacity" | "fillRule" | "floodColor" | "floodOpacity" | "glyphOrientationVertical" | "lightingColor" | "markerEnd" | "markerMid" | "markerStart" | "shapeRendering" | "stopColor" | "stopOpacity" | "stroke" | "strokeDasharray" | "strokeDashoffset" | "strokeLinecap" | "strokeLinejoin" | "strokeMiterlimit" | "strokeOpacity" | "strokeWidth" | "textAnchor" | "vectorEffect" | "end" | "local" | "size" | "x" | "y" | "alphabetic" | "hanging" | "ideographic" | "mathematical" | "values" | "href" | "spacing" | "mode" | "min" | "max" | "target" | "media" | "name" | "type" | "crossOrigin" | "accentHeight" | "accumulate" | "additive" | "allowReorder" | "amplitude" | "arabicForm" | "ascent" | "attributeName" | "attributeType" | "autoReverse" | "baseFrequency" | "baseProfile" | "bbox" | "begin" | "bias" | "by" | "calcMode" | "capHeight" | "clipPathUnits" | "colorInterpolationFilters" | "colorProfile" | "contentScriptType" | "contentStyleType" | "cx" | "cy" | "d" | "decelerate" | "descent" | "diffuseConstant" | "divisor" | "dur" | "dx" | "dy" | "edgeMode" | "elevation" | "enableBackground" | "exponent" | "externalResourcesRequired" | "filterRes" | "filterUnits" | "focusable" | "format" | "from" | "fx" | "fy" | "g1" | "g2" | "glyphName" | "glyphOrientationHorizontal" | "glyphRef" | "gradientTransform" | "gradientUnits" | "horizAdvX" | "horizOriginX" | "in2" | "in" | "intercept" | "k1" | "k2" | "k3" | "k4" | "k" | "kernelMatrix" | "kernelUnitLength" | "kerning" | "keyPoints" | "keySplines" | "keyTimes" | "lengthAdjust" | "limitingConeAngle" | "markerHeight" | "markerUnits" | "markerWidth" | "maskContentUnits" | "maskUnits" | "numOctaves" | "operator" | "orient" | "orientation" | "origin" | "overlinePosition" | "overlineThickness" | "panose1" | "pathLength" | "patternContentUnits" | "patternTransform" | "patternUnits" | "points" | "pointsAtX" | "pointsAtY" | "pointsAtZ" | "preserveAlpha" | "preserveAspectRatio" | "primitiveUnits" | "r" | "radius" | "refX" | "refY" | "renderingIntent" | "repeatCount" | "repeatDur" | "requiredExtensions" | "requiredFeatures" | "restart" | "result" | "rx" | "ry" | "seed" | "slope" | "specularConstant" | "specularExponent" | "speed" | "spreadMethod" | "startOffset" | "stdDeviation" | "stemh" | "stemv" | "stitchTiles" | "strikethroughPosition" | "strikethroughThickness" | "surfaceScale" | "systemLanguage" | "tableValues" | "targetX" | "targetY" | "textLength" | "to" | "u1" | "u2" | "underlinePosition" | "underlineThickness" | "unicode" | "unicodeRange" | "unitsPerEm" | "vAlphabetic" | "version" | "vertAdvY" | "vertOriginX" | "vertOriginY" | "vHanging" | "vIdeographic" | "viewBox" | "viewTarget" | "vMathematical" | "widths" | "x1" | "x2" | "xChannelSelector" | "xHeight" | "xlinkActuate" | "xlinkArcrole" | "xlinkHref" | "xlinkRole" | "xlinkShow" | "xlinkTitle" | "xlinkType" | "xmlBase" | "xmlLang" | "xmlns" | "xmlnsXlink" | "xmlSpace" | "y1" | "y2" | "yChannelSelector" | "z" | "zoomAndPan" | "titleId"> & React.RefAttributes<SVGSVGElement>>;
22
+ baseUrl: string;
23
+ formatShare: ({ url, message, hashtags, mention }: SocialMediaShare) => {
24
+ via?: string | undefined;
25
+ hashtags?: string | undefined;
26
+ text?: string | undefined;
27
+ url?: string | undefined;
28
+ };
29
+ } | {
30
+ id: string;
31
+ icon: React.ForwardRefExoticComponent<Pick<import("@codecademy/gamut-icons").GamutIconProps, "string" | "method" | "p" | "style" | "title" | "clipPath" | "filter" | "mask" | "path" | "onAnimationStart" | "onDragStart" | "onDragEnd" | "onDrag" | "className" | "id" | "lang" | "tabIndex" | "role" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDragCapture" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "key" | "px" | "py" | "pt" | "pb" | "pr" | "pl" | "m" | "mx" | "my" | "mt" | "mb" | "mr" | "ml" | "border" | "borderX" | "borderY" | "borderTop" | "borderRight" | "borderBottom" | "borderLeft" | "borderWidth" | "borderWidthX" | "borderWidthY" | "borderWidthLeft" | "borderWidthRight" | "borderWidthTop" | "borderWidthBottom" | "borderRadius" | "borderRadiusLeft" | "borderRadiusTop" | "borderRadiusBottom" | "borderRadiusRight" | "borderRadiusTopLeft" | "borderRadiusTopRight" | "borderRadiusBottomRight" | "borderRadiusBottomLeft" | "borderStyle" | "borderStyleX" | "borderStyleY" | "borderStyleLeft" | "borderStyleRight" | "borderStyleTop" | "borderStyleBottom" | "flexBasis" | "flexShrink" | "flexGrow" | "order" | "gridColumn" | "gridRow" | "gridColumnStart" | "gridRowStart" | "gridColumnEnd" | "gridRowEnd" | "justifySelf" | "alignSelf" | "gridArea" | "display" | "overflow" | "overflowX" | "overflowY" | "dimensions" | "width" | "minWidth" | "maxWidth" | "height" | "minHeight" | "maxHeight" | "verticalAlign" | "color" | "textColor" | "bg" | "borderColor" | "borderColorX" | "borderColorY" | "borderColorLeft" | "borderColorRight" | "borderColorTop" | "borderColorBottom" | "position" | "inset" | "top" | "right" | "bottom" | "left" | "zIndex" | "opacity" | "fontFamily" | "fontWeight" | "fontSize" | "letterSpacing" | "fontStyle" | "textDecoration" | "theme" | "cursor" | "direction" | "fontSizeAdjust" | "fontStretch" | "fontVariant" | "imageRendering" | "paintOrder" | "pointerEvents" | "rotate" | "scale" | "textRendering" | "transform" | "unicodeBidi" | "visibility" | "wordSpacing" | "writingMode" | "offset" | "azimuth" | "clip" | "alignmentBaseline" | "baselineShift" | "clipRule" | "colorInterpolation" | "colorRendering" | "dominantBaseline" | "fill" | "fillOpacity" | "fillRule" | "floodColor" | "floodOpacity" | "glyphOrientationVertical" | "lightingColor" | "markerEnd" | "markerMid" | "markerStart" | "shapeRendering" | "stopColor" | "stopOpacity" | "stroke" | "strokeDasharray" | "strokeDashoffset" | "strokeLinecap" | "strokeLinejoin" | "strokeMiterlimit" | "strokeOpacity" | "strokeWidth" | "textAnchor" | "vectorEffect" | "end" | "local" | "size" | "x" | "y" | "alphabetic" | "hanging" | "ideographic" | "mathematical" | "values" | "href" | "spacing" | "mode" | "min" | "max" | "target" | "media" | "name" | "type" | "crossOrigin" | "accentHeight" | "accumulate" | "additive" | "allowReorder" | "amplitude" | "arabicForm" | "ascent" | "attributeName" | "attributeType" | "autoReverse" | "baseFrequency" | "baseProfile" | "bbox" | "begin" | "bias" | "by" | "calcMode" | "capHeight" | "clipPathUnits" | "colorInterpolationFilters" | "colorProfile" | "contentScriptType" | "contentStyleType" | "cx" | "cy" | "d" | "decelerate" | "descent" | "diffuseConstant" | "divisor" | "dur" | "dx" | "dy" | "edgeMode" | "elevation" | "enableBackground" | "exponent" | "externalResourcesRequired" | "filterRes" | "filterUnits" | "focusable" | "format" | "from" | "fx" | "fy" | "g1" | "g2" | "glyphName" | "glyphOrientationHorizontal" | "glyphRef" | "gradientTransform" | "gradientUnits" | "horizAdvX" | "horizOriginX" | "in2" | "in" | "intercept" | "k1" | "k2" | "k3" | "k4" | "k" | "kernelMatrix" | "kernelUnitLength" | "kerning" | "keyPoints" | "keySplines" | "keyTimes" | "lengthAdjust" | "limitingConeAngle" | "markerHeight" | "markerUnits" | "markerWidth" | "maskContentUnits" | "maskUnits" | "numOctaves" | "operator" | "orient" | "orientation" | "origin" | "overlinePosition" | "overlineThickness" | "panose1" | "pathLength" | "patternContentUnits" | "patternTransform" | "patternUnits" | "points" | "pointsAtX" | "pointsAtY" | "pointsAtZ" | "preserveAlpha" | "preserveAspectRatio" | "primitiveUnits" | "r" | "radius" | "refX" | "refY" | "renderingIntent" | "repeatCount" | "repeatDur" | "requiredExtensions" | "requiredFeatures" | "restart" | "result" | "rx" | "ry" | "seed" | "slope" | "specularConstant" | "specularExponent" | "speed" | "spreadMethod" | "startOffset" | "stdDeviation" | "stemh" | "stemv" | "stitchTiles" | "strikethroughPosition" | "strikethroughThickness" | "surfaceScale" | "systemLanguage" | "tableValues" | "targetX" | "targetY" | "textLength" | "to" | "u1" | "u2" | "underlinePosition" | "underlineThickness" | "unicode" | "unicodeRange" | "unitsPerEm" | "vAlphabetic" | "version" | "vertAdvY" | "vertOriginX" | "vertOriginY" | "vHanging" | "vIdeographic" | "viewBox" | "viewTarget" | "vMathematical" | "widths" | "x1" | "x2" | "xChannelSelector" | "xHeight" | "xlinkActuate" | "xlinkArcrole" | "xlinkHref" | "xlinkRole" | "xlinkShow" | "xlinkTitle" | "xlinkType" | "xmlBase" | "xmlLang" | "xmlns" | "xmlnsXlink" | "xmlSpace" | "y1" | "y2" | "yChannelSelector" | "z" | "zoomAndPan" | "titleId"> & React.RefAttributes<SVGSVGElement>>;
32
+ baseUrl: string;
33
+ formatShare: ({ url, message }: SocialMediaShare) => {
34
+ title?: string | undefined;
35
+ url?: string | undefined;
36
+ };
37
+ })[];
38
+ export declare type SocialMediaSharingProps = BaseSocialShareProps & {
39
+ url: string;
40
+ message?: string;
41
+ hashtags?: string[];
42
+ mention?: string;
43
+ action?: (e: React.MouseEvent, target: string) => void;
44
+ label?: string;
45
+ iconStyles?: string;
46
+ };
47
+ export declare const BetterSocialMediaSharing: React.FC<SocialMediaSharingProps>;
@@ -0,0 +1,124 @@
1
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
2
+
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4
+
5
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+
7
+ import { Box, GridBox, Text } from '@codecademy/gamut';
8
+ import { FacebookIcon, RedditIcon, TwitterIcon } from '@codecademy/gamut-icons';
9
+ import React from 'react';
10
+ import { SocialShareIconLink } from './SocialShareIconLink';
11
+ /*
12
+ The SocialMediaSharing component in gamut-labs has some issues.
13
+ It doesn't respect the hashtags input for Facebook.
14
+ LinkedIn sharing doesn't allow URL params, so sharing Codebytes is not possible.
15
+ Additionally, I wanted to add several other social media platforms.
16
+ For the sake of the hackathon, I just copy-pasted that component and modified it here,
17
+ but if we implement this for real we should update the actual component in gamut-labs.
18
+ */
19
+
20
+ export var createShareLink = function createShareLink(formatter, baseUri, payload) {
21
+ var params = formatter(payload);
22
+ var url = new URL(baseUri);
23
+ Object.keys(params).forEach(function (key) {
24
+ url.searchParams.append(key, params[key]);
25
+ });
26
+ return url.toString();
27
+ };
28
+ export var SOCIAL_SHARING_PLATFORMS = [{
29
+ id: 'facebook',
30
+ icon: FacebookIcon,
31
+ baseUrl: 'https://www.facebook.com/dialog/share?app_id=212500508799908',
32
+ formatShare: function formatShare(_ref) {
33
+ var url = _ref.url,
34
+ message = _ref.message,
35
+ hashtags = _ref.hashtags;
36
+ return _objectSpread(_objectSpread(_objectSpread({}, url && {
37
+ href: url
38
+ }), message && {
39
+ quote: message
40
+ }), {}, {
41
+ hashtag: hashtags ? "#".concat(hashtags[0]) : '#codecademy'
42
+ });
43
+ }
44
+ }, {
45
+ id: 'twitter',
46
+ icon: TwitterIcon,
47
+ baseUrl: 'https://twitter.com/intent/tweet?',
48
+ formatShare: function formatShare(_ref2) {
49
+ var url = _ref2.url,
50
+ message = _ref2.message,
51
+ hashtags = _ref2.hashtags,
52
+ mention = _ref2.mention;
53
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, url && {
54
+ url: url
55
+ }), message && {
56
+ text: message
57
+ }), hashtags && {
58
+ hashtags: hashtags.join(',')
59
+ }), mention && {
60
+ via: mention
61
+ });
62
+ }
63
+ }, {
64
+ id: 'reddit',
65
+ icon: RedditIcon,
66
+ baseUrl: 'https://reddit.com/submit',
67
+ formatShare: function formatShare(_ref3) {
68
+ var url = _ref3.url,
69
+ message = _ref3.message;
70
+ return _objectSpread(_objectSpread({}, url && {
71
+ url: url
72
+ }), message && {
73
+ title: message
74
+ });
75
+ }
76
+ }];
77
+ export var BetterSocialMediaSharing = function BetterSocialMediaSharing(_ref4) {
78
+ var url = _ref4.url,
79
+ message = _ref4.message,
80
+ hashtags = _ref4.hashtags,
81
+ mention = _ref4.mention,
82
+ action = _ref4.action,
83
+ label = _ref4.label,
84
+ sectionId = _ref4.sectionId,
85
+ _ref4$size = _ref4.size,
86
+ size = _ref4$size === void 0 ? 'normal' : _ref4$size,
87
+ iconStyles = _ref4.iconStyles;
88
+ return /*#__PURE__*/React.createElement(Box, {
89
+ display: "inline-flex",
90
+ flexDirection: "column",
91
+ alignItems: "center"
92
+ }, label && /*#__PURE__*/React.createElement(Text, {
93
+ fontSize: size === 'small' ? 14 : 16,
94
+ textColor: "text",
95
+ mb: 16,
96
+ "data-testid": "social-sharing-label"
97
+ }, label), /*#__PURE__*/React.createElement(GridBox, {
98
+ gridAutoColumns: "max-content",
99
+ gridAutoFlow: "column",
100
+ gap: 16,
101
+ className: iconStyles
102
+ }, SOCIAL_SHARING_PLATFORMS.map(function (_ref5) {
103
+ var id = _ref5.id,
104
+ icon = _ref5.icon,
105
+ formatShare = _ref5.formatShare,
106
+ baseUrl = _ref5.baseUrl;
107
+ return /*#__PURE__*/React.createElement(SocialShareIconLink, {
108
+ key: id,
109
+ id: id,
110
+ sectionId: sectionId,
111
+ href: createShareLink(formatShare, baseUrl, {
112
+ url: url,
113
+ message: message,
114
+ hashtags: hashtags,
115
+ mention: mention
116
+ }),
117
+ icon: icon,
118
+ size: size,
119
+ onClick: function onClick(e) {
120
+ return action === null || action === void 0 ? void 0 : action(e, "".concat(id, "_share"));
121
+ }
122
+ });
123
+ })));
124
+ };
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { LanguageOption } from '../consts';
3
+ export declare type EmbedCodebyteModalProps = {
4
+ isModalOpen: boolean;
5
+ setIsModalOpen: (open: boolean) => void;
6
+ language: LanguageOption;
7
+ text: string;
8
+ };
9
+ export declare const EmbedCodebyteModal: React.FC<EmbedCodebyteModalProps>;
@@ -0,0 +1,177 @@
1
+ import _styled from "@emotion/styled/base";
2
+
3
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
+
5
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
+
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+
9
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
+
11
+ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
+
13
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
+
15
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
16
+
17
+ import { Box, Modal, SelectDropdown, Text, TextButton, ToolTip } from '@codecademy/gamut';
18
+ import { CopyIcon } from '@codecademy/gamut-icons';
19
+ import React, { useState } from 'react';
20
+ import { getCodebyteUrl } from '../helpers';
21
+
22
+ var CopyIconStyled = /*#__PURE__*/_styled(CopyIcon, {
23
+ target: "e1ytdktz0",
24
+ label: "CopyIconStyled"
25
+ })(process.env.NODE_ENV === "production" ? {
26
+ name: "u7ytkp",
27
+ styles: "margin-right:0.5rem"
28
+ } : {
29
+ name: "u7ytkp",
30
+ styles: "margin-right:0.5rem",
31
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9FbWJlZE1vZGFsL2luZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzQnVDIiwiZmlsZSI6Ii4uLy4uL3NyYy9FbWJlZE1vZGFsL2luZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJveCxcbiAgTW9kYWwsXG4gIFNlbGVjdERyb3Bkb3duLFxuICBUZXh0LFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQgeyBDb3B5SWNvbiB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LWljb25zJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsgTGFuZ3VhZ2VPcHRpb24gfSBmcm9tICcuLi9jb25zdHMnO1xuaW1wb3J0IHsgZ2V0Q29kZWJ5dGVVcmwgfSBmcm9tICcuLi9oZWxwZXJzJztcblxuZXhwb3J0IHR5cGUgRW1iZWRDb2RlYnl0ZU1vZGFsUHJvcHMgPSB7XG4gIGlzTW9kYWxPcGVuOiBib29sZWFuO1xuICBzZXRJc01vZGFsT3BlbjogKG9wZW46IGJvb2xlYW4pID0+IHZvaWQ7XG4gIGxhbmd1YWdlOiBMYW5ndWFnZU9wdGlvbjtcbiAgdGV4dDogc3RyaW5nO1xufTtcblxuY29uc3QgQ29weUljb25TdHlsZWQgPSBzdHlsZWQoQ29weUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbi8vIFRvRG86IHdvcmsgc29tZSBUeXBlc2NyaXB0IG1hZ2ljXG5jb25zdCBFTUJFRF9PUFRJT05TID0gW1xuICAnSUZyYW1lJyxcbiAgJ1JlYWN0JyxcbiAgJ0Rpc2NvdXJzZScsXG4gICdDb2RlY2FkZW15IERvY3MnLFxuICAnQ29kZWNhZGVteSBBcnRpY2xlcycsXG5dO1xuXG5mdW5jdGlvbiBnZXRJbnN0cnVjdGlvbnNGb3JEZXN0aW5hdGlvbihkZXN0aW5hdGlvbjogc3RyaW5nKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgc3dpdGNoIChkZXN0aW5hdGlvbikge1xuICAgIGNhc2UgJ0lGcmFtZSc6XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8VGV4dCBtYj17MTZ9IGRpc3BsYXk9XCJibG9ja1wiIHA9ezh9PlxuICAgICAgICAgIElGcmFtZXMgYXJlIGEgcG9ydGFibGUgd2F5IHRvIGVtYmVkIG9uZSB3ZWJwYWdlIGluc2lkZSBhbm90aGVyLiBUaGlzXG4gICAgICAgICAgbWV0aG9kIHdvcmtzIHdpdGggcmF3IEhUTUwuIEhvd2V2ZXIsIGl0IG1heSBiZSBkaXNhYmxlZCBvbiBzb21lIHNpdGVzLlxuICAgICAgICA8L1RleHQ+XG4gICAgICApO1xuICAgIGNhc2UgJ1JlYWN0JzpcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxUZXh0IG1iPXsxNn0gZGlzcGxheT1cImJsb2NrXCIgcD17OH0+XG4gICAgICAgICAgQWRkIHRvIGEgcGFnZSB0aGF0IGFscmVhZHkgdXNlcyBSZWFjdC4gQmUgc3VyZSB0byBhbHNvIGluc3RhbGwgYW5kXG4gICAgICAgICAgaW1wb3J0IHRoZSBAY29kZWNhZGVteS9jb2RlYnl0ZXMgcGFja2FnZSAoZS5nLiB5YXJuIGFkZFxuICAgICAgICAgIEBjb2RlY2FkZW15L2NvZGVieXRlcykuXG4gICAgICAgIDwvVGV4dD5cbiAgICAgICk7XG4gICAgY2FzZSAnRGlzY291cnNlJzpcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxUZXh0IG1iPXsxNn0gZGlzcGxheT1cImJsb2NrXCIgcD17OH0+XG4gICAgICAgICAgV29ya3Mgb24gYW55IERpc2NvdXJzZSBmb3J1bSB0aGF0IGhhcyB0aGV7JyAnfVxuICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL2dpdGh1Yi5jb20vY29kZWNhZGVteS9kaXNjb3Vyc2UtY29kZWJ5dGVzLXBsdWdpblwiPlxuICAgICAgICAgICAgQ29kZWJ5dGVzIHBsdWdpblxuICAgICAgICAgIDwvYT57JyAnfVxuICAgICAgICAgIGluc3RhbGxlZCwgc3VjaCBhc3snICd9XG4gICAgICAgICAgPGEgaHJlZj1cImRpc2N1c3MuY29kZWNhZGVteS5jb21cIj5kaXNjdXNzLmNvZGVjYWRlbXkuY29tPC9hPlxuICAgICAgICA8L1RleHQ+XG4gICAgICApO1xuICAgIGNhc2UgJ0NvZGVjYWRlbXkgRG9jcyc6XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8VGV4dCBtYj17MTZ9IGRpc3BsYXk9XCJibG9ja1wiIHA9ezh9PlxuICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL3d3dy5jb2RlY2FkZW15LmNvbS9yZXNvdXJjZXMvZG9jc1wiPlxuICAgICAgICAgICAgQ29kZWNhZGVteSBEb2NzXG4gICAgICAgICAgPC9hPnsnICd9XG4gICAgICAgICAgYXJlIGEgY29tbXVuaXR5LWRyaXZlbiBjb2xsZWN0aW9uIG9mIGNvZGUgZG9jdW1lbnRhdGlvbiBmb3IgcG9wdWxhclxuICAgICAgICAgIHByb2dyYW1taW5nIGxhbmd1YWdlcyBhbmQgZnJhbWV3b3Jrcy4gQW55b25lIGlzIHdlbGNvbWUgdG8gY29udHJpYnV0ZSFcbiAgICAgICAgICBIZWFkIG9uIG92ZXIgdG8gb3VyeycgJ31cbiAgICAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly9naXRodWIuY29tL0NvZGVjYWRlbXkvZG9jcy9ibG9iL21haW4vLmdpdGh1Yi9DT05UUklCVVRJTkcubWRcIj5cbiAgICAgICAgICAgIENvbnRyaWJ1dGlvbiBHdWlkZVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgICAuXG4gICAgICAgIDwvVGV4dD5cbiAgICAgICk7XG4gICAgY2FzZSAnQ29kZWNhZGVteSBBcnRpY2xlcyc6XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8VGV4dCBtYj17MTZ9IGRpc3BsYXk9XCJibG9ja1wiIHA9ezh9PlxuICAgICAgICAgIENvbWluZyBzb29uISBVc2VycyB3aWxsIGJlIGFibGUgdG8gd3JpdGUgYW5kIHB1Ymxpc2ggYXJ0aWNsZXMgb25cbiAgICAgICAgICBDb2RlY2FkZW15LiBJbiB0aGUgbWVhbnRpbWUsIHRoaXMgb3B0aW9uIGlzIGZvciBDdXJyaWN1bHVtIERldmVsb3BlcnMuXG4gICAgICAgIDwvVGV4dD5cbiAgICAgICk7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxUZXh0IG1iPXsxNn0gZGlzcGxheT1cImJsb2NrXCIgcD17OH0+XG4gICAgICAgICAgQ2hvb3NlIGZyb20gdGhlIGRyb3Bkb3duXG4gICAgICAgIDwvVGV4dD5cbiAgICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IEVtYmVkQ29kZWJ5dGVNb2RhbDogUmVhY3QuRkM8RW1iZWRDb2RlYnl0ZU1vZGFsUHJvcHM+ID0gKHtcbiAgaXNNb2RhbE9wZW4sXG4gIHNldElzTW9kYWxPcGVuLFxuICBsYW5ndWFnZSxcbiAgdGV4dCxcbn0pID0+IHtcbiAgY29uc3QgW2VtYmVkRGVzdGluYXRpb24sIHNldEVtYmVkRGVzdGluYXRpb25dID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbaXNFbWJlZENvcGllZCwgc2V0SXNFbWJlZENvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IG9uQ29weUVtYmVkQ2xpY2sgPSAoKSA9PiB7XG4gICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgLndyaXRlVGV4dChnZXRFbWJlZFN5bnRheEZvckRlc3RpbmF0aW9uKGVtYmVkRGVzdGluYXRpb24pKVxuICAgICAgLnRoZW4oKCkgPT4gc2V0SXNFbWJlZENvcGllZCh0cnVlKSlcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAuY2F0Y2goKCkgPT4gY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGNvcHkgZW1iZWQnKSk7XG4gIH07XG5cbiAgY29uc3QgZ2V0RW1iZWRTeW50YXhGb3JEZXN0aW5hdGlvbiA9IChkZXN0aW5hdGlvbjogc3RyaW5nKSA9PiB7XG4gICAgc3dpdGNoIChkZXN0aW5hdGlvbikge1xuICAgICAgY2FzZSAnSUZyYW1lJzpcbiAgICAgICAgcmV0dXJuIGA8aWZyYW1lIHRpdGxlPVwiY29kZWJ5dGVcIiBzcmM9XCIke2dldENvZGVieXRlVXJsKFxuICAgICAgICAgIGxhbmd1YWdlLFxuICAgICAgICAgIHRleHRcbiAgICAgICAgKX1cIi8+YDtcbiAgICAgIGNhc2UgJ1JlYWN0JzpcbiAgICAgICAgcmV0dXJuIGA8Q29kZUJ5dGVFZGl0b3JcbiAgICAgICAgdGV4dD17XFxgJHt0ZXh0fVxcYH1cbiAgICAgICAgbGFuZ3VhZ2U9XCIke2xhbmd1YWdlfVwiXG4gICAgICAgIHNuaXBwZXRzQmFzZVVybD1cInByb3BlbGxlci5jYy1sZS1jZi5jb21cIlxuICAgICAgICBtYXhXaWR0aD1cIjEwMCVcIlxuICAgICAgICBoZWlnaHQ9XCI1MHZoXCJcbiAgICAgICAgd2lkdGg9XCI1MHZ3XCJcbiAgICAgIC8+YDtcbiAgICAgIGNhc2UgJ0Rpc2NvdXJzZSc6XG4gICAgICAgIHJldHVybiBgW2NvZGVieXRlIGxhbmd1YWdlPSR7bGFuZ3VhZ2V9XVxcbiR7dGV4dH1cXG5bL2NvZGVieXRlXVxcbmA7XG4gICAgICBjYXNlICdDb2RlY2FkZW15IERvY3MnOlxuICAgICAgICByZXR1cm4gYFxcYFxcYFxcYGNvZGVieXRlLyR7bGFuZ3VhZ2V9XFxuJHt0ZXh0fVxcblxcYFxcYFxcYGA7XG4gICAgICBjYXNlICdDb2RlY2FkZW15IEFydGljbGVzJzpcbiAgICAgICAgcmV0dXJuIGBcXGBcXGBcXGBjb2RlYnl0ZS8ke2xhbmd1YWdlfVxcbiR7dGV4dH1cXG5cXGBcXGBcXGBgO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxNb2RhbFxuICAgICAgaXNPcGVuPXtpc01vZGFsT3Blbn1cbiAgICAgIG9uUmVxdWVzdENsb3NlPXsoKSA9PiBzZXRJc01vZGFsT3BlbihmYWxzZSl9XG4gICAgICB0aXRsZT1cIkVtYmVkIHlvdXIgQ29kZWJ5dGUgb24geW91ciBvd24gcGFnZVwiXG4gICAgPlxuICAgICAgPEJveCBkaXNwbGF5PVwiYmxvY2tcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgcD17OH0+XG4gICAgICAgIDxTZWxlY3REcm9wZG93blxuICAgICAgICAgIG9wdGlvbnM9e0VNQkVEX09QVElPTlN9XG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJDaG9vc2UgYSBkZXN0aW5hdGlvblwiXG4gICAgICAgICAgb25DaGFuZ2U9eyhvcHRpb24pID0+IHtcbiAgICAgICAgICAgIGlmICghb3B0aW9uKSByZXR1cm47XG4gICAgICAgICAgICBzZXRFbWJlZERlc3RpbmF0aW9uKG9wdGlvbi52YWx1ZSk7XG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAge2dldEluc3RydWN0aW9uc0ZvckRlc3RpbmF0aW9uKGVtYmVkRGVzdGluYXRpb24pfVxuICAgICAgICB7ZW1iZWREZXN0aW5hdGlvbiAmJiAoXG4gICAgICAgICAgPD5cbiAgICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgICB2YWx1ZT17Z2V0RW1iZWRTeW50YXhGb3JEZXN0aW5hdGlvbihlbWJlZERlc3RpbmF0aW9uKX1cbiAgICAgICAgICAgICAgY29scz17NjB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFRvb2xUaXBcbiAgICAgICAgICAgICAgaWQ9XCJlbWJlZC1jb3BpZWRcIlxuICAgICAgICAgICAgICBhbGlnbm1lbnQ9XCJ0b3AtcmlnaHRcIlxuICAgICAgICAgICAgICBtb2RlPVwiZGFya1wiXG4gICAgICAgICAgICAgIHRhcmdldD17XG4gICAgICAgICAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgb25DbGljaz17b25Db3B5RW1iZWRDbGlja31cbiAgICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNFbWJlZENvcGllZChmYWxzZSl9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPENvcHlJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IENvcHkgRW1iZWRcbiAgICAgICAgICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2lzRW1iZWRDb3BpZWQgPyAoXG4gICAgICAgICAgICAgICAgPHNwYW4gcm9sZT1cImFsZXJ0XCI+Q29waWVkITwvc3Bhbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiYWxlcnRcIj5DbGljayB0byBjb3B5PC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICAgIDwvPlxuICAgICAgICApfVxuICAgICAgPC9Cb3g+XG4gICAgPC9Nb2RhbD5cbiAgKTtcbn07XG4iXX0= */",
32
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
33
+ }); // ToDo: work some Typescript magic
34
+
35
+
36
+ var EMBED_OPTIONS = ['IFrame', 'React', 'Discourse', 'Codecademy Docs', 'Codecademy Articles'];
37
+
38
+ function getInstructionsForDestination(destination) {
39
+ switch (destination) {
40
+ case 'IFrame':
41
+ return /*#__PURE__*/React.createElement(Text, {
42
+ mb: 16,
43
+ display: "block",
44
+ p: 8
45
+ }, "IFrames are a portable way to embed one webpage inside another. This method works with raw HTML. However, it may be disabled on some sites.");
46
+
47
+ case 'React':
48
+ return /*#__PURE__*/React.createElement(Text, {
49
+ mb: 16,
50
+ display: "block",
51
+ p: 8
52
+ }, "Add to a page that already uses React. Be sure to also install and import the @codecademy/codebytes package (e.g. yarn add @codecademy/codebytes).");
53
+
54
+ case 'Discourse':
55
+ return /*#__PURE__*/React.createElement(Text, {
56
+ mb: 16,
57
+ display: "block",
58
+ p: 8
59
+ }, "Works on any Discourse forum that has the", ' ', /*#__PURE__*/React.createElement("a", {
60
+ href: "https://github.com/codecademy/discourse-codebytes-plugin"
61
+ }, "Codebytes plugin"), ' ', "installed, such as", ' ', /*#__PURE__*/React.createElement("a", {
62
+ href: "discuss.codecademy.com"
63
+ }, "discuss.codecademy.com"));
64
+
65
+ case 'Codecademy Docs':
66
+ return /*#__PURE__*/React.createElement(Text, {
67
+ mb: 16,
68
+ display: "block",
69
+ p: 8
70
+ }, /*#__PURE__*/React.createElement("a", {
71
+ href: "https://www.codecademy.com/resources/docs"
72
+ }, "Codecademy Docs"), ' ', "are a community-driven collection of code documentation for popular programming languages and frameworks. Anyone is welcome to contribute! Head on over to our", ' ', /*#__PURE__*/React.createElement("a", {
73
+ href: "https://github.com/Codecademy/docs/blob/main/.github/CONTRIBUTING.md"
74
+ }, "Contribution Guide"), ".");
75
+
76
+ case 'Codecademy Articles':
77
+ return /*#__PURE__*/React.createElement(Text, {
78
+ mb: 16,
79
+ display: "block",
80
+ p: 8
81
+ }, "Coming soon! Users will be able to write and publish articles on Codecademy. In the meantime, this option is for Curriculum Developers.");
82
+
83
+ default:
84
+ return /*#__PURE__*/React.createElement(Text, {
85
+ mb: 16,
86
+ display: "block",
87
+ p: 8
88
+ }, "Choose from the dropdown");
89
+ }
90
+ }
91
+
92
+ export var EmbedCodebyteModal = function EmbedCodebyteModal(_ref) {
93
+ var isModalOpen = _ref.isModalOpen,
94
+ setIsModalOpen = _ref.setIsModalOpen,
95
+ language = _ref.language,
96
+ text = _ref.text;
97
+
98
+ var _useState = useState(''),
99
+ _useState2 = _slicedToArray(_useState, 2),
100
+ embedDestination = _useState2[0],
101
+ setEmbedDestination = _useState2[1];
102
+
103
+ var _useState3 = useState(false),
104
+ _useState4 = _slicedToArray(_useState3, 2),
105
+ isEmbedCopied = _useState4[0],
106
+ setIsEmbedCopied = _useState4[1];
107
+
108
+ var onCopyEmbedClick = function onCopyEmbedClick() {
109
+ navigator.clipboard.writeText(getEmbedSyntaxForDestination(embedDestination)).then(function () {
110
+ return setIsEmbedCopied(true);
111
+ }) // eslint-disable-next-line no-console
112
+ ["catch"](function () {
113
+ return console.error('Failed to copy embed');
114
+ });
115
+ };
116
+
117
+ var getEmbedSyntaxForDestination = function getEmbedSyntaxForDestination(destination) {
118
+ switch (destination) {
119
+ case 'IFrame':
120
+ return "<iframe title=\"codebyte\" src=\"".concat(getCodebyteUrl(language, text), "\"/>");
121
+
122
+ case 'React':
123
+ return "<CodeByteEditor\n text={`".concat(text, "`}\n language=\"").concat(language, "\"\n snippetsBaseUrl=\"propeller.cc-le-cf.com\"\n maxWidth=\"100%\"\n height=\"50vh\"\n width=\"50vw\"\n />");
124
+
125
+ case 'Discourse':
126
+ return "[codebyte language=".concat(language, "]\n").concat(text, "\n[/codebyte]\n");
127
+
128
+ case 'Codecademy Docs':
129
+ return "```codebyte/".concat(language, "\n").concat(text, "\n```");
130
+
131
+ case 'Codecademy Articles':
132
+ return "```codebyte/".concat(language, "\n").concat(text, "\n```");
133
+
134
+ default:
135
+ return '';
136
+ }
137
+ };
138
+
139
+ return /*#__PURE__*/React.createElement(Modal, {
140
+ isOpen: isModalOpen,
141
+ onRequestClose: function onRequestClose() {
142
+ return setIsModalOpen(false);
143
+ },
144
+ title: "Embed your Codebyte on your own page"
145
+ }, /*#__PURE__*/React.createElement(Box, {
146
+ display: "block",
147
+ alignItems: "center",
148
+ p: 8
149
+ }, /*#__PURE__*/React.createElement(SelectDropdown, {
150
+ options: EMBED_OPTIONS,
151
+ placeholder: "Choose a destination",
152
+ onChange: function onChange(option) {
153
+ if (!option) return;
154
+ setEmbedDestination(option.value);
155
+ }
156
+ }), getInstructionsForDestination(embedDestination), embedDestination && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("textarea", {
157
+ value: getEmbedSyntaxForDestination(embedDestination),
158
+ cols: 60
159
+ }), /*#__PURE__*/React.createElement(ToolTip, {
160
+ id: "embed-copied",
161
+ alignment: "top-right",
162
+ mode: "dark",
163
+ target: /*#__PURE__*/React.createElement(TextButton, {
164
+ variant: "secondary",
165
+ onClick: onCopyEmbedClick,
166
+ onBlur: function onBlur() {
167
+ return setIsEmbedCopied(false);
168
+ }
169
+ }, /*#__PURE__*/React.createElement(CopyIconStyled, {
170
+ "aria-hidden": "true"
171
+ }), " Copy Embed")
172
+ }, isEmbedCopied ? /*#__PURE__*/React.createElement("span", {
173
+ role: "alert"
174
+ }, "Copied!") : /*#__PURE__*/React.createElement("span", {
175
+ role: "alert"
176
+ }, "Click to copy")))));
177
+ };
Binary file
package/dist/editor.js CHANGED
@@ -19,25 +19,59 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
19
 
20
20
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
21
21
 
22
- import { FillButton, FlexBox, Spinner, TextButton, ToolTip } from '@codecademy/gamut';
23
- import { CopyIcon } from '@codecademy/gamut-icons';
22
+ import { Box, FillButton, FlexBox, Modal, Spinner, TextButton, ToolTip } from '@codecademy/gamut';
23
+ import { CopyIcon, EditorIcon, ShareIcon, TagIcon } from '@codecademy/gamut-icons';
24
24
  import React, { useState } from 'react';
25
25
  import { postSnippet } from './api';
26
+ import { BetterSocialMediaSharing } from './BetterSocialSharing/betterSocialSharing';
26
27
  import { Drawers } from './drawers';
27
- import { trackClick } from './helpers';
28
+ import { EmbedCodebyteModal } from './EmbedModal';
29
+ import { getCodebyteUrl, trackClick } from './helpers';
30
+ import qrcodeIcon from './Icons/qr-code-white.png';
28
31
  import { SimpleMonacoEditor } from './MonacoEditor';
29
32
 
30
33
  var Output = _styled("pre", {
31
- target: "e1lzxy8e1",
34
+ target: "e1lzxy8e5",
32
35
  label: "Output"
33
36
  })("width:100%;height:100%;margin:0;padding:0 1rem;font-family:Monaco;font-size:0.875rem;overflow:auto;", function (_ref) {
34
37
  var hasError = _ref.hasError,
35
38
  theme = _ref.theme;
36
39
  return "\n color: ".concat(hasError ? theme.colors.orange : theme.colors.text, ";\n background-color: ").concat(theme.colors['navy-900'], ";\n");
37
- }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1CZ0QiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGaWxsQnV0dG9uLFxuICBGbGV4Qm94LFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQgeyBDb3B5SWNvbiB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LWljb25zJztcbmltcG9ydCB7IFVzZXJDbGlja0RhdGEgfSBmcm9tICdAY29kZWNhZGVteS90cmFja2luZyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IHBvc3RTbmlwcGV0IH0gZnJvbSAnLi9hcGknO1xuaW1wb3J0IHR5cGUgeyBMYW5ndWFnZU9wdGlvbiB9IGZyb20gJy4vY29uc3RzJztcbmltcG9ydCB7IERyYXdlcnMgfSBmcm9tICcuL2RyYXdlcnMnO1xuaW1wb3J0IHsgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBTaW1wbGVNb25hY29FZGl0b3IgfSBmcm9tICcuL01vbmFjb0VkaXRvcic7XG5pbXBvcnQgeyBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IE91dHB1dCA9IHN0eWxlZC5wcmU8eyBoYXNFcnJvcjogYm9vbGVhbiB9PmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBNb25hY287XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICAkeyh7IGhhc0Vycm9yLCB0aGVtZSB9KSA9PiBgXG4gIGNvbG9yOiAke2hhc0Vycm9yID8gdGhlbWUuY29sb3JzLm9yYW5nZSA6IHRoZW1lLmNvbG9ycy50ZXh0fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHt0aGVtZS5jb2xvcnNbJ25hdnktOTAwJ119O1xuYH1cbmA7XG5cbmNvbnN0IENvcHlJY29uU3R5bGVkID0gc3R5bGVkKENvcHlJY29uKWBcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG5gO1xuXG5jb25zdCBET0NLRVJfU0lHVEVSTSA9IDE0MztcblxudHlwZSBFZGl0b3JQcm9wcyA9IHtcbiAgaGlkZUNvcHlCdXR0b246IGJvb2xlYW47XG4gIGxhbmd1YWdlOiBMYW5ndWFnZU9wdGlvbjtcbiAgdGV4dDogc3RyaW5nO1xuICBvbkNoYW5nZTogKHRleHQ6IHN0cmluZykgPT4gdm9pZDtcbiAgc25pcHBldHNCYXNlVXJsPzogc3RyaW5nO1xuICBvbkNvcHk/OiBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyO1xuICB0cmFja2luZ0RhdGE/OiBPbWl0PFVzZXJDbGlja0RhdGEsICd0YXJnZXQnPjtcbn07XG5cbmV4cG9ydCBjb25zdCBFZGl0b3I6IFJlYWN0LkZDPEVkaXRvclByb3BzPiA9ICh7XG4gIGxhbmd1YWdlLFxuICB0ZXh0LFxuICBoaWRlQ29weUJ1dHRvbixcbiAgb25DaGFuZ2UsXG4gIG9uQ29weSxcbiAgc25pcHBldHNCYXNlVXJsLFxuICB0cmFja2luZ0RhdGEsXG59KSA9PiB7XG4gIGNvbnN0IFtvdXRwdXQsIHNldE91dHB1dF0gPSB1c2VTdGF0ZSgnJyk7XG4gIGNvbnN0IFtzdGF0dXMsIHNldFN0YXR1c10gPSB1c2VTdGF0ZTwncmVhZHknIHwgJ3dhaXRpbmcnIHwgJ2Vycm9yJz4oJ3JlYWR5Jyk7XG4gIGNvbnN0IFtpc0NvZGVCeXRlQ29waWVkLCBzZXRJc0NvZGVCeXRlQ29waWVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3Qgb25Db3B5Q2xpY2sgPSAoKSA9PiB7XG4gICAgaWYgKCFpc0NvZGVCeXRlQ29waWVkKSB7XG4gICAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkXG4gICAgICAgIC53cml0ZVRleHQodGV4dClcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgLmNhdGNoKCgpID0+IGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBjb3B5JykpO1xuICAgICAgc2V0SXNDb2RlQnl0ZUNvcGllZCh0cnVlKTtcbiAgICAgIG9uQ29weT8uKHRleHQsIGxhbmd1YWdlKTtcbiAgICAgIHRyYWNrQ2xpY2soJ2NvcHknLCB0cmFja2luZ0RhdGEpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBzZXRFcnJvclN0YXR1c0FuZE91dHB1dCA9IChtZXNzYWdlOiBzdHJpbmcpID0+IHtcbiAgICBzZXRPdXRwdXQobWVzc2FnZSk7XG4gICAgc2V0U3RhdHVzKCdlcnJvcicpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IGFzeW5jICgpID0+IHtcbiAgICBpZiAodGV4dC50cmltKCkubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBsYW5ndWFnZSxcbiAgICAgIGNvZGU6IHRleHQsXG4gICAgfTtcbiAgICBzZXRTdGF0dXMoJ3dhaXRpbmcnKTtcbiAgICBzZXRPdXRwdXQoJycpO1xuICAgIHRyYWNrQ2xpY2soJ3J1bicsIHRyYWNraW5nRGF0YSk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBwb3N0U25pcHBldChkYXRhLCBzbmlwcGV0c0Jhc2VVcmwpO1xuICAgICAgaWYgKHJlc3BvbnNlLnN0ZGVyci5sZW5ndGggPiAwKSB7XG4gICAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KHJlc3BvbnNlLnN0ZGVycik7XG4gICAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLmV4aXRfY29kZSA9PT0gRE9DS0VSX1NJR1RFUk0pIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoXG4gICAgICAgICAgJ1lvdXIgY29kZSB0b29rIHRvbyBsb25nIHRvIHJldHVybiBhIHJlc3VsdC4gRG91YmxlIGNoZWNrIHlvdXIgY29kZSBmb3IgYW55IGlzc3VlcyBhbmQgdHJ5IGFnYWluISdcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlICE9PSAwKSB7XG4gICAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdBbiB1bmtub3duIGVycm9yIG9jY3VyZWQuJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRPdXRwdXQocmVzcG9uc2Uuc3Rkb3V0KTtcbiAgICAgICAgc2V0U3RhdHVzKCdyZWFkeScpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dCgnRXJyb3I6ICcgKyBlcnJvcik7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxEcmF3ZXJzXG4gICAgICAgIGxlZnRDaGlsZD17XG4gICAgICAgICAgPFNpbXBsZU1vbmFjb0VkaXRvclxuICAgICAgICAgICAgdmFsdWU9e3RleHR9XG4gICAgICAgICAgICBsYW5ndWFnZT17bGFuZ3VhZ2V9XG4gICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgLz5cbiAgICAgICAgfVxuICAgICAgICByaWdodENoaWxkPXtcbiAgICAgICAgICA8T3V0cHV0IGhhc0Vycm9yPXtzdGF0dXMgPT09ICdlcnJvcid9IGFyaWEtbGl2ZT1cInBvbGl0ZVwiPlxuICAgICAgICAgICAge291dHB1dH1cbiAgICAgICAgICA8L091dHB1dD5cbiAgICAgICAgfVxuICAgICAgLz5cbiAgICAgIDxGbGV4Qm94XG4gICAgICAgIGp1c3RpZnlDb250ZW50PXtoaWRlQ29weUJ1dHRvbiA/ICdmbGV4LWVuZCcgOiAnc3BhY2UtYmV0d2Vlbid9XG4gICAgICAgIHBsPXs4fVxuICAgICAgPlxuICAgICAgICB7IWhpZGVDb3B5QnV0dG9uID8gKFxuICAgICAgICAgIDxUb29sVGlwXG4gICAgICAgICAgICBpZD1cImNvZGVieXRlLWNvcGllZFwiXG4gICAgICAgICAgICBhbGlnbm1lbnQ9XCJ0b3AtcmlnaHRcIlxuICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgdGFyZ2V0PXtcbiAgICAgICAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNvcHlDbGlja31cbiAgICAgICAgICAgICAgICBvbkJsdXI9eygpID0+IHNldElzQ29kZUJ5dGVDb3BpZWQoZmFsc2UpfVxuICAgICAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwiY29weS1jb2RlYnl0ZS1idG5cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPENvcHlJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IENvcHkgQ29kZWJ5dGVcbiAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpc0NvZGVCeXRlQ29waWVkID8gKFxuICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRlc3RpZD1cImNvcHktY29uZmlybWF0aW9uLXRvb2x0aXBcIiByb2xlPVwiYWxlcnRcIj5cbiAgICAgICAgICAgICAgICBDb3BpZWQhXG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1wcm9tcHQtdG9vbHRpcFwiPlxuICAgICAgICAgICAgICAgIENvcHkgdG8geW91ciBjbGlwYm9hcmRcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L1Rvb2xUaXA+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */"));
40
+ }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZCZ0QiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCb3gsXG4gIEZpbGxCdXR0b24sXG4gIEZsZXhCb3gsXG4gIE1vZGFsLFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQge1xuICBDb3B5SWNvbixcbiAgRWRpdG9ySWNvbixcbiAgU2hhcmVJY29uLFxuICBUYWdJY29uLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBVc2VyQ2xpY2tEYXRhIH0gZnJvbSAnQGNvZGVjYWRlbXkvdHJhY2tpbmcnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBwb3N0U25pcHBldCB9IGZyb20gJy4vYXBpJztcbmltcG9ydCB7IEJldHRlclNvY2lhbE1lZGlhU2hhcmluZyB9IGZyb20gJy4vQmV0dGVyU29jaWFsU2hhcmluZy9iZXR0ZXJTb2NpYWxTaGFyaW5nJztcbmltcG9ydCB0eXBlIHsgTGFuZ3VhZ2VPcHRpb24gfSBmcm9tICcuL2NvbnN0cyc7XG5pbXBvcnQgeyBEcmF3ZXJzIH0gZnJvbSAnLi9kcmF3ZXJzJztcbmltcG9ydCB7IEVtYmVkQ29kZWJ5dGVNb2RhbCB9IGZyb20gJy4vRW1iZWRNb2RhbCc7XG5pbXBvcnQgeyBnZXRDb2RlYnl0ZVVybCwgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgcXJjb2RlSWNvbiBmcm9tICcuL0ljb25zL3FyLWNvZGUtd2hpdGUucG5nJztcbmltcG9ydCB7IFNpbXBsZU1vbmFjb0VkaXRvciB9IGZyb20gJy4vTW9uYWNvRWRpdG9yJztcbmltcG9ydCB7IENvZGVieXRlc0NoYW5nZUhhbmRsZXIgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgT3V0cHV0ID0gc3R5bGVkLnByZTx7IGhhc0Vycm9yOiBib29sZWFuIH0+YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZm9udC1mYW1pbHk6IE1vbmFjbztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gICR7KHsgaGFzRXJyb3IsIHRoZW1lIH0pID0+IGBcbiAgY29sb3I6ICR7aGFzRXJyb3IgPyB0aGVtZS5jb2xvcnMub3JhbmdlIDogdGhlbWUuY29sb3JzLnRleHR9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9yc1snbmF2eS05MDAnXX07XG5gfVxuYDtcblxuY29uc3QgSW1hZ2UgPSBCb3gud2l0aENvbXBvbmVudCgnaW1nJyk7XG5cbmNvbnN0IEN1c3RvbUljb24gPSBzdHlsZWQoSW1hZ2UpYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFRhZ0ljb25TdHlsZWQgPSBzdHlsZWQoVGFnSWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgQ29weUljb25TdHlsZWQgPSBzdHlsZWQoQ29weUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFNoYXJlSWNvblN0eWxlZCA9IHN0eWxlZChTaGFyZUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IEVkaXRvckljb25TdHlsZWQgPSBzdHlsZWQoRWRpdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgRE9DS0VSX1NJR1RFUk0gPSAxNDM7XG5cbnR5cGUgRWRpdG9yUHJvcHMgPSB7XG4gIGhpZGVDb3B5QnV0dG9uOiBib29sZWFuO1xuICBsYW5ndWFnZTogTGFuZ3VhZ2VPcHRpb247XG4gIHRleHQ6IHN0cmluZztcbiAgb25DaGFuZ2U6ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNuaXBwZXRzQmFzZVVybD86IHN0cmluZztcbiAgb25Db3B5PzogQ29kZWJ5dGVzQ2hhbmdlSGFuZGxlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc0xpbmtDb3BpZWQsIHNldElzTGlua0NvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgW3NoYXJlTW9kYWxPcGVuLCBzZXRTaGFyZU1vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlbWJlZE1vZGFsT3Blbiwgc2V0RW1iZWRNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbcXJNb2RhbE9wZW4sIHNldFFyTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBbcXJDb2RlLCBzZXRRckNvZGVdID0gdXNlU3RhdGUoJycpO1xuXG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Db3B5TGlua0NsaWNrID0gKCkgPT4ge1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgIC53cml0ZVRleHQoZ2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpKVxuICAgICAgLnRoZW4oKCkgPT4gc2V0SXNMaW5rQ29waWVkKHRydWUpKVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weSBsaW5rJykpO1xuICB9O1xuXG4gIGNvbnN0IHNldEVycm9yU3RhdHVzQW5kT3V0cHV0ID0gKG1lc3NhZ2U6IHN0cmluZykgPT4ge1xuICAgIHNldE91dHB1dChtZXNzYWdlKTtcbiAgICBzZXRTdGF0dXMoJ2Vycm9yJyk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICh0ZXh0LnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgY29kZTogdGV4dCxcbiAgICB9O1xuICAgIHNldFN0YXR1cygnd2FpdGluZycpO1xuICAgIHNldE91dHB1dCgnJyk7XG4gICAgdHJhY2tDbGljaygncnVuJywgdHJhY2tpbmdEYXRhKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBvc3RTbmlwcGV0KGRhdGEsIHNuaXBwZXRzQmFzZVVybCk7XG4gICAgICBpZiAocmVzcG9uc2Uuc3RkZXJyLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQocmVzcG9uc2Uuc3RkZXJyKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlID09PSBET0NLRVJfU0lHVEVSTSkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChcbiAgICAgICAgICAnWW91ciBjb2RlIHRvb2sgdG9vIGxvbmcgdG8gcmV0dXJuIGEgcmVzdWx0LiBEb3VibGUgY2hlY2sgeW91ciBjb2RlIGZvciBhbnkgaXNzdWVzIGFuZCB0cnkgYWdhaW4hJ1xuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgIT09IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0FuIHVua25vd24gZXJyb3Igb2NjdXJlZC4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldE91dHB1dChyZXNwb25zZS5zdGRvdXQpO1xuICAgICAgICBzZXRTdGF0dXMoJ3JlYWR5Jyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdFcnJvcjogJyArIGVycm9yKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlUXJDb2RlID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgICAnaHR0cHM6Ly9xcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tL3FyL2N1c3RvbScsXG4gICAgICAgIHtcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtUmFwaWRBUEktSG9zdCc6ICdxcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tJyxcbiAgICAgICAgICAgICdYLVJhcGlkQVBJLUtleSc6XG4gICAgICAgICAgICAgICczMTkyMDczNGVmbXNoNWQ2ZmRiMGNlNmI3NTcycDFmNGViZGpzbmVlZWFlYTAyZmUxZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBkYXRhOiBnZXRDb2RlYnl0ZVVybChsYW5ndWFnZSwgdGV4dCksXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgYm9keTogJ2NpcmNsZScsXG4gICAgICAgICAgICAgIGV5ZTogJ2ZyYW1lMCcsXG4gICAgICAgICAgICAgIGV5ZUJhbGw6ICdiYWxsMTUnLFxuICAgICAgICAgICAgICBlcmYxOiBbXSxcbiAgICAgICAgICAgICAgZXJmMjogW10sXG4gICAgICAgICAgICAgIGVyZjM6IFtdLFxuICAgICAgICAgICAgICBicmYxOiBbXSxcbiAgICAgICAgICAgICAgYnJmMjogW10sXG4gICAgICAgICAgICAgIGJyZjM6IFtdLFxuICAgICAgICAgICAgICBib2R5Q29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgYmdDb2xvcjogJyNGRkYwRTUnLFxuICAgICAgICAgICAgICBleWUxQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUyQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUzQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWVCYWxsMUNvbG9yOiAnIzNBMTBFNScsXG4gICAgICAgICAgICAgIGV5ZUJhbGwyQ29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgZXllQmFsbDNDb2xvcjogJyMzQTEwRTUnLFxuICAgICAgICAgICAgICBncmFkaWVudENvbG9yMTogbnVsbCxcbiAgICAgICAgICAgICAgZ3JhZGllbnRDb2xvcjI6IG51bGwsXG4gICAgICAgICAgICAgIGdyYWRpZW50VHlwZTogJ2xpbmVhcicsXG4gICAgICAgICAgICAgIGdyYWRpZW50T25FeWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgbG9nbzogJ2E4NDczZjVhYTUwNzk1ZTZkM2Q1MGE3YWNhMWMxNjJjY2M2M2M5Yzguc3ZnJyxcbiAgICAgICAgICAgICAgbG9nb01vZGU6ICdjbGVhbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2l6ZTogMjAwMCxcbiAgICAgICAgICAgIGRvd25sb2FkOiAnaW1hZ2VVcmwnLFxuICAgICAgICAgICAgZmlsZTogJ3N2ZycsXG4gICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiBjb25zb2xlLmVycm9yKGVycikpO1xuXG4gICAgICBzZXRRckNvZGUocmVzcG9uc2UuaW1hZ2VVcmwgYXMgc3RyaW5nKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVRckNsaWNrID0gYXN5bmMgKCkgPT4ge1xuICAgIHNldFFyTW9kYWxPcGVuKHRydWUpO1xuICAgIC8vIEknbSBwYXlpbmcgZm9yIHRoZXNlIEFQSSBjYWxscyBvdXQgb2YgcG9ja2V0LCBzbyBvbmx5IGdlbmVyYXRlIHRoZSBjb2RlIG9uY2UuXG4gICAgLy8gVGhpcyBtZWFucyBpZiB5b3UgY2hhbmdlIHRoZSB0ZXh0IG9mIHRoZSBjb2RlYnl0ZSwgeW91J2xsIG5lZWQgdG8gcmVmcmVzaCB0aGUgcGFnZVxuICAgIC8vIGluIG9yZGVyIHRvIGdldCBhIGZyZXNoIFFSIGNvZGVcbiAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24gKGkuZS4gbm90IGEgaGFja2F0aG9uKSwgd2UgY2FuIHVzZSB0aGUgb25DaGFuZ2UgZnJvbSB0aGUgZWRpdG9yXG4gICAgLy8gdG8gY2xlYXIgdGhpcyBvbmx5IHdoZW4gdGhlIGNvZGVieXRlIGlzIG1vZGlmaWVkLlxuICAgIGlmICghcXJDb2RlKSB7XG4gICAgICBhd2FpdCBjcmVhdGVRckNvZGUoKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPERyYXdlcnNcbiAgICAgICAgbGVmdENoaWxkPXtcbiAgICAgICAgICA8U2ltcGxlTW9uYWNvRWRpdG9yXG4gICAgICAgICAgICB2YWx1ZT17dGV4dH1cbiAgICAgICAgICAgIGxhbmd1YWdlPXtsYW5ndWFnZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIHJpZ2h0Q2hpbGQ9e1xuICAgICAgICAgIDxPdXRwdXQgaGFzRXJyb3I9e3N0YXR1cyA9PT0gJ2Vycm9yJ30gYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgICAgICB7b3V0cHV0fVxuICAgICAgICAgIDwvT3V0cHV0PlxuICAgICAgICB9XG4gICAgICAvPlxuICAgICAgPEZsZXhCb3hcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e2hpZGVDb3B5QnV0dG9uID8gJ2ZsZXgtZW5kJyA6ICdzcGFjZS1iZXR3ZWVuJ31cbiAgICAgICAgcGw9ezh9XG4gICAgICA+XG4gICAgICAgIHshaGlkZUNvcHlCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2xUaXBcbiAgICAgICAgICAgIGlkPVwiY29kZWJ5dGUtY29waWVkXCJcbiAgICAgICAgICAgIGFsaWdubWVudD1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICBtb2RlPVwiZGFya1wiXG4gICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICA8VGV4dEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUNsaWNrfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNDb2RlQnl0ZUNvcGllZChmYWxzZSl9XG4gICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJjb3B5LWNvZGVieXRlLWJ0blwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weVxuICAgICAgICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2lzQ29kZUJ5dGVDb3BpZWQgPyAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1jb25maXJtYXRpb24tdG9vbHRpcFwiIHJvbGU9XCJhbGVydFwiPlxuICAgICAgICAgICAgICAgIENvcGllZCFcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LXByb21wdC10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgQ29weSB0byB5b3VyIGNsaXBib2FyZFxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvVG9vbFRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXsoKSA9PiBzZXRTaGFyZU1vZGFsT3Blbih0cnVlKX0+XG4gICAgICAgICAgPFNoYXJlSWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBTaGFyZVxuICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgIDxNb2RhbFxuICAgICAgICAgIGlzT3Blbj17c2hhcmVNb2RhbE9wZW59XG4gICAgICAgICAgb25SZXF1ZXN0Q2xvc2U9eygpID0+IHNldFNoYXJlTW9kYWxPcGVuKGZhbHNlKX1cbiAgICAgICAgICB0aXRsZT1cIlNoYXJlIHlvdXIgQ29kZWJ5dGUgd2l0aCB0aGUgd29ybGQhXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxCZXR0ZXJTb2NpYWxNZWRpYVNoYXJpbmdcbiAgICAgICAgICAgIHVybD17Z2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpfVxuICAgICAgICAgICAgbWVzc2FnZT17YENoZWNrIG91dCB0aGlzICR7bGFuZ3VhZ2V9IGNvZGUgSSB3cm90ZSFgfVxuICAgICAgICAgICAgaGFzaHRhZ3M9e1snY29kZWJ5dGVzJywgbGFuZ3VhZ2VdfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEJveCBkaXNwbGF5PVwiYmxvY2tcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgcD17OH0+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBzaXplPXszMH1cbiAgICAgICAgICAgICAgdmFsdWU9e2dldENvZGVieXRlVXJsKGxhbmd1YWdlLCB0ZXh0KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgICBpZD1cImxpbmstY29waWVkXCJcbiAgICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUxpbmtDbGlja31cbiAgICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNMaW5rQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weSBMaW5rXG4gICAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpc0xpbmtDb3BpZWQgPyAoXG4gICAgICAgICAgICAgICAgPHNwYW4gcm9sZT1cImFsZXJ0XCI+Q29waWVkITwvc3Bhbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiYWxlcnRcIj5DbGljayB0byBjb3B5PC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L01vZGFsPlxuICAgICAgICA8VGV4dEJ1dHRvbiB2YXJpYW50PVwic2Vjb25kYXJ5XCIgb25DbGljaz17KCkgPT4gc2V0RW1iZWRNb2RhbE9wZW4odHJ1ZSl9PlxuICAgICAgICAgIDxFZGl0b3JJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IEVtYmVkXG4gICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgPEVtYmVkQ29kZWJ5dGVNb2RhbFxuICAgICAgICAgIGlzTW9kYWxPcGVuPXtlbWJlZE1vZGFsT3Blbn1cbiAgICAgICAgICBzZXRJc01vZGFsT3Blbj17c2V0RW1iZWRNb2RhbE9wZW59XG4gICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgIHRleHQ9e3RleHR9XG4gICAgICAgIC8+XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXtoYW5kbGVRckNsaWNrfT5cbiAgICAgICAgICA8Q3VzdG9tSWNvbiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBzcmM9e3FyY29kZUljb259IGFsdD1cIlwiIC8+IFFSIENvZGVcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8TW9kYWxcbiAgICAgICAgICBpc09wZW49e3FyTW9kYWxPcGVufVxuICAgICAgICAgIG9uUmVxdWVzdENsb3NlPXsoKSA9PiBzZXRRck1vZGFsT3BlbihmYWxzZSl9XG4gICAgICAgICAgdGl0bGU9XCJTaGFyZSB5b3VyIENvZGVieXRlIHdpdGggdGhlIHdvcmxkIVwiXG4gICAgICAgID5cbiAgICAgICAgICB7cXJDb2RlID8gKFxuICAgICAgICAgICAgPEltYWdlIHNyYz17cXJDb2RlfSB3aWR0aD1cIjIwMFwiIGhlaWdodD1cIjIwMFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTcGlubmVyIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Nb2RhbD5cbiAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9wci0zMDUxNy1tb25vbGl0aC5kZXYtZWtzLmNvZGVjYWRlbXkuY29tL2Zha2Utc2hvcFwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxUYWdJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IFNob3BcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */"));
41
+
42
+ var Image = Box.withComponent('img', {
43
+ target: "e1lzxy8e6",
44
+ label: "Image"
45
+ });
46
+
47
+ var CustomIcon = /*#__PURE__*/_styled(Image, {
48
+ target: "e1lzxy8e4",
49
+ label: "CustomIcon"
50
+ })(process.env.NODE_ENV === "production" ? {
51
+ name: "u7ytkp",
52
+ styles: "margin-right:0.5rem"
53
+ } : {
54
+ name: "u7ytkp",
55
+ styles: "margin-right:0.5rem",
56
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZDZ0MiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCb3gsXG4gIEZpbGxCdXR0b24sXG4gIEZsZXhCb3gsXG4gIE1vZGFsLFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQge1xuICBDb3B5SWNvbixcbiAgRWRpdG9ySWNvbixcbiAgU2hhcmVJY29uLFxuICBUYWdJY29uLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBVc2VyQ2xpY2tEYXRhIH0gZnJvbSAnQGNvZGVjYWRlbXkvdHJhY2tpbmcnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBwb3N0U25pcHBldCB9IGZyb20gJy4vYXBpJztcbmltcG9ydCB7IEJldHRlclNvY2lhbE1lZGlhU2hhcmluZyB9IGZyb20gJy4vQmV0dGVyU29jaWFsU2hhcmluZy9iZXR0ZXJTb2NpYWxTaGFyaW5nJztcbmltcG9ydCB0eXBlIHsgTGFuZ3VhZ2VPcHRpb24gfSBmcm9tICcuL2NvbnN0cyc7XG5pbXBvcnQgeyBEcmF3ZXJzIH0gZnJvbSAnLi9kcmF3ZXJzJztcbmltcG9ydCB7IEVtYmVkQ29kZWJ5dGVNb2RhbCB9IGZyb20gJy4vRW1iZWRNb2RhbCc7XG5pbXBvcnQgeyBnZXRDb2RlYnl0ZVVybCwgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgcXJjb2RlSWNvbiBmcm9tICcuL0ljb25zL3FyLWNvZGUtd2hpdGUucG5nJztcbmltcG9ydCB7IFNpbXBsZU1vbmFjb0VkaXRvciB9IGZyb20gJy4vTW9uYWNvRWRpdG9yJztcbmltcG9ydCB7IENvZGVieXRlc0NoYW5nZUhhbmRsZXIgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgT3V0cHV0ID0gc3R5bGVkLnByZTx7IGhhc0Vycm9yOiBib29sZWFuIH0+YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZm9udC1mYW1pbHk6IE1vbmFjbztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gICR7KHsgaGFzRXJyb3IsIHRoZW1lIH0pID0+IGBcbiAgY29sb3I6ICR7aGFzRXJyb3IgPyB0aGVtZS5jb2xvcnMub3JhbmdlIDogdGhlbWUuY29sb3JzLnRleHR9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9yc1snbmF2eS05MDAnXX07XG5gfVxuYDtcblxuY29uc3QgSW1hZ2UgPSBCb3gud2l0aENvbXBvbmVudCgnaW1nJyk7XG5cbmNvbnN0IEN1c3RvbUljb24gPSBzdHlsZWQoSW1hZ2UpYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFRhZ0ljb25TdHlsZWQgPSBzdHlsZWQoVGFnSWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgQ29weUljb25TdHlsZWQgPSBzdHlsZWQoQ29weUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFNoYXJlSWNvblN0eWxlZCA9IHN0eWxlZChTaGFyZUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IEVkaXRvckljb25TdHlsZWQgPSBzdHlsZWQoRWRpdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgRE9DS0VSX1NJR1RFUk0gPSAxNDM7XG5cbnR5cGUgRWRpdG9yUHJvcHMgPSB7XG4gIGhpZGVDb3B5QnV0dG9uOiBib29sZWFuO1xuICBsYW5ndWFnZTogTGFuZ3VhZ2VPcHRpb247XG4gIHRleHQ6IHN0cmluZztcbiAgb25DaGFuZ2U6ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNuaXBwZXRzQmFzZVVybD86IHN0cmluZztcbiAgb25Db3B5PzogQ29kZWJ5dGVzQ2hhbmdlSGFuZGxlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc0xpbmtDb3BpZWQsIHNldElzTGlua0NvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgW3NoYXJlTW9kYWxPcGVuLCBzZXRTaGFyZU1vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlbWJlZE1vZGFsT3Blbiwgc2V0RW1iZWRNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbcXJNb2RhbE9wZW4sIHNldFFyTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBbcXJDb2RlLCBzZXRRckNvZGVdID0gdXNlU3RhdGUoJycpO1xuXG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Db3B5TGlua0NsaWNrID0gKCkgPT4ge1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgIC53cml0ZVRleHQoZ2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpKVxuICAgICAgLnRoZW4oKCkgPT4gc2V0SXNMaW5rQ29waWVkKHRydWUpKVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weSBsaW5rJykpO1xuICB9O1xuXG4gIGNvbnN0IHNldEVycm9yU3RhdHVzQW5kT3V0cHV0ID0gKG1lc3NhZ2U6IHN0cmluZykgPT4ge1xuICAgIHNldE91dHB1dChtZXNzYWdlKTtcbiAgICBzZXRTdGF0dXMoJ2Vycm9yJyk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICh0ZXh0LnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgY29kZTogdGV4dCxcbiAgICB9O1xuICAgIHNldFN0YXR1cygnd2FpdGluZycpO1xuICAgIHNldE91dHB1dCgnJyk7XG4gICAgdHJhY2tDbGljaygncnVuJywgdHJhY2tpbmdEYXRhKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBvc3RTbmlwcGV0KGRhdGEsIHNuaXBwZXRzQmFzZVVybCk7XG4gICAgICBpZiAocmVzcG9uc2Uuc3RkZXJyLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQocmVzcG9uc2Uuc3RkZXJyKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlID09PSBET0NLRVJfU0lHVEVSTSkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChcbiAgICAgICAgICAnWW91ciBjb2RlIHRvb2sgdG9vIGxvbmcgdG8gcmV0dXJuIGEgcmVzdWx0LiBEb3VibGUgY2hlY2sgeW91ciBjb2RlIGZvciBhbnkgaXNzdWVzIGFuZCB0cnkgYWdhaW4hJ1xuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgIT09IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0FuIHVua25vd24gZXJyb3Igb2NjdXJlZC4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldE91dHB1dChyZXNwb25zZS5zdGRvdXQpO1xuICAgICAgICBzZXRTdGF0dXMoJ3JlYWR5Jyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdFcnJvcjogJyArIGVycm9yKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlUXJDb2RlID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgICAnaHR0cHM6Ly9xcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tL3FyL2N1c3RvbScsXG4gICAgICAgIHtcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtUmFwaWRBUEktSG9zdCc6ICdxcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tJyxcbiAgICAgICAgICAgICdYLVJhcGlkQVBJLUtleSc6XG4gICAgICAgICAgICAgICczMTkyMDczNGVmbXNoNWQ2ZmRiMGNlNmI3NTcycDFmNGViZGpzbmVlZWFlYTAyZmUxZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBkYXRhOiBnZXRDb2RlYnl0ZVVybChsYW5ndWFnZSwgdGV4dCksXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgYm9keTogJ2NpcmNsZScsXG4gICAgICAgICAgICAgIGV5ZTogJ2ZyYW1lMCcsXG4gICAgICAgICAgICAgIGV5ZUJhbGw6ICdiYWxsMTUnLFxuICAgICAgICAgICAgICBlcmYxOiBbXSxcbiAgICAgICAgICAgICAgZXJmMjogW10sXG4gICAgICAgICAgICAgIGVyZjM6IFtdLFxuICAgICAgICAgICAgICBicmYxOiBbXSxcbiAgICAgICAgICAgICAgYnJmMjogW10sXG4gICAgICAgICAgICAgIGJyZjM6IFtdLFxuICAgICAgICAgICAgICBib2R5Q29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgYmdDb2xvcjogJyNGRkYwRTUnLFxuICAgICAgICAgICAgICBleWUxQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUyQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUzQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWVCYWxsMUNvbG9yOiAnIzNBMTBFNScsXG4gICAgICAgICAgICAgIGV5ZUJhbGwyQ29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgZXllQmFsbDNDb2xvcjogJyMzQTEwRTUnLFxuICAgICAgICAgICAgICBncmFkaWVudENvbG9yMTogbnVsbCxcbiAgICAgICAgICAgICAgZ3JhZGllbnRDb2xvcjI6IG51bGwsXG4gICAgICAgICAgICAgIGdyYWRpZW50VHlwZTogJ2xpbmVhcicsXG4gICAgICAgICAgICAgIGdyYWRpZW50T25FeWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgbG9nbzogJ2E4NDczZjVhYTUwNzk1ZTZkM2Q1MGE3YWNhMWMxNjJjY2M2M2M5Yzguc3ZnJyxcbiAgICAgICAgICAgICAgbG9nb01vZGU6ICdjbGVhbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2l6ZTogMjAwMCxcbiAgICAgICAgICAgIGRvd25sb2FkOiAnaW1hZ2VVcmwnLFxuICAgICAgICAgICAgZmlsZTogJ3N2ZycsXG4gICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiBjb25zb2xlLmVycm9yKGVycikpO1xuXG4gICAgICBzZXRRckNvZGUocmVzcG9uc2UuaW1hZ2VVcmwgYXMgc3RyaW5nKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVRckNsaWNrID0gYXN5bmMgKCkgPT4ge1xuICAgIHNldFFyTW9kYWxPcGVuKHRydWUpO1xuICAgIC8vIEknbSBwYXlpbmcgZm9yIHRoZXNlIEFQSSBjYWxscyBvdXQgb2YgcG9ja2V0LCBzbyBvbmx5IGdlbmVyYXRlIHRoZSBjb2RlIG9uY2UuXG4gICAgLy8gVGhpcyBtZWFucyBpZiB5b3UgY2hhbmdlIHRoZSB0ZXh0IG9mIHRoZSBjb2RlYnl0ZSwgeW91J2xsIG5lZWQgdG8gcmVmcmVzaCB0aGUgcGFnZVxuICAgIC8vIGluIG9yZGVyIHRvIGdldCBhIGZyZXNoIFFSIGNvZGVcbiAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24gKGkuZS4gbm90IGEgaGFja2F0aG9uKSwgd2UgY2FuIHVzZSB0aGUgb25DaGFuZ2UgZnJvbSB0aGUgZWRpdG9yXG4gICAgLy8gdG8gY2xlYXIgdGhpcyBvbmx5IHdoZW4gdGhlIGNvZGVieXRlIGlzIG1vZGlmaWVkLlxuICAgIGlmICghcXJDb2RlKSB7XG4gICAgICBhd2FpdCBjcmVhdGVRckNvZGUoKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPERyYXdlcnNcbiAgICAgICAgbGVmdENoaWxkPXtcbiAgICAgICAgICA8U2ltcGxlTW9uYWNvRWRpdG9yXG4gICAgICAgICAgICB2YWx1ZT17dGV4dH1cbiAgICAgICAgICAgIGxhbmd1YWdlPXtsYW5ndWFnZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIHJpZ2h0Q2hpbGQ9e1xuICAgICAgICAgIDxPdXRwdXQgaGFzRXJyb3I9e3N0YXR1cyA9PT0gJ2Vycm9yJ30gYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgICAgICB7b3V0cHV0fVxuICAgICAgICAgIDwvT3V0cHV0PlxuICAgICAgICB9XG4gICAgICAvPlxuICAgICAgPEZsZXhCb3hcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e2hpZGVDb3B5QnV0dG9uID8gJ2ZsZXgtZW5kJyA6ICdzcGFjZS1iZXR3ZWVuJ31cbiAgICAgICAgcGw9ezh9XG4gICAgICA+XG4gICAgICAgIHshaGlkZUNvcHlCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2xUaXBcbiAgICAgICAgICAgIGlkPVwiY29kZWJ5dGUtY29waWVkXCJcbiAgICAgICAgICAgIGFsaWdubWVudD1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICBtb2RlPVwiZGFya1wiXG4gICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICA8VGV4dEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUNsaWNrfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNDb2RlQnl0ZUNvcGllZChmYWxzZSl9XG4gICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJjb3B5LWNvZGVieXRlLWJ0blwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weVxuICAgICAgICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2lzQ29kZUJ5dGVDb3BpZWQgPyAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1jb25maXJtYXRpb24tdG9vbHRpcFwiIHJvbGU9XCJhbGVydFwiPlxuICAgICAgICAgICAgICAgIENvcGllZCFcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LXByb21wdC10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgQ29weSB0byB5b3VyIGNsaXBib2FyZFxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvVG9vbFRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXsoKSA9PiBzZXRTaGFyZU1vZGFsT3Blbih0cnVlKX0+XG4gICAgICAgICAgPFNoYXJlSWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBTaGFyZVxuICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgIDxNb2RhbFxuICAgICAgICAgIGlzT3Blbj17c2hhcmVNb2RhbE9wZW59XG4gICAgICAgICAgb25SZXF1ZXN0Q2xvc2U9eygpID0+IHNldFNoYXJlTW9kYWxPcGVuKGZhbHNlKX1cbiAgICAgICAgICB0aXRsZT1cIlNoYXJlIHlvdXIgQ29kZWJ5dGUgd2l0aCB0aGUgd29ybGQhXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxCZXR0ZXJTb2NpYWxNZWRpYVNoYXJpbmdcbiAgICAgICAgICAgIHVybD17Z2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpfVxuICAgICAgICAgICAgbWVzc2FnZT17YENoZWNrIG91dCB0aGlzICR7bGFuZ3VhZ2V9IGNvZGUgSSB3cm90ZSFgfVxuICAgICAgICAgICAgaGFzaHRhZ3M9e1snY29kZWJ5dGVzJywgbGFuZ3VhZ2VdfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEJveCBkaXNwbGF5PVwiYmxvY2tcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgcD17OH0+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBzaXplPXszMH1cbiAgICAgICAgICAgICAgdmFsdWU9e2dldENvZGVieXRlVXJsKGxhbmd1YWdlLCB0ZXh0KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgICBpZD1cImxpbmstY29waWVkXCJcbiAgICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUxpbmtDbGlja31cbiAgICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNMaW5rQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weSBMaW5rXG4gICAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpc0xpbmtDb3BpZWQgPyAoXG4gICAgICAgICAgICAgICAgPHNwYW4gcm9sZT1cImFsZXJ0XCI+Q29waWVkITwvc3Bhbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiYWxlcnRcIj5DbGljayB0byBjb3B5PC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L01vZGFsPlxuICAgICAgICA8VGV4dEJ1dHRvbiB2YXJpYW50PVwic2Vjb25kYXJ5XCIgb25DbGljaz17KCkgPT4gc2V0RW1iZWRNb2RhbE9wZW4odHJ1ZSl9PlxuICAgICAgICAgIDxFZGl0b3JJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IEVtYmVkXG4gICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgPEVtYmVkQ29kZWJ5dGVNb2RhbFxuICAgICAgICAgIGlzTW9kYWxPcGVuPXtlbWJlZE1vZGFsT3Blbn1cbiAgICAgICAgICBzZXRJc01vZGFsT3Blbj17c2V0RW1iZWRNb2RhbE9wZW59XG4gICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgIHRleHQ9e3RleHR9XG4gICAgICAgIC8+XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXtoYW5kbGVRckNsaWNrfT5cbiAgICAgICAgICA8Q3VzdG9tSWNvbiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBzcmM9e3FyY29kZUljb259IGFsdD1cIlwiIC8+IFFSIENvZGVcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8TW9kYWxcbiAgICAgICAgICBpc09wZW49e3FyTW9kYWxPcGVufVxuICAgICAgICAgIG9uUmVxdWVzdENsb3NlPXsoKSA9PiBzZXRRck1vZGFsT3BlbihmYWxzZSl9XG4gICAgICAgICAgdGl0bGU9XCJTaGFyZSB5b3VyIENvZGVieXRlIHdpdGggdGhlIHdvcmxkIVwiXG4gICAgICAgID5cbiAgICAgICAgICB7cXJDb2RlID8gKFxuICAgICAgICAgICAgPEltYWdlIHNyYz17cXJDb2RlfSB3aWR0aD1cIjIwMFwiIGhlaWdodD1cIjIwMFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTcGlubmVyIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Nb2RhbD5cbiAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9wci0zMDUxNy1tb25vbGl0aC5kZXYtZWtzLmNvZGVjYWRlbXkuY29tL2Zha2Utc2hvcFwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxUYWdJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IFNob3BcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */",
57
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
58
+ });
59
+
60
+ var TagIconStyled = /*#__PURE__*/_styled(TagIcon, {
61
+ target: "e1lzxy8e3",
62
+ label: "TagIconStyled"
63
+ })(process.env.NODE_ENV === "production" ? {
64
+ name: "u7ytkp",
65
+ styles: "margin-right:0.5rem"
66
+ } : {
67
+ name: "u7ytkp",
68
+ styles: "margin-right:0.5rem",
69
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlEcUMiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCb3gsXG4gIEZpbGxCdXR0b24sXG4gIEZsZXhCb3gsXG4gIE1vZGFsLFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQge1xuICBDb3B5SWNvbixcbiAgRWRpdG9ySWNvbixcbiAgU2hhcmVJY29uLFxuICBUYWdJY29uLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBVc2VyQ2xpY2tEYXRhIH0gZnJvbSAnQGNvZGVjYWRlbXkvdHJhY2tpbmcnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBwb3N0U25pcHBldCB9IGZyb20gJy4vYXBpJztcbmltcG9ydCB7IEJldHRlclNvY2lhbE1lZGlhU2hhcmluZyB9IGZyb20gJy4vQmV0dGVyU29jaWFsU2hhcmluZy9iZXR0ZXJTb2NpYWxTaGFyaW5nJztcbmltcG9ydCB0eXBlIHsgTGFuZ3VhZ2VPcHRpb24gfSBmcm9tICcuL2NvbnN0cyc7XG5pbXBvcnQgeyBEcmF3ZXJzIH0gZnJvbSAnLi9kcmF3ZXJzJztcbmltcG9ydCB7IEVtYmVkQ29kZWJ5dGVNb2RhbCB9IGZyb20gJy4vRW1iZWRNb2RhbCc7XG5pbXBvcnQgeyBnZXRDb2RlYnl0ZVVybCwgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgcXJjb2RlSWNvbiBmcm9tICcuL0ljb25zL3FyLWNvZGUtd2hpdGUucG5nJztcbmltcG9ydCB7IFNpbXBsZU1vbmFjb0VkaXRvciB9IGZyb20gJy4vTW9uYWNvRWRpdG9yJztcbmltcG9ydCB7IENvZGVieXRlc0NoYW5nZUhhbmRsZXIgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgT3V0cHV0ID0gc3R5bGVkLnByZTx7IGhhc0Vycm9yOiBib29sZWFuIH0+YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZm9udC1mYW1pbHk6IE1vbmFjbztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gICR7KHsgaGFzRXJyb3IsIHRoZW1lIH0pID0+IGBcbiAgY29sb3I6ICR7aGFzRXJyb3IgPyB0aGVtZS5jb2xvcnMub3JhbmdlIDogdGhlbWUuY29sb3JzLnRleHR9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9yc1snbmF2eS05MDAnXX07XG5gfVxuYDtcblxuY29uc3QgSW1hZ2UgPSBCb3gud2l0aENvbXBvbmVudCgnaW1nJyk7XG5cbmNvbnN0IEN1c3RvbUljb24gPSBzdHlsZWQoSW1hZ2UpYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFRhZ0ljb25TdHlsZWQgPSBzdHlsZWQoVGFnSWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgQ29weUljb25TdHlsZWQgPSBzdHlsZWQoQ29weUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFNoYXJlSWNvblN0eWxlZCA9IHN0eWxlZChTaGFyZUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IEVkaXRvckljb25TdHlsZWQgPSBzdHlsZWQoRWRpdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgRE9DS0VSX1NJR1RFUk0gPSAxNDM7XG5cbnR5cGUgRWRpdG9yUHJvcHMgPSB7XG4gIGhpZGVDb3B5QnV0dG9uOiBib29sZWFuO1xuICBsYW5ndWFnZTogTGFuZ3VhZ2VPcHRpb247XG4gIHRleHQ6IHN0cmluZztcbiAgb25DaGFuZ2U6ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNuaXBwZXRzQmFzZVVybD86IHN0cmluZztcbiAgb25Db3B5PzogQ29kZWJ5dGVzQ2hhbmdlSGFuZGxlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc0xpbmtDb3BpZWQsIHNldElzTGlua0NvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgW3NoYXJlTW9kYWxPcGVuLCBzZXRTaGFyZU1vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlbWJlZE1vZGFsT3Blbiwgc2V0RW1iZWRNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbcXJNb2RhbE9wZW4sIHNldFFyTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBbcXJDb2RlLCBzZXRRckNvZGVdID0gdXNlU3RhdGUoJycpO1xuXG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Db3B5TGlua0NsaWNrID0gKCkgPT4ge1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgIC53cml0ZVRleHQoZ2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpKVxuICAgICAgLnRoZW4oKCkgPT4gc2V0SXNMaW5rQ29waWVkKHRydWUpKVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weSBsaW5rJykpO1xuICB9O1xuXG4gIGNvbnN0IHNldEVycm9yU3RhdHVzQW5kT3V0cHV0ID0gKG1lc3NhZ2U6IHN0cmluZykgPT4ge1xuICAgIHNldE91dHB1dChtZXNzYWdlKTtcbiAgICBzZXRTdGF0dXMoJ2Vycm9yJyk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICh0ZXh0LnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgY29kZTogdGV4dCxcbiAgICB9O1xuICAgIHNldFN0YXR1cygnd2FpdGluZycpO1xuICAgIHNldE91dHB1dCgnJyk7XG4gICAgdHJhY2tDbGljaygncnVuJywgdHJhY2tpbmdEYXRhKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBvc3RTbmlwcGV0KGRhdGEsIHNuaXBwZXRzQmFzZVVybCk7XG4gICAgICBpZiAocmVzcG9uc2Uuc3RkZXJyLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQocmVzcG9uc2Uuc3RkZXJyKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlID09PSBET0NLRVJfU0lHVEVSTSkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChcbiAgICAgICAgICAnWW91ciBjb2RlIHRvb2sgdG9vIGxvbmcgdG8gcmV0dXJuIGEgcmVzdWx0LiBEb3VibGUgY2hlY2sgeW91ciBjb2RlIGZvciBhbnkgaXNzdWVzIGFuZCB0cnkgYWdhaW4hJ1xuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgIT09IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0FuIHVua25vd24gZXJyb3Igb2NjdXJlZC4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldE91dHB1dChyZXNwb25zZS5zdGRvdXQpO1xuICAgICAgICBzZXRTdGF0dXMoJ3JlYWR5Jyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdFcnJvcjogJyArIGVycm9yKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlUXJDb2RlID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgICAnaHR0cHM6Ly9xcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tL3FyL2N1c3RvbScsXG4gICAgICAgIHtcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtUmFwaWRBUEktSG9zdCc6ICdxcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tJyxcbiAgICAgICAgICAgICdYLVJhcGlkQVBJLUtleSc6XG4gICAgICAgICAgICAgICczMTkyMDczNGVmbXNoNWQ2ZmRiMGNlNmI3NTcycDFmNGViZGpzbmVlZWFlYTAyZmUxZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBkYXRhOiBnZXRDb2RlYnl0ZVVybChsYW5ndWFnZSwgdGV4dCksXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgYm9keTogJ2NpcmNsZScsXG4gICAgICAgICAgICAgIGV5ZTogJ2ZyYW1lMCcsXG4gICAgICAgICAgICAgIGV5ZUJhbGw6ICdiYWxsMTUnLFxuICAgICAgICAgICAgICBlcmYxOiBbXSxcbiAgICAgICAgICAgICAgZXJmMjogW10sXG4gICAgICAgICAgICAgIGVyZjM6IFtdLFxuICAgICAgICAgICAgICBicmYxOiBbXSxcbiAgICAgICAgICAgICAgYnJmMjogW10sXG4gICAgICAgICAgICAgIGJyZjM6IFtdLFxuICAgICAgICAgICAgICBib2R5Q29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgYmdDb2xvcjogJyNGRkYwRTUnLFxuICAgICAgICAgICAgICBleWUxQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUyQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUzQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWVCYWxsMUNvbG9yOiAnIzNBMTBFNScsXG4gICAgICAgICAgICAgIGV5ZUJhbGwyQ29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgZXllQmFsbDNDb2xvcjogJyMzQTEwRTUnLFxuICAgICAgICAgICAgICBncmFkaWVudENvbG9yMTogbnVsbCxcbiAgICAgICAgICAgICAgZ3JhZGllbnRDb2xvcjI6IG51bGwsXG4gICAgICAgICAgICAgIGdyYWRpZW50VHlwZTogJ2xpbmVhcicsXG4gICAgICAgICAgICAgIGdyYWRpZW50T25FeWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgbG9nbzogJ2E4NDczZjVhYTUwNzk1ZTZkM2Q1MGE3YWNhMWMxNjJjY2M2M2M5Yzguc3ZnJyxcbiAgICAgICAgICAgICAgbG9nb01vZGU6ICdjbGVhbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2l6ZTogMjAwMCxcbiAgICAgICAgICAgIGRvd25sb2FkOiAnaW1hZ2VVcmwnLFxuICAgICAgICAgICAgZmlsZTogJ3N2ZycsXG4gICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiBjb25zb2xlLmVycm9yKGVycikpO1xuXG4gICAgICBzZXRRckNvZGUocmVzcG9uc2UuaW1hZ2VVcmwgYXMgc3RyaW5nKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVRckNsaWNrID0gYXN5bmMgKCkgPT4ge1xuICAgIHNldFFyTW9kYWxPcGVuKHRydWUpO1xuICAgIC8vIEknbSBwYXlpbmcgZm9yIHRoZXNlIEFQSSBjYWxscyBvdXQgb2YgcG9ja2V0LCBzbyBvbmx5IGdlbmVyYXRlIHRoZSBjb2RlIG9uY2UuXG4gICAgLy8gVGhpcyBtZWFucyBpZiB5b3UgY2hhbmdlIHRoZSB0ZXh0IG9mIHRoZSBjb2RlYnl0ZSwgeW91J2xsIG5lZWQgdG8gcmVmcmVzaCB0aGUgcGFnZVxuICAgIC8vIGluIG9yZGVyIHRvIGdldCBhIGZyZXNoIFFSIGNvZGVcbiAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24gKGkuZS4gbm90IGEgaGFja2F0aG9uKSwgd2UgY2FuIHVzZSB0aGUgb25DaGFuZ2UgZnJvbSB0aGUgZWRpdG9yXG4gICAgLy8gdG8gY2xlYXIgdGhpcyBvbmx5IHdoZW4gdGhlIGNvZGVieXRlIGlzIG1vZGlmaWVkLlxuICAgIGlmICghcXJDb2RlKSB7XG4gICAgICBhd2FpdCBjcmVhdGVRckNvZGUoKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPERyYXdlcnNcbiAgICAgICAgbGVmdENoaWxkPXtcbiAgICAgICAgICA8U2ltcGxlTW9uYWNvRWRpdG9yXG4gICAgICAgICAgICB2YWx1ZT17dGV4dH1cbiAgICAgICAgICAgIGxhbmd1YWdlPXtsYW5ndWFnZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIHJpZ2h0Q2hpbGQ9e1xuICAgICAgICAgIDxPdXRwdXQgaGFzRXJyb3I9e3N0YXR1cyA9PT0gJ2Vycm9yJ30gYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgICAgICB7b3V0cHV0fVxuICAgICAgICAgIDwvT3V0cHV0PlxuICAgICAgICB9XG4gICAgICAvPlxuICAgICAgPEZsZXhCb3hcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e2hpZGVDb3B5QnV0dG9uID8gJ2ZsZXgtZW5kJyA6ICdzcGFjZS1iZXR3ZWVuJ31cbiAgICAgICAgcGw9ezh9XG4gICAgICA+XG4gICAgICAgIHshaGlkZUNvcHlCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2xUaXBcbiAgICAgICAgICAgIGlkPVwiY29kZWJ5dGUtY29waWVkXCJcbiAgICAgICAgICAgIGFsaWdubWVudD1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICBtb2RlPVwiZGFya1wiXG4gICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICA8VGV4dEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUNsaWNrfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNDb2RlQnl0ZUNvcGllZChmYWxzZSl9XG4gICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJjb3B5LWNvZGVieXRlLWJ0blwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weVxuICAgICAgICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2lzQ29kZUJ5dGVDb3BpZWQgPyAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1jb25maXJtYXRpb24tdG9vbHRpcFwiIHJvbGU9XCJhbGVydFwiPlxuICAgICAgICAgICAgICAgIENvcGllZCFcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LXByb21wdC10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgQ29weSB0byB5b3VyIGNsaXBib2FyZFxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvVG9vbFRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXsoKSA9PiBzZXRTaGFyZU1vZGFsT3Blbih0cnVlKX0+XG4gICAgICAgICAgPFNoYXJlSWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBTaGFyZVxuICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgIDxNb2RhbFxuICAgICAgICAgIGlzT3Blbj17c2hhcmVNb2RhbE9wZW59XG4gICAgICAgICAgb25SZXF1ZXN0Q2xvc2U9eygpID0+IHNldFNoYXJlTW9kYWxPcGVuKGZhbHNlKX1cbiAgICAgICAgICB0aXRsZT1cIlNoYXJlIHlvdXIgQ29kZWJ5dGUgd2l0aCB0aGUgd29ybGQhXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxCZXR0ZXJTb2NpYWxNZWRpYVNoYXJpbmdcbiAgICAgICAgICAgIHVybD17Z2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpfVxuICAgICAgICAgICAgbWVzc2FnZT17YENoZWNrIG91dCB0aGlzICR7bGFuZ3VhZ2V9IGNvZGUgSSB3cm90ZSFgfVxuICAgICAgICAgICAgaGFzaHRhZ3M9e1snY29kZWJ5dGVzJywgbGFuZ3VhZ2VdfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEJveCBkaXNwbGF5PVwiYmxvY2tcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgcD17OH0+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBzaXplPXszMH1cbiAgICAgICAgICAgICAgdmFsdWU9e2dldENvZGVieXRlVXJsKGxhbmd1YWdlLCB0ZXh0KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgICBpZD1cImxpbmstY29waWVkXCJcbiAgICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUxpbmtDbGlja31cbiAgICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNMaW5rQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weSBMaW5rXG4gICAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpc0xpbmtDb3BpZWQgPyAoXG4gICAgICAgICAgICAgICAgPHNwYW4gcm9sZT1cImFsZXJ0XCI+Q29waWVkITwvc3Bhbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiYWxlcnRcIj5DbGljayB0byBjb3B5PC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L01vZGFsPlxuICAgICAgICA8VGV4dEJ1dHRvbiB2YXJpYW50PVwic2Vjb25kYXJ5XCIgb25DbGljaz17KCkgPT4gc2V0RW1iZWRNb2RhbE9wZW4odHJ1ZSl9PlxuICAgICAgICAgIDxFZGl0b3JJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IEVtYmVkXG4gICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgPEVtYmVkQ29kZWJ5dGVNb2RhbFxuICAgICAgICAgIGlzTW9kYWxPcGVuPXtlbWJlZE1vZGFsT3Blbn1cbiAgICAgICAgICBzZXRJc01vZGFsT3Blbj17c2V0RW1iZWRNb2RhbE9wZW59XG4gICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgIHRleHQ9e3RleHR9XG4gICAgICAgIC8+XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXtoYW5kbGVRckNsaWNrfT5cbiAgICAgICAgICA8Q3VzdG9tSWNvbiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBzcmM9e3FyY29kZUljb259IGFsdD1cIlwiIC8+IFFSIENvZGVcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8TW9kYWxcbiAgICAgICAgICBpc09wZW49e3FyTW9kYWxPcGVufVxuICAgICAgICAgIG9uUmVxdWVzdENsb3NlPXsoKSA9PiBzZXRRck1vZGFsT3BlbihmYWxzZSl9XG4gICAgICAgICAgdGl0bGU9XCJTaGFyZSB5b3VyIENvZGVieXRlIHdpdGggdGhlIHdvcmxkIVwiXG4gICAgICAgID5cbiAgICAgICAgICB7cXJDb2RlID8gKFxuICAgICAgICAgICAgPEltYWdlIHNyYz17cXJDb2RlfSB3aWR0aD1cIjIwMFwiIGhlaWdodD1cIjIwMFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTcGlubmVyIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Nb2RhbD5cbiAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9wci0zMDUxNy1tb25vbGl0aC5kZXYtZWtzLmNvZGVjYWRlbXkuY29tL2Zha2Utc2hvcFwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxUYWdJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IFNob3BcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */",
70
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
71
+ });
38
72
 
39
73
  var CopyIconStyled = /*#__PURE__*/_styled(CopyIcon, {
40
- target: "e1lzxy8e0",
74
+ target: "e1lzxy8e2",
41
75
  label: "CopyIconStyled"
42
76
  })(process.env.NODE_ENV === "production" ? {
43
77
  name: "u7ytkp",
@@ -45,7 +79,33 @@ var CopyIconStyled = /*#__PURE__*/_styled(CopyIcon, {
45
79
  } : {
46
80
  name: "u7ytkp",
47
81
  styles: "margin-right:0.5rem",
48
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlDdUMiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGaWxsQnV0dG9uLFxuICBGbGV4Qm94LFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQgeyBDb3B5SWNvbiB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LWljb25zJztcbmltcG9ydCB7IFVzZXJDbGlja0RhdGEgfSBmcm9tICdAY29kZWNhZGVteS90cmFja2luZyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IHBvc3RTbmlwcGV0IH0gZnJvbSAnLi9hcGknO1xuaW1wb3J0IHR5cGUgeyBMYW5ndWFnZU9wdGlvbiB9IGZyb20gJy4vY29uc3RzJztcbmltcG9ydCB7IERyYXdlcnMgfSBmcm9tICcuL2RyYXdlcnMnO1xuaW1wb3J0IHsgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBTaW1wbGVNb25hY29FZGl0b3IgfSBmcm9tICcuL01vbmFjb0VkaXRvcic7XG5pbXBvcnQgeyBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyIH0gZnJvbSAnLi90eXBlcyc7XG5cbmNvbnN0IE91dHB1dCA9IHN0eWxlZC5wcmU8eyBoYXNFcnJvcjogYm9vbGVhbiB9PmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBNb25hY287XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICAkeyh7IGhhc0Vycm9yLCB0aGVtZSB9KSA9PiBgXG4gIGNvbG9yOiAke2hhc0Vycm9yID8gdGhlbWUuY29sb3JzLm9yYW5nZSA6IHRoZW1lLmNvbG9ycy50ZXh0fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHt0aGVtZS5jb2xvcnNbJ25hdnktOTAwJ119O1xuYH1cbmA7XG5cbmNvbnN0IENvcHlJY29uU3R5bGVkID0gc3R5bGVkKENvcHlJY29uKWBcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG5gO1xuXG5jb25zdCBET0NLRVJfU0lHVEVSTSA9IDE0MztcblxudHlwZSBFZGl0b3JQcm9wcyA9IHtcbiAgaGlkZUNvcHlCdXR0b246IGJvb2xlYW47XG4gIGxhbmd1YWdlOiBMYW5ndWFnZU9wdGlvbjtcbiAgdGV4dDogc3RyaW5nO1xuICBvbkNoYW5nZTogKHRleHQ6IHN0cmluZykgPT4gdm9pZDtcbiAgc25pcHBldHNCYXNlVXJsPzogc3RyaW5nO1xuICBvbkNvcHk/OiBDb2RlYnl0ZXNDaGFuZ2VIYW5kbGVyO1xuICB0cmFja2luZ0RhdGE/OiBPbWl0PFVzZXJDbGlja0RhdGEsICd0YXJnZXQnPjtcbn07XG5cbmV4cG9ydCBjb25zdCBFZGl0b3I6IFJlYWN0LkZDPEVkaXRvclByb3BzPiA9ICh7XG4gIGxhbmd1YWdlLFxuICB0ZXh0LFxuICBoaWRlQ29weUJ1dHRvbixcbiAgb25DaGFuZ2UsXG4gIG9uQ29weSxcbiAgc25pcHBldHNCYXNlVXJsLFxuICB0cmFja2luZ0RhdGEsXG59KSA9PiB7XG4gIGNvbnN0IFtvdXRwdXQsIHNldE91dHB1dF0gPSB1c2VTdGF0ZSgnJyk7XG4gIGNvbnN0IFtzdGF0dXMsIHNldFN0YXR1c10gPSB1c2VTdGF0ZTwncmVhZHknIHwgJ3dhaXRpbmcnIHwgJ2Vycm9yJz4oJ3JlYWR5Jyk7XG4gIGNvbnN0IFtpc0NvZGVCeXRlQ29waWVkLCBzZXRJc0NvZGVCeXRlQ29waWVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3Qgb25Db3B5Q2xpY2sgPSAoKSA9PiB7XG4gICAgaWYgKCFpc0NvZGVCeXRlQ29waWVkKSB7XG4gICAgICBuYXZpZ2F0b3IuY2xpcGJvYXJkXG4gICAgICAgIC53cml0ZVRleHQodGV4dClcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgLmNhdGNoKCgpID0+IGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBjb3B5JykpO1xuICAgICAgc2V0SXNDb2RlQnl0ZUNvcGllZCh0cnVlKTtcbiAgICAgIG9uQ29weT8uKHRleHQsIGxhbmd1YWdlKTtcbiAgICAgIHRyYWNrQ2xpY2soJ2NvcHknLCB0cmFja2luZ0RhdGEpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBzZXRFcnJvclN0YXR1c0FuZE91dHB1dCA9IChtZXNzYWdlOiBzdHJpbmcpID0+IHtcbiAgICBzZXRPdXRwdXQobWVzc2FnZSk7XG4gICAgc2V0U3RhdHVzKCdlcnJvcicpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IGFzeW5jICgpID0+IHtcbiAgICBpZiAodGV4dC50cmltKCkubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBsYW5ndWFnZSxcbiAgICAgIGNvZGU6IHRleHQsXG4gICAgfTtcbiAgICBzZXRTdGF0dXMoJ3dhaXRpbmcnKTtcbiAgICBzZXRPdXRwdXQoJycpO1xuICAgIHRyYWNrQ2xpY2soJ3J1bicsIHRyYWNraW5nRGF0YSk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBwb3N0U25pcHBldChkYXRhLCBzbmlwcGV0c0Jhc2VVcmwpO1xuICAgICAgaWYgKHJlc3BvbnNlLnN0ZGVyci5sZW5ndGggPiAwKSB7XG4gICAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KHJlc3BvbnNlLnN0ZGVycik7XG4gICAgICB9IGVsc2UgaWYgKHJlc3BvbnNlLmV4aXRfY29kZSA9PT0gRE9DS0VSX1NJR1RFUk0pIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoXG4gICAgICAgICAgJ1lvdXIgY29kZSB0b29rIHRvbyBsb25nIHRvIHJldHVybiBhIHJlc3VsdC4gRG91YmxlIGNoZWNrIHlvdXIgY29kZSBmb3IgYW55IGlzc3VlcyBhbmQgdHJ5IGFnYWluISdcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlICE9PSAwKSB7XG4gICAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdBbiB1bmtub3duIGVycm9yIG9jY3VyZWQuJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRPdXRwdXQocmVzcG9uc2Uuc3Rkb3V0KTtcbiAgICAgICAgc2V0U3RhdHVzKCdyZWFkeScpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dCgnRXJyb3I6ICcgKyBlcnJvcik7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxEcmF3ZXJzXG4gICAgICAgIGxlZnRDaGlsZD17XG4gICAgICAgICAgPFNpbXBsZU1vbmFjb0VkaXRvclxuICAgICAgICAgICAgdmFsdWU9e3RleHR9XG4gICAgICAgICAgICBsYW5ndWFnZT17bGFuZ3VhZ2V9XG4gICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgLz5cbiAgICAgICAgfVxuICAgICAgICByaWdodENoaWxkPXtcbiAgICAgICAgICA8T3V0cHV0IGhhc0Vycm9yPXtzdGF0dXMgPT09ICdlcnJvcid9IGFyaWEtbGl2ZT1cInBvbGl0ZVwiPlxuICAgICAgICAgICAge291dHB1dH1cbiAgICAgICAgICA8L091dHB1dD5cbiAgICAgICAgfVxuICAgICAgLz5cbiAgICAgIDxGbGV4Qm94XG4gICAgICAgIGp1c3RpZnlDb250ZW50PXtoaWRlQ29weUJ1dHRvbiA/ICdmbGV4LWVuZCcgOiAnc3BhY2UtYmV0d2Vlbid9XG4gICAgICAgIHBsPXs4fVxuICAgICAgPlxuICAgICAgICB7IWhpZGVDb3B5QnV0dG9uID8gKFxuICAgICAgICAgIDxUb29sVGlwXG4gICAgICAgICAgICBpZD1cImNvZGVieXRlLWNvcGllZFwiXG4gICAgICAgICAgICBhbGlnbm1lbnQ9XCJ0b3AtcmlnaHRcIlxuICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgdGFyZ2V0PXtcbiAgICAgICAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNvcHlDbGlja31cbiAgICAgICAgICAgICAgICBvbkJsdXI9eygpID0+IHNldElzQ29kZUJ5dGVDb3BpZWQoZmFsc2UpfVxuICAgICAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwiY29weS1jb2RlYnl0ZS1idG5cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPENvcHlJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IENvcHkgQ29kZWJ5dGVcbiAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpc0NvZGVCeXRlQ29waWVkID8gKFxuICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRlc3RpZD1cImNvcHktY29uZmlybWF0aW9uLXRvb2x0aXBcIiByb2xlPVwiYWxlcnRcIj5cbiAgICAgICAgICAgICAgICBDb3BpZWQhXG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1wcm9tcHQtdG9vbHRpcFwiPlxuICAgICAgICAgICAgICAgIENvcHkgdG8geW91ciBjbGlwYm9hcmRcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L1Rvb2xUaXA+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */",
82
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXFEdUMiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCb3gsXG4gIEZpbGxCdXR0b24sXG4gIEZsZXhCb3gsXG4gIE1vZGFsLFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQge1xuICBDb3B5SWNvbixcbiAgRWRpdG9ySWNvbixcbiAgU2hhcmVJY29uLFxuICBUYWdJY29uLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBVc2VyQ2xpY2tEYXRhIH0gZnJvbSAnQGNvZGVjYWRlbXkvdHJhY2tpbmcnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBwb3N0U25pcHBldCB9IGZyb20gJy4vYXBpJztcbmltcG9ydCB7IEJldHRlclNvY2lhbE1lZGlhU2hhcmluZyB9IGZyb20gJy4vQmV0dGVyU29jaWFsU2hhcmluZy9iZXR0ZXJTb2NpYWxTaGFyaW5nJztcbmltcG9ydCB0eXBlIHsgTGFuZ3VhZ2VPcHRpb24gfSBmcm9tICcuL2NvbnN0cyc7XG5pbXBvcnQgeyBEcmF3ZXJzIH0gZnJvbSAnLi9kcmF3ZXJzJztcbmltcG9ydCB7IEVtYmVkQ29kZWJ5dGVNb2RhbCB9IGZyb20gJy4vRW1iZWRNb2RhbCc7XG5pbXBvcnQgeyBnZXRDb2RlYnl0ZVVybCwgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgcXJjb2RlSWNvbiBmcm9tICcuL0ljb25zL3FyLWNvZGUtd2hpdGUucG5nJztcbmltcG9ydCB7IFNpbXBsZU1vbmFjb0VkaXRvciB9IGZyb20gJy4vTW9uYWNvRWRpdG9yJztcbmltcG9ydCB7IENvZGVieXRlc0NoYW5nZUhhbmRsZXIgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgT3V0cHV0ID0gc3R5bGVkLnByZTx7IGhhc0Vycm9yOiBib29sZWFuIH0+YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZm9udC1mYW1pbHk6IE1vbmFjbztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gICR7KHsgaGFzRXJyb3IsIHRoZW1lIH0pID0+IGBcbiAgY29sb3I6ICR7aGFzRXJyb3IgPyB0aGVtZS5jb2xvcnMub3JhbmdlIDogdGhlbWUuY29sb3JzLnRleHR9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9yc1snbmF2eS05MDAnXX07XG5gfVxuYDtcblxuY29uc3QgSW1hZ2UgPSBCb3gud2l0aENvbXBvbmVudCgnaW1nJyk7XG5cbmNvbnN0IEN1c3RvbUljb24gPSBzdHlsZWQoSW1hZ2UpYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFRhZ0ljb25TdHlsZWQgPSBzdHlsZWQoVGFnSWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgQ29weUljb25TdHlsZWQgPSBzdHlsZWQoQ29weUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFNoYXJlSWNvblN0eWxlZCA9IHN0eWxlZChTaGFyZUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IEVkaXRvckljb25TdHlsZWQgPSBzdHlsZWQoRWRpdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgRE9DS0VSX1NJR1RFUk0gPSAxNDM7XG5cbnR5cGUgRWRpdG9yUHJvcHMgPSB7XG4gIGhpZGVDb3B5QnV0dG9uOiBib29sZWFuO1xuICBsYW5ndWFnZTogTGFuZ3VhZ2VPcHRpb247XG4gIHRleHQ6IHN0cmluZztcbiAgb25DaGFuZ2U6ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNuaXBwZXRzQmFzZVVybD86IHN0cmluZztcbiAgb25Db3B5PzogQ29kZWJ5dGVzQ2hhbmdlSGFuZGxlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc0xpbmtDb3BpZWQsIHNldElzTGlua0NvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgW3NoYXJlTW9kYWxPcGVuLCBzZXRTaGFyZU1vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlbWJlZE1vZGFsT3Blbiwgc2V0RW1iZWRNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbcXJNb2RhbE9wZW4sIHNldFFyTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBbcXJDb2RlLCBzZXRRckNvZGVdID0gdXNlU3RhdGUoJycpO1xuXG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Db3B5TGlua0NsaWNrID0gKCkgPT4ge1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgIC53cml0ZVRleHQoZ2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpKVxuICAgICAgLnRoZW4oKCkgPT4gc2V0SXNMaW5rQ29waWVkKHRydWUpKVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weSBsaW5rJykpO1xuICB9O1xuXG4gIGNvbnN0IHNldEVycm9yU3RhdHVzQW5kT3V0cHV0ID0gKG1lc3NhZ2U6IHN0cmluZykgPT4ge1xuICAgIHNldE91dHB1dChtZXNzYWdlKTtcbiAgICBzZXRTdGF0dXMoJ2Vycm9yJyk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICh0ZXh0LnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgY29kZTogdGV4dCxcbiAgICB9O1xuICAgIHNldFN0YXR1cygnd2FpdGluZycpO1xuICAgIHNldE91dHB1dCgnJyk7XG4gICAgdHJhY2tDbGljaygncnVuJywgdHJhY2tpbmdEYXRhKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBvc3RTbmlwcGV0KGRhdGEsIHNuaXBwZXRzQmFzZVVybCk7XG4gICAgICBpZiAocmVzcG9uc2Uuc3RkZXJyLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQocmVzcG9uc2Uuc3RkZXJyKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlID09PSBET0NLRVJfU0lHVEVSTSkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChcbiAgICAgICAgICAnWW91ciBjb2RlIHRvb2sgdG9vIGxvbmcgdG8gcmV0dXJuIGEgcmVzdWx0LiBEb3VibGUgY2hlY2sgeW91ciBjb2RlIGZvciBhbnkgaXNzdWVzIGFuZCB0cnkgYWdhaW4hJ1xuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgIT09IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0FuIHVua25vd24gZXJyb3Igb2NjdXJlZC4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldE91dHB1dChyZXNwb25zZS5zdGRvdXQpO1xuICAgICAgICBzZXRTdGF0dXMoJ3JlYWR5Jyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdFcnJvcjogJyArIGVycm9yKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlUXJDb2RlID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgICAnaHR0cHM6Ly9xcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tL3FyL2N1c3RvbScsXG4gICAgICAgIHtcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtUmFwaWRBUEktSG9zdCc6ICdxcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tJyxcbiAgICAgICAgICAgICdYLVJhcGlkQVBJLUtleSc6XG4gICAgICAgICAgICAgICczMTkyMDczNGVmbXNoNWQ2ZmRiMGNlNmI3NTcycDFmNGViZGpzbmVlZWFlYTAyZmUxZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBkYXRhOiBnZXRDb2RlYnl0ZVVybChsYW5ndWFnZSwgdGV4dCksXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgYm9keTogJ2NpcmNsZScsXG4gICAgICAgICAgICAgIGV5ZTogJ2ZyYW1lMCcsXG4gICAgICAgICAgICAgIGV5ZUJhbGw6ICdiYWxsMTUnLFxuICAgICAgICAgICAgICBlcmYxOiBbXSxcbiAgICAgICAgICAgICAgZXJmMjogW10sXG4gICAgICAgICAgICAgIGVyZjM6IFtdLFxuICAgICAgICAgICAgICBicmYxOiBbXSxcbiAgICAgICAgICAgICAgYnJmMjogW10sXG4gICAgICAgICAgICAgIGJyZjM6IFtdLFxuICAgICAgICAgICAgICBib2R5Q29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgYmdDb2xvcjogJyNGRkYwRTUnLFxuICAgICAgICAgICAgICBleWUxQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUyQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUzQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWVCYWxsMUNvbG9yOiAnIzNBMTBFNScsXG4gICAgICAgICAgICAgIGV5ZUJhbGwyQ29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgZXllQmFsbDNDb2xvcjogJyMzQTEwRTUnLFxuICAgICAgICAgICAgICBncmFkaWVudENvbG9yMTogbnVsbCxcbiAgICAgICAgICAgICAgZ3JhZGllbnRDb2xvcjI6IG51bGwsXG4gICAgICAgICAgICAgIGdyYWRpZW50VHlwZTogJ2xpbmVhcicsXG4gICAgICAgICAgICAgIGdyYWRpZW50T25FeWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgbG9nbzogJ2E4NDczZjVhYTUwNzk1ZTZkM2Q1MGE3YWNhMWMxNjJjY2M2M2M5Yzguc3ZnJyxcbiAgICAgICAgICAgICAgbG9nb01vZGU6ICdjbGVhbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2l6ZTogMjAwMCxcbiAgICAgICAgICAgIGRvd25sb2FkOiAnaW1hZ2VVcmwnLFxuICAgICAgICAgICAgZmlsZTogJ3N2ZycsXG4gICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiBjb25zb2xlLmVycm9yKGVycikpO1xuXG4gICAgICBzZXRRckNvZGUocmVzcG9uc2UuaW1hZ2VVcmwgYXMgc3RyaW5nKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVRckNsaWNrID0gYXN5bmMgKCkgPT4ge1xuICAgIHNldFFyTW9kYWxPcGVuKHRydWUpO1xuICAgIC8vIEknbSBwYXlpbmcgZm9yIHRoZXNlIEFQSSBjYWxscyBvdXQgb2YgcG9ja2V0LCBzbyBvbmx5IGdlbmVyYXRlIHRoZSBjb2RlIG9uY2UuXG4gICAgLy8gVGhpcyBtZWFucyBpZiB5b3UgY2hhbmdlIHRoZSB0ZXh0IG9mIHRoZSBjb2RlYnl0ZSwgeW91J2xsIG5lZWQgdG8gcmVmcmVzaCB0aGUgcGFnZVxuICAgIC8vIGluIG9yZGVyIHRvIGdldCBhIGZyZXNoIFFSIGNvZGVcbiAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24gKGkuZS4gbm90IGEgaGFja2F0aG9uKSwgd2UgY2FuIHVzZSB0aGUgb25DaGFuZ2UgZnJvbSB0aGUgZWRpdG9yXG4gICAgLy8gdG8gY2xlYXIgdGhpcyBvbmx5IHdoZW4gdGhlIGNvZGVieXRlIGlzIG1vZGlmaWVkLlxuICAgIGlmICghcXJDb2RlKSB7XG4gICAgICBhd2FpdCBjcmVhdGVRckNvZGUoKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPERyYXdlcnNcbiAgICAgICAgbGVmdENoaWxkPXtcbiAgICAgICAgICA8U2ltcGxlTW9uYWNvRWRpdG9yXG4gICAgICAgICAgICB2YWx1ZT17dGV4dH1cbiAgICAgICAgICAgIGxhbmd1YWdlPXtsYW5ndWFnZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIHJpZ2h0Q2hpbGQ9e1xuICAgICAgICAgIDxPdXRwdXQgaGFzRXJyb3I9e3N0YXR1cyA9PT0gJ2Vycm9yJ30gYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgICAgICB7b3V0cHV0fVxuICAgICAgICAgIDwvT3V0cHV0PlxuICAgICAgICB9XG4gICAgICAvPlxuICAgICAgPEZsZXhCb3hcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e2hpZGVDb3B5QnV0dG9uID8gJ2ZsZXgtZW5kJyA6ICdzcGFjZS1iZXR3ZWVuJ31cbiAgICAgICAgcGw9ezh9XG4gICAgICA+XG4gICAgICAgIHshaGlkZUNvcHlCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2xUaXBcbiAgICAgICAgICAgIGlkPVwiY29kZWJ5dGUtY29waWVkXCJcbiAgICAgICAgICAgIGFsaWdubWVudD1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICBtb2RlPVwiZGFya1wiXG4gICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICA8VGV4dEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUNsaWNrfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNDb2RlQnl0ZUNvcGllZChmYWxzZSl9XG4gICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJjb3B5LWNvZGVieXRlLWJ0blwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weVxuICAgICAgICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2lzQ29kZUJ5dGVDb3BpZWQgPyAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1jb25maXJtYXRpb24tdG9vbHRpcFwiIHJvbGU9XCJhbGVydFwiPlxuICAgICAgICAgICAgICAgIENvcGllZCFcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LXByb21wdC10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgQ29weSB0byB5b3VyIGNsaXBib2FyZFxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvVG9vbFRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXsoKSA9PiBzZXRTaGFyZU1vZGFsT3Blbih0cnVlKX0+XG4gICAgICAgICAgPFNoYXJlSWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBTaGFyZVxuICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgIDxNb2RhbFxuICAgICAgICAgIGlzT3Blbj17c2hhcmVNb2RhbE9wZW59XG4gICAgICAgICAgb25SZXF1ZXN0Q2xvc2U9eygpID0+IHNldFNoYXJlTW9kYWxPcGVuKGZhbHNlKX1cbiAgICAgICAgICB0aXRsZT1cIlNoYXJlIHlvdXIgQ29kZWJ5dGUgd2l0aCB0aGUgd29ybGQhXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxCZXR0ZXJTb2NpYWxNZWRpYVNoYXJpbmdcbiAgICAgICAgICAgIHVybD17Z2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpfVxuICAgICAgICAgICAgbWVzc2FnZT17YENoZWNrIG91dCB0aGlzICR7bGFuZ3VhZ2V9IGNvZGUgSSB3cm90ZSFgfVxuICAgICAgICAgICAgaGFzaHRhZ3M9e1snY29kZWJ5dGVzJywgbGFuZ3VhZ2VdfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEJveCBkaXNwbGF5PVwiYmxvY2tcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgcD17OH0+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBzaXplPXszMH1cbiAgICAgICAgICAgICAgdmFsdWU9e2dldENvZGVieXRlVXJsKGxhbmd1YWdlLCB0ZXh0KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgICBpZD1cImxpbmstY29waWVkXCJcbiAgICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUxpbmtDbGlja31cbiAgICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNMaW5rQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weSBMaW5rXG4gICAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpc0xpbmtDb3BpZWQgPyAoXG4gICAgICAgICAgICAgICAgPHNwYW4gcm9sZT1cImFsZXJ0XCI+Q29waWVkITwvc3Bhbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiYWxlcnRcIj5DbGljayB0byBjb3B5PC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L01vZGFsPlxuICAgICAgICA8VGV4dEJ1dHRvbiB2YXJpYW50PVwic2Vjb25kYXJ5XCIgb25DbGljaz17KCkgPT4gc2V0RW1iZWRNb2RhbE9wZW4odHJ1ZSl9PlxuICAgICAgICAgIDxFZGl0b3JJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IEVtYmVkXG4gICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgPEVtYmVkQ29kZWJ5dGVNb2RhbFxuICAgICAgICAgIGlzTW9kYWxPcGVuPXtlbWJlZE1vZGFsT3Blbn1cbiAgICAgICAgICBzZXRJc01vZGFsT3Blbj17c2V0RW1iZWRNb2RhbE9wZW59XG4gICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgIHRleHQ9e3RleHR9XG4gICAgICAgIC8+XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXtoYW5kbGVRckNsaWNrfT5cbiAgICAgICAgICA8Q3VzdG9tSWNvbiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBzcmM9e3FyY29kZUljb259IGFsdD1cIlwiIC8+IFFSIENvZGVcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8TW9kYWxcbiAgICAgICAgICBpc09wZW49e3FyTW9kYWxPcGVufVxuICAgICAgICAgIG9uUmVxdWVzdENsb3NlPXsoKSA9PiBzZXRRck1vZGFsT3BlbihmYWxzZSl9XG4gICAgICAgICAgdGl0bGU9XCJTaGFyZSB5b3VyIENvZGVieXRlIHdpdGggdGhlIHdvcmxkIVwiXG4gICAgICAgID5cbiAgICAgICAgICB7cXJDb2RlID8gKFxuICAgICAgICAgICAgPEltYWdlIHNyYz17cXJDb2RlfSB3aWR0aD1cIjIwMFwiIGhlaWdodD1cIjIwMFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTcGlubmVyIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Nb2RhbD5cbiAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9wci0zMDUxNy1tb25vbGl0aC5kZXYtZWtzLmNvZGVjYWRlbXkuY29tL2Zha2Utc2hvcFwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxUYWdJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IFNob3BcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */",
83
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
84
+ });
85
+
86
+ var ShareIconStyled = /*#__PURE__*/_styled(ShareIcon, {
87
+ target: "e1lzxy8e1",
88
+ label: "ShareIconStyled"
89
+ })(process.env.NODE_ENV === "production" ? {
90
+ name: "u7ytkp",
91
+ styles: "margin-right:0.5rem"
92
+ } : {
93
+ name: "u7ytkp",
94
+ styles: "margin-right:0.5rem",
95
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXlEeUMiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCb3gsXG4gIEZpbGxCdXR0b24sXG4gIEZsZXhCb3gsXG4gIE1vZGFsLFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQge1xuICBDb3B5SWNvbixcbiAgRWRpdG9ySWNvbixcbiAgU2hhcmVJY29uLFxuICBUYWdJY29uLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBVc2VyQ2xpY2tEYXRhIH0gZnJvbSAnQGNvZGVjYWRlbXkvdHJhY2tpbmcnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBwb3N0U25pcHBldCB9IGZyb20gJy4vYXBpJztcbmltcG9ydCB7IEJldHRlclNvY2lhbE1lZGlhU2hhcmluZyB9IGZyb20gJy4vQmV0dGVyU29jaWFsU2hhcmluZy9iZXR0ZXJTb2NpYWxTaGFyaW5nJztcbmltcG9ydCB0eXBlIHsgTGFuZ3VhZ2VPcHRpb24gfSBmcm9tICcuL2NvbnN0cyc7XG5pbXBvcnQgeyBEcmF3ZXJzIH0gZnJvbSAnLi9kcmF3ZXJzJztcbmltcG9ydCB7IEVtYmVkQ29kZWJ5dGVNb2RhbCB9IGZyb20gJy4vRW1iZWRNb2RhbCc7XG5pbXBvcnQgeyBnZXRDb2RlYnl0ZVVybCwgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgcXJjb2RlSWNvbiBmcm9tICcuL0ljb25zL3FyLWNvZGUtd2hpdGUucG5nJztcbmltcG9ydCB7IFNpbXBsZU1vbmFjb0VkaXRvciB9IGZyb20gJy4vTW9uYWNvRWRpdG9yJztcbmltcG9ydCB7IENvZGVieXRlc0NoYW5nZUhhbmRsZXIgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgT3V0cHV0ID0gc3R5bGVkLnByZTx7IGhhc0Vycm9yOiBib29sZWFuIH0+YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZm9udC1mYW1pbHk6IE1vbmFjbztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gICR7KHsgaGFzRXJyb3IsIHRoZW1lIH0pID0+IGBcbiAgY29sb3I6ICR7aGFzRXJyb3IgPyB0aGVtZS5jb2xvcnMub3JhbmdlIDogdGhlbWUuY29sb3JzLnRleHR9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9yc1snbmF2eS05MDAnXX07XG5gfVxuYDtcblxuY29uc3QgSW1hZ2UgPSBCb3gud2l0aENvbXBvbmVudCgnaW1nJyk7XG5cbmNvbnN0IEN1c3RvbUljb24gPSBzdHlsZWQoSW1hZ2UpYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFRhZ0ljb25TdHlsZWQgPSBzdHlsZWQoVGFnSWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgQ29weUljb25TdHlsZWQgPSBzdHlsZWQoQ29weUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFNoYXJlSWNvblN0eWxlZCA9IHN0eWxlZChTaGFyZUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IEVkaXRvckljb25TdHlsZWQgPSBzdHlsZWQoRWRpdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgRE9DS0VSX1NJR1RFUk0gPSAxNDM7XG5cbnR5cGUgRWRpdG9yUHJvcHMgPSB7XG4gIGhpZGVDb3B5QnV0dG9uOiBib29sZWFuO1xuICBsYW5ndWFnZTogTGFuZ3VhZ2VPcHRpb247XG4gIHRleHQ6IHN0cmluZztcbiAgb25DaGFuZ2U6ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNuaXBwZXRzQmFzZVVybD86IHN0cmluZztcbiAgb25Db3B5PzogQ29kZWJ5dGVzQ2hhbmdlSGFuZGxlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc0xpbmtDb3BpZWQsIHNldElzTGlua0NvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgW3NoYXJlTW9kYWxPcGVuLCBzZXRTaGFyZU1vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlbWJlZE1vZGFsT3Blbiwgc2V0RW1iZWRNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbcXJNb2RhbE9wZW4sIHNldFFyTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBbcXJDb2RlLCBzZXRRckNvZGVdID0gdXNlU3RhdGUoJycpO1xuXG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Db3B5TGlua0NsaWNrID0gKCkgPT4ge1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgIC53cml0ZVRleHQoZ2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpKVxuICAgICAgLnRoZW4oKCkgPT4gc2V0SXNMaW5rQ29waWVkKHRydWUpKVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weSBsaW5rJykpO1xuICB9O1xuXG4gIGNvbnN0IHNldEVycm9yU3RhdHVzQW5kT3V0cHV0ID0gKG1lc3NhZ2U6IHN0cmluZykgPT4ge1xuICAgIHNldE91dHB1dChtZXNzYWdlKTtcbiAgICBzZXRTdGF0dXMoJ2Vycm9yJyk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICh0ZXh0LnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgY29kZTogdGV4dCxcbiAgICB9O1xuICAgIHNldFN0YXR1cygnd2FpdGluZycpO1xuICAgIHNldE91dHB1dCgnJyk7XG4gICAgdHJhY2tDbGljaygncnVuJywgdHJhY2tpbmdEYXRhKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBvc3RTbmlwcGV0KGRhdGEsIHNuaXBwZXRzQmFzZVVybCk7XG4gICAgICBpZiAocmVzcG9uc2Uuc3RkZXJyLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQocmVzcG9uc2Uuc3RkZXJyKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlID09PSBET0NLRVJfU0lHVEVSTSkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChcbiAgICAgICAgICAnWW91ciBjb2RlIHRvb2sgdG9vIGxvbmcgdG8gcmV0dXJuIGEgcmVzdWx0LiBEb3VibGUgY2hlY2sgeW91ciBjb2RlIGZvciBhbnkgaXNzdWVzIGFuZCB0cnkgYWdhaW4hJ1xuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgIT09IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0FuIHVua25vd24gZXJyb3Igb2NjdXJlZC4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldE91dHB1dChyZXNwb25zZS5zdGRvdXQpO1xuICAgICAgICBzZXRTdGF0dXMoJ3JlYWR5Jyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdFcnJvcjogJyArIGVycm9yKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlUXJDb2RlID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgICAnaHR0cHM6Ly9xcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tL3FyL2N1c3RvbScsXG4gICAgICAgIHtcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtUmFwaWRBUEktSG9zdCc6ICdxcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tJyxcbiAgICAgICAgICAgICdYLVJhcGlkQVBJLUtleSc6XG4gICAgICAgICAgICAgICczMTkyMDczNGVmbXNoNWQ2ZmRiMGNlNmI3NTcycDFmNGViZGpzbmVlZWFlYTAyZmUxZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBkYXRhOiBnZXRDb2RlYnl0ZVVybChsYW5ndWFnZSwgdGV4dCksXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgYm9keTogJ2NpcmNsZScsXG4gICAgICAgICAgICAgIGV5ZTogJ2ZyYW1lMCcsXG4gICAgICAgICAgICAgIGV5ZUJhbGw6ICdiYWxsMTUnLFxuICAgICAgICAgICAgICBlcmYxOiBbXSxcbiAgICAgICAgICAgICAgZXJmMjogW10sXG4gICAgICAgICAgICAgIGVyZjM6IFtdLFxuICAgICAgICAgICAgICBicmYxOiBbXSxcbiAgICAgICAgICAgICAgYnJmMjogW10sXG4gICAgICAgICAgICAgIGJyZjM6IFtdLFxuICAgICAgICAgICAgICBib2R5Q29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgYmdDb2xvcjogJyNGRkYwRTUnLFxuICAgICAgICAgICAgICBleWUxQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUyQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUzQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWVCYWxsMUNvbG9yOiAnIzNBMTBFNScsXG4gICAgICAgICAgICAgIGV5ZUJhbGwyQ29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgZXllQmFsbDNDb2xvcjogJyMzQTEwRTUnLFxuICAgICAgICAgICAgICBncmFkaWVudENvbG9yMTogbnVsbCxcbiAgICAgICAgICAgICAgZ3JhZGllbnRDb2xvcjI6IG51bGwsXG4gICAgICAgICAgICAgIGdyYWRpZW50VHlwZTogJ2xpbmVhcicsXG4gICAgICAgICAgICAgIGdyYWRpZW50T25FeWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgbG9nbzogJ2E4NDczZjVhYTUwNzk1ZTZkM2Q1MGE3YWNhMWMxNjJjY2M2M2M5Yzguc3ZnJyxcbiAgICAgICAgICAgICAgbG9nb01vZGU6ICdjbGVhbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2l6ZTogMjAwMCxcbiAgICAgICAgICAgIGRvd25sb2FkOiAnaW1hZ2VVcmwnLFxuICAgICAgICAgICAgZmlsZTogJ3N2ZycsXG4gICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiBjb25zb2xlLmVycm9yKGVycikpO1xuXG4gICAgICBzZXRRckNvZGUocmVzcG9uc2UuaW1hZ2VVcmwgYXMgc3RyaW5nKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVRckNsaWNrID0gYXN5bmMgKCkgPT4ge1xuICAgIHNldFFyTW9kYWxPcGVuKHRydWUpO1xuICAgIC8vIEknbSBwYXlpbmcgZm9yIHRoZXNlIEFQSSBjYWxscyBvdXQgb2YgcG9ja2V0LCBzbyBvbmx5IGdlbmVyYXRlIHRoZSBjb2RlIG9uY2UuXG4gICAgLy8gVGhpcyBtZWFucyBpZiB5b3UgY2hhbmdlIHRoZSB0ZXh0IG9mIHRoZSBjb2RlYnl0ZSwgeW91J2xsIG5lZWQgdG8gcmVmcmVzaCB0aGUgcGFnZVxuICAgIC8vIGluIG9yZGVyIHRvIGdldCBhIGZyZXNoIFFSIGNvZGVcbiAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24gKGkuZS4gbm90IGEgaGFja2F0aG9uKSwgd2UgY2FuIHVzZSB0aGUgb25DaGFuZ2UgZnJvbSB0aGUgZWRpdG9yXG4gICAgLy8gdG8gY2xlYXIgdGhpcyBvbmx5IHdoZW4gdGhlIGNvZGVieXRlIGlzIG1vZGlmaWVkLlxuICAgIGlmICghcXJDb2RlKSB7XG4gICAgICBhd2FpdCBjcmVhdGVRckNvZGUoKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPERyYXdlcnNcbiAgICAgICAgbGVmdENoaWxkPXtcbiAgICAgICAgICA8U2ltcGxlTW9uYWNvRWRpdG9yXG4gICAgICAgICAgICB2YWx1ZT17dGV4dH1cbiAgICAgICAgICAgIGxhbmd1YWdlPXtsYW5ndWFnZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIHJpZ2h0Q2hpbGQ9e1xuICAgICAgICAgIDxPdXRwdXQgaGFzRXJyb3I9e3N0YXR1cyA9PT0gJ2Vycm9yJ30gYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgICAgICB7b3V0cHV0fVxuICAgICAgICAgIDwvT3V0cHV0PlxuICAgICAgICB9XG4gICAgICAvPlxuICAgICAgPEZsZXhCb3hcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e2hpZGVDb3B5QnV0dG9uID8gJ2ZsZXgtZW5kJyA6ICdzcGFjZS1iZXR3ZWVuJ31cbiAgICAgICAgcGw9ezh9XG4gICAgICA+XG4gICAgICAgIHshaGlkZUNvcHlCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2xUaXBcbiAgICAgICAgICAgIGlkPVwiY29kZWJ5dGUtY29waWVkXCJcbiAgICAgICAgICAgIGFsaWdubWVudD1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICBtb2RlPVwiZGFya1wiXG4gICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICA8VGV4dEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUNsaWNrfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNDb2RlQnl0ZUNvcGllZChmYWxzZSl9XG4gICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJjb3B5LWNvZGVieXRlLWJ0blwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weVxuICAgICAgICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2lzQ29kZUJ5dGVDb3BpZWQgPyAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1jb25maXJtYXRpb24tdG9vbHRpcFwiIHJvbGU9XCJhbGVydFwiPlxuICAgICAgICAgICAgICAgIENvcGllZCFcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LXByb21wdC10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgQ29weSB0byB5b3VyIGNsaXBib2FyZFxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvVG9vbFRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXsoKSA9PiBzZXRTaGFyZU1vZGFsT3Blbih0cnVlKX0+XG4gICAgICAgICAgPFNoYXJlSWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBTaGFyZVxuICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgIDxNb2RhbFxuICAgICAgICAgIGlzT3Blbj17c2hhcmVNb2RhbE9wZW59XG4gICAgICAgICAgb25SZXF1ZXN0Q2xvc2U9eygpID0+IHNldFNoYXJlTW9kYWxPcGVuKGZhbHNlKX1cbiAgICAgICAgICB0aXRsZT1cIlNoYXJlIHlvdXIgQ29kZWJ5dGUgd2l0aCB0aGUgd29ybGQhXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxCZXR0ZXJTb2NpYWxNZWRpYVNoYXJpbmdcbiAgICAgICAgICAgIHVybD17Z2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpfVxuICAgICAgICAgICAgbWVzc2FnZT17YENoZWNrIG91dCB0aGlzICR7bGFuZ3VhZ2V9IGNvZGUgSSB3cm90ZSFgfVxuICAgICAgICAgICAgaGFzaHRhZ3M9e1snY29kZWJ5dGVzJywgbGFuZ3VhZ2VdfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEJveCBkaXNwbGF5PVwiYmxvY2tcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgcD17OH0+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBzaXplPXszMH1cbiAgICAgICAgICAgICAgdmFsdWU9e2dldENvZGVieXRlVXJsKGxhbmd1YWdlLCB0ZXh0KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgICBpZD1cImxpbmstY29waWVkXCJcbiAgICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUxpbmtDbGlja31cbiAgICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNMaW5rQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weSBMaW5rXG4gICAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpc0xpbmtDb3BpZWQgPyAoXG4gICAgICAgICAgICAgICAgPHNwYW4gcm9sZT1cImFsZXJ0XCI+Q29waWVkITwvc3Bhbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiYWxlcnRcIj5DbGljayB0byBjb3B5PC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L01vZGFsPlxuICAgICAgICA8VGV4dEJ1dHRvbiB2YXJpYW50PVwic2Vjb25kYXJ5XCIgb25DbGljaz17KCkgPT4gc2V0RW1iZWRNb2RhbE9wZW4odHJ1ZSl9PlxuICAgICAgICAgIDxFZGl0b3JJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IEVtYmVkXG4gICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgPEVtYmVkQ29kZWJ5dGVNb2RhbFxuICAgICAgICAgIGlzTW9kYWxPcGVuPXtlbWJlZE1vZGFsT3Blbn1cbiAgICAgICAgICBzZXRJc01vZGFsT3Blbj17c2V0RW1iZWRNb2RhbE9wZW59XG4gICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgIHRleHQ9e3RleHR9XG4gICAgICAgIC8+XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXtoYW5kbGVRckNsaWNrfT5cbiAgICAgICAgICA8Q3VzdG9tSWNvbiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBzcmM9e3FyY29kZUljb259IGFsdD1cIlwiIC8+IFFSIENvZGVcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8TW9kYWxcbiAgICAgICAgICBpc09wZW49e3FyTW9kYWxPcGVufVxuICAgICAgICAgIG9uUmVxdWVzdENsb3NlPXsoKSA9PiBzZXRRck1vZGFsT3BlbihmYWxzZSl9XG4gICAgICAgICAgdGl0bGU9XCJTaGFyZSB5b3VyIENvZGVieXRlIHdpdGggdGhlIHdvcmxkIVwiXG4gICAgICAgID5cbiAgICAgICAgICB7cXJDb2RlID8gKFxuICAgICAgICAgICAgPEltYWdlIHNyYz17cXJDb2RlfSB3aWR0aD1cIjIwMFwiIGhlaWdodD1cIjIwMFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTcGlubmVyIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Nb2RhbD5cbiAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9wci0zMDUxNy1tb25vbGl0aC5kZXYtZWtzLmNvZGVjYWRlbXkuY29tL2Zha2Utc2hvcFwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxUYWdJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IFNob3BcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */",
96
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
97
+ });
98
+
99
+ var EditorIconStyled = /*#__PURE__*/_styled(EditorIcon, {
100
+ target: "e1lzxy8e0",
101
+ label: "EditorIconStyled"
102
+ })(process.env.NODE_ENV === "production" ? {
103
+ name: "u7ytkp",
104
+ styles: "margin-right:0.5rem"
105
+ } : {
106
+ name: "u7ytkp",
107
+ styles: "margin-right:0.5rem",
108
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9lZGl0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZEMkMiLCJmaWxlIjoiLi4vc3JjL2VkaXRvci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCb3gsXG4gIEZpbGxCdXR0b24sXG4gIEZsZXhCb3gsXG4gIE1vZGFsLFxuICBTcGlubmVyLFxuICBUZXh0QnV0dG9uLFxuICBUb29sVGlwLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dCc7XG5pbXBvcnQge1xuICBDb3B5SWNvbixcbiAgRWRpdG9ySWNvbixcbiAgU2hhcmVJY29uLFxuICBUYWdJY29uLFxufSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1pY29ucyc7XG5pbXBvcnQgeyBVc2VyQ2xpY2tEYXRhIH0gZnJvbSAnQGNvZGVjYWRlbXkvdHJhY2tpbmcnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBwb3N0U25pcHBldCB9IGZyb20gJy4vYXBpJztcbmltcG9ydCB7IEJldHRlclNvY2lhbE1lZGlhU2hhcmluZyB9IGZyb20gJy4vQmV0dGVyU29jaWFsU2hhcmluZy9iZXR0ZXJTb2NpYWxTaGFyaW5nJztcbmltcG9ydCB0eXBlIHsgTGFuZ3VhZ2VPcHRpb24gfSBmcm9tICcuL2NvbnN0cyc7XG5pbXBvcnQgeyBEcmF3ZXJzIH0gZnJvbSAnLi9kcmF3ZXJzJztcbmltcG9ydCB7IEVtYmVkQ29kZWJ5dGVNb2RhbCB9IGZyb20gJy4vRW1iZWRNb2RhbCc7XG5pbXBvcnQgeyBnZXRDb2RlYnl0ZVVybCwgdHJhY2tDbGljayB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgcXJjb2RlSWNvbiBmcm9tICcuL0ljb25zL3FyLWNvZGUtd2hpdGUucG5nJztcbmltcG9ydCB7IFNpbXBsZU1vbmFjb0VkaXRvciB9IGZyb20gJy4vTW9uYWNvRWRpdG9yJztcbmltcG9ydCB7IENvZGVieXRlc0NoYW5nZUhhbmRsZXIgfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgT3V0cHV0ID0gc3R5bGVkLnByZTx7IGhhc0Vycm9yOiBib29sZWFuIH0+YFxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgZm9udC1mYW1pbHk6IE1vbmFjbztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gICR7KHsgaGFzRXJyb3IsIHRoZW1lIH0pID0+IGBcbiAgY29sb3I6ICR7aGFzRXJyb3IgPyB0aGVtZS5jb2xvcnMub3JhbmdlIDogdGhlbWUuY29sb3JzLnRleHR9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3RoZW1lLmNvbG9yc1snbmF2eS05MDAnXX07XG5gfVxuYDtcblxuY29uc3QgSW1hZ2UgPSBCb3gud2l0aENvbXBvbmVudCgnaW1nJyk7XG5cbmNvbnN0IEN1c3RvbUljb24gPSBzdHlsZWQoSW1hZ2UpYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFRhZ0ljb25TdHlsZWQgPSBzdHlsZWQoVGFnSWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgQ29weUljb25TdHlsZWQgPSBzdHlsZWQoQ29weUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IFNoYXJlSWNvblN0eWxlZCA9IHN0eWxlZChTaGFyZUljb24pYFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbmA7XG5cbmNvbnN0IEVkaXRvckljb25TdHlsZWQgPSBzdHlsZWQoRWRpdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuYDtcblxuY29uc3QgRE9DS0VSX1NJR1RFUk0gPSAxNDM7XG5cbnR5cGUgRWRpdG9yUHJvcHMgPSB7XG4gIGhpZGVDb3B5QnV0dG9uOiBib29sZWFuO1xuICBsYW5ndWFnZTogTGFuZ3VhZ2VPcHRpb247XG4gIHRleHQ6IHN0cmluZztcbiAgb25DaGFuZ2U6ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIHNuaXBwZXRzQmFzZVVybD86IHN0cmluZztcbiAgb25Db3B5PzogQ29kZWJ5dGVzQ2hhbmdlSGFuZGxlcjtcbiAgdHJhY2tpbmdEYXRhPzogT21pdDxVc2VyQ2xpY2tEYXRhLCAndGFyZ2V0Jz47XG59O1xuXG5leHBvcnQgY29uc3QgRWRpdG9yOiBSZWFjdC5GQzxFZGl0b3JQcm9wcz4gPSAoe1xuICBsYW5ndWFnZSxcbiAgdGV4dCxcbiAgaGlkZUNvcHlCdXR0b24sXG4gIG9uQ2hhbmdlLFxuICBvbkNvcHksXG4gIHNuaXBwZXRzQmFzZVVybCxcbiAgdHJhY2tpbmdEYXRhLFxufSkgPT4ge1xuICBjb25zdCBbb3V0cHV0LCBzZXRPdXRwdXRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbc3RhdHVzLCBzZXRTdGF0dXNdID0gdXNlU3RhdGU8J3JlYWR5JyB8ICd3YWl0aW5nJyB8ICdlcnJvcic+KCdyZWFkeScpO1xuICBjb25zdCBbaXNDb2RlQnl0ZUNvcGllZCwgc2V0SXNDb2RlQnl0ZUNvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc0xpbmtDb3BpZWQsIHNldElzTGlua0NvcGllZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgW3NoYXJlTW9kYWxPcGVuLCBzZXRTaGFyZU1vZGFsT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlbWJlZE1vZGFsT3Blbiwgc2V0RW1iZWRNb2RhbE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbcXJNb2RhbE9wZW4sIHNldFFyTW9kYWxPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBbcXJDb2RlLCBzZXRRckNvZGVdID0gdXNlU3RhdGUoJycpO1xuXG4gIGNvbnN0IG9uQ29weUNsaWNrID0gKCkgPT4ge1xuICAgIGlmICghaXNDb2RlQnl0ZUNvcGllZCkge1xuICAgICAgbmF2aWdhdG9yLmNsaXBib2FyZFxuICAgICAgICAud3JpdGVUZXh0KHRleHQpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weScpKTtcbiAgICAgIHNldElzQ29kZUJ5dGVDb3BpZWQodHJ1ZSk7XG4gICAgICBvbkNvcHk/Lih0ZXh0LCBsYW5ndWFnZSk7XG4gICAgICB0cmFja0NsaWNrKCdjb3B5JywgdHJhY2tpbmdEYXRhKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Db3B5TGlua0NsaWNrID0gKCkgPT4ge1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmRcbiAgICAgIC53cml0ZVRleHQoZ2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpKVxuICAgICAgLnRoZW4oKCkgPT4gc2V0SXNMaW5rQ29waWVkKHRydWUpKVxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgIC5jYXRjaCgoKSA9PiBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gY29weSBsaW5rJykpO1xuICB9O1xuXG4gIGNvbnN0IHNldEVycm9yU3RhdHVzQW5kT3V0cHV0ID0gKG1lc3NhZ2U6IHN0cmluZykgPT4ge1xuICAgIHNldE91dHB1dChtZXNzYWdlKTtcbiAgICBzZXRTdGF0dXMoJ2Vycm9yJyk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICh0ZXh0LnRyaW0oKS5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGxhbmd1YWdlLFxuICAgICAgY29kZTogdGV4dCxcbiAgICB9O1xuICAgIHNldFN0YXR1cygnd2FpdGluZycpO1xuICAgIHNldE91dHB1dCgnJyk7XG4gICAgdHJhY2tDbGljaygncnVuJywgdHJhY2tpbmdEYXRhKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHBvc3RTbmlwcGV0KGRhdGEsIHNuaXBwZXRzQmFzZVVybCk7XG4gICAgICBpZiAocmVzcG9uc2Uuc3RkZXJyLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQocmVzcG9uc2Uuc3RkZXJyKTtcbiAgICAgIH0gZWxzZSBpZiAocmVzcG9uc2UuZXhpdF9jb2RlID09PSBET0NLRVJfU0lHVEVSTSkge1xuICAgICAgICBzZXRFcnJvclN0YXR1c0FuZE91dHB1dChcbiAgICAgICAgICAnWW91ciBjb2RlIHRvb2sgdG9vIGxvbmcgdG8gcmV0dXJuIGEgcmVzdWx0LiBEb3VibGUgY2hlY2sgeW91ciBjb2RlIGZvciBhbnkgaXNzdWVzIGFuZCB0cnkgYWdhaW4hJ1xuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChyZXNwb25zZS5leGl0X2NvZGUgIT09IDApIHtcbiAgICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0FuIHVua25vd24gZXJyb3Igb2NjdXJlZC4nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldE91dHB1dChyZXNwb25zZS5zdGRvdXQpO1xuICAgICAgICBzZXRTdGF0dXMoJ3JlYWR5Jyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHNldEVycm9yU3RhdHVzQW5kT3V0cHV0KCdFcnJvcjogJyArIGVycm9yKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY3JlYXRlUXJDb2RlID0gYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgICAnaHR0cHM6Ly9xcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tL3FyL2N1c3RvbScsXG4gICAgICAgIHtcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgJ1gtUmFwaWRBUEktSG9zdCc6ICdxcmNvZGUtbW9ua2V5LnAucmFwaWRhcGkuY29tJyxcbiAgICAgICAgICAgICdYLVJhcGlkQVBJLUtleSc6XG4gICAgICAgICAgICAgICczMTkyMDczNGVmbXNoNWQ2ZmRiMGNlNmI3NTcycDFmNGViZGpzbmVlZWFlYTAyZmUxZCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICBkYXRhOiBnZXRDb2RlYnl0ZVVybChsYW5ndWFnZSwgdGV4dCksXG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgYm9keTogJ2NpcmNsZScsXG4gICAgICAgICAgICAgIGV5ZTogJ2ZyYW1lMCcsXG4gICAgICAgICAgICAgIGV5ZUJhbGw6ICdiYWxsMTUnLFxuICAgICAgICAgICAgICBlcmYxOiBbXSxcbiAgICAgICAgICAgICAgZXJmMjogW10sXG4gICAgICAgICAgICAgIGVyZjM6IFtdLFxuICAgICAgICAgICAgICBicmYxOiBbXSxcbiAgICAgICAgICAgICAgYnJmMjogW10sXG4gICAgICAgICAgICAgIGJyZjM6IFtdLFxuICAgICAgICAgICAgICBib2R5Q29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgYmdDb2xvcjogJyNGRkYwRTUnLFxuICAgICAgICAgICAgICBleWUxQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUyQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWUzQ29sb3I6ICcxMDE2MkYnLFxuICAgICAgICAgICAgICBleWVCYWxsMUNvbG9yOiAnIzNBMTBFNScsXG4gICAgICAgICAgICAgIGV5ZUJhbGwyQ29sb3I6ICcjM0ExMEU1JyxcbiAgICAgICAgICAgICAgZXllQmFsbDNDb2xvcjogJyMzQTEwRTUnLFxuICAgICAgICAgICAgICBncmFkaWVudENvbG9yMTogbnVsbCxcbiAgICAgICAgICAgICAgZ3JhZGllbnRDb2xvcjI6IG51bGwsXG4gICAgICAgICAgICAgIGdyYWRpZW50VHlwZTogJ2xpbmVhcicsXG4gICAgICAgICAgICAgIGdyYWRpZW50T25FeWVzOiBmYWxzZSxcbiAgICAgICAgICAgICAgbG9nbzogJ2E4NDczZjVhYTUwNzk1ZTZkM2Q1MGE3YWNhMWMxNjJjY2M2M2M5Yzguc3ZnJyxcbiAgICAgICAgICAgICAgbG9nb01vZGU6ICdjbGVhbicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc2l6ZTogMjAwMCxcbiAgICAgICAgICAgIGRvd25sb2FkOiAnaW1hZ2VVcmwnLFxuICAgICAgICAgICAgZmlsZTogJ3N2ZycsXG4gICAgICAgICAgfSksXG4gICAgICAgIH1cbiAgICAgIClcbiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiBjb25zb2xlLmVycm9yKGVycikpO1xuXG4gICAgICBzZXRRckNvZGUocmVzcG9uc2UuaW1hZ2VVcmwgYXMgc3RyaW5nKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgc2V0RXJyb3JTdGF0dXNBbmRPdXRwdXQoJ0Vycm9yOiAnICsgZXJyb3IpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVRckNsaWNrID0gYXN5bmMgKCkgPT4ge1xuICAgIHNldFFyTW9kYWxPcGVuKHRydWUpO1xuICAgIC8vIEknbSBwYXlpbmcgZm9yIHRoZXNlIEFQSSBjYWxscyBvdXQgb2YgcG9ja2V0LCBzbyBvbmx5IGdlbmVyYXRlIHRoZSBjb2RlIG9uY2UuXG4gICAgLy8gVGhpcyBtZWFucyBpZiB5b3UgY2hhbmdlIHRoZSB0ZXh0IG9mIHRoZSBjb2RlYnl0ZSwgeW91J2xsIG5lZWQgdG8gcmVmcmVzaCB0aGUgcGFnZVxuICAgIC8vIGluIG9yZGVyIHRvIGdldCBhIGZyZXNoIFFSIGNvZGVcbiAgICAvLyBJbiBhIHJlYWwgaW1wbGVtZW50YXRpb24gKGkuZS4gbm90IGEgaGFja2F0aG9uKSwgd2UgY2FuIHVzZSB0aGUgb25DaGFuZ2UgZnJvbSB0aGUgZWRpdG9yXG4gICAgLy8gdG8gY2xlYXIgdGhpcyBvbmx5IHdoZW4gdGhlIGNvZGVieXRlIGlzIG1vZGlmaWVkLlxuICAgIGlmICghcXJDb2RlKSB7XG4gICAgICBhd2FpdCBjcmVhdGVRckNvZGUoKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPERyYXdlcnNcbiAgICAgICAgbGVmdENoaWxkPXtcbiAgICAgICAgICA8U2ltcGxlTW9uYWNvRWRpdG9yXG4gICAgICAgICAgICB2YWx1ZT17dGV4dH1cbiAgICAgICAgICAgIGxhbmd1YWdlPXtsYW5ndWFnZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICAvPlxuICAgICAgICB9XG4gICAgICAgIHJpZ2h0Q2hpbGQ9e1xuICAgICAgICAgIDxPdXRwdXQgaGFzRXJyb3I9e3N0YXR1cyA9PT0gJ2Vycm9yJ30gYXJpYS1saXZlPVwicG9saXRlXCI+XG4gICAgICAgICAgICB7b3V0cHV0fVxuICAgICAgICAgIDwvT3V0cHV0PlxuICAgICAgICB9XG4gICAgICAvPlxuICAgICAgPEZsZXhCb3hcbiAgICAgICAganVzdGlmeUNvbnRlbnQ9e2hpZGVDb3B5QnV0dG9uID8gJ2ZsZXgtZW5kJyA6ICdzcGFjZS1iZXR3ZWVuJ31cbiAgICAgICAgcGw9ezh9XG4gICAgICA+XG4gICAgICAgIHshaGlkZUNvcHlCdXR0b24gPyAoXG4gICAgICAgICAgPFRvb2xUaXBcbiAgICAgICAgICAgIGlkPVwiY29kZWJ5dGUtY29waWVkXCJcbiAgICAgICAgICAgIGFsaWdubWVudD1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICBtb2RlPVwiZGFya1wiXG4gICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICA8VGV4dEJ1dHRvblxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUNsaWNrfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNDb2RlQnl0ZUNvcGllZChmYWxzZSl9XG4gICAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJjb3B5LWNvZGVieXRlLWJ0blwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weVxuICAgICAgICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2lzQ29kZUJ5dGVDb3BpZWQgPyAoXG4gICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwiY29weS1jb25maXJtYXRpb24tdG9vbHRpcFwiIHJvbGU9XCJhbGVydFwiPlxuICAgICAgICAgICAgICAgIENvcGllZCFcbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJjb3B5LXByb21wdC10b29sdGlwXCI+XG4gICAgICAgICAgICAgICAgQ29weSB0byB5b3VyIGNsaXBib2FyZFxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvVG9vbFRpcD5cbiAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXsoKSA9PiBzZXRTaGFyZU1vZGFsT3Blbih0cnVlKX0+XG4gICAgICAgICAgPFNoYXJlSWNvblN0eWxlZCBhcmlhLWhpZGRlbj1cInRydWVcIiAvPiBTaGFyZVxuICAgICAgICA8L1RleHRCdXR0b24+XG4gICAgICAgIDxNb2RhbFxuICAgICAgICAgIGlzT3Blbj17c2hhcmVNb2RhbE9wZW59XG4gICAgICAgICAgb25SZXF1ZXN0Q2xvc2U9eygpID0+IHNldFNoYXJlTW9kYWxPcGVuKGZhbHNlKX1cbiAgICAgICAgICB0aXRsZT1cIlNoYXJlIHlvdXIgQ29kZWJ5dGUgd2l0aCB0aGUgd29ybGQhXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxCZXR0ZXJTb2NpYWxNZWRpYVNoYXJpbmdcbiAgICAgICAgICAgIHVybD17Z2V0Q29kZWJ5dGVVcmwobGFuZ3VhZ2UsIHRleHQpfVxuICAgICAgICAgICAgbWVzc2FnZT17YENoZWNrIG91dCB0aGlzICR7bGFuZ3VhZ2V9IGNvZGUgSSB3cm90ZSFgfVxuICAgICAgICAgICAgaGFzaHRhZ3M9e1snY29kZWJ5dGVzJywgbGFuZ3VhZ2VdfVxuICAgICAgICAgIC8+XG4gICAgICAgICAgPEJveCBkaXNwbGF5PVwiYmxvY2tcIiBhbGlnbkl0ZW1zPVwiY2VudGVyXCIgcD17OH0+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICBzaXplPXszMH1cbiAgICAgICAgICAgICAgdmFsdWU9e2dldENvZGVieXRlVXJsKGxhbmd1YWdlLCB0ZXh0KX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8VG9vbFRpcFxuICAgICAgICAgICAgICBpZD1cImxpbmstY29waWVkXCJcbiAgICAgICAgICAgICAgYWxpZ25tZW50PVwidG9wLXJpZ2h0XCJcbiAgICAgICAgICAgICAgbW9kZT1cImRhcmtcIlxuICAgICAgICAgICAgICB0YXJnZXQ9e1xuICAgICAgICAgICAgICAgIDxUZXh0QnV0dG9uXG4gICAgICAgICAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ29weUxpbmtDbGlja31cbiAgICAgICAgICAgICAgICAgIG9uQmx1cj17KCkgPT4gc2V0SXNMaW5rQ29waWVkKGZhbHNlKX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8Q29weUljb25TdHlsZWQgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz4gQ29weSBMaW5rXG4gICAgICAgICAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpc0xpbmtDb3BpZWQgPyAoXG4gICAgICAgICAgICAgICAgPHNwYW4gcm9sZT1cImFsZXJ0XCI+Q29waWVkITwvc3Bhbj5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8c3BhbiByb2xlPVwiYWxlcnRcIj5DbGljayB0byBjb3B5PC9zcGFuPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Ub29sVGlwPlxuICAgICAgICAgIDwvQm94PlxuICAgICAgICA8L01vZGFsPlxuICAgICAgICA8VGV4dEJ1dHRvbiB2YXJpYW50PVwic2Vjb25kYXJ5XCIgb25DbGljaz17KCkgPT4gc2V0RW1iZWRNb2RhbE9wZW4odHJ1ZSl9PlxuICAgICAgICAgIDxFZGl0b3JJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IEVtYmVkXG4gICAgICAgIDwvVGV4dEJ1dHRvbj5cbiAgICAgICAgPEVtYmVkQ29kZWJ5dGVNb2RhbFxuICAgICAgICAgIGlzTW9kYWxPcGVuPXtlbWJlZE1vZGFsT3Blbn1cbiAgICAgICAgICBzZXRJc01vZGFsT3Blbj17c2V0RW1iZWRNb2RhbE9wZW59XG4gICAgICAgICAgbGFuZ3VhZ2U9e2xhbmd1YWdlfVxuICAgICAgICAgIHRleHQ9e3RleHR9XG4gICAgICAgIC8+XG4gICAgICAgIDxUZXh0QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBvbkNsaWNrPXtoYW5kbGVRckNsaWNrfT5cbiAgICAgICAgICA8Q3VzdG9tSWNvbiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBzcmM9e3FyY29kZUljb259IGFsdD1cIlwiIC8+IFFSIENvZGVcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8TW9kYWxcbiAgICAgICAgICBpc09wZW49e3FyTW9kYWxPcGVufVxuICAgICAgICAgIG9uUmVxdWVzdENsb3NlPXsoKSA9PiBzZXRRck1vZGFsT3BlbihmYWxzZSl9XG4gICAgICAgICAgdGl0bGU9XCJTaGFyZSB5b3VyIENvZGVieXRlIHdpdGggdGhlIHdvcmxkIVwiXG4gICAgICAgID5cbiAgICAgICAgICB7cXJDb2RlID8gKFxuICAgICAgICAgICAgPEltYWdlIHNyYz17cXJDb2RlfSB3aWR0aD1cIjIwMFwiIGhlaWdodD1cIjIwMFwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxTcGlubmVyIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Nb2RhbD5cbiAgICAgICAgPFRleHRCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBocmVmPVwiaHR0cHM6Ly9wci0zMDUxNy1tb25vbGl0aC5kZXYtZWtzLmNvZGVjYWRlbXkuY29tL2Zha2Utc2hvcFwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxUYWdJY29uU3R5bGVkIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+IFNob3BcbiAgICAgICAgPC9UZXh0QnV0dG9uPlxuICAgICAgICA8RmlsbEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9PlxuICAgICAgICAgIHtzdGF0dXMgPT09ICd3YWl0aW5nJyA/IDxTcGlubmVyIC8+IDogJ1J1bid9XG4gICAgICAgIDwvRmlsbEJ1dHRvbj5cbiAgICAgIDwvRmxleEJveD5cbiAgICA8Lz5cbiAgKTtcbn07XG4iXX0= */",
49
109
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
50
110
  });
51
111
 
@@ -74,6 +134,31 @@ export var Editor = function Editor(_ref2) {
74
134
  isCodeByteCopied = _useState6[0],
75
135
  setIsCodeByteCopied = _useState6[1];
76
136
 
137
+ var _useState7 = useState(false),
138
+ _useState8 = _slicedToArray(_useState7, 2),
139
+ isLinkCopied = _useState8[0],
140
+ setIsLinkCopied = _useState8[1];
141
+
142
+ var _useState9 = useState(false),
143
+ _useState10 = _slicedToArray(_useState9, 2),
144
+ shareModalOpen = _useState10[0],
145
+ setShareModalOpen = _useState10[1];
146
+
147
+ var _useState11 = useState(false),
148
+ _useState12 = _slicedToArray(_useState11, 2),
149
+ embedModalOpen = _useState12[0],
150
+ setEmbedModalOpen = _useState12[1];
151
+
152
+ var _useState13 = useState(false),
153
+ _useState14 = _slicedToArray(_useState13, 2),
154
+ qrModalOpen = _useState14[0],
155
+ setQrModalOpen = _useState14[1];
156
+
157
+ var _useState15 = useState(''),
158
+ _useState16 = _slicedToArray(_useState15, 2),
159
+ qrCode = _useState16[0],
160
+ setQrCode = _useState16[1];
161
+
77
162
  var onCopyClick = function onCopyClick() {
78
163
  if (!isCodeByteCopied) {
79
164
  navigator.clipboard.writeText(text) // eslint-disable-next-line no-console
@@ -86,6 +171,15 @@ export var Editor = function Editor(_ref2) {
86
171
  }
87
172
  };
88
173
 
174
+ var onCopyLinkClick = function onCopyLinkClick() {
175
+ navigator.clipboard.writeText(getCodebyteUrl(language, text)).then(function () {
176
+ return setIsLinkCopied(true);
177
+ }) // eslint-disable-next-line no-console
178
+ ["catch"](function () {
179
+ return console.error('Failed to copy link');
180
+ });
181
+ };
182
+
89
183
  var setErrorStatusAndOutput = function setErrorStatusAndOutput(message) {
90
184
  setOutput(message);
91
185
  setStatus('error');
@@ -152,6 +246,117 @@ export var Editor = function Editor(_ref2) {
152
246
  };
153
247
  }();
154
248
 
249
+ var createQrCode = /*#__PURE__*/function () {
250
+ var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
251
+ var response;
252
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
253
+ while (1) {
254
+ switch (_context2.prev = _context2.next) {
255
+ case 0:
256
+ _context2.prev = 0;
257
+ _context2.next = 3;
258
+ return fetch('https://qrcode-monkey.p.rapidapi.com/qr/custom', {
259
+ method: 'POST',
260
+ headers: {
261
+ 'content-type': 'application/json',
262
+ 'X-RapidAPI-Host': 'qrcode-monkey.p.rapidapi.com',
263
+ 'X-RapidAPI-Key': '31920734efmsh5d6fdb0ce6b7572p1f4ebdjsneeeaea02fe1d'
264
+ },
265
+ body: JSON.stringify({
266
+ data: getCodebyteUrl(language, text),
267
+ config: {
268
+ body: 'circle',
269
+ eye: 'frame0',
270
+ eyeBall: 'ball15',
271
+ erf1: [],
272
+ erf2: [],
273
+ erf3: [],
274
+ brf1: [],
275
+ brf2: [],
276
+ brf3: [],
277
+ bodyColor: '#3A10E5',
278
+ bgColor: '#FFF0E5',
279
+ eye1Color: '10162F',
280
+ eye2Color: '10162F',
281
+ eye3Color: '10162F',
282
+ eyeBall1Color: '#3A10E5',
283
+ eyeBall2Color: '#3A10E5',
284
+ eyeBall3Color: '#3A10E5',
285
+ gradientColor1: null,
286
+ gradientColor2: null,
287
+ gradientType: 'linear',
288
+ gradientOnEyes: false,
289
+ logo: 'a8473f5aa50795e6d3d50a7aca1c162ccc63c9c8.svg',
290
+ logoMode: 'clean'
291
+ },
292
+ size: 2000,
293
+ download: 'imageUrl',
294
+ file: 'svg'
295
+ })
296
+ }).then(function (response) {
297
+ return response.json();
298
+ }) // eslint-disable-next-line no-console
299
+ ["catch"](function (err) {
300
+ return console.error(err);
301
+ });
302
+
303
+ case 3:
304
+ response = _context2.sent;
305
+ setQrCode(response.imageUrl);
306
+ _context2.next = 10;
307
+ break;
308
+
309
+ case 7:
310
+ _context2.prev = 7;
311
+ _context2.t0 = _context2["catch"](0);
312
+ setErrorStatusAndOutput('Error: ' + _context2.t0);
313
+
314
+ case 10:
315
+ case "end":
316
+ return _context2.stop();
317
+ }
318
+ }
319
+ }, _callee2, null, [[0, 7]]);
320
+ }));
321
+
322
+ return function createQrCode() {
323
+ return _ref4.apply(this, arguments);
324
+ };
325
+ }();
326
+
327
+ var handleQrClick = /*#__PURE__*/function () {
328
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
329
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
330
+ while (1) {
331
+ switch (_context3.prev = _context3.next) {
332
+ case 0:
333
+ setQrModalOpen(true); // I'm paying for these API calls out of pocket, so only generate the code once.
334
+ // This means if you change the text of the codebyte, you'll need to refresh the page
335
+ // in order to get a fresh QR code
336
+ // In a real implementation (i.e. not a hackathon), we can use the onChange from the editor
337
+ // to clear this only when the codebyte is modified.
338
+
339
+ if (qrCode) {
340
+ _context3.next = 4;
341
+ break;
342
+ }
343
+
344
+ _context3.next = 4;
345
+ return createQrCode();
346
+
347
+ case 4:
348
+ case "end":
349
+ return _context3.stop();
350
+ }
351
+ }
352
+ }, _callee3);
353
+ }));
354
+
355
+ return function handleQrClick() {
356
+ return _ref5.apply(this, arguments);
357
+ };
358
+ }();
359
+
155
360
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Drawers, {
156
361
  leftChild: /*#__PURE__*/React.createElement(SimpleMonacoEditor, {
157
362
  value: text,
@@ -178,13 +383,92 @@ export var Editor = function Editor(_ref2) {
178
383
  "data-testid": "copy-codebyte-btn"
179
384
  }, /*#__PURE__*/React.createElement(CopyIconStyled, {
180
385
  "aria-hidden": "true"
181
- }), " Copy Codebyte")
386
+ }), " Copy")
182
387
  }, isCodeByteCopied ? /*#__PURE__*/React.createElement("span", {
183
388
  "data-testid": "copy-confirmation-tooltip",
184
389
  role: "alert"
185
390
  }, "Copied!") : /*#__PURE__*/React.createElement("span", {
186
391
  "data-testid": "copy-prompt-tooltip"
187
- }, "Copy to your clipboard")) : null, /*#__PURE__*/React.createElement(FillButton, {
392
+ }, "Copy to your clipboard")) : null, /*#__PURE__*/React.createElement(TextButton, {
393
+ variant: "secondary",
394
+ onClick: function onClick() {
395
+ return setShareModalOpen(true);
396
+ }
397
+ }, /*#__PURE__*/React.createElement(ShareIconStyled, {
398
+ "aria-hidden": "true"
399
+ }), " Share"), /*#__PURE__*/React.createElement(Modal, {
400
+ isOpen: shareModalOpen,
401
+ onRequestClose: function onRequestClose() {
402
+ return setShareModalOpen(false);
403
+ },
404
+ title: "Share your Codebyte with the world!"
405
+ }, /*#__PURE__*/React.createElement(BetterSocialMediaSharing, {
406
+ url: getCodebyteUrl(language, text),
407
+ message: "Check out this ".concat(language, " code I wrote!"),
408
+ hashtags: ['codebytes', language]
409
+ }), /*#__PURE__*/React.createElement(Box, {
410
+ display: "block",
411
+ alignItems: "center",
412
+ p: 8
413
+ }, /*#__PURE__*/React.createElement("input", {
414
+ type: "text",
415
+ size: 30,
416
+ value: getCodebyteUrl(language, text)
417
+ }), /*#__PURE__*/React.createElement(ToolTip, {
418
+ id: "link-copied",
419
+ alignment: "top-right",
420
+ mode: "dark",
421
+ target: /*#__PURE__*/React.createElement(TextButton, {
422
+ variant: "secondary",
423
+ onClick: onCopyLinkClick,
424
+ onBlur: function onBlur() {
425
+ return setIsLinkCopied(false);
426
+ }
427
+ }, /*#__PURE__*/React.createElement(CopyIconStyled, {
428
+ "aria-hidden": "true"
429
+ }), " Copy Link")
430
+ }, isLinkCopied ? /*#__PURE__*/React.createElement("span", {
431
+ role: "alert"
432
+ }, "Copied!") : /*#__PURE__*/React.createElement("span", {
433
+ role: "alert"
434
+ }, "Click to copy")))), /*#__PURE__*/React.createElement(TextButton, {
435
+ variant: "secondary",
436
+ onClick: function onClick() {
437
+ return setEmbedModalOpen(true);
438
+ }
439
+ }, /*#__PURE__*/React.createElement(EditorIconStyled, {
440
+ "aria-hidden": "true"
441
+ }), " Embed"), /*#__PURE__*/React.createElement(EmbedCodebyteModal, {
442
+ isModalOpen: embedModalOpen,
443
+ setIsModalOpen: setEmbedModalOpen,
444
+ language: language,
445
+ text: text
446
+ }), /*#__PURE__*/React.createElement(TextButton, {
447
+ variant: "secondary",
448
+ onClick: handleQrClick
449
+ }, /*#__PURE__*/React.createElement(CustomIcon, {
450
+ width: "24",
451
+ height: "24",
452
+ src: qrcodeIcon,
453
+ alt: ""
454
+ }), " QR Code"), /*#__PURE__*/React.createElement(Modal, {
455
+ isOpen: qrModalOpen,
456
+ onRequestClose: function onRequestClose() {
457
+ return setQrModalOpen(false);
458
+ },
459
+ title: "Share your Codebyte with the world!"
460
+ }, qrCode ? /*#__PURE__*/React.createElement(Image, {
461
+ src: qrCode,
462
+ width: "200",
463
+ height: "200",
464
+ alt: ""
465
+ }) : /*#__PURE__*/React.createElement(Spinner, null)), /*#__PURE__*/React.createElement(TextButton, {
466
+ variant: "secondary",
467
+ href: "https://pr-30517-monolith.dev-eks.codecademy.com/fake-shop",
468
+ target: "_blank"
469
+ }, /*#__PURE__*/React.createElement(TagIconStyled, {
470
+ "aria-hidden": "true"
471
+ }), " Shop"), /*#__PURE__*/React.createElement(FillButton, {
188
472
  onClick: handleSubmit
189
473
  }, status === 'waiting' ? /*#__PURE__*/React.createElement(Spinner, null) : 'Run')));
190
474
  };
@@ -1,2 +1,3 @@
1
1
  import { UserClickData } from '@codecademy/tracking';
2
2
  export declare const trackClick: (target: string, trackingData?: Omit<UserClickData, "target"> | undefined) => void;
3
+ export declare const getCodebyteUrl: (language: string, text: string) => string;
@@ -4,9 +4,13 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
4
4
 
5
5
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
6
 
7
+ import { encode } from 'js-base64';
7
8
  import { trackUserClick } from '../libs/eventTracking';
8
9
  export var trackClick = function trackClick(target, trackingData) {
9
10
  return trackUserClick(_objectSpread(_objectSpread({}, trackingData), {}, {
10
11
  target: target
11
12
  }));
13
+ };
14
+ export var getCodebyteUrl = function getCodebyteUrl(language, text) {
15
+ return "https://codecademy.com/codebyte-editor?lang=".concat(language, "&text=").concat(encode(text));
12
16
  };
@@ -0,0 +1,5 @@
1
+ declare module '*.png' {
2
+ const imageUrl: string;
3
+
4
+ export default imageUrl;
5
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@codecademy/codebytes",
3
3
  "description": "Codebytes Code Editor",
4
- "version": "0.6.13-alpha.777ceb.0",
4
+ "version": "0.6.14-alpha.d2a441.0",
5
5
  "author": "Codecademy Engineering <dev@codecademy.com>",
6
6
  "sideEffects": [
7
7
  "**/*.css",
@@ -47,7 +47,7 @@
47
47
  "@codecademy/gamut-icons": "*",
48
48
  "@codecademy/gamut-styles": "*",
49
49
  "@codecademy/gamut-tests": "*",
50
- "@codecademy/tracking": "0.19.1-alpha.777ceb.0",
50
+ "@codecademy/tracking": "^0.20.0",
51
51
  "@codecademy/variance": "*",
52
52
  "@emotion/jest": "^11.3.0",
53
53
  "@testing-library/dom": "^7.31.2",
@@ -64,5 +64,5 @@
64
64
  "files": [
65
65
  "dist/**"
66
66
  ],
67
- "gitHead": "2154b7723dc6126d4fc1ccc062c39394fb75be13"
67
+ "gitHead": "ef6f9c327cf2560522d3cef55ef13c536ddaad70"
68
68
  }