diff --git a/__tests__/pages/utilities/har-file-viewer.test.tsx b/__tests__/pages/utilities/har-file-viewer.test.tsx
index ef2bbb7..8a62239 100644
--- a/__tests__/pages/utilities/har-file-viewer.test.tsx
+++ b/__tests__/pages/utilities/har-file-viewer.test.tsx
@@ -53,7 +53,9 @@ describe("HARFileViewer", () => {
test("should render the component and display the drop zone text", () => {
render();
- expect(screen.getByText("Drop your .har or .json file here")).toBeInTheDocument();
+ expect(
+ screen.getByText("Drop your .har or .json file here")
+ ).toBeInTheDocument();
});
test("should list all requests after uploading a har file", async () => {
diff --git a/pages/utilities/har-file-viewer.tsx b/pages/utilities/har-file-viewer.tsx
index 3a8b388..706740e 100644
--- a/pages/utilities/har-file-viewer.tsx
+++ b/pages/utilities/har-file-viewer.tsx
@@ -110,6 +110,31 @@ export default function HARFileViewer() {
const [activeFilter, setActiveFilter] = useState("All");
const [viewMode, setViewMode] = useState<"table" | "waterfall">("table");
const [statusFilter, setStatusFilter] = useState([]);
+ const [isInitialized, setIsInitialized] = useState(false);
+
+ // Load view mode from localStorage on component mount
+ useEffect(() => {
+ try {
+ const savedViewMode = localStorage.getItem("har-viewer-view-mode");
+ if (savedViewMode === "table" || savedViewMode === "waterfall") {
+ setViewMode(savedViewMode);
+ }
+ } catch (error) {
+ // localStorage not available or error occurred, use default
+ }
+ setIsInitialized(true);
+ }, []);
+
+ // Save view mode to localStorage when it changes (but not on initial load)
+ useEffect(() => {
+ if (!isInitialized) return;
+
+ try {
+ localStorage.setItem("har-viewer-view-mode", viewMode);
+ } catch (error) {
+ // localStorage not available or error occurred
+ }
+ }, [viewMode, isInitialized]);
const handleFileUpload = useCallback((file: File | undefined) => {
if (!file) {
@@ -142,7 +167,10 @@ export default function HARFileViewer() {
setStatus("hover");
const file = event.dataTransfer.files[0];
- if (!file || (!file.name.endsWith(".har") && !file.name.endsWith(".json"))) {
+ if (
+ !file ||
+ (!file.name.endsWith(".har") && !file.name.endsWith(".json"))
+ ) {
setStatus("unsupported");
return;
}