@polygon.io/core
Version:
A set of themeable UI components for React
1 lines • 4.66 kB
JavaScript
var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault"),_typeof=require("@babel/runtime/helpers/typeof");Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=void 0;var _react=_interopRequireWildcard(require("react")),_extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends")),_objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")),_styledComponents=_interopRequireWildcard(require("styled-components")),_Container=_interopRequireDefault(require("../Container")),_ContainerItem=_interopRequireDefault(require("../ContainerItem")),_Text=_interopRequireDefault(require("../Text/Text")),_List=require("../List"),_jsxRuntime=require("react/jsx-runtime"),_excluded=["title","sectionTitle","link","slug","icon","addOn","rootPath","as","children","disabled"];function _getRequireWildcardCache(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(_getRequireWildcardCache=function(a){return a?c:b})(a)}function _interopRequireWildcard(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!==_typeof(a)&&"function"!=typeof a)return{default:a};var c=_getRequireWildcardCache(b);if(c&&c.has(a))return c.get(a);var d={},e=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in a)if("default"!=f&&Object.prototype.hasOwnProperty.call(a,f)){var g=e?Object.getOwnPropertyDescriptor(a,f):null;g&&(g.get||g.set)?Object.defineProperty(d,f,g):d[f]=a[f]}return d["default"]=a,c&&c.set(a,d),d}var __jsx=_react["default"].createElement,hover=(0,_styledComponents.css)(["&:hover *{color:",";}"],function(a){var b=a.theme;return b.color.content.primary}),PaddedItem=_styledComponents["default"].li.withConfig({displayName:"SidebarLink__PaddedItem",componentId:"sc-1ydr8yi-0"})(["padding-top:",";padding-bottom:",";"],function(a){var b=a.theme;return"calc(".concat(b.spacing.s1," * 1.5)")},function(a){var b=a.theme;return"calc(".concat(b.spacing.s1," * 1.5)")}),StyledLink=_styledComponents["default"].a.withConfig({displayName:"SidebarLink__StyledLink",componentId:"sc-1ydr8yi-1"})(["flex:1;text-decoration:none;",";"],function(a){var b=a.disabled;return b?"pointer-events: none":hover}),iconStyles=(0,_styledComponents.css)(["flex:1;display:flex;align-items:center;"]),AddOnWrapper=_styledComponents["default"].div.withConfig({displayName:"SidebarLink__AddOnWrapper",componentId:"sc-1ydr8yi-2"})(["display:flex;align-items:center;width:",";height:",";margin-right:",";i{","}"],function(a){var b=a.theme;return b.spacing.s3},function(a){var b=a.theme;return b.spacing.s3},function(a){var b=a.theme;return"calc(".concat(b.spacing.s2," * 1.5)")},iconStyles),Icon=_styledComponents["default"].i.withConfig({displayName:"SidebarLink__Icon",componentId:"sc-1ydr8yi-3"})([""," width:",";&&& svg{width:100%;}"],iconStyles,function(a){var b=a.theme;return b.spacing.s3}),StyledText=(0,_styledComponents["default"])(_Text["default"]).withConfig({displayName:"SidebarLink__StyledText",componentId:"sc-1ydr8yi-4"})(["display:flex;align-items:center;white-space:nowrap;"]),SidebarLink=function(a){var b=a.title,c=a.sectionTitle,d=a.link,e=a.slug,f=a.icon,g=a.addOn,h=a.rootPath,i=a.as,j=a.children,k=a.disabled,l=(0,_objectWithoutProperties2["default"])(a,_excluded),m=(0,_react.useMemo)(function(){var a;return(null===h||void 0===h||null===(a=h.replace("launchpad/",""))||void 0===a?void 0:a.split("/"))||[]},[h]),n=m[1],o=(0,_react.useMemo)(function(){var a;return(null===e||void 0===e||null===(a=e.replace("launchpad/",""))||void 0===a?void 0:a.split("/"))||[]},[e]),p=o[1],q=(0,_react.useMemo)(function(){return k?"disabled":null!==f&&void 0!==f&&f.includes("exclamation")?"danger":h!==e&&(!p||n!==p)?"secondary":"primary"},[k,f,n,h,p,e]),r=(0,_react.useMemo)(function(){return h!==e&&(!p||n!==p)?"normal":"bold"},[n,h,p,e]);return __jsx(PaddedItem,null,__jsx(_Container["default"],{alignItems:"center",justifyContent:"center"},d||e?__jsx(_jsxRuntime.Fragment,null,g&&__jsx(AddOnWrapper,null,g),__jsx(StyledLink,(0,_extends2["default"])({as:i,href:d||"".concat(e),disabled:k},l),__jsx(StyledText,{size:"3",color:q,weight:r,disabled:k},f&&__jsx(AddOnWrapper,null,f&&__jsx(Icon,{className:f})),b))):__jsx(_ContainerItem["default"],{flex:"1"},__jsx(StyledText,{size:"3",color:k?"disabled":"secondary",disabled:k},f&&__jsx(AddOnWrapper,null,f&&__jsx(Icon,{className:f})),b))),j&&__jsx(_List.UnorderedList,null,j))};SidebarLink.defaultProps={sectionTitle:!1,link:void 0,slug:void 0,icon:void 0,addOn:void 0,rootPath:void 0,as:void 0,children:null,disabled:!1};var _default=SidebarLink;exports["default"]=_default;
;