Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
protected filter(docs: T[], selector: Selector, options: FindOptions): T[] {
let cursor = mingo.find(docs, selector);
if (options.sort) {
cursor = cursor.sort(options.sort);
}
if (options.skip) {
cursor = cursor.skip(options.skip);
}
if (options.limit) {
cursor = cursor.limit(options.limit);
}
return cursor.all();
}
function findByQuery(query, options, callback) {
if (typeof options === 'function') {
callback = options
options = {}
}
var cursor = Mingo.find(data, query, options && options.fields)
if (options && options.sort) cursor = cursor.sort(options.sort)
if (options && options.limit) cursor = cursor.limit(options.limit)
var allData = getObjectCopies(cursor.all())
if (callback === undefined) {
return es.readArray(allData).pipe(
es.map(function(data, cb) {
self.emit('received', data)
cb(null, data)
})
)
} else {
callback(null, allData)
}
}
export const filterDocuments = (filter: any, docs: any[], options: FilterOptions = {}): any[] => {
let cursor = Mingo.find(docs, filter);
if (options.sort) {
cursor = cursor.sort(options.sort);
}
if (options.skip) {
cursor = cursor.skip(options.skip);
}
if (options.limit) {
cursor = cursor.limit(options.limit);
}
return cursor.all();
};
key: tableSettings.keyField
});
const searchableColumns = tableSettings.tableColumns
.filter(column => column.searchable !== false)
.map(column => column.key);
const searchValueQuery = generateSearchValueQuery(searchValue, searchableColumns);
const filterQuery = generateFilterQuery(columnFilters);
const sortOptions = generateSortOptions(tableSettings, params);
const query = {...searchValueQuery, ...filterQuery};
const dataTotalSize = mingo
.find(searchData.data, query)
.count();
const data = mingo
.find(searchData.data, query)
.skip(offset)
.limit(limit)
.sort(sortOptions)
.all();
return {
searchSuccess: true,
dataTotalSize,
data
};
};
const searchValue = params.get('searchValue');
const columnFilters = JSON.parse(params.get('columnFilters'));
mingo.setup({
key: tableSettings.keyField
});
const searchableColumns = tableSettings.tableColumns
.filter(column => column.searchable !== false)
.map(column => column.key);
const searchValueQuery = generateSearchValueQuery(searchValue, searchableColumns);
const filterQuery = generateFilterQuery(columnFilters);
const sortOptions = generateSortOptions(tableSettings, params);
const query = {...searchValueQuery, ...filterQuery};
const dataTotalSize = mingo
.find(searchData.data, query)
.count();
const data = mingo
.find(searchData.data, query)
.skip(offset)
.limit(limit)
.sort(sortOptions)
.all();
return {
searchSuccess: true,
dataTotalSize,
data
};
};
function findById(id) {
var query = {}
query[options.idProperty] = id
return Mingo.find(data, query).first()
}