-
-
{
- return context.chart.data.labels?.[context.dataIndex] || "";
+
+
+
+ setIsChartOpen(false)}>
+ Top Applications (Chart)
+
+
+ context.chart.data.labels?.[context.dataIndex] || "",
},
},
- },
- }}
- />
-
+ }}
+ />
+
+
+
+
+
+
-
-
-
-
+
setIsTableOpen(false)}>
+ Application Count Table
+
+
+
+ Application |
+ Count |
+
+
+
+ {sortedApps.map(([name, count]) => (
+
+ {name} |
+ {count} |
+
+ ))}
+
+
+
);
};
diff --git a/frontend/src/components/Modal.tsx b/frontend/src/components/Modal.tsx
new file mode 100644
index 00000000..0ee87bbd
--- /dev/null
+++ b/frontend/src/components/Modal.tsx
@@ -0,0 +1,29 @@
+"use client";
+
+import React from "react";
+
+interface ModalProps {
+ isOpen: boolean;
+ onClose: () => void;
+ children: React.ReactNode;
+}
+
+const Modal: React.FC