Files
flights_web_raw/apps/angular/node_modules/.cache/babel-webpack/1b5b7d2b78bdeeb396cc3f07f3ff3554.json
T

1 line
14 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 { FLIGHTS_INFO_PARAM } from '@schedule/services/url/flights-info-param';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@schedule/services/date-validation.service\";\nimport * as i2 from \"@shared/services/navigation.service\";\nimport * as i3 from \"@schedule/services/url/url-parser.service\";\nimport * as i4 from \"@schedule/services/request/request-parser.service\";\nimport * as i5 from \"@schedule/services/route-params-validation.service\";\nimport * as i6 from \"./can-activate-redirrect-to-not-found\";\nimport * as i7 from \"@angular/router\";\nexport class CanActivateScheduleDetails {\n constructor(dateValidator, rootNavigationService, urlService, requestService, routeParamsValidator, canRedirrect, router, flightsInfoParamName) {\n this.dateValidator = dateValidator;\n this.rootNavigationService = rootNavigationService;\n this.urlService = urlService;\n this.requestService = requestService;\n this.routeParamsValidator = routeParamsValidator;\n this.canRedirrect = canRedirrect;\n this.router = router;\n this.flightsInfoParamName = flightsInfoParamName;\n }\n\n canActivate(route) {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n const flightsIds = _this.urlService.parseFlightDetailsParams(route.params[_this.flightsInfoParamName], null, // do not need departure and arrival here\n null); // can open details WO request param -> need ti validate here\n\n\n for (let i = 0; i < flightsIds.flights.length; i++) {\n if (!_this.canRedirrect.validateStation(flightsIds.flights[i].arrival) || !_this.canRedirrect.validateStation(flightsIds.flights[i].departure) || !_this.canRedirrect.validateFlightNumber(flightsIds.flights[i].flightNumber)) {\n return _this.rootNavigationService.toNotFound();\n }\n }\n\n const areDatesValid = yield _this.areDatesValid(flightsIds);\n\n if (!areDatesValid) {\n return _this.router.navigateByUrl(_this.urlService.base);\n }\n\n const isRequestValid = yield _this.isRequestValid(route.queryParams.request);\n\n if (!isRequestValid) {\n const url = route.url.map(item => item.path).join('/');\n return _this.router.navigateByUrl(`${_this.urlService.base}/${url}`);\n }\n\n return true;\n })();\n }\n\n areDatesValid(flightsInfo) {\n var _this2 = this;\n\n return _asyncToGenerator(function* () {\n try {\n const promises = flightsInfo.flights.map(({\n date\n }) => {\n return _this2.dateValidator.isDateValid(date);\n });\n const results = yield Promise.all(promises);\n return results.every(Boolean);\n } catch (_a) {\n return false;\n }\n })();\n }\n\n isRequestValid(request) {\n var _this3 = this;\n\n return _asyncToGenerator(function* () {\n if (!request) {\n return true;\n }\n\n const {\n outbound,\n inbound\n } = _this3.requestService.parseRouteRequest(request);\n\n if (!_this3.canRedirrect.validateTimeRange(outbound.timeFrom, outbound.timeTo) || !_this3.canRedirrect.validateStation(outbound.arrival) || !_this3.canRedirrect.validateStation(outbound.departure) || !outbound.dateFrom || !outbound.dateTo) {\n _this3.rootNavigationService.toNotFound();\n }\n\n if (inbound) {\n if (!_this3.canRedirrect.validateTimeRange(inbound.timeFrom, inbound.timeTo) || !_this3.canRedirrect.validateStation(inbound.arrival) || !_this3.canRedirrect.validateStation(inbound.departure) || !inbound.dateFrom || !inbound.dateTo) {\n _this3.rootNavigationService.toNotFound();\n }\n }\n\n const routeValidationResult = yield _this3.routeParamsValidator.validateRoute(outbound, inbound);\n return routeValidationResult.isValid;\n })();\n }\n\n}\n\nCanActivateScheduleDetails.ɵfac = function CanActivateScheduleDetails_Factory(t) {\n return new (t || CanActivateScheduleDetails)(i0.ɵɵinject(i1.ScheduleDateValidationService), i0.ɵɵinject(i2.RootNavigationService), i0.ɵɵinject(i3.ScheduleUrlParserService), i0.ɵɵinject(i4.ScheduleRequestParserService), i0.ɵɵinject(i5.ScheduleRouteParamsValidationService), i0.ɵɵinject(i6.CanActivateRedirrect), i0.ɵɵinject(i7.Router), i0.ɵɵinject(FLIGHTS_INFO_PARAM));\n};\n\nCanActivateScheduleDetails.ɵprov = /*@__PURE__*/i0.ɵɵdefineInjectable({\n token: CanActivateScheduleDetails,\n factory: CanActivateScheduleDetails.ɵfac\n});","map":{"version":3,"sources":["/Users/gnezim/_projects/tims/flights_web_raw/Aeroflot.Flights.Web/apps/angular/src/app/features/schedule/guards/can-activate-schedule-details.service.ts"],"names":["FLIGHTS_INFO_PARAM","i0","i1","i2","i3","i4","i5","i6","i7","CanActivateScheduleDetails","constructor","dateValidator","rootNavigationService","urlService","requestService","routeParamsValidator","canRedirrect","router","flightsInfoParamName","canActivate","route","flightsIds","parseFlightDetailsParams","params","i","flights","length","validateStation","arrival","departure","validateFlightNumber","flightNumber","toNotFound","areDatesValid","navigateByUrl","base","isRequestValid","queryParams","request","url","map","item","path","join","flightsInfo","promises","date","isDateValid","results","Promise","all","every","Boolean","_a","outbound","inbound","parseRouteRequest","validateTimeRange","timeFrom","timeTo","dateFrom","dateTo","routeValidationResult","validateRoute","isValid","ɵfac","CanActivateScheduleDetails_Factory","t","ɵɵinject","ScheduleDateValidationService","RootNavigationService","ScheduleUrlParserService","ScheduleRequestParserService","ScheduleRouteParamsValidationService","CanActivateRedirrect","Router","ɵprov","ɵɵdefineInjectable","token","factory"],"mappings":";AAAA,SAASA,kBAAT,QAAmC,2CAAnC;AACA,OAAO,KAAKC,EAAZ,MAAoB,eAApB;AACA,OAAO,KAAKC,EAAZ,MAAoB,4CAApB;AACA,OAAO,KAAKC,EAAZ,MAAoB,qCAApB;AACA,OAAO,KAAKC,EAAZ,MAAoB,2CAApB;AACA,OAAO,KAAKC,EAAZ,MAAoB,mDAApB;AACA,OAAO,KAAKC,EAAZ,MAAoB,oDAApB;AACA,OAAO,KAAKC,EAAZ,MAAoB,uCAApB;AACA,OAAO,KAAKC,EAAZ,MAAoB,iBAApB;AACA,OAAO,MAAMC,0BAAN,CAAiC;AACpCC,EAAAA,WAAW,CAACC,aAAD,EAAgBC,qBAAhB,EAAuCC,UAAvC,EAAmDC,cAAnD,EAAmEC,oBAAnE,EAAyFC,YAAzF,EAAuGC,MAAvG,EAA+GC,oBAA/G,EAAqI;AAC5I,SAAKP,aAAL,GAAqBA,aAArB;AACA,SAAKC,qBAAL,GAA6BA,qBAA7B;AACA,SAAKC,UAAL,GAAkBA,UAAlB;AACA,SAAKC,cAAL,GAAsBA,cAAtB;AACA,SAAKC,oBAAL,GAA4BA,oBAA5B;AACA,SAAKC,YAAL,GAAoBA,YAApB;AACA,SAAKC,MAAL,GAAcA,MAAd;AACA,SAAKC,oBAAL,GAA4BA,oBAA5B;AACH;;AACKC,EAAAA,WAAW,CAACC,KAAD,EAAQ;AAAA;;AAAA;AACrB,YAAMC,UAAU,GAAG,KAAI,CAACR,UAAL,CAAgBS,wBAAhB,CAAyCF,KAAK,CAACG,MAAN,CAAa,KAAI,CAACL,oBAAlB,CAAzC,EAAkF,IAAlF,EAAwF;AAC3G,UADmB,CAAnB,CADqB,CAGrB;;;AACA,WAAK,IAAIM,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,UAAU,CAACI,OAAX,CAAmBC,MAAvC,EAA+CF,CAAC,EAAhD,EAAoD;AAChD,YAAI,CAAC,KAAI,CAACR,YAAL,CAAkBW,eAAlB,CAAkCN,UAAU,CAACI,OAAX,CAAmBD,CAAnB,EAAsBI,OAAxD,CAAD,IACG,CAAC,KAAI,CAACZ,YAAL,CAAkBW,eAAlB,CAAkCN,UAAU,CAACI,OAAX,CAAmBD,CAAnB,EAAsBK,SAAxD,CADJ,IAEG,CAAC,KAAI,CAACb,YAAL,CAAkBc,oBAAlB,CAAuCT,UAAU,CAACI,OAAX,CAAmBD,CAAnB,EAAsBO,YAA7D,CAFR,EAEoF;AAChF,iBAAO,KAAI,CAACnB,qBAAL,CAA2BoB,UAA3B,EAAP;AACH;AACJ;;AACD,YAAMC,aAAa,SAAS,KAAI,CAACA,aAAL,CAAmBZ,UAAnB,CAA5B;;AACA,UAAI,CAACY,aAAL,EAAoB;AAChB,eAAO,KAAI,CAAChB,MAAL,CAAYiB,aAAZ,CAA0B,KAAI,CAACrB,UAAL,CAAgBsB,IAA1C,CAAP;AACH;;AACD,YAAMC,cAAc,SAAS,KAAI,CAACA,cAAL,CAAoBhB,KAAK,CAACiB,WAAN,CAAkBC,OAAtC,CAA7B;;AACA,UAAI,CAACF,cAAL,EAAqB;AACjB,cAAMG,GAAG,GAAGnB,KAAK,CAACmB,GAAN,CAAUC,GAAV,CAAeC,IAAD,IAAUA,IAAI,CAACC,IAA7B,EAAmCC,IAAnC,CAAwC,GAAxC,CAAZ;AACA,eAAO,KAAI,CAAC1B,MAAL,CAAYiB,aAAZ,CAA2B,GAAE,KAAI,CAACrB,UAAL,CAAgBsB,IAAK,IAAGI,GAAI,EAAzD,CAAP;AACH;;AACD,aAAO,IAAP;AApBqB;AAqBxB;;AACKN,EAAAA,aAAa,CAACW,WAAD,EAAc;AAAA;;AAAA;AAC7B,UAAI;AACA,cAAMC,QAAQ,GAAGD,WAAW,CAACnB,OAAZ,CAAoBe,GAApB,CAAwB,CAAC;AAAEM,UAAAA;AAAF,SAAD,KAAc;AACnD,iBAAO,MAAI,CAACnC,aAAL,CAAmBoC,WAAnB,CAA+BD,IAA/B,CAAP;AACH,SAFgB,CAAjB;AAGA,cAAME,OAAO,SAASC,OAAO,CAACC,GAAR,CAAYL,QAAZ,CAAtB;AACA,eAAOG,OAAO,CAACG,KAAR,CAAcC,OAAd,CAAP;AACH,OAND,CAOA,OAAOC,EAAP,EAAW;AACP,eAAO,KAAP;AACH;AAV4B;AAWhC;;AACKjB,EAAAA,cAAc,CAACE,OAAD,EAAU;AAAA;;AAAA;AAC1B,UAAI,CAACA,OAAL,EAAc;AACV,eAAO,IAAP;AACH;;AACD,YAAM;AAAEgB,QAAAA,QAAF;AAAYC,QAAAA;AAAZ,UAAwB,MAAI,CAACzC,cAAL,CAAoB0C,iBAApB,CAAsClB,OAAtC,CAA9B;;AACA,UAAI,CAAC,MAAI,CAACtB,YAAL,CAAkByC,iBAAlB,CAAoCH,QAAQ,CAACI,QAA7C,EAAuDJ,QAAQ,CAACK,MAAhE,CAAD,IACG,CAAC,MAAI,CAAC3C,YAAL,CAAkBW,eAAlB,CAAkC2B,QAAQ,CAAC1B,OAA3C,CADJ,IAEG,CAAC,MAAI,CAACZ,YAAL,CAAkBW,eAAlB,CAAkC2B,QAAQ,CAACzB,SAA3C,CAFJ,IAGG,CAACyB,QAAQ,CAACM,QAHb,IAIG,CAACN,QAAQ,CAACO,MAJjB,EAIyB;AACrB,QAAA,MAAI,CAACjD,qBAAL,CAA2BoB,UAA3B;AACH;;AACD,UAAIuB,OAAJ,EAAa;AACT,YAAI,CAAC,MAAI,CAACvC,YAAL,CAAkByC,iBAAlB,CAAoCF,OAAO,CAACG,QAA5C,EAAsDH,OAAO,CAACI,MAA9D,CAAD,IACG,CAAC,MAAI,CAAC3C,YAAL,CAAkBW,eAAlB,CAAkC4B,OAAO,CAAC3B,OAA1C,CADJ,IAEG,CAAC,MAAI,CAACZ,YAAL,CAAkBW,eAAlB,CAAkC4B,OAAO,CAAC1B,SAA1C,CAFJ,IAGG,CAAC0B,OAAO,CAACK,QAHZ,IAIG,CAACL,OAAO,CAACM,MAJhB,EAIwB;AACpB,UAAA,MAAI,CAACjD,qBAAL,CAA2BoB,UAA3B;AACH;AACJ;;AACD,YAAM8B,qBAAqB,SAAS,MAAI,CAAC/C,oBAAL,CAA0BgD,aAA1B,CAAwCT,QAAxC,EAAkDC,OAAlD,CAApC;AACA,aAAOO,qBAAqB,CAACE,OAA7B;AAtB0B;AAuB7B;;AApEmC;;AAsExCvD,0BAA0B,CAACwD,IAA3B,GAAkC,SAASC,kCAAT,CAA4CC,CAA5C,EAA+C;AAAE,SAAO,KAAKA,CAAC,IAAI1D,0BAAV,EAAsCR,EAAE,CAACmE,QAAH,CAAYlE,EAAE,CAACmE,6BAAf,CAAtC,EAAqFpE,EAAE,CAACmE,QAAH,CAAYjE,EAAE,CAACmE,qBAAf,CAArF,EAA4HrE,EAAE,CAACmE,QAAH,CAAYhE,EAAE,CAACmE,wBAAf,CAA5H,EAAsKtE,EAAE,CAACmE,QAAH,CAAY/D,EAAE,CAACmE,4BAAf,CAAtK,EAAoNvE,EAAE,CAACmE,QAAH,CAAY9D,EAAE,CAACmE,oCAAf,CAApN,EAA0QxE,EAAE,CAACmE,QAAH,CAAY7D,EAAE,CAACmE,oBAAf,CAA1Q,EAAgTzE,EAAE,CAACmE,QAAH,CAAY5D,EAAE,CAACmE,MAAf,CAAhT,EAAwU1E,EAAE,CAACmE,QAAH,CAAYpE,kBAAZ,CAAxU,CAAP;AAAkX,CAArc;;AACAS,0BAA0B,CAACmE,KAA3B,GAAmC,aAAc3E,EAAE,CAAC4E,kBAAH,CAAsB;AAAEC,EAAAA,KAAK,EAAErE,0BAAT;AAAqCsE,EAAAA,OAAO,EAAEtE,0BAA0B,CAACwD;AAAzE,CAAtB,CAAjD","sourcesContent":["import { FLIGHTS_INFO_PARAM } from '@schedule/services/url/flights-info-param';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@schedule/services/date-validation.service\";\nimport * as i2 from \"@shared/services/navigation.service\";\nimport * as i3 from \"@schedule/services/url/url-parser.service\";\nimport * as i4 from \"@schedule/services/request/request-parser.service\";\nimport * as i5 from \"@schedule/services/route-params-validation.service\";\nimport * as i6 from \"./can-activate-redirrect-to-not-found\";\nimport * as i7 from \"@angular/router\";\nexport class CanActivateScheduleDetails {\n constructor(dateValidator, rootNavigationService, urlService, requestService, routeParamsValidator, canRedirrect, router, flightsInfoParamName) {\n this.dateValidator = dateValidator;\n this.rootNavigationService = rootNavigationService;\n this.urlService = urlService;\n this.requestService = requestService;\n this.routeParamsValidator = routeParamsValidator;\n this.canRedirrect = canRedirrect;\n this.router = router;\n this.flightsInfoParamName = flightsInfoParamName;\n }\n async canActivate(route) {\n const flightsIds = this.urlService.parseFlightDetailsParams(route.params[this.flightsInfoParamName], null, // do not need departure and arrival here\n null);\n // can open details WO request param -> need ti validate here\n for (let i = 0; i < flightsIds.flights.length; i++) {\n if (!this.canRedirrect.validateStation(flightsIds.flights[i].arrival)\n || !this.canRedirrect.validateStation(flightsIds.flights[i].departure)\n || !this.canRedirrect.validateFlightNumber(flightsIds.flights[i].flightNumber)) {\n return this.rootNavigationService.toNotFound();\n }\n }\n const areDatesValid = await this.areDatesValid(flightsIds);\n if (!areDatesValid) {\n return this.router.navigateByUrl(this.urlService.base);\n }\n const isRequestValid = await this.isRequestValid(route.queryParams.request);\n if (!isRequestValid) {\n const url = route.url.map((item) => item.path).join('/');\n return this.router.navigateByUrl(`${this.urlService.base}/${url}`);\n }\n return true;\n }\n async areDatesValid(flightsInfo) {\n try {\n const promises = flightsInfo.flights.map(({ date }) => {\n return this.dateValidator.isDateValid(date);\n });\n const results = await Promise.all(promises);\n return results.every(Boolean);\n }\n catch (_a) {\n return false;\n }\n }\n async isRequestValid(request) {\n if (!request) {\n return true;\n }\n const { outbound, inbound } = this.requestService.parseRouteRequest(request);\n if (!this.canRedirrect.validateTimeRange(outbound.timeFrom, outbound.timeTo)\n || !this.canRedirrect.validateStation(outbound.arrival)\n || !this.canRedirrect.validateStation(outbound.departure)\n || !outbound.dateFrom\n || !outbound.dateTo) {\n this.rootNavigationService.toNotFound();\n }\n if (inbound) {\n if (!this.canRedirrect.validateTimeRange(inbound.timeFrom, inbound.timeTo)\n || !this.canRedirrect.validateStation(inbound.arrival)\n || !this.canRedirrect.validateStation(inbound.departure)\n || !inbound.dateFrom\n || !inbound.dateTo) {\n this.rootNavigationService.toNotFound();\n }\n }\n const routeValidationResult = await this.routeParamsValidator.validateRoute(outbound, inbound);\n return routeValidationResult.isValid;\n }\n}\nCanActivateScheduleDetails.ɵfac = function CanActivateScheduleDetails_Factory(t) { return new (t || CanActivateScheduleDetails)(i0.ɵɵinject(i1.ScheduleDateValidationService), i0.ɵɵinject(i2.RootNavigationService), i0.ɵɵinject(i3.ScheduleUrlParserService), i0.ɵɵinject(i4.ScheduleRequestParserService), i0.ɵɵinject(i5.ScheduleRouteParamsValidationService), i0.ɵɵinject(i6.CanActivateRedirrect), i0.ɵɵinject(i7.Router), i0.ɵɵinject(FLIGHTS_INFO_PARAM)); };\nCanActivateScheduleDetails.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CanActivateScheduleDetails, factory: CanActivateScheduleDetails.ɵfac });\n"]},"metadata":{},"sourceType":"module"}