{"ast":null,"code":"var _jsxFileName = \"/Users/silverdust/Projects/ConvertKit/convertkit-design/docs/components/nav-link.js\";\nvar __jsx = React.createElement;\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport NextLink from \"next/link\";\nimport { useRouter } from \"next/router\";\nimport React, { forwardRef } from \"react\";\n\nconst NavLink = (_ref) => {\n  let {\n    children\n  } = _ref,\n      props = _objectWithoutProperties(_ref, [\"children\"]);\n\n  const router = useRouter();\n  let isActive = false;\n\n  if (router.pathname === props.href) {\n    isActive = true;\n  }\n\n  return __jsx(NextLink, _extends({}, props, {\n    __self: this,\n    __source: {\n      fileName: _jsxFileName,\n      lineNumber: 14,\n      columnNumber: 5\n    }\n  }), typeof children === \"function\" ? children(isActive) : children);\n};\n\nexport const stringToUrl = (str, path = \"/\") => {\n  return `${path}${str.toLowerCase().split(\" \").join(\"-\")}`;\n};\nexport const SideNavLink = forwardRef((_ref2, ref) => {\n  let {\n    children,\n    icon,\n    className\n  } = _ref2,\n      props = _objectWithoutProperties(_ref2, [\"children\", \"icon\", \"className\"]);\n\n  return __jsx(\"a\", _extends({\n    className: `-mx-2 px-2 flex cursor-pointer outline-none leading-tight font-light text-gray-700 text-base ${className}`,\n    ref: ref,\n    tabIndex: \"0\"\n  }, props, {\n    __self: this,\n    __source: {\n      fileName: _jsxFileName,\n      lineNumber: 30,\n      columnNumber: 7\n    }\n  }), children);\n});\nexport const TopNavLink = forwardRef((_ref3, ref) => {\n  let {\n    href\n  } = _ref3,\n      props = _objectWithoutProperties(_ref3, [\"href\"]);\n\n  return __jsx(NavLink, {\n    href: href,\n    __self: this,\n    __source: {\n      fileName: _jsxFileName,\n      lineNumber: 44,\n      columnNumber: 5\n    }\n  }, isActive => __jsx(SideNavLink, _extends({\n    ref: ref,\n    style: {\n      transition: \"all .2s ease-in-out\"\n    },\n    \"aria-current\": isActive ? \"page\" : undefined,\n    className: isActive ? \"text-red-400 font-semibold\" : \"\"\n  }, isActive && {\n    color: \"teal.500\",\n    fontWeight: \"semibold\"\n  }, props, {\n    __self: this,\n    __source: {\n      fileName: _jsxFileName,\n      lineNumber: 46,\n      columnNumber: 9\n    }\n  })));\n});\nexport const ComponentLink = forwardRef((_ref4, ref) => {\n  let {\n    href\n  } = _ref4,\n      props = _objectWithoutProperties(_ref4, [\"href\"]);\n\n  return __jsx(NavLink, {\n    href: href,\n    __self: this,\n    __source: {\n      fileName: _jsxFileName,\n      lineNumber: 61,\n      columnNumber: 5\n    }\n  }, isActive => __jsx(SideNavLink, _extends({\n    ref: ref,\n    \"aria-current\": isActive ? \"page\" : undefined\n  }, props, {\n    className: isActive ? \"text-red-400 font-normal \" : \"\",\n    __self: this,\n    __source: {\n      fileName: _jsxFileName,\n      lineNumber: 63,\n      columnNumber: 9\n    }\n  })));\n});","map":{"version":3,"sources":["/Users/silverdust/Projects/ConvertKit/convertkit-design/docs/components/nav-link.js"],"names":["NextLink","useRouter","React","forwardRef","NavLink","children","props","router","isActive","pathname","href","stringToUrl","str","path","toLowerCase","split","join","SideNavLink","ref","icon","className","TopNavLink","transition","undefined","color","fontWeight","ComponentLink"],"mappings":";;;;;;;;;AAAA,OAAOA,QAAP,MAAqB,WAArB;AACA,SAASC,SAAT,QAA0B,aAA1B;AACA,OAAOC,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;;AAEA,MAAMC,OAAO,GAAG,UAA4B;AAAA,MAA3B;AAAEC,IAAAA;AAAF,GAA2B;AAAA,MAAZC,KAAY;;AAC1C,QAAMC,MAAM,GAAGN,SAAS,EAAxB;AACA,MAAIO,QAAQ,GAAG,KAAf;;AAEA,MAAID,MAAM,CAACE,QAAP,KAAoBH,KAAK,CAACI,IAA9B,EAAoC;AAClCF,IAAAA,QAAQ,GAAG,IAAX;AACD;;AAED,SACE,MAAC,QAAD,eAAcF,KAAd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MACG,OAAOD,QAAP,KAAoB,UAApB,GAAiCA,QAAQ,CAACG,QAAD,CAAzC,GAAsDH,QADzD,CADF;AAKD,CAbD;;AAeA,OAAO,MAAMM,WAAW,GAAG,CAACC,GAAD,EAAMC,IAAI,GAAG,GAAb,KAAqB;AAC9C,SAAQ,GAAEA,IAAK,GAAED,GAAG,CACjBE,WADc,GAEdC,KAFc,CAER,GAFQ,EAGdC,IAHc,CAGT,GAHS,CAGJ,EAHb;AAID,CALM;AAOP,OAAO,MAAMC,WAAW,GAAGd,UAAU,CACnC,QAA0Ce,GAA1C,KAAkD;AAAA,MAAjD;AAAEb,IAAAA,QAAF;AAAYc,IAAAA,IAAZ;AAAkBC,IAAAA;AAAlB,GAAiD;AAAA,MAAjBd,KAAiB;;AAChD,SACE;AACE,IAAA,SAAS,EAAG,gGAA+Fc,SAAU,EADvH;AAEE,IAAA,GAAG,EAAEF,GAFP;AAGE,IAAA,QAAQ,EAAC;AAHX,KAIMZ,KAJN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMGD,QANH,CADF;AAUD,CAZkC,CAA9B;AAeP,OAAO,MAAMgB,UAAU,GAAGlB,UAAU,CAAC,QAAqBe,GAArB,KAA6B;AAAA,MAA5B;AAAER,IAAAA;AAAF,GAA4B;AAAA,MAAjBJ,KAAiB;;AAChE,SACE,MAAC,OAAD;AAAS,IAAA,IAAI,EAAEI,IAAf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACIF,QAAD,IACC,MAAC,WAAD;AACE,IAAA,GAAG,EAAEU,GADP;AAEE,IAAA,KAAK,EAAE;AAAEI,MAAAA,UAAU,EAAE;AAAd,KAFT;AAGE,oBAAcd,QAAQ,GAAG,MAAH,GAAYe,SAHpC;AAIE,IAAA,SAAS,EAAEf,QAAQ,GAAG,4BAAH,GAAkC;AAJvD,KAKOA,QAAQ,IAAI;AAAEgB,IAAAA,KAAK,EAAE,UAAT;AAAqBC,IAAAA,UAAU,EAAE;AAAjC,GALnB,EAMMnB,KANN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAFJ,CADF;AAcD,CAfmC,CAA7B;AAiBP,OAAO,MAAMoB,aAAa,GAAGvB,UAAU,CAAC,QAAqBe,GAArB,KAA6B;AAAA,MAA5B;AAAER,IAAAA;AAAF,GAA4B;AAAA,MAAjBJ,KAAiB;;AACnE,SACE,MAAC,OAAD;AAAS,IAAA,IAAI,EAAEI,IAAf;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KACIF,QAAD,IACC,MAAC,WAAD;AACE,IAAA,GAAG,EAAEU,GADP;AAEE,oBAAcV,QAAQ,GAAG,MAAH,GAAYe;AAFpC,KAGMjB,KAHN;AAIE,IAAA,SAAS,EAAEE,QAAQ,GAAG,2BAAH,GAAiC,EAJtD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAFJ,CADF;AAYD,CAbsC,CAAhC","sourcesContent":["import NextLink from \"next/link\";\nimport { useRouter } from \"next/router\";\nimport React, { forwardRef } from \"react\";\n\nconst NavLink = ({ children, ...props }) => {\n  const router = useRouter();\n  let isActive = false;\n\n  if (router.pathname === props.href) {\n    isActive = true;\n  }\n\n  return (\n    <NextLink {...props}>\n      {typeof children === \"function\" ? children(isActive) : children}\n    </NextLink>\n  );\n};\n\nexport const stringToUrl = (str, path = \"/\") => {\n  return `${path}${str\n    .toLowerCase()\n    .split(\" \")\n    .join(\"-\")}`;\n};\n\nexport const SideNavLink = forwardRef(\n  ({ children, icon, className, ...props }, ref) => {\n    return (\n      <a\n        className={`-mx-2 px-2 flex cursor-pointer outline-none leading-tight font-light text-gray-700 text-base ${className}`}\n        ref={ref}\n        tabIndex=\"0\"\n        {...props}\n      >\n        {children}\n      </a>\n    );\n  }\n);\n\nexport const TopNavLink = forwardRef(({ href, ...props }, ref) => {\n  return (\n    <NavLink href={href}>\n      {(isActive) => (\n        <SideNavLink\n          ref={ref}\n          style={{ transition: \"all .2s ease-in-out\" }}\n          aria-current={isActive ? \"page\" : undefined}\n          className={isActive ? \"text-red-400 font-semibold\" : \"\"}\n          {...(isActive && { color: \"teal.500\", fontWeight: \"semibold\" })}\n          {...props}\n        />\n      )}\n    </NavLink>\n  );\n});\n\nexport const ComponentLink = forwardRef(({ href, ...props }, ref) => {\n  return (\n    <NavLink href={href}>\n      {(isActive) => (\n        <SideNavLink\n          ref={ref}\n          aria-current={isActive ? \"page\" : undefined}\n          {...props}\n          className={isActive ? \"text-red-400 font-normal \" : \"\"}\n        />\n      )}\n    </NavLink>\n  );\n});\n"]},"metadata":{},"sourceType":"module"}