Second frontend, written in Next.JS + Typescript.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1 lines
29 KiB

{"ast":null,"code":"\"use strict\";\n\nvar _classCallCheck = require(\"@babel/runtime/helpers/classCallCheck\");\n\nvar _createClass = require(\"@babel/runtime/helpers/createClass\");\n\nvar _inherits = require(\"@babel/runtime/helpers/inherits\");\n\nvar _possibleConstructorReturn = require(\"@babel/runtime/helpers/possibleConstructorReturn\");\n\nvar _getPrototypeOf = require(\"@babel/runtime/helpers/getPrototypeOf\");\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _url = require(\"url\");\n\nvar _utils = require(\"../next-server/lib/utils\");\n\nvar _router = _interopRequireDefault(require(\"./router\"));\n\nvar _router2 = require(\"../next-server/lib/router/router\");\n\nfunction isLocal(href) {\n var url = (0, _url.parse)(href, false, true);\n var origin = (0, _url.parse)((0, _utils.getLocationOrigin)(), false, true);\n return !url.host || url.protocol === origin.protocol && url.host === origin.host;\n}\n\nfunction memoizedFormatUrl(formatFunc) {\n var lastHref = null;\n var lastAs = null;\n var lastResult = null;\n return function (href, as) {\n if (lastResult && href === lastHref && as === lastAs) {\n return lastResult;\n }\n\n var result = formatFunc(href, as);\n lastHref = href;\n lastAs = as;\n lastResult = result;\n return result;\n };\n}\n\nfunction formatUrl(url) {\n return url && typeof url === 'object' ? (0, _utils.formatWithValidation)(url) : url;\n}\n\nvar observer;\nvar listeners = new Map();\nvar IntersectionObserver = true ? window.IntersectionObserver : null;\nvar prefetched = {};\n\nfunction getObserver() {\n // Return shared instance of IntersectionObserver if already created\n if (observer) {\n return observer;\n } // Only create shared IntersectionObserver if supported in browser\n\n\n if (!IntersectionObserver) {\n return undefined;\n }\n\n return observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (!listeners.has(entry.target)) {\n return;\n }\n\n var cb = listeners.get(entry.target);\n\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n observer.unobserve(entry.target);\n listeners[\"delete\"](entry.target);\n cb();\n }\n });\n }, {\n rootMargin: '200px'\n });\n}\n\nvar listenToIntersections = function listenToIntersections(el, cb) {\n var observer = getObserver();\n\n if (!observer) {\n return function () {};\n }\n\n observer.observe(el);\n listeners.set(el, cb);\n return function () {\n try {\n observer.unobserve(el);\n } catch (err) {\n console.error(err);\n }\n\n listeners[\"delete\"](el);\n };\n};\n\nvar Link = /*#__PURE__*/function (_react$Component) {\n _inherits(Link, _react$Component);\n\n var _super = _createSuper(Link);\n\n function Link(props) {\n var _this;\n\n _classCallCheck(this, Link);\n\n _this = _super.call(this, props);\n _this.p = void 0;\n\n _this.cleanUpListeners = function () {};\n\n _this.formatUrls = memoizedFormatUrl(function (href, asHref) {\n return {\n href: (0, _router2.addBasePath)(formatUrl(href)),\n as: asHref ? (0, _router2.addBasePath)(formatUrl(asHref)) : asHref\n };\n });\n\n _this.linkClicked = function (e) {\n var _e$currentTarget = e.currentTarget,\n nodeName = _e$currentTarget.nodeName,\n target = _e$currentTarget.target;\n\n if (nodeName === 'A' && (target && target !== '_self' || e.metaKey || e.ctrlKey || e.shiftKey || e.nativeEvent && e.nativeEvent.which === 2)) {\n // ignore click for new tab / new window behavior\n return;\n }\n\n var _this$formatUrls = _this.formatUrls(_this.props.href, _this.props.as),\n href = _this$formatUrls.href,\n as = _this$formatUrls.as;\n\n if (!isLocal(href)) {\n // ignore click if it's outside our scope (e.g. https://google.com)\n return;\n }\n\n var pathname = window.location.pathname;\n href = (0, _url.resolve)(pathname, href);\n as = as ? (0, _url.resolve)(pathname, as) : href;\n e.preventDefault(); // avoid scroll for urls with anchor refs\n\n var scroll = _this.props.scroll;\n\n if (scroll == null) {\n scroll = as.indexOf('#') < 0;\n } // replace state instead of push if prop is present\n\n\n _router[\"default\"][_this.props.replace ? 'replace' : 'push'](href, as, {\n shallow: _this.props.shallow\n }).then(function (success) {\n if (!success) return;\n\n if (scroll) {\n window.scrollTo(0, 0);\n document.body.focus();\n }\n });\n };\n\n if (true) {\n if (props.prefetch) {\n console.warn('Next.js auto-prefetches automatically based on viewport. The prefetch attribute is no longer needed. More: https://err.sh/zeit/next.js/prefetch-true-deprecated');\n }\n }\n\n _this.p = props.prefetch !== false;\n return _this;\n }\n\n _createClass(Link, [{\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.cleanUpListeners();\n }\n }, {\n key: \"getPaths\",\n value: function getPaths() {\n var pathname = window.location.pathname;\n\n var _this$formatUrls2 = this.formatUrls(this.props.href, this.props.as),\n parsedHref = _this$formatUrls2.href,\n parsedAs = _this$formatUrls2.as;\n\n var resolvedHref = (0, _url.resolve)(pathname, parsedHref);\n return [resolvedHref, parsedAs ? (0, _url.resolve)(pathname, parsedAs) : resolvedHref];\n }\n }, {\n key: \"handleRef\",\n value: function handleRef(ref) {\n var _this2 = this;\n\n if (this.p && IntersectionObserver && ref && ref.tagName) {\n this.cleanUpListeners();\n var isPrefetched = prefetched[this.getPaths().join( // Join on an invalid URI character\n '%')];\n\n if (!isPrefetched) {\n this.cleanUpListeners = listenToIntersections(ref, function () {\n _this2.prefetch();\n });\n }\n }\n } // The function is memoized so that no extra lifecycles are needed\n // as per https://reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.html\n\n }, {\n key: \"prefetch\",\n value: function prefetch(options) {\n if (!this.p || false) return; // Prefetch the JSON page if asked (only in the client)\n\n var paths = this.getPaths(); // We need to handle a prefetch error here since we may be\n // loading with priority which can reject but we don't\n // want to force navigation since this is only a prefetch\n\n _router[\"default\"].prefetch(paths[\n /* href */\n 0], paths[\n /* asPath */\n 1], options)[\"catch\"](function (err) {\n if (true) {\n // rethrow to show invalid URL errors\n throw err;\n }\n });\n\n prefetched[paths.join( // Join on an invalid URI character\n '%')] = true;\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n\n var children = this.props.children;\n\n var _this$formatUrls3 = this.formatUrls(this.props.href, this.props.as),\n href = _this$formatUrls3.href,\n as = _this$formatUrls3.as; // Deprecated. Warning shown by propType check. If the children provided is a string (<Link>example</Link>) we wrap it in an <a> tag\n\n\n if (typeof children === 'string') {\n children = _react[\"default\"].createElement(\"a\", null, children);\n } // This will return the first child, if multiple are provided it will throw an error\n\n\n var child = _react.Children.only(children);\n\n var props = {\n ref: function ref(el) {\n _this3.handleRef(el);\n\n if (child && typeof child === 'object' && child.ref) {\n if (typeof child.ref === 'function') child.ref(el);else if (typeof child.ref === 'object') {\n child.ref.current = el;\n }\n }\n },\n onMouseEnter: function onMouseEnter(e) {\n if (child.props && typeof child.props.onMouseEnter === 'function') {\n child.props.onMouseEnter(e);\n }\n\n _this3.prefetch({\n priority: true\n });\n },\n onClick: function onClick(e) {\n if (child.props && typeof child.props.onClick === 'function') {\n child.props.onClick(e);\n }\n\n if (!e.defaultPrevented) {\n _this3.linkClicked(e);\n }\n }\n }; // If child is an <a> tag and doesn't have a href attribute, or if the 'passHref' property is\n // defined, we specify the current 'href', so that repetition is not needed by the user\n\n if (this.props.passHref || child.type === 'a' && !('href' in child.props)) {\n props.href = as || href;\n } // Add the ending slash to the paths. So, we can serve the\n // \"<page>/index.html\" directly.\n\n\n if (process.env.__NEXT_EXPORT_TRAILING_SLASH) {\n var rewriteUrlForNextExport = require('../next-server/lib/router/rewrite-url-for-export').rewriteUrlForNextExport;\n\n if (props.href && typeof __NEXT_DATA__ !== 'undefined' && __NEXT_DATA__.nextExport) {\n props.href = rewriteUrlForNextExport(props.href);\n }\n }\n\n return _react[\"default\"].cloneElement(child, props);\n }\n }]);\n\n return Link;\n}(_react.Component);\n\nif (true) {\n var warn = (0, _utils.execOnce)(console.error); // This module gets removed by webpack.IgnorePlugin\n\n var PropTypes = require('prop-types');\n\n var exact = require('prop-types-exact'); // @ts-ignore the property is supported, when declaring it on the class it outputs an extra bit of code which is not needed.\n\n\n Link.propTypes = exact({\n href: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,\n as: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n prefetch: PropTypes.bool,\n replace: PropTypes.bool,\n shallow: PropTypes.bool,\n passHref: PropTypes.bool,\n scroll: PropTypes.bool,\n children: PropTypes.oneOfType([PropTypes.element, function (props, propName) {\n var value = props[propName];\n\n if (typeof value === 'string') {\n warn(\"Warning: You're using a string directly inside <Link>. This usage has been deprecated. Please add an <a> tag as child of <Link>\");\n }\n\n return null;\n }]).isRequired\n });\n}\n\nvar _default = Link;\nexports[\"default\"] = _default;","map":{"version":3,"sources":["/data/projects/react/rpdata-frontend2/node_modules/next/dist/client/link.js"],"names":["_interopRequireDefault","require","_interopRequireWildcard","exports","__esModule","_react","_url","_utils","_router","_router2","isLocal","href","url","parse","origin","getLocationOrigin","host","protocol","memoizedFormatUrl","formatFunc","lastHref","lastAs","lastResult","as","result","formatUrl","formatWithValidation","observer","listeners","Map","IntersectionObserver","window","prefetched","getObserver","undefined","entries","forEach","entry","has","target","cb","get","isIntersecting","intersectionRatio","unobserve","rootMargin","listenToIntersections","el","observe","set","err","console","error","Link","props","p","cleanUpListeners","formatUrls","asHref","addBasePath","linkClicked","e","currentTarget","nodeName","metaKey","ctrlKey","shiftKey","nativeEvent","which","pathname","location","resolve","preventDefault","scroll","indexOf","replace","shallow","then","success","scrollTo","document","body","focus","prefetch","warn","parsedHref","parsedAs","resolvedHref","ref","tagName","isPrefetched","getPaths","join","options","paths","children","createElement","child","Children","only","handleRef","current","onMouseEnter","priority","onClick","defaultPrevented","passHref","type","process","env","__NEXT_EXPORT_TRAILING_SLASH","rewriteUrlForNextExport","__NEXT_DATA__","nextExport","cloneElement","Component","execOnce","PropTypes","exact","propTypes","oneOfType","string","object","isRequired","bool","element","propName","value","_default"],"mappings":"AAAA;;;;;;;;;;;;;;;;AAAa,IAAIA,sBAAsB,GAACC,OAAO,CAAC,8CAAD,CAAlC;;AAAmF,IAAIC,uBAAuB,GAACD,OAAO,CAAC,+CAAD,CAAnC;;AAAqFE,OAAO,CAACC,UAAR,GAAmB,IAAnB;AAAwBD,OAAO,WAAP,GAAgB,KAAK,CAArB;;AAAuB,IAAIE,MAAM,GAACH,uBAAuB,CAACD,OAAO,CAAC,OAAD,CAAR,CAAlC;;AAAqD,IAAIK,IAAI,GAACL,OAAO,CAAC,KAAD,CAAhB;;AAAwB,IAAIM,MAAM,GAACN,OAAO,CAAC,0BAAD,CAAlB;;AAA+C,IAAIO,OAAO,GAACR,sBAAsB,CAACC,OAAO,CAAC,UAAD,CAAR,CAAlC;;AAAwD,IAAIQ,QAAQ,GAACR,OAAO,CAAC,kCAAD,CAApB;;AAAyD,SAASS,OAAT,CAAiBC,IAAjB,EAAsB;AAAC,MAAIC,GAAG,GAAC,CAAC,GAAEN,IAAI,CAACO,KAAR,EAAeF,IAAf,EAAoB,KAApB,EAA0B,IAA1B,CAAR;AAAwC,MAAIG,MAAM,GAAC,CAAC,GAAER,IAAI,CAACO,KAAR,EAAe,CAAC,GAAEN,MAAM,CAACQ,iBAAV,GAAf,EAA8C,KAA9C,EAAoD,IAApD,CAAX;AAAqE,SAAM,CAACH,GAAG,CAACI,IAAL,IAAWJ,GAAG,CAACK,QAAJ,KAAeH,MAAM,CAACG,QAAtB,IAAgCL,GAAG,CAACI,IAAJ,KAAWF,MAAM,CAACE,IAAnE;AAAyE;;AAAA,SAASE,iBAAT,CAA2BC,UAA3B,EAAsC;AAAC,MAAIC,QAAQ,GAAC,IAAb;AAAkB,MAAIC,MAAM,GAAC,IAAX;AAAgB,MAAIC,UAAU,GAAC,IAAf;AAAoB,SAAM,UAACX,IAAD,EAAMY,EAAN,EAAW;AAAC,QAAGD,UAAU,IAAEX,IAAI,KAAGS,QAAnB,IAA6BG,EAAE,KAAGF,MAArC,EAA4C;AAAC,aAAOC,UAAP;AAAmB;;AAAA,QAAIE,MAAM,GAACL,UAAU,CAACR,IAAD,EAAMY,EAAN,CAArB;AAA+BH,IAAAA,QAAQ,GAACT,IAAT;AAAcU,IAAAA,MAAM,GAACE,EAAP;AAAUD,IAAAA,UAAU,GAACE,MAAX;AAAkB,WAAOA,MAAP;AAAe,GAA1K;AAA4K;;AAAA,SAASC,SAAT,CAAmBb,GAAnB,EAAuB;AAAC,SAAOA,GAAG,IAAE,OAAOA,GAAP,KAAa,QAAlB,GAA2B,CAAC,GAAEL,MAAM,CAACmB,oBAAV,EAAgCd,GAAhC,CAA3B,GAAgEA,GAAvE;AAA4E;;AAAA,IAAIe,QAAJ;AAAa,IAAIC,SAAS,GAAC,IAAIC,GAAJ,EAAd;AAAwB,IAAIC,oBAAoB,GAAC,OAA4BC,MAAM,CAACD,oBAAnC,GAAwD,IAAjF;AAAsF,IAAIE,UAAU,GAAC,EAAf;;AAAkB,SAASC,WAAT,GAAsB;AAAC;AAC/qC,MAAGN,QAAH,EAAY;AAAC,WAAOA,QAAP;AAAiB,GADgpC,CAChpC;;;AAC9B,MAAG,CAACG,oBAAJ,EAAyB;AAAC,WAAOI,SAAP;AAAkB;;AAAA,SAAOP,QAAQ,GAAC,IAAIG,oBAAJ,CAAyB,UAAAK,OAAO,EAAE;AAACA,IAAAA,OAAO,CAACC,OAAR,CAAgB,UAAAC,KAAK,EAAE;AAAC,UAAG,CAACT,SAAS,CAACU,GAAV,CAAcD,KAAK,CAACE,MAApB,CAAJ,EAAgC;AAAC;AAAQ;;AAAA,UAAIC,EAAE,GAACZ,SAAS,CAACa,GAAV,CAAcJ,KAAK,CAACE,MAApB,CAAP;;AAAmC,UAAGF,KAAK,CAACK,cAAN,IAAsBL,KAAK,CAACM,iBAAN,GAAwB,CAAjD,EAAmD;AAAChB,QAAAA,QAAQ,CAACiB,SAAT,CAAmBP,KAAK,CAACE,MAAzB;AAAiCX,QAAAA,SAAS,UAAT,CAAiBS,KAAK,CAACE,MAAvB;AAA+BC,QAAAA,EAAE;AAAI;AAAC,KAA/N;AAAkO,GAArQ,EAAsQ;AAACK,IAAAA,UAAU,EAAC;AAAZ,GAAtQ,CAAhB;AAA6S;;AAAA,IAAIC,qBAAqB,GAAC,SAAtBA,qBAAsB,CAACC,EAAD,EAAIP,EAAJ,EAAS;AAAC,MAAIb,QAAQ,GAACM,WAAW,EAAxB;;AAA2B,MAAG,CAACN,QAAJ,EAAa;AAAC,WAAM,YAAI,CAAE,CAAZ;AAAc;;AAAAA,EAAAA,QAAQ,CAACqB,OAAT,CAAiBD,EAAjB;AAAqBnB,EAAAA,SAAS,CAACqB,GAAV,CAAcF,EAAd,EAAiBP,EAAjB;AAAqB,SAAM,YAAI;AAAC,QAAG;AAACb,MAAAA,QAAQ,CAACiB,SAAT,CAAmBG,EAAnB;AAAwB,KAA5B,CAA4B,OAAMG,GAAN,EAAU;AAACC,MAAAA,OAAO,CAACC,KAAR,CAAcF,GAAd;AAAoB;;AAAAtB,IAAAA,SAAS,UAAT,CAAiBmB,EAAjB;AAAsB,GAA5F;AAA8F,CAAnO;;IAA0OM,I;;;;;AAA8B,gBAAYC,KAAZ,EAAkB;AAAA;;AAAA;;AAAC,8BAAMA,KAAN;AAAa,UAAKC,CAAL,GAAO,KAAK,CAAZ;;AAAc,UAAKC,gBAAL,GAAsB,YAAI,CAAE,CAA5B;;AAA6B,UAAKC,UAAL,GAAgBvC,iBAAiB,CAAC,UAACP,IAAD,EAAM+C,MAAN,EAAe;AAAC,aAAM;AAAC/C,QAAAA,IAAI,EAAC,CAAC,GAAEF,QAAQ,CAACkD,WAAZ,EAAyBlC,SAAS,CAACd,IAAD,CAAlC,CAAN;AAAgDY,QAAAA,EAAE,EAACmC,MAAM,GAAC,CAAC,GAAEjD,QAAQ,CAACkD,WAAZ,EAAyBlC,SAAS,CAACiC,MAAD,CAAlC,CAAD,GAA6CA;AAAtG,OAAN;AAAqH,KAAtI,CAAjC;;AAAyK,UAAKE,WAAL,GAAiB,UAAAC,CAAC,EAAE;AAAA,6BAAsBA,CAAC,CAACC,aAAxB;AAAA,UAAKC,QAAL,oBAAKA,QAAL;AAAA,UAAcxB,MAAd,oBAAcA,MAAd;;AAAsC,UAAGwB,QAAQ,KAAG,GAAX,KAAiBxB,MAAM,IAAEA,MAAM,KAAG,OAAjB,IAA0BsB,CAAC,CAACG,OAA5B,IAAqCH,CAAC,CAACI,OAAvC,IAAgDJ,CAAC,CAACK,QAAlD,IAA4DL,CAAC,CAACM,WAAF,IAAeN,CAAC,CAACM,WAAF,CAAcC,KAAd,KAAsB,CAAlH,CAAH,EAAwH;AAAC;AACxgC;AAAQ;;AADi2B,6BACp1B,MAAKX,UAAL,CAAgB,MAAKH,KAAL,CAAW3C,IAA3B,EAAgC,MAAK2C,KAAL,CAAW/B,EAA3C,CADo1B;AAAA,UAC71BZ,IAD61B,oBAC71BA,IAD61B;AAAA,UACx1BY,EADw1B,oBACx1BA,EADw1B;;AACryB,UAAG,CAACb,OAAO,CAACC,IAAD,CAAX,EAAkB;AAAC;AACvF;AAAQ;;AAFi2B,UAE71B0D,QAF61B,GAEn1BtC,MAAM,CAACuC,QAF40B,CAE71BD,QAF61B;AAEn0B1D,MAAAA,IAAI,GAAC,CAAC,GAAEL,IAAI,CAACiE,OAAR,EAAiBF,QAAjB,EAA0B1D,IAA1B,CAAL;AAAqCY,MAAAA,EAAE,GAACA,EAAE,GAAC,CAAC,GAAEjB,IAAI,CAACiE,OAAR,EAAiBF,QAAjB,EAA0B9C,EAA1B,CAAD,GAA+BZ,IAApC;AAAyCkD,MAAAA,CAAC,CAACW,cAAF,GAFqvB,CAEluB;;AAFkuB,UAGr2BC,MAHq2B,GAG71B,MAAKnB,KAHw1B,CAGr2BmB,MAHq2B;;AAGl1B,UAAGA,MAAM,IAAE,IAAX,EAAgB;AAACA,QAAAA,MAAM,GAAClD,EAAE,CAACmD,OAAH,CAAW,GAAX,IAAgB,CAAvB;AAA0B,OAHuyB,CAGvyB;;;AAClElE,MAAAA,OAAO,WAAP,CAAgB,MAAK8C,KAAL,CAAWqB,OAAX,GAAmB,SAAnB,GAA6B,MAA7C,EAAqDhE,IAArD,EAA0DY,EAA1D,EAA6D;AAACqD,QAAAA,OAAO,EAAC,MAAKtB,KAAL,CAAWsB;AAApB,OAA7D,EAA2FC,IAA3F,CAAgG,UAAAC,OAAO,EAAE;AAAC,YAAG,CAACA,OAAJ,EAAY;;AAAO,YAAGL,MAAH,EAAU;AAAC1C,UAAAA,MAAM,CAACgD,QAAP,CAAgB,CAAhB,EAAkB,CAAlB;AAAqBC,UAAAA,QAAQ,CAACC,IAAT,CAAcC,KAAd;AAAuB;AAAC,OAArL;AAAwL,KAJ6pB;;AAI5pB,cAAuC;AAAC,UAAG5B,KAAK,CAAC6B,QAAT,EAAkB;AAAChC,QAAAA,OAAO,CAACiC,IAAR,CAAa,iKAAb;AAAiL;AAAC;;AAAA,UAAK7B,CAAL,GAAOD,KAAK,CAAC6B,QAAN,KAAiB,KAAxB;AAJ6M;AAI9K;;;;2CAAsB;AAAC,WAAK3B,gBAAL;AAAyB;;;+BAAU;AAAA,UAAKa,QAAL,GAAetC,MAAM,CAACuC,QAAtB,CAAKD,QAAL;;AAAA,8BAAgE,KAAKZ,UAAL,CAAgB,KAAKH,KAAL,CAAW3C,IAA3B,EAAgC,KAAK2C,KAAL,CAAW/B,EAA3C,CAAhE;AAAA,UAAwC8D,UAAxC,qBAAmC1E,IAAnC;AAAA,UAAsD2E,QAAtD,qBAAmD/D,EAAnD;;AAA+G,UAAIgE,YAAY,GAAC,CAAC,GAAEjF,IAAI,CAACiE,OAAR,EAAiBF,QAAjB,EAA0BgB,UAA1B,CAAjB;AAAuD,aAAM,CAACE,YAAD,EAAcD,QAAQ,GAAC,CAAC,GAAEhF,IAAI,CAACiE,OAAR,EAAiBF,QAAjB,EAA0BiB,QAA1B,CAAD,GAAqCC,YAA3D,CAAN;AAAgF;;;8BAAUC,G,EAAI;AAAA;;AAAC,UAAG,KAAKjC,CAAL,IAAQzB,oBAAR,IAA8B0D,GAA9B,IAAmCA,GAAG,CAACC,OAA1C,EAAkD;AAAC,aAAKjC,gBAAL;AAAwB,YAAIkC,YAAY,GAAC1D,UAAU,CAAC,KAAK2D,QAAL,GAAgBC,IAAhB,EAAqB;AACh4B,WAD22B,CAAD,CAA3B;;AACz0B,YAAG,CAACF,YAAJ,EAAiB;AAAC,eAAKlC,gBAAL,GAAsBV,qBAAqB,CAAC0C,GAAD,EAAK,YAAI;AAAC,YAAA,MAAI,CAACL,QAAL;AAAiB,WAA3B,CAA3C;AAAyE;AAAC;AAAC,K,CAAA;AACnG;;;;6BACSU,O,EAAQ;AAAC,UAAG,CAAC,KAAKtC,CAAN,SAAH,EAAwC,OAAzC,CAAgD;;AACjE,UAAIuC,KAAK,GAAC,KAAKH,QAAL,EAAV,CADiB,CACS;AAC1B;AACA;;AACAnF,MAAAA,OAAO,WAAP,CAAgB2E,QAAhB,CAAyBW,KAAK;AAAC;AAAU,OAAX,CAA9B,EAA4CA,KAAK;AAAC;AAAY,OAAb,CAAjD,EAAiED,OAAjE,WAAgF,UAAA3C,GAAG,EAAE;AAAC,kBAAuC;AAAC;AAC9H,gBAAMA,GAAN;AAAW;AAAC,OADZ;;AACclB,MAAAA,UAAU,CAAC8D,KAAK,CAACF,IAAN,EAAW;AACpC,SADyB,CAAD,CAAV,GACR,IADQ;AACF;;;6BAAQ;AAAA;;AAAA,UAAKG,QAAL,GAAe,KAAKzC,KAApB,CAAKyC,QAAL;;AAAA,8BAAuC,KAAKtC,UAAL,CAAgB,KAAKH,KAAL,CAAW3C,IAA3B,EAAgC,KAAK2C,KAAL,CAAW/B,EAA3C,CAAvC;AAAA,UAA8BZ,IAA9B,qBAA8BA,IAA9B;AAAA,UAAmCY,EAAnC,qBAAmCA,EAAnC,EAAsF;;;AAC1G,UAAG,OAAOwE,QAAP,KAAkB,QAArB,EAA8B;AAACA,QAAAA,QAAQ,GAAC1F,MAAM,WAAN,CAAe2F,aAAf,CAA6B,GAA7B,EAAiC,IAAjC,EAAsCD,QAAtC,CAAT;AAA0D,OADrE,CACqE;;;AACzF,UAAIE,KAAK,GAAC5F,MAAM,CAAC6F,QAAP,CAAgBC,IAAhB,CAAqBJ,QAArB,CAAV;;AAAyC,UAAIzC,KAAK,GAAC;AAACkC,QAAAA,GAAG,EAAC,aAAAzC,EAAE,EAAE;AAAC,UAAA,MAAI,CAACqD,SAAL,CAAerD,EAAf;;AAAmB,cAAGkD,KAAK,IAAE,OAAOA,KAAP,KAAe,QAAtB,IAAgCA,KAAK,CAACT,GAAzC,EAA6C;AAAC,gBAAG,OAAOS,KAAK,CAACT,GAAb,KAAmB,UAAtB,EAAiCS,KAAK,CAACT,GAAN,CAAUzC,EAAV,EAAjC,KAAoD,IAAG,OAAOkD,KAAK,CAACT,GAAb,KAAmB,QAAtB,EAA+B;AAACS,cAAAA,KAAK,CAACT,GAAN,CAAUa,OAAV,GAAkBtD,EAAlB;AAAsB;AAAC;AAAC,SAAvL;AAAwLuD,QAAAA,YAAY,EAAC,sBAAAzC,CAAC,EAAE;AAAC,cAAGoC,KAAK,CAAC3C,KAAN,IAAa,OAAO2C,KAAK,CAAC3C,KAAN,CAAYgD,YAAnB,KAAkC,UAAlD,EAA6D;AAACL,YAAAA,KAAK,CAAC3C,KAAN,CAAYgD,YAAZ,CAAyBzC,CAAzB;AAA6B;;AAAA,UAAA,MAAI,CAACsB,QAAL,CAAc;AAACoB,YAAAA,QAAQ,EAAC;AAAV,WAAd;AAAgC,SAApU;AAAqUC,QAAAA,OAAO,EAAC,iBAAA3C,CAAC,EAAE;AAAC,cAAGoC,KAAK,CAAC3C,KAAN,IAAa,OAAO2C,KAAK,CAAC3C,KAAN,CAAYkD,OAAnB,KAA6B,UAA7C,EAAwD;AAACP,YAAAA,KAAK,CAAC3C,KAAN,CAAYkD,OAAZ,CAAoB3C,CAApB;AAAwB;;AAAA,cAAG,CAACA,CAAC,CAAC4C,gBAAN,EAAuB;AAAC,YAAA,MAAI,CAAC7C,WAAL,CAAiBC,CAAjB;AAAqB;AAAC;AAAhd,OAAV,CAFrB,CAEif;AACrgB;;AACA,UAAG,KAAKP,KAAL,CAAWoD,QAAX,IAAqBT,KAAK,CAACU,IAAN,KAAa,GAAb,IAAkB,EAAE,UAASV,KAAK,CAAC3C,KAAjB,CAA1C,EAAkE;AAACA,QAAAA,KAAK,CAAC3C,IAAN,GAAWY,EAAE,IAAEZ,IAAf;AAAqB,OAJpE,CAIoE;AACxF;;;AACA,UAAGiG,OAAO,CAACC,GAAR,CAAYC,4BAAf,EAA4C;AAAC,YAAIC,uBAAuB,GAAC9G,OAAO,CAAC,kDAAD,CAAP,CAA4D8G,uBAAxF;;AAAgH,YAAGzD,KAAK,CAAC3C,IAAN,IAAY,OAAOqG,aAAP,KAAuB,WAAnC,IAAgDA,aAAa,CAACC,UAAjE,EAA4E;AAAC3D,UAAAA,KAAK,CAAC3C,IAAN,GAAWoG,uBAAuB,CAACzD,KAAK,CAAC3C,IAAP,CAAlC;AAAgD;AAAC;;AAAA,aAAON,MAAM,WAAN,CAAe6G,YAAf,CAA4BjB,KAA5B,EAAkC3C,KAAlC,CAAP;AAAiD;;;;EAnBoQjD,MAAM,CAAC8G,S;;AAmB1Q,UAAwC;AAAC,MAAI/B,IAAI,GAAC,CAAC,GAAE7E,MAAM,CAAC6G,QAAV,EAAoBjE,OAAO,CAACC,KAA5B,CAAT,CAAD,CAA6C;;AACla,MAAIiE,SAAS,GAACpH,OAAO,CAAC,YAAD,CAArB;;AAAoC,MAAIqH,KAAK,GAACrH,OAAO,CAAC,kBAAD,CAAjB,CADiV,CAC3S;;;AAC1EoD,EAAAA,IAAI,CAACkE,SAAL,GAAeD,KAAK,CAAC;AAAC3G,IAAAA,IAAI,EAAC0G,SAAS,CAACG,SAAV,CAAoB,CAACH,SAAS,CAACI,MAAX,EAAkBJ,SAAS,CAACK,MAA5B,CAApB,EAAyDC,UAA/D;AAA0EpG,IAAAA,EAAE,EAAC8F,SAAS,CAACG,SAAV,CAAoB,CAACH,SAAS,CAACI,MAAX,EAAkBJ,SAAS,CAACK,MAA5B,CAApB,CAA7E;AAAsIvC,IAAAA,QAAQ,EAACkC,SAAS,CAACO,IAAzJ;AAA8JjD,IAAAA,OAAO,EAAC0C,SAAS,CAACO,IAAhL;AAAqLhD,IAAAA,OAAO,EAACyC,SAAS,CAACO,IAAvM;AAA4MlB,IAAAA,QAAQ,EAACW,SAAS,CAACO,IAA/N;AAAoOnD,IAAAA,MAAM,EAAC4C,SAAS,CAACO,IAArP;AAA0P7B,IAAAA,QAAQ,EAACsB,SAAS,CAACG,SAAV,CAAoB,CAACH,SAAS,CAACQ,OAAX,EAAmB,UAACvE,KAAD,EAAOwE,QAAP,EAAkB;AAAC,UAAIC,KAAK,GAACzE,KAAK,CAACwE,QAAD,CAAf;;AAA0B,UAAG,OAAOC,KAAP,KAAe,QAAlB,EAA2B;AAAC3C,QAAAA,IAAI,CAAC,iIAAD,CAAJ;AAAyI;;AAAA,aAAO,IAAP;AAAa,KAAlP,CAApB,EAAyQuC;AAA5gB,GAAD,CAApB;AAA+iB;;AAAA,IAAIK,QAAQ,GAAC3E,IAAb;AAAkBlD,OAAO,WAAP,GAAgB6H,QAAhB","sourcesContent":["\"use strict\";var _interopRequireDefault=require(\"@babel/runtime/helpers/interopRequireDefault\");var _interopRequireWildcard=require(\"@babel/runtime/helpers/interopRequireWildcard\");exports.__esModule=true;exports.default=void 0;var _react=_interopRequireWildcard(require(\"react\"));var _url=require(\"url\");var _utils=require(\"../next-server/lib/utils\");var _router=_interopRequireDefault(require(\"./router\"));var _router2=require(\"../next-server/lib/router/router\");function isLocal(href){var url=(0,_url.parse)(href,false,true);var origin=(0,_url.parse)((0,_utils.getLocationOrigin)(),false,true);return!url.host||url.protocol===origin.protocol&&url.host===origin.host;}function memoizedFormatUrl(formatFunc){var lastHref=null;var lastAs=null;var lastResult=null;return(href,as)=>{if(lastResult&&href===lastHref&&as===lastAs){return lastResult;}var result=formatFunc(href,as);lastHref=href;lastAs=as;lastResult=result;return result;};}function formatUrl(url){return url&&typeof url==='object'?(0,_utils.formatWithValidation)(url):url;}var observer;var listeners=new Map();var IntersectionObserver=typeof window!=='undefined'?window.IntersectionObserver:null;var prefetched={};function getObserver(){// Return shared instance of IntersectionObserver if already created\nif(observer){return observer;}// Only create shared IntersectionObserver if supported in browser\nif(!IntersectionObserver){return undefined;}return observer=new IntersectionObserver(entries=>{entries.forEach(entry=>{if(!listeners.has(entry.target)){return;}var cb=listeners.get(entry.target);if(entry.isIntersecting||entry.intersectionRatio>0){observer.unobserve(entry.target);listeners.delete(entry.target);cb();}});},{rootMargin:'200px'});}var listenToIntersections=(el,cb)=>{var observer=getObserver();if(!observer){return()=>{};}observer.observe(el);listeners.set(el,cb);return()=>{try{observer.unobserve(el);}catch(err){console.error(err);}listeners.delete(el);};};class Link extends _react.Component{constructor(props){super(props);this.p=void 0;this.cleanUpListeners=()=>{};this.formatUrls=memoizedFormatUrl((href,asHref)=>{return{href:(0,_router2.addBasePath)(formatUrl(href)),as:asHref?(0,_router2.addBasePath)(formatUrl(asHref)):asHref};});this.linkClicked=e=>{var{nodeName,target}=e.currentTarget;if(nodeName==='A'&&(target&&target!=='_self'||e.metaKey||e.ctrlKey||e.shiftKey||e.nativeEvent&&e.nativeEvent.which===2)){// ignore click for new tab / new window behavior\nreturn;}var{href,as}=this.formatUrls(this.props.href,this.props.as);if(!isLocal(href)){// ignore click if it's outside our scope (e.g. https://google.com)\nreturn;}var{pathname}=window.location;href=(0,_url.resolve)(pathname,href);as=as?(0,_url.resolve)(pathname,as):href;e.preventDefault();// avoid scroll for urls with anchor refs\nvar{scroll}=this.props;if(scroll==null){scroll=as.indexOf('#')<0;}// replace state instead of push if prop is present\n_router.default[this.props.replace?'replace':'push'](href,as,{shallow:this.props.shallow}).then(success=>{if(!success)return;if(scroll){window.scrollTo(0,0);document.body.focus();}});};if(process.env.NODE_ENV!=='production'){if(props.prefetch){console.warn('Next.js auto-prefetches automatically based on viewport. The prefetch attribute is no longer needed. More: https://err.sh/zeit/next.js/prefetch-true-deprecated');}}this.p=props.prefetch!==false;}componentWillUnmount(){this.cleanUpListeners();}getPaths(){var{pathname}=window.location;var{href:parsedHref,as:parsedAs}=this.formatUrls(this.props.href,this.props.as);var resolvedHref=(0,_url.resolve)(pathname,parsedHref);return[resolvedHref,parsedAs?(0,_url.resolve)(pathname,parsedAs):resolvedHref];}handleRef(ref){if(this.p&&IntersectionObserver&&ref&&ref.tagName){this.cleanUpListeners();var isPrefetched=prefetched[this.getPaths().join(// Join on an invalid URI character\n'%')];if(!isPrefetched){this.cleanUpListeners=listenToIntersections(ref,()=>{this.prefetch();});}}}// The function is memoized so that no extra lifecycles are needed\n// as per https://reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.html\nprefetch(options){if(!this.p||typeof window==='undefined')return;// Prefetch the JSON page if asked (only in the client)\nvar paths=this.getPaths();// We need to handle a prefetch error here since we may be\n// loading with priority which can reject but we don't\n// want to force navigation since this is only a prefetch\n_router.default.prefetch(paths[/* href */0],paths[/* asPath */1],options).catch(err=>{if(process.env.NODE_ENV!=='production'){// rethrow to show invalid URL errors\nthrow err;}});prefetched[paths.join(// Join on an invalid URI character\n'%')]=true;}render(){var{children}=this.props;var{href,as}=this.formatUrls(this.props.href,this.props.as);// Deprecated. Warning shown by propType check. If the children provided is a string (<Link>example</Link>) we wrap it in an <a> tag\nif(typeof children==='string'){children=_react.default.createElement(\"a\",null,children);}// This will return the first child, if multiple are provided it will throw an error\nvar child=_react.Children.only(children);var props={ref:el=>{this.handleRef(el);if(child&&typeof child==='object'&&child.ref){if(typeof child.ref==='function')child.ref(el);else if(typeof child.ref==='object'){child.ref.current=el;}}},onMouseEnter:e=>{if(child.props&&typeof child.props.onMouseEnter==='function'){child.props.onMouseEnter(e);}this.prefetch({priority:true});},onClick:e=>{if(child.props&&typeof child.props.onClick==='function'){child.props.onClick(e);}if(!e.defaultPrevented){this.linkClicked(e);}}};// If child is an <a> tag and doesn't have a href attribute, or if the 'passHref' property is\n// defined, we specify the current 'href', so that repetition is not needed by the user\nif(this.props.passHref||child.type==='a'&&!('href'in child.props)){props.href=as||href;}// Add the ending slash to the paths. So, we can serve the\n// \"<page>/index.html\" directly.\nif(process.env.__NEXT_EXPORT_TRAILING_SLASH){var rewriteUrlForNextExport=require('../next-server/lib/router/rewrite-url-for-export').rewriteUrlForNextExport;if(props.href&&typeof __NEXT_DATA__!=='undefined'&&__NEXT_DATA__.nextExport){props.href=rewriteUrlForNextExport(props.href);}}return _react.default.cloneElement(child,props);}}if(process.env.NODE_ENV==='development'){var warn=(0,_utils.execOnce)(console.error);// This module gets removed by webpack.IgnorePlugin\nvar PropTypes=require('prop-types');var exact=require('prop-types-exact');// @ts-ignore the property is supported, when declaring it on the class it outputs an extra bit of code which is not needed.\nLink.propTypes=exact({href:PropTypes.oneOfType([PropTypes.string,PropTypes.object]).isRequired,as:PropTypes.oneOfType([PropTypes.string,PropTypes.object]),prefetch:PropTypes.bool,replace:PropTypes.bool,shallow:PropTypes.bool,passHref:PropTypes.bool,scroll:PropTypes.bool,children:PropTypes.oneOfType([PropTypes.element,(props,propName)=>{var value=props[propName];if(typeof value==='string'){warn(\"Warning: You're using a string directly inside <Link>. This usage has been deprecated. Please add an <a> tag as child of <Link>\");}return null;}]).isRequired});}var _default=Link;exports.default=_default;"]},"metadata":{},"sourceType":"script"}