|
| 1 | +define(["require", "exports", "@syncfusion/ej2-dropdowns", "fuse.js"], function (require, exports, ej2_dropdowns_1, Fuse) { |
| 2 | + "use strict"; |
| 3 | + Object.defineProperty(exports, "__esModule", { value: true }); |
| 4 | + var booksData = [ |
| 5 | + { BookName: 'Support Vector Machines Succinctly', BookID: 'BOOK1' }, { BookName: 'Scala Succinctly', BookID: 'BOOK2' }, |
| 6 | + { BookName: 'Application Security in .NET Succinctly', BookID: 'BOOK3' }, |
| 7 | + { BookName: 'ASP.NET WebHooks Succinctly', BookID: 'BOOK4' }, |
| 8 | + { BookName: 'Xamarin.Forms Succinctly', BookID: 'BOOK5' }, { BookName: 'Asynchronous Programming Succinctly', BookID: 'BOOK6' }, |
| 9 | + { BookName: 'Java Succinctly Part 2', BookID: 'BOOK7' }, { BookName: 'Java Succinctly Part 1', BookID: 'BOOK8' }, |
| 10 | + { BookName: 'PHP Succinctly', BookID: 'BOOK9' }, { BookName: 'Bing Maps V8 Succinctly', BookID: 'BOOK10' }, |
| 11 | + { BookName: 'WPF Debugging and Performance Succinctly', BookID: 'BOOK11' }, |
| 12 | + { BookName: 'Go Web Development Succinctly', BookID: 'BOOK12' }, |
| 13 | + { BookName: 'Go Succinctly', BookID: 'BOOK13' }, { BookName: 'More UWP Succinctly', BookID: 'BOOK14' }, |
| 14 | + { BookName: 'UWP Succinctly', BookID: 'BOOK15' }, { BookName: 'LINQPad Succinctly', BookID: 'BOOK16' }, |
| 15 | + { BookName: 'MongoDB 3 Succinctly', BookID: 'BOOK17' }, { BookName: 'R Programming Succinctly', BookID: 'BOOK18' }, |
| 16 | + { BookName: 'Azure Cosmos DB and DocumentDB Succinctly', BookID: 'BOOK19' }, |
| 17 | + { BookName: 'Unity Game Development Succinctly', BookID: 'BOOK20' }, |
| 18 | + { BookName: 'Aurelia Succinctly', BookID: 'BOOK21' }, { BookName: 'Microsoft Bot Framework Succinctly', BookID: 'BOOK22' }, |
| 19 | + { BookName: 'ASP.NET Core Succinctly', BookID: 'BOOK23' }, { BookName: 'Twilio with C# Succinctly', BookID: 'BOOK24' }, |
| 20 | + { BookName: 'Angular 2 Succinctly', BookID: 'BOOK25' }, { BookName: 'Visual Studio 2017 Succinctly', BookID: 'BOOK26' }, |
| 21 | + { BookName: 'Camtasia Succinctly', BookID: 'BOOK27' }, { BookName: 'SQL Queries Succinctly', BookID: 'BOOK28' }, |
| 22 | + { BookName: 'Keystone.js Succinctly', BookID: 'BOOK29' }, { BookName: 'Groovy Succinctly', BookID: 'BOOK30' }, |
| 23 | + { BookName: 'SQL Server for C# Developers Succinctly', BookID: 'BOOK31' }, |
| 24 | + { BookName: 'Ubuntu Server Succinctly', BookID: 'BOOK32' }, |
| 25 | + { BookName: 'Statistics Fundamentals Succinctly', BookID: 'BOOK33' }, { BookName: '.NET Core Succinctly', BookID: 'BOOK34' }, |
| 26 | + { BookName: 'SOLID Principles Succinctly', BookID: 'BOOK35' }, { BookName: 'Node.js Succinctly', BookID: 'BOOK36' }, |
| 27 | + { BookName: 'Customer Success for C# Developers Succinctly', BookID: 'BOOK37' }, |
| 28 | + { BookName: 'Data Capture and Extraction with C# Succinctly', BookID: 'BOOK38' }, |
| 29 | + { BookName: 'Hadoop Succinctly', BookID: 'BOOK39' }, { BookName: 'SciPy Programming Succinctly', BookID: 'BOOK40' }, |
| 30 | + { BookName: 'Hive Succinctly', BookID: 'BOOK41' }, { BookName: 'React.js Succinctly', BookID: 'BOOK42' }, |
| 31 | + { BookName: 'ECMAScript 6 Succinctly', BookID: 'BOOK43' }, { BookName: 'GitHub Succinctly', BookID: 'BOOK44' }, |
| 32 | + { BookName: 'Gulp Succinctly', BookID: 'BOOK45' }, { BookName: 'Visual Studio Code Succinctly', BookID: 'BOOK46' }, |
| 33 | + { BookName: 'Object-Oriented Programming in C# Succinctly', BookID: 'BOOK47' }, |
| 34 | + { BookName: 'C# Code Contracts Succinctly', BookID: 'BOOK48' }, |
| 35 | + { BookName: 'Leaflet.js Succinctly', BookID: 'BOOK49' }, { BookName: 'Delphi Succinctly', BookID: 'BOOK50' }, |
| 36 | + { BookName: 'SQL on Azure Succinctly', BookID: 'BOOK51' }, { BookName: 'Web Servers Succinctly', BookID: 'BOOK52' }, |
| 37 | + { BookName: 'ASP.NET Multitenant Applications Succinctly', BookID: 'BOOK53' }, |
| 38 | + { BookName: 'ASP.NET MVC Succinctly', BookID: 'BOOK54' }, |
| 39 | + { BookName: 'Windows Azure Websites Succinctly', BookID: 'BOOK55' }, |
| 40 | + { BookName: 'Localization for .NET Succinctly', BookID: 'BOOK56' }, |
| 41 | + { BookName: 'ASP.NET Web API Succinctly', BookID: 'BOOK57' }, |
| 42 | + { BookName: 'ASP.NET MVC 4 Mobile Websites Succinctly', BookID: 'BOOK58' }, |
| 43 | + { BookName: 'jQuery Succinctly', BookID: 'BOOK59' }, { BookName: 'JavaScript Succinctly', BookID: 'BOOK60' }, |
| 44 | + ]; |
| 45 | + var atcObj = new ej2_dropdowns_1.AutoComplete({ |
| 46 | + dataSource: booksData, |
| 47 | + fields: { value: 'BookName' }, |
| 48 | + placeholder: 'e.g. Node.js Succinctly', |
| 49 | + filtering: function (e) { |
| 50 | + var options = { |
| 51 | + keys: ['BookName'], |
| 52 | + includeMatches: true, |
| 53 | + findAllMatches: true |
| 54 | + }; |
| 55 | + var fuse = new Fuse(booksData, options); |
| 56 | + var result = fuse.search(e.text); |
| 57 | + var data = []; |
| 58 | + for (var i = 0; i < result.length; i++) { |
| 59 | + data.push(result[i].item); |
| 60 | + } |
| 61 | + e.updateData(data, null); |
| 62 | + var popupElement = document.getElementById('books_popup'); |
| 63 | + var lists = popupElement.querySelectorAll('.e-list-item'); |
| 64 | + highlightSearch(lists, result); |
| 65 | + } |
| 66 | + }); |
| 67 | + atcObj.appendTo('#books'); |
| 68 | + function highlightSearch(listItems, result) { |
| 69 | + if (result.length > 0) { |
| 70 | + for (var i = 0; i < listItems.length; i++) { |
| 71 | + var innerHTML = listItems[i].innerHTML; |
| 72 | + for (var j = result[i].matches[0].indices.length - 1; j >= 0; j--) { |
| 73 | + var indexes = result[i].matches[0].indices[j]; |
| 74 | + innerHTML = innerHTML.substring(0, indexes[0]) + '<span class="e-highlight">' + |
| 75 | + innerHTML.substring(indexes[0], (indexes[1] + 1)) + '</span>' + innerHTML.substring(indexes[1] + 1); |
| 76 | + listItems[i].innerHTML = innerHTML; |
| 77 | + } |
| 78 | + } |
| 79 | + } |
| 80 | + } |
| 81 | +}); |
0 commit comments