@bbearai/react 0.4.3 → 0.4.5
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/dist/index.js +313 -235
- package/dist/index.mjs +304 -236
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -2081,6 +2081,11 @@ function useImageAttachments(uploadFn, maxImages, bucket = "screenshots") {
|
|
|
2081
2081
|
setImages((prev) => prev.map(
|
|
2082
2082
|
(img) => img.id === id ? { ...img, remoteUrl: url, status: url ? "done" : "error" } : img
|
|
2083
2083
|
));
|
|
2084
|
+
}).catch((err) => {
|
|
2085
|
+
console.error("BugBear: Image upload failed", err);
|
|
2086
|
+
setImages((prev) => prev.map(
|
|
2087
|
+
(img) => img.id === id ? { ...img, status: "error" } : img
|
|
2088
|
+
));
|
|
2084
2089
|
});
|
|
2085
2090
|
}
|
|
2086
2091
|
}, [images.length, maxImages, uploadFn, bucket]);
|
|
@@ -2544,18 +2549,72 @@ var styles = {
|
|
|
2544
2549
|
};
|
|
2545
2550
|
|
|
2546
2551
|
// src/widget/screens/ReportScreen.tsx
|
|
2547
|
-
import { useState as useState6, useRef as useRef2 } from "react";
|
|
2548
|
-
|
|
2552
|
+
import React6, { useState as useState6, useRef as useRef2 } from "react";
|
|
2553
|
+
|
|
2554
|
+
// src/widget/CategoryDropdown.tsx
|
|
2555
|
+
import { jsx as jsx8, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
2556
|
+
var categoryOptions = [
|
|
2557
|
+
{ value: "ui_ux", label: "UI/UX", icon: "\u{1F3A8}" },
|
|
2558
|
+
{ value: "functional", label: "Functional", icon: "\u2699\uFE0F" },
|
|
2559
|
+
{ value: "crash", label: "Crash", icon: "\u{1F4A5}" },
|
|
2560
|
+
{ value: "security", label: "Security", icon: "\u{1F510}" },
|
|
2561
|
+
{ value: "other", label: "Other", icon: "\u{1F4DD}" }
|
|
2562
|
+
];
|
|
2563
|
+
function CategoryDropdown({ value, onChange, optional = true, disabled = false }) {
|
|
2564
|
+
return /* @__PURE__ */ jsxs7(
|
|
2565
|
+
"select",
|
|
2566
|
+
{
|
|
2567
|
+
value: value || "",
|
|
2568
|
+
onChange: (e) => onChange(e.target.value ? e.target.value : null),
|
|
2569
|
+
disabled,
|
|
2570
|
+
style: {
|
|
2571
|
+
width: "100%",
|
|
2572
|
+
backgroundColor: disabled ? colors.bg : colors.card,
|
|
2573
|
+
border: `1px solid ${colors.border}`,
|
|
2574
|
+
borderRadius: 8,
|
|
2575
|
+
padding: "10px 12px",
|
|
2576
|
+
fontSize: 14,
|
|
2577
|
+
color: colors.textPrimary,
|
|
2578
|
+
cursor: disabled ? "not-allowed" : "pointer",
|
|
2579
|
+
opacity: disabled ? 0.5 : 1,
|
|
2580
|
+
appearance: "none",
|
|
2581
|
+
backgroundImage: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2371717a' d='M3 5l3 3 3-3'/%3E%3C/svg%3E")`,
|
|
2582
|
+
backgroundRepeat: "no-repeat",
|
|
2583
|
+
backgroundPosition: "right 12px center",
|
|
2584
|
+
paddingRight: 32
|
|
2585
|
+
},
|
|
2586
|
+
children: [
|
|
2587
|
+
/* @__PURE__ */ jsx8("option", { value: "", children: optional ? "Select category (optional)" : "Select category" }),
|
|
2588
|
+
categoryOptions.map(({ value: value2, label, icon }) => /* @__PURE__ */ jsxs7("option", { value: value2, children: [
|
|
2589
|
+
icon,
|
|
2590
|
+
" ",
|
|
2591
|
+
label
|
|
2592
|
+
] }, value2))
|
|
2593
|
+
]
|
|
2594
|
+
}
|
|
2595
|
+
);
|
|
2596
|
+
}
|
|
2597
|
+
|
|
2598
|
+
// src/widget/screens/ReportScreen.tsx
|
|
2599
|
+
import { Fragment as Fragment3, jsx as jsx9, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
2549
2600
|
function ReportScreen({ nav, prefill }) {
|
|
2550
2601
|
const { client, refreshAssignments, uploadImage } = useBugBear();
|
|
2551
2602
|
const images = useImageAttachments(uploadImage, 5, "screenshots");
|
|
2552
2603
|
const [reportType, setReportType] = useState6(prefill?.type || "bug");
|
|
2553
2604
|
const [severity, setSeverity] = useState6("medium");
|
|
2605
|
+
const [category, setCategory] = useState6(null);
|
|
2554
2606
|
const [description, setDescription] = useState6("");
|
|
2555
2607
|
const [affectedRoute, setAffectedRoute] = useState6("");
|
|
2556
2608
|
const [submitting, setSubmitting] = useState6(false);
|
|
2557
2609
|
const [error, setError] = useState6(null);
|
|
2558
2610
|
const submittingRef = useRef2(false);
|
|
2611
|
+
React6.useEffect(() => {
|
|
2612
|
+
if (reportType === "feedback" || reportType === "suggestion") {
|
|
2613
|
+
setCategory("other");
|
|
2614
|
+
} else {
|
|
2615
|
+
setCategory(null);
|
|
2616
|
+
}
|
|
2617
|
+
}, [reportType]);
|
|
2559
2618
|
const observedRoute = useRef2(
|
|
2560
2619
|
typeof window !== "undefined" ? window.location.pathname : "unknown"
|
|
2561
2620
|
);
|
|
@@ -2578,6 +2637,7 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2578
2637
|
type: reportType,
|
|
2579
2638
|
description: description.trim(),
|
|
2580
2639
|
severity: isBugType ? severity : void 0,
|
|
2640
|
+
category: category || void 0,
|
|
2581
2641
|
screenshots: screenshotUrls.length > 0 ? screenshotUrls : void 0,
|
|
2582
2642
|
assignmentId: prefill?.assignmentId,
|
|
2583
2643
|
testCaseId: prefill?.testCaseId,
|
|
@@ -2611,17 +2671,17 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2611
2671
|
{ sev: "medium", color: "#eab308" },
|
|
2612
2672
|
{ sev: "low", color: "#6b7280" }
|
|
2613
2673
|
];
|
|
2614
|
-
return /* @__PURE__ */
|
|
2615
|
-
/* @__PURE__ */
|
|
2616
|
-
/* @__PURE__ */
|
|
2617
|
-
/* @__PURE__ */
|
|
2618
|
-
/* @__PURE__ */
|
|
2619
|
-
/* @__PURE__ */
|
|
2674
|
+
return /* @__PURE__ */ jsx9("div", { children: isRetestFailure ? /* @__PURE__ */ jsxs8(Fragment3, { children: [
|
|
2675
|
+
/* @__PURE__ */ jsxs8("div", { style: styles2.retestBanner, children: [
|
|
2676
|
+
/* @__PURE__ */ jsx9("span", { style: { fontSize: 16 }, children: "\u{1F504}" }),
|
|
2677
|
+
/* @__PURE__ */ jsxs8("div", { children: [
|
|
2678
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.retestTitle, children: "Bug Still Present" }),
|
|
2679
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.retestSubtitle, children: "The fix did not resolve this issue" })
|
|
2620
2680
|
] })
|
|
2621
2681
|
] }),
|
|
2622
|
-
/* @__PURE__ */
|
|
2623
|
-
/* @__PURE__ */
|
|
2624
|
-
/* @__PURE__ */
|
|
2682
|
+
/* @__PURE__ */ jsxs8("div", { style: styles2.section, children: [
|
|
2683
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "Severity" }),
|
|
2684
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.severityRow, children: severityOptions.map(({ sev, color }) => /* @__PURE__ */ jsx9(
|
|
2625
2685
|
"button",
|
|
2626
2686
|
{
|
|
2627
2687
|
onClick: () => setSeverity(sev),
|
|
@@ -2629,14 +2689,18 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2629
2689
|
...styles2.sevButton,
|
|
2630
2690
|
...severity === sev ? { backgroundColor: `${color}30`, borderColor: color } : {}
|
|
2631
2691
|
},
|
|
2632
|
-
children: /* @__PURE__ */
|
|
2692
|
+
children: /* @__PURE__ */ jsx9("span", { style: { ...styles2.sevText, ...severity === sev ? { color } : {} }, children: sev })
|
|
2633
2693
|
},
|
|
2634
2694
|
sev
|
|
2635
2695
|
)) })
|
|
2636
2696
|
] }),
|
|
2637
|
-
/* @__PURE__ */
|
|
2638
|
-
/* @__PURE__ */
|
|
2639
|
-
/* @__PURE__ */
|
|
2697
|
+
/* @__PURE__ */ jsxs8("div", { style: styles2.section, children: [
|
|
2698
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "Category (optional)" }),
|
|
2699
|
+
/* @__PURE__ */ jsx9(CategoryDropdown, { value: category, onChange: setCategory, optional: true })
|
|
2700
|
+
] }),
|
|
2701
|
+
/* @__PURE__ */ jsxs8("div", { style: styles2.section, children: [
|
|
2702
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "What went wrong?" }),
|
|
2703
|
+
/* @__PURE__ */ jsx9(
|
|
2640
2704
|
"textarea",
|
|
2641
2705
|
{
|
|
2642
2706
|
style: styles2.descInput,
|
|
@@ -2647,7 +2711,7 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2647
2711
|
}
|
|
2648
2712
|
)
|
|
2649
2713
|
] }),
|
|
2650
|
-
/* @__PURE__ */
|
|
2714
|
+
/* @__PURE__ */ jsx9(
|
|
2651
2715
|
ImagePickerButtons,
|
|
2652
2716
|
{
|
|
2653
2717
|
images: images.images,
|
|
@@ -2658,8 +2722,8 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2658
2722
|
label: "Attachments (optional)"
|
|
2659
2723
|
}
|
|
2660
2724
|
),
|
|
2661
|
-
error && /* @__PURE__ */
|
|
2662
|
-
/* @__PURE__ */
|
|
2725
|
+
error && /* @__PURE__ */ jsx9("div", { style: styles2.errorBanner, children: error }),
|
|
2726
|
+
/* @__PURE__ */ jsx9(
|
|
2663
2727
|
"button",
|
|
2664
2728
|
{
|
|
2665
2729
|
style: {
|
|
@@ -2672,9 +2736,9 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2672
2736
|
children: images.isUploading ? "Uploading images..." : submitting ? "Submitting..." : error ? "Retry" : "Submit Failed Retest"
|
|
2673
2737
|
}
|
|
2674
2738
|
)
|
|
2675
|
-
] }) : /* @__PURE__ */
|
|
2676
|
-
/* @__PURE__ */
|
|
2677
|
-
/* @__PURE__ */
|
|
2739
|
+
] }) : /* @__PURE__ */ jsxs8(Fragment3, { children: [
|
|
2740
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "What are you reporting?" }),
|
|
2741
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.typeRow, children: typeOptions.map(({ type, label, icon }) => /* @__PURE__ */ jsxs8(
|
|
2678
2742
|
"button",
|
|
2679
2743
|
{
|
|
2680
2744
|
onClick: () => setReportType(type),
|
|
@@ -2683,8 +2747,8 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2683
2747
|
...reportType === type ? styles2.typeCardActive : {}
|
|
2684
2748
|
},
|
|
2685
2749
|
children: [
|
|
2686
|
-
/* @__PURE__ */
|
|
2687
|
-
/* @__PURE__ */
|
|
2750
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.typeIcon, children: icon }),
|
|
2751
|
+
/* @__PURE__ */ jsx9(
|
|
2688
2752
|
"div",
|
|
2689
2753
|
{
|
|
2690
2754
|
style: {
|
|
@@ -2698,9 +2762,9 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2698
2762
|
},
|
|
2699
2763
|
type
|
|
2700
2764
|
)) }),
|
|
2701
|
-
isBugType && /* @__PURE__ */
|
|
2702
|
-
/* @__PURE__ */
|
|
2703
|
-
/* @__PURE__ */
|
|
2765
|
+
isBugType && /* @__PURE__ */ jsxs8("div", { style: styles2.section, children: [
|
|
2766
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "Severity" }),
|
|
2767
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.severityRow, children: severityOptions.map(({ sev, color }) => /* @__PURE__ */ jsx9(
|
|
2704
2768
|
"button",
|
|
2705
2769
|
{
|
|
2706
2770
|
onClick: () => setSeverity(sev),
|
|
@@ -2711,7 +2775,7 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2711
2775
|
borderColor: color
|
|
2712
2776
|
} : {}
|
|
2713
2777
|
},
|
|
2714
|
-
children: /* @__PURE__ */
|
|
2778
|
+
children: /* @__PURE__ */ jsx9(
|
|
2715
2779
|
"span",
|
|
2716
2780
|
{
|
|
2717
2781
|
style: {
|
|
@@ -2725,9 +2789,13 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2725
2789
|
sev
|
|
2726
2790
|
)) })
|
|
2727
2791
|
] }),
|
|
2728
|
-
/* @__PURE__ */
|
|
2729
|
-
/* @__PURE__ */
|
|
2730
|
-
/* @__PURE__ */
|
|
2792
|
+
isBugType && /* @__PURE__ */ jsxs8("div", { style: styles2.section, children: [
|
|
2793
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "Category (optional)" }),
|
|
2794
|
+
/* @__PURE__ */ jsx9(CategoryDropdown, { value: category, onChange: setCategory, optional: true })
|
|
2795
|
+
] }),
|
|
2796
|
+
/* @__PURE__ */ jsxs8("div", { style: styles2.section, children: [
|
|
2797
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "What happened?" }),
|
|
2798
|
+
/* @__PURE__ */ jsx9(
|
|
2731
2799
|
"textarea",
|
|
2732
2800
|
{
|
|
2733
2801
|
style: styles2.descInput,
|
|
@@ -2738,9 +2806,9 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2738
2806
|
}
|
|
2739
2807
|
)
|
|
2740
2808
|
] }),
|
|
2741
|
-
isBugType && /* @__PURE__ */
|
|
2742
|
-
/* @__PURE__ */
|
|
2743
|
-
/* @__PURE__ */
|
|
2809
|
+
isBugType && /* @__PURE__ */ jsxs8("div", { style: styles2.section, children: [
|
|
2810
|
+
/* @__PURE__ */ jsx9("div", { style: styles2.label, children: "Where did it happen?" }),
|
|
2811
|
+
/* @__PURE__ */ jsx9(
|
|
2744
2812
|
"input",
|
|
2745
2813
|
{
|
|
2746
2814
|
style: styles2.routeInput,
|
|
@@ -2749,13 +2817,13 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2749
2817
|
placeholder: observedRoute.current
|
|
2750
2818
|
}
|
|
2751
2819
|
),
|
|
2752
|
-
/* @__PURE__ */
|
|
2820
|
+
/* @__PURE__ */ jsxs8("div", { style: styles2.routeHint, children: [
|
|
2753
2821
|
"Leave blank to use current page (",
|
|
2754
2822
|
observedRoute.current,
|
|
2755
2823
|
")"
|
|
2756
2824
|
] })
|
|
2757
2825
|
] }),
|
|
2758
|
-
/* @__PURE__ */
|
|
2826
|
+
/* @__PURE__ */ jsx9(
|
|
2759
2827
|
ImagePickerButtons,
|
|
2760
2828
|
{
|
|
2761
2829
|
images: images.images,
|
|
@@ -2766,8 +2834,8 @@ function ReportScreen({ nav, prefill }) {
|
|
|
2766
2834
|
label: "Screenshots (optional)"
|
|
2767
2835
|
}
|
|
2768
2836
|
),
|
|
2769
|
-
error && /* @__PURE__ */
|
|
2770
|
-
/* @__PURE__ */
|
|
2837
|
+
error && /* @__PURE__ */ jsx9("div", { style: styles2.errorBanner, children: error }),
|
|
2838
|
+
/* @__PURE__ */ jsx9(
|
|
2771
2839
|
"button",
|
|
2772
2840
|
{
|
|
2773
2841
|
style: {
|
|
@@ -2932,16 +3000,16 @@ var styles2 = {
|
|
|
2932
3000
|
|
|
2933
3001
|
// src/widget/screens/ReportSuccessScreen.tsx
|
|
2934
3002
|
import { useEffect as useEffect4 } from "react";
|
|
2935
|
-
import { jsx as
|
|
3003
|
+
import { jsx as jsx10, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
2936
3004
|
function ReportSuccessScreen({ nav }) {
|
|
2937
3005
|
useEffect4(() => {
|
|
2938
3006
|
const timer = setTimeout(() => nav.reset(), 2e3);
|
|
2939
3007
|
return () => clearTimeout(timer);
|
|
2940
3008
|
}, [nav]);
|
|
2941
|
-
return /* @__PURE__ */
|
|
2942
|
-
/* @__PURE__ */
|
|
2943
|
-
/* @__PURE__ */
|
|
2944
|
-
/* @__PURE__ */
|
|
3009
|
+
return /* @__PURE__ */ jsxs9("div", { style: styles3.container, children: [
|
|
3010
|
+
/* @__PURE__ */ jsx10("div", { style: styles3.emoji, children: "\u{1F389}" }),
|
|
3011
|
+
/* @__PURE__ */ jsx10("div", { style: styles3.title, children: "Report submitted!" }),
|
|
3012
|
+
/* @__PURE__ */ jsx10("div", { style: styles3.subtitle, children: "Thank you for your feedback" })
|
|
2945
3013
|
] });
|
|
2946
3014
|
}
|
|
2947
3015
|
var styles3 = {
|
|
@@ -2970,11 +3038,11 @@ var styles3 = {
|
|
|
2970
3038
|
};
|
|
2971
3039
|
|
|
2972
3040
|
// src/widget/screens/MessageListScreen.tsx
|
|
2973
|
-
import { jsx as
|
|
3041
|
+
import { jsx as jsx11, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
2974
3042
|
function MessageListScreen({ nav }) {
|
|
2975
3043
|
const { threads, unreadCount, refreshThreads } = useBugBear();
|
|
2976
|
-
return /* @__PURE__ */
|
|
2977
|
-
/* @__PURE__ */
|
|
3044
|
+
return /* @__PURE__ */ jsxs10("div", { children: [
|
|
3045
|
+
/* @__PURE__ */ jsx11(
|
|
2978
3046
|
"button",
|
|
2979
3047
|
{
|
|
2980
3048
|
style: {
|
|
@@ -2993,7 +3061,7 @@ function MessageListScreen({ nav }) {
|
|
|
2993
3061
|
children: "\u2709\uFE0F New Message"
|
|
2994
3062
|
}
|
|
2995
3063
|
),
|
|
2996
|
-
threads.length === 0 ? /* @__PURE__ */
|
|
3064
|
+
threads.length === 0 ? /* @__PURE__ */ jsxs10(
|
|
2997
3065
|
"div",
|
|
2998
3066
|
{
|
|
2999
3067
|
style: {
|
|
@@ -3004,8 +3072,8 @@ function MessageListScreen({ nav }) {
|
|
|
3004
3072
|
paddingBottom: 40
|
|
3005
3073
|
},
|
|
3006
3074
|
children: [
|
|
3007
|
-
/* @__PURE__ */
|
|
3008
|
-
/* @__PURE__ */
|
|
3075
|
+
/* @__PURE__ */ jsx11("span", { style: { fontSize: 36, marginBottom: 12 }, children: "\u{1F4AC}" }),
|
|
3076
|
+
/* @__PURE__ */ jsx11(
|
|
3009
3077
|
"span",
|
|
3010
3078
|
{
|
|
3011
3079
|
style: {
|
|
@@ -3017,7 +3085,7 @@ function MessageListScreen({ nav }) {
|
|
|
3017
3085
|
children: "No messages yet"
|
|
3018
3086
|
}
|
|
3019
3087
|
),
|
|
3020
|
-
/* @__PURE__ */
|
|
3088
|
+
/* @__PURE__ */ jsx11(
|
|
3021
3089
|
"span",
|
|
3022
3090
|
{
|
|
3023
3091
|
style: {
|
|
@@ -3030,7 +3098,7 @@ function MessageListScreen({ nav }) {
|
|
|
3030
3098
|
)
|
|
3031
3099
|
]
|
|
3032
3100
|
}
|
|
3033
|
-
) : /* @__PURE__ */
|
|
3101
|
+
) : /* @__PURE__ */ jsx11("div", { children: threads.map((thread) => /* @__PURE__ */ jsxs10(
|
|
3034
3102
|
"button",
|
|
3035
3103
|
{
|
|
3036
3104
|
style: {
|
|
@@ -3048,8 +3116,8 @@ function MessageListScreen({ nav }) {
|
|
|
3048
3116
|
},
|
|
3049
3117
|
onClick: () => nav.push({ name: "THREAD_DETAIL", thread }),
|
|
3050
3118
|
children: [
|
|
3051
|
-
/* @__PURE__ */
|
|
3052
|
-
/* @__PURE__ */
|
|
3119
|
+
/* @__PURE__ */ jsxs10("div", { style: { display: "flex", flex: 1, minWidth: 0 }, children: [
|
|
3120
|
+
/* @__PURE__ */ jsx11(
|
|
3053
3121
|
"span",
|
|
3054
3122
|
{
|
|
3055
3123
|
style: {
|
|
@@ -3061,7 +3129,7 @@ function MessageListScreen({ nav }) {
|
|
|
3061
3129
|
children: getThreadTypeIcon(thread.threadType)
|
|
3062
3130
|
}
|
|
3063
3131
|
),
|
|
3064
|
-
/* @__PURE__ */
|
|
3132
|
+
/* @__PURE__ */ jsxs10(
|
|
3065
3133
|
"div",
|
|
3066
3134
|
{
|
|
3067
3135
|
style: {
|
|
@@ -3069,7 +3137,7 @@ function MessageListScreen({ nav }) {
|
|
|
3069
3137
|
minWidth: 0
|
|
3070
3138
|
},
|
|
3071
3139
|
children: [
|
|
3072
|
-
/* @__PURE__ */
|
|
3140
|
+
/* @__PURE__ */ jsxs10(
|
|
3073
3141
|
"div",
|
|
3074
3142
|
{
|
|
3075
3143
|
style: {
|
|
@@ -3078,8 +3146,8 @@ function MessageListScreen({ nav }) {
|
|
|
3078
3146
|
gap: 4
|
|
3079
3147
|
},
|
|
3080
3148
|
children: [
|
|
3081
|
-
thread.isPinned && /* @__PURE__ */
|
|
3082
|
-
/* @__PURE__ */
|
|
3149
|
+
thread.isPinned && /* @__PURE__ */ jsx11("span", { style: { fontSize: 12, flexShrink: 0 }, children: "\u{1F4CC}" }),
|
|
3150
|
+
/* @__PURE__ */ jsx11(
|
|
3083
3151
|
"span",
|
|
3084
3152
|
{
|
|
3085
3153
|
style: {
|
|
@@ -3096,7 +3164,7 @@ function MessageListScreen({ nav }) {
|
|
|
3096
3164
|
]
|
|
3097
3165
|
}
|
|
3098
3166
|
),
|
|
3099
|
-
thread.lastMessage && /* @__PURE__ */
|
|
3167
|
+
thread.lastMessage && /* @__PURE__ */ jsxs10(
|
|
3100
3168
|
"span",
|
|
3101
3169
|
{
|
|
3102
3170
|
style: {
|
|
@@ -3120,7 +3188,7 @@ function MessageListScreen({ nav }) {
|
|
|
3120
3188
|
}
|
|
3121
3189
|
)
|
|
3122
3190
|
] }),
|
|
3123
|
-
/* @__PURE__ */
|
|
3191
|
+
/* @__PURE__ */ jsxs10(
|
|
3124
3192
|
"div",
|
|
3125
3193
|
{
|
|
3126
3194
|
style: {
|
|
@@ -3132,8 +3200,8 @@ function MessageListScreen({ nav }) {
|
|
|
3132
3200
|
flexShrink: 0
|
|
3133
3201
|
},
|
|
3134
3202
|
children: [
|
|
3135
|
-
/* @__PURE__ */
|
|
3136
|
-
thread.unreadCount > 0 && /* @__PURE__ */
|
|
3203
|
+
/* @__PURE__ */ jsx11("span", { style: { fontSize: 11, color: colors.textDim }, children: formatRelativeTime(thread.lastMessageAt) }),
|
|
3204
|
+
thread.unreadCount > 0 && /* @__PURE__ */ jsx11(
|
|
3137
3205
|
"span",
|
|
3138
3206
|
{
|
|
3139
3207
|
style: {
|
|
@@ -3160,7 +3228,7 @@ function MessageListScreen({ nav }) {
|
|
|
3160
3228
|
},
|
|
3161
3229
|
thread.id
|
|
3162
3230
|
)) }),
|
|
3163
|
-
/* @__PURE__ */
|
|
3231
|
+
/* @__PURE__ */ jsxs10(
|
|
3164
3232
|
"div",
|
|
3165
3233
|
{
|
|
3166
3234
|
style: {
|
|
@@ -3172,7 +3240,7 @@ function MessageListScreen({ nav }) {
|
|
|
3172
3240
|
paddingRight: 4
|
|
3173
3241
|
},
|
|
3174
3242
|
children: [
|
|
3175
|
-
/* @__PURE__ */
|
|
3243
|
+
/* @__PURE__ */ jsxs10("span", { style: { fontSize: 12, color: colors.textMuted }, children: [
|
|
3176
3244
|
threads.length,
|
|
3177
3245
|
" thread",
|
|
3178
3246
|
threads.length !== 1 ? "s" : "",
|
|
@@ -3181,7 +3249,7 @@ function MessageListScreen({ nav }) {
|
|
|
3181
3249
|
unreadCount,
|
|
3182
3250
|
" unread"
|
|
3183
3251
|
] }),
|
|
3184
|
-
/* @__PURE__ */
|
|
3252
|
+
/* @__PURE__ */ jsx11(
|
|
3185
3253
|
"button",
|
|
3186
3254
|
{
|
|
3187
3255
|
style: {
|
|
@@ -3204,7 +3272,7 @@ function MessageListScreen({ nav }) {
|
|
|
3204
3272
|
|
|
3205
3273
|
// src/widget/screens/ThreadDetailScreen.tsx
|
|
3206
3274
|
import { useState as useState7, useEffect as useEffect5 } from "react";
|
|
3207
|
-
import { jsx as
|
|
3275
|
+
import { jsx as jsx12, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
3208
3276
|
var inputStyle = {
|
|
3209
3277
|
backgroundColor: "#27272a",
|
|
3210
3278
|
border: "1px solid #3f3f46",
|
|
@@ -3263,8 +3331,8 @@ function ThreadDetailScreen({
|
|
|
3263
3331
|
handleSend();
|
|
3264
3332
|
}
|
|
3265
3333
|
};
|
|
3266
|
-
return /* @__PURE__ */
|
|
3267
|
-
/* @__PURE__ */
|
|
3334
|
+
return /* @__PURE__ */ jsxs11("div", { style: { display: "flex", flexDirection: "column", flex: 1 }, children: [
|
|
3335
|
+
/* @__PURE__ */ jsxs11(
|
|
3268
3336
|
"div",
|
|
3269
3337
|
{
|
|
3270
3338
|
style: {
|
|
@@ -3276,8 +3344,8 @@ function ThreadDetailScreen({
|
|
|
3276
3344
|
borderBottom: `1px solid ${colors.border}`
|
|
3277
3345
|
},
|
|
3278
3346
|
children: [
|
|
3279
|
-
/* @__PURE__ */
|
|
3280
|
-
/* @__PURE__ */
|
|
3347
|
+
/* @__PURE__ */ jsx12("span", { style: { fontSize: 20 }, children: getThreadTypeIcon(thread.threadType) }),
|
|
3348
|
+
/* @__PURE__ */ jsx12(
|
|
3281
3349
|
"span",
|
|
3282
3350
|
{
|
|
3283
3351
|
style: {
|
|
@@ -3297,7 +3365,7 @@ function ThreadDetailScreen({
|
|
|
3297
3365
|
]
|
|
3298
3366
|
}
|
|
3299
3367
|
),
|
|
3300
|
-
loading ? /* @__PURE__ */
|
|
3368
|
+
loading ? /* @__PURE__ */ jsx12(
|
|
3301
3369
|
"div",
|
|
3302
3370
|
{
|
|
3303
3371
|
style: {
|
|
@@ -3305,11 +3373,11 @@ function ThreadDetailScreen({
|
|
|
3305
3373
|
paddingBottom: 40,
|
|
3306
3374
|
textAlign: "center"
|
|
3307
3375
|
},
|
|
3308
|
-
children: /* @__PURE__ */
|
|
3376
|
+
children: /* @__PURE__ */ jsx12("span", { style: { fontSize: 14, color: colors.textMuted }, children: "Loading messages..." })
|
|
3309
3377
|
}
|
|
3310
|
-
) : /* @__PURE__ */
|
|
3378
|
+
) : /* @__PURE__ */ jsx12("div", { style: { paddingBottom: 8, marginBottom: 8 }, children: messages.map((msg) => {
|
|
3311
3379
|
const isTester = msg.senderType === "tester";
|
|
3312
|
-
return /* @__PURE__ */
|
|
3380
|
+
return /* @__PURE__ */ jsxs11(
|
|
3313
3381
|
"div",
|
|
3314
3382
|
{
|
|
3315
3383
|
style: {
|
|
@@ -3325,7 +3393,7 @@ function ThreadDetailScreen({
|
|
|
3325
3393
|
borderBottomRightRadius: isTester ? 4 : 16
|
|
3326
3394
|
},
|
|
3327
3395
|
children: [
|
|
3328
|
-
/* @__PURE__ */
|
|
3396
|
+
/* @__PURE__ */ jsx12(
|
|
3329
3397
|
"span",
|
|
3330
3398
|
{
|
|
3331
3399
|
style: {
|
|
@@ -3338,7 +3406,7 @@ function ThreadDetailScreen({
|
|
|
3338
3406
|
children: isTester ? "You" : msg.senderName
|
|
3339
3407
|
}
|
|
3340
3408
|
),
|
|
3341
|
-
/* @__PURE__ */
|
|
3409
|
+
/* @__PURE__ */ jsx12(
|
|
3342
3410
|
"span",
|
|
3343
3411
|
{
|
|
3344
3412
|
style: {
|
|
@@ -3352,7 +3420,7 @@ function ThreadDetailScreen({
|
|
|
3352
3420
|
children: msg.content
|
|
3353
3421
|
}
|
|
3354
3422
|
),
|
|
3355
|
-
msg.attachments && msg.attachments.length > 0 && /* @__PURE__ */
|
|
3423
|
+
msg.attachments && msg.attachments.length > 0 && /* @__PURE__ */ jsx12("div", { style: { marginTop: 8, display: "flex", flexDirection: "column", gap: 6 }, children: msg.attachments.filter((a) => a.type === "image" && typeof a.url === "string" && /^https?:\/\//i.test(a.url)).map((att, idx) => /* @__PURE__ */ jsx12(
|
|
3356
3424
|
"img",
|
|
3357
3425
|
{
|
|
3358
3426
|
src: att.url,
|
|
@@ -3361,7 +3429,7 @@ function ThreadDetailScreen({
|
|
|
3361
3429
|
},
|
|
3362
3430
|
idx
|
|
3363
3431
|
)) }),
|
|
3364
|
-
/* @__PURE__ */
|
|
3432
|
+
/* @__PURE__ */ jsx12(
|
|
3365
3433
|
"span",
|
|
3366
3434
|
{
|
|
3367
3435
|
style: {
|
|
@@ -3379,7 +3447,7 @@ function ThreadDetailScreen({
|
|
|
3379
3447
|
msg.id
|
|
3380
3448
|
);
|
|
3381
3449
|
}) }),
|
|
3382
|
-
sendError && /* @__PURE__ */
|
|
3450
|
+
sendError && /* @__PURE__ */ jsx12(
|
|
3383
3451
|
"div",
|
|
3384
3452
|
{
|
|
3385
3453
|
style: {
|
|
@@ -3391,7 +3459,7 @@ function ThreadDetailScreen({
|
|
|
3391
3459
|
borderRadius: 8,
|
|
3392
3460
|
marginBottom: 8
|
|
3393
3461
|
},
|
|
3394
|
-
children: /* @__PURE__ */
|
|
3462
|
+
children: /* @__PURE__ */ jsx12(
|
|
3395
3463
|
"span",
|
|
3396
3464
|
{
|
|
3397
3465
|
style: {
|
|
@@ -3405,8 +3473,8 @@ function ThreadDetailScreen({
|
|
|
3405
3473
|
)
|
|
3406
3474
|
}
|
|
3407
3475
|
),
|
|
3408
|
-
replyImages.images.length > 0 && /* @__PURE__ */
|
|
3409
|
-
/* @__PURE__ */
|
|
3476
|
+
replyImages.images.length > 0 && /* @__PURE__ */ jsx12("div", { style: { paddingTop: 8 }, children: /* @__PURE__ */ jsx12(ImagePreviewStrip, { images: replyImages.images, onRemove: replyImages.removeImage }) }),
|
|
3477
|
+
/* @__PURE__ */ jsxs11(
|
|
3410
3478
|
"div",
|
|
3411
3479
|
{
|
|
3412
3480
|
style: {
|
|
@@ -3417,7 +3485,7 @@ function ThreadDetailScreen({
|
|
|
3417
3485
|
gap: 8
|
|
3418
3486
|
},
|
|
3419
3487
|
children: [
|
|
3420
|
-
/* @__PURE__ */
|
|
3488
|
+
/* @__PURE__ */ jsx12(
|
|
3421
3489
|
"button",
|
|
3422
3490
|
{
|
|
3423
3491
|
type: "button",
|
|
@@ -3436,7 +3504,7 @@ function ThreadDetailScreen({
|
|
|
3436
3504
|
children: "\u{1F4CE}"
|
|
3437
3505
|
}
|
|
3438
3506
|
),
|
|
3439
|
-
/* @__PURE__ */
|
|
3507
|
+
/* @__PURE__ */ jsx12(
|
|
3440
3508
|
"input",
|
|
3441
3509
|
{
|
|
3442
3510
|
type: "text",
|
|
@@ -3452,7 +3520,7 @@ function ThreadDetailScreen({
|
|
|
3452
3520
|
}
|
|
3453
3521
|
}
|
|
3454
3522
|
),
|
|
3455
|
-
/* @__PURE__ */
|
|
3523
|
+
/* @__PURE__ */ jsx12(
|
|
3456
3524
|
"button",
|
|
3457
3525
|
{
|
|
3458
3526
|
style: {
|
|
@@ -3480,7 +3548,7 @@ function ThreadDetailScreen({
|
|
|
3480
3548
|
|
|
3481
3549
|
// src/widget/screens/ComposeMessageScreen.tsx
|
|
3482
3550
|
import { useState as useState8 } from "react";
|
|
3483
|
-
import { jsx as
|
|
3551
|
+
import { jsx as jsx13, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
3484
3552
|
var inputStyle2 = {
|
|
3485
3553
|
backgroundColor: "#27272a",
|
|
3486
3554
|
border: "1px solid #3f3f46",
|
|
@@ -3511,9 +3579,9 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3511
3579
|
nav.pop();
|
|
3512
3580
|
}
|
|
3513
3581
|
};
|
|
3514
|
-
return /* @__PURE__ */
|
|
3515
|
-
/* @__PURE__ */
|
|
3516
|
-
/* @__PURE__ */
|
|
3582
|
+
return /* @__PURE__ */ jsxs12("div", { children: [
|
|
3583
|
+
/* @__PURE__ */ jsxs12("div", { style: { marginBottom: 20 }, children: [
|
|
3584
|
+
/* @__PURE__ */ jsx13(
|
|
3517
3585
|
"div",
|
|
3518
3586
|
{
|
|
3519
3587
|
style: {
|
|
@@ -3525,9 +3593,9 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3525
3593
|
children: "New Message"
|
|
3526
3594
|
}
|
|
3527
3595
|
),
|
|
3528
|
-
/* @__PURE__ */
|
|
3596
|
+
/* @__PURE__ */ jsx13("div", { style: { fontSize: 14, color: colors.textMuted }, children: "Send a message to the QA team" })
|
|
3529
3597
|
] }),
|
|
3530
|
-
/* @__PURE__ */
|
|
3598
|
+
/* @__PURE__ */ jsxs12(
|
|
3531
3599
|
"div",
|
|
3532
3600
|
{
|
|
3533
3601
|
style: {
|
|
@@ -3537,7 +3605,7 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3537
3605
|
border: `1px solid ${colors.border}`
|
|
3538
3606
|
},
|
|
3539
3607
|
children: [
|
|
3540
|
-
/* @__PURE__ */
|
|
3608
|
+
/* @__PURE__ */ jsx13(
|
|
3541
3609
|
"label",
|
|
3542
3610
|
{
|
|
3543
3611
|
style: {
|
|
@@ -3550,7 +3618,7 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3550
3618
|
children: "Subject"
|
|
3551
3619
|
}
|
|
3552
3620
|
),
|
|
3553
|
-
/* @__PURE__ */
|
|
3621
|
+
/* @__PURE__ */ jsx13(
|
|
3554
3622
|
"input",
|
|
3555
3623
|
{
|
|
3556
3624
|
type: "text",
|
|
@@ -3565,7 +3633,7 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3565
3633
|
}
|
|
3566
3634
|
}
|
|
3567
3635
|
),
|
|
3568
|
-
/* @__PURE__ */
|
|
3636
|
+
/* @__PURE__ */ jsx13(
|
|
3569
3637
|
"label",
|
|
3570
3638
|
{
|
|
3571
3639
|
style: {
|
|
@@ -3579,7 +3647,7 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3579
3647
|
children: "Message"
|
|
3580
3648
|
}
|
|
3581
3649
|
),
|
|
3582
|
-
/* @__PURE__ */
|
|
3650
|
+
/* @__PURE__ */ jsx13(
|
|
3583
3651
|
"textarea",
|
|
3584
3652
|
{
|
|
3585
3653
|
value: message,
|
|
@@ -3598,7 +3666,7 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3598
3666
|
}
|
|
3599
3667
|
}
|
|
3600
3668
|
),
|
|
3601
|
-
/* @__PURE__ */
|
|
3669
|
+
/* @__PURE__ */ jsx13(
|
|
3602
3670
|
ImagePickerButtons,
|
|
3603
3671
|
{
|
|
3604
3672
|
images: images.images,
|
|
@@ -3609,7 +3677,7 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3609
3677
|
label: "Attachments (optional)"
|
|
3610
3678
|
}
|
|
3611
3679
|
),
|
|
3612
|
-
/* @__PURE__ */
|
|
3680
|
+
/* @__PURE__ */ jsx13(
|
|
3613
3681
|
"button",
|
|
3614
3682
|
{
|
|
3615
3683
|
style: {
|
|
@@ -3638,7 +3706,7 @@ function ComposeMessageScreen({ nav }) {
|
|
|
3638
3706
|
|
|
3639
3707
|
// src/widget/screens/ProfileScreen.tsx
|
|
3640
3708
|
import { useState as useState9, useEffect as useEffect6 } from "react";
|
|
3641
|
-
import { jsx as
|
|
3709
|
+
import { jsx as jsx14, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
3642
3710
|
function ProfileScreen({ nav }) {
|
|
3643
3711
|
const { testerInfo, assignments, updateTesterProfile, refreshTesterInfo } = useBugBear();
|
|
3644
3712
|
const [editing, setEditing] = useState9(false);
|
|
@@ -3684,22 +3752,22 @@ function ProfileScreen({ nav }) {
|
|
|
3684
3752
|
}
|
|
3685
3753
|
};
|
|
3686
3754
|
if (saved) {
|
|
3687
|
-
return /* @__PURE__ */
|
|
3688
|
-
/* @__PURE__ */
|
|
3689
|
-
/* @__PURE__ */
|
|
3755
|
+
return /* @__PURE__ */ jsxs13("div", { style: styles4.emptyState, children: [
|
|
3756
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.emptyEmoji, children: "\u2705" }),
|
|
3757
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.emptyTitle, children: "Profile saved!" })
|
|
3690
3758
|
] });
|
|
3691
3759
|
}
|
|
3692
3760
|
if (!testerInfo) {
|
|
3693
|
-
return /* @__PURE__ */
|
|
3694
|
-
/* @__PURE__ */
|
|
3695
|
-
/* @__PURE__ */
|
|
3761
|
+
return /* @__PURE__ */ jsxs13("div", { style: styles4.emptyState, children: [
|
|
3762
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.emptyEmoji, children: "\u{1F464}" }),
|
|
3763
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.emptyTitle, children: "No profile found" })
|
|
3696
3764
|
] });
|
|
3697
3765
|
}
|
|
3698
3766
|
if (editing) {
|
|
3699
|
-
return /* @__PURE__ */
|
|
3700
|
-
/* @__PURE__ */
|
|
3701
|
-
/* @__PURE__ */
|
|
3702
|
-
/* @__PURE__ */
|
|
3767
|
+
return /* @__PURE__ */ jsxs13("div", { children: [
|
|
3768
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.editHeader, children: [
|
|
3769
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.editTitle, children: "Edit Profile" }),
|
|
3770
|
+
/* @__PURE__ */ jsx14(
|
|
3703
3771
|
"button",
|
|
3704
3772
|
{
|
|
3705
3773
|
style: styles4.cancelButton,
|
|
@@ -3711,9 +3779,9 @@ function ProfileScreen({ nav }) {
|
|
|
3711
3779
|
}
|
|
3712
3780
|
)
|
|
3713
3781
|
] }),
|
|
3714
|
-
/* @__PURE__ */
|
|
3715
|
-
/* @__PURE__ */
|
|
3716
|
-
/* @__PURE__ */
|
|
3782
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.field, children: [
|
|
3783
|
+
/* @__PURE__ */ jsx14("label", { style: styles4.label, children: "Name" }),
|
|
3784
|
+
/* @__PURE__ */ jsx14(
|
|
3717
3785
|
"input",
|
|
3718
3786
|
{
|
|
3719
3787
|
style: styles4.input,
|
|
@@ -3723,15 +3791,15 @@ function ProfileScreen({ nav }) {
|
|
|
3723
3791
|
}
|
|
3724
3792
|
)
|
|
3725
3793
|
] }),
|
|
3726
|
-
/* @__PURE__ */
|
|
3727
|
-
/* @__PURE__ */
|
|
3728
|
-
/* @__PURE__ */
|
|
3794
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.field, children: [
|
|
3795
|
+
/* @__PURE__ */ jsx14("label", { style: styles4.label, children: "Primary Email" }),
|
|
3796
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.emailFixed, children: testerInfo.email })
|
|
3729
3797
|
] }),
|
|
3730
|
-
/* @__PURE__ */
|
|
3731
|
-
/* @__PURE__ */
|
|
3732
|
-
additionalEmails.map((email) => /* @__PURE__ */
|
|
3733
|
-
/* @__PURE__ */
|
|
3734
|
-
/* @__PURE__ */
|
|
3798
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.field, children: [
|
|
3799
|
+
/* @__PURE__ */ jsx14("label", { style: styles4.label, children: "Additional Emails" }),
|
|
3800
|
+
additionalEmails.map((email) => /* @__PURE__ */ jsxs13("div", { style: styles4.emailRow, children: [
|
|
3801
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.emailText, children: email }),
|
|
3802
|
+
/* @__PURE__ */ jsx14(
|
|
3735
3803
|
"button",
|
|
3736
3804
|
{
|
|
3737
3805
|
style: styles4.removeEmailButton,
|
|
@@ -3740,8 +3808,8 @@ function ProfileScreen({ nav }) {
|
|
|
3740
3808
|
}
|
|
3741
3809
|
)
|
|
3742
3810
|
] }, email)),
|
|
3743
|
-
/* @__PURE__ */
|
|
3744
|
-
/* @__PURE__ */
|
|
3811
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.addEmailRow, children: [
|
|
3812
|
+
/* @__PURE__ */ jsx14(
|
|
3745
3813
|
"input",
|
|
3746
3814
|
{
|
|
3747
3815
|
style: { ...styles4.input, flex: 1, marginRight: 8 },
|
|
@@ -3754,18 +3822,18 @@ function ProfileScreen({ nav }) {
|
|
|
3754
3822
|
}
|
|
3755
3823
|
}
|
|
3756
3824
|
),
|
|
3757
|
-
/* @__PURE__ */
|
|
3825
|
+
/* @__PURE__ */ jsx14("button", { style: styles4.addButton, onClick: handleAddEmail, children: "Add" })
|
|
3758
3826
|
] })
|
|
3759
3827
|
] }),
|
|
3760
|
-
/* @__PURE__ */
|
|
3761
|
-
/* @__PURE__ */
|
|
3762
|
-
/* @__PURE__ */
|
|
3828
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.field, children: [
|
|
3829
|
+
/* @__PURE__ */ jsx14("label", { style: styles4.label, children: "Testing Platforms" }),
|
|
3830
|
+
/* @__PURE__ */ jsx14("div", { style: styles4.platformRow, children: [
|
|
3763
3831
|
{ key: "ios", label: "\u{1F4F1} iOS" },
|
|
3764
3832
|
{ key: "android", label: "\u{1F916} Android" },
|
|
3765
3833
|
{ key: "web", label: "\u{1F310} Web" }
|
|
3766
3834
|
].map(({ key, label }) => {
|
|
3767
3835
|
const isActive = platforms.includes(key);
|
|
3768
|
-
return /* @__PURE__ */
|
|
3836
|
+
return /* @__PURE__ */ jsx14(
|
|
3769
3837
|
"button",
|
|
3770
3838
|
{
|
|
3771
3839
|
style: {
|
|
@@ -3775,13 +3843,13 @@ function ProfileScreen({ nav }) {
|
|
|
3775
3843
|
onClick: () => setPlatforms(
|
|
3776
3844
|
(prev) => prev.includes(key) ? prev.filter((p) => p !== key) : [...prev, key]
|
|
3777
3845
|
),
|
|
3778
|
-
children: /* @__PURE__ */
|
|
3846
|
+
children: /* @__PURE__ */ jsx14("span", { style: isActive ? styles4.platformTextActive : styles4.platformText, children: label })
|
|
3779
3847
|
},
|
|
3780
3848
|
key
|
|
3781
3849
|
);
|
|
3782
3850
|
}) })
|
|
3783
3851
|
] }),
|
|
3784
|
-
/* @__PURE__ */
|
|
3852
|
+
/* @__PURE__ */ jsx14(
|
|
3785
3853
|
"button",
|
|
3786
3854
|
{
|
|
3787
3855
|
style: { ...styles4.primaryButton, marginTop: 20 },
|
|
@@ -3792,45 +3860,45 @@ function ProfileScreen({ nav }) {
|
|
|
3792
3860
|
)
|
|
3793
3861
|
] });
|
|
3794
3862
|
}
|
|
3795
|
-
return /* @__PURE__ */
|
|
3796
|
-
/* @__PURE__ */
|
|
3797
|
-
/* @__PURE__ */
|
|
3798
|
-
/* @__PURE__ */
|
|
3799
|
-
/* @__PURE__ */
|
|
3863
|
+
return /* @__PURE__ */ jsxs13("div", { children: [
|
|
3864
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.profileCard, children: [
|
|
3865
|
+
/* @__PURE__ */ jsx14("div", { style: styles4.avatar, children: /* @__PURE__ */ jsx14("span", { style: styles4.avatarText, children: testerInfo.name.charAt(0).toUpperCase() }) }),
|
|
3866
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.profileName, children: testerInfo.name }),
|
|
3867
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.profileEmail, children: testerInfo.email })
|
|
3800
3868
|
] }),
|
|
3801
|
-
/* @__PURE__ */
|
|
3802
|
-
/* @__PURE__ */
|
|
3803
|
-
/* @__PURE__ */
|
|
3804
|
-
/* @__PURE__ */
|
|
3869
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.statsRow, children: [
|
|
3870
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.statItem, children: [
|
|
3871
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.statNumber, children: completedCount }),
|
|
3872
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.statLabel, children: "Completed" })
|
|
3805
3873
|
] }),
|
|
3806
|
-
/* @__PURE__ */
|
|
3807
|
-
/* @__PURE__ */
|
|
3808
|
-
/* @__PURE__ */
|
|
3809
|
-
/* @__PURE__ */
|
|
3874
|
+
/* @__PURE__ */ jsx14("div", { style: styles4.statDivider }),
|
|
3875
|
+
/* @__PURE__ */ jsxs13("div", { style: styles4.statItem, children: [
|
|
3876
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.statNumber, children: assignments.length }),
|
|
3877
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.statLabel, children: "Total Assigned" })
|
|
3810
3878
|
] })
|
|
3811
3879
|
] }),
|
|
3812
|
-
/* @__PURE__ */
|
|
3880
|
+
/* @__PURE__ */ jsx14(
|
|
3813
3881
|
"button",
|
|
3814
3882
|
{
|
|
3815
3883
|
style: styles4.detailsToggle,
|
|
3816
3884
|
onClick: () => setShowDetails(!showDetails),
|
|
3817
|
-
children: /* @__PURE__ */
|
|
3885
|
+
children: /* @__PURE__ */ jsxs13("span", { style: styles4.detailsToggleText, children: [
|
|
3818
3886
|
showDetails ? "\u25BC" : "\u25B6",
|
|
3819
3887
|
" Details"
|
|
3820
3888
|
] })
|
|
3821
3889
|
}
|
|
3822
3890
|
),
|
|
3823
|
-
showDetails && /* @__PURE__ */
|
|
3824
|
-
additionalEmails.length > 0 && /* @__PURE__ */
|
|
3825
|
-
/* @__PURE__ */
|
|
3826
|
-
additionalEmails.map((e) => /* @__PURE__ */
|
|
3891
|
+
showDetails && /* @__PURE__ */ jsxs13("div", { style: styles4.detailsSection, children: [
|
|
3892
|
+
additionalEmails.length > 0 && /* @__PURE__ */ jsxs13("div", { style: styles4.detailBlock, children: [
|
|
3893
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.detailLabel, children: "Additional Emails" }),
|
|
3894
|
+
additionalEmails.map((e) => /* @__PURE__ */ jsx14("span", { style: styles4.detailValue, children: e }, e))
|
|
3827
3895
|
] }),
|
|
3828
|
-
platforms.length > 0 && /* @__PURE__ */
|
|
3829
|
-
/* @__PURE__ */
|
|
3830
|
-
/* @__PURE__ */
|
|
3896
|
+
platforms.length > 0 && /* @__PURE__ */ jsxs13("div", { style: styles4.detailBlock, children: [
|
|
3897
|
+
/* @__PURE__ */ jsx14("span", { style: styles4.detailLabel, children: "Platforms" }),
|
|
3898
|
+
/* @__PURE__ */ jsx14("div", { style: styles4.platformTags, children: platforms.map((p) => /* @__PURE__ */ jsx14("span", { style: styles4.platformTag, children: /* @__PURE__ */ jsx14("span", { style: styles4.platformTagText, children: p === "ios" ? "\u{1F4F1} iOS" : p === "android" ? "\u{1F916} Android" : "\u{1F310} Web" }) }, p)) })
|
|
3831
3899
|
] })
|
|
3832
3900
|
] }),
|
|
3833
|
-
/* @__PURE__ */
|
|
3901
|
+
/* @__PURE__ */ jsx14(
|
|
3834
3902
|
"button",
|
|
3835
3903
|
{
|
|
3836
3904
|
style: { ...styles4.primaryButton, marginTop: 20 },
|
|
@@ -4114,7 +4182,7 @@ var styles4 = {
|
|
|
4114
4182
|
|
|
4115
4183
|
// src/widget/screens/IssueListScreen.tsx
|
|
4116
4184
|
import { useState as useState10, useEffect as useEffect7 } from "react";
|
|
4117
|
-
import { jsx as
|
|
4185
|
+
import { jsx as jsx15, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
4118
4186
|
var CATEGORY_CONFIG = {
|
|
4119
4187
|
open: { label: "Open Issues", accent: "#f97316", emptyIcon: "\u2705", emptyText: "No open issues" },
|
|
4120
4188
|
done: { label: "Done", accent: "#22c55e", emptyIcon: "\u{1F389}", emptyText: "No completed issues yet" },
|
|
@@ -4147,15 +4215,15 @@ function IssueListScreen({ nav, category }) {
|
|
|
4147
4215
|
};
|
|
4148
4216
|
}, [client, category]);
|
|
4149
4217
|
if (loading) {
|
|
4150
|
-
return /* @__PURE__ */
|
|
4218
|
+
return /* @__PURE__ */ jsx15("div", { style: { padding: "40px 0", textAlign: "center" }, children: /* @__PURE__ */ jsx15("div", { style: { color: colors.textMuted, fontSize: 14 }, children: "Loading..." }) });
|
|
4151
4219
|
}
|
|
4152
4220
|
if (issues.length === 0) {
|
|
4153
|
-
return /* @__PURE__ */
|
|
4154
|
-
/* @__PURE__ */
|
|
4155
|
-
/* @__PURE__ */
|
|
4221
|
+
return /* @__PURE__ */ jsxs14("div", { style: { padding: "40px 0", textAlign: "center" }, children: [
|
|
4222
|
+
/* @__PURE__ */ jsx15("div", { style: { fontSize: 36, marginBottom: 8 }, children: config.emptyIcon }),
|
|
4223
|
+
/* @__PURE__ */ jsx15("div", { style: { color: colors.textMuted, fontSize: 14 }, children: config.emptyText })
|
|
4156
4224
|
] });
|
|
4157
4225
|
}
|
|
4158
|
-
return /* @__PURE__ */
|
|
4226
|
+
return /* @__PURE__ */ jsx15("div", { children: issues.map((issue) => /* @__PURE__ */ jsxs14(
|
|
4159
4227
|
"div",
|
|
4160
4228
|
{
|
|
4161
4229
|
role: "button",
|
|
@@ -4174,8 +4242,8 @@ function IssueListScreen({ nav, category }) {
|
|
|
4174
4242
|
userSelect: "none"
|
|
4175
4243
|
},
|
|
4176
4244
|
children: [
|
|
4177
|
-
/* @__PURE__ */
|
|
4178
|
-
issue.severity && /* @__PURE__ */
|
|
4245
|
+
/* @__PURE__ */ jsxs14("div", { style: { display: "flex", alignItems: "flex-start", gap: 8 }, children: [
|
|
4246
|
+
issue.severity && /* @__PURE__ */ jsx15(
|
|
4179
4247
|
"span",
|
|
4180
4248
|
{
|
|
4181
4249
|
style: {
|
|
@@ -4188,7 +4256,7 @@ function IssueListScreen({ nav, category }) {
|
|
|
4188
4256
|
}
|
|
4189
4257
|
}
|
|
4190
4258
|
),
|
|
4191
|
-
/* @__PURE__ */
|
|
4259
|
+
/* @__PURE__ */ jsx15("span", { style: {
|
|
4192
4260
|
fontSize: 13,
|
|
4193
4261
|
fontWeight: 600,
|
|
4194
4262
|
color: colors.textPrimary,
|
|
@@ -4198,11 +4266,11 @@ function IssueListScreen({ nav, category }) {
|
|
|
4198
4266
|
whiteSpace: "nowrap"
|
|
4199
4267
|
}, children: issue.title })
|
|
4200
4268
|
] }),
|
|
4201
|
-
/* @__PURE__ */
|
|
4202
|
-
issue.route && /* @__PURE__ */
|
|
4203
|
-
/* @__PURE__ */
|
|
4269
|
+
/* @__PURE__ */ jsxs14("div", { style: { display: "flex", justifyContent: "space-between", marginTop: 6 }, children: [
|
|
4270
|
+
issue.route && /* @__PURE__ */ jsx15("span", { style: { fontSize: 11, color: colors.textDim, maxWidth: "60%", overflow: "hidden", textOverflow: "ellipsis", whiteSpace: "nowrap" }, children: issue.route }),
|
|
4271
|
+
/* @__PURE__ */ jsx15("span", { style: { fontSize: 11, color: colors.textDim, marginLeft: "auto" }, children: formatRelativeTime(issue.updatedAt) })
|
|
4204
4272
|
] }),
|
|
4205
|
-
category === "done" && issue.verifiedByName && /* @__PURE__ */
|
|
4273
|
+
category === "done" && issue.verifiedByName && /* @__PURE__ */ jsxs14("div", { style: {
|
|
4206
4274
|
display: "inline-flex",
|
|
4207
4275
|
alignItems: "center",
|
|
4208
4276
|
gap: 4,
|
|
@@ -4218,7 +4286,7 @@ function IssueListScreen({ nav, category }) {
|
|
|
4218
4286
|
"\u2714 Verified by ",
|
|
4219
4287
|
issue.verifiedByName
|
|
4220
4288
|
] }),
|
|
4221
|
-
category === "reopened" && issue.originalBugTitle && /* @__PURE__ */
|
|
4289
|
+
category === "reopened" && issue.originalBugTitle && /* @__PURE__ */ jsxs14("div", { style: {
|
|
4222
4290
|
display: "inline-flex",
|
|
4223
4291
|
alignItems: "center",
|
|
4224
4292
|
gap: 4,
|
|
@@ -4245,7 +4313,7 @@ function IssueListScreen({ nav, category }) {
|
|
|
4245
4313
|
}
|
|
4246
4314
|
|
|
4247
4315
|
// src/widget/screens/IssueDetailScreen.tsx
|
|
4248
|
-
import { jsx as
|
|
4316
|
+
import { jsx as jsx16, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
4249
4317
|
var STATUS_LABELS = {
|
|
4250
4318
|
new: { label: "New", bg: "#1e3a5f", color: "#60a5fa" },
|
|
4251
4319
|
triaging: { label: "Triaging", bg: "#1e3a5f", color: "#60a5fa" },
|
|
@@ -4269,9 +4337,9 @@ var SEVERITY_CONFIG = {
|
|
|
4269
4337
|
function IssueDetailScreen({ nav, issue }) {
|
|
4270
4338
|
const statusConfig = STATUS_LABELS[issue.status] || { label: issue.status, bg: "#27272a", color: "#a1a1aa" };
|
|
4271
4339
|
const severityConfig = issue.severity ? SEVERITY_CONFIG[issue.severity] : null;
|
|
4272
|
-
return /* @__PURE__ */
|
|
4273
|
-
/* @__PURE__ */
|
|
4274
|
-
/* @__PURE__ */
|
|
4340
|
+
return /* @__PURE__ */ jsxs15("div", { children: [
|
|
4341
|
+
/* @__PURE__ */ jsxs15("div", { style: { display: "flex", gap: 8, flexWrap: "wrap", marginBottom: 12 }, children: [
|
|
4342
|
+
/* @__PURE__ */ jsx16("span", { style: {
|
|
4275
4343
|
backgroundColor: statusConfig.bg,
|
|
4276
4344
|
color: statusConfig.color,
|
|
4277
4345
|
fontSize: 11,
|
|
@@ -4279,7 +4347,7 @@ function IssueDetailScreen({ nav, issue }) {
|
|
|
4279
4347
|
padding: "3px 10px",
|
|
4280
4348
|
borderRadius: 6
|
|
4281
4349
|
}, children: statusConfig.label }),
|
|
4282
|
-
severityConfig && /* @__PURE__ */
|
|
4350
|
+
severityConfig && /* @__PURE__ */ jsx16("span", { style: {
|
|
4283
4351
|
backgroundColor: severityConfig.bg,
|
|
4284
4352
|
color: severityConfig.color,
|
|
4285
4353
|
fontSize: 11,
|
|
@@ -4288,9 +4356,9 @@ function IssueDetailScreen({ nav, issue }) {
|
|
|
4288
4356
|
borderRadius: 6
|
|
4289
4357
|
}, children: severityConfig.label })
|
|
4290
4358
|
] }),
|
|
4291
|
-
/* @__PURE__ */
|
|
4292
|
-
issue.route && /* @__PURE__ */
|
|
4293
|
-
issue.description && /* @__PURE__ */
|
|
4359
|
+
/* @__PURE__ */ jsx16("h3", { style: { fontSize: 16, fontWeight: 700, color: colors.textPrimary, margin: "0 0 8px 0", lineHeight: 1.3 }, children: issue.title }),
|
|
4360
|
+
issue.route && /* @__PURE__ */ jsx16("div", { style: { fontSize: 12, color: colors.textDim, marginBottom: 12 }, children: issue.route }),
|
|
4361
|
+
issue.description && /* @__PURE__ */ jsx16("div", { style: {
|
|
4294
4362
|
backgroundColor: colors.card,
|
|
4295
4363
|
border: `1px solid ${colors.border}`,
|
|
4296
4364
|
borderRadius: 8,
|
|
@@ -4302,56 +4370,56 @@ function IssueDetailScreen({ nav, issue }) {
|
|
|
4302
4370
|
whiteSpace: "pre-wrap",
|
|
4303
4371
|
wordBreak: "break-word"
|
|
4304
4372
|
}, children: issue.description }),
|
|
4305
|
-
issue.verifiedByName && /* @__PURE__ */
|
|
4373
|
+
issue.verifiedByName && /* @__PURE__ */ jsxs15("div", { style: {
|
|
4306
4374
|
backgroundColor: "#14532d",
|
|
4307
4375
|
border: "1px solid #166534",
|
|
4308
4376
|
borderRadius: 8,
|
|
4309
4377
|
padding: 12,
|
|
4310
4378
|
marginBottom: 12
|
|
4311
4379
|
}, children: [
|
|
4312
|
-
/* @__PURE__ */
|
|
4313
|
-
/* @__PURE__ */
|
|
4314
|
-
/* @__PURE__ */
|
|
4380
|
+
/* @__PURE__ */ jsxs15("div", { style: { display: "flex", alignItems: "center", gap: 8, marginBottom: 4 }, children: [
|
|
4381
|
+
/* @__PURE__ */ jsx16("span", { style: { fontSize: 16 }, children: "\u2705" }),
|
|
4382
|
+
/* @__PURE__ */ jsx16("span", { style: { fontSize: 13, fontWeight: 600, color: "#4ade80" }, children: "Retesting Proof" })
|
|
4315
4383
|
] }),
|
|
4316
|
-
/* @__PURE__ */
|
|
4384
|
+
/* @__PURE__ */ jsxs15("div", { style: { fontSize: 12, color: "#86efac" }, children: [
|
|
4317
4385
|
"Verified by ",
|
|
4318
|
-
/* @__PURE__ */
|
|
4319
|
-
issue.verifiedAt && /* @__PURE__ */
|
|
4386
|
+
/* @__PURE__ */ jsx16("strong", { children: issue.verifiedByName }),
|
|
4387
|
+
issue.verifiedAt && /* @__PURE__ */ jsxs15("span", { children: [
|
|
4320
4388
|
" on ",
|
|
4321
4389
|
new Date(issue.verifiedAt).toLocaleDateString(void 0, { month: "short", day: "numeric", year: "numeric" })
|
|
4322
4390
|
] })
|
|
4323
4391
|
] })
|
|
4324
4392
|
] }),
|
|
4325
|
-
issue.originalBugTitle && /* @__PURE__ */
|
|
4393
|
+
issue.originalBugTitle && /* @__PURE__ */ jsxs15("div", { style: {
|
|
4326
4394
|
backgroundColor: "#422006",
|
|
4327
4395
|
border: "1px solid #854d0e",
|
|
4328
4396
|
borderRadius: 8,
|
|
4329
4397
|
padding: 12,
|
|
4330
4398
|
marginBottom: 12
|
|
4331
4399
|
}, children: [
|
|
4332
|
-
/* @__PURE__ */
|
|
4333
|
-
/* @__PURE__ */
|
|
4334
|
-
/* @__PURE__ */
|
|
4400
|
+
/* @__PURE__ */ jsxs15("div", { style: { display: "flex", alignItems: "center", gap: 8, marginBottom: 4 }, children: [
|
|
4401
|
+
/* @__PURE__ */ jsx16("span", { style: { fontSize: 16 }, children: "\u{1F504}" }),
|
|
4402
|
+
/* @__PURE__ */ jsx16("span", { style: { fontSize: 13, fontWeight: 600, color: "#fbbf24" }, children: "Original Bug" })
|
|
4335
4403
|
] }),
|
|
4336
|
-
/* @__PURE__ */
|
|
4404
|
+
/* @__PURE__ */ jsxs15("div", { style: { fontSize: 12, color: "#fde68a" }, children: [
|
|
4337
4405
|
"Retest of: ",
|
|
4338
|
-
/* @__PURE__ */
|
|
4406
|
+
/* @__PURE__ */ jsx16("strong", { children: issue.originalBugTitle })
|
|
4339
4407
|
] })
|
|
4340
4408
|
] }),
|
|
4341
|
-
issue.screenshotUrls && issue.screenshotUrls.length > 0 && /* @__PURE__ */
|
|
4342
|
-
/* @__PURE__ */
|
|
4409
|
+
issue.screenshotUrls && issue.screenshotUrls.length > 0 && /* @__PURE__ */ jsxs15("div", { style: { marginBottom: 12 }, children: [
|
|
4410
|
+
/* @__PURE__ */ jsxs15("div", { style: { fontSize: 12, fontWeight: 600, color: colors.textMuted, marginBottom: 8 }, children: [
|
|
4343
4411
|
"Screenshots (",
|
|
4344
4412
|
issue.screenshotUrls.length,
|
|
4345
4413
|
")"
|
|
4346
4414
|
] }),
|
|
4347
|
-
/* @__PURE__ */
|
|
4415
|
+
/* @__PURE__ */ jsx16("div", { style: { display: "flex", gap: 8, overflowX: "auto" }, children: issue.screenshotUrls.map((url, i) => /* @__PURE__ */ jsx16(
|
|
4348
4416
|
"a",
|
|
4349
4417
|
{
|
|
4350
4418
|
href: url,
|
|
4351
4419
|
target: "_blank",
|
|
4352
4420
|
rel: "noopener noreferrer",
|
|
4353
4421
|
style: { flexShrink: 0 },
|
|
4354
|
-
children: /* @__PURE__ */
|
|
4422
|
+
children: /* @__PURE__ */ jsx16(
|
|
4355
4423
|
"img",
|
|
4356
4424
|
{
|
|
4357
4425
|
src: url,
|
|
@@ -4369,16 +4437,16 @@ function IssueDetailScreen({ nav, issue }) {
|
|
|
4369
4437
|
i
|
|
4370
4438
|
)) })
|
|
4371
4439
|
] }),
|
|
4372
|
-
/* @__PURE__ */
|
|
4440
|
+
/* @__PURE__ */ jsxs15("div", { style: {
|
|
4373
4441
|
borderTop: `1px solid ${colors.border}`,
|
|
4374
4442
|
paddingTop: 12,
|
|
4375
4443
|
marginTop: 4
|
|
4376
4444
|
}, children: [
|
|
4377
|
-
issue.reporterName && /* @__PURE__ */
|
|
4445
|
+
issue.reporterName && /* @__PURE__ */ jsxs15("div", { style: { fontSize: 12, color: colors.textDim, marginBottom: 4 }, children: [
|
|
4378
4446
|
"Reported by ",
|
|
4379
4447
|
issue.reporterName
|
|
4380
4448
|
] }),
|
|
4381
|
-
/* @__PURE__ */
|
|
4449
|
+
/* @__PURE__ */ jsxs15("div", { style: { fontSize: 11, color: colors.textDim }, children: [
|
|
4382
4450
|
"Created ",
|
|
4383
4451
|
formatRelativeTime(issue.createdAt),
|
|
4384
4452
|
" \xB7 Updated ",
|
|
@@ -4392,9 +4460,9 @@ function IssueDetailScreen({ nav, issue }) {
|
|
|
4392
4460
|
var BUGBEAR_LOGO_BASE64 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAAAXNSR0IArs4c6QAAAJhlWElmTU0AKgAAAAgABAEaAAUAAAABAAAAPgEbAAUAAAABAAAARgEoAAMAAAABAAIAAIdpAAQAAAABAAAATgAAAAAAAABIAAAAAQAAAEgAAAABAASQBAACAAAAFAAAAISgAQADAAAAAQABAACgAgAEAAAAAQAAAGCgAwAEAAAAAQAAAGAAAAAAMjAyNjowMToyNCAxNjoyMTozOABbbVCuAAAACXBIWXMAAAsTAAALEwEAmpwYAAACo2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpJcHRjNHhtcEV4dD0iaHR0cDovL2lwdGMub3JnL3N0ZC9JcHRjNHhtcEV4dC8yMDA4LTAyLTI5LyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPElwdGM0eG1wRXh0OkRpZ2l0YWxTb3VyY2VUeXBlPmh0dHA6Ly9jdi5pcHRjLm9yZy9uZXdzY29kZXMvZGlnaXRhbHNvdXJjZXR5cGUvdHJhaW5lZEFsZ29yaXRobWljTWVkaWE8L0lwdGM0eG1wRXh0OkRpZ2l0YWxTb3VyY2VUeXBlPgogICAgICAgICA8SXB0YzR4bXBFeHQ6RGlnSW1hZ2VHVUlEPmZjNzJlN2Q2LTYyYTEtNDE1ZS04MjY5LWM2NjA4MjY0OWRiMDwvSXB0YzR4bXBFeHQ6RGlnSW1hZ2VHVUlEPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAyNi0wMS0yNFQxNjoyMTozODwveG1wOkNyZWF0ZURhdGU+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+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";
|
|
4393
4461
|
|
|
4394
4462
|
// src/BugBearPanel.tsx
|
|
4395
|
-
import { Fragment as Fragment4, jsx as
|
|
4463
|
+
import { Fragment as Fragment4, jsx as jsx17, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
4396
4464
|
function BugBearIcon({ size = 24 }) {
|
|
4397
|
-
return /* @__PURE__ */
|
|
4465
|
+
return /* @__PURE__ */ jsx17(
|
|
4398
4466
|
"img",
|
|
4399
4467
|
{
|
|
4400
4468
|
src: BUGBEAR_LOGO_BASE64,
|
|
@@ -4559,37 +4627,37 @@ function BugBearPanel({
|
|
|
4559
4627
|
const renderScreen = () => {
|
|
4560
4628
|
switch (currentScreen.name) {
|
|
4561
4629
|
case "HOME":
|
|
4562
|
-
return /* @__PURE__ */
|
|
4630
|
+
return /* @__PURE__ */ jsx17(HomeScreen, { nav });
|
|
4563
4631
|
case "TEST_DETAIL":
|
|
4564
|
-
return /* @__PURE__ */
|
|
4632
|
+
return /* @__PURE__ */ jsx17(TestDetailScreen, { testId: currentScreen.testId, nav });
|
|
4565
4633
|
case "TEST_LIST":
|
|
4566
|
-
return /* @__PURE__ */
|
|
4634
|
+
return /* @__PURE__ */ jsx17(TestListScreen, { nav });
|
|
4567
4635
|
case "TEST_FEEDBACK":
|
|
4568
|
-
return /* @__PURE__ */
|
|
4636
|
+
return /* @__PURE__ */ jsx17(TestFeedbackScreen, { status: currentScreen.status, assignmentId: currentScreen.assignmentId, nav });
|
|
4569
4637
|
case "REPORT":
|
|
4570
|
-
return /* @__PURE__ */
|
|
4638
|
+
return /* @__PURE__ */ jsx17(ReportScreen, { nav, prefill: currentScreen.prefill });
|
|
4571
4639
|
case "REPORT_SUCCESS":
|
|
4572
|
-
return /* @__PURE__ */
|
|
4640
|
+
return /* @__PURE__ */ jsx17(ReportSuccessScreen, { nav });
|
|
4573
4641
|
case "MESSAGE_LIST":
|
|
4574
|
-
return /* @__PURE__ */
|
|
4642
|
+
return /* @__PURE__ */ jsx17(MessageListScreen, { nav });
|
|
4575
4643
|
case "THREAD_DETAIL":
|
|
4576
|
-
return /* @__PURE__ */
|
|
4644
|
+
return /* @__PURE__ */ jsx17(ThreadDetailScreen, { thread: currentScreen.thread, nav });
|
|
4577
4645
|
case "COMPOSE_MESSAGE":
|
|
4578
|
-
return /* @__PURE__ */
|
|
4646
|
+
return /* @__PURE__ */ jsx17(ComposeMessageScreen, { nav });
|
|
4579
4647
|
case "ISSUE_LIST":
|
|
4580
|
-
return /* @__PURE__ */
|
|
4648
|
+
return /* @__PURE__ */ jsx17(IssueListScreen, { nav, category: currentScreen.category });
|
|
4581
4649
|
case "ISSUE_DETAIL":
|
|
4582
|
-
return /* @__PURE__ */
|
|
4650
|
+
return /* @__PURE__ */ jsx17(IssueDetailScreen, { nav, issue: currentScreen.issue });
|
|
4583
4651
|
case "PROFILE":
|
|
4584
|
-
return /* @__PURE__ */
|
|
4652
|
+
return /* @__PURE__ */ jsx17(ProfileScreen, { nav });
|
|
4585
4653
|
default:
|
|
4586
|
-
return /* @__PURE__ */
|
|
4654
|
+
return /* @__PURE__ */ jsx17(HomeScreen, { nav });
|
|
4587
4655
|
}
|
|
4588
4656
|
};
|
|
4589
4657
|
if (typeof document === "undefined") return null;
|
|
4590
4658
|
const headerTitle = getHeaderTitle();
|
|
4591
4659
|
return createPortal(
|
|
4592
|
-
/* @__PURE__ */
|
|
4660
|
+
/* @__PURE__ */ jsxs16(
|
|
4593
4661
|
"div",
|
|
4594
4662
|
{
|
|
4595
4663
|
ref: panelRef,
|
|
@@ -4608,7 +4676,7 @@ function BugBearPanel({
|
|
|
4608
4676
|
},
|
|
4609
4677
|
onMouseDown: handleMouseDown,
|
|
4610
4678
|
children: [
|
|
4611
|
-
collapsed && /* @__PURE__ */
|
|
4679
|
+
collapsed && /* @__PURE__ */ jsxs16(
|
|
4612
4680
|
"button",
|
|
4613
4681
|
{
|
|
4614
4682
|
onClick: () => setCollapsed(false),
|
|
@@ -4630,9 +4698,9 @@ function BugBearPanel({
|
|
|
4630
4698
|
fontWeight: 500
|
|
4631
4699
|
},
|
|
4632
4700
|
children: [
|
|
4633
|
-
/* @__PURE__ */
|
|
4634
|
-
/* @__PURE__ */
|
|
4635
|
-
badgeCount > 0 && /* @__PURE__ */
|
|
4701
|
+
/* @__PURE__ */ jsx17(BugBearIcon, { size: 24 }),
|
|
4702
|
+
/* @__PURE__ */ jsx17("span", { children: "BugBear" }),
|
|
4703
|
+
badgeCount > 0 && /* @__PURE__ */ jsx17("span", { style: {
|
|
4636
4704
|
backgroundColor: "#fff",
|
|
4637
4705
|
color: colors.blue,
|
|
4638
4706
|
fontSize: "0.75rem",
|
|
@@ -4643,7 +4711,7 @@ function BugBearPanel({
|
|
|
4643
4711
|
]
|
|
4644
4712
|
}
|
|
4645
4713
|
),
|
|
4646
|
-
!collapsed && /* @__PURE__ */
|
|
4714
|
+
!collapsed && /* @__PURE__ */ jsxs16("div", { style: {
|
|
4647
4715
|
width: PANEL_WIDTH,
|
|
4648
4716
|
backgroundColor: colors.bg,
|
|
4649
4717
|
borderRadius: 12,
|
|
@@ -4651,7 +4719,7 @@ function BugBearPanel({
|
|
|
4651
4719
|
overflow: "hidden",
|
|
4652
4720
|
boxShadow: "0 25px 50px -12px rgba(0,0,0,0.5)"
|
|
4653
4721
|
}, children: [
|
|
4654
|
-
/* @__PURE__ */
|
|
4722
|
+
/* @__PURE__ */ jsxs16(
|
|
4655
4723
|
"div",
|
|
4656
4724
|
{
|
|
4657
4725
|
"data-drag-handle": true,
|
|
@@ -4667,7 +4735,7 @@ function BugBearPanel({
|
|
|
4667
4735
|
cursor: draggable ? isDragging ? "grabbing" : "grab" : "default"
|
|
4668
4736
|
},
|
|
4669
4737
|
children: [
|
|
4670
|
-
/* @__PURE__ */
|
|
4738
|
+
/* @__PURE__ */ jsx17("div", { style: { display: "flex", alignItems: "center", gap: 8, flex: 1, minWidth: 0 }, children: canGoBack ? /* @__PURE__ */ jsx17(
|
|
4671
4739
|
"button",
|
|
4672
4740
|
{
|
|
4673
4741
|
onClick: pop,
|
|
@@ -4683,14 +4751,14 @@ function BugBearPanel({
|
|
|
4683
4751
|
},
|
|
4684
4752
|
children: "\u2190 Back"
|
|
4685
4753
|
}
|
|
4686
|
-
) : /* @__PURE__ */
|
|
4687
|
-
/* @__PURE__ */
|
|
4688
|
-
/* @__PURE__ */
|
|
4689
|
-
/* @__PURE__ */
|
|
4690
|
-
/* @__PURE__ */
|
|
4691
|
-
draggable && /* @__PURE__ */
|
|
4754
|
+
) : /* @__PURE__ */ jsxs16(Fragment4, { children: [
|
|
4755
|
+
/* @__PURE__ */ jsx17(BugBearIcon, { size: 28 }),
|
|
4756
|
+
/* @__PURE__ */ jsxs16("div", { children: [
|
|
4757
|
+
/* @__PURE__ */ jsxs16("div", { style: { display: "flex", alignItems: "center", gap: 8 }, children: [
|
|
4758
|
+
/* @__PURE__ */ jsx17("span", { style: { fontWeight: 600, fontSize: "0.875rem" }, children: "BugBear" }),
|
|
4759
|
+
draggable && /* @__PURE__ */ jsx17("span", { style: { color: colors.textMuted, fontSize: "0.75rem" }, title: "Drag to move, double-click to reset", children: "\u22EE\u22EE" })
|
|
4692
4760
|
] }),
|
|
4693
|
-
testerInfo && /* @__PURE__ */
|
|
4761
|
+
testerInfo && /* @__PURE__ */ jsxs16(
|
|
4694
4762
|
"button",
|
|
4695
4763
|
{
|
|
4696
4764
|
onClick: () => push({ name: "PROFILE" }),
|
|
@@ -4708,13 +4776,13 @@ function BugBearPanel({
|
|
|
4708
4776
|
},
|
|
4709
4777
|
children: [
|
|
4710
4778
|
testerInfo.name,
|
|
4711
|
-
/* @__PURE__ */
|
|
4779
|
+
/* @__PURE__ */ jsx17("span", { style: { fontSize: "0.625rem" }, children: "\u270E" })
|
|
4712
4780
|
]
|
|
4713
4781
|
}
|
|
4714
4782
|
)
|
|
4715
4783
|
] })
|
|
4716
4784
|
] }) }),
|
|
4717
|
-
headerTitle ? /* @__PURE__ */
|
|
4785
|
+
headerTitle ? /* @__PURE__ */ jsx17("span", { style: {
|
|
4718
4786
|
fontSize: "0.8125rem",
|
|
4719
4787
|
fontWeight: 600,
|
|
4720
4788
|
color: colors.textSecondary,
|
|
@@ -4724,7 +4792,7 @@ function BugBearPanel({
|
|
|
4724
4792
|
textOverflow: "ellipsis",
|
|
4725
4793
|
whiteSpace: "nowrap"
|
|
4726
4794
|
}, children: headerTitle }) : null,
|
|
4727
|
-
/* @__PURE__ */
|
|
4795
|
+
/* @__PURE__ */ jsx17(
|
|
4728
4796
|
"button",
|
|
4729
4797
|
{
|
|
4730
4798
|
onClick: handleClose,
|
|
@@ -4748,13 +4816,13 @@ function BugBearPanel({
|
|
|
4748
4816
|
]
|
|
4749
4817
|
}
|
|
4750
4818
|
),
|
|
4751
|
-
/* @__PURE__ */
|
|
4819
|
+
/* @__PURE__ */ jsx17("div", { style: {
|
|
4752
4820
|
padding: 16,
|
|
4753
4821
|
maxHeight: 400,
|
|
4754
4822
|
overflowY: "auto",
|
|
4755
4823
|
backgroundColor: colors.bg,
|
|
4756
4824
|
color: colors.textSecondary
|
|
4757
|
-
}, children: isLoading ? /* @__PURE__ */
|
|
4825
|
+
}, children: isLoading ? /* @__PURE__ */ jsx17("div", { style: { padding: "60px 0", textAlign: "center" }, children: /* @__PURE__ */ jsx17("div", { style: { color: colors.textMuted, fontSize: "0.875rem" }, children: "Loading..." }) }) : renderScreen() })
|
|
4758
4826
|
] })
|
|
4759
4827
|
]
|
|
4760
4828
|
}
|
|
@@ -4766,7 +4834,7 @@ function BugBearPanel({
|
|
|
4766
4834
|
// src/BugBearErrorBoundary.tsx
|
|
4767
4835
|
import { Component } from "react";
|
|
4768
4836
|
import { captureError, contextCapture as contextCapture2 } from "@bbearai/core";
|
|
4769
|
-
import { jsx as
|
|
4837
|
+
import { jsx as jsx18, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
4770
4838
|
var BugBearErrorBoundary = class extends Component {
|
|
4771
4839
|
constructor(props) {
|
|
4772
4840
|
super(props);
|
|
@@ -4811,7 +4879,7 @@ var BugBearErrorBoundary = class extends Component {
|
|
|
4811
4879
|
if (fallback) {
|
|
4812
4880
|
return fallback;
|
|
4813
4881
|
}
|
|
4814
|
-
return /* @__PURE__ */
|
|
4882
|
+
return /* @__PURE__ */ jsxs17(
|
|
4815
4883
|
"div",
|
|
4816
4884
|
{
|
|
4817
4885
|
style: {
|
|
@@ -4823,13 +4891,13 @@ var BugBearErrorBoundary = class extends Component {
|
|
|
4823
4891
|
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif'
|
|
4824
4892
|
},
|
|
4825
4893
|
children: [
|
|
4826
|
-
/* @__PURE__ */
|
|
4827
|
-
/* @__PURE__ */
|
|
4828
|
-
/* @__PURE__ */
|
|
4894
|
+
/* @__PURE__ */ jsxs17("div", { style: { display: "flex", alignItems: "center", gap: "8px", marginBottom: "12px" }, children: [
|
|
4895
|
+
/* @__PURE__ */ jsx18("img", { src: BUGBEAR_LOGO_BASE64, alt: "BugBear", width: 28, height: 28, style: { objectFit: "contain" } }),
|
|
4896
|
+
/* @__PURE__ */ jsx18("h3", { style: { margin: 0, color: "#991b1b", fontSize: "16px" }, children: "Something went wrong" })
|
|
4829
4897
|
] }),
|
|
4830
|
-
/* @__PURE__ */
|
|
4831
|
-
/* @__PURE__ */
|
|
4832
|
-
/* @__PURE__ */
|
|
4898
|
+
/* @__PURE__ */ jsx18("p", { style: { color: "#7f1d1d", fontSize: "14px", margin: "0 0 12px 0" }, children: error.message }),
|
|
4899
|
+
/* @__PURE__ */ jsxs17("div", { style: { display: "flex", gap: "8px" }, children: [
|
|
4900
|
+
/* @__PURE__ */ jsx18(
|
|
4833
4901
|
"button",
|
|
4834
4902
|
{
|
|
4835
4903
|
onClick: this.reset,
|
|
@@ -4846,7 +4914,7 @@ var BugBearErrorBoundary = class extends Component {
|
|
|
4846
4914
|
children: "Try Again"
|
|
4847
4915
|
}
|
|
4848
4916
|
),
|
|
4849
|
-
/* @__PURE__ */
|
|
4917
|
+
/* @__PURE__ */ jsx18(
|
|
4850
4918
|
"button",
|
|
4851
4919
|
{
|
|
4852
4920
|
onClick: () => window.location.reload(),
|
|
@@ -4864,7 +4932,7 @@ var BugBearErrorBoundary = class extends Component {
|
|
|
4864
4932
|
}
|
|
4865
4933
|
)
|
|
4866
4934
|
] }),
|
|
4867
|
-
/* @__PURE__ */
|
|
4935
|
+
/* @__PURE__ */ jsx18("p", { style: { color: "#9ca3af", fontSize: "12px", marginTop: "12px" }, children: "The error has been captured by BugBear" })
|
|
4868
4936
|
]
|
|
4869
4937
|
}
|
|
4870
4938
|
);
|