UNPKG

@rxap/data-grid

Version:

Provides a data grid component for Angular applications. It supports plain and form modes, custom header and cell templates, and integration with Rxap Forms and Data Sources. The component allows for displaying and editing data in a tabular format with fe

68 lines (54 loc) 1.76 kB
(function(compodoc) { function LunrSearchEngine() { this.index = undefined; this.store = {}; this.name = 'LunrSearchEngine'; } LunrSearchEngine.prototype.init = function() { var that = this, d = new promise.Promise(); that.index = lunr.Index.load(COMPODOC_SEARCH_INDEX.index); that.store = COMPODOC_SEARCH_INDEX.store; d.done(); return d; }; LunrSearchEngine.prototype.search = function(q, offset, length) { var that = this, results = [], d = new promise.Promise(); if (this.index) { results = $.map(this.index.search('*' + q + '*'), function(result) { var doc = that.store[result.ref]; return { title: doc.title, url: doc.url, body: doc.summary || doc.body }; }); } d.done({ query: q, results: length === 0 ? results : results.slice(0, length), count: results.length }); return d; }; compodoc.addEventListener(compodoc.EVENTS.READY, function(event) { var engine = new LunrSearchEngine(), initialized = false; function query(q, offset, length) { if (!initialized) throw new Error('Search has not been initialized'); return engine.search(q, offset, length); } compodoc.search = { query: query }; engine.init() .then(function() { initialized = true; compodoc.dispatchEvent({ type: compodoc.EVENTS.SEARCH_READY }); }); }); })(compodoc);