Index: trip-planner-front/node_modules/.cache/babel-webpack/f8830ecde9295f18bf2069353cee959a.json
===================================================================
--- trip-planner-front/node_modules/.cache/babel-webpack/f8830ecde9295f18bf2069353cee959a.json	(revision eed0bf860deec9614c6d4891e655270e2bb3b8ab)
+++ trip-planner-front/node_modules/.cache/babel-webpack/f8830ecde9295f18bf2069353cee959a.json	(revision eed0bf860deec9614c6d4891e655270e2bb3b8ab)
@@ -0,0 +1,1 @@
+{"ast":null,"code":"import { FormControl } from '@angular/forms';\nimport { map, startWith, switchMap } from 'rxjs/operators';\nimport { Observable } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../_services/city.service\";\nimport * as i2 from \"../_services/country.service\";\nimport * as i3 from \"../_services/companion.service\";\nimport * as i4 from \"../_services/cateogry.service\";\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 \"@angular/material/select\";\nimport * as i11 from \"@angular/material/chips\";\nimport * as i12 from \"@angular/material/button\";\nimport * as i13 from \"@angular/material/core\";\nimport * as i14 from \"@angular/material/icon\";\n\nfunction LocationsFormComponent_mat_option_11_Template(rf, ctx) {\n  if (rf & 1) {\n    i0.ɵɵelementStart(0, \"mat-option\", 13);\n    i0.ɵɵtext(1);\n    i0.ɵɵelementEnd();\n  }\n\n  if (rf & 2) {\n    const option_r4 = ctx.$implicit;\n    i0.ɵɵproperty(\"value\", option_r4.name);\n    i0.ɵɵadvance(1);\n    i0.ɵɵtextInterpolate1(\" \", option_r4.name, \" \");\n  }\n}\n\nfunction LocationsFormComponent_mat_option_19_Template(rf, ctx) {\n  if (rf & 1) {\n    i0.ɵɵelementStart(0, \"mat-option\", 14);\n    i0.ɵɵtext(1);\n    i0.ɵɵelementEnd();\n  }\n\n  if (rf & 2) {\n    const companion_r5 = ctx.$implicit;\n    i0.ɵɵadvance(1);\n    i0.ɵɵtextInterpolate(companion_r5.type);\n  }\n}\n\nfunction LocationsFormComponent_mat_chip_29_mat_icon_2_Template(rf, ctx) {\n  if (rf & 1) {\n    i0.ɵɵelementStart(0, \"mat-icon\");\n    i0.ɵɵtext(1, \"check\");\n    i0.ɵɵelementEnd();\n  }\n}\n\nfunction LocationsFormComponent_mat_chip_29_Template(rf, ctx) {\n  if (rf & 1) {\n    const _r10 = i0.ɵɵgetCurrentView();\n\n    i0.ɵɵelementStart(0, \"mat-chip\", 15, 16);\n    i0.ɵɵlistener(\"click\", function LocationsFormComponent_mat_chip_29_Template_mat_chip_click_0_listener() {\n      const restoredCtx = i0.ɵɵrestoreView(_r10);\n      const category_r6 = restoredCtx.$implicit;\n\n      const _r7 = i0.ɵɵreference(1);\n\n      const ctx_r9 = i0.ɵɵnextContext();\n      return ctx_r9.toggleSelection(_r7, category_r6);\n    });\n    i0.ɵɵtemplate(2, LocationsFormComponent_mat_chip_29_mat_icon_2_Template, 2, 0, \"mat-icon\", 17);\n    i0.ɵɵtext(3);\n    i0.ɵɵelementEnd();\n  }\n\n  if (rf & 2) {\n    const category_r6 = ctx.$implicit;\n\n    const _r7 = i0.ɵɵreference(1);\n\n    i0.ɵɵadvance(2);\n    i0.ɵɵproperty(\"ngIf\", _r7.selected);\n    i0.ɵɵadvance(1);\n    i0.ɵɵtextInterpolate1(\" \", category_r6.name, \" \");\n  }\n}\n\nexport class LocationsFormComponent {\n  constructor(cityService, countryService, companionService, categoryService) {\n    this.cityService = cityService;\n    this.countryService = countryService;\n    this.companionService = companionService;\n    this.categoryService = categoryService;\n    this.myControl = new FormControl();\n    this.disableSelect = new FormControl(false);\n    this.filteredOptions = new Observable();\n    this.cities = [];\n    this.countries = [];\n    this.companions = [];\n    this.categories = [];\n    this.chipsSeletion = [];\n  }\n\n  ngOnInit() {\n    this.filteredOptions = this.myControl.valueChanges.pipe(startWith(''), switchMap(val => {\n      return this.filter(val || '');\n    }));\n    this.categoryService.getAllCategories().subscribe(data => {\n      this.categories = data;\n    });\n    this.companionService.getAllCompanions().subscribe(data => {\n      this.companions = data;\n    });\n  }\n\n  filter(val) {\n    // call the service which makes the http-request\n    return this.cityService.getAllCities().pipe(map(response => response.filter(option => {\n      return option.name.toLowerCase().indexOf(val.toLowerCase()) === 0;\n    })));\n  }\n\n  toggleSelection(chip, category) {\n    chip.toggleSelected();\n\n    if (this.chipsSeletion.length > 0) {\n      this.chipsSeletion.indexOf;\n    } else {\n      this.chipsSeletion.push(category.id);\n    }\n  }\n\n}\n\nLocationsFormComponent.ɵfac = function LocationsFormComponent_Factory(t) {\n  return new (t || LocationsFormComponent)(i0.ɵɵdirectiveInject(i1.CityService), i0.ɵɵdirectiveInject(i2.CountryService), i0.ɵɵdirectiveInject(i3.CompanionService), i0.ɵɵdirectiveInject(i4.CategoryService));\n};\n\nLocationsFormComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n  type: LocationsFormComponent,\n  selectors: [[\"app-locations-form\"]],\n  decls: 32,\n  vars: 8,\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\"], [1, \"example-form\"], [\"appearance\", \"fill\", 1, \"example-full-width\"], [\"type\", \"text\", \"placeholder\", \"Pick one\", \"aria-label\", \"Place\", \"matInput\", \"\", 3, \"formControl\", \"matAutocomplete\"], [\"autoActiveFirstOption\", \"\"], [\"auto\", \"matAutocomplete\"], [3, \"value\", 4, \"ngFor\", \"ngForOf\"], [3, \"disabled\"], [\"value\", \"option1\", 4, \"ngFor\", \"ngForOf\"], [\"matInput\", \"\", \"placeholder\", \"No. Dys\", \"type\", \"number\"], [\"selectable\", \"\", \"multiple\", \"\"], [\"color\", \"accent\", \"selected\", \"\", 3, \"click\", 4, \"ngFor\", \"ngForOf\"], [\"mat-raised-button\", \"\", \"color\", \"primary\"], [3, \"value\"], [\"value\", \"option1\"], [\"color\", \"accent\", \"selected\", \"\", 3, \"click\"], [\"c\", \"matChip\"], [4, \"ngIf\"]],\n  template: function LocationsFormComponent_Template(rf, ctx) {\n    if (rf & 1) {\n      i0.ɵɵelement(0, \"link\", 0);\n      i0.ɵɵelementStart(1, \"form\", 1);\n      i0.ɵɵelementStart(2, \"label\");\n      i0.ɵɵelementStart(3, \"h5\");\n      i0.ɵɵtext(4, \"Please select a place\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(5, \"mat-form-field\", 2);\n      i0.ɵɵelementStart(6, \"mat-label\");\n      i0.ɵɵtext(7, \"Please select a place\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelement(8, \"input\", 3);\n      i0.ɵɵelementStart(9, \"mat-autocomplete\", 4, 5);\n      i0.ɵɵtemplate(11, LocationsFormComponent_mat_option_11_Template, 2, 2, \"mat-option\", 6);\n      i0.ɵɵpipe(12, \"async\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(13, \"h5\");\n      i0.ɵɵtext(14, \"Who are you travelling with? \");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(15, \"mat-form-field\", 2);\n      i0.ɵɵelementStart(16, \"mat-label\");\n      i0.ɵɵtext(17, \"Please select a companion\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(18, \"mat-select\", 7);\n      i0.ɵɵtemplate(19, LocationsFormComponent_mat_option_19_Template, 2, 1, \"mat-option\", 8);\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(20, \"h5\");\n      i0.ɵɵtext(21, \"How many days are you willing to stay ?\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(22, \"mat-form-field\", 2);\n      i0.ɵɵelementStart(23, \"mat-label\");\n      i0.ɵɵtext(24, \"Please select a number of days\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelement(25, \"input\", 9);\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(26, \"h5\");\n      i0.ɵɵtext(27, \"What are your priorities to visit?\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(28, \"mat-chip-list\", 10);\n      i0.ɵɵtemplate(29, LocationsFormComponent_mat_chip_29_Template, 4, 2, \"mat-chip\", 11);\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementStart(30, \"button\", 12);\n      i0.ɵɵtext(31, \"Create my planner\");\n      i0.ɵɵelementEnd();\n      i0.ɵɵelementEnd();\n    }\n\n    if (rf & 2) {\n      const _r0 = i0.ɵɵreference(10);\n\n      i0.ɵɵadvance(8);\n      i0.ɵɵproperty(\"formControl\", ctx.myControl)(\"matAutocomplete\", _r0);\n      i0.ɵɵadvance(3);\n      i0.ɵɵproperty(\"ngForOf\", i0.ɵɵpipeBind1(12, 6, ctx.filteredOptions));\n      i0.ɵɵadvance(7);\n      i0.ɵɵproperty(\"disabled\", ctx.disableSelect.value);\n      i0.ɵɵadvance(1);\n      i0.ɵɵproperty(\"ngForOf\", ctx.companions);\n      i0.ɵɵadvance(10);\n      i0.ɵɵproperty(\"ngForOf\", ctx.categories);\n    }\n  },\n  directives: [i5.ɵNgNoValidate, i5.NgControlStatusGroup, i5.NgForm, i6.MatFormField, i6.MatLabel, i7.MatInput, i5.DefaultValueAccessor, i8.MatAutocompleteTrigger, i5.NgControlStatus, i5.FormControlDirective, i8.MatAutocomplete, i9.NgForOf, i10.MatSelect, i11.MatChipList, i12.MatButton, i13.MatOption, i11.MatChip, i9.NgIf, i14.MatIcon],\n  pipes: [i9.AsyncPipe],\n  styles: [\".example-form[_ngcontent-%COMP%] {\\r\\n  min-width: 150px;\\r\\n  max-width: 380px;\\r\\n  width: 100%;\\r\\n}\\r\\n\\r\\n.example-full-width[_ngcontent-%COMP%] {\\r\\n  width: 100%;\\r\\n}\\r\\n\\r\\nmat-icon[_ngcontent-%COMP%] {\\r\\n  height: 20px;\\r\\n  width: 20px;\\r\\n  font-size: 20px;\\r\\n  margin-right: 5px;\\r\\n}\\r\\n\\r\\nbutton[_ngcontent-%COMP%]{\\r\\n  float: right;\\r\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2F0aW9ucy1mb3JtLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFlBQVk7RUFDWixXQUFXO0VBQ1gsZUFBZTtFQUNmLGlCQUFpQjtBQUNuQjs7QUFDQTtFQUNFLFlBQVk7QUFDZCIsImZpbGUiOiJsb2NhdGlvbnMtZm9ybS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmV4YW1wbGUtZm9ybSB7XHJcbiAgbWluLXdpZHRoOiAxNTBweDtcclxuICBtYXgtd2lkdGg6IDM4MHB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZXhhbXBsZS1mdWxsLXdpZHRoIHtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxubWF0LWljb24ge1xyXG4gIGhlaWdodDogMjBweDtcclxuICB3aWR0aDogMjBweDtcclxuICBmb250LXNpemU6IDIwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuYnV0dG9ue1xyXG4gIGZsb2F0OiByaWdodDtcclxufSJdfQ== */\"]\n});","map":{"version":3,"sources":["C:\\Users\\DELL\\Desktop\\bachelor-thesis\\trip-planner-front\\src\\app\\locations-form\\locations-form.component.ts","C:\\Users\\DELL\\Desktop\\bachelor-thesis\\trip-planner-front\\src\\app\\locations-form\\locations-form.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, Injectable, OnInit } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport {map, startWith, switchMap} from 'rxjs/operators';\nimport {forkJoin, Observable} from 'rxjs';\nimport { CityService } from '../_services/city.service';\nimport { City } from '../_models/city';\nimport { Country } from '../_models/country';\nimport { CountryService } from '../_services/country.service';\nimport { Companion } from '../_models/companion';\nimport { CompanionService } from '../_services/companion.service';\nimport { Category } from '../_models/category';\nimport { CategoryService } from '../_services/cateogry.service';\nimport {CdkDragDrop, moveItemInArray} from '@angular/cdk/drag-drop';\nimport { MatChip } from '@angular/material/chips';\n\n@Component({\n  selector: 'app-locations-form',\n  templateUrl: './locations-form.component.html',\n  styleUrls: ['./locations-form.component.css']\n})\nexport class LocationsFormComponent implements OnInit {\n\n  myControl = new FormControl();\n  cities: City[];\n  countries: Country[];\n  companions: Companion[];\n  categories: Category[];\n  filteredOptions: Observable<City[]>;\n  disableSelect = new FormControl(false);\n  chipsSeletion: number[];\n\n  constructor(private cityService : CityService, private countryService : CountryService,\n              private companionService : CompanionService, private categoryService : CategoryService){\n    this.filteredOptions = new Observable<City[]>();\n    this.cities = [];\n    this.countries = [];\n    this.companions = [];\n    this.categories = [];\n    this.chipsSeletion = [];\n  }\n  \n  ngOnInit() :void {\n    this.filteredOptions = this.myControl.valueChanges\n    .pipe(\n      startWith(''),\n      switchMap(val => {\n        return this.filter(val || '')\n      })       \n    );\n\n    this.categoryService.getAllCategories().subscribe(\n      data => {\n        this.categories = data;\n      }\n    );\n\n    this.companionService.getAllCompanions().subscribe(\n      data => {\n        this.companions = data;\n      }\n    )\n  }\n  \n  filter(val: string): Observable<City[]> {\n  // call the service which makes the http-request\n    return this.cityService.getAllCities()\n    .pipe(\n    map(response => response.filter(option => { \n      return option.name.toLowerCase().indexOf(val.toLowerCase()) === 0\n    }))\n  )\n  \n }  \n\n toggleSelection(chip: MatChip, category: Category){\n  chip.toggleSelected();\n  if(this.chipsSeletion.length > 0){\n    this.chipsSeletion.indexOf\n  }else{\n    this.chipsSeletion.push(category.id);\n  }\n }\n\n}\n","<link href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css\" rel=\"stylesheet\" integrity=\"sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x\" crossorigin=\"anonymous\">\n\n<form class=\"example-form\">\n  <label><h5>Please select a place</h5></label>\n  <mat-form-field class=\"example-full-width\" appearance=\"fill\">\n    <mat-label>Please select a place</mat-label>\n    <input type=\"text\"\n           placeholder=\"Pick one\"\n           aria-label=\"Place\"\n           matInput\n           [formControl]=\"myControl\"\n           [matAutocomplete]=\"auto\">\n    <mat-autocomplete autoActiveFirstOption  #auto=\"matAutocomplete\">\n      <mat-option *ngFor=\"let option of filteredOptions | async\" [value]=\"option.name\">\n        {{option.name}}\n      </mat-option>\n    </mat-autocomplete>\n  </mat-form-field>\n\n  <h5>Who are you travelling with?  </h5>\n  <mat-form-field appearance=\"fill\" class=\"example-full-width\">\n    <mat-label>Please select a companion</mat-label>\n    <mat-select [disabled]=\"disableSelect.value\">\n      <mat-option value=\"option1\" *ngFor=\"let companion of companions\">{{companion.type}}</mat-option>\n    </mat-select>\n  </mat-form-field>\n\n  <h5>How many days are you willing to stay ?</h5>\n  <mat-form-field class=\"example-full-width\" appearance=\"fill\">\n    <mat-label>Please select a number of days</mat-label>\n    <input matInput placeholder=\"No. Dys\"  type=\"number\">\n  </mat-form-field>\n\n   <h5>What are your priorities to visit?</h5> \n  <mat-chip-list  selectable multiple>\n    <mat-chip #c=\"matChip\" color=\"accent\" selected *ngFor=\"let category of categories\" \n    (click)=\"toggleSelection(c, category)\">\n  <mat-icon *ngIf=\"c.selected\">check</mat-icon>\n  {{category.name}}\n  </mat-chip>\n  </mat-chip-list>\n  <button mat-raised-button color=\"primary\">Create my planner</button>\n</form>\n"],"sourceRoot":""},"metadata":{},"sourceType":"module"}
