Skip to content

Commit 76505d9

Browse files
committed
chore(ws): enforce component specific imports
Signed-off-by: paulovmr <[email protected]>
1 parent e76308a commit 76505d9

File tree

72 files changed

+376
-332
lines changed

Some content is hidden

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

72 files changed

+376
-332
lines changed

workspaces/frontend/.eslintrc.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,28 @@ module.exports = {
208208
name: 'react-router',
209209
message: 'Use react-router-dom instead.',
210210
},
211+
{
212+
name: '@patternfly/react-core',
213+
message:
214+
'Use specific component imports: @patternfly/react-core/dist/esm/components/ComponentName',
215+
},
216+
{
217+
name: '@patternfly/react-table',
218+
message:
219+
'Use specific component imports: @patternfly/react-table/dist/esm/components/ComponentName',
220+
},
221+
{
222+
name: '@patternfly/react-icons',
223+
message: 'Use specific icon imports: @patternfly/react-icons/dist/esm/icons/IconName',
224+
},
225+
{
226+
name: 'date-fns',
227+
message: 'Use specific function imports: date-fns/functionName',
228+
},
229+
{
230+
name: 'lodash',
231+
message: 'Use specific function imports: lodash/functionName',
232+
},
211233
],
212234
},
213235
],

workspaces/frontend/src/app/App.tsx

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
11
import React, { useEffect } from 'react';
22
import '@patternfly/react-core/dist/styles/base.css';
33
import './app.css';
4+
import { Brand } from '@patternfly/react-core/dist/esm/components/Brand';
5+
import { Flex } from '@patternfly/react-core/dist/esm/layouts/Flex';
46
import {
5-
Brand,
6-
Flex,
77
Masthead,
88
MastheadBrand,
99
MastheadContent,
1010
MastheadLogo,
1111
MastheadMain,
1212
MastheadToggle,
13-
Page,
14-
PageToggleButton,
15-
Title,
16-
} from '@patternfly/react-core';
17-
import { BarsIcon } from '@patternfly/react-icons';
13+
} from '@patternfly/react-core/dist/esm/components/Masthead';
14+
import { Page, PageToggleButton } from '@patternfly/react-core/dist/esm/components/Page';
15+
import { Title } from '@patternfly/react-core/dist/esm/components/Title';
16+
import { BarsIcon } from '@patternfly/react-icons/dist/esm/icons/bars-icon';
1817
import ErrorBoundary from '~/app/error/ErrorBoundary';
1918
import NamespaceSelector from '~/shared/components/NamespaceSelector';
2019
import logoDarkTheme from '~/images/logo-dark-theme.svg';

workspaces/frontend/src/app/EnsureAPIAvailability.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import React from 'react';
2-
import { Bullseye, Spinner } from '@patternfly/react-core';
2+
import { Bullseye } from '@patternfly/react-core/dist/esm/layouts/Bullseye';
3+
import { Spinner } from '@patternfly/react-core/dist/esm/components/Spinner';
34
import { useNotebookAPI } from './hooks/useNotebookAPI';
45

56
interface EnsureAPIAvailabilityProps {

workspaces/frontend/src/app/NavSidebar.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
import React, { useState } from 'react';
22
import { NavLink } from 'react-router-dom';
3+
import { Brand } from '@patternfly/react-core/dist/esm/components/Brand';
34
import {
4-
Brand,
55
Nav,
66
NavExpandable,
77
NavItem,
88
NavList,
9-
PageSidebar,
10-
PageSidebarBody,
11-
} from '@patternfly/react-core';
9+
} from '@patternfly/react-core/dist/esm/components/Nav';
10+
import { PageSidebar, PageSidebarBody } from '@patternfly/react-core/dist/esm/components/Page';
1211
import { useTypedLocation } from '~/app/routerHelper';
1312
import { useNavData, isNavDataGroup, NavDataHref, NavDataGroup } from './AppRoutes';
1413
import { isMUITheme, LOGO_LIGHT } from './const';

workspaces/frontend/src/app/components/LoadError.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import * as React from 'react';
2-
import { Alert, Bullseye } from '@patternfly/react-core';
2+
import { Alert } from '@patternfly/react-core/dist/esm/components/Alert';
3+
import { Bullseye } from '@patternfly/react-core/dist/esm/layouts/Bullseye';
34

45
interface LoadErrorProps {
56
error: Error;

workspaces/frontend/src/app/components/LoadingSpinner.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import * as React from 'react';
2-
import { Bullseye, Spinner } from '@patternfly/react-core';
2+
import { Bullseye } from '@patternfly/react-core/dist/esm/layouts/Bullseye';
3+
import { Spinner } from '@patternfly/react-core/dist/esm/components/Spinner';
34

45
// TODO: simple LoadingSpinner component -- we should improve this later
56

workspaces/frontend/src/app/components/ThemeAwareSearchInput.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import React from 'react';
2-
import { SearchInput, SearchInputProps, TextInput } from '@patternfly/react-core';
2+
import {
3+
SearchInput,
4+
SearchInputProps,
5+
} from '@patternfly/react-core/dist/esm/components/SearchInput';
6+
import { TextInput } from '@patternfly/react-core/dist/esm/components/TextInput';
37
import FormFieldset from 'app/components/FormFieldset';
48
import { isMUITheme } from 'app/const';
59

workspaces/frontend/src/app/components/ValidationErrorAlert.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import React from 'react';
2-
import { Alert, List, ListItem } from '@patternfly/react-core';
2+
import { Alert } from '@patternfly/react-core/dist/esm/components/Alert';
3+
import { List, ListItem } from '@patternfly/react-core/dist/esm/components/List';
34
import { ValidationError } from '~/shared/api/backendApiTypes';
45

56
interface ValidationErrorAlertProps {

workspaces/frontend/src/app/components/WorkspaceTable.tsx

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
import React, { useCallback, useImperativeHandle, useMemo, useRef, useState } from 'react';
2+
import { PageSection } from '@patternfly/react-core/dist/esm/components/Page';
23
import {
3-
PageSection,
44
TimestampTooltipVariant,
55
Timestamp,
6-
Label,
6+
} from '@patternfly/react-core/dist/esm/components/Timestamp';
7+
import { Label } from '@patternfly/react-core/dist/esm/components/Label';
8+
import {
79
PaginationVariant,
810
Pagination,
9-
Content,
10-
Tooltip,
11-
Bullseye,
12-
Button,
13-
Icon,
14-
} from '@patternfly/react-core';
11+
} from '@patternfly/react-core/dist/esm/components/Pagination';
12+
import { Content } from '@patternfly/react-core/dist/esm/components/Content';
13+
import { Tooltip } from '@patternfly/react-core/dist/esm/components/Tooltip';
14+
import { Bullseye } from '@patternfly/react-core/dist/esm/layouts/Bullseye';
15+
import { Button } from '@patternfly/react-core/dist/esm/components/Button';
16+
import { Icon } from '@patternfly/react-core/dist/esm/components/Icon';
1517
import {
1618
Table,
1719
Thead,
@@ -22,14 +24,12 @@ import {
2224
ThProps,
2325
ActionsColumn,
2426
IActions,
25-
} from '@patternfly/react-table';
26-
import {
27-
InfoCircleIcon,
28-
ExclamationTriangleIcon,
29-
TimesCircleIcon,
30-
QuestionCircleIcon,
31-
} from '@patternfly/react-icons';
32-
import { formatDistanceToNow } from 'date-fns';
27+
} from '@patternfly/react-table/dist/esm/components/Table';
28+
import { InfoCircleIcon } from '@patternfly/react-icons/dist/esm/icons/info-circle-icon';
29+
import { ExclamationTriangleIcon } from '@patternfly/react-icons/dist/esm/icons/exclamation-triangle-icon';
30+
import { TimesCircleIcon } from '@patternfly/react-icons/dist/esm/icons/times-circle-icon';
31+
import { QuestionCircleIcon } from '@patternfly/react-icons/dist/esm/icons/question-circle-icon';
32+
import { formatDistanceToNow } from 'date-fns/formatDistanceToNow';
3333
import { Workspace, WorkspaceState } from '~/shared/api/backendApiTypes';
3434
import {
3535
DataFieldKey,

workspaces/frontend/src/app/context/WorkspaceActionsContext.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import React, { useCallback, useContext, useEffect, useMemo, useState } from 'react';
2-
import { Drawer, DrawerContent, DrawerContentBody } from '@patternfly/react-core';
2+
import {
3+
Drawer,
4+
DrawerContent,
5+
DrawerContentBody,
6+
} from '@patternfly/react-core/dist/esm/components/Drawer';
37
import { useNamespaceContext } from '~/app/context/NamespaceContextProvider';
48
import { useNotebookAPI } from '~/app/hooks/useNotebookAPI';
59
import { WorkspaceDetails } from '~/app/pages/Workspaces/Details/WorkspaceDetails';

0 commit comments

Comments
 (0)