@checkstack/integration-webex-backend 0.0.22 → 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/package.json +4 -4
- package/src/provider.ts +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# @checkstack/integration-webex-backend
|
|
2
2
|
|
|
3
|
+
## 0.0.23
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- d1a2796: Enforce stricter code quality standards and eliminate AI slop anti-patterns.
|
|
8
|
+
|
|
9
|
+
**New utility**
|
|
10
|
+
|
|
11
|
+
- `extractErrorMessage(error, fallback?)` in `@checkstack/common` for consistent error extraction
|
|
12
|
+
|
|
13
|
+
**ESLint rules**
|
|
14
|
+
|
|
15
|
+
- `react-hooks/rules-of-hooks` and `exhaustive-deps` for hook correctness
|
|
16
|
+
- `no-console` in frontend packages — forces `toast` over silent `console.error`
|
|
17
|
+
- `no-restricted-syntax` banning `instanceof Error` — forces `extractErrorMessage`
|
|
18
|
+
- Custom `no-eslint-disable-any` rule preventing `@typescript-eslint/no-explicit-any` circumvention
|
|
19
|
+
|
|
20
|
+
**Refactoring**
|
|
21
|
+
|
|
22
|
+
- Replace 141 `instanceof Error` boilerplate patterns across the codebase
|
|
23
|
+
- Replace swallowed `console.error` with user-visible `toast.error()` feedback
|
|
24
|
+
- Remove 15 redundant `as` type casts in IntegrationsPage and ProviderConnectionsPage
|
|
25
|
+
- Consolidate 3 identical callback handlers into `handleDialogClose`
|
|
26
|
+
- Fix conditional React hook call in `FormField.tsx`
|
|
27
|
+
- Fix unstable useMemo deps in `Dashboard.tsx`
|
|
28
|
+
- Replace `useEffect`→`setState` with derived `useMemo` in `RegisterPage.tsx`
|
|
29
|
+
- Rewrite `keystore.test.ts` with typed `DrizzleMockChain` (eliminating 7 `any` suppressions)
|
|
30
|
+
- Delete obvious comments in `encryption.ts` and Teams `provider.ts`
|
|
31
|
+
|
|
32
|
+
- Updated dependencies [d1a2796]
|
|
33
|
+
- @checkstack/common@0.6.5
|
|
34
|
+
- @checkstack/backend-api@0.11.1
|
|
35
|
+
- @checkstack/integration-backend@0.1.18
|
|
36
|
+
|
|
3
37
|
## 0.0.22
|
|
4
38
|
|
|
5
39
|
### Patch Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@checkstack/integration-webex-backend",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.23",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "src/index.ts",
|
|
6
6
|
"checkstack": {
|
|
@@ -12,14 +12,14 @@
|
|
|
12
12
|
"lint:code": "eslint . --max-warnings 0"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@checkstack/backend-api": "0.
|
|
16
|
-
"@checkstack/integration-backend": "0.1.
|
|
15
|
+
"@checkstack/backend-api": "0.11.0",
|
|
16
|
+
"@checkstack/integration-backend": "0.1.17",
|
|
17
17
|
"@checkstack/common": "0.6.4",
|
|
18
18
|
"zod": "^4.2.1"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"@types/bun": "^1.0.0",
|
|
22
22
|
"typescript": "^5.0.0",
|
|
23
|
-
"@checkstack/tsconfig": "0.0.
|
|
23
|
+
"@checkstack/tsconfig": "0.0.5"
|
|
24
24
|
}
|
|
25
25
|
}
|
package/src/provider.ts
CHANGED
|
@@ -8,6 +8,7 @@ import type {
|
|
|
8
8
|
ConnectionOption,
|
|
9
9
|
TestConnectionResult,
|
|
10
10
|
} from "@checkstack/integration-backend";
|
|
11
|
+
import { extractErrorMessage } from "@checkstack/common";
|
|
11
12
|
|
|
12
13
|
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
13
14
|
// Resolver Names
|
|
@@ -96,7 +97,7 @@ async function fetchWebexRooms(
|
|
|
96
97
|
const data = (await response.json()) as WebexRoomsResponse;
|
|
97
98
|
return { success: true, rooms: data.items ?? [] };
|
|
98
99
|
} catch (error) {
|
|
99
|
-
const message = error
|
|
100
|
+
const message = extractErrorMessage(error, "Unknown error");
|
|
100
101
|
return { success: false, error: message };
|
|
101
102
|
}
|
|
102
103
|
}
|
|
@@ -136,7 +137,7 @@ async function sendWebexMessage(params: {
|
|
|
136
137
|
const data = (await response.json()) as WebexMessageResponse;
|
|
137
138
|
return { success: true, messageId: data.id };
|
|
138
139
|
} catch (error) {
|
|
139
|
-
const message = error
|
|
140
|
+
const message = extractErrorMessage(error, "Unknown error");
|
|
140
141
|
return { success: false, error: message };
|
|
141
142
|
}
|
|
142
143
|
}
|
|
@@ -161,7 +162,7 @@ async function testWebexConnection(
|
|
|
161
162
|
const data = (await response.json()) as WebexMeResponse;
|
|
162
163
|
return { success: true, botName: data.displayName };
|
|
163
164
|
} catch (error) {
|
|
164
|
-
const message = error
|
|
165
|
+
const message = extractErrorMessage(error, "Unknown error");
|
|
165
166
|
return { success: false, error: message };
|
|
166
167
|
}
|
|
167
168
|
}
|
|
@@ -298,7 +299,7 @@ export const webexProvider: IntegrationProvider<
|
|
|
298
299
|
};
|
|
299
300
|
} catch (error) {
|
|
300
301
|
const message =
|
|
301
|
-
error
|
|
302
|
+
extractErrorMessage(error, "Invalid configuration");
|
|
302
303
|
return {
|
|
303
304
|
success: false,
|
|
304
305
|
message: `Validation failed: ${message}`,
|