{"ast":null,"code":"\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs2/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs2/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.useRouter = useRouter;\nexports.makePublicRouterInstance = makePublicRouterInstance;\nexports.createRouter = exports.withRouter = exports.default = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime-corejs2/helpers/extends\"));\n\nvar _defineProperty = _interopRequireDefault(require(\"@babel/runtime-corejs2/core-js/object/define-property\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _router2 = _interopRequireWildcard(require(\"../next-server/lib/router/router\"));\n\nexports.Router = _router2.default;\nexports.NextRouter = _router2.NextRouter;\n\nvar _routerContext = require(\"../next-server/lib/router-context\");\n\nvar _withRouter = _interopRequireDefault(require(\"./with-router\"));\n\nexports.withRouter = _withRouter.default;\n/* global window */\n\nvar singletonRouter = {\n  router: null,\n  // holds the actual router instance\n  readyCallbacks: [],\n\n  ready(cb) {\n    if (this.router) return cb();\n\n    if (false) {\n      this.readyCallbacks.push(cb);\n    }\n  }\n\n}; // Create public properties and methods of the router in the singletonRouter\n\nvar urlPropertyFields = ['pathname', 'route', 'query', 'asPath', 'components'];\nvar routerEvents = ['routeChangeStart', 'beforeHistoryChange', 'routeChangeComplete', 'routeChangeError', 'hashChangeStart', 'hashChangeComplete'];\nvar coreMethodFields = ['push', 'replace', 'reload', 'back', 'prefetch', 'beforePopState']; // Events is a static property on the router, the router doesn't have to be initialized to use it\n\n(0, _defineProperty.default)(singletonRouter, 'events', {\n  get() {\n    return _router2.default.events;\n  }\n\n});\nurlPropertyFields.forEach(field => {\n  // Here we need to use Object.defineProperty because, we need to return\n  // the property assigned to the actual router\n  // The value might get changed as we change routes and this is the\n  // proper way to access it\n  (0, _defineProperty.default)(singletonRouter, field, {\n    get() {\n      var router = getRouter();\n      return router[field];\n    }\n\n  });\n});\ncoreMethodFields.forEach(field => {\n  // We don't really know the types here, so we add them later instead\n  ;\n\n  singletonRouter[field] = function () {\n    var router = getRouter();\n    return router[field](...arguments);\n  };\n});\nrouterEvents.forEach(event => {\n  singletonRouter.ready(() => {\n    _router2.default.events.on(event, function () {\n      var eventField = \"on\" + event.charAt(0).toUpperCase() + event.substring(1);\n      var _singletonRouter = singletonRouter;\n\n      if (_singletonRouter[eventField]) {\n        try {\n          _singletonRouter[eventField](...arguments);\n        } catch (err) {\n          // tslint:disable-next-line:no-console\n          console.error(\"Error when running the Router event: \" + eventField); // tslint:disable-next-line:no-console\n\n          console.error(err.message + \"\\n\" + err.stack);\n        }\n      }\n    });\n  });\n});\n\nfunction getRouter() {\n  if (!singletonRouter.router) {\n    var message = 'No router instance found.\\n' + 'You should only use \"next/router\" inside the client side of your app.\\n';\n    throw new Error(message);\n  }\n\n  return singletonRouter.router;\n} // Export the singletonRouter and this is the public API.\n\n\nvar _default = singletonRouter; // Reexport the withRoute HOC\n\nexports.default = _default;\n\nfunction useRouter() {\n  return _react.default.useContext(_routerContext.RouterContext);\n} // INTERNAL APIS\n// -------------\n// (do not use following exports inside the app)\n// Create a router and assign it as the singleton instance.\n// This is used in client side when we are initilizing the app.\n// This should **not** use inside the server.\n\n\nvar createRouter = function createRouter() {\n  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n    args[_key] = arguments[_key];\n  }\n\n  singletonRouter.router = new _router2.default(...args);\n  singletonRouter.readyCallbacks.forEach(cb => cb());\n  singletonRouter.readyCallbacks = [];\n  return singletonRouter.router;\n}; // This function is used to create the `withRouter` router instance\n\n\nexports.createRouter = createRouter;\n\nfunction makePublicRouterInstance(router) {\n  var _router = router;\n  var instance = {};\n\n  for (var property of urlPropertyFields) {\n    if (typeof _router[property] === 'object') {\n      instance[property] = (0, _extends2.default)({}, _router[property]); // makes sure query is not stateful\n\n      continue;\n    }\n\n    instance[property] = _router[property];\n  } // Events is a static property on the router, the router doesn't have to be initialized to use it\n\n\n  instance.events = _router2.default.events;\n  coreMethodFields.forEach(field => {\n    instance[field] = function () {\n      return _router[field](...arguments);\n    };\n  });\n  return instance;\n}","map":{"version":3,"sources":["/Users/sbourgal/Documents/Projets/DAN/dan-framework/template/node_modules/next/dist/client/router.js"],"names":["_interopRequireWildcard","require","_interopRequireDefault","exports","__esModule","useRouter","makePublicRouterInstance","createRouter","withRouter","default","_extends2","_defineProperty","_react","_router2","Router","NextRouter","_routerContext","_withRouter","singletonRouter","router","readyCallbacks","ready","cb","push","urlPropertyFields","routerEvents","coreMethodFields","get","events","forEach","field","getRouter","arguments","event","on","eventField","charAt","toUpperCase","substring","_singletonRouter","err","console","error","message","stack","Error","_default","useContext","RouterContext","_len","length","args","Array","_key","_router","instance","property"],"mappings":"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","sourcesContent":["\"use strict\";var _interopRequireWildcard=require(\"@babel/runtime-corejs2/helpers/interopRequireWildcard\");var _interopRequireDefault=require(\"@babel/runtime-corejs2/helpers/interopRequireDefault\");exports.__esModule=true;exports.useRouter=useRouter;exports.makePublicRouterInstance=makePublicRouterInstance;exports.createRouter=exports.withRouter=exports.default=void 0;var _extends2=_interopRequireDefault(require(\"@babel/runtime-corejs2/helpers/extends\"));var _defineProperty=_interopRequireDefault(require(\"@babel/runtime-corejs2/core-js/object/define-property\"));var _react=_interopRequireDefault(require(\"react\"));var _router2=_interopRequireWildcard(require(\"../next-server/lib/router/router\"));exports.Router=_router2.default;exports.NextRouter=_router2.NextRouter;var _routerContext=require(\"../next-server/lib/router-context\");var _withRouter=_interopRequireDefault(require(\"./with-router\"));exports.withRouter=_withRouter.default;/* global window */var singletonRouter={router:null,// holds the actual router instance\nreadyCallbacks:[],ready(cb){if(this.router)return cb();if(typeof window!=='undefined'){this.readyCallbacks.push(cb);}}};// Create public properties and methods of the router in the singletonRouter\nvar urlPropertyFields=['pathname','route','query','asPath','components'];var routerEvents=['routeChangeStart','beforeHistoryChange','routeChangeComplete','routeChangeError','hashChangeStart','hashChangeComplete'];var coreMethodFields=['push','replace','reload','back','prefetch','beforePopState'];// Events is a static property on the router, the router doesn't have to be initialized to use it\n(0,_defineProperty.default)(singletonRouter,'events',{get(){return _router2.default.events;}});urlPropertyFields.forEach(field=>{// Here we need to use Object.defineProperty because, we need to return\n// the property assigned to the actual router\n// The value might get changed as we change routes and this is the\n// proper way to access it\n(0,_defineProperty.default)(singletonRouter,field,{get(){var router=getRouter();return router[field];}});});coreMethodFields.forEach(field=>{// We don't really know the types here, so we add them later instead\n;singletonRouter[field]=function(){var router=getRouter();return router[field](...arguments);};});routerEvents.forEach(event=>{singletonRouter.ready(()=>{_router2.default.events.on(event,function(){var eventField=\"on\"+event.charAt(0).toUpperCase()+event.substring(1);var _singletonRouter=singletonRouter;if(_singletonRouter[eventField]){try{_singletonRouter[eventField](...arguments);}catch(err){// tslint:disable-next-line:no-console\nconsole.error(\"Error when running the Router event: \"+eventField);// tslint:disable-next-line:no-console\nconsole.error(err.message+\"\\n\"+err.stack);}}});});});function getRouter(){if(!singletonRouter.router){var message='No router instance found.\\n'+'You should only use \"next/router\" inside the client side of your app.\\n';throw new Error(message);}return singletonRouter.router;}// Export the singletonRouter and this is the public API.\nvar _default=singletonRouter;// Reexport the withRoute HOC\nexports.default=_default;function useRouter(){return _react.default.useContext(_routerContext.RouterContext);}// INTERNAL APIS\n// -------------\n// (do not use following exports inside the app)\n// Create a router and assign it as the singleton instance.\n// This is used in client side when we are initilizing the app.\n// This should **not** use inside the server.\nvar createRouter=function createRouter(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}singletonRouter.router=new _router2.default(...args);singletonRouter.readyCallbacks.forEach(cb=>cb());singletonRouter.readyCallbacks=[];return singletonRouter.router;};// This function is used to create the `withRouter` router instance\nexports.createRouter=createRouter;function makePublicRouterInstance(router){var _router=router;var instance={};for(var property of urlPropertyFields){if(typeof _router[property]==='object'){instance[property]=(0,_extends2.default)({},_router[property]);// makes sure query is not stateful\ncontinue;}instance[property]=_router[property];}// Events is a static property on the router, the router doesn't have to be initialized to use it\ninstance.events=_router2.default.events;coreMethodFields.forEach(field=>{instance[field]=function(){return _router[field](...arguments);};});return instance;}"]},"metadata":{},"sourceType":"script"}