From 98e6107e277f0c89019dc7f9b89d105e410a8c8c Mon Sep 17 00:00:00 2001 From: TEC Date: Sun, 27 Oct 2024 03:42:15 +0800 Subject: [PATCH] Add Kagi search provider --- docs/configs/settings.md | 2 +- docs/widgets/info/search.md | 2 +- src/components/widgets/search/search.jsx | 8 +++++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/docs/configs/settings.md b/docs/configs/settings.md index 2f387a65..0b721f29 100644 --- a/docs/configs/settings.md +++ b/docs/configs/settings.md @@ -389,7 +389,7 @@ quicklaunch: hideInternetSearch: true showSearchSuggestions: true hideVisitURL: true - provider: google # google, duckduckgo, bing, baidu, brave or custom + provider: google # google, duckduckgo, bing, baidu, brave, kagi or custom ``` or for a custom search: diff --git a/docs/widgets/info/search.md b/docs/widgets/info/search.md index faae6c37..56bd249d 100644 --- a/docs/widgets/info/search.md +++ b/docs/widgets/info/search.md @@ -3,7 +3,7 @@ title: Search description: Search Information Widget Configuration --- -You can add a search bar to your top widget area that can search using Google, Duckduckgo, Bing, Baidu, Brave or any other custom provider that supports the basic `?q=` search query param. +You can add a search bar to your top widget area that can search using Google, Duckduckgo, Bing, Baidu, Brave, Kagi or any other custom provider that supports the basic `?q=` search query param. ```yaml - search: diff --git a/src/components/widgets/search/search.jsx b/src/components/widgets/search/search.jsx index c9391d35..7e12350a 100644 --- a/src/components/widgets/search/search.jsx +++ b/src/components/widgets/search/search.jsx @@ -1,7 +1,7 @@ import { useState, useEffect, Fragment } from "react"; import { useTranslation } from "next-i18next"; import { FiSearch } from "react-icons/fi"; -import { SiDuckduckgo, SiMicrosoftbing, SiGoogle, SiBaidu, SiBrave } from "react-icons/si"; +import { SiDuckduckgo, SiMicrosoftbing, SiGoogle, SiBaidu, SiBrave, SiKagi } from "react-icons/si"; import { Listbox, Transition, Combobox } from "@headlessui/react"; import classNames from "classnames"; @@ -39,6 +39,12 @@ export const searchProviders = { suggestionUrl: "https://search.brave.com/api/suggest?&rich=false&q=", icon: SiBrave, }, + kagi: { + name: "Kagi", + url: "https://kagi.com/search?q=", + suggestionUrl: "https://kagi.com/api/autosuggest?q=", + icon: SiKagi, + }, custom: { name: "Custom", url: false,