Index: trip-planner-front/node_modules/.cache/babel-webpack/bb3d6744b4e185fb1b4f08a8f9c106e9.json
===================================================================
--- trip-planner-front/node_modules/.cache/babel-webpack/bb3d6744b4e185fb1b4f08a8f9c106e9.json	(revision 76712b2bf7daeb245c9ca388ce322e0b98098d99)
+++ trip-planner-front/node_modules/.cache/babel-webpack/bb3d6744b4e185fb1b4f08a8f9c106e9.json	(revision 76712b2bf7daeb245c9ca388ce322e0b98098d99)
@@ -0,0 +1,1 @@
+{"ast":null,"code":"import { FormControl } from '@angular/forms';\nimport { Observable } from 'rxjs';\nimport { map, startWith } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../_services/city.service\";\nimport * as i2 from \"../_services/location.service\";\nimport * as i3 from \"../_services/region.service\";\nimport * as i4 from \"primeng/autocomplete\";\nimport * as i5 from \"@angular/forms\";\nimport * as i6 from \"@angular/material/form-field\";\nimport * as i7 from \"@angular/material/input\";\nimport * as i8 from \"@angular/material/autocomplete\";\nimport * as i9 from \"@angular/common\";\nimport * as i10 from \"primeng/button\";\nimport * as i11 from \"@angular/material/core\";\n\nfunction ExploreComponent_mat_option_22_Template(rf, ctx) {\n  if (rf & 1) {\n    i0.ɵɵelementStart(0, \"mat-option\", 15);\n    i0.ɵɵtext(1);\n    i0.ɵɵelementEnd();\n  }\n\n  if (rf & 2) {\n    const option_r2 = ctx.$implicit;\n    i0.ɵɵproperty(\"value\", option_r2);\n    i0.ɵɵadvance(1);\n    i0.ɵɵtextInterpolate1(\" \", option_r2.name, \" \");\n  }\n}\n\nexport class ExploreComponent {\n  constructor(cityService, locationService, regionService) {\n    this.cityService = cityService;\n    this.locationService = locationService;\n    this.regionService = regionService;\n    this.loading = [false, false, false, false];\n    this.regions = [];\n    this.filteredOptions = new Observable();\n    this.myControl = new FormControl();\n    this.cityName = '';\n    this.cities = [];\n    this.filteredCountries = [];\n    this.text = '';\n  }\n\n  ngOnInit() {\n    this.cityService.getAllCities().subscribe(cities => {\n      this.cities = cities;\n    });\n    this.regionService.getAllRegions().subscribe(regions => {\n      this.regions = regions;\n    });\n    this.filteredOptions = this.myControl.valueChanges.pipe(startWith(''), map(value => typeof value === 'string' ? value : value.name), map(name => name ? this._filter(name) : this.cities.slice()));\n  }\n\n  displayFn(city) {\n    return city && city.name ? city.name : '';\n  }\n\n  _filter(name) {\n    const filterValue = name.toLowerCase();\n    return this.cities.filter(option => option.name.toLowerCase().includes(filterValue));\n  }\n\n  search(event) {\n    let filtered = [];\n    let query = event.query;\n\n    for (let i = 0; i < this.cities.length; i++) {\n      let city = this.cities[i];\n\n      if (city.name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\n        filtered.push(city);\n      }\n    }\n\n    for (let i = 0; i < this.regions.length; i++) {\n      let region = this.regions[i];\n\n      if (region.name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\n        filtered.push(region);\n      }\n    }\n\n    this.filteredCountries = filtered;\n  }\n\n  load(index) {\n    this.loading[index] = true;\n    setTimeout(() => this.loading[index] = false, 1000);\n    console.log(this.cityName);\n  }\n\n}\n\nExploreComponent.ɵfac = function ExploreComponent_Factory(t) {\n  return new (t || ExploreComponent)(i0.ɵɵdirectiveInject(i1.CityService), i0.ɵɵdirectiveInject(i2.LocationService), i0.ɵɵdirectiveInject(i3.RegionService));\n};\n\nExploreComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n  type: ExploreComponent,\n  selectors: [[\"app-explore\"]],\n  decls: 25,\n  vars: 10,\n  consts: [[\"href\", \"https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css\", \"rel\", \"stylesheet\", \"integrity\", \"sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x\", \"crossorigin\", \"anonymous\"], [\"lang\", \"en\"], [\"charset\", \"utf-8\"], [1, \"navbar\", \"navbar-expand-sm\"], [1, \"navbar-brand\"], [1, \"navbar-nav\", \"ml-auto\"], [1, \"nav-item\"], [\"field\", \"name\", 3, \"ngModel\", \"suggestions\", \"minLength\", \"ngModelChange\", \"completeMethod\"], [1, \"example-form\"], [\"appearance\", \"fill\", 1, \"example-full-width\"], [\"type\", \"text\", \"matInput\", \"\", 3, \"formControl\", \"matAutocomplete\"], [3, \"displayWith\"], [\"auto\", \"matAutocomplete\"], [3, \"value\", 4, \"ngFor\", \"ngForOf\"], [\"label\", \"Search\", \"icon\", \"pi pi-search\", \"id\", \"button\", 3, \"loading\", \"click\"], [3, \"value\"]],\n  template: function ExploreComponent_Template(rf, ctx) {\n    if (rf & 1) {\n      i0.ɵɵelement(0, \"link\", 0);\n      i0.ɵɵelementStart(1, \"html\", 1);\n      i0.ɵɵelementStart(2, \"head\");\n      i0.ɵɵelement(3, \"meta\", 2);\n      i0.ɵɵelementStart(4, \"title\");\n      i0.ɵɵtext(5, \"Explore\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(6, \"body\");\n      i0.ɵɵelementStart(7, \"header\");\n      i0.ɵɵelementStart(8, \"nav\", 3);\n      i0.ɵɵelementStart(9, \"strong\", 4);\n      i0.ɵɵtext(10, \"Trivia Trip\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(11, \"ul\", 5);\n      i0.ɵɵelementStart(12, \"li\", 6);\n      i0.ɵɵelementStart(13, \"p-autoComplete\", 7);\n      i0.ɵɵlistener(\"ngModelChange\", function ExploreComponent_Template_p_autoComplete_ngModelChange_13_listener($event) {\n        return ctx.text = $event;\n      })(\"completeMethod\", function ExploreComponent_Template_p_autoComplete_completeMethod_13_listener($event) {\n        return ctx.search($event);\n      });\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelement(14, \"li\", 6);\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(15, \"form\", 8);\n      i0.ɵɵelementStart(16, \"mat-form-field\", 9);\n      i0.ɵɵelementStart(17, \"mat-label\");\n      i0.ɵɵtext(18, \"Assignee\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelement(19, \"input\", 10);\n      i0.ɵɵelementStart(20, \"mat-autocomplete\", 11, 12);\n      i0.ɵɵtemplate(22, ExploreComponent_mat_option_22_Template, 2, 2, \"mat-option\", 13);\n      i0.ɵɵpipe(23, \"async\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(24, \"p-button\", 14);\n      i0.ɵɵlistener(\"click\", function ExploreComponent_Template_p_button_click_24_listener($event) {\n        return ctx.load(0, $event.option.value);\n      });\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n    }\n\n    if (rf & 2) {\n      const _r0 = i0.ɵɵreference(21);\n\n      i0.ɵɵadvance(13);\n      i0.ɵɵproperty(\"ngModel\", ctx.text)(\"suggestions\", ctx.filteredCountries)(\"minLength\", 1);\n      i0.ɵɵadvance(6);\n      i0.ɵɵproperty(\"formControl\", ctx.myControl)(\"matAutocomplete\", _r0);\n      i0.ɵɵadvance(1);\n      i0.ɵɵproperty(\"displayWith\", ctx.displayFn);\n      i0.ɵɵadvance(2);\n      i0.ɵɵproperty(\"ngForOf\", i0.ɵɵpipeBind1(23, 8, ctx.filteredOptions));\n      i0.ɵɵadvance(2);\n      i0.ɵɵproperty(\"loading\", ctx.loading[0]);\n    }\n  },\n  directives: [i4.AutoComplete, i5.NgControlStatus, i5.NgModel, i5.ɵNgNoValidate, i5.NgControlStatusGroup, i5.NgForm, i6.MatFormField, i6.MatLabel, i7.MatInput, i5.DefaultValueAccessor, i8.MatAutocompleteTrigger, i5.FormControlDirective, i8.MatAutocomplete, i9.NgForOf, i10.Button, i11.MatOption],\n  pipes: [i9.AsyncPipe],\n  styles: [\"#button[_ngcontent-%COMP%]{\\r\\n    margin-left: 20px;\\r\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4cGxvcmUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLGlCQUFpQjtBQUNyQiIsImZpbGUiOiJleHBsb3JlLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIjYnV0dG9ue1xyXG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbn0iXX0= */\"]\n});","map":{"version":3,"sources":["C:/Users/DELL/Desktop/bachelor-thesis/trip-planner-front/src/app/explore/explore.component.ts"],"names":["FormControl","Observable","map","startWith","i0","i1","i2","i3","i4","i5","i6","i7","i8","i9","i10","i11","ExploreComponent_mat_option_22_Template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","option_r2","$implicit","ɵɵproperty","ɵɵadvance","ɵɵtextInterpolate1","name","ExploreComponent","constructor","cityService","locationService","regionService","loading","regions","filteredOptions","myControl","cityName","cities","filteredCountries","text","ngOnInit","getAllCities","subscribe","getAllRegions","valueChanges","pipe","value","_filter","slice","displayFn","city","filterValue","toLowerCase","filter","option","includes","search","event","filtered","query","i","length","indexOf","push","region","load","index","setTimeout","console","log","ɵfac","ExploreComponent_Factory","t","ɵɵdirectiveInject","CityService","LocationService","RegionService","ɵcmp","ɵɵdefineComponent","type","selectors","decls","vars","consts","template","ExploreComponent_Template","ɵɵelement","ɵɵlistener","ExploreComponent_Template_p_autoComplete_ngModelChange_13_listener","$event","ExploreComponent_Template_p_autoComplete_completeMethod_13_listener","ɵɵtemplate","ɵɵpipe","ExploreComponent_Template_p_button_click_24_listener","_r0","ɵɵreference","ɵɵpipeBind1","directives","AutoComplete","NgControlStatus","NgModel","ɵNgNoValidate","NgControlStatusGroup","NgForm","MatFormField","MatLabel","MatInput","DefaultValueAccessor","MatAutocompleteTrigger","FormControlDirective","MatAutocomplete","NgForOf","Button","MatOption","pipes","AsyncPipe","styles"],"mappings":"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","sourcesContent":["import { FormControl } from '@angular/forms';\r\nimport { Observable } from 'rxjs';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport * as i0 from \"@angular/core\";\r\nimport * as i1 from \"../_services/city.service\";\r\nimport * as i2 from \"../_services/location.service\";\r\nimport * as i3 from \"../_services/region.service\";\r\nimport * as i4 from \"primeng/autocomplete\";\r\nimport * as i5 from \"@angular/forms\";\r\nimport * as i6 from \"@angular/material/form-field\";\r\nimport * as i7 from \"@angular/material/input\";\r\nimport * as i8 from \"@angular/material/autocomplete\";\r\nimport * as i9 from \"@angular/common\";\r\nimport * as i10 from \"primeng/button\";\r\nimport * as i11 from \"@angular/material/core\";\r\nfunction ExploreComponent_mat_option_22_Template(rf, ctx) { if (rf & 1) {\r\n    i0.ɵɵelementStart(0, \"mat-option\", 15);\r\n    i0.ɵɵtext(1);\r\n    i0.ɵɵelementEnd();\r\n} if (rf & 2) {\r\n    const option_r2 = ctx.$implicit;\r\n    i0.ɵɵproperty(\"value\", option_r2);\r\n    i0.ɵɵadvance(1);\r\n    i0.ɵɵtextInterpolate1(\" \", option_r2.name, \" \");\r\n} }\r\nexport class ExploreComponent {\r\n    constructor(cityService, locationService, regionService) {\r\n        this.cityService = cityService;\r\n        this.locationService = locationService;\r\n        this.regionService = regionService;\r\n        this.loading = [false, false, false, false];\r\n        this.regions = [];\r\n        this.filteredOptions = new Observable();\r\n        this.myControl = new FormControl();\r\n        this.cityName = '';\r\n        this.cities = [];\r\n        this.filteredCountries = [];\r\n        this.text = '';\r\n    }\r\n    ngOnInit() {\r\n        this.cityService.getAllCities().subscribe(cities => {\r\n            this.cities = cities;\r\n        });\r\n        this.regionService.getAllRegions().subscribe(regions => {\r\n            this.regions = regions;\r\n        });\r\n        this.filteredOptions = this.myControl.valueChanges.pipe(startWith(''), map(value => (typeof value === 'string' ? value : value.name)), map(name => (name ? this._filter(name) : this.cities.slice())));\r\n    }\r\n    displayFn(city) {\r\n        return city && city.name ? city.name : '';\r\n    }\r\n    _filter(name) {\r\n        const filterValue = name.toLowerCase();\r\n        return this.cities.filter(option => option.name.toLowerCase().includes(filterValue));\r\n    }\r\n    search(event) {\r\n        let filtered = [];\r\n        let query = event.query;\r\n        for (let i = 0; i < this.cities.length; i++) {\r\n            let city = this.cities[i];\r\n            if (city.name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n                filtered.push(city);\r\n            }\r\n        }\r\n        for (let i = 0; i < this.regions.length; i++) {\r\n            let region = this.regions[i];\r\n            if (region.name.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n                filtered.push(region);\r\n            }\r\n        }\r\n        this.filteredCountries = filtered;\r\n    }\r\n    load(index) {\r\n        this.loading[index] = true;\r\n        setTimeout(() => this.loading[index] = false, 1000);\r\n        console.log(this.cityName);\r\n    }\r\n}\r\nExploreComponent.ɵfac = function ExploreComponent_Factory(t) { return new (t || ExploreComponent)(i0.ɵɵdirectiveInject(i1.CityService), i0.ɵɵdirectiveInject(i2.LocationService), i0.ɵɵdirectiveInject(i3.RegionService)); };\r\nExploreComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ExploreComponent, selectors: [[\"app-explore\"]], decls: 25, vars: 10, consts: [[\"href\", \"https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css\", \"rel\", \"stylesheet\", \"integrity\", \"sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x\", \"crossorigin\", \"anonymous\"], [\"lang\", \"en\"], [\"charset\", \"utf-8\"], [1, \"navbar\", \"navbar-expand-sm\"], [1, \"navbar-brand\"], [1, \"navbar-nav\", \"ml-auto\"], [1, \"nav-item\"], [\"field\", \"name\", 3, \"ngModel\", \"suggestions\", \"minLength\", \"ngModelChange\", \"completeMethod\"], [1, \"example-form\"], [\"appearance\", \"fill\", 1, \"example-full-width\"], [\"type\", \"text\", \"matInput\", \"\", 3, \"formControl\", \"matAutocomplete\"], [3, \"displayWith\"], [\"auto\", \"matAutocomplete\"], [3, \"value\", 4, \"ngFor\", \"ngForOf\"], [\"label\", \"Search\", \"icon\", \"pi pi-search\", \"id\", \"button\", 3, \"loading\", \"click\"], [3, \"value\"]], template: function ExploreComponent_Template(rf, ctx) { if (rf & 1) {\r\n        i0.ɵɵelement(0, \"link\", 0);\r\n        i0.ɵɵelementStart(1, \"html\", 1);\r\n        i0.ɵɵelementStart(2, \"head\");\r\n        i0.ɵɵelement(3, \"meta\", 2);\r\n        i0.ɵɵelementStart(4, \"title\");\r\n        i0.ɵɵtext(5, \"Explore\");\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementStart(6, \"body\");\r\n        i0.ɵɵelementStart(7, \"header\");\r\n        i0.ɵɵelementStart(8, \"nav\", 3);\r\n        i0.ɵɵelementStart(9, \"strong\", 4);\r\n        i0.ɵɵtext(10, \"Trivia Trip\");\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementStart(11, \"ul\", 5);\r\n        i0.ɵɵelementStart(12, \"li\", 6);\r\n        i0.ɵɵelementStart(13, \"p-autoComplete\", 7);\r\n        i0.ɵɵlistener(\"ngModelChange\", function ExploreComponent_Template_p_autoComplete_ngModelChange_13_listener($event) { return ctx.text = $event; })(\"completeMethod\", function ExploreComponent_Template_p_autoComplete_completeMethod_13_listener($event) { return ctx.search($event); });\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelement(14, \"li\", 6);\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementStart(15, \"form\", 8);\r\n        i0.ɵɵelementStart(16, \"mat-form-field\", 9);\r\n        i0.ɵɵelementStart(17, \"mat-label\");\r\n        i0.ɵɵtext(18, \"Assignee\");\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelement(19, \"input\", 10);\r\n        i0.ɵɵelementStart(20, \"mat-autocomplete\", 11, 12);\r\n        i0.ɵɵtemplate(22, ExploreComponent_mat_option_22_Template, 2, 2, \"mat-option\", 13);\r\n        i0.ɵɵpipe(23, \"async\");\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementStart(24, \"p-button\", 14);\r\n        i0.ɵɵlistener(\"click\", function ExploreComponent_Template_p_button_click_24_listener($event) { return ctx.load(0, $event.option.value); });\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n        i0.ɵɵelementEnd();\r\n    } if (rf & 2) {\r\n        const _r0 = i0.ɵɵreference(21);\r\n        i0.ɵɵadvance(13);\r\n        i0.ɵɵproperty(\"ngModel\", ctx.text)(\"suggestions\", ctx.filteredCountries)(\"minLength\", 1);\r\n        i0.ɵɵadvance(6);\r\n        i0.ɵɵproperty(\"formControl\", ctx.myControl)(\"matAutocomplete\", _r0);\r\n        i0.ɵɵadvance(1);\r\n        i0.ɵɵproperty(\"displayWith\", ctx.displayFn);\r\n        i0.ɵɵadvance(2);\r\n        i0.ɵɵproperty(\"ngForOf\", i0.ɵɵpipeBind1(23, 8, ctx.filteredOptions));\r\n        i0.ɵɵadvance(2);\r\n        i0.ɵɵproperty(\"loading\", ctx.loading[0]);\r\n    } }, directives: [i4.AutoComplete, i5.NgControlStatus, i5.NgModel, i5.ɵNgNoValidate, i5.NgControlStatusGroup, i5.NgForm, i6.MatFormField, i6.MatLabel, i7.MatInput, i5.DefaultValueAccessor, i8.MatAutocompleteTrigger, i5.FormControlDirective, i8.MatAutocomplete, i9.NgForOf, i10.Button, i11.MatOption], pipes: [i9.AsyncPipe], styles: [\"#button[_ngcontent-%COMP%]{\\r\\n    margin-left: 20px;\\r\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImV4cGxvcmUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLGlCQUFpQjtBQUNyQiIsImZpbGUiOiJleHBsb3JlLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIjYnV0dG9ue1xyXG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbn0iXX0= */\"] });\r\n"]},"metadata":{},"sourceType":"module"}
