0.6.0 • Published 1 year ago

mat-select-search-advanced v0.6.0

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

This project made by ZELLKON.


Github

NPM Package

Installation

npm i mat-select-search-advanced

How to use

Implement

Import MatSelectSearchAdvancedModule into your module

import { MatSelectSearchAdvancedModule } from 'mat-select-search-advanced';

Add Module

@NgModule({
  imports: [
    ...
    MatSelectSearchAdvancedModule
  ],
  declarations: [	
    AppComponent,
   ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

Use library in your component

<mat-select-search-advanced 
        [objects]="array" indexKey="id" 
        [viewKey]="['name']" 
        [searchProperties]="['name', 'age']"
        placeholderSearchLabel="Search by name" 
        label="List Animal" 
        messageErrorRequired="You need select some thing"
        noEntriesFoundLabel="Found nothing" 
        tooltipMessage="Select all / Deselect all" 
        selectAllViewLabel="All animal"
        [required] = "true"
        formControlName="yourFormControl"
        (optionSelect$)="getOptionSelected($event)">
    </mat-select-search-advanced>

This code is just a sample

Properties - Config Mat-select-search-advance

objects

// if you wana change array
this.array = newArray.slice();

indexKey (this is your index your object, example: id)

  indexKey="id" 

viewKey (custom view value in mat-select)

 [viewKey]="['name', 'age']"

searchProperties (list key of object for search)

 [searchProperties]="['name']"

showToggleAllCheckbox (true or false)

  [showToggleAllCheckbox]="true"
or
 [searchProperties]="['name','age',...]"

placeholderSearchLabel (lable on search input)

 placeholderSearchLabel="Search by name" 

multiple (true or false)

 [multiple]="false"

disabled (true or false)

 [disabled]="false"

appearance ('outline' | 'fill' | ...)

 appearance="outline"

Same for other attributes

  @Input()
  objects!: TObject[];
  @Input()
  searchProperties: (keyof TObject)[] = [];
  @Input()
  indexKey!: keyof TObject;
  @Input()
  viewKey!: (keyof TObject)[];
  @Input() tooltipMessage = 'Select all / Deselect all';
  @Input() placeholderSearchLabel = 'Search';
  @Input() noEntriesFoundLabel = 'No results found';
  @Input() label = '';
  @Input() selectAllViewLabel = 'All';
  @Input() showToggleAllCheckbox = true;
  @Input()
  multiple!: boolean;
  disabled!: boolean;
  @Input() messageErrorRequired = `Can't be null`;
  @Input() appearance: MatFormFieldAppearance = 'fill';
  @Input() tooltipPosition: 'below' | 'above' | 'left' | 'right' = 'above';
  @Input() required = true;
  @Output() optionSelected$ = new EventEmitter<any>();
0.5.6

1 year ago

0.5.8

1 year ago

0.5.7

1 year ago

0.5.9

1 year ago

0.6.0

1 year ago

0.4.9

2 years ago

0.4.8

2 years ago

0.5.4

2 years ago

0.5.3

2 years ago

0.5.5

2 years ago

0.5.0

2 years ago

0.5.2

2 years ago

0.5.1

2 years ago

0.4.7

2 years ago

0.3.9

2 years ago

0.3.0

2 years ago

0.4.5

2 years ago

0.2.7

2 years ago

0.4.4

2 years ago

0.3.5

2 years ago

0.2.6

2 years ago

0.3.8

2 years ago

0.2.9

2 years ago

0.4.6

2 years ago

0.3.7

2 years ago

0.2.8

2 years ago

0.3.2

2 years ago

0.2.3

2 years ago

0.4.0

2 years ago

0.3.1

2 years ago

0.4.3

2 years ago

0.3.4

2 years ago

0.2.5

2 years ago

0.4.2

2 years ago

0.3.3

2 years ago

0.2.4

2 years ago

0.2.2

3 years ago

0.2.1

3 years ago

0.2.0

3 years ago

0.1.9

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago