Skip to content

Commit f794cbf

Browse files
committed
add hook for organizationtypes
1 parent ade46b5 commit f794cbf

File tree

3 files changed

+30
-22
lines changed

3 files changed

+30
-22
lines changed

app/[locale]/dashboard/[entityType]/[entitySlug]/profile/orgProfile.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@ import {
55
ApiOrganizationOrganizationTypesEnum,
66
OrganizationInputPartial,
77
} from '@/gql/generated/graphql';
8+
import { useOrganizationTypes } from '@/hooks/useOrganizationTypes';
89
import { useMutation, useQuery } from '@tanstack/react-query';
910
import { Button, DropZone, Select, Text, TextField, toast } from 'opub-ui';
1011

1112
import { GraphQL } from '@/lib/api';
12-
import { organizationTypes } from '../../page';
1313

1414
const OrgDetails: any = graphql(`
1515
query orgDetails($slug: String) {
@@ -63,7 +63,7 @@ const OrgProfile = () => {
6363
}
6464
)
6565
);
66-
66+
const { organizationTypes } = useOrganizationTypes();
6767
useEffect(() => {
6868
if (orgDetails.data) {
6969
setFormData({
@@ -112,7 +112,6 @@ const OrgProfile = () => {
112112
}
113113
);
114114
const handleSave = () => {
115-
116115
// Create mutation input with only changed fields
117116
const inputData: OrganizationInputPartial = {
118117
name: formData.name,

app/[locale]/dashboard/[entityType]/page.tsx

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,14 @@ import LoadingPage from '../loading';
1515
import styles from './../components/styles.module.scss';
1616
import { allOrganizationsListingDoc, organizationCreationMutation } from './schema';
1717
import { ApiOrganizationOrganizationTypesEnum, OrganizationInput } from '@/gql/generated/graphql';
18+
import { useOrganizationTypes } from '@/hooks/useOrganizationTypes';
19+
1820

1921

20-
export const organizationTypes = [
21-
{ label: 'State Government', value: ApiOrganizationOrganizationTypesEnum.StateGovernment },
22-
{ label: 'Union Territory Government', value: ApiOrganizationOrganizationTypesEnum.UnionTerritoryGovernment },
23-
{ label: 'Urban Local Body', value: ApiOrganizationOrganizationTypesEnum.UrbanLocalBody },
24-
{ label: 'Academic Institution', value: ApiOrganizationOrganizationTypesEnum.AcademicInstitution },
25-
{ label: 'Central Government', value: ApiOrganizationOrganizationTypesEnum.CentralGovernment },
26-
{ label: 'Citizens Group', value: ApiOrganizationOrganizationTypesEnum.CitizensGroup },
27-
{ label: 'Civil Society Organisation', value: ApiOrganizationOrganizationTypesEnum.CivilSocietyOrganisation },
28-
{ label: 'Industry Body', value: ApiOrganizationOrganizationTypesEnum.IndustryBody },
29-
{ label: 'Media Organisation', value: ApiOrganizationOrganizationTypesEnum.MediaOrganisation },
30-
{ label: 'Open Data Technology Community', value: ApiOrganizationOrganizationTypesEnum.OpenDataTechnologyCommunity },
31-
{ label: 'Private Company', value: ApiOrganizationOrganizationTypesEnum.PrivateCompany },
32-
{ label: 'Public Sector Company', value: ApiOrganizationOrganizationTypesEnum.PublicSectorCompany },
33-
{ label: 'Others', value: ApiOrganizationOrganizationTypesEnum.Others },
34-
{ label: 'Startup', value: ApiOrganizationOrganizationTypesEnum.Startup },
35-
{ label: 'Government', value: ApiOrganizationOrganizationTypesEnum.Government },
36-
{ label: 'Corporations', value: ApiOrganizationOrganizationTypesEnum.Corporations },
37-
{ label: 'NGO', value: ApiOrganizationOrganizationTypesEnum.Ngo }
38-
];
3922

4023
const Page = () => {
4124
const pathname = usePathname();
25+
const {organizationTypes} = useOrganizationTypes();
4226

4327
const params = useParams<{ entityType: string }>();
4428

hooks/useOrganizationTypes.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import { ApiOrganizationOrganizationTypesEnum } from '@/gql/generated/graphql';
2+
3+
export const useOrganizationTypes = () => {
4+
const organizationTypes = [
5+
{ label: 'State Government', value: ApiOrganizationOrganizationTypesEnum.StateGovernment },
6+
{ label: 'Union Territory Government', value: ApiOrganizationOrganizationTypesEnum.UnionTerritoryGovernment },
7+
{ label: 'Urban Local Body', value: ApiOrganizationOrganizationTypesEnum.UrbanLocalBody },
8+
{ label: 'Academic Institution', value: ApiOrganizationOrganizationTypesEnum.AcademicInstitution },
9+
{ label: 'Central Government', value: ApiOrganizationOrganizationTypesEnum.CentralGovernment },
10+
{ label: 'Citizens Group', value: ApiOrganizationOrganizationTypesEnum.CitizensGroup },
11+
{ label: 'Civil Society Organisation', value: ApiOrganizationOrganizationTypesEnum.CivilSocietyOrganisation },
12+
{ label: 'Industry Body', value: ApiOrganizationOrganizationTypesEnum.IndustryBody },
13+
{ label: 'Media Organisation', value: ApiOrganizationOrganizationTypesEnum.MediaOrganisation },
14+
{ label: 'Open Data Technology Community', value: ApiOrganizationOrganizationTypesEnum.OpenDataTechnologyCommunity },
15+
{ label: 'Private Company', value: ApiOrganizationOrganizationTypesEnum.PrivateCompany },
16+
{ label: 'Public Sector Company', value: ApiOrganizationOrganizationTypesEnum.PublicSectorCompany },
17+
{ label: 'Others', value: ApiOrganizationOrganizationTypesEnum.Others },
18+
{ label: 'Startup', value: ApiOrganizationOrganizationTypesEnum.Startup },
19+
{ label: 'Government', value: ApiOrganizationOrganizationTypesEnum.Government },
20+
{ label: 'Corporations', value: ApiOrganizationOrganizationTypesEnum.Corporations },
21+
{ label: 'NGO', value: ApiOrganizationOrganizationTypesEnum.Ngo }
22+
];
23+
24+
return { organizationTypes };
25+
};

0 commit comments

Comments
 (0)