Posts

angular search pipe

  import { Pipe , PipeTransform } from '@angular/core' ; @ Pipe ({   name : 'searchFilter' , }) export class SearchFilterPipe implements PipeTransform {   transform ( items : any [], searchText : string ): any {     if (! items ) {       return [];     }     if (! searchText ) {       return items ;     }     const searchTextLowerCase = searchText . toLocaleLowerCase ();     return items . filter (( item ) => {       return item . name . toLocaleLowerCase (). includes ( searchTextLowerCase );     });   } } in html use like this *ngFor = "let listItem of templateData | searchFilter: searchText"

sorting in angular 14

 based on pipe sorting import { Pipe , PipeTransform } from '@angular/core' ; export type SortOrder = 'asc' | 'desc' ; @ Pipe ({   name : 'tableSorting' }) export class TableSortingPipe implements PipeTransform {         public sortByTab :   any ;   transform ( value : any [], sortOrder : SortOrder | string = 'asc' , sortKey ?: any ): any {     let sortArrayData = value ;       this . sortByTab = ( a : any , b : any ) => {       const isNumber = ( v : any ) => Number ( v ). toString () === v ;       const aPart = a [ sortKey ]. toString (). match ( /\d + | \D + / g );       const bPart = b [ sortKey ]. toString (). match ( /\d + | \D + / g );       let i = 0 ;       const len = Math . min ( aPart . length , bPart . length );       while ( i < len && aPart [ i ] === bPart [ i ]) { ...

excel download in angular

  download (){     if ( this . fromdate2 == undefined ){       this . filename = "AllIssues" ;     } else {       this . filename = this . fromdate2 ;     }             this . downloadFile ( this . jsonData , this . filename );   }     downloadFile ( data , filename = 'data' ) {     let date ;     if ( this . fromdate2 == undefined ){     date = '' ;     } else {       date = 'Month: ' + this . fromdate2 ;     }     let csvData = this . ConvertToCSV ( data , [ 'ArmyNo' , 'Name' , 'Rank' , 'Unit' , 'Issue' , 'ReportedOn' , 'ResolvedOn' ]);     console . log ( csvData );       let blob ;     if ( date == '' ){         blob = new Blob ([ ' \ufeff ' + csvData ], { type : 'text/csv;charset=utf-8;' });         } else {   ...

sorting array

  //   const ascendingComparator = (a:any, b:any) => (a.activitydate > b.activitydate) ? 1 : -1; //   //   const descendingComparator = (a:any, b:any) => (a.activitydate > b.activitydate) ? -1 : 1; //   //   debugger; //   //   console.log(order[0][1]); //   //   if(order[0][1]=="desc"){ //   //   ai.rowsdata = ai.rowsdata.sort(descendingComparator); //   //   console.log(ai.rowsdata); //   // } // sortFunction1(a:any, b:any){     //   var dateA = new Date(a.activitydate);     //   var dateB = new Date(b.activitydate);     //   console.log(dateA > dateB,dateA < dateB );     //   if(dateA > dateB){     //     return dateA > dateB ? -1 : 1;     //   }else if(dateA < dateB){     //     return dateA > dateB ? 1 : -1;     //   }else{     //   ...

imp links

 https://www.npmjs.com/package/ionic-long-press long press example https://devdactic.com/custom-ionic-animations/ small animations

pdf upload in angular

  pdfOnload(event) {      const file = event.target.files[0];     const reader = new FileReader();     reader.readAsDataURL(file);     reader.onload = () => {         console.log(reader.result);          this.base64=reader.result;     };   }  <div class="form-group">                         <label for="file">Attach1</label>                         <input type="file"                                id="file" accept="pdf/*"                                  (change)="pdfOnload($event)">                     </div...

image upload in angular

   <input class="display1"                         type="file"                         id="fileInput"                         name="fileInput"                         accept="image/*"                          (change)="selectFiles($event)"                       /> selectFiles(event: any): void {          this.selectedFileNames = [];     this.selectedFiles = event.target.files;     this.previews = [];     if (this.selectedFiles && this.selectedFiles[0]) {       const numberOfFiles = this.selectedFiles.length;       for (let i =...