{"ast":null,"code":"\"use strict\";\n\nvar _regeneratorRuntime = require(\"@babel/runtime/regenerator\");\n\nvar _asyncToGenerator = require(\"@babel/runtime/helpers/asyncToGenerator\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports[\"default\"] = void 0;\n\nvar _router = _interopRequireDefault(require(\"next/router\"));\n\nvar _onDemandEntriesUtils = require(\"./on-demand-entries-utils\");\n\nvar _default = /*#__PURE__*/function () {\n  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {\n    var assetPrefix;\n    return _regeneratorRuntime.wrap(function _callee$(_context) {\n      while (1) {\n        switch (_context.prev = _context.next) {\n          case 0:\n            assetPrefix = _ref.assetPrefix;\n\n            _router[\"default\"].ready(function () {\n              _router[\"default\"].events.on('routeChangeComplete', _onDemandEntriesUtils.setupPing.bind(void 0, assetPrefix, function () {\n                return _router[\"default\"].pathname;\n              }));\n            });\n\n            (0, _onDemandEntriesUtils.setupPing)(assetPrefix, function () {\n              return _router[\"default\"].pathname;\n            }, _onDemandEntriesUtils.currentPage); // prevent HMR connection from being closed when running tests\n\n            if (!process.env.__NEXT_TEST_MODE) {\n              document.addEventListener('visibilitychange', function (_event) {\n                var state = document.visibilityState;\n\n                if (state === 'visible') {\n                  (0, _onDemandEntriesUtils.setupPing)(assetPrefix, function () {\n                    return _router[\"default\"].pathname;\n                  }, true);\n                } else {\n                  (0, _onDemandEntriesUtils.closePing)();\n                }\n              });\n              window.addEventListener('beforeunload', function () {\n                (0, _onDemandEntriesUtils.closePing)();\n              });\n            }\n\n          case 4:\n          case \"end\":\n            return _context.stop();\n        }\n      }\n    }, _callee);\n  }));\n\n  return function _default(_x) {\n    return _ref2.apply(this, arguments);\n  };\n}();\n\nexports[\"default\"] = _default;","map":{"version":3,"sources":["../../../client/dev/on-demand-entries-client.js"],"names":["Router","setupPing","currentPage","process","document","_event","state","window"],"mappings":";;;;;;;;;;;AAAA,IAAA,OAAA,GAAA,sBAAA,CAAA,OAAA,CAAA,aAAA,CAAA,CAAA;;AACA,IAAA,qBAAA,GAAA,OAAA,CAAA,2BAAA,CAAA;;;uEAEe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAA,WAAA,QAAA,WAAA;;AACbA,YAAAA,OAAAA,WAAAA,CAAAA,KAAAA,CAAa,YAAM;AACjBA,cAAAA,OAAAA,WAAAA,CAAAA,MAAAA,CAAAA,EAAAA,CAAAA,qBAAAA,EAEEC,qBAAAA,CAAAA,SAAAA,CAAAA,IAAAA,CAAAA,KAAAA,CAAAA,EAAAA,WAAAA,EAAkC;AAAA,uBAAMD,OAAAA,WAAAA,CAF1CA,QAEoC;AAAA,eAAlCC,CAFFD;AADFA,aAAAA;;AAOA,aAAA,GAAA,qBAAA,CAAA,SAAA,EAAA,WAAA,EAAuB;AAAA,qBAAMA,OAAAA,WAAAA,CAA7B,QAAuB;AAAA,aAAvB,EAA8CE,qBAAAA,CAA9C,WAAA,EARa,CAUb;;AACA,gBAAI,CAACC,OAAO,CAAPA,GAAAA,CAAL,gBAAA,EAAmC;AACjCC,cAAAA,QAAQ,CAARA,gBAAAA,CAAAA,kBAAAA,EAA+CC,UAAAA,MAAD,EAAY;AACxD,oBAAMC,KAAK,GAAGF,QAAQ,CAAtB,eAAA;;AACA,oBAAIE,KAAK,KAAT,SAAA,EAAyB;AACvB,mBAAA,GAAA,qBAAA,CAAA,SAAA,EAAA,WAAA,EAAuB;AAAA,2BAAMN,OAAAA,WAAAA,CAA7B,QAAuB;AAAA,mBAAvB,EAAA,IAAA;AADF,iBAAA,MAEO;AACL,mBAAA,GAAA,qBAAA,CAAA,SAAA;AAEH;AAPDI,eAAAA;AASAG,cAAAA,MAAM,CAANA,gBAAAA,CAAAA,cAAAA,EAAwC,YAAM;AAC5C,iBAAA,GAAA,qBAAA,CAAA,SAAA;AADFA,eAAAA;AAIH;;AAzBc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G","sourcesContent":["import Router from 'next/router'\nimport { setupPing, currentPage, closePing } from './on-demand-entries-utils'\n\nexport default async ({ assetPrefix }) => {\n  Router.ready(() => {\n    Router.events.on(\n      'routeChangeComplete',\n      setupPing.bind(this, assetPrefix, () => Router.pathname)\n    )\n  })\n\n  setupPing(assetPrefix, () => Router.pathname, currentPage)\n\n  // prevent HMR connection from being closed when running tests\n  if (!process.env.__NEXT_TEST_MODE) {\n    document.addEventListener('visibilitychange', (_event) => {\n      const state = document.visibilityState\n      if (state === 'visible') {\n        setupPing(assetPrefix, () => Router.pathname, true)\n      } else {\n        closePing()\n      }\n    })\n\n    window.addEventListener('beforeunload', () => {\n      closePing()\n    })\n  }\n}\n"]},"metadata":{},"sourceType":"script"}