Skip to content

Commit 4ff61fc

Browse files
authored
refactor(console): infer RegionResponse type locally (#8037)
infer RegionResponse type locally
1 parent ae3185d commit 4ff61fc

File tree

4 files changed

+8
-4
lines changed

4 files changed

+8
-4
lines changed

packages/console/src/cloud/types/router.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,4 +65,8 @@ export type TenantMemberResponse = GetArrayElementType<
6565
export type TenantInvitationResponse = GetArrayElementType<
6666
GuardedResponse<GetTenantAuthRoutes['/api/tenants/:tenantId/invitations']>
6767
>;
68+
69+
export type RegionResponse = GetArrayElementType<
70+
GuardedResponse<GetRoutes['/api/me/regions']>['regions']
71+
>;
6872
// End of the auth routes types

packages/console/src/components/CreateTenantModal/index.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { type RegionResponse as RegionType } from '@logto/cloud/routes';
21
import { Theme, TenantTag } from '@logto/schemas';
32
import { condArray } from '@silverhand/essentials';
43
import { useCallback, useMemo, useState } from 'react';
@@ -10,7 +9,7 @@ import Modal from 'react-modal';
109
import CreateTenantHeaderIconDark from '@/assets/icons/create-tenant-header-dark.svg?react';
1110
import CreateTenantHeaderIcon from '@/assets/icons/create-tenant-header.svg?react';
1211
import { useCloudApi } from '@/cloud/hooks/use-cloud-api';
13-
import { type TenantResponse } from '@/cloud/types/router';
12+
import { type TenantResponse, type RegionResponse as RegionType } from '@/cloud/types/router';
1413
import Region, {
1514
defaultRegionName,
1615
logtoDropdownItem,

packages/console/src/components/Region/index.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import { type RegionResponse as RegionType } from '@logto/cloud/routes';
21
import { TenantTag } from '@logto/schemas';
32
import classNames from 'classnames';
43
import { useMemo, type FunctionComponent } from 'react';
54
import { useTranslation } from 'react-i18next';
65

6+
import { type RegionResponse as RegionType } from '@/cloud/types/router';
7+
78
import auFlag from './assets/au.svg?react';
89
import euFlag from './assets/eu.svg?react';
910
import jpFlag from './assets/jp.svg?react';

packages/console/src/hooks/use-available-regions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import { type RegionResponse as RegionType } from '@logto/cloud/routes';
21
import { useCallback } from 'react';
32
import useSWRImmutable from 'swr/immutable';
43

54
import { useCloudApi } from '@/cloud/hooks/use-cloud-api';
5+
import { type RegionResponse as RegionType } from '@/cloud/types/router';
66

77
/** Checks if a region is a development-only region based on its name. */
88
export const isDevOnlyRegion = (regionName?: string): boolean =>

0 commit comments

Comments
 (0)