ng-jvx-multiselect 1.1.28 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/esm2020/lib/directives/ng-jvx-disabled-option.directive.mjs +3 -3
  2. package/esm2020/lib/directives/ng-jvx-focus.directive.mjs +3 -3
  3. package/esm2020/lib/directives/ng-jvx-group-header.directive.mjs +3 -3
  4. package/esm2020/lib/directives/ng-jvx-options-template.directive.mjs +3 -3
  5. package/esm2020/lib/directives/ng-jvx-selection-template.directive.mjs +3 -3
  6. package/esm2020/lib/ng-jvx-multiselect.component.mjs +18 -18
  7. package/esm2020/lib/ng-jvx-multiselect.module.mjs +17 -19
  8. package/esm2020/lib/ng-jvx-multiselect.service.mjs +3 -3
  9. package/esm2020/lib/ng-jvx-option/ng-jvx-option.component.mjs +6 -6
  10. package/esm2020/lib/ng-jvx-panel/ng-jvx-panel.component.mjs +6 -6
  11. package/fesm2015/ng-jvx-multiselect.mjs +63 -65
  12. package/fesm2015/ng-jvx-multiselect.mjs.map +1 -1
  13. package/fesm2020/ng-jvx-multiselect.mjs +63 -65
  14. package/fesm2020/ng-jvx-multiselect.mjs.map +1 -1
  15. package/{ng-jvx-multiselect.d.ts → index.d.ts} +0 -0
  16. package/lib/directives/ng-jvx-disabled-option.directive.d.ts +1 -1
  17. package/lib/directives/ng-jvx-focus.directive.d.ts +1 -1
  18. package/lib/directives/ng-jvx-group-header.directive.d.ts +1 -1
  19. package/lib/directives/ng-jvx-options-template.directive.d.ts +1 -1
  20. package/lib/directives/ng-jvx-selection-template.directive.d.ts +1 -1
  21. package/lib/ng-jvx-multiselect.component.d.ts +5 -5
  22. package/lib/ng-jvx-option/ng-jvx-option.component.d.ts +1 -1
  23. package/lib/ng-jvx-panel/ng-jvx-panel.component.d.ts +1 -1
  24. package/package.json +7 -7
  25. package/lib/directives/ng-jvx-disabled-option.directive.d.ts.map +0 -1
  26. package/lib/directives/ng-jvx-focus.directive.d.ts.map +0 -1
  27. package/lib/directives/ng-jvx-group-header.directive.d.ts.map +0 -1
  28. package/lib/directives/ng-jvx-options-template.directive.d.ts.map +0 -1
  29. package/lib/directives/ng-jvx-selection-template.directive.d.ts.map +0 -1
  30. package/lib/interfaces/ng-jvx-group-mapper.d.ts.map +0 -1
  31. package/lib/interfaces/ng-jvx-option-mapper.d.ts.map +0 -1
  32. package/lib/interfaces/ng-jvx-search-mapper.d.ts.map +0 -1
  33. package/lib/ng-jvx-multiselect.component.d.ts.map +0 -1
  34. package/lib/ng-jvx-multiselect.module.d.ts.map +0 -1
  35. package/lib/ng-jvx-multiselect.service.d.ts.map +0 -1
  36. package/lib/ng-jvx-option/ng-jvx-option.component.d.ts.map +0 -1
  37. package/lib/ng-jvx-panel/ng-jvx-panel.component.d.ts.map +0 -1
  38. package/ng-jvx-multiselect.d.ts.map +0 -1
  39. package/public-api.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ng-jvx-multiselect.mjs","sources":["../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-option/ng-jvx-option.component.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-option/ng-jvx-option.component.html","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-options-template.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-selection-template.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-group-header.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-disabled-option.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.service.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-focus.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.component.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.component.html","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-panel/ng-jvx-panel.component.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-panel/ng-jvx-panel.component.html","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.module.ts","../../../projects/ng-jvx-multiselect/src/public-api.ts","../../../projects/ng-jvx-multiselect/src/ng-jvx-multiselect.ts"],"sourcesContent":["import {AfterViewChecked, Component, ContentChild, DoCheck, ElementRef, Input, OnInit, ViewChild} from '@angular/core';\r\nimport {MatListOption} from '@angular/material/list';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'ng-jvx-option',\r\n templateUrl: './ng-jvx-option.component.html',\r\n styleUrls: ['./ng-jvx-option.component.scss']\r\n})\r\nexport class NgJvxOptionComponent implements OnInit, DoCheck {\r\n @ViewChild('listOption', {static: true}) listOption: MatListOption;\r\n @Input() value: any;\r\n public isSelected = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n ngDoCheck(): void {\r\n if (this.isSelected !== this.listOption.selected) {\r\n this.isSelected = this.listOption.selected;\r\n }\r\n }\r\n\r\n deselect(): void{\r\n this.listOption.selected = false;\r\n }\r\n}\r\n","<mat-list-option [value]=\"value\" [ngClass]=\"{'ng-jvx-option': true, 'mat-list-single-selected-option': isSelected}\" #listOption>\r\n <ng-content></ng-content>\r\n <div class=\"list-option-background\"></div>\r\n</mat-list-option>\r\n","import {Directive, ElementRef, HostListener, Input, TemplateRef, ViewContainerRef} from '@angular/core';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxOptionsTemplate]'\r\n})\r\nexport class NgJvxOptionsTemplateDirective {\r\n\r\n constructor(\r\n private el: ElementRef,\r\n public template: TemplateRef<any>,\r\n private vcRef: ViewContainerRef) {\r\n }\r\n\r\n\r\n\r\n @Input() set ngJvxOptionsTemplateOf(source: Array<any[]>) {\r\n for (const item of source) {\r\n this.vcRef.createEmbeddedView(this.template, {$implicit: item});\r\n }\r\n }\r\n\r\n}\r\n","import {Directive, Input, TemplateRef, ViewContainerRef} from '@angular/core';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxSelectionTemplate]'\r\n})\r\nexport class NgJvxSelectionTemplateDirective {\r\n\r\n constructor(\r\n public template: TemplateRef<any>,\r\n private vcRef: ViewContainerRef) {\r\n }\r\n\r\n @Input() set ngJvxSelectionTemplateOf(source: Array<any[]>) {\r\n for (const item of source) {\r\n this.vcRef.createEmbeddedView(this.template, {$implicit: item});\r\n }\r\n }\r\n\r\n}\r\n","import {Directive, Input, TemplateRef, ViewContainerRef} from '@angular/core';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxGroupHeader]'\r\n})\r\nexport class NgJvxGroupHeaderDirective {\r\n\r\n constructor(\r\n public template: TemplateRef<any>,\r\n private vcRef: ViewContainerRef) {\r\n }\r\n\r\n @Input() set ngJvxGroupHeaderOf(source: Array<any[]>) {\r\n for (const item of source) {\r\n this.vcRef.createEmbeddedView(this.template, {$implicit: item});\r\n }\r\n }\r\n\r\n\r\n}\r\n","import {Directive, ElementRef, HostListener, Input, OnDestroy, OnInit} from '@angular/core';\r\nimport {fromEvent, Subject} from 'rxjs';\r\nimport {takeUntil} from 'rxjs/operators';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxDisabledOption]'\r\n})\r\nexport class NgJvxDisabledOptionDirective implements OnInit, OnDestroy {\r\n private isDisabled = false;\r\n private originalOpacity = 1;\r\n\r\n private unsubs = new Subject<void>();\r\n\r\n @Input() set ngJvxDisabledOption(source: boolean) {\r\n this.isDisabled = source;\r\n if (this.isDisabled) {\r\n this.el.nativeElement.style.opacity = this.originalOpacity ? this.originalOpacity / 2 : 0.5;\r\n } else {\r\n this.el.nativeElement.style.opacity = this.originalOpacity;\r\n }\r\n }\r\n\r\n constructor(\r\n private el: ElementRef) {\r\n this.originalOpacity = el.nativeElement.style.opacity;\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n fromEvent(this.el.nativeElement.closest('.mat-list-item-content'), 'click', {\r\n capture: true,\r\n }).pipe(takeUntil(this.unsubs)).subscribe((e: MouseEvent) => {\r\n if (this.isDisabled) {\r\n e.stopImmediatePropagation();\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unsubs.next();\r\n this.unsubs.complete();\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable} from 'rxjs';\r\nimport {HttpClient, HttpParams} from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NgJvxMultiselectService {\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n getList({\r\n url,\r\n ignorePagination = false,\r\n currentPage,\r\n pageSize,\r\n requestType = 'get',\r\n requestHeaders,\r\n search,\r\n searchProp = 'search',\r\n data\r\n }: {\r\n url: string, ignorePagination: boolean,\r\n currentPage: number,\r\n pageSize: number,\r\n requestType: 'get' | 'post',\r\n requestHeaders: any,\r\n search?: string,\r\n searchProp?: string,\r\n data: any\r\n }): Observable<any> {\r\n let params = new HttpParams();\r\n if (search && search.length > 0) {\r\n params = params.set(searchProp, search);\r\n }\r\n if (!ignorePagination) {\r\n params = params.set('page', currentPage.toString())\r\n .set('size', pageSize.toString());\r\n }\r\n const options = {\r\n mode: 'no-cors', // cors\r\n headers: requestHeaders,\r\n // withCredentials: true,\r\n // credentials: 'same-origin', // cache: 'default',\r\n data,\r\n params\r\n };\r\n if (requestType === 'get') {\r\n return this.http.get(url, options);\r\n } else {\r\n return this.http.post(url, options);\r\n }\r\n }\r\n}\r\n","import {AfterContentInit, Directive, ElementRef, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\nimport {timer} from 'rxjs';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxFocus]'\r\n})\r\nexport class NgJvxFocusDirective implements OnInit, OnChanges {\r\n @Input() ngJvxFocus: boolean;\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.ngJvxFocus) {\r\n this.el.nativeElement.focus();\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.hasOwnProperty('ngJvxFocus') && changes.ngJvxFocus.currentValue === true) {\r\n this.el.nativeElement.focus();\r\n }\r\n }\r\n}\r\n","import {\r\n AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n ElementRef, EventEmitter, forwardRef, HostBinding,\r\n Input,\r\n OnChanges, OnDestroy,\r\n OnInit, Optional, Output, QueryList, Self,\r\n SimpleChanges,\r\n ViewChild, ViewChildren\r\n} from '@angular/core';\r\nimport {NgJvxOptionsTemplateDirective} from './directives/ng-jvx-options-template.directive';\r\nimport {ControlValueAccessor, FormBuilder, FormControl, FormGroup, NG_VALUE_ACCESSOR, NgControl} from '@angular/forms';\r\nimport {MatSelectionList, MatSelectionListChange} from '@angular/material/list';\r\nimport {NgJvxOptionComponent} from './ng-jvx-option/ng-jvx-option.component';\r\nimport {MatMenuTrigger} from '@angular/material/menu';\r\nimport {NgJvxMultiselectService} from './ng-jvx-multiselect.service';\r\nimport {HttpHeaders} from '@angular/common/http';\r\nimport {NgScrollbar} from 'ngx-scrollbar';\r\nimport {debounceTime, distinctUntilChanged, map, switchMap, takeUntil, tap} from 'rxjs/operators';\r\nimport {combineLatest, forkJoin, from, fromEvent, iif, noop, observable, Observable, of, Subject, timer} from 'rxjs';\r\nimport {NgJvxOptionMapper} from './interfaces/ng-jvx-option-mapper';\r\nimport {NgJvxSelectionTemplateDirective} from './directives/ng-jvx-selection-template.directive';\r\nimport {MatFormFieldControl} from '@angular/material/form-field';\r\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\r\nimport {NgJvxGroupHeaderDirective} from './directives/ng-jvx-group-header.directive';\r\nimport {NgJvxSearchMapper} from './interfaces/ng-jvx-search-mapper';\r\nimport {NgJvxGroup, NgJvxGroupMapper} from './interfaces/ng-jvx-group-mapper';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'ng-jvx-multiselect',\r\n templateUrl: './ng-jvx-multiselect.component.html',\r\n styleUrls: ['./ng-jvx-multiselect.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: MatFormFieldControl,\r\n useExisting: forwardRef(() => NgJvxMultiselectComponent),\r\n multi: true,\r\n }]\r\n})\r\nexport class NgJvxMultiselectComponent implements OnInit, OnDestroy, AfterViewInit, OnChanges, MatFormFieldControl<any>, ControlValueAccessor {\r\n static nextId = 0;\r\n @HostBinding() id = `jvx-multiselect-${NgJvxMultiselectComponent.nextId++}`;\r\n\r\n @HostBinding('class.floating')\r\n get shouldLabelFloat(): boolean {\r\n return this.focused || !this.empty;\r\n }\r\n\r\n @ViewChild('jvxMultiselect', {static: true}) jvxMultiselect: ElementRef;\r\n @ViewChild('selectionContainer', {static: false}) selectionContainer: ElementRef;\r\n @ViewChild('selection', {static: true}) selection: MatSelectionList;\r\n @ViewChild('trigger', {static: true}) trigger: MatMenuTrigger;\r\n @ViewChild('scrollbar', {static: false}) scrollbar: NgScrollbar;\r\n @ViewChild('multiContainer', {static: false}) multiContainer: ElementRef;\r\n @ViewChildren(NgJvxOptionComponent) optionComp: QueryList<NgJvxOptionComponent>;\r\n @ContentChild(NgJvxOptionsTemplateDirective) optionsTemplate: NgJvxOptionsTemplateDirective | null = null;\r\n @ContentChild(NgJvxSelectionTemplateDirective) selectionTemplate: NgJvxSelectionTemplateDirective | null = null;\r\n @ContentChild(NgJvxGroupHeaderDirective) groupHeaderTemplate: NgJvxGroupHeaderDirective | null = null;\r\n // @ContentChild(NgJvxOptionComponent) optionComp: NgJvxOptionComponent;\r\n // @ContentChild(TemplateRef) optionsTemplate: TemplateRef<any> | null = null;\r\n @Input() options: any[] = [];\r\n @Input() multi = false;\r\n @Input() url = '';\r\n @Input() requestType: 'get' | 'post' = 'get';\r\n @Input() itemValue = 'value';\r\n @Input() itemText = 'text';\r\n @Input() ignorePagination = false;\r\n @Input() clearable = false;\r\n @Input() closeOnClick = true;\r\n @Input() hasErrors = false;\r\n @Input() searchMode: null | 'server' | 'client' = null;\r\n @Input() searchInput = false;\r\n @Input() searchLabel = 'search';\r\n @Input() listProp = '';\r\n @Input() totalRowsProp = '';\r\n @Input() panelClass = '';\r\n @Input() searchProp = 'search';\r\n @Input() mapper: NgJvxOptionMapper<any> = {\r\n mapOption(source: any): Observable<any> {\r\n return of(source);\r\n }\r\n };\r\n @Input() searchMapper: NgJvxSearchMapper<any> = {\r\n mapSearch: (source: string, options: any[]): Observable<any> => {\r\n return of(options.filter(o => o[this.itemText].toString().toLowerCase().includes(source.toString().toLowerCase())));\r\n }\r\n };\r\n @Input() groupBy: NgJvxGroupMapper<any> | string | null;\r\n\r\n @Input() set value(value: any[]) {\r\n this.pValue = value ?? [];\r\n if (value) {\r\n this.form.get('selectionValue').setValue(this.pValue.map(v => v[this.itemValue]));\r\n } else {\r\n this.form.get('selectionValue').setValue(value);\r\n }\r\n this.stateChanges.next();\r\n }\r\n\r\n get value(): any[] {\r\n return this.pValue;\r\n }\r\n\r\n @Input() requestHeaders: HttpHeaders = new HttpHeaders();\r\n\r\n @Input()\r\n get required(): boolean {\r\n return this._required;\r\n }\r\n\r\n set required(req) {\r\n this._required = coerceBooleanProperty(req);\r\n this.stateChanges.next();\r\n }\r\n\r\n // tslint:disable-next-line:variable-name\r\n private _required = false;\r\n\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n this._disabled ? this.parts.disable() : this.parts.enable();\r\n this.stateChanges.next();\r\n }\r\n\r\n // tslint:disable-next-line:variable-name\r\n private _disabled = false;\r\n\r\n get errorState(): boolean {\r\n if (this.ngControl != null) {\r\n return this.ngControl.invalid && this.ngControl.touched;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n @Output() valueChange: EventEmitter<any[]> = new EventEmitter<any[]>();\r\n @Output() jvxMultiselectOpen: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() jvxMultiselectOpened: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() jvxMultiselectClose: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() jvxMultiselectClosed: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() scrollEnd: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n public controlType = 'ng-jvx-multiselect';\r\n public document = document;\r\n public window = window;\r\n public form: FormGroup;\r\n public isOpen = false;\r\n public isLoading = false;\r\n public showList = true;\r\n public asyncOptions: any = [];\r\n public selectableOptions = [];\r\n public orderedOptions: { group: any, options: any[] }[] = [];\r\n public searchValue = '';\r\n public yPosition: 'above' | 'below' = 'above';\r\n public stateChanges = new Subject<void>();\r\n public currentPage = 0;\r\n public listContainerSize: { height: string, minHeight: string, width: string } = {height: 'auto', minHeight: '0', width: '100%'};\r\n public parts: FormGroup;\r\n\r\n public touched = false;\r\n\r\n public placeholder: string;\r\n public focused = false;\r\n public multiContainerWidth = 100;\r\n\r\n private searchValueSubject = new Subject<string>();\r\n private searchValue$ = this.searchValueSubject.asObservable();\r\n private pValue: any[] = [];\r\n private shouldLoadMore = true;\r\n private pageSize = 15;\r\n private unsubscribe = new Subject<void>();\r\n private unsubscribe$ = this.unsubscribe.asObservable();\r\n public onTouched = () => {\r\n };\r\n\r\n\r\n constructor(private formBuilder: FormBuilder, private service: NgJvxMultiselectService,\r\n private elementRef: ElementRef,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n @Optional() @Self() public ngControl: NgControl, fb: FormBuilder) {\r\n if (this.ngControl != null) {\r\n // Setting the value accessor directly (instead of using\r\n // the providers) to avoid running into a circular import.\r\n this.ngControl.valueAccessor = this;\r\n }\r\n\r\n this.parts = fb.group({\r\n area: '',\r\n exchange: '',\r\n subscriber: '',\r\n });\r\n this.form = this.formBuilder.group({\r\n selectionValue: new FormControl(this.selectionValue)\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.stateChange$.pipe(takeUntil(this.unsubscribe)).subscribe(() => {\r\n this.changeDetectorRef.markForCheck();\r\n });\r\n this.selectableOptions = [...this.options];\r\n this.updateOrderedOptions(this.selectableOptions).subscribe(noop);\r\n fromEvent(window, 'resize').pipe(takeUntil(this.unsubscribe), debounceTime(100), map(() => {\r\n return this.listContainerSize.width = this.jvxMultiselect.nativeElement.offsetWidth + 'px';\r\n\r\n }), switchMap(() => timer(100)), tap(() => {\r\n this.multiContainerWidth = this.multiContainer?.nativeElement?.offsetWidth ?? 100;\r\n this.yPosition = window.innerHeight - this.jvxMultiselect.nativeElement?.getBoundingClientRect()?.top < 260 ? 'above' : 'below';\r\n this.changeDetectorRef.markForCheck();\r\n })).subscribe(noop);\r\n\r\n this.searchValue$.pipe(takeUntil(this.unsubscribe), debounceTime(300), distinctUntilChanged((prev, curr) => {\r\n return curr === this.searchValue;\r\n }), switchMap((val: string) => {\r\n this.searchValue = val;\r\n this.currentPage = 0;\r\n if (this.searchMode === 'client') {\r\n return this.clientSearch();\r\n } else if (this.url && this.url.length > 0) {\r\n return this.serverSearch();\r\n }\r\n }\r\n )\r\n ).subscribe((val: any[]) => {\r\n this.changeDetectorRef.markForCheck();\r\n });\r\n }\r\n\r\n private clientSearch(): Observable<any> {\r\n let obs: Observable<any>;\r\n if (this.url && this.url.length > 0) {\r\n this.selectableOptions = [];\r\n this.updateOrderedOptions(this.selectableOptions).subscribe(noop);\r\n this.shouldLoadMore = true;\r\n obs = this.getList().pipe(map(() => {\r\n return this.selectableOptions;\r\n }));\r\n } else {\r\n obs = of(this.options);\r\n }\r\n return obs.pipe(switchMap((val) => this.searchMapper.mapSearch(this.searchValue, val)), tap((res) => {\r\n this.selectableOptions = [];\r\n this.selectableOptions.push(...res);\r\n }), switchMap(() =>\r\n this.updateOrderedOptions(this.selectableOptions)\r\n ));\r\n }\r\n\r\n private serverSearch(): Observable<any> {\r\n this.shouldLoadMore = true;\r\n this.selectableOptions = [];\r\n this.shouldLoadMore = true;\r\n return this.getList();\r\n }\r\n\r\n\r\n ngOnDestroy(): void {\r\n this.unsubscribe.next();\r\n this.stateChanges.complete();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n timer(0).subscribe(() => {\r\n this.listContainerSize.width = this.jvxMultiselect.nativeElement.offsetWidth + 'px';\r\n });\r\n\r\n if (this.scrollbar) {\r\n this.scrollbar.scrolled.pipe(takeUntil(this.unsubscribe$)).subscribe((e: any) => {\r\n this.onScrolled(e);\r\n });\r\n }\r\n timer(0).pipe(tap(() => {\r\n this.multiContainerWidth = this.multiContainer?.nativeElement?.offsetWidth ?? 100;\r\n this.yPosition = window.innerHeight - this.jvxMultiselect.nativeElement?.getBoundingClientRect()?.top < 260 ? 'above' : 'below';\r\n this.changeDetectorRef.markForCheck();\r\n })).subscribe(noop);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.options) {\r\n this.selectableOptions = [...this.options];\r\n this.updateOrderedOptions(this.selectableOptions).subscribe(noop);\r\n }\r\n }\r\n\r\n\r\n get selectionValue(): any[] {\r\n return this.value.map((v) => {\r\n return v[this.itemValue];\r\n });\r\n }\r\n\r\n get empty(): boolean {\r\n const n = this.parts.value;\r\n return !n.area && !n.exchange && !n.subscriber;\r\n }\r\n\r\n onCLickOnMenu(e: MouseEvent): void {\r\n if (this.multi || this.closeOnClick === false) {\r\n e.stopPropagation();\r\n }\r\n }\r\n\r\n\r\n private propagateChange(_: any): any {\r\n }\r\n\r\n // this is the initial value set to the component\r\n public writeValue(obj: any[]): void {\r\n this.value = obj;\r\n }\r\n\r\n // registers 'fn' that will be fired when changes are made\r\n // this is how we emit the changes back to the form\r\n public registerOnChange(fn: any): void {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onChange(e: MatSelectionListChange): void {\r\n\r\n let vals = e.source.selectedOptions.selected.map(o => o.value);\r\n vals = this.selectableOptions.filter(o => vals.includes(o[this.itemValue]));\r\n console.log(vals);\r\n const selectableIds = this.selectableOptions.map(s => s[this.itemValue]);\r\n console.log(selectableIds);\r\n if (this.multi) {\r\n // if search is active, probably some of the already selected values are not included in the selectable options,\r\n // so we have to push them in the selected values of the list;\r\n for (const v of this.value) {\r\n if (!selectableIds.includes(v[this.itemValue])) {\r\n vals = [v, ...vals];\r\n }\r\n }\r\n }\r\n vals.sort((a, b) => {\r\n return typeof a[this.itemValue] === 'string' ?\r\n a[this.itemValue].localeCompare(b[this.itemValue]) : a[this.itemValue] - b[this.itemValue];\r\n });\r\n console.log(vals);\r\n this.value = [...vals];\r\n this.form.get('selectionValue').setValue(this.value.map(v => v[this.itemValue]));\r\n\r\n this.valueChange.emit(this.value);\r\n this.propagateChange(this.value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n\r\n onFocusIn(event: FocusEvent): void {\r\n if (!this.focused) {\r\n this.focused = true;\r\n this.stateChanges.next();\r\n }\r\n }\r\n\r\n onFocusOut(event: FocusEvent): void {\r\n if (!this.elementRef.nativeElement.contains(event.relatedTarget as Element)) {\r\n this.touched = true;\r\n this.focused = false;\r\n this.onTouched();\r\n this.stateChanges.next();\r\n }\r\n }\r\n\r\n onMenuOpen(): void {\r\n this.isOpen = true;\r\n\r\n this.jvxMultiselectOpen.emit();\r\n }\r\n\r\n onMenuClose(): void {\r\n this.isOpen = false;\r\n this.jvxMultiselectClose.emit();\r\n }\r\n\r\n deselect(val: any): void {\r\n this.value = [...this.value.filter(v => v[this.itemValue] !== val[this.itemValue])];\r\n // this.value.splice(this.value.findIndex(v => v[this.itemValue] === val[this.itemValue]), 1);\r\n this.form.get('selectionValue').setValue(this.value.map(m => m.value));\r\n this.valueChange.emit(this.value);\r\n this.propagateChange(this.value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n private setSelectionContainerSize(): void {\r\n timer(0).subscribe(() => {\r\n if (this.selectionContainer) {\r\n this.listContainerSize.height = this.selectionContainer.nativeElement.offsetHeight > 260 ? '260px' : 'auto';\r\n this.listContainerSize.minHeight = this.selectionContainer.nativeElement.offsetHeight <= 260 ?\r\n this.selectionContainer.nativeElement.offsetHeight + 'px' : '260px';\r\n this.listContainerSize.width = this.jvxMultiselect.nativeElement.offsetWidth + 'px';\r\n }\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n clickOnMenuTrigger(e: MouseEvent): void {\r\n if (!this.disabled) {\r\n this.showList = false;\r\n this.shouldLoadMore = true;\r\n timer(0).subscribe(() => {\r\n this.showList = true;\r\n if (this.url.length > 0) {\r\n e.preventDefault();\r\n\r\n this.selectableOptions.length = 0;\r\n this.updateOrderedOptions(this.selectableOptions);\r\n this.getList().subscribe(noop);\r\n this.setSelectionContainerSize();\r\n\r\n } else {\r\n this.trigger.openMenu();\r\n this.setSelectionContainerSize();\r\n }\r\n });\r\n }\r\n }\r\n\r\n private getList(): Observable<any> {\r\n this.isLoading = true;\r\n return this.service.getList({\r\n url: this.url,\r\n requestType: this.requestType,\r\n data: {},\r\n currentPage: ++this.currentPage,\r\n ignorePagination: this.ignorePagination,\r\n requestHeaders: this.requestHeaders,\r\n search: this.searchValue,\r\n searchProp: this.searchProp,\r\n pageSize: this.pageSize\r\n }).pipe(switchMap((val) => {\r\n let result = [];\r\n if (this.listProp.length > 0) {\r\n result = [...val[this.listProp]];\r\n } else {\r\n result = [...val];\r\n }\r\n\r\n if (result.length === 0) {\r\n this.shouldLoadMore = false;\r\n this.isLoading = false;\r\n return forkJoin([]);\r\n } else {\r\n const newOptions = [];\r\n\r\n for (const opt of result) {\r\n const newOption = this.mapper.mapOption(opt);\r\n newOptions.push(newOption);\r\n }\r\n return forkJoin(newOptions);\r\n }\r\n }), switchMap((finVal: any) => {\r\n this.selectableOptions.push(...finVal);\r\n return this.updateOrderedOptions(this.selectableOptions);\r\n }), map((val) => {\r\n this.isLoading = false;\r\n this.trigger.openMenu();\r\n this.setSelectionContainerSize();\r\n this.changeDetectorRef.markForCheck();\r\n return val;\r\n }));\r\n }\r\n\r\n onScrolled(e: any): void {\r\n if (e.target.scrollTop + 220 + ((this.searchInput ? 0 : 1) * 40) === this.selectionContainer.nativeElement.offsetHeight\r\n && !this.isLoading) {\r\n this.scrollEnd.emit();\r\n if (this.url && this.url.length > 0 && !this.ignorePagination && this.shouldLoadMore) {\r\n this.getList().subscribe(noop);\r\n }\r\n }\r\n }\r\n\r\n onMenuOpened(): void {\r\n this.jvxMultiselectOpened.emit();\r\n }\r\n\r\n onMenuClosed(): void {\r\n if ((!this.url || this.url.length === 0) && this.searchMode === 'client') {\r\n this.searchValueSubject.next('');\r\n } else {\r\n this.searchValue = '';\r\n this.currentPage = 0;\r\n }\r\n this.jvxMultiselectClosed.emit();\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n onSearchInputClick(e: MouseEvent): void {\r\n e.stopPropagation();\r\n }\r\n\r\n onSearchValueChange(e: any): void {\r\n this.searchValueSubject.next(e.target.value);\r\n }\r\n\r\n clear(e: Event): void {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n this.value = [];\r\n this.form.get('selectionValue').setValue(this.value.map(v => v[this.itemValue]));\r\n this.propagateChange(this.value);\r\n this.valueChange.emit(this.value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n setDescribedByIds(ids: string[]): void {\r\n const controlElement = this.elementRef.nativeElement\r\n .querySelector('.ng-jvx-multiselect');\r\n controlElement.setAttribute('aria-describedby', ids.join(' '));\r\n }\r\n\r\n onContainerClick(event: MouseEvent): void {\r\n // if ((event.target as Element).tagName.toLowerCase() !== 'input') {\r\n // this.elementRef.nativeElement.querySelector('input').focus();\r\n // }\r\n }\r\n\r\n private get stateChange$(): Observable<any> {\r\n return this.stateChanges.asObservable();\r\n }\r\n\r\n updateOrderedOptions(options): Observable<any> {\r\n let obs = of(options);\r\n if (this.groupBy) {\r\n this.orderedOptions.length = 0;\r\n const obsArr = [];\r\n for (const option of options) {\r\n if (typeof this.groupBy !== 'string') {\r\n obsArr.push(this.groupBy.mapGroup(option));\r\n } else {\r\n obsArr.push(of({group: option[this.groupBy], option} as NgJvxGroup<any>));\r\n }\r\n }\r\n obs = forkJoin(obsArr).pipe(map((res: any) => {\r\n const groups = [...new Set(res.map(item => item.group))];\r\n for (const group of groups) {\r\n this.orderedOptions.push({\r\n group,\r\n options: res.filter(r => r.group === group).map(o => o.option)\r\n });\r\n }\r\n return this.orderedOptions;\r\n }));\r\n }\r\n return obs;\r\n }\r\n\r\n public closeMenu(): void {\r\n this.trigger.closeMenu();\r\n }\r\n}\r\n","<div class=\"ng-jvx-multiselect\" [ngClass]=\"{'disabled': disabled, 'has-errors': hasErrors}\" #jvxMultiselect>\r\n <!-- START MENU -->\r\n <div [matMenuTriggerFor]=\"menuRef\" (onMenuOpen)=\"onMenuOpen()\" (menuOpened)=\"onMenuOpened()\"\r\n (onMenuClose)=\"onMenuClose()\" (menuClosed)=\"onMenuClosed()\"\r\n #trigger=\"matMenuTrigger\">\r\n <mat-menu #menuRef=\"matMenu\" [class]=\"['jvx-multiselect-panel', panelClass].join(' ')\" [formGroup]=\"form\"\r\n\r\n [yPosition]=\"yPosition\">\r\n <div class=\"menu-list-container\"\r\n #menuLIstContainer\r\n [ngStyle]=\"{'overflow-y': 'hidden', 'width': listContainerSize.width, 'max-height': '260px', 'height': listContainerSize.height, 'min-height': listContainerSize.minHeight}\">\r\n <div class=\"search-input-container\" *ngIf=\"!!searchInput\" (click)=\"onSearchInputClick($event)\">\r\n <input type=\"text\" [placeholder]=\"searchLabel\" [ngModel]=\"searchValue\" [ngModelOptions]=\"{standalone: true}\"\r\n [ngJvxFocus]=\"isOpen\"\r\n (input)=\"onSearchValueChange($event)\"/>\r\n </div>\r\n <div [ngStyle]=\"{height: searchInput && selectionContainer.clientHeight > 220 || selectionContainer.clientHeight > 260? 260 - (searchInput? 40 : 0) + 'px': 'auto'}\">\r\n <ng-scrollbar style=\"width: 100%\"\r\n smoothScroll\r\n [visibility]=\"'hover'\"\r\n [appearance]=\"'compact'\"\r\n [sensorDisabled]=\"isLoading\"\r\n [autoHeightDisabled]=\"false\" #scrollbar>\r\n <div #selectionContainer (click)=\"onCLickOnMenu($event)\">\r\n <mat-selection-list #selection [multiple]=\"multi\"\r\n *ngIf=\"showList\"\r\n [ngStyle]=\"{'padding': 0, 'width': listContainerSize.width, 'min-width.px': 112}\"\r\n (selectionChange)=\"onChange($event)\"\r\n formControlName=\"selectionValue\">\r\n <ng-content></ng-content>\r\n <ng-container *ngIf=\"!!groupBy\">\r\n <ng-container *ngFor=\"let opt of orderedOptions\">\r\n <ng-container [ngTemplateOutlet]=\"groupHeaderTemplate? groupHeaderTemplate.template: defaultGroupHeaderTemplate\" [ngTemplateOutletContext]=\"{$implicit: opt}\"></ng-container>\r\n\r\n <ng-jvx-option *ngFor=\"let option of opt.options\" [value]=\"option[itemValue]\">\r\n <!-- <ng-container [ngTemplateOutlet]=\"optionsTemplate\" [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>-->\r\n <span style=\"padding-inline: 10px\">\r\n <ng-container [ngTemplateOutlet]=\"optionsTemplate? optionsTemplate.template : defaultTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>\r\n </span>\r\n </ng-jvx-option>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!groupBy || groupBy.length === 0\">\r\n <ng-jvx-option *ngFor=\"let option of selectableOptions\" [value]=\"option[itemValue]\">\r\n <!-- <ng-container [ngTemplateOutlet]=\"optionsTemplate\" [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>-->\r\n <ng-container [ngTemplateOutlet]=\"optionsTemplate? optionsTemplate.template : defaultTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>\r\n </ng-jvx-option>\r\n </ng-container>\r\n </mat-selection-list>\r\n </div>\r\n </ng-scrollbar>\r\n </div>\r\n\r\n </div>\r\n <div class=\"menu-footer\">\r\n <ng-content select=\"[ng-jvx-footer]\"></ng-content>\r\n </div>\r\n\r\n </mat-menu>\r\n </div>\r\n <!-- END MENU -->\r\n <!-- START INPUT -->\r\n <div [ngClass]=\"{'ng-jvx-multiselect-value-container': true, 'is-open': isOpen}\"\r\n (click)=\"clickOnMenuTrigger($event)\"\r\n #valueContainer>\r\n\r\n <div class=\"ng-jvx-multiselect__placeholder\" *ngIf=\"value.length === 0\">\r\n <ng-content select=\"[placeholder]\"></ng-content>\r\n </div>\r\n\r\n <div class=\"ng-jvx-multiselect-value multi-value-container\" *ngIf=\"multi\" #multiContainer>\r\n\r\n <ng-container [ngTemplateOutlet]=\"selectionTemplate? selectionTemplate.template : defaultMultiSelectionTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: value}\"></ng-container>\r\n\r\n\r\n </div>\r\n\r\n <div class=\"ng-jvx-multiselect-value single-value-container\" *ngIf=\"!multi\">\r\n <div *ngFor=\"let val of value\" style=\"width: 100%;\">\r\n <ng-container [ngTemplateOutlet]=\"selectionTemplate? selectionTemplate.template : defaultSelectionTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: val}\"></ng-container></div>\r\n </div>\r\n <div class=\"ng-jvx-multiselect__remove-button\" *ngIf=\"clearable && value.length > 0\" (click)=\"clear($event)\">\r\n <mat-icon style=\"font-size: 18px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\">clear\r\n </mat-icon>\r\n </div>\r\n <div class=\"ng-jvx-multiselect-arrow\">\r\n <mat-icon *ngIf=\"!isLoading\">expand_more</mat-icon>\r\n <div *ngIf=\"isLoading\" class=\"lds-ring\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- END INPUT -->\r\n</div>\r\n<ng-template #defaultTemplate let-option>\r\n <div style=\"max-width: 100%;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\">{{option[itemText]}}\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultSelectionTemplate let-value>\r\n {{value[itemText]}}\r\n</ng-template>\r\n\r\n<ng-template #defaultMultiSelectionTemplate let-value>\r\n <mat-chip-list #chipList [disabled]=\"this.disabled\">\r\n <mat-chip [color]=\"'primary'\" selected *ngFor=\"let val of value\" [selectable]=\"false\"\r\n class=\"ng-jvx-multiselect-chip\"\r\n [removable]=\"true\" (removed)=\"deselect(val)\">\r\n <span class=\"chip-content\"\r\n [ngStyle]=\"{'max-width': multiContainerWidth - 50 +'px'}\">{{val[itemText]}}</span>\r\n\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n </mat-chip-list>\r\n</ng-template>\r\n<ng-template #defaultGroupHeaderTemplate let-opt>\r\n <div style=\"padding-inline: 15px\"><strong>{{opt.group}}</strong></div>\r\n</ng-template>\r\n","/**\r\n * @license\r\n * Copyright Google LLC All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://angular.io/license\r\n */\r\n\r\nimport {\r\n AfterContentInit,\r\n ChangeDetectionStrategy,\r\n Component, ContentChild, ContentChildren, Directive,\r\n ElementRef, EventEmitter,\r\n Inject, Input,\r\n NgZone, OnDestroy, OnInit, Output, QueryList, TemplateRef, ViewChild,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport {\r\n _MatMenuBase,\r\n MAT_MENU_CONTENT,\r\n MAT_MENU_DEFAULT_OPTIONS,\r\n MAT_MENU_PANEL,\r\n MatMenu,\r\n matMenuAnimations, MatMenuContent,\r\n MatMenuDefaultOptions, MatMenuItem, MatMenuPanel, MenuPositionX, MenuPositionY\r\n} from '@angular/material/menu';\r\nimport {FocusKeyManager, FocusOrigin} from '@angular/cdk/a11y';\r\nimport {startWith, switchMap, take} from 'rxjs/operators';\r\nimport {merge, Observable, Subject, Subscription} from 'rxjs';\r\nimport {MenuCloseReason} from '@angular/material/menu/menu';\r\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\r\nimport {throwMatMenuInvalidPositionX, throwMatMenuInvalidPositionY} from '@angular/material/menu/menu-errors';\r\nimport {Direction} from '@angular/cdk/bidi';\r\n\r\n\r\n\r\n\r\n/** @docs-public MatMenu */\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'ngJvxPanel',\r\n templateUrl: 'ng-jvx-panel.component.html',\r\n styleUrls: ['ng-jvx-panel.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'ngJvxPanel',\r\n // tslint:disable-next-line:no-host-metadata-property\r\n host: {\r\n '[attr.aria-label]': 'null',\r\n '[attr.aria-labelledby]': 'null',\r\n '[attr.aria-describedby]': 'null',\r\n },\r\n animations: [\r\n matMenuAnimations.transformMenu,\r\n matMenuAnimations.fadeInItems\r\n ],\r\n providers: [\r\n {provide: MAT_MENU_PANEL, useExisting: MatMenu},\r\n ]\r\n})\r\nexport class NgJvxPanelComponent extends _MatMenuBase {\r\n constructor(elementRef: ElementRef<HTMLElement>, ngZone: NgZone,\r\n @Inject(MAT_MENU_DEFAULT_OPTIONS) defaultOptions: MatMenuDefaultOptions) {\r\n super(elementRef, ngZone, defaultOptions);\r\n }\r\n}\r\n\r\n","<ng-template>\r\n <div\r\n class=\"mat-menu-panel\"\r\n [id]=\"panelId\"\r\n [ngClass]=\"_classList\"\r\n (keydown)=\"_handleKeydown($event)\"\r\n (click)=\"closed.emit('click')\"\r\n [@transformMenu]=\"_panelAnimationState\"\r\n (@transformMenu.start)=\"_onAnimationStart($event)\"\r\n (@transformMenu.done)=\"_onAnimationDone($event)\"\r\n tabindex=\"-1\"\r\n role=\"menu\"\r\n [attr.aria-label]=\"ariaLabel || null\"\r\n [attr.aria-labelledby]=\"ariaLabelledby || null\"\r\n [attr.aria-describedby]=\"ariaDescribedby || null\">\r\n <div class=\"mat-menu-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n","import {NgModule} from '@angular/core';\r\nimport {NgJvxMultiselectComponent} from './ng-jvx-multiselect.component';\r\nimport {MatButtonModule} from '@angular/material/button';\r\nimport {MatOptionModule} from '@angular/material/core';\r\nimport {MatSelectModule} from '@angular/material/select';\r\nimport {CommonModule} from '@angular/common';\r\nimport {NgJvxOptionComponent} from './ng-jvx-option/ng-jvx-option.component';\r\nimport {MatMenuModule} from '@angular/material/menu';\r\nimport {NgJvxOptionsTemplateDirective} from './directives/ng-jvx-options-template.directive';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {NgJvxPanelComponent} from './ng-jvx-panel/ng-jvx-panel.component';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport {MatChipsModule} from '@angular/material/chips';\r\nimport {HttpClientModule} from '@angular/common/http';\r\nimport {NgScrollbarModule} from 'ngx-scrollbar';\r\nimport {SmoothScrollModule} from 'ngx-scrollbar/smooth-scroll';\r\nimport {NgJvxSelectionTemplateDirective} from './directives/ng-jvx-selection-template.directive';\r\nimport {NgJvxDisabledOptionDirective} from './directives/ng-jvx-disabled-option.directive';\r\nimport { NgJvxGroupHeaderDirective } from './directives/ng-jvx-group-header.directive';\r\nimport { NgJvxFocusDirective } from './directives/ng-jvx-focus.directive';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NgJvxMultiselectComponent,\r\n NgJvxOptionComponent,\r\n NgJvxOptionsTemplateDirective,\r\n NgJvxPanelComponent,\r\n NgJvxSelectionTemplateDirective,\r\n NgJvxDisabledOptionDirective,\r\n NgJvxGroupHeaderDirective,\r\n NgJvxFocusDirective],\r\n imports: [\r\n MatButtonModule,\r\n MatOptionModule,\r\n MatSelectModule,\r\n MatMenuModule,\r\n CommonModule,\r\n MatIconModule,\r\n MatListModule,\r\n MatChipsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n NgScrollbarModule,\r\n SmoothScrollModule,\r\n FormsModule\r\n ],\r\n exports: [NgJvxMultiselectComponent, NgJvxOptionComponent, NgJvxOptionsTemplateDirective, NgJvxSelectionTemplateDirective, NgJvxDisabledOptionDirective, NgJvxGroupHeaderDirective]\r\n})\r\nexport class NgJvxMultiselectModule {\r\n}\r\n","/*\r\n * Public API Surface of ng-jvx-multiselect\r\n */\r\n\r\nexport * from './lib/ng-jvx-option/ng-jvx-option.component';\r\nexport * from './lib/directives/ng-jvx-options-template.directive';\r\nexport * from './lib/directives/ng-jvx-selection-template.directive';\r\nexport * from './lib/directives/ng-jvx-group-header.directive';\r\nexport * from './lib/directives/ng-jvx-disabled-option.directive';\r\nexport * from './lib/ng-jvx-multiselect.service';\r\nexport * from './lib/ng-jvx-multiselect.component';\r\nexport * from './lib/ng-jvx-multiselect.module';\r\nexport * from './lib/interfaces/ng-jvx-option-mapper';\r\nexport * from './lib/interfaces/ng-jvx-search-mapper';\r\nexport * from './lib/interfaces/ng-jvx-group-mapper';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-jvx-multiselect.mjs","sources":["../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-option/ng-jvx-option.component.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-option/ng-jvx-option.component.html","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-options-template.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-selection-template.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-group-header.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-disabled-option.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.service.ts","../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-focus.directive.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.component.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.component.html","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-panel/ng-jvx-panel.component.ts","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-panel/ng-jvx-panel.component.html","../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.module.ts","../../../projects/ng-jvx-multiselect/src/public-api.ts","../../../projects/ng-jvx-multiselect/src/ng-jvx-multiselect.ts"],"sourcesContent":["import {AfterViewChecked, Component, ContentChild, DoCheck, ElementRef, Input, OnInit, ViewChild} from '@angular/core';\r\nimport {MatListOption} from '@angular/material/list';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'ng-jvx-option',\r\n templateUrl: './ng-jvx-option.component.html',\r\n styleUrls: ['./ng-jvx-option.component.scss']\r\n})\r\nexport class NgJvxOptionComponent implements OnInit, DoCheck {\r\n @ViewChild('listOption', {static: true}) listOption: MatListOption;\r\n @Input() value: any;\r\n public isSelected = false;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n ngDoCheck(): void {\r\n if (this.isSelected !== this.listOption.selected) {\r\n this.isSelected = this.listOption.selected;\r\n }\r\n }\r\n\r\n deselect(): void{\r\n this.listOption.selected = false;\r\n }\r\n}\r\n","<mat-list-option [value]=\"value\" [ngClass]=\"{'ng-jvx-option': true, 'mat-list-single-selected-option': isSelected}\" #listOption>\r\n <ng-content></ng-content>\r\n <div class=\"list-option-background\"></div>\r\n</mat-list-option>\r\n","import {Directive, ElementRef, HostListener, Input, TemplateRef, ViewContainerRef} from '@angular/core';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxOptionsTemplate]'\r\n})\r\nexport class NgJvxOptionsTemplateDirective {\r\n\r\n constructor(\r\n private el: ElementRef,\r\n public template: TemplateRef<any>,\r\n private vcRef: ViewContainerRef) {\r\n }\r\n\r\n\r\n\r\n @Input() set ngJvxOptionsTemplateOf(source: Array<any[]>) {\r\n for (const item of source) {\r\n this.vcRef.createEmbeddedView(this.template, {$implicit: item});\r\n }\r\n }\r\n\r\n}\r\n","import {Directive, Input, TemplateRef, ViewContainerRef} from '@angular/core';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxSelectionTemplate]'\r\n})\r\nexport class NgJvxSelectionTemplateDirective {\r\n\r\n constructor(\r\n public template: TemplateRef<any>,\r\n private vcRef: ViewContainerRef) {\r\n }\r\n\r\n @Input() set ngJvxSelectionTemplateOf(source: Array<any[]>) {\r\n for (const item of source) {\r\n this.vcRef.createEmbeddedView(this.template, {$implicit: item});\r\n }\r\n }\r\n\r\n}\r\n","import {Directive, Input, TemplateRef, ViewContainerRef} from '@angular/core';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxGroupHeader]'\r\n})\r\nexport class NgJvxGroupHeaderDirective {\r\n\r\n constructor(\r\n public template: TemplateRef<any>,\r\n private vcRef: ViewContainerRef) {\r\n }\r\n\r\n @Input() set ngJvxGroupHeaderOf(source: Array<any[]>) {\r\n for (const item of source) {\r\n this.vcRef.createEmbeddedView(this.template, {$implicit: item});\r\n }\r\n }\r\n\r\n\r\n}\r\n","import {Directive, ElementRef, HostListener, Input, OnDestroy, OnInit} from '@angular/core';\r\nimport {fromEvent, Subject} from 'rxjs';\r\nimport {takeUntil} from 'rxjs/operators';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxDisabledOption]'\r\n})\r\nexport class NgJvxDisabledOptionDirective implements OnInit, OnDestroy {\r\n private isDisabled = false;\r\n private originalOpacity = 1;\r\n\r\n private unsubs = new Subject<void>();\r\n\r\n @Input() set ngJvxDisabledOption(source: boolean) {\r\n this.isDisabled = source;\r\n if (this.isDisabled) {\r\n this.el.nativeElement.style.opacity = this.originalOpacity ? this.originalOpacity / 2 : 0.5;\r\n } else {\r\n this.el.nativeElement.style.opacity = this.originalOpacity;\r\n }\r\n }\r\n\r\n constructor(\r\n private el: ElementRef) {\r\n this.originalOpacity = el.nativeElement.style.opacity;\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n fromEvent(this.el.nativeElement.closest('.mat-list-item-content'), 'click', {\r\n capture: true,\r\n }).pipe(takeUntil(this.unsubs)).subscribe((e: MouseEvent) => {\r\n if (this.isDisabled) {\r\n e.stopImmediatePropagation();\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unsubs.next();\r\n this.unsubs.complete();\r\n }\r\n}\r\n","import {Injectable} from '@angular/core';\r\nimport {Observable} from 'rxjs';\r\nimport {HttpClient, HttpParams} from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NgJvxMultiselectService {\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n getList({\r\n url,\r\n ignorePagination = false,\r\n currentPage,\r\n pageSize,\r\n requestType = 'get',\r\n requestHeaders,\r\n search,\r\n searchProp = 'search',\r\n data\r\n }: {\r\n url: string, ignorePagination: boolean,\r\n currentPage: number,\r\n pageSize: number,\r\n requestType: 'get' | 'post',\r\n requestHeaders: any,\r\n search?: string,\r\n searchProp?: string,\r\n data: any\r\n }): Observable<any> {\r\n let params = new HttpParams();\r\n if (search && search.length > 0) {\r\n params = params.set(searchProp, search);\r\n }\r\n if (!ignorePagination) {\r\n params = params.set('page', currentPage.toString())\r\n .set('size', pageSize.toString());\r\n }\r\n const options = {\r\n mode: 'no-cors', // cors\r\n headers: requestHeaders,\r\n // withCredentials: true,\r\n // credentials: 'same-origin', // cache: 'default',\r\n data,\r\n params\r\n };\r\n if (requestType === 'get') {\r\n return this.http.get(url, options);\r\n } else {\r\n return this.http.post(url, options);\r\n }\r\n }\r\n}\r\n","import {AfterContentInit, Directive, ElementRef, Input, OnChanges, OnInit, SimpleChanges} from '@angular/core';\r\nimport {timer} from 'rxjs';\r\n\r\n@Directive({\r\n // tslint:disable-next-line:directive-selector\r\n selector: '[ngJvxFocus]'\r\n})\r\nexport class NgJvxFocusDirective implements OnInit, OnChanges {\r\n @Input() ngJvxFocus: boolean;\r\n\r\n constructor(private el: ElementRef) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.ngJvxFocus) {\r\n this.el.nativeElement.focus();\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.hasOwnProperty('ngJvxFocus') && changes.ngJvxFocus.currentValue === true) {\r\n this.el.nativeElement.focus();\r\n }\r\n }\r\n}\r\n","import {\r\n AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n ElementRef, EventEmitter, forwardRef, HostBinding,\r\n Input,\r\n OnChanges, OnDestroy,\r\n OnInit, Optional, Output, QueryList, Self,\r\n SimpleChanges,\r\n ViewChild, ViewChildren\r\n} from '@angular/core';\r\nimport {NgJvxOptionsTemplateDirective} from './directives/ng-jvx-options-template.directive';\r\nimport {ControlValueAccessor, UntypedFormBuilder, UntypedFormControl, UntypedFormGroup, NG_VALUE_ACCESSOR, NgControl} from '@angular/forms';\r\nimport {MatSelectionList, MatSelectionListChange} from '@angular/material/list';\r\nimport {NgJvxOptionComponent} from './ng-jvx-option/ng-jvx-option.component';\r\nimport {MatMenuTrigger} from '@angular/material/menu';\r\nimport {NgJvxMultiselectService} from './ng-jvx-multiselect.service';\r\nimport {HttpHeaders} from '@angular/common/http';\r\nimport {NgScrollbar} from 'ngx-scrollbar';\r\nimport {debounceTime, distinctUntilChanged, map, switchMap, takeUntil, tap} from 'rxjs/operators';\r\nimport {combineLatest, forkJoin, from, fromEvent, iif, noop, observable, Observable, of, Subject, timer} from 'rxjs';\r\nimport {NgJvxOptionMapper} from './interfaces/ng-jvx-option-mapper';\r\nimport {NgJvxSelectionTemplateDirective} from './directives/ng-jvx-selection-template.directive';\r\nimport {MatFormFieldControl} from '@angular/material/form-field';\r\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\r\nimport {NgJvxGroupHeaderDirective} from './directives/ng-jvx-group-header.directive';\r\nimport {NgJvxSearchMapper} from './interfaces/ng-jvx-search-mapper';\r\nimport {NgJvxGroup, NgJvxGroupMapper} from './interfaces/ng-jvx-group-mapper';\r\n\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'ng-jvx-multiselect',\r\n templateUrl: './ng-jvx-multiselect.component.html',\r\n styleUrls: ['./ng-jvx-multiselect.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: MatFormFieldControl,\r\n useExisting: forwardRef(() => NgJvxMultiselectComponent),\r\n multi: true,\r\n }]\r\n})\r\nexport class NgJvxMultiselectComponent implements OnInit, OnDestroy, AfterViewInit, OnChanges, MatFormFieldControl<any>, ControlValueAccessor {\r\n static nextId = 0;\r\n @HostBinding() id = `jvx-multiselect-${NgJvxMultiselectComponent.nextId++}`;\r\n\r\n @HostBinding('class.floating')\r\n get shouldLabelFloat(): boolean {\r\n return this.focused || !this.empty;\r\n }\r\n\r\n @ViewChild('jvxMultiselect', {static: true}) jvxMultiselect: ElementRef;\r\n @ViewChild('selectionContainer', {static: false}) selectionContainer: ElementRef;\r\n @ViewChild('selection', {static: true}) selection: MatSelectionList;\r\n @ViewChild('trigger', {static: true}) trigger: MatMenuTrigger;\r\n @ViewChild('scrollbar', {static: false}) scrollbar: NgScrollbar;\r\n @ViewChild('multiContainer', {static: false}) multiContainer: ElementRef;\r\n @ViewChildren(NgJvxOptionComponent) optionComp: QueryList<NgJvxOptionComponent>;\r\n @ContentChild(NgJvxOptionsTemplateDirective) optionsTemplate: NgJvxOptionsTemplateDirective | null = null;\r\n @ContentChild(NgJvxSelectionTemplateDirective) selectionTemplate: NgJvxSelectionTemplateDirective | null = null;\r\n @ContentChild(NgJvxGroupHeaderDirective) groupHeaderTemplate: NgJvxGroupHeaderDirective | null = null;\r\n // @ContentChild(NgJvxOptionComponent) optionComp: NgJvxOptionComponent;\r\n // @ContentChild(TemplateRef) optionsTemplate: TemplateRef<any> | null = null;\r\n @Input() options: any[] = [];\r\n @Input() multi = false;\r\n @Input() url = '';\r\n @Input() requestType: 'get' | 'post' = 'get';\r\n @Input() itemValue = 'value';\r\n @Input() itemText = 'text';\r\n @Input() ignorePagination = false;\r\n @Input() clearable = false;\r\n @Input() closeOnClick = true;\r\n @Input() hasErrors = false;\r\n @Input() searchMode: null | 'server' | 'client' = null;\r\n @Input() searchInput = false;\r\n @Input() searchLabel = 'search';\r\n @Input() listProp = '';\r\n @Input() totalRowsProp = '';\r\n @Input() panelClass = '';\r\n @Input() searchProp = 'search';\r\n @Input() mapper: NgJvxOptionMapper<any> = {\r\n mapOption(source: any): Observable<any> {\r\n return of(source);\r\n }\r\n };\r\n @Input() searchMapper: NgJvxSearchMapper<any> = {\r\n mapSearch: (source: string, options: any[]): Observable<any> => {\r\n return of(options.filter(o => o[this.itemText].toString().toLowerCase().includes(source.toString().toLowerCase())));\r\n }\r\n };\r\n @Input() groupBy: NgJvxGroupMapper<any> | string | null;\r\n\r\n @Input() set value(value: any[]) {\r\n this.pValue = value ?? [];\r\n if (value) {\r\n this.form.get('selectionValue').setValue(this.pValue.map(v => v[this.itemValue]));\r\n } else {\r\n this.form.get('selectionValue').setValue(value);\r\n }\r\n this.stateChanges.next();\r\n }\r\n\r\n get value(): any[] {\r\n return this.pValue;\r\n }\r\n\r\n @Input() requestHeaders: HttpHeaders = new HttpHeaders();\r\n\r\n @Input()\r\n get required(): boolean {\r\n return this._required;\r\n }\r\n\r\n set required(req) {\r\n this._required = coerceBooleanProperty(req);\r\n this.stateChanges.next();\r\n }\r\n\r\n // tslint:disable-next-line:variable-name\r\n private _required = false;\r\n\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n\r\n set disabled(value: boolean) {\r\n this._disabled = coerceBooleanProperty(value);\r\n this._disabled ? this.parts.disable() : this.parts.enable();\r\n this.stateChanges.next();\r\n }\r\n\r\n // tslint:disable-next-line:variable-name\r\n private _disabled = false;\r\n\r\n get errorState(): boolean {\r\n if (this.ngControl != null) {\r\n return this.ngControl.invalid && this.ngControl.touched;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n @Output() valueChange: EventEmitter<any[]> = new EventEmitter<any[]>();\r\n @Output() jvxMultiselectOpen: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() jvxMultiselectOpened: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() jvxMultiselectClose: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() jvxMultiselectClosed: EventEmitter<void> = new EventEmitter<void>();\r\n @Output() scrollEnd: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n public controlType = 'ng-jvx-multiselect';\r\n public document = document;\r\n public window = window;\r\n public form: UntypedFormGroup;\r\n public isOpen = false;\r\n public isLoading = false;\r\n public showList = true;\r\n public asyncOptions: any = [];\r\n public selectableOptions = [];\r\n public orderedOptions: { group: any, options: any[] }[] = [];\r\n public searchValue = '';\r\n public yPosition: 'above' | 'below' = 'above';\r\n public stateChanges = new Subject<void>();\r\n public currentPage = 0;\r\n public listContainerSize: { height: string, minHeight: string, width: string } = {height: 'auto', minHeight: '0', width: '100%'};\r\n public parts: UntypedFormGroup;\r\n\r\n public touched = false;\r\n\r\n public placeholder: string;\r\n public focused = false;\r\n public multiContainerWidth = 100;\r\n\r\n private searchValueSubject = new Subject<string>();\r\n private searchValue$ = this.searchValueSubject.asObservable();\r\n private pValue: any[] = [];\r\n private shouldLoadMore = true;\r\n private pageSize = 15;\r\n private unsubscribe = new Subject<void>();\r\n private unsubscribe$ = this.unsubscribe.asObservable();\r\n public onTouched = () => {\r\n };\r\n\r\n\r\n constructor(private formBuilder: UntypedFormBuilder, private service: NgJvxMultiselectService,\r\n private elementRef: ElementRef,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n @Optional() @Self() public ngControl: NgControl, fb: UntypedFormBuilder) {\r\n if (this.ngControl != null) {\r\n // Setting the value accessor directly (instead of using\r\n // the providers) to avoid running into a circular import.\r\n this.ngControl.valueAccessor = this;\r\n }\r\n\r\n this.parts = fb.group({\r\n area: '',\r\n exchange: '',\r\n subscriber: '',\r\n });\r\n this.form = this.formBuilder.group({\r\n selectionValue: new UntypedFormControl(this.selectionValue)\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.stateChange$.pipe(takeUntil(this.unsubscribe)).subscribe(() => {\r\n this.changeDetectorRef.markForCheck();\r\n });\r\n this.selectableOptions = [...this.options];\r\n this.updateOrderedOptions(this.selectableOptions).subscribe(noop);\r\n fromEvent(window, 'resize').pipe(takeUntil(this.unsubscribe), debounceTime(100), map(() => {\r\n return this.listContainerSize.width = this.jvxMultiselect.nativeElement.offsetWidth + 'px';\r\n\r\n }), switchMap(() => timer(100)), tap(() => {\r\n this.multiContainerWidth = this.multiContainer?.nativeElement?.offsetWidth ?? 100;\r\n this.yPosition = window.innerHeight - this.jvxMultiselect.nativeElement?.getBoundingClientRect()?.top < 260 ? 'above' : 'below';\r\n this.changeDetectorRef.markForCheck();\r\n })).subscribe(noop);\r\n\r\n this.searchValue$.pipe(takeUntil(this.unsubscribe), debounceTime(300), distinctUntilChanged((prev, curr) => {\r\n return curr === this.searchValue;\r\n }), switchMap((val: string) => {\r\n this.searchValue = val;\r\n this.currentPage = 0;\r\n if (this.searchMode === 'client') {\r\n return this.clientSearch();\r\n } else if (this.url && this.url.length > 0) {\r\n return this.serverSearch();\r\n }\r\n }\r\n )\r\n ).subscribe((val: any[]) => {\r\n this.changeDetectorRef.markForCheck();\r\n });\r\n }\r\n\r\n private clientSearch(): Observable<any> {\r\n let obs: Observable<any>;\r\n if (this.url && this.url.length > 0) {\r\n this.selectableOptions = [];\r\n this.updateOrderedOptions(this.selectableOptions).subscribe(noop);\r\n this.shouldLoadMore = true;\r\n obs = this.getList().pipe(map(() => {\r\n return this.selectableOptions;\r\n }));\r\n } else {\r\n obs = of(this.options);\r\n }\r\n return obs.pipe(switchMap((val) => this.searchMapper.mapSearch(this.searchValue, val)), tap((res) => {\r\n this.selectableOptions = [];\r\n this.selectableOptions.push(...res);\r\n }), switchMap(() =>\r\n this.updateOrderedOptions(this.selectableOptions)\r\n ));\r\n }\r\n\r\n private serverSearch(): Observable<any> {\r\n this.shouldLoadMore = true;\r\n this.selectableOptions = [];\r\n this.shouldLoadMore = true;\r\n return this.getList();\r\n }\r\n\r\n\r\n ngOnDestroy(): void {\r\n this.unsubscribe.next();\r\n this.stateChanges.complete();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n timer(0).subscribe(() => {\r\n this.listContainerSize.width = this.jvxMultiselect.nativeElement.offsetWidth + 'px';\r\n });\r\n\r\n if (this.scrollbar) {\r\n this.scrollbar.scrolled.pipe(takeUntil(this.unsubscribe$)).subscribe((e: any) => {\r\n this.onScrolled(e);\r\n });\r\n }\r\n timer(0).pipe(tap(() => {\r\n this.multiContainerWidth = this.multiContainer?.nativeElement?.offsetWidth ?? 100;\r\n this.yPosition = window.innerHeight - this.jvxMultiselect.nativeElement?.getBoundingClientRect()?.top < 260 ? 'above' : 'below';\r\n this.changeDetectorRef.markForCheck();\r\n })).subscribe(noop);\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.options) {\r\n this.selectableOptions = [...this.options];\r\n this.updateOrderedOptions(this.selectableOptions).subscribe(noop);\r\n }\r\n }\r\n\r\n\r\n get selectionValue(): any[] {\r\n return this.value.map((v) => {\r\n return v[this.itemValue];\r\n });\r\n }\r\n\r\n get empty(): boolean {\r\n const n = this.parts.value;\r\n return !n.area && !n.exchange && !n.subscriber;\r\n }\r\n\r\n onCLickOnMenu(e: MouseEvent): void {\r\n if (this.multi || this.closeOnClick === false) {\r\n e.stopPropagation();\r\n }\r\n }\r\n\r\n\r\n private propagateChange(_: any): any {\r\n }\r\n\r\n // this is the initial value set to the component\r\n public writeValue(obj: any[]): void {\r\n this.value = obj;\r\n }\r\n\r\n // registers 'fn' that will be fired when changes are made\r\n // this is how we emit the changes back to the form\r\n public registerOnChange(fn: any): void {\r\n this.propagateChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onChange(e: MatSelectionListChange): void {\r\n\r\n let vals = e.source.selectedOptions.selected.map(o => o.value);\r\n vals = this.selectableOptions.filter(o => vals.includes(o[this.itemValue]));\r\n console.log(vals);\r\n const selectableIds = this.selectableOptions.map(s => s[this.itemValue]);\r\n console.log(selectableIds);\r\n if (this.multi) {\r\n // if search is active, probably some of the already selected values are not included in the selectable options,\r\n // so we have to push them in the selected values of the list;\r\n for (const v of this.value) {\r\n if (!selectableIds.includes(v[this.itemValue])) {\r\n vals = [v, ...vals];\r\n }\r\n }\r\n }\r\n vals.sort((a, b) => {\r\n return typeof a[this.itemValue] === 'string' ?\r\n a[this.itemValue].localeCompare(b[this.itemValue]) : a[this.itemValue] - b[this.itemValue];\r\n });\r\n console.log(vals);\r\n this.value = [...vals];\r\n this.form.get('selectionValue').setValue(this.value.map(v => v[this.itemValue]));\r\n\r\n this.valueChange.emit(this.value);\r\n this.propagateChange(this.value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n\r\n onFocusIn(event: FocusEvent): void {\r\n if (!this.focused) {\r\n this.focused = true;\r\n this.stateChanges.next();\r\n }\r\n }\r\n\r\n onFocusOut(event: FocusEvent): void {\r\n if (!this.elementRef.nativeElement.contains(event.relatedTarget as Element)) {\r\n this.touched = true;\r\n this.focused = false;\r\n this.onTouched();\r\n this.stateChanges.next();\r\n }\r\n }\r\n\r\n onMenuOpen(): void {\r\n this.isOpen = true;\r\n\r\n this.jvxMultiselectOpen.emit();\r\n }\r\n\r\n onMenuClose(): void {\r\n this.isOpen = false;\r\n this.jvxMultiselectClose.emit();\r\n }\r\n\r\n deselect(val: any): void {\r\n this.value = [...this.value.filter(v => v[this.itemValue] !== val[this.itemValue])];\r\n // this.value.splice(this.value.findIndex(v => v[this.itemValue] === val[this.itemValue]), 1);\r\n this.form.get('selectionValue').setValue(this.value.map(m => m.value));\r\n this.valueChange.emit(this.value);\r\n this.propagateChange(this.value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n private setSelectionContainerSize(): void {\r\n timer(0).subscribe(() => {\r\n if (this.selectionContainer) {\r\n this.listContainerSize.height = this.selectionContainer.nativeElement.offsetHeight > 260 ? '260px' : 'auto';\r\n this.listContainerSize.minHeight = this.selectionContainer.nativeElement.offsetHeight <= 260 ?\r\n this.selectionContainer.nativeElement.offsetHeight + 'px' : '260px';\r\n this.listContainerSize.width = this.jvxMultiselect.nativeElement.offsetWidth + 'px';\r\n }\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n clickOnMenuTrigger(e: MouseEvent): void {\r\n if (!this.disabled) {\r\n this.showList = false;\r\n this.shouldLoadMore = true;\r\n timer(0).subscribe(() => {\r\n this.showList = true;\r\n if (this.url.length > 0) {\r\n e.preventDefault();\r\n\r\n this.selectableOptions.length = 0;\r\n this.updateOrderedOptions(this.selectableOptions);\r\n this.getList().subscribe(noop);\r\n this.setSelectionContainerSize();\r\n\r\n } else {\r\n this.trigger.openMenu();\r\n this.setSelectionContainerSize();\r\n }\r\n });\r\n }\r\n }\r\n\r\n private getList(): Observable<any> {\r\n this.isLoading = true;\r\n return this.service.getList({\r\n url: this.url,\r\n requestType: this.requestType,\r\n data: {},\r\n currentPage: ++this.currentPage,\r\n ignorePagination: this.ignorePagination,\r\n requestHeaders: this.requestHeaders,\r\n search: this.searchValue,\r\n searchProp: this.searchProp,\r\n pageSize: this.pageSize\r\n }).pipe(switchMap((val) => {\r\n let result = [];\r\n if (this.listProp.length > 0) {\r\n result = [...val[this.listProp]];\r\n } else {\r\n result = [...val];\r\n }\r\n\r\n if (result.length === 0) {\r\n this.shouldLoadMore = false;\r\n this.isLoading = false;\r\n return forkJoin([]);\r\n } else {\r\n const newOptions = [];\r\n\r\n for (const opt of result) {\r\n const newOption = this.mapper.mapOption(opt);\r\n newOptions.push(newOption);\r\n }\r\n return forkJoin(newOptions);\r\n }\r\n }), switchMap((finVal: any) => {\r\n this.selectableOptions.push(...finVal);\r\n return this.updateOrderedOptions(this.selectableOptions);\r\n }), map((val) => {\r\n this.isLoading = false;\r\n this.trigger.openMenu();\r\n this.setSelectionContainerSize();\r\n this.changeDetectorRef.markForCheck();\r\n return val;\r\n }));\r\n }\r\n\r\n onScrolled(e: any): void {\r\n if (e.target.scrollTop + 220 + ((this.searchInput ? 0 : 1) * 40) === this.selectionContainer.nativeElement.offsetHeight\r\n && !this.isLoading) {\r\n this.scrollEnd.emit();\r\n if (this.url && this.url.length > 0 && !this.ignorePagination && this.shouldLoadMore) {\r\n this.getList().subscribe(noop);\r\n }\r\n }\r\n }\r\n\r\n onMenuOpened(): void {\r\n this.jvxMultiselectOpened.emit();\r\n }\r\n\r\n onMenuClosed(): void {\r\n if ((!this.url || this.url.length === 0) && this.searchMode === 'client') {\r\n this.searchValueSubject.next('');\r\n } else {\r\n this.searchValue = '';\r\n this.currentPage = 0;\r\n }\r\n this.jvxMultiselectClosed.emit();\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n onSearchInputClick(e: MouseEvent): void {\r\n e.stopPropagation();\r\n }\r\n\r\n onSearchValueChange(e: any): void {\r\n this.searchValueSubject.next(e.target.value);\r\n }\r\n\r\n clear(e: Event): void {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n this.value = [];\r\n this.form.get('selectionValue').setValue(this.value.map(v => v[this.itemValue]));\r\n this.propagateChange(this.value);\r\n this.valueChange.emit(this.value);\r\n this.changeDetectorRef.markForCheck();\r\n }\r\n\r\n setDescribedByIds(ids: string[]): void {\r\n const controlElement = this.elementRef.nativeElement\r\n .querySelector('.ng-jvx-multiselect');\r\n controlElement.setAttribute('aria-describedby', ids.join(' '));\r\n }\r\n\r\n onContainerClick(event: MouseEvent): void {\r\n // if ((event.target as Element).tagName.toLowerCase() !== 'input') {\r\n // this.elementRef.nativeElement.querySelector('input').focus();\r\n // }\r\n }\r\n\r\n private get stateChange$(): Observable<any> {\r\n return this.stateChanges.asObservable();\r\n }\r\n\r\n updateOrderedOptions(options): Observable<any> {\r\n let obs = of(options);\r\n if (this.groupBy) {\r\n this.orderedOptions.length = 0;\r\n const obsArr = [];\r\n for (const option of options) {\r\n if (typeof this.groupBy !== 'string') {\r\n obsArr.push(this.groupBy.mapGroup(option));\r\n } else {\r\n obsArr.push(of({group: option[this.groupBy], option} as NgJvxGroup<any>));\r\n }\r\n }\r\n obs = forkJoin(obsArr).pipe(map((res: any) => {\r\n const groups = [...new Set(res.map(item => item.group))];\r\n for (const group of groups) {\r\n this.orderedOptions.push({\r\n group,\r\n options: res.filter(r => r.group === group).map(o => o.option)\r\n });\r\n }\r\n return this.orderedOptions;\r\n }));\r\n }\r\n return obs;\r\n }\r\n\r\n public closeMenu(): void {\r\n this.trigger.closeMenu();\r\n }\r\n}\r\n","<div class=\"ng-jvx-multiselect\" [ngClass]=\"{'disabled': disabled, 'has-errors': hasErrors}\" #jvxMultiselect>\r\n <!-- START MENU -->\r\n <div [matMenuTriggerFor]=\"menuRef\" (onMenuOpen)=\"onMenuOpen()\" (menuOpened)=\"onMenuOpened()\"\r\n (onMenuClose)=\"onMenuClose()\" (menuClosed)=\"onMenuClosed()\"\r\n #trigger=\"matMenuTrigger\">\r\n <mat-menu #menuRef=\"matMenu\" [class]=\"['jvx-multiselect-panel', panelClass].join(' ')\" [formGroup]=\"form\"\r\n\r\n [yPosition]=\"yPosition\">\r\n <div class=\"menu-list-container\"\r\n #menuLIstContainer\r\n [ngStyle]=\"{'overflow-y': 'hidden', 'width': listContainerSize.width, 'max-height': '260px', 'height': listContainerSize.height, 'min-height': listContainerSize.minHeight}\">\r\n <div class=\"search-input-container\" *ngIf=\"!!searchInput\" (click)=\"onSearchInputClick($event)\">\r\n <input type=\"text\" [placeholder]=\"searchLabel\" [ngModel]=\"searchValue\" [ngModelOptions]=\"{standalone: true}\"\r\n [ngJvxFocus]=\"isOpen\"\r\n (input)=\"onSearchValueChange($event)\"/>\r\n </div>\r\n <div [ngStyle]=\"{height: searchInput && selectionContainer.clientHeight > 220 || selectionContainer.clientHeight > 260? 260 - (searchInput? 40 : 0) + 'px': 'auto'}\">\r\n <ng-scrollbar style=\"width: 100%\"\r\n smoothScroll\r\n [visibility]=\"'hover'\"\r\n [appearance]=\"'compact'\"\r\n [sensorDisabled]=\"isLoading\"\r\n [autoHeightDisabled]=\"false\" #scrollbar>\r\n <div #selectionContainer (click)=\"onCLickOnMenu($event)\">\r\n <mat-selection-list #selection [multiple]=\"multi\"\r\n *ngIf=\"showList\"\r\n [ngStyle]=\"{'padding': 0, 'width': listContainerSize.width, 'min-width.px': 112}\"\r\n (selectionChange)=\"onChange($event)\"\r\n formControlName=\"selectionValue\">\r\n <ng-content></ng-content>\r\n <ng-container *ngIf=\"!!groupBy\">\r\n <ng-container *ngFor=\"let opt of orderedOptions\">\r\n <ng-container [ngTemplateOutlet]=\"groupHeaderTemplate? groupHeaderTemplate.template: defaultGroupHeaderTemplate\" [ngTemplateOutletContext]=\"{$implicit: opt}\"></ng-container>\r\n\r\n <ng-jvx-option *ngFor=\"let option of opt.options\" [value]=\"option[itemValue]\">\r\n <!-- <ng-container [ngTemplateOutlet]=\"optionsTemplate\" [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>-->\r\n <span style=\"padding-inline: 10px\">\r\n <ng-container [ngTemplateOutlet]=\"optionsTemplate? optionsTemplate.template : defaultTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>\r\n </span>\r\n </ng-jvx-option>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!groupBy || groupBy.length === 0\">\r\n <ng-jvx-option *ngFor=\"let option of selectableOptions\" [value]=\"option[itemValue]\">\r\n <!-- <ng-container [ngTemplateOutlet]=\"optionsTemplate\" [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>-->\r\n <ng-container [ngTemplateOutlet]=\"optionsTemplate? optionsTemplate.template : defaultTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: option}\"></ng-container>\r\n </ng-jvx-option>\r\n </ng-container>\r\n </mat-selection-list>\r\n </div>\r\n </ng-scrollbar>\r\n </div>\r\n\r\n </div>\r\n <div class=\"menu-footer\">\r\n <ng-content select=\"[ng-jvx-footer]\"></ng-content>\r\n </div>\r\n\r\n </mat-menu>\r\n </div>\r\n <!-- END MENU -->\r\n <!-- START INPUT -->\r\n <div [ngClass]=\"{'ng-jvx-multiselect-value-container': true, 'is-open': isOpen}\"\r\n (click)=\"clickOnMenuTrigger($event)\"\r\n #valueContainer>\r\n\r\n <div class=\"ng-jvx-multiselect__placeholder\" *ngIf=\"value.length === 0\">\r\n <ng-content select=\"[placeholder]\"></ng-content>\r\n </div>\r\n\r\n <div class=\"ng-jvx-multiselect-value multi-value-container\" *ngIf=\"multi\" #multiContainer>\r\n\r\n <ng-container [ngTemplateOutlet]=\"selectionTemplate? selectionTemplate.template : defaultMultiSelectionTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: value}\"></ng-container>\r\n\r\n\r\n </div>\r\n\r\n <div class=\"ng-jvx-multiselect-value single-value-container\" *ngIf=\"!multi\">\r\n <div *ngFor=\"let val of value\" style=\"width: 100%;\">\r\n <ng-container [ngTemplateOutlet]=\"selectionTemplate? selectionTemplate.template : defaultSelectionTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: val}\"></ng-container></div>\r\n </div>\r\n <div class=\"ng-jvx-multiselect__remove-button\" *ngIf=\"clearable && value.length > 0\" (click)=\"clear($event)\">\r\n <mat-icon style=\"font-size: 18px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\">clear\r\n </mat-icon>\r\n </div>\r\n <div class=\"ng-jvx-multiselect-arrow\">\r\n <mat-icon *ngIf=\"!isLoading\">expand_more</mat-icon>\r\n <div *ngIf=\"isLoading\" class=\"lds-ring\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- END INPUT -->\r\n</div>\r\n<ng-template #defaultTemplate let-option>\r\n <div style=\"max-width: 100%;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\">{{option[itemText]}}\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #defaultSelectionTemplate let-value>\r\n {{value[itemText]}}\r\n</ng-template>\r\n\r\n<ng-template #defaultMultiSelectionTemplate let-value>\r\n <mat-chip-list #chipList [disabled]=\"this.disabled\">\r\n <mat-chip [color]=\"'primary'\" selected *ngFor=\"let val of value\" [selectable]=\"false\"\r\n class=\"ng-jvx-multiselect-chip\"\r\n [removable]=\"true\" (removed)=\"deselect(val)\">\r\n <span class=\"chip-content\"\r\n [ngStyle]=\"{'max-width': multiContainerWidth - 50 +'px'}\">{{val[itemText]}}</span>\r\n\r\n <mat-icon matChipRemove>cancel</mat-icon>\r\n </mat-chip>\r\n </mat-chip-list>\r\n</ng-template>\r\n<ng-template #defaultGroupHeaderTemplate let-opt>\r\n <div style=\"padding-inline: 15px\"><strong>{{opt.group}}</strong></div>\r\n</ng-template>\r\n","/**\r\n * @license\r\n * Copyright Google LLC All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://angular.io/license\r\n */\r\n\r\nimport {ChangeDetectionStrategy, Component, ElementRef, Inject, NgZone, ViewEncapsulation,} from '@angular/core';\r\nimport {\r\n _MatMenuBase,\r\n MAT_MENU_DEFAULT_OPTIONS,\r\n MAT_MENU_PANEL,\r\n MatMenu,\r\n matMenuAnimations,\r\n MatMenuDefaultOptions\r\n} from '@angular/material/menu';\r\n\r\n\r\n/** @docs-public MatMenu */\r\n@Component({\r\n // tslint:disable-next-line:component-selector\r\n selector: 'ngJvxPanel',\r\n templateUrl: 'ng-jvx-panel.component.html',\r\n styleUrls: ['ng-jvx-panel.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'ngJvxPanel',\r\n // tslint:disable-next-line:no-host-metadata-property\r\n host: {\r\n '[attr.aria-label]': 'null',\r\n '[attr.aria-labelledby]': 'null',\r\n '[attr.aria-describedby]': 'null',\r\n },\r\n animations: [\r\n matMenuAnimations.transformMenu,\r\n matMenuAnimations.fadeInItems\r\n ],\r\n providers: [\r\n {provide: MAT_MENU_PANEL, useExisting: MatMenu},\r\n ]\r\n})\r\nexport class NgJvxPanelComponent extends _MatMenuBase {\r\n constructor(elementRef: ElementRef<HTMLElement>, ngZone: NgZone,\r\n @Inject(MAT_MENU_DEFAULT_OPTIONS) defaultOptions: MatMenuDefaultOptions) {\r\n super(elementRef, ngZone, defaultOptions);\r\n }\r\n}\r\n\r\n","<ng-template>\r\n <div\r\n class=\"mat-menu-panel\"\r\n [id]=\"panelId\"\r\n [ngClass]=\"_classList\"\r\n (keydown)=\"_handleKeydown($event)\"\r\n (click)=\"closed.emit('click')\"\r\n [@transformMenu]=\"_panelAnimationState\"\r\n (@transformMenu.start)=\"_onAnimationStart($event)\"\r\n (@transformMenu.done)=\"_onAnimationDone($event)\"\r\n tabindex=\"-1\"\r\n role=\"menu\"\r\n [attr.aria-label]=\"ariaLabel || null\"\r\n [attr.aria-labelledby]=\"ariaLabelledby || null\"\r\n [attr.aria-describedby]=\"ariaDescribedby || null\">\r\n <div class=\"mat-menu-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n","import {NgModule} from '@angular/core';\r\nimport {NgJvxMultiselectComponent} from './ng-jvx-multiselect.component';\r\nimport {MatButtonModule} from '@angular/material/button';\r\nimport {MatOptionModule} from '@angular/material/core';\r\nimport {MatSelectModule} from '@angular/material/select';\r\nimport {CommonModule} from '@angular/common';\r\nimport {NgJvxOptionComponent} from './ng-jvx-option/ng-jvx-option.component';\r\nimport {MatMenuModule} from '@angular/material/menu';\r\nimport {NgJvxOptionsTemplateDirective} from './directives/ng-jvx-options-template.directive';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {NgJvxPanelComponent} from './ng-jvx-panel/ng-jvx-panel.component';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport {FormsModule, ReactiveFormsModule} from '@angular/forms';\r\nimport {MatChipsModule} from '@angular/material/chips';\r\nimport {HttpClientModule} from '@angular/common/http';\r\nimport {NgScrollbarModule} from 'ngx-scrollbar';\r\nimport {SmoothScrollModule} from 'ngx-scrollbar/smooth-scroll';\r\nimport {NgJvxSelectionTemplateDirective} from './directives/ng-jvx-selection-template.directive';\r\nimport {NgJvxDisabledOptionDirective} from './directives/ng-jvx-disabled-option.directive';\r\nimport { NgJvxGroupHeaderDirective } from './directives/ng-jvx-group-header.directive';\r\nimport { NgJvxFocusDirective } from './directives/ng-jvx-focus.directive';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NgJvxMultiselectComponent,\r\n NgJvxOptionComponent,\r\n NgJvxOptionsTemplateDirective,\r\n NgJvxPanelComponent,\r\n NgJvxSelectionTemplateDirective,\r\n NgJvxDisabledOptionDirective,\r\n NgJvxGroupHeaderDirective,\r\n NgJvxFocusDirective],\r\n imports: [\r\n MatButtonModule,\r\n MatOptionModule,\r\n MatSelectModule,\r\n MatMenuModule,\r\n CommonModule,\r\n MatIconModule,\r\n MatListModule,\r\n MatChipsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n NgScrollbarModule,\r\n SmoothScrollModule,\r\n FormsModule\r\n ],\r\n exports: [NgJvxMultiselectComponent, NgJvxOptionComponent, NgJvxOptionsTemplateDirective, NgJvxSelectionTemplateDirective, NgJvxDisabledOptionDirective, NgJvxGroupHeaderDirective]\r\n})\r\nexport class NgJvxMultiselectModule {\r\n}\r\n","/*\r\n * Public API Surface of ng-jvx-multiselect\r\n */\r\n\r\nexport * from './lib/ng-jvx-option/ng-jvx-option.component';\r\nexport * from './lib/directives/ng-jvx-options-template.directive';\r\nexport * from './lib/directives/ng-jvx-selection-template.directive';\r\nexport * from './lib/directives/ng-jvx-group-header.directive';\r\nexport * from './lib/directives/ng-jvx-disabled-option.directive';\r\nexport * from './lib/ng-jvx-multiselect.service';\r\nexport * from './lib/ng-jvx-multiselect.component';\r\nexport * from './lib/ng-jvx-multiselect.module';\r\nexport * from './lib/interfaces/ng-jvx-option-mapper';\r\nexport * from './lib/interfaces/ng-jvx-search-mapper';\r\nexport * from './lib/interfaces/ng-jvx-group-mapper';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2.NgJvxMultiselectService","i6","i10.NgJvxOptionComponent","i11.NgJvxFocusDirective"],"mappings":"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"}
File without changes
@@ -10,5 +10,5 @@ export declare class NgJvxDisabledOptionDirective implements OnInit, OnDestroy {
10
10
  ngOnInit(): void;
11
11
  ngOnDestroy(): void;
12
12
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxDisabledOptionDirective, never>;
13
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxDisabledOptionDirective, "[ngJvxDisabledOption]", never, { "ngJvxDisabledOption": "ngJvxDisabledOption"; }, {}, never>;
13
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxDisabledOptionDirective, "[ngJvxDisabledOption]", never, { "ngJvxDisabledOption": "ngJvxDisabledOption"; }, {}, never, never, false>;
14
14
  }
@@ -7,5 +7,5 @@ export declare class NgJvxFocusDirective implements OnInit, OnChanges {
7
7
  ngOnInit(): void;
8
8
  ngOnChanges(changes: SimpleChanges): void;
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxFocusDirective, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxFocusDirective, "[ngJvxFocus]", never, { "ngJvxFocus": "ngJvxFocus"; }, {}, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxFocusDirective, "[ngJvxFocus]", never, { "ngJvxFocus": "ngJvxFocus"; }, {}, never, never, false>;
11
11
  }
@@ -6,5 +6,5 @@ export declare class NgJvxGroupHeaderDirective {
6
6
  constructor(template: TemplateRef<any>, vcRef: ViewContainerRef);
7
7
  set ngJvxGroupHeaderOf(source: Array<any[]>);
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxGroupHeaderDirective, never>;
9
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxGroupHeaderDirective, "[ngJvxGroupHeader]", never, { "ngJvxGroupHeaderOf": "ngJvxGroupHeaderOf"; }, {}, never>;
9
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxGroupHeaderDirective, "[ngJvxGroupHeader]", never, { "ngJvxGroupHeaderOf": "ngJvxGroupHeaderOf"; }, {}, never, never, false>;
10
10
  }
@@ -7,5 +7,5 @@ export declare class NgJvxOptionsTemplateDirective {
7
7
  constructor(el: ElementRef, template: TemplateRef<any>, vcRef: ViewContainerRef);
8
8
  set ngJvxOptionsTemplateOf(source: Array<any[]>);
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxOptionsTemplateDirective, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxOptionsTemplateDirective, "[ngJvxOptionsTemplate]", never, { "ngJvxOptionsTemplateOf": "ngJvxOptionsTemplateOf"; }, {}, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxOptionsTemplateDirective, "[ngJvxOptionsTemplate]", never, { "ngJvxOptionsTemplateOf": "ngJvxOptionsTemplateOf"; }, {}, never, never, false>;
11
11
  }
@@ -6,5 +6,5 @@ export declare class NgJvxSelectionTemplateDirective {
6
6
  constructor(template: TemplateRef<any>, vcRef: ViewContainerRef);
7
7
  set ngJvxSelectionTemplateOf(source: Array<any[]>);
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxSelectionTemplateDirective, never>;
9
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxSelectionTemplateDirective, "[ngJvxSelectionTemplate]", never, { "ngJvxSelectionTemplateOf": "ngJvxSelectionTemplateOf"; }, {}, never>;
9
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgJvxSelectionTemplateDirective, "[ngJvxSelectionTemplate]", never, { "ngJvxSelectionTemplateOf": "ngJvxSelectionTemplateOf"; }, {}, never, never, false>;
10
10
  }
@@ -1,6 +1,6 @@
1
1
  import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, OnInit, QueryList, SimpleChanges } from '@angular/core';
2
2
  import { NgJvxOptionsTemplateDirective } from './directives/ng-jvx-options-template.directive';
3
- import { ControlValueAccessor, FormBuilder, FormGroup, NgControl } from '@angular/forms';
3
+ import { ControlValueAccessor, UntypedFormBuilder, UntypedFormGroup, NgControl } from '@angular/forms';
4
4
  import { MatSelectionList, MatSelectionListChange } from '@angular/material/list';
5
5
  import { NgJvxOptionComponent } from './ng-jvx-option/ng-jvx-option.component';
6
6
  import { MatMenuTrigger } from '@angular/material/menu';
@@ -73,7 +73,7 @@ export declare class NgJvxMultiselectComponent implements OnInit, OnDestroy, Aft
73
73
  controlType: string;
74
74
  document: Document;
75
75
  window: Window & typeof globalThis;
76
- form: FormGroup;
76
+ form: UntypedFormGroup;
77
77
  isOpen: boolean;
78
78
  isLoading: boolean;
79
79
  showList: boolean;
@@ -92,7 +92,7 @@ export declare class NgJvxMultiselectComponent implements OnInit, OnDestroy, Aft
92
92
  minHeight: string;
93
93
  width: string;
94
94
  };
95
- parts: FormGroup;
95
+ parts: UntypedFormGroup;
96
96
  touched: boolean;
97
97
  placeholder: string;
98
98
  focused: boolean;
@@ -105,7 +105,7 @@ export declare class NgJvxMultiselectComponent implements OnInit, OnDestroy, Aft
105
105
  private unsubscribe;
106
106
  private unsubscribe$;
107
107
  onTouched: () => void;
108
- constructor(formBuilder: FormBuilder, service: NgJvxMultiselectService, elementRef: ElementRef, changeDetectorRef: ChangeDetectorRef, ngControl: NgControl, fb: FormBuilder);
108
+ constructor(formBuilder: UntypedFormBuilder, service: NgJvxMultiselectService, elementRef: ElementRef, changeDetectorRef: ChangeDetectorRef, ngControl: NgControl, fb: UntypedFormBuilder);
109
109
  ngOnInit(): void;
110
110
  private clientSearch;
111
111
  private serverSearch;
@@ -140,5 +140,5 @@ export declare class NgJvxMultiselectComponent implements OnInit, OnDestroy, Aft
140
140
  updateOrderedOptions(options: any): Observable<any>;
141
141
  closeMenu(): void;
142
142
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxMultiselectComponent, [null, null, null, null, { optional: true; self: true; }, null]>;
143
- static ɵcmp: i0.ɵɵComponentDeclaration<NgJvxMultiselectComponent, "ng-jvx-multiselect", never, { "options": "options"; "multi": "multi"; "url": "url"; "requestType": "requestType"; "itemValue": "itemValue"; "itemText": "itemText"; "ignorePagination": "ignorePagination"; "clearable": "clearable"; "closeOnClick": "closeOnClick"; "hasErrors": "hasErrors"; "searchMode": "searchMode"; "searchInput": "searchInput"; "searchLabel": "searchLabel"; "listProp": "listProp"; "totalRowsProp": "totalRowsProp"; "panelClass": "panelClass"; "searchProp": "searchProp"; "mapper": "mapper"; "searchMapper": "searchMapper"; "groupBy": "groupBy"; "value": "value"; "requestHeaders": "requestHeaders"; "required": "required"; "disabled": "disabled"; }, { "valueChange": "valueChange"; "jvxMultiselectOpen": "jvxMultiselectOpen"; "jvxMultiselectOpened": "jvxMultiselectOpened"; "jvxMultiselectClose": "jvxMultiselectClose"; "jvxMultiselectClosed": "jvxMultiselectClosed"; "scrollEnd": "scrollEnd"; }, ["optionsTemplate", "selectionTemplate", "groupHeaderTemplate"], ["*", "[ng-jvx-footer]", "[placeholder]"]>;
143
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgJvxMultiselectComponent, "ng-jvx-multiselect", never, { "options": "options"; "multi": "multi"; "url": "url"; "requestType": "requestType"; "itemValue": "itemValue"; "itemText": "itemText"; "ignorePagination": "ignorePagination"; "clearable": "clearable"; "closeOnClick": "closeOnClick"; "hasErrors": "hasErrors"; "searchMode": "searchMode"; "searchInput": "searchInput"; "searchLabel": "searchLabel"; "listProp": "listProp"; "totalRowsProp": "totalRowsProp"; "panelClass": "panelClass"; "searchProp": "searchProp"; "mapper": "mapper"; "searchMapper": "searchMapper"; "groupBy": "groupBy"; "value": "value"; "requestHeaders": "requestHeaders"; "required": "required"; "disabled": "disabled"; }, { "valueChange": "valueChange"; "jvxMultiselectOpen": "jvxMultiselectOpen"; "jvxMultiselectOpened": "jvxMultiselectOpened"; "jvxMultiselectClose": "jvxMultiselectClose"; "jvxMultiselectClosed": "jvxMultiselectClosed"; "scrollEnd": "scrollEnd"; }, ["optionsTemplate", "selectionTemplate", "groupHeaderTemplate"], ["*", "[ng-jvx-footer]", "[placeholder]"], false>;
144
144
  }
@@ -10,5 +10,5 @@ export declare class NgJvxOptionComponent implements OnInit, DoCheck {
10
10
  ngDoCheck(): void;
11
11
  deselect(): void;
12
12
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxOptionComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<NgJvxOptionComponent, "ng-jvx-option", never, { "value": "value"; }, {}, never, ["*"]>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgJvxOptionComponent, "ng-jvx-option", never, { "value": "value"; }, {}, never, ["*"], false>;
14
14
  }
@@ -12,5 +12,5 @@ import * as i0 from "@angular/core";
12
12
  export declare class NgJvxPanelComponent extends _MatMenuBase {
13
13
  constructor(elementRef: ElementRef<HTMLElement>, ngZone: NgZone, defaultOptions: MatMenuDefaultOptions);
14
14
  static ɵfac: i0.ɵɵFactoryDeclaration<NgJvxPanelComponent, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<NgJvxPanelComponent, "ngJvxPanel", ["ngJvxPanel"], {}, {}, never, ["*"]>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgJvxPanelComponent, "ngJvxPanel", ["ngJvxPanel"], {}, {}, never, ["*"], false>;
16
16
  }
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "ng-jvx-multiselect",
3
- "version": "1.1.28",
3
+ "version": "1.2.0",
4
4
  "description": "ng-jvx-multiselect is a select based on angular material. It handles both single and multiple selections and allows to retrieves the options via asynchronous calls.",
5
5
  "exports": {
6
6
  ".": {
7
7
  "sass": "./_index.scss",
8
- "types": "./ng-jvx-multiselect.d.ts",
8
+ "types": "./index.d.ts",
9
9
  "esm2020": "./esm2020/ng-jvx-multiselect.mjs",
10
10
  "es2020": "./fesm2020/ng-jvx-multiselect.mjs",
11
11
  "es2015": "./fesm2015/ng-jvx-multiselect.mjs",
@@ -17,10 +17,10 @@
17
17
  }
18
18
  },
19
19
  "peerDependencies": {
20
- "@angular/common": "^13.3.11",
21
- "@angular/core": "^13.3.11",
22
- "@angular/material": "^13.3.9",
23
- "ngx-scrollbar": "^9.0.2"
20
+ "@angular/common": "^14.0.2",
21
+ "@angular/core": "^14.0.2",
22
+ "@angular/material": "^14.0.2",
23
+ "ngx-scrollbar": "^10.0.0"
24
24
  },
25
25
  "dependencies": {
26
26
  "tslib": "^2.0.0"
@@ -43,6 +43,6 @@
43
43
  "esm2020": "esm2020/ng-jvx-multiselect.mjs",
44
44
  "fesm2020": "fesm2020/ng-jvx-multiselect.mjs",
45
45
  "fesm2015": "fesm2015/ng-jvx-multiselect.mjs",
46
- "typings": "ng-jvx-multiselect.d.ts",
46
+ "typings": "index.d.ts",
47
47
  "sideEffects": false
48
48
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-disabled-option.directive.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-disabled-option.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAuB,SAAS,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;;AAI5F,qBAIa,4BAA6B,YAAW,MAAM,EAAE,SAAS;IAgBlE,OAAO,CAAC,EAAE;IAfZ,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,MAAM,CAAuB;IAErC,IAAa,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAO/C;gBAGS,EAAE,EAAE,UAAU;IAKxB,QAAQ,IAAI,IAAI;IAYhB,WAAW,IAAI,IAAI;yCAjCR,4BAA4B;2CAA5B,4BAA4B;CAqCxC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-focus.directive.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-focus.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,UAAU,EAAS,SAAS,EAAE,MAAM,EAAE,aAAa,EAAC,MAAM,eAAe,CAAC;;AAG/G,qBAIa,mBAAoB,YAAW,MAAM,EAAE,SAAS;IAG/C,OAAO,CAAC,EAAE;IAFb,UAAU,EAAE,OAAO,CAAC;gBAET,EAAE,EAAE,UAAU;IAGlC,QAAQ,IAAI,IAAI;IAMhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;yCAZ9B,mBAAmB;2CAAnB,mBAAmB;CAiB/B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-group-header.directive.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-group-header.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,WAAW,EAAE,gBAAgB,EAAC,MAAM,eAAe,CAAC;;AAE9E,qBAIa,yBAAyB;IAG3B,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;IACjC,OAAO,CAAC,KAAK;gBADN,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EACzB,KAAK,EAAE,gBAAgB;IAGjC,IAAa,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,EAInD;yCAXU,yBAAyB;2CAAzB,yBAAyB;CAcrC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-options-template.directive.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-options-template.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,UAAU,EAAuB,WAAW,EAAE,gBAAgB,EAAC,MAAM,eAAe,CAAC;;AAExG,qBAIa,6BAA6B;IAGtC,OAAO,CAAC,EAAE;IACH,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;IACjC,OAAO,CAAC,KAAK;gBAFL,EAAE,EAAE,UAAU,EACf,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EACzB,KAAK,EAAE,gBAAgB;IAKjC,IAAa,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,EAIvD;yCAdU,6BAA6B;2CAA7B,6BAA6B;CAgBzC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-selection-template.directive.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/directives/ng-jvx-selection-template.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,WAAW,EAAE,gBAAgB,EAAC,MAAM,eAAe,CAAC;;AAE9E,qBAIa,+BAA+B;IAGjC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;IACjC,OAAO,CAAC,KAAK;gBADN,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,EACzB,KAAK,EAAE,gBAAgB;IAGjC,IAAa,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,EAIzD;yCAXU,+BAA+B;2CAA/B,+BAA+B;CAa3C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-group-mapper.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/interfaces/ng-jvx-group-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAU,MAAM,MAAM,CAAC;AAEzC,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,UAAU,CAAC,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,CAAC;CACX"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-option-mapper.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/interfaces/ng-jvx-option-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAU,MAAM,MAAM,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,SAAS,CAAC,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;CACvC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-search-mapper.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/interfaces/ng-jvx-search-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAU,MAAM,MAAM,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;CACnD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-multiselect.component.d.ts","sourceRoot":"","sources":["../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.component.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-multiselect.module.d.ts","sourceRoot":"","sources":["../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAuBA,qBA2Ba,sBAAsB;yCAAtB,sBAAsB;0CAAtB,sBAAsB;0CAAtB,sBAAsB;CAClC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-multiselect.service.d.ts","sourceRoot":"","sources":["../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-multiselect.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,MAAM,CAAC;AAChC,OAAO,EAAC,UAAU,EAAa,MAAM,sBAAsB,CAAC;;AAE5D,qBAGa,uBAAuB;IACtB,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAGpC,OAAO,CAAC,EACE,GAAG,EACH,gBAAwB,EACxB,WAAW,EACX,QAAQ,EACR,WAAmB,EACnB,cAAc,EACd,MAAM,EACN,UAAqB,EACrB,IAAI,EACL,EAAE;QACT,GAAG,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,OAAO,CAAC;QACvC,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,KAAK,GAAG,MAAM,CAAC;QAC5B,cAAc,EAAE,GAAG,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,GAAG,CAAA;KACV,GAAG,UAAU,CAAC,GAAG,CAAC;yCAvBR,uBAAuB;6CAAvB,uBAAuB;CA8CnC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-option.component.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-option/ng-jvx-option.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAqB,MAAM,EAAY,MAAM,eAAe,CAAC;AACvH,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;;AAErD,qBAMa,oBAAqB,YAAW,MAAM,EAAE,OAAO;IACjB,UAAU,EAAE,aAAa,CAAC;IAC1D,KAAK,EAAE,GAAG,CAAC;IACb,UAAU,UAAS;;IAK1B,QAAQ,IAAI,IAAI;IAIhB,SAAS,IAAI,IAAI;IAMjB,QAAQ,IAAI,IAAI;yCAlBL,oBAAoB;2CAApB,oBAAoB;CAqBhC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-panel.component.d.ts","sourceRoot":"","sources":["../../../../projects/ng-jvx-multiselect/src/lib/ng-jvx-panel/ng-jvx-panel.component.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAIL,UAAU,EAEV,MAAM,EAEP,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EAMZ,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;;AAYhC,2BAA2B;AAC3B,qBAsBa,mBAAoB,SAAQ,YAAY;gBACvC,UAAU,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM,EACjB,cAAc,EAAE,qBAAqB;yCAFxE,mBAAmB;2CAAnB,mBAAmB;CAK/B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ng-jvx-multiselect.d.ts","sourceRoot":"","sources":["../../projects/ng-jvx-multiselect/src/ng-jvx-multiselect.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,cAAc,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../projects/ng-jvx-multiselect/src/public-api.ts"],"names":[],"mappings":"AAIA,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oDAAoD,CAAC;AACnE,cAAc,sDAAsD,CAAC;AACrE,cAAc,gDAAgD,CAAC;AAC/D,cAAc,mDAAmD,CAAC;AAClE,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,sCAAsC,CAAC"}