diff --git a/webview-ui/.eslintrc.json b/webview-ui/.eslintrc.json
deleted file mode 100644
index 0c69367..0000000
--- a/webview-ui/.eslintrc.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "root": true,
- "extends": [
- "eslint:recommended",
- "plugin:react/recommended",
- "plugin:@typescript-eslint/recommended",
- "plugin:react-hooks/recommended"
- ],
- "parser": "@typescript-eslint/parser",
- "plugins": ["react", "@typescript-eslint", "react-hooks"],
- "rules": {
- "react/react-in-jsx-scope": "off",
- "@typescript-eslint/explicit-module-boundary-types": "off",
- "@typescript-eslint/no-explicit-any": "warn",
- "react/display-name": "warn",
- "no-case-declarations": "warn",
- "react/no-unescaped-entities": "warn",
- "react/jsx-key": "warn",
- "no-extra-semi": "warn",
- "@typescript-eslint/no-var-requires": "warn",
- "@typescript-eslint/no-unused-vars": [
- "warn",
- {
- "argsIgnorePattern": "^_",
- "varsIgnorePattern": "^_",
- "caughtErrorsIgnorePattern": "^_"
- }
- ]
- },
- "settings": {
- "react": {
- "version": "detect"
- }
- },
- "env": {
- "browser": true,
- "es2021": true,
- "node": true
- }
-}
diff --git a/webview-ui/src/components/chat/ChatRow.tsx b/webview-ui/src/components/chat/ChatRow.tsx
index 1ec109f..ffa340e 100644
--- a/webview-ui/src/components/chat/ChatRow.tsx
+++ b/webview-ui/src/components/chat/ChatRow.tsx
@@ -89,7 +89,7 @@ export const ChatRowContent = ({
}
}, [isLast, message.say])
const [cost, apiReqCancelReason, apiReqStreamingFailedMessage] = useMemo(() => {
- if (message.text != null && message.say === "api_req_started") {
+ if (message.text && message.say === "api_req_started") {
const info: ClineApiReqInfo = JSON.parse(message.text)
return [info.cost, info.cancelReason, info.streamingFailedMessage]
}
@@ -183,26 +183,26 @@ export const ChatRowContent = ({
)
return [
- apiReqCancelReason != null ? (
+ apiReqCancelReason !== null ? (
apiReqCancelReason === "user_cancelled" ? (
getIconSpan("error", cancelledColor)
) : (
getIconSpan("error", errorColor)
)
- ) : cost != null ? (
+ ) : cost !== null ? (
getIconSpan("check", successColor)
) : apiRequestFailedMessage ? (
getIconSpan("error", errorColor)
) : (
{apiRequestFailedMessage || apiReqStreamingFailedMessage}
diff --git a/webview-ui/src/components/chat/ChatView.tsx b/webview-ui/src/components/chat/ChatView.tsx
index 0a32eef..563184a 100644
--- a/webview-ui/src/components/chat/ChatView.tsx
+++ b/webview-ui/src/components/chat/ChatView.tsx
@@ -275,7 +275,7 @@ const ChatView = ({ isHidden, showAnnouncement, hideAnnouncement, showHistoryVie
return true
} else {
const lastApiReqStarted = findLast(modifiedMessages, (message) => message.say === "api_req_started")
- if (lastApiReqStarted && lastApiReqStarted.text != null && lastApiReqStarted.say === "api_req_started") {
+ if (lastApiReqStarted && lastApiReqStarted.text && lastApiReqStarted.say === "api_req_started") {
const cost = JSON.parse(lastApiReqStarted.text).cost
if (cost === undefined) {
// api request has not finished yet
@@ -660,9 +660,9 @@ const ChatView = ({ isHidden, showAnnouncement, hideAnnouncement, showHistoryVie
if (message.say === "api_req_started") {
// get last api_req_started in currentGroup to check if it's cancelled. If it is then this api req is not part of the current browser session
const lastApiReqStarted = [...currentGroup].reverse().find((m) => m.say === "api_req_started")
- if (lastApiReqStarted?.text != null) {
+ if (lastApiReqStarted?.text) {
const info = JSON.parse(lastApiReqStarted.text)
- const isCancelled = info.cancelReason != null
+ const isCancelled = info.cancelReason !== null
if (isCancelled) {
endBrowserSession()
result.push(message)
diff --git a/webview-ui/src/components/welcome/WelcomeView.tsx b/webview-ui/src/components/welcome/WelcomeView.tsx
index 3e3bbd7..d72d856 100644
--- a/webview-ui/src/components/welcome/WelcomeView.tsx
+++ b/webview-ui/src/components/welcome/WelcomeView.tsx
@@ -10,7 +10,7 @@ const WelcomeView = () => {
const [apiErrorMessage, setApiErrorMessage] = useState