mirror of
https://github.com/Redocly/redoc.git
synced 2024-11-22 00:26:34 +03:00
feet: search feature to support path
(#2145)
This commit is contained in:
parent
ddde105aca
commit
c52ee83f77
|
@ -59,4 +59,20 @@ describe('Search', () => {
|
|||
getSearchInput().type('xzss', { force: true });
|
||||
getSearchResults().should('exist').should('contain', 'No results found');
|
||||
});
|
||||
|
||||
it('should allow search by path or keywords in path', () => {
|
||||
getSearchInput().clear().type('uploadImage', { force: true });
|
||||
cy.get('[role=search] [role=menuitem]')
|
||||
.should('have.length', 1)
|
||||
.first()
|
||||
.should('contain', 'uploads an image');
|
||||
|
||||
getSearchInput()
|
||||
.clear()
|
||||
.type('/pet/{petId}/uploadImage', { force: true, parseSpecialCharSequences: false });
|
||||
cy.get('[role=search] [role=menuitem]')
|
||||
.should('have.length', 1)
|
||||
.first()
|
||||
.should('contain', 'uploads an image');
|
||||
});
|
||||
});
|
||||
|
|
|
@ -26,7 +26,7 @@ export class SearchStore<T> {
|
|||
const recurse = items => {
|
||||
items.forEach(group => {
|
||||
if (group.type !== 'group') {
|
||||
this.add(group.name, group.description || '', group.id);
|
||||
this.add(group.name, (group.description || '').concat(' ', group.path || ''), group.id);
|
||||
}
|
||||
recurse(group.items);
|
||||
});
|
||||
|
|
|
@ -37,7 +37,10 @@ function initEmpty() {
|
|||
|
||||
initEmpty();
|
||||
|
||||
const expandTerm = term => '*' + lunr.stemmer(new lunr.Token(term, {})) + '*';
|
||||
const expandTerm = term => {
|
||||
const token = lunr.trimmer(new lunr.Token(term, {}));
|
||||
return '*' + lunr.stemmer(token) + '*';
|
||||
};
|
||||
|
||||
export function add<T>(title: string, description: string, meta?: T) {
|
||||
const ref = store.push(meta) - 1;
|
||||
|
|
Loading…
Reference in New Issue
Block a user