{"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 \"@angular/forms\";\nimport * as i3 from \"@angular/material/form-field\";\nimport * as i4 from \"@angular/material/input\";\nimport * as i5 from \"@angular/material/autocomplete\";\nimport * as i6 from \"@angular/common\";\nimport * as i7 from \"@angular/material/core\";\n\nfunction LocationsFormComponent_mat_option_7_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"mat-option\", 6);\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, \" \");\n }\n}\n\nexport class LocationsFormComponent {\n constructor(cityService) {\n this.cityService = cityService;\n this.myControl = new FormControl();\n this.options = ['One', 'Two', 'Three'];\n this.filteredOptions = new Observable();\n this.cities = [];\n }\n\n ngOnInit() {\n this.filteredOptions = this.myControl.valueChanges.pipe(startWith(''), switchMap(value => {\n return this._fi;\n }), map(value => this._filter(value)));\n this.myControl.valueChanges.subscribe(value => {\n if (value.length >= 1) {\n this.cityService.getAllCities(value).subscribe(response => {\n this.filteredOptions = response;\n });\n } else {\n return null;\n }\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}\n\nLocationsFormComponent.ɵfac = function LocationsFormComponent_Factory(t) {\n return new (t || LocationsFormComponent)(i0.ɵɵdirectiveInject(i1.CityService));\n};\n\nLocationsFormComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: LocationsFormComponent,\n selectors: [[\"app-locations-form\"]],\n decls: 9,\n vars: 5,\n consts: [[1, \"example-form\"], [\"appearance\", \"fill\", 1, \"example-full-width\"], [\"type\", \"text\", \"placeholder\", \"Pick one\", \"aria-label\", \"Number\", \"matInput\", \"\", 3, \"formControl\", \"matAutocomplete\"], [\"autoActiveFirstOption\", \"\"], [\"auto\", \"matAutocomplete\"], [3, \"value\", 4, \"ngFor\", \"ngForOf\"], [3, \"value\"]],\n template: function LocationsFormComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"form\", 0);\n i0.ɵɵelementStart(1, \"mat-form-field\", 1);\n i0.ɵɵelementStart(2, \"mat-label\");\n i0.ɵɵtext(3, \"Number\");\n i0.ɵɵelementEnd();\n i0.ɵɵelement(4, \"input\", 2);\n i0.ɵɵelementStart(5, \"mat-autocomplete\", 3, 4);\n i0.ɵɵtemplate(7, LocationsFormComponent_mat_option_7_Template, 2, 2, \"mat-option\", 5);\n i0.ɵɵpipe(8, \"async\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementEnd();\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const _r0 = i0.ɵɵreference(6);\n\n i0.ɵɵadvance(4);\n i0.ɵɵproperty(\"formControl\", ctx.myControl)(\"matAutocomplete\", _r0);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"ngForOf\", i0.ɵɵpipeBind1(8, 3, ctx.filteredOptions));\n }\n },\n directives: [i2.ɵNgNoValidate, i2.NgControlStatusGroup, i2.NgForm, i3.MatFormField, i3.MatLabel, i4.MatInput, i2.DefaultValueAccessor, i5.MatAutocompleteTrigger, i2.NgControlStatus, i2.FormControlDirective, i5.MatAutocomplete, i6.NgForOf, i7.MatOption],\n pipes: [i6.AsyncPipe],\n styles: [\".example-form[_ngcontent-%COMP%] {\\r\\n min-width: 150px;\\r\\n max-width: 500px;\\r\\n width: 100%;\\r\\n }\\r\\n \\r\\n .example-full-width[_ngcontent-%COMP%] {\\r\\n width: 100%;\\r\\n }\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2F0aW9ucy1mb3JtLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLFdBQVc7RUFDYjs7RUFFQTtJQUNFLFdBQVc7RUFDYiIsImZpbGUiOiJsb2NhdGlvbnMtZm9ybS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmV4YW1wbGUtZm9ybSB7XHJcbiAgICBtaW4td2lkdGg6IDE1MHB4O1xyXG4gICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICBcclxuICAuZXhhbXBsZS1mdWxsLXdpZHRoIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH0iXX0= */\"]\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 {Observable} from 'rxjs';\nimport { CityService } from '../_services/city.service';\nimport { City } from '../_models/city';\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 options: string[] = ['One', 'Two', 'Three'];\n cities: City[];\n filteredOptions: Observable;\n\n constructor(private cityService : CityService){\n this.filteredOptions = new Observable();\n this.cities = [];\n }\n\n ngOnInit() {\n this.filteredOptions = this.myControl.valueChanges\n .pipe(\n startWith(''),\n switchMap(value => {\n return this._fi\n })\n map(value => this._filter(value))\n );\n\n this.myControl.valueChanges\n .subscribe(value => {\n if(value.length >= 1){\n this.cityService.getAllCities(value).subscribe(response => {\n this.filteredOptions = response;\n });\n }\n else {\n return null;\n }\n })\n }\n\n \n filter(val: string): Observable {\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","
\n \n Number\n \n \n \n {{option}}\n \n \n \n
"],"sourceRoot":""},"metadata":{},"sourceType":"module"}