@@ -82,6 +162,26 @@ export default function ClientPaginatedDevicesTable({
searchable
searchableColumns={["long_name", "name", "description", "site.name"]}
/>
+ {/* Assign to Cohort Dialog */}
+
+
+ {/* Unassign from Cohort Dialog */}
+
+
);
}
\ No newline at end of file
diff --git a/src/vertex/components/features/devices/device-list-table.tsx b/src/vertex/components/features/devices/device-list-table.tsx
index 60061b6231..124294d4e8 100644
--- a/src/vertex/components/features/devices/device-list-table.tsx
+++ b/src/vertex/components/features/devices/device-list-table.tsx
@@ -1,6 +1,6 @@
import { ExclamationTriangleIcon } from "@radix-ui/react-icons";
import { AqFilterLines } from "@airqo/icons-react";
-import { Check, X } from "lucide-react";
+import { Check, Edit, Plus, Trash2, X } from "lucide-react";
import {
DropdownMenu,
DropdownMenuContent,
@@ -10,15 +10,16 @@ import {
import { Button } from "@/components/ui/button";
import { Device } from "@/app/types/devices";
import { useRouter, useSearchParams } from "next/navigation";
-import ReusableTable from "@/components/shared/table/ReusableTable";
+import ReusableTable, { TableAction } from "@/components/shared/table/ReusableTable";
import ReusableButton from "@/components/shared/button/ReusableButton";
-import { useState, useMemo } from "react";
+import { useState, useMemo, useCallback } from "react";
import { AssignCohortDevicesDialog } from "@/components/features/cohorts/assign-cohort-devices";
import { useUserContext } from "@/core/hooks/useUserContext";
import { UnassignCohortDevicesDialog } from "../cohorts/unassign-cohort-devices";
import { useDevices, DeviceListingOptions } from "@/core/hooks/useDevices";
import { getColumns, type TableDevice } from "./utils/table-columns";
import { useServerSideTableState } from "@/core/hooks/useServerSideTableState";
+import BulkEditDevicesModal from "./bulk-edit-device-details-modal";
interface DevicesTableProps {
itemsPerPage?: number;
@@ -37,7 +38,9 @@ export default function DevicesTable({
const [selectedDeviceObjects, setSelectedDeviceObjects] = useState