1 line
9.6 KiB
JSON
1 line
9.6 KiB
JSON
{"ast":null,"code":"import _asyncToGenerator from \"/Users/gnezim/_projects/tims/flights_web_raw/Aeroflot.Flights.Web/apps/angular/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@online-board/services/url\";\nimport * as i2 from \"./utils/can-activate-date-params\";\nimport * as i3 from \"./utils/can-activate-route-params\";\nimport * as i4 from \"@online-board/services/request/request-parser.service\";\nimport * as i5 from \"@online-board/services/navigation.service\";\nimport * as i6 from \"./utils/can-activate-redirrect-to-not-found\";\nexport class CanActivateOnlineBoardDetails {\n constructor(urlService, dateParamsService, routeParamsService, requestService, navigationService, canRedirrect) {\n this.urlService = urlService;\n this.dateParamsService = dateParamsService;\n this.routeParamsService = routeParamsService;\n this.requestService = requestService;\n this.navigationService = navigationService;\n this.canRedirrect = canRedirrect;\n }\n\n canActivate(route) {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n const urlParams = _this.urlService.parseFlightId(route.params.params);\n\n if (!_this.canRedirrect.validateFlightNumber(urlParams.flightNumber)) {\n return _this.navigationService.toNotFound();\n }\n\n const validationResult = yield _this.dateParamsService.canActivate(urlParams);\n\n if (validationResult !== true) {\n return validationResult;\n }\n\n const requestValidationResult = yield _this.canActivateQueryParams(route);\n\n if (requestValidationResult !== true) {\n return _this.navigationService.toDetailsPage({\n flightId: {\n flightNumber: urlParams.flightNumber,\n carrier: urlParams.carrier,\n suffix: urlParams.suffix,\n date: ''\n },\n date: urlParams.date\n });\n }\n\n return true;\n })();\n }\n\n canActivateQueryParams(route) {\n var _this2 = this;\n\n return _asyncToGenerator(function* () {\n const {\n request\n } = route.queryParams;\n\n if (!request) {\n return true;\n }\n\n const onlineBoardRequest = _this2.requestService.parse(request);\n\n switch (onlineBoardRequest.type) {\n case 'flight-number':\n {\n return _this2.dateParamsService.validateDateParams(onlineBoardRequest.params);\n }\n\n case 'route':\n {\n return _this2.routeParamsService.validateRouteParams(onlineBoardRequest.params);\n }\n }\n })();\n }\n\n}\n\nCanActivateOnlineBoardDetails.ɵfac = function CanActivateOnlineBoardDetails_Factory(t) {\n return new (t || CanActivateOnlineBoardDetails)(i0.ɵɵinject(i1.OnlineBoardUrlParserService), i0.ɵɵinject(i2.CanActivateDateParams), i0.ɵɵinject(i3.CanActivateRouteParams), i0.ɵɵinject(i4.OnlineBoardRequestParserService), i0.ɵɵinject(i5.OnlineBoardNavigationService), i0.ɵɵinject(i6.CanActivateRedirrect));\n};\n\nCanActivateOnlineBoardDetails.ɵprov = /*@__PURE__*/i0.ɵɵdefineInjectable({\n token: CanActivateOnlineBoardDetails,\n factory: CanActivateOnlineBoardDetails.ɵfac\n});","map":{"version":3,"sources":["/Users/gnezim/_projects/tims/flights_web_raw/Aeroflot.Flights.Web/apps/angular/src/app/features/online-board/guards/can-activate-details.ts"],"names":["i0","i1","i2","i3","i4","i5","i6","CanActivateOnlineBoardDetails","constructor","urlService","dateParamsService","routeParamsService","requestService","navigationService","canRedirrect","canActivate","route","urlParams","parseFlightId","params","validateFlightNumber","flightNumber","toNotFound","validationResult","requestValidationResult","canActivateQueryParams","toDetailsPage","flightId","carrier","suffix","date","request","queryParams","onlineBoardRequest","parse","type","validateDateParams","validateRouteParams","ɵfac","CanActivateOnlineBoardDetails_Factory","t","ɵɵinject","OnlineBoardUrlParserService","CanActivateDateParams","CanActivateRouteParams","OnlineBoardRequestParserService","OnlineBoardNavigationService","CanActivateRedirrect","ɵprov","ɵɵdefineInjectable","token","factory"],"mappings":"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","sourcesContent":["import * as i0 from \"@angular/core\";\nimport * as i1 from \"@online-board/services/url\";\nimport * as i2 from \"./utils/can-activate-date-params\";\nimport * as i3 from \"./utils/can-activate-route-params\";\nimport * as i4 from \"@online-board/services/request/request-parser.service\";\nimport * as i5 from \"@online-board/services/navigation.service\";\nimport * as i6 from \"./utils/can-activate-redirrect-to-not-found\";\nexport class CanActivateOnlineBoardDetails {\n constructor(urlService, dateParamsService, routeParamsService, requestService, navigationService, canRedirrect) {\n this.urlService = urlService;\n this.dateParamsService = dateParamsService;\n this.routeParamsService = routeParamsService;\n this.requestService = requestService;\n this.navigationService = navigationService;\n this.canRedirrect = canRedirrect;\n }\n async canActivate(route) {\n const urlParams = this.urlService.parseFlightId(route.params.params);\n if (!this.canRedirrect.validateFlightNumber(urlParams.flightNumber)) {\n return this.navigationService.toNotFound();\n }\n const validationResult = await this.dateParamsService.canActivate(urlParams);\n if (validationResult !== true) {\n return validationResult;\n }\n const requestValidationResult = await this.canActivateQueryParams(route);\n if (requestValidationResult !== true) {\n return this.navigationService.toDetailsPage({\n flightId: {\n flightNumber: urlParams.flightNumber,\n carrier: urlParams.carrier,\n suffix: urlParams.suffix,\n date: '',\n },\n date: urlParams.date,\n });\n }\n return true;\n }\n async canActivateQueryParams(route) {\n const { request } = route.queryParams;\n if (!request) {\n return true;\n }\n const onlineBoardRequest = this.requestService.parse(request);\n switch (onlineBoardRequest.type) {\n case 'flight-number': {\n return this.dateParamsService.validateDateParams(onlineBoardRequest.params);\n }\n case 'route': {\n return this.routeParamsService.validateRouteParams(onlineBoardRequest.params);\n }\n }\n }\n}\nCanActivateOnlineBoardDetails.ɵfac = function CanActivateOnlineBoardDetails_Factory(t) { return new (t || CanActivateOnlineBoardDetails)(i0.ɵɵinject(i1.OnlineBoardUrlParserService), i0.ɵɵinject(i2.CanActivateDateParams), i0.ɵɵinject(i3.CanActivateRouteParams), i0.ɵɵinject(i4.OnlineBoardRequestParserService), i0.ɵɵinject(i5.OnlineBoardNavigationService), i0.ɵɵinject(i6.CanActivateRedirrect)); };\nCanActivateOnlineBoardDetails.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CanActivateOnlineBoardDetails, factory: CanActivateOnlineBoardDetails.ɵfac });\n"]},"metadata":{},"sourceType":"module"} |