+ |
+
+ {org.name}
+
+ |
+
+
+ {selectedOrganizations.includes(org.id) ? (
+
+ ) : (
+ —
+ )}
+
+ |
+
+
+ {
+ let newSelected: string[];
+ const newRoles = { ...organizationRoles };
+ if (checked) {
+ newSelected = [...selectedOrganizations, org.id];
+ if (!newRoles[org.id]) {
+ newRoles[org.id] = "FULL";
+ }
+ } else {
+ newSelected = selectedOrganizations.filter(id => id !== org.id);
+ delete newRoles[org.id];
+ }
+ setSelectedOrganizations(newSelected);
+ setOrganizationRoles(newRoles);
+ setValue(
+ "organizations",
+ newSelected.map(id => ({
+ organizationId: id,
+ role: newRoles[id] || "FULL"
+ }))
+ );
+ }}
+ />
+
+ |
+
+ ))}
+