Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit69e963b

Browse files
authored
refactor: move dashboard functionality to modules/dashboard/ (#11721)
1 parent14f114b commit69e963b

File tree

68 files changed

+249
-230
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+249
-230
lines changed

‎site/package.json

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -170,10 +170,9 @@
170170
"vite-plugin-turbosnap":"1.0.2"
171171
},
172172
"browserslist": [
173-
"chrome 66",
174-
"firefox 63",
175-
"edge 79",
176-
"safari 15.4"
173+
"chrome 110",
174+
"firefox 111",
175+
"safari 16.0"
177176
],
178177
"resolutions": {
179178
"optionator":"0.9.3",

‎site/src/AppRouter.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ import {
55
BrowserRouterasRouter,
66
Navigate,
77
}from"react-router-dom";
8+
import{DashboardLayout}from"./modules/dashboard/DashboardLayout";
89
import{RequireAuth}from"./contexts/auth/RequireAuth";
9-
import{DashboardLayout}from"./components/Dashboard/DashboardLayout";
1010
import{FullScreenLoader}from"./components/Loader/FullScreenLoader";
1111
importAuditPagefrom"./pages/AuditPage/AuditPage";
1212
import{DeploySettingsLayout}from"./pages/DeploySettingsPage/DeploySettingsLayout";

‎site/src/components/WorkspaceStatusBadge/DormantDeletionText.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import{typeFC}from"react";
22
importtype{Workspace}from"api/typesGenerated";
33
import{displayDormantDeletion}from"utils/dormant";
4-
import{useDashboard}from"components/Dashboard/DashboardProvider";
4+
import{useDashboard}from"modules/dashboard/useDashboard";
55

66
interfaceDormantDeletionTextProps{
77
workspace:Workspace;

‎site/src/components/WorkspaceStatusBadge/WorkspaceStatusBadge.stories.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import {
1515
MockAppearanceConfig,
1616
}from"testHelpers/entities";
1717
import{WorkspaceStatusBadge}from"./WorkspaceStatusBadge";
18-
import{DashboardProviderContext}from"components/Dashboard/DashboardProvider";
18+
import{DashboardContext}from"modules/dashboard/DashboardProvider";
1919
importtype{Meta,StoryObj}from"@storybook/react";
2020

2121
constMockedAppearance={
@@ -29,7 +29,7 @@ const meta: Meta<typeof WorkspaceStatusBadge> = {
2929
component:WorkspaceStatusBadge,
3030
decorators:[
3131
(Story)=>(
32-
<DashboardProviderContext.Provider
32+
<DashboardContext.Provider
3333
value={{
3434
buildInfo:MockBuildInfo,
3535
entitlements:MockEntitlementsWithScheduling,
@@ -38,7 +38,7 @@ const meta: Meta<typeof WorkspaceStatusBadge> = {
3838
}}
3939
>
4040
<Story/>
41-
</DashboardProviderContext.Provider>
41+
</DashboardContext.Provider>
4242
),
4343
],
4444
};

‎site/src/contexts/auth/RequireAuth.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { Outlet, Navigate, useLocation } from "react-router-dom";
44
import{embedRedirect}from"utils/redirect";
55
import{isApiError}from"api/errors";
66
import{ProxyProvider}from"contexts/ProxyContext";
7-
import{DashboardProvider}from"components/Dashboard/DashboardProvider";
7+
import{DashboardProvider}from"modules/dashboard/DashboardProvider";
88
import{FullScreenLoader}from"components/Loader/FullScreenLoader";
99
import{useAuth}from"./useAuth";
1010

‎site/src/hooks/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
export*from"./useClickable";
22
export*from"./useClickableTableRow";
33
export*from"./useClipboard";
4-
export*from"./useFeatureVisibility";
54
export*from"./usePagination";
65
export*from"./useTab";

‎site/src/components/Dashboard/DashboardLayout.tsxrenamed to‎site/src/modules/dashboard/DashboardLayout.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ import Button from "@mui/material/Button";
44
importInfoOutlinedfrom"@mui/icons-material/InfoOutlined";
55
import{typeFC,typeHTMLAttributes,Suspense}from"react";
66
import{Outlet}from"react-router-dom";
7+
import{LicenseBanner}from"modules/dashboard/LicenseBanner/LicenseBanner";
8+
import{ServiceBanner}from"modules/dashboard/ServiceBanner/ServiceBanner";
79
import{usePermissions}from"contexts/auth/usePermissions";
8-
import{LicenseBanner}from"components/Dashboard/LicenseBanner/LicenseBanner";
910
import{Loader}from"components/Loader/Loader";
10-
import{ServiceBanner}from"components/Dashboard/ServiceBanner/ServiceBanner";
1111
import{dashboardContentBottomPadding}from"theme/constants";
1212
import{docs}from"utils/docs";
1313
import{Navbar}from"./Navbar/Navbar";

‎site/src/components/Dashboard/DashboardProvider.tsxrenamed to‎site/src/modules/dashboard/DashboardProvider.tsx

Lines changed: 6 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import {
1414
typePropsWithChildren,
1515
createContext,
1616
useCallback,
17-
useContext,
1817
useState,
1918
}from"react";
2019
import{appearance}from"api/queries/appearance";
@@ -27,16 +26,16 @@ interface Appearance {
2726
setPreview:(config:AppearanceConfig)=>void;
2827
}
2928

30-
interfaceDashboardProviderValue{
29+
exportinterfaceDashboardValue{
3130
buildInfo:BuildInfoResponse;
3231
entitlements:Entitlements;
3332
experiments:Experiments;
3433
appearance:Appearance;
3534
}
3635

37-
exportconstDashboardProviderContext=createContext<
38-
DashboardProviderValue|undefined
39-
>(undefined);
36+
exportconstDashboardContext=createContext<DashboardValue|undefined>(
37+
undefined,
38+
);
4039

4140
exportconstDashboardProvider:FC<PropsWithChildren>=({ children})=>{
4241
constbuildInfoQuery=useQuery(buildInfo());
@@ -83,7 +82,7 @@ export const DashboardProvider: FC<PropsWithChildren> = ({ children }) => {
8382
}
8483

8584
return(
86-
<DashboardProviderContext.Provider
85+
<DashboardContext.Provider
8786
value={{
8887
buildInfo:buildInfoQuery.data,
8988
entitlements:entitlementsQuery.data,
@@ -96,23 +95,6 @@ export const DashboardProvider: FC<PropsWithChildren> = ({ children }) => {
9695
}}
9796
>
9897
{children}
99-
</DashboardProviderContext.Provider>
98+
</DashboardContext.Provider>
10099
);
101100
};
102-
103-
exportconstuseDashboard=():DashboardProviderValue=>{
104-
constcontext=useContext(DashboardProviderContext);
105-
106-
if(!context){
107-
thrownewError(
108-
"useDashboard only can be used inside of DashboardProvider",
109-
);
110-
}
111-
112-
returncontext;
113-
};
114-
115-
exportconstuseIsWorkspaceActionsEnabled=():boolean=>{
116-
const{ entitlements}=useDashboard();
117-
returnentitlements.features["advanced_template_scheduling"].enabled;
118-
};

‎site/src/components/Dashboard/LicenseBanner/LicenseBanner.tsxrenamed to‎site/src/modules/dashboard/LicenseBanner/LicenseBanner.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import{typeFC}from"react";
2-
import{useDashboard}from"components/Dashboard/DashboardProvider";
2+
import{useDashboard}from"modules/dashboard/useDashboard";
33
import{LicenseBannerView}from"./LicenseBannerView";
44

55
exportconstLicenseBanner:FC=()=>{

‎site/src/components/Dashboard/Navbar/Navbar.tsxrenamed to‎site/src/modules/dashboard/Navbar/Navbar.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ import { useAuth } from "contexts/auth/useAuth";
33
import{useMe}from"contexts/auth/useMe";
44
import{usePermissions}from"contexts/auth/usePermissions";
55
import{useProxy}from"contexts/ProxyContext";
6-
import{useDashboard}from"components/Dashboard/DashboardProvider";
7-
import{useFeatureVisibility}from"hooks/useFeatureVisibility";
6+
import{useDashboard}from"modules/dashboard/useDashboard";
7+
import{useFeatureVisibility}from"../useFeatureVisibility";
88
import{NavbarView}from"./NavbarView";
99

1010
exportconstNavbar:FC=()=>{

‎site/src/components/Dashboard/ServiceBanner/ServiceBanner.tsxrenamed to‎site/src/modules/dashboard/ServiceBanner/ServiceBanner.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import{typeFC}from"react";
2-
import{useDashboard}from"components/Dashboard/DashboardProvider";
2+
import{useDashboard}from"modules/dashboard/useDashboard";
33
import{ServiceBannerView}from"./ServiceBannerView";
44

55
exportconstServiceBanner:FC=()=>{
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import{useContext}from"react";
2+
import{DashboardContext,typeDashboardValue}from"./DashboardProvider";
3+
4+
exportconstuseDashboard=():DashboardValue=>{
5+
constcontext=useContext(DashboardContext);
6+
7+
if(!context){
8+
thrownewError(
9+
"useDashboard only can be used inside of DashboardProvider",
10+
);
11+
}
12+
13+
returncontext;
14+
};

‎site/src/hooks/useFeatureVisibility.tsrenamed to‎site/src/modules/dashboard/useFeatureVisibility.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import{FeatureName}from"api/typesGenerated";
2-
import{useDashboard}from"components/Dashboard/DashboardProvider";
2+
import{useDashboard}from"./useDashboard";
33
import{selectFeatureVisibility}from"utils/entitlements";
44

55
exportconstuseFeatureVisibility=():Record<FeatureName,boolean>=>{

‎site/src/components/Dashboard/useUpdateCheck.test.tsxrenamed to‎site/src/modules/dashboard/useUpdateCheck.test.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import{act,renderHook,waitFor}from"@testing-library/react";
2-
import{useUpdateCheck}from"./useUpdateCheck";
3-
import{QueryClient,QueryClientProvider}from"react-query";
42
import{typeFC,typePropsWithChildren}from"react";
3+
import{QueryClient,QueryClientProvider}from"react-query";
54
import{rest}from"msw";
65
import{MockUpdateCheck}from"testHelpers/entities";
76
import{server}from"testHelpers/server";
7+
import{useUpdateCheck}from"./useUpdateCheck";
88

99
constcreateWrapper=():FC<PropsWithChildren>=>{
1010
constqueryClient=newQueryClient();

‎site/src/pages/AuditPage/AuditPage.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
import{isNonInitialPage}from"components/PaginationWidget/utils";
2-
import{useFeatureVisibility}from"hooks/useFeatureVisibility";
3-
import{FC}from"react";
1+
import{typeFC}from"react";
42
import{Helmet}from"react-helmet-async";
53
import{useSearchParams}from"react-router-dom";
4+
import{useFeatureVisibility}from"modules/dashboard/useFeatureVisibility";
65
import{pageTitle}from"utils/page";
7-
import{AuditPageView}from"./AuditPageView";
6+
import{paginatedAudits}from"api/queries/audits";
7+
import{usePaginatedQuery}from"hooks/usePaginatedQuery";
88
import{useUserFilterMenu}from"components/Filter/UserFilter";
9+
import{isNonInitialPage}from"components/PaginationWidget/utils";
910
import{useFilter}from"components/Filter/filter";
1011
import{useActionFilterMenu,useResourceTypeFilterMenu}from"./AuditFilter";
11-
import{usePaginatedQuery}from"hooks/usePaginatedQuery";
12-
import{paginatedAudits}from"api/queries/audits";
12+
import{AuditPageView}from"./AuditPageView";
1313

1414
constAuditPage:FC=()=>{
1515
const{audit_log:isAuditLogVisible}=useFeatureVisibility();

‎site/src/pages/CreateTemplatePage/DuplicateTemplateView.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ import {
1010
createTemplate,
1111
}from"api/queries/templates";
1212
import{useOrganizationId}from"contexts/auth/useOrganizationId";
13+
import{useDashboard}from"modules/dashboard/useDashboard";
1314
import{ErrorAlert}from"components/Alert/ErrorAlert";
1415
import{Loader}from"components/Loader/Loader";
15-
import{useDashboard}from"components/Dashboard/DashboardProvider";
1616
import{CreateTemplateForm}from"./CreateTemplateForm";
1717
import{firstVersionFromFile,getFormPermissions,newTemplate}from"./utils";
1818

‎site/src/pages/CreateTemplatePage/ImportStarterTemplateView.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import {
99
templateVersionVariables,
1010
}from"api/queries/templates";
1111
import{useOrganizationId}from"contexts/auth/useOrganizationId";
12+
import{useDashboard}from"modules/dashboard/useDashboard";
1213
import{ErrorAlert}from"components/Alert/ErrorAlert";
1314
import{Loader}from"components/Loader/Loader";
14-
import{useDashboard}from"components/Dashboard/DashboardProvider";
1515
import{CreateTemplateForm}from"./CreateTemplateForm";
1616
import{
1717
firstVersionFromExample,

‎site/src/pages/CreateTemplatePage/UploadTemplateView.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
}from"api/queries/templates";
99
import{uploadFile}from"api/queries/files";
1010
import{useOrganizationId}from"contexts/auth/useOrganizationId";
11-
import{useDashboard}from"components/Dashboard/DashboardProvider";
11+
import{useDashboard}from"modules/dashboard/useDashboard";
1212
import{CreateTemplateForm}from"./CreateTemplateForm";
1313
import{firstVersionFromFile,getFormPermissions,newTemplate}from"./utils";
1414

‎site/src/pages/DeploySettingsPage/AppearanceSettingsPage/AppearanceSettingsPage.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
import{UpdateAppearanceConfig}from"api/typesGenerated";
2-
import{useDashboard}from"components/Dashboard/DashboardProvider";
3-
import{FC}from"react";
1+
import{typeFC}from"react";
42
import{Helmet}from"react-helmet-async";
5-
import{pageTitle}from"utils/page";
6-
import{AppearanceSettingsPageView}from"./AppearanceSettingsPageView";
73
import{useMutation,useQueryClient}from"react-query";
4+
importtype{UpdateAppearanceConfig}from"api/typesGenerated";
5+
import{useDashboard}from"modules/dashboard/useDashboard";
6+
import{pageTitle}from"utils/page";
87
import{updateAppearance}from"api/queries/appearance";
98
import{getErrorMessage}from"api/errors";
109
import{displayError,displaySuccess}from"components/GlobalSnackbar/utils";
10+
import{AppearanceSettingsPageView}from"./AppearanceSettingsPageView";
1111

1212
// ServiceBanner is unlike the other Deployment Settings pages because it
1313
// implements a form, whereas the others are read-only. We make this

‎site/src/pages/DeploySettingsPage/OAuth2AppsSettingsPage/OAuth2AppsSettingsPage.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
import{typeFC}from"react";
2+
import{Helmet}from"react-helmet-async";
13
import{useQuery}from"react-query";
24
import{getApps}from"api/queries/oauth2";
3-
import{useDashboard}from"components/Dashboard/DashboardProvider";
4-
import{FC}from"react";
5-
import{Helmet}from"react-helmet-async";
5+
import{useDashboard}from"modules/dashboard/useDashboard";
66
import{pageTitle}from"utils/page";
77
importOAuth2AppsSettingsPageViewfrom"./OAuth2AppsSettingsPageView";
88

‎site/src/pages/DeploySettingsPage/ObservabilitySettingsPage/ObservabilitySettingsPage.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import{typeFC}from"react";
22
import{Helmet}from"react-helmet-async";
33
import{pageTitle}from"utils/page";
4-
import{useDashboard}from"components/Dashboard/DashboardProvider";
4+
import{useDashboard}from"modules/dashboard/useDashboard";
55
import{useDeploySettings}from"../DeploySettingsLayout";
66
import{ObservabilitySettingsPageView}from"./ObservabilitySettingsPageView";
77

‎site/src/pages/DeploySettingsPage/SecuritySettingsPage/SecuritySettingsPage.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import{typeFC}from"react";
22
import{Helmet}from"react-helmet-async";
33
import{pageTitle}from"utils/page";
4-
import{useDashboard}from"components/Dashboard/DashboardProvider";
4+
import{useDashboard}from"modules/dashboard/useDashboard";
55
import{SecuritySettingsPageView}from"./SecuritySettingsPageView";
66
import{useDeploySettings}from"../DeploySettingsLayout";
77

‎site/src/pages/GroupsPage/GroupsPage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ import { getErrorMessage } from "api/errors";
55
import{groups}from"api/queries/groups";
66
import{useOrganizationId}from"contexts/auth/useOrganizationId";
77
import{usePermissions}from"contexts/auth/usePermissions";
8-
import{useFeatureVisibility}from"hooks/useFeatureVisibility";
9-
import{pageTitle}from"utils/page";
8+
import{useFeatureVisibility}from"modules/dashboard/useFeatureVisibility";
109
import{displayError}from"components/GlobalSnackbar/utils";
10+
import{pageTitle}from"utils/page";
1111
importGroupsPageViewfrom"./GroupsPageView";
1212

1313
exportconstGroupsPage:FC=()=>{

‎site/src/pages/HealthPage/AccessURLPage.stories.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ const meta: Meta = {
1313
exportdefaultmeta;
1414
typeStory=StoryObj;
1515

16-
exportconstDefault:Story={};
16+
constExample:Story={};
17+
18+
export{ExampleasAccessURL};

‎site/src/pages/HealthPage/DERPPage.stories.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ const meta: Meta = {
1313
exportdefaultmeta;
1414
typeStory=StoryObj;
1515

16-
exportconstDefault:Story={};
16+
constExample:Story={};
17+
18+
export{ExampleasDERP};

‎site/src/pages/HealthPage/DERPRegionPage.stories.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,6 @@ const meta: Meta = {
1818
exportdefaultmeta;
1919
typeStory=StoryObj;
2020

21-
exportconstDefault:Story={};
21+
constExample:Story={};
22+
23+
export{ExampleasDERPRegion};

‎site/src/pages/HealthPage/DatabasePage.stories.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ const meta: Meta = {
1313
exportdefaultmeta;
1414
typeStory=StoryObj;
1515

16-
exportconstDefault:Story={};
16+
constExample:Story={};
17+
18+
export{ExampleasDatabase};

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp