Добавить в топиках фильтр по названию и/или содержимому

Новая
Планируемый запуск: 19.02.2021Дата начала: Планируемое завершение: 20.02.2021Дата завершения:

Описание задачи

{"blocks": [{"key": "e6p5l", "data": {}, "text": "Ранее были более мощные фильтры, но сейчас надо добавить хотя бы основные.", "type": "unstyled", "depth": 0, "entityRanges": [], "inlineStyleRanges": []}, {"key": "26f32", "data": {}, "text": "", "type": "unstyled", "depth": 0, "entityRanges": [], "inlineStyleRanges": []}, {"key": "7sltc", "data": {}, "text": "Вот здесь прописаны текущие фильтры для топиков: https://github.com/freecode-academy/freecode.academy/blob/818c3b44a3b2d4006889a32b6d1d404930e0b92f/src/pages/Topics/index.tsx#L24-L50", "type": "unstyled", "depth": 0, "entityRanges": [{"key": 0, "length": 133, "offset": 49}], "inlineStyleRanges": []}, {"key": "7h098", "data": {}, "text": "", "type": "unstyled", "depth": 0, "entityRanges": [], "inlineStyleRanges": []}, {"key": "ajne9", "data": {}, "text": "Сюда надо прописать возможность передавать и другие фильтры, как то Название, Содержимое и т.п. (сейчас хотя бы поиск по названию и/или содержимому). ", "type": "unstyled", "depth": 0, "entityRanges": [], "inlineStyleRanges": []}, {"key": "dieg5", "data": {}, "text": "Пример того, как это работало на старой версии сайта: https://old.prisma-cms.com/topics/?filters=%7B%22contentText_contains%22%3A%22next-js%22%7D", "type": "unstyled", "depth": 0, "entityRanges": [{"key": 1, "length": 91, "offset": 54}], "inlineStyleRanges": []}, {"key": "ecg91", "data": {}, "text": "", "type": "unstyled", "depth": 0, "entityRanges": [], "inlineStyleRanges": []}, {"key": "4umdh", "data": {}, "text": "Следует обратить внимание, что изменение значений в фильтре (UI) вызывает изменение УРЛ страницы, а параметры для API-запроса берутся именно из УРЛа страницы. Надо сделать сдесь так же (то есть заюзать useRouter и router.replace(newUri)). ", "type": "unstyled", "depth": 0, "entityRanges": [], "inlineStyleRanges": []}, {"key": "1bbff", "data": {}, "text": "", "type": "unstyled", "depth": 0, "entityRanges": [], "inlineStyleRanges": []}], "entityMap": {"0": {"data": {"url": "https://github.com/freecode-academy/freecode.academy/blob/818c3b44a3b2d4006889a32b6d1d404930e0b92f/src/pages/Topics/index.tsx#L24-L50"}, "type": "LINK", "mutability": "MUTABLE"}, "1": {"data": {"url": "https://old.prisma-cms.com/topics/?filters=%7B%22contentText_contains%22%3A%22next-js%22%7D"}, "type": "LINK", "mutability": "MUTABLE"}}}

  1. Технология
    Требуемый уровень
  2. 3
    3
    3
    3