@bbearai/react 0.4.2 → 0.4.3
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/README.md +21 -1
- package/dist/index.js +8 -0
- package/dist/index.mjs +8 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -148,6 +148,8 @@ function MyComponent() {
|
|
|
148
148
|
shouldShowWidget, // Should the widget be visible?
|
|
149
149
|
testerInfo, // Current tester's info
|
|
150
150
|
assignments, // Test cases assigned to this tester
|
|
151
|
+
issueCounts, // { open, done, reopened } issue counts
|
|
152
|
+
refreshIssueCounts, // Refresh issue counts
|
|
151
153
|
isLoading, // Loading state
|
|
152
154
|
} = useBugBear();
|
|
153
155
|
|
|
@@ -163,6 +165,23 @@ function MyComponent() {
|
|
|
163
165
|
}
|
|
164
166
|
```
|
|
165
167
|
|
|
168
|
+
## Widget Screens
|
|
169
|
+
|
|
170
|
+
The widget includes screens for bug reporting, test execution, messaging, and issue tracking:
|
|
171
|
+
|
|
172
|
+
| Screen | Purpose |
|
|
173
|
+
|--------|---------|
|
|
174
|
+
| **Home** | Smart hero + action grid + issue tracking cards (Open, Done, Reopened) |
|
|
175
|
+
| **Test List** | Assignments with filter tabs (All, To Do, Done, Re Opened) |
|
|
176
|
+
| **Test Detail** | Step-by-step test execution |
|
|
177
|
+
| **Report** | Bug/feedback submission |
|
|
178
|
+
| **Issue List** | Issues filtered by category with severity indicators |
|
|
179
|
+
| **Issue Detail** | Full issue details with verification proof and original bug context |
|
|
180
|
+
| **Message List** | Thread list with unread badges |
|
|
181
|
+
| **Thread Detail** | Chat thread with reply |
|
|
182
|
+
| **Compose Message** | New message thread |
|
|
183
|
+
| **Profile** | Tester info and stats |
|
|
184
|
+
|
|
166
185
|
## How It Works
|
|
167
186
|
|
|
168
187
|
1. **User logs in** to your app
|
|
@@ -170,7 +189,8 @@ function MyComponent() {
|
|
|
170
189
|
3. **Context capture starts** — console logs, network requests, and navigation are recorded
|
|
171
190
|
4. **Widget appears** only for registered testers when QA mode is enabled
|
|
172
191
|
5. **Testers submit** bug reports with automatic debugging context attached
|
|
173
|
-
6. **
|
|
192
|
+
6. **Testers track issues** — Open, Done (with verification proof), and Reopened cards on home screen
|
|
193
|
+
7. **Reports appear** in your BugBear dashboard with full context for developers
|
|
174
194
|
|
|
175
195
|
## Example: Next.js App Router
|
|
176
196
|
|
package/dist/index.js
CHANGED
|
@@ -243,6 +243,14 @@ function BugBearProvider({ config, children, enabled = true }) {
|
|
|
243
243
|
initializeBugBear(newClient);
|
|
244
244
|
}
|
|
245
245
|
}, [enabled, config, initializeBugBear]);
|
|
246
|
+
(0, import_react.useEffect)(() => {
|
|
247
|
+
if (!client || !isTester || !isQAEnabled) return;
|
|
248
|
+
const interval = setInterval(() => {
|
|
249
|
+
refreshThreads();
|
|
250
|
+
refreshIssueCounts();
|
|
251
|
+
}, 3e4);
|
|
252
|
+
return () => clearInterval(interval);
|
|
253
|
+
}, [client, isTester, isQAEnabled, refreshThreads, refreshIssueCounts]);
|
|
246
254
|
const currentAssignment = assignments.find(
|
|
247
255
|
(a) => a.status === "in_progress"
|
|
248
256
|
) || assignments.find(
|
package/dist/index.mjs
CHANGED
|
@@ -214,6 +214,14 @@ function BugBearProvider({ config, children, enabled = true }) {
|
|
|
214
214
|
initializeBugBear(newClient);
|
|
215
215
|
}
|
|
216
216
|
}, [enabled, config, initializeBugBear]);
|
|
217
|
+
useEffect(() => {
|
|
218
|
+
if (!client || !isTester || !isQAEnabled) return;
|
|
219
|
+
const interval = setInterval(() => {
|
|
220
|
+
refreshThreads();
|
|
221
|
+
refreshIssueCounts();
|
|
222
|
+
}, 3e4);
|
|
223
|
+
return () => clearInterval(interval);
|
|
224
|
+
}, [client, isTester, isQAEnabled, refreshThreads, refreshIssueCounts]);
|
|
217
225
|
const currentAssignment = assignments.find(
|
|
218
226
|
(a) => a.status === "in_progress"
|
|
219
227
|
) || assignments.find(
|