diff --git a/.cursor/rules/antd-components.mdc b/.cursor/rules/antd-components.mdc new file mode 100644 index 00000000..7db5eb05 --- /dev/null +++ b/.cursor/rules/antd-components.mdc @@ -0,0 +1,237 @@ +--- +alwaysApply: true +--- +# Ant Design Import Rules for Worklenz + +## 🚨 CRITICAL: Always Use Centralized Imports + +**NEVER import Ant Design components directly from 'antd' or '@ant-design/icons'** + +### ✅ Correct Import Pattern +```typescript +import { Button, Input, Select, EditOutlined, PlusOutlined } from '@antd-imports'; +// or +import { Button, Input, Select, EditOutlined, PlusOutlined } from '@/shared/antd-imports'; +``` + +### ❌ Forbidden Import Patterns +```typescript +// NEVER do this: +import { Button, Input, Select } from 'antd'; +import { EditOutlined, PlusOutlined } from '@ant-design/icons'; +``` + +## Why This Rule Exists + +### Benefits of Centralized Imports: +- **Better Tree-Shaking**: Optimized bundle size through centralized management +- **Consistent React Context**: Proper context sharing across components +- **Type Safety**: Centralized TypeScript definitions +- **Maintainability**: Single source of truth for all Ant Design imports +- **Performance**: Reduced bundle size and improved loading times + +## What's Available in `@antd-imports` + +### Core Components +- **Layout**: Layout, Row, Col, Flex, Divider, Space +- **Navigation**: Menu, Tabs, Breadcrumb, Pagination +- **Data Entry**: Input, Select, DatePicker, TimePicker, Form, Checkbox, InputNumber +- **Data Display**: Table, List, Card, Tag, Avatar, Badge, Progress, Statistic +- **Feedback**: Modal, Drawer, Alert, Message, Notification, Spin, Skeleton, Result +- **Other**: Button, Typography, Tooltip, Popconfirm, Dropdown, ConfigProvider + +### Icons +Common icons including: EditOutlined, DeleteOutlined, PlusOutlined, MoreOutlined, CheckOutlined, CloseOutlined, CalendarOutlined, UserOutlined, TeamOutlined, and many more. + +### Utilities +- **appMessage**: Centralized message utility +- **appNotification**: Centralized notification utility +- **antdConfig**: Default Ant Design configuration +- **taskManagementAntdConfig**: Task-specific configuration + +## Implementation Guidelines + +### When Creating New Components: +1. **Always** import from `@/shared/antd-imports` +2. Use `appMessage` and `appNotification` for user feedback +3. Apply `antdConfig` for consistent styling +4. Use `taskManagementAntdConfig` for task-related components + +### When Refactoring Existing Code: +1. Replace direct 'antd' imports with `@/shared/antd-imports` +2. Replace direct '@ant-design/icons' imports with `@/shared/antd-imports` +3. Update any custom message/notification calls to use the utilities + +### File Location +The centralized import file is located at: `worklenz-frontend/src/shared/antd-imports.ts` + +## Examples + +### Component Creation +```typescript +import React from 'react'; +import { Button, Input, Modal, EditOutlined, appMessage } from '@antd-imports'; + +const MyComponent = () => { + const handleClick = () => { + appMessage.success('Operation completed!'); + }; + + return ( + + ); +}; +``` + +### Form Implementation +```typescript +import { Form, Input, Select, Button, DatePicker } from '@antd-imports'; + +const MyForm = () => { + return ( +
+ + + + + + + + ({ - value: option, - text: option.toString(), + value: option.value, + label: option.value.toString(), + disabled: option.disabled, }))} onChange={setSelectedSeatCount} /> @@ -365,31 +371,31 @@ const UpgradePlans = () => { - + {/* Free Plan */} {t('freePlan')}} + title={{t('freePlan', 'Free Plan')}} onClick={() => setSelectedCard(paddlePlans.FREE)} >
$ 0.00 - {t('freeForever')} + {t('freeForever', 'Free Forever')} - {t('bestForPersonalUse')} + {t('bestForPersonalUse', 'Best for Personal Use')}
- {renderFeature(`${plans.free_tier_storage} ${t('storage')}`)} - {renderFeature(`${plans.projects_limit} ${t('projects')}`)} - {renderFeature(`${plans.team_member_limit} ${t('teamMembers')}`)} + {renderFeature(`${plans.free_tier_storage} ${t('storage', 'Storage')}`)} + {renderFeature(`${plans.projects_limit} ${t('projects', 'Projects')}`)} + {renderFeature(`${plans.team_member_limit} ${t('teamMembers', 'Team Members')}`)}
@@ -401,9 +407,9 @@ const UpgradePlans = () => { hoverable title={ - {t('annualPlan')}{' '} + {t('annualPlan', 'Annual Plan')}{' '} - {t('tag')} + {t('tag', 'Popular')} } @@ -429,16 +435,16 @@ const UpgradePlans = () => {
- {t('billedAnnually')} + {t('billedAnnually', 'Billed Annually')}
- {renderFeature(t('startupText01'))} - {renderFeature(t('startupText02'))} - {renderFeature(t('startupText03'))} - {renderFeature(t('startupText04'))} - {renderFeature(t('startupText05'))} + {renderFeature(t('startupText01', 'Unlimited Projects'))} + {renderFeature(t('startupText02', 'Unlimited Team Members'))} + {renderFeature(t('startupText03', 'Unlimited Storage'))} + {renderFeature(t('startupText04', 'Priority Support'))} + {renderFeature(t('startupText05', 'Advanced Analytics'))}
@@ -448,7 +454,7 @@ const UpgradePlans = () => { {t('monthlyPlan')}} + title={{t('monthlyPlan', 'Monthly Plan')}} onClick={() => setSelectedCard(paddlePlans.MONTHLY)} >
@@ -469,16 +475,16 @@ const UpgradePlans = () => { - {t('billedMonthly')} + {t('billedMonthly', 'Billed Monthly')}
- {renderFeature(t('startupText01'))} - {renderFeature(t('startupText02'))} - {renderFeature(t('startupText03'))} - {renderFeature(t('startupText04'))} - {renderFeature(t('startupText05'))} + {renderFeature(t('startupText01', 'Unlimited Projects'))} + {renderFeature(t('startupText02', 'Unlimited Team Members'))} + {renderFeature(t('startupText03', 'Unlimited Storage'))} + {renderFeature(t('startupText04', 'Priority Support'))} + {renderFeature(t('startupText05', 'Advanced Analytics'))}
@@ -509,8 +515,8 @@ const UpgradePlans = () => { disabled={billingInfo?.plan_id === plans.annual_plan_id} > {billingInfo?.status === SUBSCRIPTION_STATUS.ACTIVE - ? t('changeToPlan', { plan: t('annualPlan') }) - : t('continueWith', { plan: t('annualPlan') })} + ? t('changeToPlan', 'Change to {{plan}}', { plan: t('annualPlan', 'Annual Plan') }) + : t('continueWith', 'Continue with {{plan}}', { plan: t('annualPlan', 'Annual Plan') })} )} {selectedPlan === paddlePlans.MONTHLY && ( @@ -522,8 +528,8 @@ const UpgradePlans = () => { disabled={billingInfo?.plan_id === plans.monthly_plan_id} > {billingInfo?.status === SUBSCRIPTION_STATUS.ACTIVE - ? t('changeToPlan', { plan: t('monthlyPlan') }) - : t('continueWith', { plan: t('monthlyPlan') })} + ? t('changeToPlan', 'Change to {{plan}}', { plan: t('monthlyPlan', 'Monthly Plan') }) + : t('continueWith', 'Continue with {{plan}}', { plan: t('monthlyPlan', 'Monthly Plan') })} )} diff --git a/worklenz-frontend/src/components/admin-center/configuration/configuration.tsx b/worklenz-frontend/src/components/admin-center/configuration/configuration.tsx index afa5b51a..c01f82f9 100644 --- a/worklenz-frontend/src/components/admin-center/configuration/configuration.tsx +++ b/worklenz-frontend/src/components/admin-center/configuration/configuration.tsx @@ -1,5 +1,5 @@ -import { Button, Card, Col, Divider, Form, Input, notification, Row, Select } from 'antd'; -import React, { useEffect, useState } from 'react'; +import { Button, Card, Col, Divider, Form, Input, Row, Select } from '@/shared/antd-imports'; +import React, { useEffect, useState, useMemo, useCallback } from 'react'; import { RootState } from '../../../app/store'; import { useAppSelector } from '@/hooks/useAppSelector'; import { IBillingConfigurationCountry } from '@/types/admin-center/country.types'; @@ -7,14 +7,15 @@ import { adminCenterApiService } from '@/api/admin-center/admin-center.api.servi import { IBillingConfiguration } from '@/types/admin-center/admin-center.types'; import logger from '@/utils/errorLogger'; -const Configuration: React.FC = () => { +const Configuration: React.FC = React.memo(() => { const themeMode = useAppSelector((state: RootState) => state.themeReducer.mode); const [countries, setCountries] = useState([]); const [configuration, setConfiguration] = useState(); const [loading, setLoading] = useState(false); const [form] = Form.useForm(); - const fetchCountries = async () => { + + const fetchCountries = useCallback(async () => { try { const res = await adminCenterApiService.getCountries(); if (res.done) { @@ -23,61 +24,85 @@ const Configuration: React.FC = () => { } catch (error) { logger.error('Error fetching countries:', error); } - }; + }, []); - const fetchConfiguration = async () => { + const fetchConfiguration = useCallback(async () => { const res = await adminCenterApiService.getBillingConfiguration(); if (res.done) { setConfiguration(res.body); form.setFieldsValue(res.body); } - }; + }, [form]); useEffect(() => { fetchCountries(); fetchConfiguration(); - }, []); + }, [fetchCountries, fetchConfiguration]); - const handleSave = async (values: any) => { - try { - setLoading(true); - const res = await adminCenterApiService.updateBillingConfiguration(values); - if (res.done) { - fetchConfiguration(); + const handleSave = useCallback( + async (values: any) => { + try { + setLoading(true); + const res = await adminCenterApiService.updateBillingConfiguration(values); + if (res.done) { + fetchConfiguration(); + } + } catch (error) { + logger.error('Error updating configuration:', error); + } finally { + setLoading(false); } - } catch (error) { - logger.error('Error updating configuration:', error); - } finally { - setLoading(false); - } - }; + }, + [fetchConfiguration] + ); - const countryOptions = countries.map(country => ({ - label: country.name, - value: country.id, - })); + const countryOptions = useMemo( + () => + countries.map(country => ({ + label: country.name, + value: country.id, + })), + [countries] + ); + + const titleStyle = useMemo( + () => ({ + color: `${themeMode === 'dark' ? '#ffffffd9' : '#000000d9'}`, + fontWeight: 500, + fontSize: '16px', + display: 'flex', + gap: '4px', + }), + [themeMode] + ); + + const dividerTitleStyle = useMemo( + () => ({ + color: `${themeMode === 'dark' ? '#ffffffd9' : '#000000d9'}`, + fontWeight: 600, + fontSize: '16px', + display: 'flex', + gap: '4px', + }), + [themeMode] + ); + + const cardStyle = useMemo(() => ({ marginTop: '16px' }), []); + const colStyle = useMemo(() => ({ padding: '0 12px', height: '86px' }), []); + const dividerStyle = useMemo(() => ({ margin: '16px 0' }), []); + const buttonColStyle = useMemo(() => ({ paddingLeft: '12px' }), []); + + const handlePhoneInput = useCallback((e: React.FormEvent) => { + const input = e.target as HTMLInputElement; + input.value = input.value.replace(/[^0-9]/g, ''); + }, []); return (
- - Billing Details - - } - style={{ marginTop: '16px' }} - > + Billing Details} style={cardStyle}> - - + + { }, ]} > - + - + { }, ]} > - + - + { }, ]} > - { - const input = e.target as HTMLInputElement; // Type assertion to access 'value' - input.value = input.value.replace(/[^0-9]/g, ''); // Restrict non-numeric input - }} - /> + - - - Company Details - + + Company Details - - + + - + - + - - + + - + - - + + - + - @@ -212,6 +213,8 @@ const Configuration: React.FC = () => {
); -}; +}); + +Configuration.displayName = 'Configuration'; export default Configuration; diff --git a/worklenz-frontend/src/components/admin-center/overview/organization-admins-table/organization-admins-table.tsx b/worklenz-frontend/src/components/admin-center/overview/organization-admins-table/organization-admins-table.tsx index 4e757d28..b563f9e7 100644 --- a/worklenz-frontend/src/components/admin-center/overview/organization-admins-table/organization-admins-table.tsx +++ b/worklenz-frontend/src/components/admin-center/overview/organization-admins-table/organization-admins-table.tsx @@ -1,4 +1,4 @@ -import { Table, TableProps, Typography } from 'antd'; +import { Table, TableProps, Typography } from '@/shared/antd-imports'; import React, { useMemo } from 'react'; import { IOrganizationAdmin } from '@/types/admin-center/admin-center.types'; diff --git a/worklenz-frontend/src/components/admin-center/overview/organization-name/organization-name.tsx b/worklenz-frontend/src/components/admin-center/overview/organization-name/organization-name.tsx index 0a4a6b46..d86ea72d 100644 --- a/worklenz-frontend/src/components/admin-center/overview/organization-name/organization-name.tsx +++ b/worklenz-frontend/src/components/admin-center/overview/organization-name/organization-name.tsx @@ -1,9 +1,8 @@ import { adminCenterApiService } from '@/api/admin-center/admin-center.api.service'; import logger from '@/utils/errorLogger'; -import { EnterOutlined, EditOutlined } from '@ant-design/icons'; -import { Card, Button, Tooltip, Typography } from 'antd'; +import { EnterOutlined, EditOutlined } from '@/shared/antd-imports'; +import { Card, Button, Tooltip, Typography } from '@/shared/antd-imports'; import TextArea from 'antd/es/input/TextArea'; -import Paragraph from 'antd/es/typography/Paragraph'; import { TFunction } from 'i18next'; import { useState, useEffect } from 'react'; diff --git a/worklenz-frontend/src/components/admin-center/overview/organization-owner/organization-owner.tsx b/worklenz-frontend/src/components/admin-center/overview/organization-owner/organization-owner.tsx index 505f8f03..1a28cc42 100644 --- a/worklenz-frontend/src/components/admin-center/overview/organization-owner/organization-owner.tsx +++ b/worklenz-frontend/src/components/admin-center/overview/organization-owner/organization-owner.tsx @@ -1,8 +1,8 @@ import { adminCenterApiService } from '@/api/admin-center/admin-center.api.service'; import { IOrganization } from '@/types/admin-center/admin-center.types'; import logger from '@/utils/errorLogger'; -import { MailOutlined, PhoneOutlined, EditOutlined } from '@ant-design/icons'; -import { Card, Tooltip, Input, Button, Typography, InputRef } from 'antd'; +import { MailOutlined, PhoneOutlined, EditOutlined } from '@/shared/antd-imports'; +import { Card, Tooltip, Input, Button, Typography, InputRef } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { useEffect, useRef, useState } from 'react'; diff --git a/worklenz-frontend/src/components/admin-center/teams/add-team-drawer/add-team-drawer.tsx b/worklenz-frontend/src/components/admin-center/teams/add-team-drawer/add-team-drawer.tsx index 06a24da3..9626e09b 100644 --- a/worklenz-frontend/src/components/admin-center/teams/add-team-drawer/add-team-drawer.tsx +++ b/worklenz-frontend/src/components/admin-center/teams/add-team-drawer/add-team-drawer.tsx @@ -1,5 +1,5 @@ import React, { useRef, useState } from 'react'; -import { Button, Drawer, Form, Input, InputRef, Typography } from 'antd'; +import { Button, Drawer, Form, Input, InputRef, Typography } from '@/shared/antd-imports'; import { fetchTeams } from '@features/teams/teamSlice'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/admin-center/teams/settings-drawer/settings-drawer.tsx b/worklenz-frontend/src/components/admin-center/teams/settings-drawer/settings-drawer.tsx index ff8e8bc0..148899b7 100644 --- a/worklenz-frontend/src/components/admin-center/teams/settings-drawer/settings-drawer.tsx +++ b/worklenz-frontend/src/components/admin-center/teams/settings-drawer/settings-drawer.tsx @@ -11,7 +11,7 @@ import { TableProps, Typography, Tooltip, -} from 'antd'; +} from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import './settings-drawer.css'; diff --git a/worklenz-frontend/src/components/admin-center/teams/teams-table/teams-table.tsx b/worklenz-frontend/src/components/admin-center/teams/teams-table/teams-table.tsx index 91748681..1ea75af2 100644 --- a/worklenz-frontend/src/components/admin-center/teams/teams-table/teams-table.tsx +++ b/worklenz-frontend/src/components/admin-center/teams/teams-table/teams-table.tsx @@ -5,8 +5,8 @@ import { toggleSettingDrawer, deleteTeam, fetchTeams } from '@/features/teams/te import { useAppDispatch } from '@/hooks/useAppDispatch'; import { IOrganizationTeam } from '@/types/admin-center/admin-center.types'; import logger from '@/utils/errorLogger'; -import { SettingOutlined, DeleteOutlined } from '@ant-design/icons'; -import { Badge, Button, Card, Popconfirm, Table, TableProps, Tooltip, Typography } from 'antd'; +import { SettingOutlined, DeleteOutlined } from '@/shared/antd-imports'; +import { Badge, Button, Card, Popconfirm, Table, TableProps, Tooltip, Typography } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { useState } from 'react'; import { useMediaQuery } from 'react-responsive'; diff --git a/worklenz-frontend/src/components/avatars/avatars.tsx b/worklenz-frontend/src/components/avatars/avatars.tsx index bd3b160e..f33cdf6c 100644 --- a/worklenz-frontend/src/components/avatars/avatars.tsx +++ b/worklenz-frontend/src/components/avatars/avatars.tsx @@ -1,4 +1,4 @@ -import { Avatar, Tooltip } from 'antd'; +import { Avatar, Tooltip } from '@/shared/antd-imports'; import React, { useCallback, useMemo } from 'react'; import { InlineMember } from '@/types/teamMembers/inlineMember.types'; diff --git a/worklenz-frontend/src/components/board/board-assignee-selector/board-assignee-selector.tsx b/worklenz-frontend/src/components/board/board-assignee-selector/board-assignee-selector.tsx index 308b2482..27604a44 100644 --- a/worklenz-frontend/src/components/board/board-assignee-selector/board-assignee-selector.tsx +++ b/worklenz-frontend/src/components/board/board-assignee-selector/board-assignee-selector.tsx @@ -15,7 +15,7 @@ import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleProjectMemberDrawer } from '../../../features/projects/singleProject/members/projectMembersSlice'; import { colors } from '../../../styles/colors'; -import { PlusOutlined, UsergroupAddOutlined } from '@ant-design/icons'; +import { PlusOutlined, UsergroupAddOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import SingleAvatar from '@/components/common/single-avatar/single-avatar'; import { CheckboxChangeEvent } from 'antd/es/checkbox'; diff --git a/worklenz-frontend/src/components/board/changeCategoryDropdown/ChangeCategoryDropdown.tsx b/worklenz-frontend/src/components/board/changeCategoryDropdown/ChangeCategoryDropdown.tsx index 3e577c2e..1b5e59ba 100644 --- a/worklenz-frontend/src/components/board/changeCategoryDropdown/ChangeCategoryDropdown.tsx +++ b/worklenz-frontend/src/components/board/changeCategoryDropdown/ChangeCategoryDropdown.tsx @@ -1,9 +1,9 @@ -import { Badge, Card, Dropdown, Flex, Menu, MenuProps } from 'antd'; +import { Badge, Card, Dropdown, Flex, Menu, MenuProps } from '@/shared/antd-imports'; import React from 'react'; import { TaskStatusType } from '../../../types/task.types'; import { colors } from '../../../styles/colors'; import { useAppDispatch } from '@/hooks/useAppDispatch'; -import { RetweetOutlined, RightOutlined } from '@ant-design/icons'; +import { RetweetOutlined, RightOutlined } from '@/shared/antd-imports'; import './ChangeCategoryDropdown.css'; import { updateStatusCategory } from '../../../features/projects/status/StatusSlice'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/board/common-members-section/common-members-section.tsx b/worklenz-frontend/src/components/board/common-members-section/common-members-section.tsx index b4aca42f..c4c0411c 100644 --- a/worklenz-frontend/src/components/board/common-members-section/common-members-section.tsx +++ b/worklenz-frontend/src/components/board/common-members-section/common-members-section.tsx @@ -1,12 +1,12 @@ import React, { useEffect, useRef, useState } from 'react'; -import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from 'antd'; +import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from '@/shared/antd-imports'; import { DeleteOutlined, EditOutlined, LoadingOutlined, MoreOutlined, PlusOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { setTaskCardDisabled, initializeStatus } from '../../../features/board/create-card.slice'; import { TaskType } from '../../../types/task.types'; import TaskCreateCard from '../taskCreateCard/TaskCreateCard'; diff --git a/worklenz-frontend/src/components/board/common-phase-section/common-phase-section.tsx b/worklenz-frontend/src/components/board/common-phase-section/common-phase-section.tsx index 54e5dd9c..3e1b0333 100644 --- a/worklenz-frontend/src/components/board/common-phase-section/common-phase-section.tsx +++ b/worklenz-frontend/src/components/board/common-phase-section/common-phase-section.tsx @@ -1,12 +1,12 @@ import React, { useEffect, useRef, useState } from 'react'; -import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from 'antd'; +import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from '@/shared/antd-imports'; import { DeleteOutlined, EditOutlined, LoadingOutlined, MoreOutlined, PlusOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { setTaskCardDisabled, initializeStatus } from '../../../features/board/create-card.slice'; import { TaskType } from '../../../types/task.types'; import TaskCreateCard from '../taskCreateCard/TaskCreateCard'; diff --git a/worklenz-frontend/src/components/board/common-priority-section/common-priority-section.tsx b/worklenz-frontend/src/components/board/common-priority-section/common-priority-section.tsx index d718acfd..f2c04e51 100644 --- a/worklenz-frontend/src/components/board/common-priority-section/common-priority-section.tsx +++ b/worklenz-frontend/src/components/board/common-priority-section/common-priority-section.tsx @@ -1,12 +1,12 @@ import React, { useEffect, useRef, useState } from 'react'; -import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from 'antd'; +import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from '@/shared/antd-imports'; import { DeleteOutlined, EditOutlined, LoadingOutlined, MoreOutlined, PlusOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { setTaskCardDisabled, initializeStatus } from '../../../features/board/create-card.slice'; import { TaskType } from '../../../types/task.types'; import TaskCreateCard from '../taskCreateCard/TaskCreateCard'; diff --git a/worklenz-frontend/src/components/board/commonStatusSection/CommonStatusSection.tsx b/worklenz-frontend/src/components/board/commonStatusSection/CommonStatusSection.tsx index bcb67b73..af36a9c5 100644 --- a/worklenz-frontend/src/components/board/commonStatusSection/CommonStatusSection.tsx +++ b/worklenz-frontend/src/components/board/commonStatusSection/CommonStatusSection.tsx @@ -1,12 +1,12 @@ import React, { useEffect, useRef, useState } from 'react'; -import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from 'antd'; +import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from '@/shared/antd-imports'; import { DeleteOutlined, EditOutlined, LoadingOutlined, MoreOutlined, PlusOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { setTaskCardDisabled, initializeStatus } from '../../../features/board/create-card.slice'; import { TaskType } from '../../../types/task.types'; import TaskCreateCard from '../taskCreateCard/TaskCreateCard'; diff --git a/worklenz-frontend/src/components/board/custom-avatar-group.tsx b/worklenz-frontend/src/components/board/custom-avatar-group.tsx index 74668782..a69133e6 100644 --- a/worklenz-frontend/src/components/board/custom-avatar-group.tsx +++ b/worklenz-frontend/src/components/board/custom-avatar-group.tsx @@ -1,4 +1,4 @@ -import { Button, Flex } from 'antd'; +import { Button, Flex } from '@/shared/antd-imports'; import AddMembersDropdown from '@/components/add-members-dropdown/add-members-dropdown'; import Avatars from '../avatars/avatars'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; diff --git a/worklenz-frontend/src/components/board/custom-due-date-picker.tsx b/worklenz-frontend/src/components/board/custom-due-date-picker.tsx index 5f5a25b0..ff68110e 100644 --- a/worklenz-frontend/src/components/board/custom-due-date-picker.tsx +++ b/worklenz-frontend/src/components/board/custom-due-date-picker.tsx @@ -1,6 +1,6 @@ import React, { useState, useRef } from 'react'; -import { DatePicker, Button, Flex } from 'antd'; -import { CalendarOutlined } from '@ant-design/icons'; +import { DatePicker, Button, Flex } from '@/shared/antd-imports'; +import { CalendarOutlined } from '@/shared/antd-imports'; import dayjs, { Dayjs } from 'dayjs'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; diff --git a/worklenz-frontend/src/components/board/kanban-group/kanban-group.tsx b/worklenz-frontend/src/components/board/kanban-group/kanban-group.tsx index c9e402b2..1f37a56f 100644 --- a/worklenz-frontend/src/components/board/kanban-group/kanban-group.tsx +++ b/worklenz-frontend/src/components/board/kanban-group/kanban-group.tsx @@ -1,12 +1,12 @@ import React, { useEffect, useRef, useState } from 'react'; -import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from 'antd'; +import { Button, Dropdown, Input, InputRef, MenuProps, Typography } from '@/shared/antd-imports'; import { DeleteOutlined, EditOutlined, LoadingOutlined, MoreOutlined, PlusOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useDroppable } from '@dnd-kit/core'; import { SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable'; diff --git a/worklenz-frontend/src/components/board/subTaskCard/SubTaskCard.tsx b/worklenz-frontend/src/components/board/subTaskCard/SubTaskCard.tsx index 09adcc50..1076d82e 100644 --- a/worklenz-frontend/src/components/board/subTaskCard/SubTaskCard.tsx +++ b/worklenz-frontend/src/components/board/subTaskCard/SubTaskCard.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState } from 'react'; -import { Avatar, Col, DatePicker, Divider, Flex, Row, Tooltip, Typography } from 'antd'; +import { Avatar, Col, DatePicker, Divider, Flex, Row, Tooltip, Typography } from '@/shared/antd-imports'; import StatusDropdown from '../../taskListCommon/statusDropdown/StatusDropdown'; import dayjs, { Dayjs } from 'dayjs'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/board/taskCard/TaskCard.tsx b/worklenz-frontend/src/components/board/taskCard/TaskCard.tsx index fe6651f1..7a21184c 100644 --- a/worklenz-frontend/src/components/board/taskCard/TaskCard.tsx +++ b/worklenz-frontend/src/components/board/taskCard/TaskCard.tsx @@ -9,7 +9,7 @@ import { Dropdown, MenuProps, Button, -} from 'antd'; +} from '@/shared/antd-imports'; import { DoubleRightOutlined, PauseOutlined, @@ -20,7 +20,7 @@ import { ForkOutlined, CaretRightFilled, CaretDownFilled, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import './TaskCard.css'; import dayjs, { Dayjs } from 'dayjs'; import AddMembersDropdown from '../../add-members-dropdown/add-members-dropdown'; diff --git a/worklenz-frontend/src/components/board/taskCard/priority-section/priority-section.tsx b/worklenz-frontend/src/components/board/taskCard/priority-section/priority-section.tsx index deb1cc7c..6134536c 100644 --- a/worklenz-frontend/src/components/board/taskCard/priority-section/priority-section.tsx +++ b/worklenz-frontend/src/components/board/taskCard/priority-section/priority-section.tsx @@ -1,10 +1,10 @@ -import { Flex, Typography } from 'antd'; +import { Flex, Typography } from '@/shared/antd-imports'; import './priority-section.css'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useState, useEffect, useMemo } from 'react'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; import { ITaskPriority } from '@/types/tasks/taskPriority.types'; -import { DoubleLeftOutlined, MinusOutlined, PauseOutlined } from '@ant-design/icons'; +import { DoubleLeftOutlined, MinusOutlined, PauseOutlined } from '@/shared/antd-imports'; type PrioritySectionProps = { task: IProjectTask; diff --git a/worklenz-frontend/src/components/board/taskCreateCard/TaskCreateCard.tsx b/worklenz-frontend/src/components/board/taskCreateCard/TaskCreateCard.tsx index d7cab6ce..c72efe23 100644 --- a/worklenz-frontend/src/components/board/taskCreateCard/TaskCreateCard.tsx +++ b/worklenz-frontend/src/components/board/taskCreateCard/TaskCreateCard.tsx @@ -1,4 +1,4 @@ -import { Avatar, Button, DatePicker, Input, InputRef } from 'antd'; +import { Avatar, Button, DatePicker, Input, InputRef } from '@/shared/antd-imports'; import React, { forwardRef, useEffect, useRef, useState } from 'react'; import AddMembersDropdown from '../../add-members-dropdown/add-members-dropdown'; import dayjs, { Dayjs } from 'dayjs'; diff --git a/worklenz-frontend/src/components/board/taskCreateCard/priority-task-create-card.tsx b/worklenz-frontend/src/components/board/taskCreateCard/priority-task-create-card.tsx index f7f86a22..fbde3a28 100644 --- a/worklenz-frontend/src/components/board/taskCreateCard/priority-task-create-card.tsx +++ b/worklenz-frontend/src/components/board/taskCreateCard/priority-task-create-card.tsx @@ -1,4 +1,4 @@ -import { Avatar, Button, DatePicker, Input, InputRef } from 'antd'; +import { Avatar, Button, DatePicker, Input, InputRef } from '@/shared/antd-imports'; import React, { forwardRef, useEffect, useRef, useState } from 'react'; import AddMembersDropdown from '../../add-members-dropdown/add-members-dropdown'; import dayjs, { Dayjs } from 'dayjs'; diff --git a/worklenz-frontend/src/components/calendars/homeCalendar/HomeCalendar.tsx b/worklenz-frontend/src/components/calendars/homeCalendar/HomeCalendar.tsx index dcf50dda..44145520 100644 --- a/worklenz-frontend/src/components/calendars/homeCalendar/HomeCalendar.tsx +++ b/worklenz-frontend/src/components/calendars/homeCalendar/HomeCalendar.tsx @@ -1,4 +1,4 @@ -import { Calendar } from 'antd'; +import { Calendar } from '@/shared/antd-imports'; import React, { useEffect } from 'react'; import type { Dayjs } from 'dayjs'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/charts/LazyChartComponents.tsx b/worklenz-frontend/src/components/charts/LazyChartComponents.tsx index 3a170a7b..3a606acb 100644 --- a/worklenz-frontend/src/components/charts/LazyChartComponents.tsx +++ b/worklenz-frontend/src/components/charts/LazyChartComponents.tsx @@ -1,5 +1,5 @@ import { lazy, Suspense } from 'react'; -import { Spin } from 'antd'; +import { Spin } from '@/shared/antd-imports'; // Lazy load Chart.js components const LazyBarChart = lazy(() => diff --git a/worklenz-frontend/src/components/charts/chart-loader.tsx b/worklenz-frontend/src/components/charts/chart-loader.tsx index 142b8e2d..85f07765 100644 --- a/worklenz-frontend/src/components/charts/chart-loader.tsx +++ b/worklenz-frontend/src/components/charts/chart-loader.tsx @@ -1,5 +1,5 @@ import React, { Suspense } from 'react'; -import { Spin } from 'antd'; +import { Spin } from '@/shared/antd-imports'; // Lazy load chart components to reduce initial bundle size const LazyBar = React.lazy(() => diff --git a/worklenz-frontend/src/components/common/invite-team-members/invite-team-members.tsx b/worklenz-frontend/src/components/common/invite-team-members/invite-team-members.tsx index c0ad171b..ab4ff36a 100644 --- a/worklenz-frontend/src/components/common/invite-team-members/invite-team-members.tsx +++ b/worklenz-frontend/src/components/common/invite-team-members/invite-team-members.tsx @@ -1,4 +1,4 @@ -import { AutoComplete, Button, Drawer, Flex, Form, message, Modal, Select, Spin, Typography } from 'antd'; +import { AutoComplete, Button, Drawer, Flex, Form, message, Modal, Select, Spin, Typography } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { diff --git a/worklenz-frontend/src/components/common/people-dropdown/PeopleDropdown.tsx b/worklenz-frontend/src/components/common/people-dropdown/PeopleDropdown.tsx index c2f7ac78..dfbc862c 100644 --- a/worklenz-frontend/src/components/common/people-dropdown/PeopleDropdown.tsx +++ b/worklenz-frontend/src/components/common/people-dropdown/PeopleDropdown.tsx @@ -1,6 +1,6 @@ import React, { useState, useRef, useEffect, useMemo, useCallback } from 'react'; import { createPortal } from 'react-dom'; -import { PlusOutlined, UserAddOutlined } from '@ant-design/icons'; +import { PlusOutlined, UserAddOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleProjectMemberDrawer } from '@/features/projects/singleProject/members/projectMembersSlice'; diff --git a/worklenz-frontend/src/components/common/project-status-icon/project-status-icon.tsx b/worklenz-frontend/src/components/common/project-status-icon/project-status-icon.tsx index 09974db2..919ce401 100644 --- a/worklenz-frontend/src/components/common/project-status-icon/project-status-icon.tsx +++ b/worklenz-frontend/src/components/common/project-status-icon/project-status-icon.tsx @@ -4,7 +4,7 @@ import Icon, { ClockCircleOutlined, CloseCircleOutlined, StopOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; const iconMap = { 'clock-circle': ClockCircleOutlined, diff --git a/worklenz-frontend/src/components/common/single-avatar/single-avatar.tsx b/worklenz-frontend/src/components/common/single-avatar/single-avatar.tsx index d6886d7f..b9d0447d 100644 --- a/worklenz-frontend/src/components/common/single-avatar/single-avatar.tsx +++ b/worklenz-frontend/src/components/common/single-avatar/single-avatar.tsx @@ -1,5 +1,5 @@ import { AvatarNamesMap } from '@/shared/constants'; -import { Avatar, Flex, Space } from 'antd'; +import { Avatar, Flex, Space } from '@/shared/antd-imports'; interface SingleAvatarProps { avatarUrl?: string; diff --git a/worklenz-frontend/src/components/common/template-drawer/template-drawer.tsx b/worklenz-frontend/src/components/common/template-drawer/template-drawer.tsx index 3dd9dd75..2250b869 100644 --- a/worklenz-frontend/src/components/common/template-drawer/template-drawer.tsx +++ b/worklenz-frontend/src/components/common/template-drawer/template-drawer.tsx @@ -1,4 +1,4 @@ -import type { MenuProps } from 'antd'; +import type { MenuProps } from '@/shared/antd-imports'; import { Empty, List, @@ -10,8 +10,7 @@ import { Image, Input, Flex, - Button, -} from 'antd'; +} from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; import { useSelector } from 'react-redux'; import { useTranslation } from 'react-i18next'; @@ -23,7 +22,7 @@ import { IWorklenzTemplate, } from '@/types/project-templates/project-templates.types'; import './template-drawer.css'; -import { SearchOutlined } from '@ant-design/icons'; +import { SearchOutlined } from '@/shared/antd-imports'; import logger from '@/utils/errorLogger'; const { Title, Text } = Typography; diff --git a/worklenz-frontend/src/components/common/tooltip-wrapper/tooltip-wrapper.tsx b/worklenz-frontend/src/components/common/tooltip-wrapper/tooltip-wrapper.tsx index ab9d1504..83c55127 100644 --- a/worklenz-frontend/src/components/common/tooltip-wrapper/tooltip-wrapper.tsx +++ b/worklenz-frontend/src/components/common/tooltip-wrapper/tooltip-wrapper.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Tooltip, TooltipProps } from 'antd'; +import { Tooltip, TooltipProps } from '@/shared/antd-imports'; interface TooltipWrapperProps extends Omit { children: React.ReactElement; diff --git a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanBoard.tsx b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanBoard.tsx index b048744e..e98073f9 100644 --- a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanBoard.tsx +++ b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanBoard.tsx @@ -1,6 +1,6 @@ import React, { useEffect, useState, useMemo } from 'react'; import { useSelector, useDispatch } from 'react-redux'; -import { Card, Spin, Empty } from 'antd'; +import { Card, Spin, Empty } from '@/shared/antd-imports'; import { DndContext, DragOverlay, diff --git a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSection.tsx b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSection.tsx index eb9b87cc..7aec4fe7 100644 --- a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSection.tsx +++ b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSection.tsx @@ -1,9 +1,9 @@ import React, { useState, useRef, useEffect, useMemo } from 'react'; -import { Button, Flex } from 'antd'; -import { PlusOutlined } from '@ant-design/icons'; +import { Button, Flex } from '@/shared/antd-imports'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { nanoid } from '@reduxjs/toolkit'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { themeWiseColor } from '@/utils/themeWiseColor'; diff --git a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSubtaskCard.tsx b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSubtaskCard.tsx index e15044b9..43440a2a 100644 --- a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSubtaskCard.tsx +++ b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateSubtaskCard.tsx @@ -1,4 +1,4 @@ -import { Flex, Input, InputRef } from 'antd'; +import { Flex, Input, InputRef } from '@/shared/antd-imports'; import React, { useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateTaskCard.tsx b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateTaskCard.tsx index f677c4bc..f3147149 100644 --- a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateTaskCard.tsx +++ b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanCreateTaskCard.tsx @@ -1,5 +1,5 @@ import React, { useRef, useState, useEffect } from 'react'; -import { Button, Flex, Input, InputRef } from 'antd'; +import { Button, Flex, Input, InputRef } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { nanoid } from '@reduxjs/toolkit'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanGroup.tsx b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanGroup.tsx index 86b98521..d9e5d24a 100644 --- a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanGroup.tsx +++ b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanGroup.tsx @@ -12,7 +12,7 @@ import EnhancedKanbanTaskCard from './EnhancedKanbanTaskCard'; import VirtualizedTaskList from './VirtualizedTaskList'; import { useAppSelector } from '@/hooks/useAppSelector'; import './EnhancedKanbanGroup.css'; -import { Badge, Flex, InputRef, MenuProps, Popconfirm } from 'antd'; +import { Badge, Flex, InputRef, MenuProps, Popconfirm } from '@/shared/antd-imports'; import { themeWiseColor } from '@/utils/themeWiseColor'; import useIsProjectManager from '@/hooks/useIsProjectManager'; import { useAuthService } from '@/hooks/useAuth'; @@ -25,11 +25,11 @@ import { MoreOutlined, } from '@ant-design/icons/lib/icons'; import { colors } from '@/styles/colors'; -import { Input } from 'antd'; -import { Tooltip } from 'antd'; -import { Typography } from 'antd'; -import { Dropdown } from 'antd'; -import { Button } from 'antd'; +import { Input } from '@/shared/antd-imports'; +import { Tooltip } from '@/shared/antd-imports'; +import { Typography } from '@/shared/antd-imports'; +import { Dropdown } from '@/shared/antd-imports'; +import { Button } from '@/shared/antd-imports'; import { PlusOutlined } from '@ant-design/icons/lib/icons'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanTaskCard.tsx b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanTaskCard.tsx index c431b321..82f79c55 100644 --- a/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanTaskCard.tsx +++ b/worklenz-frontend/src/components/enhanced-kanban/EnhancedKanbanTaskCard.tsx @@ -15,18 +15,18 @@ import PrioritySection from '../board/taskCard/priority-section/priority-section import Typography from 'antd/es/typography'; import CustomDueDatePicker from '../board/custom-due-date-picker'; import { themeWiseColor } from '@/utils/themeWiseColor'; -import { ForkOutlined } from '@ant-design/icons'; +import { ForkOutlined } from '@/shared/antd-imports'; import { Dayjs } from 'dayjs'; import dayjs from 'dayjs'; -import { CaretDownFilled, CaretRightFilled } from '@ant-design/icons'; +import { CaretDownFilled, CaretRightFilled } from '@/shared/antd-imports'; import { fetchBoardSubTasks, toggleTaskExpansion, } from '@/features/enhanced-kanban/enhanced-kanban.slice'; -import { Divider } from 'antd'; -import { List } from 'antd'; -import { Skeleton } from 'antd'; -import { PlusOutlined } from '@ant-design/icons'; +import { Divider } from '@/shared/antd-imports'; +import { List } from '@/shared/antd-imports'; +import { Skeleton } from '@/shared/antd-imports'; +import { PlusOutlined } from '@/shared/antd-imports'; import BoardSubTaskCard from '@/pages/projects/projectView/board/board-section/board-sub-task-card/board-sub-task-card'; import BoardCreateSubtaskCard from '@/pages/projects/projectView/board/board-section/board-sub-task-card/board-create-sub-task-card'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/home-tasks/statusDropdown/home-tasks-status-dropdown.tsx b/worklenz-frontend/src/components/home-tasks/statusDropdown/home-tasks-status-dropdown.tsx index 424d3388..245dfbe6 100644 --- a/worklenz-frontend/src/components/home-tasks/statusDropdown/home-tasks-status-dropdown.tsx +++ b/worklenz-frontend/src/components/home-tasks/statusDropdown/home-tasks-status-dropdown.tsx @@ -1,4 +1,4 @@ -import { Badge, Flex, Select } from 'antd'; +import { Badge, Flex, Select } from '@/shared/antd-imports'; import './home-tasks-status-dropdown.css'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/home-tasks/taskDatePicker/home-tasks-date-picker.tsx b/worklenz-frontend/src/components/home-tasks/taskDatePicker/home-tasks-date-picker.tsx index 37f4d5a3..3e1ff724 100644 --- a/worklenz-frontend/src/components/home-tasks/taskDatePicker/home-tasks-date-picker.tsx +++ b/worklenz-frontend/src/components/home-tasks/taskDatePicker/home-tasks-date-picker.tsx @@ -1,6 +1,6 @@ import { useSocket } from '@/socket/socketContext'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; -import { DatePicker } from 'antd'; +import { DatePicker } from '@/shared/antd-imports'; import dayjs from 'dayjs'; import calendar from 'dayjs/plugin/calendar'; import { SocketEvents } from '@/shared/socket-events'; diff --git a/worklenz-frontend/src/components/kanban-board-management-v2/kanbanGroup.tsx b/worklenz-frontend/src/components/kanban-board-management-v2/kanbanGroup.tsx index 98f57505..996653e1 100644 --- a/worklenz-frontend/src/components/kanban-board-management-v2/kanbanGroup.tsx +++ b/worklenz-frontend/src/components/kanban-board-management-v2/kanbanGroup.tsx @@ -1,8 +1,8 @@ import React, { useState } from 'react'; import { useDroppable } from '@dnd-kit/core'; import { SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable'; -import { Button, Typography } from 'antd'; -import { PlusOutlined, MenuOutlined } from '@ant-design/icons'; +import { Button, Typography } from '@/shared/antd-imports'; +import { PlusOutlined, MenuOutlined } from '@/shared/antd-imports'; import { ITaskListGroup } from '@/types/tasks/taskList.types'; import { IGroupBy } from '@/features/tasks/tasks.slice'; import KanbanTaskCard from './kanbanTaskCard'; diff --git a/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskCard.tsx b/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskCard.tsx index 766fbfce..4e35a990 100644 --- a/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskCard.tsx +++ b/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskCard.tsx @@ -1,13 +1,13 @@ import React from 'react'; import { useSortable } from '@dnd-kit/sortable'; import { CSS } from '@dnd-kit/utilities'; -import { Avatar, Tag, Progress, Typography, Button, Tooltip, Space } from 'antd'; +import { Avatar, Tag, Progress, Typography, Button, Tooltip, Space } from '@/shared/antd-imports'; import { HolderOutlined, MessageOutlined, PaperClipOutlined, ClockCircleOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; import { IGroupBy } from '@/features/tasks/tasks.slice'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskListBoard.tsx b/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskListBoard.tsx index 314f0f72..9ea40133 100644 --- a/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskListBoard.tsx +++ b/worklenz-frontend/src/components/kanban-board-management-v2/kanbanTaskListBoard.tsx @@ -17,18 +17,13 @@ import { SortableContext, sortableKeyboardCoordinates, } from '@dnd-kit/sortable'; -import { Card, Spin, Empty, Flex } from 'antd'; +import { Card, Spin, Empty } from '@/shared/antd-imports'; import { RootState } from '@/app/store'; -import { IGroupBy, setGroup, fetchTaskGroups, reorderTasks } from '@/features/tasks/tasks.slice'; +import { fetchTaskGroups, reorderTasks } from '@/features/tasks/tasks.slice'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; import { AppDispatch } from '@/app/store'; -import BoardSectionCard from '@/pages/projects/projectView/board/board-section/board-section-card/board-section-card'; -import BoardCreateSectionCard from '@/pages/projects/projectView/board/board-section/board-section-card/board-create-section-card'; -import { useAuthService } from '@/hooks/useAuth'; +import { useAuthService } from '@/hooks/useAuth'; import useIsProjectManager from '@/hooks/useIsProjectManager'; -import BoardViewTaskCard from '@/pages/projects/projectView/board/board-section/board-task-card/board-view-task-card'; -import TaskGroup from '../task-management/TaskGroup'; -import TaskRow from '../task-management/TaskRow'; import KanbanGroup from './kanbanGroup'; import KanbanTaskCard from './kanbanTaskCard'; import SortableKanbanGroup from './SortableKanbanGroup'; diff --git a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notfication-drawer.tsx b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notfication-drawer.tsx index 4f6d7201..44c761db 100644 --- a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notfication-drawer.tsx +++ b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notfication-drawer.tsx @@ -1,4 +1,4 @@ -import { Drawer, Empty, Segmented, Typography, Spin, Button, Flex } from 'antd'; +import { Drawer, Empty, Segmented, Typography, Spin, Button, Flex } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-button.tsx b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-button.tsx index c78731c4..16ae3b3c 100644 --- a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-button.tsx +++ b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-button.tsx @@ -1,5 +1,5 @@ -import { BellOutlined } from '@ant-design/icons'; -import { Badge, Button, Tooltip } from 'antd'; +import { BellOutlined } from '@/shared/antd-imports'; +import { Badge, Button, Tooltip } from '@/shared/antd-imports'; import { toggleDrawer } from '@features/navbar/notificationSlice'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-item.tsx b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-item.tsx index abbc0721..39023968 100644 --- a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-item.tsx +++ b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-item.tsx @@ -1,6 +1,6 @@ import { IWorklenzNotification } from '@/types/notifications/notifications.types'; -import { BankOutlined } from '@ant-design/icons'; -import { Button, Tag, Typography, theme } from 'antd'; +import { BankOutlined } from '@/shared/antd-imports'; +import { Button, Tag, Typography, theme } from '@/shared/antd-imports'; import DOMPurify from 'dompurify'; import React, { useState } from 'react'; import { fromNow } from '@/utils/dateUtils'; diff --git a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-template.tsx b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-template.tsx index 17b7fe91..f4a6e60a 100644 --- a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-template.tsx +++ b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/notification-template.tsx @@ -1,5 +1,5 @@ -import { Button, Typography, Tag } from 'antd'; -import { BankOutlined } from '@ant-design/icons'; +import { Button, Typography, Tag } from '@/shared/antd-imports'; +import { BankOutlined } from '@/shared/antd-imports'; import { IWorklenzNotification } from '@/types/notifications/notifications.types'; import { useNavigate } from 'react-router-dom'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/push-notification-template.tsx b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/push-notification-template.tsx index 05575285..b0bcc7bb 100644 --- a/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/push-notification-template.tsx +++ b/worklenz-frontend/src/components/navbar/notifications/notifications-drawer/notification/push-notification-template.tsx @@ -1,8 +1,8 @@ -import { notification } from 'antd'; +import { notification } from '@/shared/antd-imports'; import { IWorklenzNotification } from '@/types/notifications/notifications.types'; import { teamsApiService } from '@/api/teams/teams.api.service'; import { toQueryString } from '@/utils/toQueryString'; -import { BankOutlined } from '@ant-design/icons'; +import { BankOutlined } from '@/shared/antd-imports'; import './push-notification-template.css'; const PushNotificationTemplate = ({ diff --git a/worklenz-frontend/src/components/project-list/project-group/project-group-list.tsx b/worklenz-frontend/src/components/project-list/project-group/project-group-list.tsx index bb07669d..4c742efe 100644 --- a/worklenz-frontend/src/components/project-list/project-group/project-group-list.tsx +++ b/worklenz-frontend/src/components/project-list/project-group/project-group-list.tsx @@ -10,12 +10,10 @@ import { Tooltip, Badge, Space, - Avatar, theme, Divider, -} from 'antd'; +} from '@/shared/antd-imports'; import { - ClockCircleOutlined, TeamOutlined, CheckCircleOutlined, ProjectOutlined, @@ -23,7 +21,7 @@ import { SettingOutlined, InboxOutlined, MoreOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { ProjectGroupListProps } from '@/types/project/project.types'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/project-list/project-list-table/project-list-actions/project-list-actions.tsx b/worklenz-frontend/src/components/project-list/project-list-table/project-list-actions/project-list-actions.tsx index c447ddeb..4a319a44 100644 --- a/worklenz-frontend/src/components/project-list/project-list-table/project-list-actions/project-list-actions.tsx +++ b/worklenz-frontend/src/components/project-list/project-list-table/project-list-actions/project-list-actions.tsx @@ -11,11 +11,10 @@ import { } from '@/features/projects/projectsSlice'; import { useAppSelector } from '@/hooks/useAppSelector'; import useIsProjectManager from '@/hooks/useIsProjectManager'; -import { useAuthService } from '@/hooks/useAuth'; import { IProjectViewModel } from '@/types/project/projectViewModel.types'; import logger from '@/utils/errorLogger'; -import { SettingOutlined, InboxOutlined } from '@ant-design/icons'; -import { Tooltip, Button, Popconfirm, Space } from 'antd'; +import { SettingOutlined, InboxOutlined } from '@/shared/antd-imports'; +import { Tooltip, Button, Popconfirm, Space } from '@/shared/antd-imports'; import { evt_projects_archive, evt_projects_archive_all, diff --git a/worklenz-frontend/src/components/project-list/project-list-table/project-list-category/project-list-category.tsx b/worklenz-frontend/src/components/project-list/project-list-table/project-list-category/project-list-category.tsx index 240267b9..07bc22b5 100644 --- a/worklenz-frontend/src/components/project-list/project-list-table/project-list-category/project-list-category.tsx +++ b/worklenz-frontend/src/components/project-list/project-list-table/project-list-category/project-list-category.tsx @@ -1,5 +1,5 @@ import { IProjectViewModel } from '@/types/project/projectViewModel.types'; -import { Tooltip, Tag } from 'antd'; +import { Tooltip, Tag } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { setFilteredCategories, setRequestParams } from '@/features/projects/projectsSlice'; diff --git a/worklenz-frontend/src/components/project-list/project-list-table/project-list-favorite/project-rate-cell.tsx b/worklenz-frontend/src/components/project-list/project-list-table/project-list-favorite/project-rate-cell.tsx index c7e9ff89..90e8e505 100644 --- a/worklenz-frontend/src/components/project-list/project-list-table/project-list-favorite/project-rate-cell.tsx +++ b/worklenz-frontend/src/components/project-list/project-list-table/project-list-favorite/project-rate-cell.tsx @@ -7,8 +7,8 @@ import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; import { IProjectViewModel } from '@/types/project/projectViewModel.types'; -import { StarFilled } from '@ant-design/icons'; -import { Button, ConfigProvider, Tooltip } from 'antd'; +import { StarFilled } from '@/shared/antd-imports'; +import { Button, ConfigProvider, Tooltip } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { useCallback, useMemo } from 'react'; diff --git a/worklenz-frontend/src/components/project-list/project-list-table/project-list-progress/progress-list-progress.tsx b/worklenz-frontend/src/components/project-list/project-list-table/project-list-progress/progress-list-progress.tsx index 1be0b55d..7f2ce1bd 100644 --- a/worklenz-frontend/src/components/project-list/project-list-table/project-list-progress/progress-list-progress.tsx +++ b/worklenz-frontend/src/components/project-list/project-list-table/project-list-progress/progress-list-progress.tsx @@ -1,6 +1,6 @@ import { IProjectViewModel } from '@/types/project/projectViewModel.types'; import { getTaskProgressTitle } from '@/utils/project-list-utils'; -import { Tooltip, Progress } from 'antd'; +import { Tooltip, Progress } from '@/shared/antd-imports'; export const ProgressListProgress: React.FC<{ record: IProjectViewModel }> = ({ record }) => { return ( diff --git a/worklenz-frontend/src/components/project-list/project-list-table/project-list-updated-at/project-list-updated.tsx b/worklenz-frontend/src/components/project-list/project-list-table/project-list-updated-at/project-list-updated.tsx index bd0c7b5a..51257d84 100644 --- a/worklenz-frontend/src/components/project-list/project-list-table/project-list-updated-at/project-list-updated.tsx +++ b/worklenz-frontend/src/components/project-list/project-list-table/project-list-updated-at/project-list-updated.tsx @@ -1,7 +1,7 @@ import { IProjectViewModel } from '@/types/project/projectViewModel.types'; import { calculateTimeDifference } from '@/utils/calculate-time-difference'; import { formatDateTimeWithLocale } from '@/utils/format-date-time-with-locale'; -import { Tooltip } from 'antd'; +import { Tooltip } from '@/shared/antd-imports'; export const ProjectListUpdatedAt: React.FC<{ record: IProjectViewModel }> = ({ record }) => { return ( diff --git a/worklenz-frontend/src/components/project-list/project-list-table/project-name/project-name-cell.tsx b/worklenz-frontend/src/components/project-list/project-list-table/project-name/project-name-cell.tsx index 25a948ae..fc517782 100644 --- a/worklenz-frontend/src/components/project-list/project-list-table/project-name/project-name-cell.tsx +++ b/worklenz-frontend/src/components/project-list/project-list-table/project-name/project-name-cell.tsx @@ -6,8 +6,8 @@ import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { IProjectViewModel } from '@/types/project/projectViewModel.types'; import { formatDateRange } from '@/utils/project-list-utils'; -import { CalendarOutlined } from '@ant-design/icons'; -import { Badge, Tooltip } from 'antd'; +import { CalendarOutlined } from '@/shared/antd-imports'; +import { Badge, Tooltip } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { NavigateFunction } from 'react-router-dom'; diff --git a/worklenz-frontend/src/components/project-task-filters/create-status-button/create-status-button.tsx b/worklenz-frontend/src/components/project-task-filters/create-status-button/create-status-button.tsx index 64ac806b..29aefae5 100644 --- a/worklenz-frontend/src/components/project-task-filters/create-status-button/create-status-button.tsx +++ b/worklenz-frontend/src/components/project-task-filters/create-status-button/create-status-button.tsx @@ -1,4 +1,4 @@ -import { SettingOutlined } from '@ant-design/icons'; +import { SettingOutlined } from '@/shared/antd-imports'; import Tooltip from 'antd/es/tooltip'; import Button from 'antd/es/button'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/project-task-filters/delete-status-drawer/delete-status-drawer.tsx b/worklenz-frontend/src/components/project-task-filters/delete-status-drawer/delete-status-drawer.tsx index 0dd5015c..3b6b7fd0 100644 --- a/worklenz-frontend/src/components/project-task-filters/delete-status-drawer/delete-status-drawer.tsx +++ b/worklenz-frontend/src/components/project-task-filters/delete-status-drawer/delete-status-drawer.tsx @@ -9,8 +9,8 @@ import useTabSearchParam from '@/hooks/useTabSearchParam'; import { fetchTaskGroups } from '@/features/tasks/tasks.slice'; import { deleteStatusToggleDrawer } from '@/features/projects/status/DeleteStatusSlice'; -import { Drawer, Alert, Card, Select, Button, Typography, Badge } from 'antd'; -import { DownOutlined } from '@ant-design/icons'; +import { Drawer, Alert, Card, Select, Button, Typography, Badge } from '@/shared/antd-imports'; +import { DownOutlined } from '@/shared/antd-imports'; import { useSelector } from 'react-redux'; import { deleteSection, diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/column-configuration-modal.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/column-configuration-modal.tsx index 34b317a4..ca56a761 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/column-configuration-modal.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/column-configuration-modal.tsx @@ -1,6 +1,6 @@ import React, { useState, useEffect } from 'react'; -import { Modal, Checkbox, Button, Flex, Typography, Space, Divider, message } from 'antd'; -import { SettingOutlined, UpOutlined, DownOutlined } from '@ant-design/icons'; +import { Modal, Checkbox, Button, Flex, Typography, Space, Divider, message } from '@/shared/antd-imports'; +import { SettingOutlined, UpOutlined, DownOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; // Configuration interface for column visibility diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/group-by-filter-dropdown.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/group-by-filter-dropdown.tsx index 7d290026..4969a406 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/group-by-filter-dropdown.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/group-by-filter-dropdown.tsx @@ -1,6 +1,6 @@ import { useEffect, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { CaretDownFilled } from '@ant-design/icons'; +import { CaretDownFilled } from '@/shared/antd-imports'; import { ConfigProvider, Flex, Dropdown, Button } from 'antd/es'; import { useSearchParams } from 'react-router-dom'; diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/labels-filter-dropdown.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/labels-filter-dropdown.tsx index dc63e9be..c4ae5b44 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/labels-filter-dropdown.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/labels-filter-dropdown.tsx @@ -1,4 +1,4 @@ -import { CaretDownFilled } from '@ant-design/icons'; +import { CaretDownFilled } from '@/shared/antd-imports'; import Badge from 'antd/es/badge'; import Button from 'antd/es/button'; import Card from 'antd/es/card'; diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/members-filter-dropdown.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/members-filter-dropdown.tsx index 41c920c0..051f4522 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/members-filter-dropdown.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/members-filter-dropdown.tsx @@ -1,6 +1,6 @@ import { useMemo, useRef, useState, useCallback, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; -import { CaretDownFilled } from '@ant-design/icons'; +import { CaretDownFilled } from '@/shared/antd-imports'; import { Badge, Button, @@ -13,8 +13,8 @@ import { List, Space, Typography, -} from 'antd'; -import type { InputRef } from 'antd'; + InputRef +} from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/priority-filter-dropdown.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/priority-filter-dropdown.tsx index 094771dd..d2af5eb3 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/priority-filter-dropdown.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/priority-filter-dropdown.tsx @@ -1,8 +1,8 @@ -import { CaretDownFilled } from '@ant-design/icons'; +import { CaretDownFilled } from '@/shared/antd-imports'; import { useMemo, useEffect, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; -import { Badge, Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { Badge, Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/search-dropdown.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/search-dropdown.tsx index e8743f39..bc072207 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/search-dropdown.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/search-dropdown.tsx @@ -13,7 +13,7 @@ import Space from 'antd/es/space'; import Dropdown from 'antd/es/dropdown'; import { setSearch } from '@/features/tasks/tasks.slice'; -import { SearchOutlined } from '@ant-design/icons'; +import { SearchOutlined } from '@/shared/antd-imports'; import { setBoardSearch } from '@/features/board/board-slice'; diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/show-fields-filter-dropdown.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/show-fields-filter-dropdown.tsx index 56d1b7d5..8b76a129 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/show-fields-filter-dropdown.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/show-fields-filter-dropdown.tsx @@ -1,4 +1,4 @@ -import { MoreOutlined, SettingOutlined } from '@ant-design/icons'; +import { MoreOutlined, SettingOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import Button from 'antd/es/button'; import Checkbox from 'antd/es/checkbox'; diff --git a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/sort-filter-dropdown.tsx b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/sort-filter-dropdown.tsx index a74f15b5..c86d2ff8 100644 --- a/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/sort-filter-dropdown.tsx +++ b/worklenz-frontend/src/components/project-task-filters/filter-dropdowns/sort-filter-dropdown.tsx @@ -1,4 +1,4 @@ -import { CaretDownFilled, SortAscendingOutlined, SortDescendingOutlined } from '@ant-design/icons'; +import { CaretDownFilled, SortAscendingOutlined, SortDescendingOutlined } from '@/shared/antd-imports'; import Badge from 'antd/es/badge'; import Button from 'antd/es/button'; diff --git a/worklenz-frontend/src/components/projects/project-create-button/project-create-button.tsx b/worklenz-frontend/src/components/projects/project-create-button/project-create-button.tsx index 5386ce0c..2cb2729b 100644 --- a/worklenz-frontend/src/components/projects/project-create-button/project-create-button.tsx +++ b/worklenz-frontend/src/components/projects/project-create-button/project-create-button.tsx @@ -1,7 +1,7 @@ -import { Button, Drawer, Dropdown } from 'antd'; +import { Button, Drawer, Dropdown } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { useAppDispatch } from '@/hooks/useAppDispatch'; -import { DownOutlined, EditOutlined, ImportOutlined } from '@ant-design/icons'; +import { DownOutlined, EditOutlined, ImportOutlined } from '@/shared/antd-imports'; import TemplateDrawer from '@/components/common/template-drawer/template-drawer'; import { useTranslation } from 'react-i18next'; import { useLocation, useNavigate } from 'react-router-dom'; diff --git a/worklenz-frontend/src/components/projects/project-drawer/project-basic-info/project-basic-info.tsx b/worklenz-frontend/src/components/projects/project-drawer/project-basic-info/project-basic-info.tsx index c01b8c70..63c512ed 100644 --- a/worklenz-frontend/src/components/projects/project-drawer/project-basic-info/project-basic-info.tsx +++ b/worklenz-frontend/src/components/projects/project-drawer/project-basic-info/project-basic-info.tsx @@ -1,4 +1,4 @@ -import { ColorPicker, Form, FormInstance, Input } from 'antd'; +import { ColorPicker, Form, FormInstance, Input } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IProjectViewModel } from '@/types/project/projectViewModel.types'; diff --git a/worklenz-frontend/src/components/projects/project-drawer/project-category-section/project-category-section.tsx b/worklenz-frontend/src/components/projects/project-drawer/project-category-section/project-category-section.tsx index 984c9b96..a388fdca 100644 --- a/worklenz-frontend/src/components/projects/project-drawer/project-category-section/project-category-section.tsx +++ b/worklenz-frontend/src/components/projects/project-drawer/project-category-section/project-category-section.tsx @@ -10,8 +10,8 @@ import { InputRef, Select, Typography, -} from 'antd'; -import { PlusOutlined } from '@ant-design/icons'; +} from '@/shared/antd-imports'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { diff --git a/worklenz-frontend/src/components/projects/project-drawer/project-client-section/project-client-section.tsx b/worklenz-frontend/src/components/projects/project-drawer/project-client-section/project-client-section.tsx index 426f8002..d8e2a4b8 100644 --- a/worklenz-frontend/src/components/projects/project-drawer/project-client-section/project-client-section.tsx +++ b/worklenz-frontend/src/components/projects/project-drawer/project-client-section/project-client-section.tsx @@ -2,8 +2,8 @@ import { createClient, fetchClients } from '@/features/settings/client/clientSli import { useAppDispatch } from '@/hooks/useAppDispatch'; import { IClientsViewModel } from '@/types/client.types'; import { IProjectViewModel } from '@/types/project/projectViewModel.types'; -import { QuestionCircleOutlined } from '@ant-design/icons'; -import { AutoComplete, Flex, Form, FormInstance, Spin, Tooltip, Typography } from 'antd'; +import { QuestionCircleOutlined } from '@/shared/antd-imports'; +import { AutoComplete, Flex, Form, FormInstance, Spin, Tooltip, Typography } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { useState } from 'react'; diff --git a/worklenz-frontend/src/components/projects/project-drawer/project-drawer.tsx b/worklenz-frontend/src/components/projects/project-drawer/project-drawer.tsx index f6519cb9..2b6ef0c0 100644 --- a/worklenz-frontend/src/components/projects/project-drawer/project-drawer.tsx +++ b/worklenz-frontend/src/components/projects/project-drawer/project-drawer.tsx @@ -17,7 +17,7 @@ import { Switch, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import dayjs from 'dayjs'; import { fetchClients } from '@/features/settings/client/clientSlice'; diff --git a/worklenz-frontend/src/components/projects/project-drawer/project-health-section/project-health-section.tsx b/worklenz-frontend/src/components/projects/project-drawer/project-health-section/project-health-section.tsx index 95e1001e..83f3573a 100644 --- a/worklenz-frontend/src/components/projects/project-drawer/project-health-section/project-health-section.tsx +++ b/worklenz-frontend/src/components/projects/project-drawer/project-health-section/project-health-section.tsx @@ -1,5 +1,5 @@ import { TFunction } from 'i18next'; -import { Badge, Form, FormInstance, Select, Typography } from 'antd'; +import { Badge, Form, FormInstance, Select, Typography } from '@/shared/antd-imports'; import { IProjectHealth } from '@/types/project/projectHealth.types'; diff --git a/worklenz-frontend/src/components/projects/project-drawer/project-status-section/project-status-section.tsx b/worklenz-frontend/src/components/projects/project-drawer/project-status-section/project-status-section.tsx index d8e59933..10d1b12a 100644 --- a/worklenz-frontend/src/components/projects/project-drawer/project-status-section/project-status-section.tsx +++ b/worklenz-frontend/src/components/projects/project-drawer/project-status-section/project-status-section.tsx @@ -1,4 +1,4 @@ -import { Form, FormInstance, Select, Typography } from 'antd'; +import { Form, FormInstance, Select, Typography } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { IProjectStatus } from '@/types/project/projectStatus.types'; diff --git a/worklenz-frontend/src/components/projects/project-manager-dropdown/project-manager-dropdown.tsx b/worklenz-frontend/src/components/projects/project-manager-dropdown/project-manager-dropdown.tsx index dd43960f..f8ac27f3 100644 --- a/worklenz-frontend/src/components/projects/project-manager-dropdown/project-manager-dropdown.tsx +++ b/worklenz-frontend/src/components/projects/project-manager-dropdown/project-manager-dropdown.tsx @@ -3,8 +3,8 @@ import { getTeamMembers } from '@/features/team-members/team-members.slice'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { ITeamMemberViewModel } from '@/types/teamMembers/teamMembersGetResponse.types'; -import { CloseCircleFilled, PlusCircleOutlined } from '@ant-design/icons'; -import { Button, Dropdown, Flex, Input, InputRef, theme, Typography } from 'antd'; +import { CloseCircleFilled, PlusCircleOutlined } from '@/shared/antd-imports'; +import { Button, Dropdown, Flex, Input, InputRef, theme, Typography } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; import './project-manager-dropdown.css'; diff --git a/worklenz-frontend/src/components/projects/project-member-invite-drawer/project-member-invite-drawer.tsx b/worklenz-frontend/src/components/projects/project-member-invite-drawer/project-member-invite-drawer.tsx index 4f74d268..00c01d93 100644 --- a/worklenz-frontend/src/components/projects/project-member-invite-drawer/project-member-invite-drawer.tsx +++ b/worklenz-frontend/src/components/projects/project-member-invite-drawer/project-member-invite-drawer.tsx @@ -12,8 +12,7 @@ import { toggleProjectMemberDrawer, } from '@/features/projects/singleProject/members/projectMembersSlice'; import SingleAvatar from '@/components/common/single-avatar/single-avatar'; -import { DeleteOutlined, MailOutlined } from '@ant-design/icons'; -import { LinkOutlined } from '@ant-design/icons'; +import { DeleteOutlined, MailOutlined } from '@/shared/antd-imports'; import { getTeamMembers } from '@/features/team-members/team-members.slice'; import logger from '@/utils/errorLogger'; import { validateEmail } from '@/utils/validateEmail'; diff --git a/worklenz-frontend/src/components/projects/project-stats-card.tsx b/worklenz-frontend/src/components/projects/project-stats-card.tsx index 68e539e5..68dd46d1 100644 --- a/worklenz-frontend/src/components/projects/project-stats-card.tsx +++ b/worklenz-frontend/src/components/projects/project-stats-card.tsx @@ -1,6 +1,6 @@ import { ReactNode } from 'react'; -import { Card, Flex, Skeleton, Tooltip, Typography } from 'antd'; -import { ExclamationCircleOutlined } from '@ant-design/icons'; +import { Card, Flex, Skeleton, Tooltip, Typography } from '@/shared/antd-imports'; +import { ExclamationCircleOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; type InsightCardProps = { diff --git a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-tab.tsx b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-tab.tsx index 7a98303e..13ae06e0 100644 --- a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-tab.tsx +++ b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-tab.tsx @@ -1,4 +1,4 @@ -import { Flex, Skeleton } from 'antd'; +import { Flex, Skeleton } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useState } from 'react'; import CustomSearchbar from '../../../../CustomSearchbar'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-table.tsx b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-table.tsx index 4318bc04..f3a9f914 100644 --- a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-table.tsx +++ b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/members-tab/reporting-overview-members-table.tsx @@ -1,5 +1,5 @@ import React, { memo, useEffect, useMemo, useState } from 'react'; -import { ConfigProvider, Table, TableColumnsType } from 'antd'; +import { ConfigProvider, Table, TableColumnsType } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import CustomTableTitle from '../../../../CustomTableTitle'; diff --git a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-category-graph.tsx b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-category-graph.tsx index ccb0ff60..96a442cc 100644 --- a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-category-graph.tsx +++ b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-category-graph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip, ChartOptions } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewTeamChartData } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-project-health-graph.tsx b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-project-health-graph.tsx index 9ca3b4b6..ce9eb541 100644 --- a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-project-health-graph.tsx +++ b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-project-health-graph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip, ChartOptions } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewTeamByHealth, diff --git a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-status-graph.tsx b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-status-graph.tsx index 862945ad..dde25b74 100644 --- a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-status-graph.tsx +++ b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-tab/reports-overview-status-graph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip, ChartOptions } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewTeamByStatus, IRPTOverviewTeamInfo } from '@/types/reporting/reporting.types'; import { ALPHA_CHANNEL } from '@/shared/constants'; diff --git a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer-tabs.tsx b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer-tabs.tsx index a285e3cf..60d0ea0a 100644 --- a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer-tabs.tsx +++ b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer-tabs.tsx @@ -1,4 +1,4 @@ -import { Tabs } from 'antd'; +import { Tabs } from '@/shared/antd-imports'; import { TabsProps } from 'antd/lib'; import { useTranslation } from 'react-i18next'; import OverviewReportsOverviewTab from './overview-tab/reports-overview-tab'; diff --git a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer.tsx b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer.tsx index d838a561..a0e8301f 100644 --- a/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer.tsx +++ b/worklenz-frontend/src/components/reporting/drawers/overview-team-info/overview-team-info-drawer.tsx @@ -1,8 +1,7 @@ -import { Drawer, Typography, Flex, Button, Dropdown } from 'antd'; -import React, { useState } from 'react'; +import { Drawer, Typography, Flex, Button, Dropdown } from '@/shared/antd-imports'; import { useAppSelector } from '../../../../hooks/useAppSelector'; import { useAppDispatch } from '../../../../hooks/useAppDispatch'; -import { BankOutlined, DownOutlined } from '@ant-design/icons'; +import { BankOutlined } from '@/shared/antd-imports'; import { colors } from '../../../../styles/colors'; import { useTranslation } from 'react-i18next'; @@ -28,7 +27,7 @@ const OverviewTeamInfoDrawer = ({ team }: OverviewTeamInfoDrawerProps) => { return ( { diff --git a/worklenz-frontend/src/components/task-drawer/shared/activity-log/task-drawer-activity-log.tsx b/worklenz-frontend/src/components/task-drawer/shared/activity-log/task-drawer-activity-log.tsx index 7b23a596..b5e51432 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/activity-log/task-drawer-activity-log.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/activity-log/task-drawer-activity-log.tsx @@ -1,7 +1,7 @@ -import { Timeline, Typography, Flex, ConfigProvider, Tag, Tooltip, Skeleton } from 'antd'; +import { Timeline, Typography, Flex, ConfigProvider, Tag, Tooltip, Skeleton } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { ArrowRightOutlined } from '@ant-design/icons'; +import { ArrowRightOutlined } from '@/shared/antd-imports'; import { IActivityLog, diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-grid.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-grid.tsx index 7145a556..9373bd4e 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-grid.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-grid.tsx @@ -3,8 +3,6 @@ import AttachmentsPreview from './attachments-preview'; import './attachments-preview.css'; import type { RcFile, UploadProps } from 'antd/es/upload'; import { TFunction } from 'i18next'; -import { ReloadOutlined } from '@ant-design/icons'; -import { message } from 'antd'; import AttachmentsUpload from './attachments-upload'; interface AttachmentsGridProps { diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-preview.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-preview.tsx index ad9b8aba..f0f119b4 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-preview.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-preview.tsx @@ -1,13 +1,12 @@ import { useState } from 'react'; import { ITaskAttachmentViewModel } from '@/types/tasks/task-attachment-view-model'; -import { Button, Modal, Spin, Tooltip, Typography, Popconfirm, message } from 'antd'; +import { Button, Modal, Spin, Tooltip, Typography, Popconfirm, message } from '@/shared/antd-imports'; import { EyeOutlined, DownloadOutlined, DeleteOutlined, QuestionCircleOutlined, - LoadingOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { attachmentsApiService } from '@/api/attachments/attachments.api.service'; import { IconsMap } from '@/shared/constants'; import './attachments-preview.css'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-upload.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-upload.tsx index 996821ec..01df2b96 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-upload.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/attachments/attachments-upload.tsx @@ -1,4 +1,4 @@ -import { LoadingOutlined, PlusOutlined } from '@ant-design/icons'; +import { LoadingOutlined, PlusOutlined } from '@/shared/antd-imports'; import React, { useRef, useState } from 'react'; import { TFunction } from 'i18next'; import './attachments-upload.css'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-comments.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-comments.tsx index 95e636fc..acaac62b 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-comments.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-comments.tsx @@ -1,9 +1,9 @@ import { useState, useEffect, useRef, useCallback } from 'react'; -import { Skeleton, Avatar, Tooltip, Popconfirm } from 'antd'; +import { Skeleton, Avatar, Tooltip, Popconfirm } from '@/shared/antd-imports'; import { Comment } from '@ant-design/compatible'; import dayjs from 'dayjs'; -import { LikeOutlined, LikeTwoTone } from '@ant-design/icons'; +import { LikeOutlined, LikeTwoTone } from '@/shared/antd-imports'; import { ITaskCommentViewModel } from '@/types/tasks/task-comments.types'; import taskCommentsApiService from '@/api/tasks/task-comments.api.service'; import { useAuthService } from '@/hooks/useAuth'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-view-comment-edit.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-view-comment-edit.tsx index e215ad99..1c4348f6 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-view-comment-edit.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/comments/task-view-comment-edit.tsx @@ -1,5 +1,5 @@ import { useState, useEffect } from 'react'; -import { Button, Form, Input, Space } from 'antd'; +import { Button, Form, Input, Space } from '@/shared/antd-imports'; import { ITaskCommentViewModel } from '@/types/tasks/task-comments.types'; import taskCommentsApiService from '@/api/tasks/task-comments.api.service'; import logger from '@/utils/errorLogger'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/dependencies-table.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/dependencies-table.tsx index 28568a38..1816dd7f 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/dependencies-table.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/dependencies-table.tsx @@ -10,9 +10,9 @@ import { TableProps, Tag, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import React, { useState, useEffect } from 'react'; -import { DeleteOutlined, ExclamationCircleFilled } from '@ant-design/icons'; +import { DeleteOutlined, ExclamationCircleFilled } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { updateTaskCounts } from '@/features/task-management/task-management.slice'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-assignee-selector/task-drawer-assignee-selector.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-assignee-selector/task-drawer-assignee-selector.tsx index 0d0a1960..c9c71e7f 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-assignee-selector/task-drawer-assignee-selector.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-assignee-selector/task-drawer-assignee-selector.tsx @@ -11,7 +11,7 @@ import Button from 'antd/es/button'; import { useMemo, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import SingleAvatar from '@/components/common/single-avatar/single-avatar'; import { CheckboxChangeEvent } from 'antd/es/checkbox'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-due-date/task-drawer-due-date.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-due-date/task-drawer-due-date.tsx index b6a03690..0c8325b7 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-due-date/task-drawer-due-date.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-due-date/task-drawer-due-date.tsx @@ -1,5 +1,5 @@ import { useState } from 'react'; -import { Flex, DatePicker, Typography, Button, Form, FormInstance } from 'antd'; +import { Flex, DatePicker, Typography, Button, Form, FormInstance } from '@/shared/antd-imports'; import { t, TFunction } from 'i18next'; import dayjs, { Dayjs } from 'dayjs'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-estimation/task-drawer-estimation.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-estimation/task-drawer-estimation.tsx index ed204673..37bc6f55 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-estimation/task-drawer-estimation.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-estimation/task-drawer-estimation.tsx @@ -2,7 +2,7 @@ import { SocketEvents } from '@/shared/socket-events'; import { useSocket } from '@/socket/socketContext'; import { colors } from '@/styles/colors'; import { ITaskViewModel } from '@/types/tasks/task.types'; -import { Flex, Form, FormInstance, InputNumber, Typography } from 'antd'; +import { Flex, Form, FormInstance, InputNumber, Typography } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import { useState } from 'react'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-key/task-drawer-key.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-key/task-drawer-key.tsx index 659f39b9..d884c832 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-key/task-drawer-key.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-key/task-drawer-key.tsx @@ -1,7 +1,7 @@ import { ITaskFormViewModel } from '@/types/tasks/task.types'; -import { Tag } from 'antd'; +import { Tag } from '@/shared/antd-imports'; -import { Form } from 'antd'; +import { Form } from '@/shared/antd-imports'; interface TaskDrawerKeyProps { taskKey: string; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-labels/task-drawer-labels.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-labels/task-drawer-labels.tsx index 55f957b3..2b70d41f 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-labels/task-drawer-labels.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-labels/task-drawer-labels.tsx @@ -1,4 +1,4 @@ -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { Badge, Button, @@ -12,7 +12,7 @@ import { List, Tag, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useMemo, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-phase-selector/task-drawer-phase-selector.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-phase-selector/task-drawer-phase-selector.tsx index e7504761..2588d078 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-phase-selector/task-drawer-phase-selector.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-phase-selector/task-drawer-phase-selector.tsx @@ -1,8 +1,8 @@ import { useSocket } from '@/socket/socketContext'; import { ITaskPhase } from '@/types/tasks/taskPhase.types'; -import { Select } from 'antd'; +import { Select } from '@/shared/antd-imports'; -import { Form } from 'antd'; +import { Form } from '@/shared/antd-imports'; import { SocketEvents } from '@/shared/socket-events'; import { ITaskViewModel } from '@/types/tasks/task.types'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-priority-selector/task-drawer-priority-selector.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-priority-selector/task-drawer-priority-selector.tsx index 6436dfd9..b8678de6 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-priority-selector/task-drawer-priority-selector.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-priority-selector/task-drawer-priority-selector.tsx @@ -1,4 +1,4 @@ -import { Flex, Select, Typography } from 'antd'; +import { Flex, Select, Typography } from '@/shared/antd-imports'; import './priority-dropdown.css'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useState, useEffect, useMemo } from 'react'; @@ -6,7 +6,7 @@ import { ALPHA_CHANNEL } from '@/shared/constants'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; import { ITaskPriority } from '@/types/tasks/taskPriority.types'; -import { DoubleLeftOutlined, MinusOutlined, PauseOutlined } from '@ant-design/icons'; +import { DoubleLeftOutlined, MinusOutlined, PauseOutlined } from '@/shared/antd-imports'; import { ITaskViewModel } from '@/types/tasks/task.types'; import { useAuthService } from '@/hooks/useAuth'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-progress/task-drawer-progress.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-progress/task-drawer-progress.tsx index c8600ed9..f58f7ceb 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-progress/task-drawer-progress.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-progress/task-drawer-progress.tsx @@ -1,6 +1,6 @@ -import { Form, InputNumber, Tooltip, Modal } from 'antd'; +import { Form, InputNumber, Tooltip, Modal } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; -import { QuestionCircleOutlined } from '@ant-design/icons'; +import { QuestionCircleOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { ITaskViewModel } from '@/types/tasks/task.types'; import Flex from 'antd/lib/flex'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-recurring-config/task-drawer-recurring-config.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-recurring-config/task-drawer-recurring-config.tsx index 1d12c480..84ff8d47 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-recurring-config/task-drawer-recurring-config.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/details/task-drawer-recurring-config/task-drawer-recurring-config.tsx @@ -11,8 +11,8 @@ import { Skeleton, Row, Col, -} from 'antd'; -import { SettingOutlined } from '@ant-design/icons'; +} from '@/shared/antd-imports'; +import { SettingOutlined } from '@/shared/antd-imports'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; import { diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/info-tab-footer.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/info-tab-footer.tsx index 0bfabd28..62f5383b 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/info-tab-footer.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/info-tab-footer.tsx @@ -1,7 +1,7 @@ -import { Button, Flex, Form, Mentions, Space, Tooltip, Typography, message } from 'antd'; +import { Button, Flex, Form, Mentions, Space, Tooltip, Typography, message } from '@/shared/antd-imports'; import { useCallback, useEffect, useRef, useState, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { PaperClipOutlined, DeleteOutlined, PlusOutlined } from '@ant-design/icons'; +import { PaperClipOutlined, DeleteOutlined, PlusOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/notify-member-selector.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/notify-member-selector.tsx index cde137d9..41563380 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/notify-member-selector.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/notify-member-selector.tsx @@ -1,4 +1,4 @@ -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { Button, Card, @@ -10,7 +10,7 @@ import { InputRef, List, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useMemo, useRef, useState } from 'react'; import { TFunction } from 'i18next'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/subtask-table.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/subtask-table.tsx index d8ca806b..8bb0fb36 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/subtask-table.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/subtask-table.tsx @@ -1,6 +1,6 @@ -import { Button, Flex, Input, Popconfirm, Progress, Table, Tag, Tooltip } from 'antd'; +import { Button, Flex, Input, Popconfirm, Progress, Table, Tag, Tooltip } from '@/shared/antd-imports'; import { useState, useMemo, useEffect } from 'react'; -import { DeleteOutlined, EditOutlined, ExclamationCircleFilled } from '@ant-design/icons'; +import { DeleteOutlined, EditOutlined, ExclamationCircleFilled } from '@/shared/antd-imports'; import { nanoid } from '@reduxjs/toolkit'; import { TFunction } from 'i18next'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-details-form.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-details-form.tsx index 23dac128..8e960674 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-details-form.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-details-form.tsx @@ -9,7 +9,7 @@ import { Button, ConfigProvider, Flex, -} from 'antd'; +} from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { colors } from '@/styles/colors'; import { ITaskFormViewModel, ITaskViewModel } from '@/types/tasks/task.types'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-drawer-info-tab.tsx b/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-drawer-info-tab.tsx index e90c9cce..f4dbd974 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-drawer-info-tab.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/info-tab/task-drawer-info-tab.tsx @@ -1,6 +1,6 @@ -import { Button, Collapse, CollapseProps, Flex, Skeleton, Tooltip, Typography, Upload } from 'antd'; +import { Button, Collapse, CollapseProps, Flex, Skeleton, Tooltip, Typography } from '@/shared/antd-imports'; import React, { useEffect, useState, useRef } from 'react'; -import { ReloadOutlined } from '@ant-design/icons'; +import { ReloadOutlined } from '@/shared/antd-imports'; import DescriptionEditor from './description-editor'; import SubTaskTable from './subtask-table'; import DependenciesTable from './dependencies-table'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/time-log/TaskDrawerTimeLog.tsx b/worklenz-frontend/src/components/task-drawer/shared/time-log/TaskDrawerTimeLog.tsx index 02e073d8..35f6759d 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/time-log/TaskDrawerTimeLog.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/time-log/TaskDrawerTimeLog.tsx @@ -1,5 +1,5 @@ -import { DownloadOutlined, PlusOutlined } from '@ant-design/icons'; -import { Button, Divider, Flex, Skeleton, Typography } from 'antd'; +import { DownloadOutlined, PlusOutlined } from '@/shared/antd-imports'; +import { Button, Divider, Flex, Skeleton, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import EmptyListPlaceholder from '@/components/EmptyListPlaceholder'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/time-log/task-drawer-time-log.tsx b/worklenz-frontend/src/components/task-drawer/shared/time-log/task-drawer-time-log.tsx index 97daf8b5..61f245cf 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/time-log/task-drawer-time-log.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/time-log/task-drawer-time-log.tsx @@ -1,5 +1,5 @@ -import { DownloadOutlined, PlayCircleFilled, PlusOutlined } from '@ant-design/icons'; -import { Button, Divider, Flex, Skeleton, Typography } from 'antd'; +import { DownloadOutlined } from '@/shared/antd-imports'; +import { Button, Divider, Flex, Skeleton, Typography } from '@/shared/antd-imports'; import { useEffect, useState, useCallback } from 'react'; import { TFunction } from 'i18next'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-form.tsx b/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-form.tsx index 91463e6b..ed48a922 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-form.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-form.tsx @@ -1,6 +1,6 @@ import React from 'react'; -import { Button, DatePicker, Form, Input, TimePicker, Flex } from 'antd'; -import { ClockCircleOutlined } from '@ant-design/icons'; +import { Button, DatePicker, Form, Input, TimePicker, Flex } from '@/shared/antd-imports'; +import { ClockCircleOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import dayjs from 'dayjs'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-item.tsx b/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-item.tsx index a7d88fe6..8e1fcbe9 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-item.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-item.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Button, Divider, Flex, Popconfirm, Typography, Space } from 'antd'; +import { Button, Divider, Flex, Popconfirm, Typography, Space } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { ITaskLogViewModel } from '@/types/tasks/task-log-view.types'; import SingleAvatar from '@/components/common/single-avatar/single-avatar'; diff --git a/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-list.tsx b/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-list.tsx index 192d6990..05ff540a 100644 --- a/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-list.tsx +++ b/worklenz-frontend/src/components/task-drawer/shared/time-log/time-log-list.tsx @@ -1,4 +1,4 @@ -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import React, { useState } from 'react'; import TimeLogItem from './time-log-item'; import { ITaskLogViewModel } from '@/types/tasks/task-log-view.types'; diff --git a/worklenz-frontend/src/components/task-drawer/task-drawer-header/task-drawer-header.tsx b/worklenz-frontend/src/components/task-drawer/task-drawer-header/task-drawer-header.tsx index 40de65e8..cad8d6cb 100644 --- a/worklenz-frontend/src/components/task-drawer/task-drawer-header/task-drawer-header.tsx +++ b/worklenz-frontend/src/components/task-drawer/task-drawer-header/task-drawer-header.tsx @@ -1,6 +1,6 @@ -import { Button, Dropdown, Flex, Input, InputRef, MenuProps, Tooltip } from 'antd'; +import { Button, Dropdown, Flex, Input, InputRef, MenuProps, Tooltip } from '@/shared/antd-imports'; import React, { ChangeEvent, useEffect, useRef, useState } from 'react'; -import { EllipsisOutlined } from '@ant-design/icons'; +import { EllipsisOutlined } from '@/shared/antd-imports'; import { TFunction } from 'i18next'; import './task-drawer-header.css'; diff --git a/worklenz-frontend/src/components/task-drawer/task-drawer-status-dropdown/task-drawer-status-dropdown.tsx b/worklenz-frontend/src/components/task-drawer/task-drawer-status-dropdown/task-drawer-status-dropdown.tsx index a7460e0a..e965d6a3 100644 --- a/worklenz-frontend/src/components/task-drawer/task-drawer-status-dropdown/task-drawer-status-dropdown.tsx +++ b/worklenz-frontend/src/components/task-drawer/task-drawer-status-dropdown/task-drawer-status-dropdown.tsx @@ -11,7 +11,7 @@ import { ITaskListStatusChangeResponse } from '@/types/tasks/task-list-status.ty import { ITaskViewModel } from '@/types/tasks/task.types'; import { ITaskStatus } from '@/types/tasks/taskStatus.types'; import { checkTaskDependencyStatus } from '@/utils/check-task-dependency-status'; -import { Select } from 'antd'; +import { Select } from '@/shared/antd-imports'; import { useMemo } from 'react'; import { updateEnhancedKanbanTaskStatus } from '@/features/enhanced-kanban/enhanced-kanban.slice'; diff --git a/worklenz-frontend/src/components/task-drawer/task-drawer.tsx b/worklenz-frontend/src/components/task-drawer/task-drawer.tsx index de80fb4f..835a9ab2 100644 --- a/worklenz-frontend/src/components/task-drawer/task-drawer.tsx +++ b/worklenz-frontend/src/components/task-drawer/task-drawer.tsx @@ -1,9 +1,9 @@ -import { TabsProps, Tabs, Button } from 'antd'; +import { TabsProps, Tabs, Button } from '@/shared/antd-imports'; import Drawer from 'antd/es/drawer'; import { InputRef } from 'antd/es/input'; import { useTranslation } from 'react-i18next'; import { useEffect, useRef, useState } from 'react'; -import { PlusOutlined, CloseOutlined, ArrowLeftOutlined } from '@ant-design/icons'; +import { PlusOutlined, CloseOutlined, ArrowLeftOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; @@ -25,7 +25,7 @@ import TimeLogForm from './shared/time-log/time-log-form'; import { DEFAULT_TASK_NAME } from '@/shared/constants'; import useTaskDrawerUrlSync from '@/hooks/useTaskDrawerUrlSync'; import InfoTabFooter from './shared/info-tab/info-tab-footer'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; const TaskDrawer = () => { const { t } = useTranslation('task-drawer/task-drawer'); diff --git a/worklenz-frontend/src/components/task-drawer/task-hierarchy-breadcrumb/task-hierarchy-breadcrumb.tsx b/worklenz-frontend/src/components/task-drawer/task-hierarchy-breadcrumb/task-hierarchy-breadcrumb.tsx index 792b4347..2e9b615c 100644 --- a/worklenz-frontend/src/components/task-drawer/task-hierarchy-breadcrumb/task-hierarchy-breadcrumb.tsx +++ b/worklenz-frontend/src/components/task-drawer/task-hierarchy-breadcrumb/task-hierarchy-breadcrumb.tsx @@ -1,6 +1,6 @@ import React, { useState, useEffect } from 'react'; -import { Breadcrumb, Button, Typography, Tooltip } from 'antd'; -import { HomeOutlined } from '@ant-design/icons'; +import { Breadcrumb, Button, Typography, Tooltip } from '@/shared/antd-imports'; +import { HomeOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { fetchTask, setSelectedTaskId } from '@/features/task-drawer/task-drawer.slice'; diff --git a/worklenz-frontend/src/components/task-list-common/assigneeSelector/AssigneeSelector.tsx b/worklenz-frontend/src/components/task-list-common/assigneeSelector/AssigneeSelector.tsx index 256e7eb6..cda82637 100644 --- a/worklenz-frontend/src/components/task-list-common/assigneeSelector/AssigneeSelector.tsx +++ b/worklenz-frontend/src/components/task-list-common/assigneeSelector/AssigneeSelector.tsx @@ -11,14 +11,14 @@ import { InputRef, List, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import React, { useMemo, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleProjectMemberDrawer } from '../../../features/projects/singleProject/members/projectMembersSlice'; import CustomAvatar from '../../CustomAvatar'; import { colors } from '../../../styles/colors'; -import { PlusOutlined, UsergroupAddOutlined } from '@ant-design/icons'; +import { PlusOutlined, UsergroupAddOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { ITaskAssignee } from '@/types/tasks/task.types'; diff --git a/worklenz-frontend/src/components/task-list-common/convert-to-subtask-drawer/convert-to-subtask-drawer.tsx b/worklenz-frontend/src/components/task-list-common/convert-to-subtask-drawer/convert-to-subtask-drawer.tsx index b4d53a19..b4398714 100644 --- a/worklenz-frontend/src/components/task-list-common/convert-to-subtask-drawer/convert-to-subtask-drawer.tsx +++ b/worklenz-frontend/src/components/task-list-common/convert-to-subtask-drawer/convert-to-subtask-drawer.tsx @@ -9,7 +9,7 @@ import { setConvertToSubtaskDrawerOpen, updateTaskStatus, } from '@/features/tasks/tasks.slice'; -import { RightOutlined } from '@ant-design/icons'; +import { RightOutlined } from '@/shared/antd-imports'; import CustomSearchbar from '@/components/CustomSearchbar'; import { ITaskListConfigV2, tasksApiService } from '@/api/tasks/tasks.api.service'; import { SocketEvents } from '@/shared/socket-events'; diff --git a/worklenz-frontend/src/components/task-list-common/labelsSelector/color-changed-label.tsx b/worklenz-frontend/src/components/task-list-common/labelsSelector/color-changed-label.tsx index f76e9d8d..ce708d81 100644 --- a/worklenz-frontend/src/components/task-list-common/labelsSelector/color-changed-label.tsx +++ b/worklenz-frontend/src/components/task-list-common/labelsSelector/color-changed-label.tsx @@ -1,4 +1,4 @@ -import { Select, Tag, Tooltip } from 'antd'; +import { Select, Tag, Tooltip } from '@/shared/antd-imports'; import { PhaseColorCodes } from '../../../shared/constants'; import { useTranslation } from 'react-i18next'; import { ITaskLabel } from '@/types/tasks/taskLabel.types'; diff --git a/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-color-label.tsx b/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-color-label.tsx index 29f582dc..aff1f4c4 100644 --- a/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-color-label.tsx +++ b/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-color-label.tsx @@ -1,4 +1,4 @@ -import { Tag, Typography } from 'antd'; +import { Tag, Typography } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { ITaskLabel } from '@/types/tasks/taskLabel.types'; import { ALPHA_CHANNEL } from '@/shared/constants'; diff --git a/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-number-label.tsx b/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-number-label.tsx index 9e8505af..d354ca72 100644 --- a/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-number-label.tsx +++ b/worklenz-frontend/src/components/task-list-common/labelsSelector/custom-number-label.tsx @@ -1,4 +1,4 @@ -import { Tag, Tooltip } from 'antd'; +import { Tag, Tooltip } from '@/shared/antd-imports'; import { ITaskLabel } from '@/types/tasks/taskLabel.types'; const CustomNumberLabel = ({ labelList }: { labelList: ITaskLabel[] | null }) => { diff --git a/worklenz-frontend/src/components/task-list-common/labelsSelector/labels-selector.tsx b/worklenz-frontend/src/components/task-list-common/labelsSelector/labels-selector.tsx index 554236b5..e794ab8b 100644 --- a/worklenz-frontend/src/components/task-list-common/labelsSelector/labels-selector.tsx +++ b/worklenz-frontend/src/components/task-list-common/labelsSelector/labels-selector.tsx @@ -1,5 +1,5 @@ /* eslint-disable react-hooks/exhaustive-deps */ -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { Badge, Button, @@ -12,7 +12,7 @@ import { InputRef, List, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import React, { useMemo, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/components/task-list-common/phaseDropdown/PhaseDropdown.tsx b/worklenz-frontend/src/components/task-list-common/phaseDropdown/PhaseDropdown.tsx index 468f2e24..100e1ffc 100644 --- a/worklenz-frontend/src/components/task-list-common/phaseDropdown/PhaseDropdown.tsx +++ b/worklenz-frontend/src/components/task-list-common/phaseDropdown/PhaseDropdown.tsx @@ -1,4 +1,4 @@ -import { Badge, Flex, Select, Typography } from 'antd'; +import { Badge, Flex, Select, Typography } from '@/shared/antd-imports'; import React, { useState } from 'react'; // custom css file import './phaseDropdown.css'; diff --git a/worklenz-frontend/src/components/task-list-common/priorityDropdown/priority-dropdown.tsx b/worklenz-frontend/src/components/task-list-common/priorityDropdown/priority-dropdown.tsx index 7e7ee9c7..1829e799 100644 --- a/worklenz-frontend/src/components/task-list-common/priorityDropdown/priority-dropdown.tsx +++ b/worklenz-frontend/src/components/task-list-common/priorityDropdown/priority-dropdown.tsx @@ -1,4 +1,4 @@ -import { Flex, Select, Typography } from 'antd'; +import { Flex, Select, Typography } from '@/shared/antd-imports'; import './priority-dropdown.css'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useState, useEffect, useMemo } from 'react'; @@ -7,7 +7,7 @@ import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; import { ITaskPriority } from '@/types/tasks/taskPriority.types'; -import { DoubleLeftOutlined, MinusOutlined, PauseOutlined } from '@ant-design/icons'; +import { DoubleLeftOutlined, MinusOutlined, PauseOutlined } from '@/shared/antd-imports'; type PriorityDropdownProps = { task: IProjectTask; diff --git a/worklenz-frontend/src/components/task-list-common/status-dropdown/status-dropdown.tsx b/worklenz-frontend/src/components/task-list-common/status-dropdown/status-dropdown.tsx index 09f27c8b..92a38e9d 100644 --- a/worklenz-frontend/src/components/task-list-common/status-dropdown/status-dropdown.tsx +++ b/worklenz-frontend/src/components/task-list-common/status-dropdown/status-dropdown.tsx @@ -1,4 +1,4 @@ -import { Flex, Select } from 'antd'; +import { Flex, Select } from '@/shared/antd-imports'; import './status-dropdown.css'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useMemo } from 'react'; diff --git a/worklenz-frontend/src/components/task-list-common/task-row/task-list-due-time-cell/task-row-due-time.tsx b/worklenz-frontend/src/components/task-list-common/task-row/task-list-due-time-cell/task-row-due-time.tsx index 3cdb9a45..7898cf20 100644 --- a/worklenz-frontend/src/components/task-list-common/task-row/task-list-due-time-cell/task-row-due-time.tsx +++ b/worklenz-frontend/src/components/task-list-common/task-row/task-list-due-time-cell/task-row-due-time.tsx @@ -1,4 +1,4 @@ -import { TimePicker, TimePickerProps } from 'antd'; +import { TimePicker, TimePickerProps } from '@/shared/antd-imports'; type TaskRowDueTimeProps = { dueTime: string; diff --git a/worklenz-frontend/src/components/task-list-common/task-row/task-row-description/task-row-description.tsx b/worklenz-frontend/src/components/task-list-common/task-row/task-row-description/task-row-description.tsx index 3deffddc..e90ff63e 100644 --- a/worklenz-frontend/src/components/task-list-common/task-row/task-row-description/task-row-description.tsx +++ b/worklenz-frontend/src/components/task-list-common/task-row/task-row-description/task-row-description.tsx @@ -1,4 +1,4 @@ -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; const TaskRowDescription = ({ description }: { description: string }) => { return ( diff --git a/worklenz-frontend/src/components/task-list-common/task-row/task-row-name/task-row-name.tsx b/worklenz-frontend/src/components/task-list-common/task-row/task-row-name/task-row-name.tsx index 11ee8514..5d4f8de8 100644 --- a/worklenz-frontend/src/components/task-list-common/task-row/task-row-name/task-row-name.tsx +++ b/worklenz-frontend/src/components/task-list-common/task-row/task-row-name/task-row-name.tsx @@ -1,12 +1,12 @@ // TaskNameCell.tsx import React, { useCallback } from 'react'; -import { Flex, Typography, Button } from 'antd'; +import { Flex, Typography, Button } from '@/shared/antd-imports'; import { DoubleRightOutlined, DownOutlined, RightOutlined, ExpandAltOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { setShowTaskDrawer } from '@/features/task-drawer/task-drawer.slice'; diff --git a/worklenz-frontend/src/components/task-list-common/task-row/task-row-progress/task-row-progress.tsx b/worklenz-frontend/src/components/task-list-common/task-row/task-row-progress/task-row-progress.tsx index 6bfaa7fb..564d0c23 100644 --- a/worklenz-frontend/src/components/task-list-common/task-row/task-row-progress/task-row-progress.tsx +++ b/worklenz-frontend/src/components/task-list-common/task-row/task-row-progress/task-row-progress.tsx @@ -1,4 +1,4 @@ -import { Progress, Tooltip } from 'antd'; +import { Progress, Tooltip } from '@/shared/antd-imports'; import './task-row-progress.css'; import React from 'react'; diff --git a/worklenz-frontend/src/components/task-list-common/task-row/task-row-time-tracking/task-row-time-tracking.tsx b/worklenz-frontend/src/components/task-list-common/task-row/task-row-time-tracking/task-row-time-tracking.tsx index 2d4f7395..2aeafe48 100644 --- a/worklenz-frontend/src/components/task-list-common/task-row/task-row-time-tracking/task-row-time-tracking.tsx +++ b/worklenz-frontend/src/components/task-list-common/task-row/task-row-time-tracking/task-row-time-tracking.tsx @@ -1,6 +1,6 @@ import React, { useMemo } from 'react'; -import { Divider, Empty, Flex, Popover, Typography } from 'antd'; -import { PlayCircleFilled } from '@ant-design/icons'; +import { Divider, Empty, Flex, Popover, Typography } from '@/shared/antd-imports'; +import { PlayCircleFilled } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import CustomAvatar from '@components/CustomAvatar'; import { mockTimeLogs } from '@/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/mockTimeLogs'; diff --git a/worklenz-frontend/src/components/task-list-v2/GroupProgressBar.tsx b/worklenz-frontend/src/components/task-list-v2/GroupProgressBar.tsx index 0d17c779..10a89f84 100644 --- a/worklenz-frontend/src/components/task-list-v2/GroupProgressBar.tsx +++ b/worklenz-frontend/src/components/task-list-v2/GroupProgressBar.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { useTranslation } from 'react-i18next'; -import { Tooltip } from 'antd'; +import { Tooltip } from '@/shared/antd-imports'; interface GroupProgressBarProps { todoProgress: number; diff --git a/worklenz-frontend/src/components/task-list-v2/TaskGroupHeader.tsx b/worklenz-frontend/src/components/task-list-v2/TaskGroupHeader.tsx index 27adf3be..32a19dd4 100644 --- a/worklenz-frontend/src/components/task-list-v2/TaskGroupHeader.tsx +++ b/worklenz-frontend/src/components/task-list-v2/TaskGroupHeader.tsx @@ -8,7 +8,7 @@ import { PencilIcon, ArrowPathIcon, } from '@heroicons/react/24/outline'; -import { Checkbox, Dropdown, Menu, Input, Modal, Badge, Flex } from 'antd'; +import { Checkbox, Dropdown, Menu, Input, Modal, Badge, Flex } from '@/shared/antd-imports'; import GroupProgressBar from './GroupProgressBar'; import { useTranslation } from 'react-i18next'; import { getContrastColor } from '@/utils/colorUtils'; diff --git a/worklenz-frontend/src/components/task-list-v2/TaskListV2Table.tsx b/worklenz-frontend/src/components/task-list-v2/TaskListV2Table.tsx index 4991cc3b..933a525c 100644 --- a/worklenz-frontend/src/components/task-list-v2/TaskListV2Table.tsx +++ b/worklenz-frontend/src/components/task-list-v2/TaskListV2Table.tsx @@ -19,8 +19,7 @@ import { import { useTranslation } from 'react-i18next'; import { useParams } from 'react-router-dom'; import { createPortal } from 'react-dom'; -import { Skeleton } from 'antd'; -import { HolderOutlined } from '@ant-design/icons'; +import { HolderOutlined } from '@/shared/antd-imports'; // Redux hooks and selectors import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/components/task-list-v2/TaskRowWithSubtasks.tsx b/worklenz-frontend/src/components/task-list-v2/TaskRowWithSubtasks.tsx index f6c35cfc..70bbaf70 100644 --- a/worklenz-frontend/src/components/task-list-v2/TaskRowWithSubtasks.tsx +++ b/worklenz-frontend/src/components/task-list-v2/TaskRowWithSubtasks.tsx @@ -5,8 +5,8 @@ import { selectTaskById, createSubtask, selectSubtaskLoading } from '@/features/ import TaskRow from './TaskRow'; import SubtaskLoadingSkeleton from './SubtaskLoadingSkeleton'; import { Task } from '@/types/task-management.types'; -import { Input, Button } from 'antd'; -import { PlusOutlined } from '@ant-design/icons'; +import { Input, Button } from '@/shared/antd-imports'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/task-list-v2/components/AddTaskRow.tsx b/worklenz-frontend/src/components/task-list-v2/components/AddTaskRow.tsx index 43dfa7f5..9e517f01 100644 --- a/worklenz-frontend/src/components/task-list-v2/components/AddTaskRow.tsx +++ b/worklenz-frontend/src/components/task-list-v2/components/AddTaskRow.tsx @@ -1,6 +1,6 @@ import React, { useState, useCallback, memo, useRef, useEffect } from 'react'; -import { Input } from 'antd'; -import { PlusOutlined } from '@ant-design/icons'; +import { Input } from '@/shared/antd-imports'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; diff --git a/worklenz-frontend/src/components/task-list-v2/components/CustomColumnComponents.tsx b/worklenz-frontend/src/components/task-list-v2/components/CustomColumnComponents.tsx index a79839ac..23c5fae6 100644 --- a/worklenz-frontend/src/components/task-list-v2/components/CustomColumnComponents.tsx +++ b/worklenz-frontend/src/components/task-list-v2/components/CustomColumnComponents.tsx @@ -1,6 +1,6 @@ import React, { useState, useCallback, useMemo, memo, useEffect } from 'react'; -import { Button, Tooltip, Flex, Dropdown, DatePicker, Input } from 'antd'; -import { PlusOutlined, SettingOutlined, UsergroupAddOutlined } from '@ant-design/icons'; +import { Tooltip, Flex, Dropdown, DatePicker, Input } from '@/shared/antd-imports'; +import { PlusOutlined, SettingOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/task-list-v2/components/DatePickerColumn.tsx b/worklenz-frontend/src/components/task-list-v2/components/DatePickerColumn.tsx index 22e90ed4..16dfedc5 100644 --- a/worklenz-frontend/src/components/task-list-v2/components/DatePickerColumn.tsx +++ b/worklenz-frontend/src/components/task-list-v2/components/DatePickerColumn.tsx @@ -1,6 +1,6 @@ import React, { memo, useCallback, useState } from 'react'; -import { DatePicker, Tooltip } from 'antd'; -import { CloseOutlined } from '@ant-design/icons'; +import { DatePicker, Tooltip } from '@/shared/antd-imports'; +import { CloseOutlined } from '@/shared/antd-imports'; import { dayjs, taskManagementAntdConfig } from '@/shared/antd-imports'; import { Task } from '@/types/task-management.types'; import { useSocket } from '@/socket/socketContext'; diff --git a/worklenz-frontend/src/components/task-list-v2/components/TaskContextMenu.tsx b/worklenz-frontend/src/components/task-list-v2/components/TaskContextMenu.tsx index 28b0e119..3509f6c9 100644 --- a/worklenz-frontend/src/components/task-list-v2/components/TaskContextMenu.tsx +++ b/worklenz-frontend/src/components/task-list-v2/components/TaskContextMenu.tsx @@ -32,7 +32,7 @@ import { RetweetOutlined, UserAddOutlined, LoadingOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; interface TaskContextMenuProps { task: Task; diff --git a/worklenz-frontend/src/components/task-list-v2/components/TaskListSkeleton.tsx b/worklenz-frontend/src/components/task-list-v2/components/TaskListSkeleton.tsx index 54351f60..e363deb1 100644 --- a/worklenz-frontend/src/components/task-list-v2/components/TaskListSkeleton.tsx +++ b/worklenz-frontend/src/components/task-list-v2/components/TaskListSkeleton.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Skeleton } from 'antd'; +import { Skeleton } from '@/shared/antd-imports'; import ImprovedTaskFilters from '@/components/task-management/improved-task-filters'; interface TaskListSkeletonProps { diff --git a/worklenz-frontend/src/components/task-list-v2/components/TaskRowColumns.tsx b/worklenz-frontend/src/components/task-list-v2/components/TaskRowColumns.tsx index 78548f50..c5fdadd1 100644 --- a/worklenz-frontend/src/components/task-list-v2/components/TaskRowColumns.tsx +++ b/worklenz-frontend/src/components/task-list-v2/components/TaskRowColumns.tsx @@ -1,10 +1,7 @@ -import React, { memo, useCallback, useState, useRef } from 'react'; -import { CheckCircleOutlined, HolderOutlined, CloseOutlined, DownOutlined, RightOutlined, DoubleRightOutlined, ArrowsAltOutlined, CommentOutlined, EyeOutlined, PaperClipOutlined, MinusCircleOutlined, RetweetOutlined } from '@ant-design/icons'; -import { Checkbox, DatePicker, Tooltip, Input } from 'antd'; -import type { InputRef } from 'antd'; -import { dayjs, taskManagementAntdConfig } from '@/shared/antd-imports'; +import React, { memo } from 'react'; +import { CheckCircleOutlined, HolderOutlined } from '@/shared/antd-imports'; +import { Checkbox } from '@/shared/antd-imports'; import { Task } from '@/types/task-management.types'; -import { InlineMember } from '@/types/teamMembers/inlineMember.types'; import AssigneeSelector from '@/components/AssigneeSelector'; import { format } from 'date-fns'; import AvatarGroup from '../../AvatarGroup'; @@ -13,9 +10,6 @@ import TaskProgress from '@/pages/projects/project-view-1/taskList/taskListTable import TaskStatusDropdown from '@/components/task-management/task-status-dropdown'; import TaskPriorityDropdown from '@/components/task-management/task-priority-dropdown'; import TaskPhaseDropdown from '@/components/task-management/task-phase-dropdown'; -import { useAppDispatch } from '@/hooks/useAppDispatch'; -import { setSelectedTaskId, setShowTaskDrawer } from '@/features/task-drawer/task-drawer.slice'; -import { useTranslation } from 'react-i18next'; import TaskTimeTracking from '../TaskTimeTracking'; import { CustomNumberLabel, CustomColordLabel } from '@/components'; import LabelsSelector from '@/components/LabelsSelector'; diff --git a/worklenz-frontend/src/components/task-list-v2/components/TitleColumn.tsx b/worklenz-frontend/src/components/task-list-v2/components/TitleColumn.tsx index 990b4a16..0118690e 100644 --- a/worklenz-frontend/src/components/task-list-v2/components/TitleColumn.tsx +++ b/worklenz-frontend/src/components/task-list-v2/components/TitleColumn.tsx @@ -1,7 +1,7 @@ import React, { memo, useCallback, useState, useRef, useEffect } from 'react'; -import { RightOutlined, DoubleRightOutlined, ArrowsAltOutlined, CommentOutlined, EyeOutlined, PaperClipOutlined, MinusCircleOutlined, RetweetOutlined } from '@ant-design/icons'; -import { Input, Tooltip } from 'antd'; -import type { InputRef } from 'antd'; +import { RightOutlined, DoubleRightOutlined, ArrowsAltOutlined, CommentOutlined, EyeOutlined, PaperClipOutlined, MinusCircleOutlined, RetweetOutlined } from '@/shared/antd-imports'; +import { Input, Tooltip } from '@/shared/antd-imports'; +import type { InputRef } from '@/shared/antd-imports'; import { createPortal } from 'react-dom'; import { Task } from '@/types/task-management.types'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/task-management/CreateTaskModal.tsx b/worklenz-frontend/src/components/task-management/CreateTaskModal.tsx index c69aad5d..54d3ad16 100644 --- a/worklenz-frontend/src/components/task-management/CreateTaskModal.tsx +++ b/worklenz-frontend/src/components/task-management/CreateTaskModal.tsx @@ -1,6 +1,6 @@ import React, { useState, useCallback, useRef, useEffect } from 'react'; -import { Modal, Form, Input, Button, Tabs, Space, Divider, Typography, Flex, DatePicker, Select } from 'antd'; -import { PlusOutlined, DragOutlined } from '@ant-design/icons'; +import { Modal, Form, Input, Button, Tabs, Space, Divider, Typography, Flex, DatePicker, Select } from '@/shared/antd-imports'; +import { PlusOutlined, DragOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { DndContext, DragEndEvent, PointerSensor, useSensor, useSensors } from '@dnd-kit/core'; import { SortableContext, useSortable, verticalListSortingStrategy } from '@dnd-kit/sortable'; @@ -14,7 +14,7 @@ import LabelsSelector from '@/components/LabelsSelector'; import { createStatus, fetchStatuses, fetchStatusesCategories } from '@/features/taskAttributes/taskStatusSlice'; import { statusApiService } from '@/api/taskAttributes/status/status.api.service'; import { ITaskStatusUpdateModel } from '@/types/tasks/task-status-update-model.types'; -import { Modal as AntModal } from 'antd'; +import { Modal as AntModal } from '@/shared/antd-imports'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; import { useAuthService } from '@/hooks/useAuth'; diff --git a/worklenz-frontend/src/components/task-management/ManagePhaseModal.tsx b/worklenz-frontend/src/components/task-management/ManagePhaseModal.tsx index e746851c..c4896ec5 100644 --- a/worklenz-frontend/src/components/task-management/ManagePhaseModal.tsx +++ b/worklenz-frontend/src/components/task-management/ManagePhaseModal.tsx @@ -1,6 +1,6 @@ import React, { useState, useCallback, useRef, useEffect } from 'react'; -import { Modal, Form, Input, Button, Space, Divider, Typography, Flex, ColorPicker, Tooltip } from 'antd'; -import { PlusOutlined, HolderOutlined, EditOutlined, DeleteOutlined } from '@ant-design/icons'; +import { Modal, Form, Input, Button, Space, Divider, Typography, Flex, ColorPicker, Tooltip } from '@/shared/antd-imports'; +import { PlusOutlined, HolderOutlined, EditOutlined, DeleteOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { DndContext, DragEndEvent, PointerSensor, useSensor, useSensors } from '@dnd-kit/core'; import { SortableContext, useSortable, verticalListSortingStrategy } from '@dnd-kit/sortable'; @@ -20,7 +20,7 @@ import { } from '@/features/projects/singleProject/phase/phases.slice'; import { updatePhaseLabel } from '@/features/project/project.slice'; import { ITaskPhase } from '@/types/tasks/taskPhase.types'; -import { Modal as AntModal } from 'antd'; +import { Modal as AntModal } from '@/shared/antd-imports'; import { fetchTasksV3 } from '@/features/task-management/task-management.slice'; import { fetchEnhancedKanbanGroups } from '@/features/enhanced-kanban/enhanced-kanban.slice'; import { PhaseColorCodes } from '@/shared/constants'; diff --git a/worklenz-frontend/src/components/task-management/ManageStatusModal.tsx b/worklenz-frontend/src/components/task-management/ManageStatusModal.tsx index 8c24c88b..d41db552 100644 --- a/worklenz-frontend/src/components/task-management/ManageStatusModal.tsx +++ b/worklenz-frontend/src/components/task-management/ManageStatusModal.tsx @@ -1,6 +1,6 @@ import React, { useState, useCallback, useRef, useEffect } from 'react'; -import { Modal, Form, Input, Button, Space, Divider, Typography, Flex, Select, Tooltip } from 'antd'; -import { PlusOutlined, HolderOutlined, EditOutlined, DeleteOutlined } from '@ant-design/icons'; +import { Modal, Form, Input, Button, Space, Divider, Typography, Flex, Select, Tooltip } from '@/shared/antd-imports'; +import { PlusOutlined, HolderOutlined, EditOutlined, DeleteOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { DndContext, DragEndEvent, PointerSensor, useSensor, useSensors, DragOverEvent, useDroppable, closestCenter, DragOverlay } from '@dnd-kit/core'; import { SortableContext, useSortable, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable'; @@ -12,7 +12,7 @@ import { createStatus, fetchStatuses, fetchStatusesCategories } from '@/features import { statusApiService } from '@/api/taskAttributes/status/status.api.service'; import { ITaskStatusUpdateModel } from '@/types/tasks/task-status-update-model.types'; import { IKanbanTaskStatus } from '@/types/tasks/taskStatus.types'; -import { Modal as AntModal } from 'antd'; +import { Modal as AntModal } from '@/shared/antd-imports'; import { fetchTasksV3 } from '@/features/task-management/task-management.slice'; import { fetchEnhancedKanbanGroups } from '@/features/enhanced-kanban/enhanced-kanban.slice'; import './ManageStatusModal.css'; diff --git a/worklenz-frontend/src/components/task-management/lazy-assignee-selector.tsx b/worklenz-frontend/src/components/task-management/lazy-assignee-selector.tsx index aad9af15..25dfc8b6 100644 --- a/worklenz-frontend/src/components/task-management/lazy-assignee-selector.tsx +++ b/worklenz-frontend/src/components/task-management/lazy-assignee-selector.tsx @@ -1,5 +1,5 @@ import React, { useState, useCallback, Suspense } from 'react'; -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; // Lazy load the existing AssigneeSelector component only when needed (Asana-style) diff --git a/worklenz-frontend/src/components/task-management/lazy-loading-optimizations.tsx b/worklenz-frontend/src/components/task-management/lazy-loading-optimizations.tsx index afdf83bb..259fe7a0 100644 --- a/worklenz-frontend/src/components/task-management/lazy-loading-optimizations.tsx +++ b/worklenz-frontend/src/components/task-management/lazy-loading-optimizations.tsx @@ -1,5 +1,5 @@ import React, { lazy, Suspense, ComponentType, ReactNode } from 'react'; -import { Skeleton, Spin } from 'antd'; +import { Skeleton, Spin } from '@/shared/antd-imports'; // Enhanced lazy loading with error boundary and retry logic export function createOptimizedLazy>( diff --git a/worklenz-frontend/src/components/task-management/optimized-bulk-action-bar.tsx b/worklenz-frontend/src/components/task-management/optimized-bulk-action-bar.tsx index 0797783f..9bf7ee19 100644 --- a/worklenz-frontend/src/components/task-management/optimized-bulk-action-bar.tsx +++ b/worklenz-frontend/src/components/task-management/optimized-bulk-action-bar.tsx @@ -1,6 +1,6 @@ import React, { useMemo, useCallback, useState, useEffect, useRef } from 'react'; import { createPortal } from 'react-dom'; -import { Button, Typography, Dropdown, Popconfirm, Tooltip, Space, Badge, Divider } from 'antd'; +import { Button, Typography, Dropdown, Popconfirm, Tooltip, Space, Badge, Divider } from '@/shared/antd-imports'; import { DeleteOutlined, CloseOutlined, @@ -12,7 +12,7 @@ import { FlagOutlined, BulbOutlined, MoreOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { useSelector, useDispatch } from 'react-redux'; import { RootState } from '@/app/store'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/components/task-management/performance-analysis.tsx b/worklenz-frontend/src/components/task-management/performance-analysis.tsx index 9e30789b..60499469 100644 --- a/worklenz-frontend/src/components/task-management/performance-analysis.tsx +++ b/worklenz-frontend/src/components/task-management/performance-analysis.tsx @@ -1,5 +1,5 @@ import React, { useState, useEffect, useCallback } from 'react'; -import { Card, Button, Table, Progress, Alert, Space, Typography, Divider } from 'antd'; +import { Card, Button, Table, Progress, Alert, Space, Typography, Divider } from '@/shared/antd-imports'; import { performanceMonitor } from '@/utils/performance-monitor'; const { Title, Text } = Typography; diff --git a/worklenz-frontend/src/components/task-management/task-list-board.tsx b/worklenz-frontend/src/components/task-management/task-list-board.tsx index ad2421f6..563986e5 100644 --- a/worklenz-frontend/src/components/task-management/task-list-board.tsx +++ b/worklenz-frontend/src/components/task-management/task-list-board.tsx @@ -14,7 +14,7 @@ import { useSensors, } from '@dnd-kit/core'; import { sortableKeyboardCoordinates } from '@dnd-kit/sortable'; -import { Card, Spin, Empty, Alert } from 'antd'; +import { Card, Spin, Empty, Alert } from '@/shared/antd-imports'; import { RootState } from '@/app/store'; import { selectAllTasks, diff --git a/worklenz-frontend/src/components/task-management/task-phase-dropdown.tsx b/worklenz-frontend/src/components/task-management/task-phase-dropdown.tsx index 536215e0..0766f728 100644 --- a/worklenz-frontend/src/components/task-management/task-phase-dropdown.tsx +++ b/worklenz-frontend/src/components/task-management/task-phase-dropdown.tsx @@ -4,7 +4,7 @@ import { useAppSelector } from '@/hooks/useAppSelector'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; import { Task } from '@/types/task-management.types'; -import { ClearOutlined } from '@ant-design/icons'; +import { ClearOutlined } from '@/shared/antd-imports'; interface TaskPhaseDropdownProps { task: Task; diff --git a/worklenz-frontend/src/components/task-management/task-priority-dropdown.tsx b/worklenz-frontend/src/components/task-management/task-priority-dropdown.tsx index 75544ddf..e63837ae 100644 --- a/worklenz-frontend/src/components/task-management/task-priority-dropdown.tsx +++ b/worklenz-frontend/src/components/task-management/task-priority-dropdown.tsx @@ -4,7 +4,7 @@ import { useAppSelector } from '@/hooks/useAppSelector'; import { useSocket } from '@/socket/socketContext'; import { SocketEvents } from '@/shared/socket-events'; import { Task } from '@/types/task-management.types'; -import { MinusOutlined, PauseOutlined, DoubleRightOutlined } from '@ant-design/icons'; +import { MinusOutlined, PauseOutlined, DoubleRightOutlined } from '@/shared/antd-imports'; interface TaskPriorityDropdownProps { task: Task; diff --git a/worklenz-frontend/src/components/task-management/virtualized-task-list.tsx b/worklenz-frontend/src/components/task-management/virtualized-task-list.tsx index 0304c3a1..b8bf3f9e 100644 --- a/worklenz-frontend/src/components/task-management/virtualized-task-list.tsx +++ b/worklenz-frontend/src/components/task-management/virtualized-task-list.tsx @@ -3,8 +3,8 @@ import { FixedSizeList as List, FixedSizeList } from 'react-window'; import { SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable'; import { useSelector, useDispatch } from 'react-redux'; import { useTranslation } from 'react-i18next'; -import { Empty, Button, Input } from 'antd'; -import { RightOutlined, DownOutlined } from '@ant-design/icons'; +import { Empty, Button, Input } from '@/shared/antd-imports'; +import { RightOutlined, DownOutlined } from '@/shared/antd-imports'; import { taskManagementSelectors, toggleTaskExpansion, diff --git a/worklenz-frontend/src/components/task-templates/task-template-drawer.tsx b/worklenz-frontend/src/components/task-templates/task-template-drawer.tsx index 881157db..4fca590a 100644 --- a/worklenz-frontend/src/components/task-templates/task-template-drawer.tsx +++ b/worklenz-frontend/src/components/task-templates/task-template-drawer.tsx @@ -1,5 +1,5 @@ import { useState } from 'react'; -import { Button, Drawer, Form, Input, List, Typography } from 'antd'; +import { Button, Drawer, Form, Input, List, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/taskListCommon/assignee-selector/assignee-selector.tsx b/worklenz-frontend/src/components/taskListCommon/assignee-selector/assignee-selector.tsx index 6e23260a..6fe74b28 100644 --- a/worklenz-frontend/src/components/taskListCommon/assignee-selector/assignee-selector.tsx +++ b/worklenz-frontend/src/components/taskListCommon/assignee-selector/assignee-selector.tsx @@ -15,7 +15,7 @@ import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleProjectMemberDrawer } from '../../../features/projects/singleProject/members/projectMembersSlice'; import { colors } from '../../../styles/colors'; -import { PlusOutlined, UsergroupAddOutlined } from '@ant-design/icons'; +import { PlusOutlined, UsergroupAddOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import SingleAvatar from '@/components/common/single-avatar/single-avatar'; import { CheckboxChangeEvent } from 'antd/es/checkbox'; diff --git a/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomColordLabel.old.tsx b/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomColordLabel.old.tsx index f31da318..b073dd21 100644 --- a/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomColordLabel.old.tsx +++ b/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomColordLabel.old.tsx @@ -1,4 +1,4 @@ -import { Tag, Tooltip } from 'antd'; +import { Tag, Tooltip } from '@/shared/antd-imports'; import { ITaskLabel } from '@/types/tasks/taskLabel.types'; interface ICustomColordLabelProps { diff --git a/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomNumberLabel.tsx b/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomNumberLabel.tsx index 976fe2e6..f898bf89 100644 --- a/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomNumberLabel.tsx +++ b/worklenz-frontend/src/components/taskListCommon/labelsSelector/CustomNumberLabel.tsx @@ -1,4 +1,4 @@ -import { Tag, Tooltip } from 'antd'; +import { Tag, Tooltip } from '@/shared/antd-imports'; interface ICustomNumberLabelProps { labelList: string[]; diff --git a/worklenz-frontend/src/components/taskListCommon/labelsSelector/LabelsSelector.tsx b/worklenz-frontend/src/components/taskListCommon/labelsSelector/LabelsSelector.tsx index 6b47cedc..5a711ca8 100644 --- a/worklenz-frontend/src/components/taskListCommon/labelsSelector/LabelsSelector.tsx +++ b/worklenz-frontend/src/components/taskListCommon/labelsSelector/LabelsSelector.tsx @@ -1,4 +1,4 @@ -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { Badge, Button, @@ -10,7 +10,7 @@ import { InputRef, List, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useMemo, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/components/taskListCommon/labelsSelector/color-changed-label.tsx b/worklenz-frontend/src/components/taskListCommon/labelsSelector/color-changed-label.tsx index 059b313f..0622bbb6 100644 --- a/worklenz-frontend/src/components/taskListCommon/labelsSelector/color-changed-label.tsx +++ b/worklenz-frontend/src/components/taskListCommon/labelsSelector/color-changed-label.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { LabelType } from '../../../types/label.type'; -import { Select, Tag, Tooltip } from 'antd'; +import { Select, Tag, Tooltip } from '@/shared/antd-imports'; import { PhaseColorCodes } from '../../../shared/constants'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/components/taskListCommon/phase-dropdown/phase-dropdown.tsx b/worklenz-frontend/src/components/taskListCommon/phase-dropdown/phase-dropdown.tsx index 307b3a5e..1e000d85 100644 --- a/worklenz-frontend/src/components/taskListCommon/phase-dropdown/phase-dropdown.tsx +++ b/worklenz-frontend/src/components/taskListCommon/phase-dropdown/phase-dropdown.tsx @@ -1,4 +1,4 @@ -import { Badge, Flex, Select, Tooltip, Typography } from 'antd'; +import { Badge, Flex, Select, Tooltip, Typography } from '@/shared/antd-imports'; import './phase-dropdown.css'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/components/taskListCommon/priorityDropdown/PriorityDropdown.tsx b/worklenz-frontend/src/components/taskListCommon/priorityDropdown/PriorityDropdown.tsx index 940bdecf..8c5dac03 100644 --- a/worklenz-frontend/src/components/taskListCommon/priorityDropdown/PriorityDropdown.tsx +++ b/worklenz-frontend/src/components/taskListCommon/priorityDropdown/PriorityDropdown.tsx @@ -1,6 +1,6 @@ -import { Card, Dropdown, Flex, Menu, MenuProps, Typography } from 'antd'; +import { Card, Dropdown, Flex, Menu, MenuProps, Typography } from '@/shared/antd-imports'; import React, { useState } from 'react'; -import { DoubleLeftOutlined, DownOutlined, MinusOutlined, PauseOutlined } from '@ant-design/icons'; +import { DoubleLeftOutlined, DownOutlined, MinusOutlined, PauseOutlined } from '@/shared/antd-imports'; // custom css file import './priorityDropdown.css'; import { colors } from '../../../styles/colors'; diff --git a/worklenz-frontend/src/components/taskListCommon/statusDropdown/StatusDropdown.tsx b/worklenz-frontend/src/components/taskListCommon/statusDropdown/StatusDropdown.tsx index 49a5a0d8..5e31f36e 100644 --- a/worklenz-frontend/src/components/taskListCommon/statusDropdown/StatusDropdown.tsx +++ b/worklenz-frontend/src/components/taskListCommon/statusDropdown/StatusDropdown.tsx @@ -1,6 +1,6 @@ -import { Badge, Card, Dropdown, Flex, Menu, MenuProps, Typography } from 'antd'; +import { Badge, Card, Dropdown, Flex, Menu, MenuProps, Typography } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined } from '@/shared/antd-imports'; import './statusDropdown.css'; import { colors } from '../../../styles/colors'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/AssigneesDropdown.tsx b/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/AssigneesDropdown.tsx index 8b02eb4b..bf459284 100644 --- a/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/AssigneesDropdown.tsx +++ b/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/AssigneesDropdown.tsx @@ -1,4 +1,4 @@ -import { Button, Card, Checkbox, Flex, List, Typography } from 'antd'; +import { Button, Card, Checkbox, Flex, List, Typography } from '@/shared/antd-imports'; import { CheckboxChangeEvent } from 'antd/es/checkbox'; import { ITeamMemberViewModel } from '@/types/teamMembers/teamMembersGetResponse.types'; import SingleAvatar from '@/components/common/single-avatar/single-avatar'; diff --git a/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/LabelsDropdown.tsx b/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/LabelsDropdown.tsx index c069a987..c4692b3d 100644 --- a/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/LabelsDropdown.tsx +++ b/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/components/LabelsDropdown.tsx @@ -1,4 +1,4 @@ -import { Badge, Button, Card, Checkbox, Empty, Flex, Input, List, Typography } from 'antd'; +import { Badge, Button, Card, Checkbox, Empty, Flex, Input, List, Typography } from '@/shared/antd-imports'; import { CheckboxChangeEvent } from 'antd/es/checkbox'; import { ITaskLabel } from '@/types/tasks/taskLabel.types'; import { InputRef } from 'antd/es/input'; diff --git a/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/task-list-bulk-actions-bar.tsx b/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/task-list-bulk-actions-bar.tsx index c8043046..7d9569e2 100644 --- a/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/task-list-bulk-actions-bar.tsx +++ b/worklenz-frontend/src/components/taskListCommon/task-list-bulk-actions-bar/task-list-bulk-actions-bar.tsx @@ -10,7 +10,7 @@ import { DeleteOutlined, MoreOutlined, CloseCircleOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/components/taskListCommon/task-timer/task-timer.tsx b/worklenz-frontend/src/components/taskListCommon/task-timer/task-timer.tsx index 6e893080..196db7bb 100644 --- a/worklenz-frontend/src/components/taskListCommon/task-timer/task-timer.tsx +++ b/worklenz-frontend/src/components/taskListCommon/task-timer/task-timer.tsx @@ -5,8 +5,7 @@ import { ITaskLogViewModel } from '@/types/tasks/task-log-view.types'; import { calculateTimeGap } from '@/utils/calculate-time-gap'; import logger from '@/utils/errorLogger'; import { formatDateTimeWithLocale } from '@/utils/format-date-time-with-locale'; -import { formatDate } from '@/utils/timeUtils'; -import { PlayCircleFilled } from '@ant-design/icons'; +import { PlayCircleFilled } from '@/shared/antd-imports'; import { Flex, Button, Popover, Typography, Divider, Skeleton } from 'antd/es'; import React from 'react'; import { useState } from 'react'; diff --git a/worklenz-frontend/src/features/i18n/language-selector.tsx b/worklenz-frontend/src/features/i18n/language-selector.tsx index fd61c8c0..36c88757 100644 --- a/worklenz-frontend/src/features/i18n/language-selector.tsx +++ b/worklenz-frontend/src/features/i18n/language-selector.tsx @@ -1,4 +1,4 @@ -import { Button, Dropdown } from 'antd'; +import { Button, Dropdown } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { ILanguageType, setLanguage } from './localesSlice'; diff --git a/worklenz-frontend/src/features/navbar/help/HelpButton.tsx b/worklenz-frontend/src/features/navbar/help/HelpButton.tsx index 6796c595..aa66e7dc 100644 --- a/worklenz-frontend/src/features/navbar/help/HelpButton.tsx +++ b/worklenz-frontend/src/features/navbar/help/HelpButton.tsx @@ -1,5 +1,5 @@ -import { QuestionCircleOutlined } from '@ant-design/icons'; -import { Button, Tooltip } from 'antd'; +import { QuestionCircleOutlined } from '@/shared/antd-imports'; +import { Button, Tooltip } from '@/shared/antd-imports'; import React from 'react'; import { useTranslation } from 'react-i18next'; import './HelpButton.css'; diff --git a/worklenz-frontend/src/features/navbar/invite/InviteButton.tsx b/worklenz-frontend/src/features/navbar/invite/InviteButton.tsx index f9bf0248..22412822 100644 --- a/worklenz-frontend/src/features/navbar/invite/InviteButton.tsx +++ b/worklenz-frontend/src/features/navbar/invite/InviteButton.tsx @@ -1,5 +1,5 @@ -import { UsergroupAddOutlined } from '@ant-design/icons'; -import { Button, Tooltip } from 'antd'; +import { UsergroupAddOutlined } from '@/shared/antd-imports'; +import { Button, Tooltip } from '@/shared/antd-imports'; import React from 'react'; import { useTranslation } from 'react-i18next'; import { colors } from '../../../styles/colors'; diff --git a/worklenz-frontend/src/features/navbar/mobileMenu/MobileMenuButton.tsx b/worklenz-frontend/src/features/navbar/mobileMenu/MobileMenuButton.tsx index 93611545..4b6c382d 100644 --- a/worklenz-frontend/src/features/navbar/mobileMenu/MobileMenuButton.tsx +++ b/worklenz-frontend/src/features/navbar/mobileMenu/MobileMenuButton.tsx @@ -5,8 +5,8 @@ import { ProjectOutlined, QuestionCircleOutlined, ReadOutlined, -} from '@ant-design/icons'; -import { Button, Card, Dropdown, Flex, MenuProps, Space, Typography } from 'antd'; +} from '@/shared/antd-imports'; +import { Button, Card, Dropdown, Flex, MenuProps, Space, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useTranslation } from 'react-i18next'; import { colors } from '../../../styles/colors'; diff --git a/worklenz-frontend/src/features/navbar/navbar.tsx b/worklenz-frontend/src/features/navbar/navbar.tsx index fb67f6ee..1630c25e 100644 --- a/worklenz-frontend/src/features/navbar/navbar.tsx +++ b/worklenz-frontend/src/features/navbar/navbar.tsx @@ -1,7 +1,7 @@ import React, { useEffect, useState, useMemo } from 'react'; import { Link, useLocation } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; -import { Col, ConfigProvider, Flex, Menu, MenuProps, Alert } from 'antd'; +import { Col, ConfigProvider, Flex, Menu, MenuProps, Alert } from '@/shared/antd-imports'; import { createPortal } from 'react-dom'; import InviteTeamMembers from '../../components/common/invite-team-members/invite-team-members'; diff --git a/worklenz-frontend/src/features/navbar/switchTeam/SwitchTeamButton.tsx b/worklenz-frontend/src/features/navbar/switchTeam/SwitchTeamButton.tsx index c017b23b..b2dddbc4 100644 --- a/worklenz-frontend/src/features/navbar/switchTeam/SwitchTeamButton.tsx +++ b/worklenz-frontend/src/features/navbar/switchTeam/SwitchTeamButton.tsx @@ -1,8 +1,8 @@ // Ant Design Icons -import { BankOutlined, CaretDownFilled, CheckCircleFilled } from '@ant-design/icons'; +import { BankOutlined, CaretDownFilled, CheckCircleFilled } from '@/shared/antd-imports'; // Ant Design Components -import { Card, Divider, Dropdown, Flex, Tooltip, Typography } from 'antd'; +import { Card, Divider, Dropdown, Flex, Tooltip, Typography } from '@/shared/antd-imports'; // Redux Hooks import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/navbar/timers/timer-button.tsx b/worklenz-frontend/src/features/navbar/timers/timer-button.tsx index 6c1b031b..2735c34a 100644 --- a/worklenz-frontend/src/features/navbar/timers/timer-button.tsx +++ b/worklenz-frontend/src/features/navbar/timers/timer-button.tsx @@ -1,5 +1,5 @@ -import { ClockCircleOutlined, StopOutlined } from '@ant-design/icons'; -import { Badge, Button, Dropdown, List, Tooltip, Typography, Space, Divider, theme } from 'antd'; +import { ClockCircleOutlined, StopOutlined } from '@/shared/antd-imports'; +import { Badge, Button, Dropdown, List, Tooltip, Typography, Space, Divider, theme } from '@/shared/antd-imports'; import React, { useEffect, useState, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import { taskTimeLogsApiService, IRunningTimer } from '@/api/tasks/task-time-logs.api.service'; diff --git a/worklenz-frontend/src/features/navbar/upgradePlan/UpgradePlanButton.tsx b/worklenz-frontend/src/features/navbar/upgradePlan/UpgradePlanButton.tsx index f09457cd..16c1332c 100644 --- a/worklenz-frontend/src/features/navbar/upgradePlan/UpgradePlanButton.tsx +++ b/worklenz-frontend/src/features/navbar/upgradePlan/UpgradePlanButton.tsx @@ -1,4 +1,4 @@ -import { Button, Tooltip } from 'antd'; +import { Button, Tooltip } from '@/shared/antd-imports'; import React from 'react'; import { colors } from '../../../styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/navbar/user-profile/profile-button.tsx b/worklenz-frontend/src/features/navbar/user-profile/profile-button.tsx index 1be5c3e4..3908d385 100644 --- a/worklenz-frontend/src/features/navbar/user-profile/profile-button.tsx +++ b/worklenz-frontend/src/features/navbar/user-profile/profile-button.tsx @@ -1,5 +1,5 @@ -import { UserOutlined } from '@ant-design/icons'; -import { Button, Card, Dropdown, Flex, MenuProps, Tooltip, Typography } from 'antd'; +import { UserOutlined } from '@/shared/antd-imports'; +import { Button, Card, Dropdown, Flex, MenuProps, Tooltip, Typography } from '@/shared/antd-imports'; import { Link } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/projects/bulkActions/BulkTasksActionContainer.tsx b/worklenz-frontend/src/features/projects/bulkActions/BulkTasksActionContainer.tsx index c0c3e27e..9455cdaf 100644 --- a/worklenz-frontend/src/features/projects/bulkActions/BulkTasksActionContainer.tsx +++ b/worklenz-frontend/src/features/projects/bulkActions/BulkTasksActionContainer.tsx @@ -7,8 +7,8 @@ import { TagsOutlined, UserAddOutlined, UsergroupAddOutlined, -} from '@ant-design/icons'; -import { Button, Flex, Tooltip, Typography } from 'antd'; +} from '@/shared/antd-imports'; +import { Button, Flex, Tooltip, Typography } from '@/shared/antd-imports'; import { colors } from '../../../styles/colors'; type BulkTasksActionProps = { diff --git a/worklenz-frontend/src/features/projects/singleProject/phase/ConfigPhaseButton.tsx b/worklenz-frontend/src/features/projects/singleProject/phase/ConfigPhaseButton.tsx index 23e6773d..e7900e3a 100644 --- a/worklenz-frontend/src/features/projects/singleProject/phase/ConfigPhaseButton.tsx +++ b/worklenz-frontend/src/features/projects/singleProject/phase/ConfigPhaseButton.tsx @@ -1,10 +1,9 @@ -import { SettingOutlined } from '@ant-design/icons'; -import { Button, Tooltip } from 'antd'; -import React from 'react'; -import { useAppDispatch } from '../../../../hooks/useAppDispatch'; +import { SettingOutlined } from '@/shared/antd-imports'; +import { Button, Tooltip } from '@/shared/antd-imports'; +import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleDrawer } from './phases.slice'; -import { useAppSelector } from '../../../../hooks/useAppSelector'; -import { colors } from '../../../../styles/colors'; +import { useAppSelector } from '@/hooks/useAppSelector'; +import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; const ConfigPhaseButton = () => { diff --git a/worklenz-frontend/src/features/projects/singleProject/phase/PhaseDrawer.tsx b/worklenz-frontend/src/features/projects/singleProject/phase/PhaseDrawer.tsx index 3b9d8f52..af4e2488 100644 --- a/worklenz-frontend/src/features/projects/singleProject/phase/PhaseDrawer.tsx +++ b/worklenz-frontend/src/features/projects/singleProject/phase/PhaseDrawer.tsx @@ -1,4 +1,4 @@ -import { Button, Drawer, Flex, Input, Skeleton, Spin, Typography } from 'antd'; +import { Button, Drawer, Flex, Input, Spin, Typography } from '@/shared/antd-imports'; import { useState } from 'react'; import { useAppSelector } from '../../../../hooks/useAppSelector'; import { useAppDispatch } from '../../../../hooks/useAppDispatch'; @@ -11,7 +11,7 @@ import { updateProjectPhaseLabel, } from './phases.slice'; import { Divider } from 'antd/lib'; -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useParams } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import PhaseOptionItem from './PhaseOptionItem'; diff --git a/worklenz-frontend/src/features/projects/singleProject/phase/PhaseHeader.tsx b/worklenz-frontend/src/features/projects/singleProject/phase/PhaseHeader.tsx index e10df057..5b36cbde 100644 --- a/worklenz-frontend/src/features/projects/singleProject/phase/PhaseHeader.tsx +++ b/worklenz-frontend/src/features/projects/singleProject/phase/PhaseHeader.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { useAppSelector } from '../../../../hooks/useAppSelector'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import ConfigPhaseButton from './ConfigPhaseButton'; import { colors } from '../../../../styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/projects/singleProject/phase/PhaseOptionItem.tsx b/worklenz-frontend/src/features/projects/singleProject/phase/PhaseOptionItem.tsx index 091ebb6f..61d27ad4 100644 --- a/worklenz-frontend/src/features/projects/singleProject/phase/PhaseOptionItem.tsx +++ b/worklenz-frontend/src/features/projects/singleProject/phase/PhaseOptionItem.tsx @@ -1,5 +1,5 @@ -import { Button, ColorPicker, ConfigProvider, Flex, Input } from 'antd'; -import { CloseCircleOutlined, HolderOutlined } from '@ant-design/icons'; +import { Button, ColorPicker, ConfigProvider, Flex, Input } from '@/shared/antd-imports'; +import { CloseCircleOutlined, HolderOutlined } from '@/shared/antd-imports'; import { nanoid } from '@reduxjs/toolkit'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { diff --git a/worklenz-frontend/src/features/projects/update-project/update-project-drawer.tsx b/worklenz-frontend/src/features/projects/update-project/update-project-drawer.tsx index 9c323992..46e12815 100644 --- a/worklenz-frontend/src/features/projects/update-project/update-project-drawer.tsx +++ b/worklenz-frontend/src/features/projects/update-project/update-project-drawer.tsx @@ -11,14 +11,14 @@ import { Select, Tag, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import React, { useRef, useState } from 'react'; import { healthStatusData, projectColors, statusData, } from '../../../lib/project/project-constants'; -import { PlusCircleOutlined, PlusOutlined, QuestionCircleOutlined } from '@ant-design/icons'; +import { PlusCircleOutlined, PlusOutlined, QuestionCircleOutlined } from '@/shared/antd-imports'; import { colors } from '../../../styles/colors'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/activity-log-card.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/activity-log-card.tsx index f5434c06..47137776 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/activity-log-card.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/activity-log-card.tsx @@ -1,4 +1,4 @@ -import { Card, ConfigProvider, Tag, Timeline, Typography } from 'antd'; +import { Card, ConfigProvider, Tag, Timeline, Typography } from '@/shared/antd-imports'; import { simpleDateFormat } from '@/utils/simpleDateFormat'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { colors } from '../../../../../styles/colors'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/members-reports-activity-logs-tab.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/members-reports-activity-logs-tab.tsx index b933164b..cfc3164c 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/members-reports-activity-logs-tab.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/activity-log-tab/members-reports-activity-logs-tab.tsx @@ -1,4 +1,4 @@ -import { Flex, Skeleton } from 'antd'; +import { Flex, Skeleton } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useState } from 'react'; import EmptyListPlaceholder from '@/components/EmptyListPlaceholder'; import ActivityLogCard from './activity-log-card'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer-tabs.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer-tabs.tsx index 209c5a7b..9bb22c5e 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer-tabs.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer-tabs.tsx @@ -1,4 +1,4 @@ -import { Tabs } from 'antd'; +import { Tabs } from '@/shared/antd-imports'; import { TabsProps } from 'antd/lib'; import React from 'react'; import MembersReportsOverviewTab from './overviewTab/MembersReportsOverviewTab'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer.tsx index 9262dd61..5ebef482 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/members-reports-drawer.tsx @@ -1,8 +1,8 @@ -import { Drawer, Typography, Flex, Button, Space, Dropdown } from 'antd'; +import { Drawer, Typography, Flex, Button, Space, Dropdown } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleMembersReportsDrawer } from '../membersReportsSlice'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined } from '@/shared/antd-imports'; import MembersReportsDrawerTabs from './members-reports-drawer-tabs'; import { useTranslation } from 'react-i18next'; import MembersOverviewTasksStatsDrawer from './overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-drawer'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsPriorityGraph.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsPriorityGraph.tsx index d2155d75..6cedb1f6 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsPriorityGraph.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsPriorityGraph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewMemberChartData } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsProjectGraph.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsProjectGraph.tsx index d7732d51..210ebb42 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsProjectGraph.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsProjectGraph.tsx @@ -1,6 +1,6 @@ import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip } from 'chart.js'; -import { Badge, Card, Flex, Typography, Tooltip as AntTooltip } from 'antd'; +import { Badge, Card, Flex, Typography, Tooltip as AntTooltip } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewMemberChartData } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsStatusGraph.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsStatusGraph.tsx index eeed8eab..b2bf6752 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsStatusGraph.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/MembersReportsStatusGraph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewMemberChartData } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-drawer.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-drawer.tsx index 78032d30..a14354b2 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-drawer.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-drawer.tsx @@ -1,4 +1,4 @@ -import { Drawer, Typography } from 'antd'; +import { Drawer, Typography } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-table.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-table.tsx index c17d0733..89f1ee1f 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-table.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-projects-stats-drawer/members-overview-projects-stats-table.tsx @@ -1,5 +1,5 @@ import { memo } from 'react'; -import { ConfigProvider, Flex, Skeleton, Spin, Table, TableColumnsType, Typography } from 'antd'; +import { ConfigProvider, Flex, Skeleton, Spin, Table, TableColumnsType, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import CustomTableTitle from '@components/CustomTableTitle'; import { simpleDateFormat } from '@/utils/simpleDateFormat'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-drawer.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-drawer.tsx index 0a574fd7..e9443187 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-drawer.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-drawer.tsx @@ -1,4 +1,4 @@ -import { Drawer, Typography } from 'antd'; +import { Drawer, Typography } from '@/shared/antd-imports'; import React, { useMemo, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-table.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-table.tsx index 75d05303..104f9265 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-table.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-overview-tasks-stats-drawer/members-overview-tasks-stats-table.tsx @@ -1,9 +1,9 @@ -import { Badge, Collapse, Flex, Table, TableColumnsType, Tag, Typography } from 'antd'; +import { Badge, Collapse, Flex, Table, TableColumnsType, Tag, Typography } from '@/shared/antd-imports'; import CustomTableTitle from '@components/CustomTableTitle'; import { colors } from '@/styles/colors'; import dayjs from 'dayjs'; import { useAppDispatch } from '@/hooks/useAppDispatch'; -import { DoubleRightOutlined } from '@ant-design/icons'; +import { DoubleRightOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { setShowTaskDrawer } from '@/features/task-drawer/task-drawer.slice'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-reports-stat-card.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-reports-stat-card.tsx index a4735fdd..4905972a 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-reports-stat-card.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/overviewTab/members-reports-stat-card.tsx @@ -2,8 +2,8 @@ import { ClockCircleOutlined, ExclamationCircleOutlined, FileExcelOutlined, -} from '@ant-design/icons'; -import { Button, Card, Flex } from 'antd'; +} from '@/shared/antd-imports'; +import { Button, Card, Flex } from '@/shared/antd-imports'; import React, { ReactNode } from 'react'; import { useTranslation } from 'react-i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTab.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTab.tsx index 9ea4dbac..362a6f80 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTab.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTab.tsx @@ -1,4 +1,4 @@ -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useState } from 'react'; import CustomSearchbar from '../../../../../components/CustomSearchbar'; import { fetchData } from '@/utils/fetchData'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTable.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTable.tsx index 7ca70cc8..9c8cdcfe 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTable.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/MembersReportsTasksTable.tsx @@ -1,7 +1,7 @@ -import { Badge, Flex, Table, TableColumnsType, Tag, Typography } from 'antd'; +import { Badge, Flex, Table, TableColumnsType, Tag, Typography } from '@/shared/antd-imports'; import React from 'react'; import dayjs from 'dayjs'; -import { DoubleRightOutlined } from '@ant-design/icons'; +import { DoubleRightOutlined } from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { setSelectedTaskId, setShowTaskDrawer } from '@/features/task-drawer/task-drawer.slice'; import CustomTableTitle from '@/components/CustomTableTitle'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/ProjectFilter.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/ProjectFilter.tsx index b0a7c4f4..d242b8ea 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/ProjectFilter.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/taskTab/ProjectFilter.tsx @@ -1,5 +1,5 @@ import { IRPTOverviewProject } from '@/types/reporting/reporting.types'; -import { Flex, Select, Typography } from 'antd'; +import { Flex, Select, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; type ProjectFilterProps = { diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/billable-filter.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/billable-filter.tsx index c0521146..37fc11e4 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/billable-filter.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/billable-filter.tsx @@ -1,5 +1,5 @@ -import { CaretDownFilled } from '@ant-design/icons'; -import { Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/members-reports-time-logs-tab.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/members-reports-time-logs-tab.tsx index 67bac8f8..c6516291 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/members-reports-time-logs-tab.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/members-reports-time-logs-tab.tsx @@ -1,4 +1,4 @@ -import { Flex, Skeleton } from 'antd'; +import { Flex, Skeleton } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; import BillableFilter from './billable-filter'; import { fetchData } from '@/utils/fetchData'; diff --git a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/time-log-card.tsx b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/time-log-card.tsx index 1d64bab4..a44ca056 100644 --- a/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/time-log-card.tsx +++ b/worklenz-frontend/src/features/reporting/membersReports/membersReportsDrawer/time-log-tab/time-log-card.tsx @@ -1,4 +1,4 @@ -import { Card, ConfigProvider, Tag, Timeline, Typography } from 'antd'; +import { Card, ConfigProvider, Tag, Timeline, Typography } from '@/shared/antd-imports'; import { simpleDateFormat } from '@/utils/simpleDateFormat'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawer.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawer.tsx index 37fa99b7..2355dd5e 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawer.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawer.tsx @@ -1,9 +1,9 @@ -import { Drawer, Typography, Flex, Button, Dropdown } from 'antd'; +import { Drawer, Typography, Flex, Button, Dropdown } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useAppSelector } from '../../../../hooks/useAppSelector'; import { useAppDispatch } from '../../../../hooks/useAppDispatch'; import { setSelectedProject, toggleProjectReportsDrawer } from '../project-reports-slice'; -import { BankOutlined, DownOutlined } from '@ant-design/icons'; +import { BankOutlined, DownOutlined } from '@/shared/antd-imports'; import ProjectReportsDrawerTabs from './ProjectReportsDrawerTabs'; import { colors } from '../../../../styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawerTabs.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawerTabs.tsx index 6cf0083d..804f49e2 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawerTabs.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/ProjectReportsDrawerTabs.tsx @@ -1,4 +1,4 @@ -import { Tabs } from 'antd'; +import { Tabs } from '@/shared/antd-imports'; import { TabsProps } from 'antd/lib'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTab.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTab.tsx index 620ef912..cf9ba654 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTab.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTab.tsx @@ -1,4 +1,4 @@ -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import { useEffect, useMemo, useState } from 'react'; import CustomSearchbar from '../../../../../components/CustomSearchbar'; import ProjectReportsMembersTable from './ProjectReportsMembersTable'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTable.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTable.tsx index eb675eef..0ad20740 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTable.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/ProjectReportsMembersTable.tsx @@ -1,4 +1,4 @@ -import { Progress, Table, TableColumnsType } from 'antd'; +import { Progress, Table, TableColumnsType } from '@/shared/antd-imports'; import React from 'react'; import CustomTableTitle from '../../../../../components/CustomTableTitle'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskDrawer.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskDrawer.tsx index 432c0ae0..29f40154 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskDrawer.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskDrawer.tsx @@ -1,6 +1,6 @@ -import { Drawer, Typography, Flex, Button } from 'antd'; +import { Drawer, Typography, Flex, Button } from '@/shared/antd-imports'; import React, { useMemo, useState } from 'react'; -import { FileOutlined } from '@ant-design/icons'; +import { FileOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskTable.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskTable.tsx index 5905b121..2badfc44 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskTable.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/membersTab/projectReportsMembersTaskDrawer/ProjectReportsMembersTaskTable.tsx @@ -1,9 +1,9 @@ import { useTranslation } from 'react-i18next'; import React from 'react'; import { createPortal } from 'react-dom'; -import { Badge, Flex, Table, TableColumnsType, Tag, Typography } from 'antd'; +import { Badge, Flex, Table, TableColumnsType, Tag, Typography } from '@/shared/antd-imports'; import dayjs from 'dayjs'; -import { DoubleRightOutlined } from '@ant-design/icons'; +import { DoubleRightOutlined } from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { setShowTaskDrawer } from '@/features/task-drawer/task-drawer.slice'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsDueDateGraph.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsDueDateGraph.tsx index 2acdc99c..494407e2 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsDueDateGraph.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsDueDateGraph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewProjectTasksByDue } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsPriorityGraph.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsPriorityGraph.tsx index cbaa0d77..a97860cb 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsPriorityGraph.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsPriorityGraph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewProjectTasksByPriority } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatCard.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatCard.tsx index 9d43214b..f8fd2b87 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatCard.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatCard.tsx @@ -3,8 +3,8 @@ import { ClockCircleOutlined, ExclamationCircleOutlined, FileExcelOutlined, -} from '@ant-design/icons'; -import { Card, Flex, Typography } from 'antd'; +} from '@/shared/antd-imports'; +import { Card, Flex, Typography } from '@/shared/antd-imports'; import React, { ReactNode } from 'react'; import { colors } from '../../../../../styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatusGraph.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatusGraph.tsx index bf08d1d5..8cdee581 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatusGraph.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/overviewTab/ProjectReportsStatusGraph.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip } from 'chart.js'; -import { Badge, Card, Flex, Typography } from 'antd'; +import { Badge, Card, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewProjectTasksByStatus } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTaskTable.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTaskTable.tsx index 7afed0bb..6c016562 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTaskTable.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTaskTable.tsx @@ -1,4 +1,4 @@ -import { Badge, Collapse, Flex, Table, TableColumnsType, Tag, Typography } from 'antd'; +import { Badge, Collapse, Flex, Table, TableColumnsType, Tag, Typography } from '@/shared/antd-imports'; import { useEffect } from 'react'; import CustomTableTitle from '@/components/CustomTableTitle'; import { colors } from '@/styles/colors'; @@ -9,7 +9,7 @@ import { fetchTask, setSelectedTaskId, } from '@/features/task-drawer/task-drawer.slice'; -import { DoubleRightOutlined } from '@ant-design/icons'; +import { DoubleRightOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { fetchPriorities } from '@/features/taskAttributes/taskPrioritySlice'; import { fetchPhasesByProjectId } from '@/features/projects/singleProject/phase/phases.slice'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTasksTab.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTasksTab.tsx index 1df6ac9b..f9976dd3 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTasksTab.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/ProjectReportsTasksTab.tsx @@ -1,4 +1,4 @@ -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useState } from 'react'; import CustomSearchbar from '@components/CustomSearchbar'; import GroupByFilter from './group-by-filter'; diff --git a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/group-by-filter.tsx b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/group-by-filter.tsx index f11f0a70..d8f8d816 100644 --- a/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/group-by-filter.tsx +++ b/worklenz-frontend/src/features/reporting/projectReports/projectReportsDrawer/tasksTab/group-by-filter.tsx @@ -1,6 +1,6 @@ import { IGroupBy } from '@/features/board/board-slice'; -import { CaretDownFilled } from '@ant-design/icons'; -import { Flex, Select } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Flex, Select } from '@/shared/antd-imports'; import React from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/features/schedule-old/ProjectTimelineModal.tsx b/worklenz-frontend/src/features/schedule-old/ProjectTimelineModal.tsx index fa613baa..937cca67 100644 --- a/worklenz-frontend/src/features/schedule-old/ProjectTimelineModal.tsx +++ b/worklenz-frontend/src/features/schedule-old/ProjectTimelineModal.tsx @@ -1,4 +1,4 @@ -import { Button, Col, DatePicker, Flex, Input, Row } from 'antd'; +import { Button, Col, DatePicker, Flex, Input, Row } from '@/shared/antd-imports'; import React from 'react'; import { useDispatch } from 'react-redux'; import { toggleModal } from './scheduleSlice'; diff --git a/worklenz-frontend/src/features/schedule-old/ScheduleDrawer.tsx b/worklenz-frontend/src/features/schedule-old/ScheduleDrawer.tsx index b9753d34..9ecd9765 100644 --- a/worklenz-frontend/src/features/schedule-old/ScheduleDrawer.tsx +++ b/worklenz-frontend/src/features/schedule-old/ScheduleDrawer.tsx @@ -1,4 +1,4 @@ -import { Avatar, Drawer, Tabs, TabsProps } from 'antd'; +import { Avatar, Drawer, Tabs, TabsProps } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleScheduleDrawer } from './scheduleSlice'; diff --git a/worklenz-frontend/src/features/schedule-old/ScheduleSettingsDrawer.tsx b/worklenz-frontend/src/features/schedule-old/ScheduleSettingsDrawer.tsx index 65a126b3..cbe93b88 100644 --- a/worklenz-frontend/src/features/schedule-old/ScheduleSettingsDrawer.tsx +++ b/worklenz-frontend/src/features/schedule-old/ScheduleSettingsDrawer.tsx @@ -1,4 +1,4 @@ -import { Button, Checkbox, Col, Drawer, Form, Input, Row } from 'antd'; +import { Button, Checkbox, Col, Drawer, Form, Input, Row } from '@/shared/antd-imports'; import React, { ReactHTMLElement, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { toggleSettingsDrawer, updateSettings } from './scheduleSlice'; diff --git a/worklenz-frontend/src/features/schedule/ProjectTimelineModal.tsx b/worklenz-frontend/src/features/schedule/ProjectTimelineModal.tsx index 079d2e90..ce0b7532 100644 --- a/worklenz-frontend/src/features/schedule/ProjectTimelineModal.tsx +++ b/worklenz-frontend/src/features/schedule/ProjectTimelineModal.tsx @@ -1,6 +1,6 @@ import { useAppDispatch } from '@/hooks/useAppDispatch'; import { ScheduleData } from '@/types/schedule/schedule-v2.types'; -import { Button, Col, DatePicker, Flex, Form, Input, Row } from 'antd'; +import { Button, Col, DatePicker, Flex, Form, Input, Row } from '@/shared/antd-imports'; import React, { useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { createSchedule, fetchTeamData } from './scheduleSlice'; diff --git a/worklenz-frontend/src/features/schedule/ScheduleDrawer.tsx b/worklenz-frontend/src/features/schedule/ScheduleDrawer.tsx index 7f21a2af..a8604051 100644 --- a/worklenz-frontend/src/features/schedule/ScheduleDrawer.tsx +++ b/worklenz-frontend/src/features/schedule/ScheduleDrawer.tsx @@ -1,4 +1,4 @@ -import { Avatar, Drawer, Tabs, TabsProps } from 'antd'; +import { Avatar, Drawer, Tabs, TabsProps } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/schedule/ScheduleSettingsDrawer.tsx b/worklenz-frontend/src/features/schedule/ScheduleSettingsDrawer.tsx index 63ce9643..3b3d06c4 100644 --- a/worklenz-frontend/src/features/schedule/ScheduleSettingsDrawer.tsx +++ b/worklenz-frontend/src/features/schedule/ScheduleSettingsDrawer.tsx @@ -1,4 +1,4 @@ -import { Button, Checkbox, Col, Drawer, Form, Input, Row } from 'antd'; +import { Button, Checkbox, Col, Drawer, Form, Input, Row } from '@/shared/antd-imports'; import React, { ReactHTMLElement, useEffect, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { diff --git a/worklenz-frontend/src/features/settings/categories/CustomColorsCategoryTag.tsx b/worklenz-frontend/src/features/settings/categories/CustomColorsCategoryTag.tsx index 060cb189..b0588e1a 100644 --- a/worklenz-frontend/src/features/settings/categories/CustomColorsCategoryTag.tsx +++ b/worklenz-frontend/src/features/settings/categories/CustomColorsCategoryTag.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Tag, Typography } from 'antd'; +import { Tag, Typography } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { IProjectCategory } from '@/types/project/projectCategory.types'; diff --git a/worklenz-frontend/src/features/settings/categories/color-changed-category.tsx b/worklenz-frontend/src/features/settings/categories/color-changed-category.tsx index f0de1ae1..9d97ff6d 100644 --- a/worklenz-frontend/src/features/settings/categories/color-changed-category.tsx +++ b/worklenz-frontend/src/features/settings/categories/color-changed-category.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Select, Tag, Tooltip } from 'antd'; +import { Select, Tag, Tooltip } from '@/shared/antd-imports'; import { CategoryType } from '../../../types/categories.types'; import { useTranslation } from 'react-i18next'; import { PhaseColorCodes } from '../../../shared/constants'; diff --git a/worklenz-frontend/src/features/settings/client/CreateClientDrawer.tsx b/worklenz-frontend/src/features/settings/client/CreateClientDrawer.tsx index 7c5e911f..5e3ca781 100644 --- a/worklenz-frontend/src/features/settings/client/CreateClientDrawer.tsx +++ b/worklenz-frontend/src/features/settings/client/CreateClientDrawer.tsx @@ -1,4 +1,4 @@ -import { Button, Drawer, Form, Input, message, Typography } from 'antd'; +import { Button, Drawer, Form, Input, message, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/settings/client/UpdateClientDrawer.tsx b/worklenz-frontend/src/features/settings/client/UpdateClientDrawer.tsx index d23a0960..076b7800 100644 --- a/worklenz-frontend/src/features/settings/client/UpdateClientDrawer.tsx +++ b/worklenz-frontend/src/features/settings/client/UpdateClientDrawer.tsx @@ -1,4 +1,4 @@ -import { Button, Drawer, Form, Input, message, Typography } from 'antd'; +import { Button, Drawer, Form, Input, message, Typography } from '@/shared/antd-imports'; import React, { useEffect } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/settings/job/CreateJobTitlesDrawer.tsx b/worklenz-frontend/src/features/settings/job/CreateJobTitlesDrawer.tsx index 713e7c18..379d9315 100644 --- a/worklenz-frontend/src/features/settings/job/CreateJobTitlesDrawer.tsx +++ b/worklenz-frontend/src/features/settings/job/CreateJobTitlesDrawer.tsx @@ -1,4 +1,4 @@ -import { Button, Drawer, Form, Input, message, Typography } from 'antd'; +import { Button, Drawer, Form, Input, message, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/settings/job/UpdateJobTitlesDrawer.tsx b/worklenz-frontend/src/features/settings/job/UpdateJobTitlesDrawer.tsx index b03d3da3..e2d5f9ab 100644 --- a/worklenz-frontend/src/features/settings/job/UpdateJobTitlesDrawer.tsx +++ b/worklenz-frontend/src/features/settings/job/UpdateJobTitlesDrawer.tsx @@ -1,4 +1,4 @@ -import { Button, Drawer, Form, Input, message, Typography } from 'antd'; +import { Button, Drawer, Form, Input, message, Typography } from '@/shared/antd-imports'; import React, { useEffect } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/theme/ThemeWrapper.tsx b/worklenz-frontend/src/features/theme/ThemeWrapper.tsx index e32ea424..e6783f1e 100644 --- a/worklenz-frontend/src/features/theme/ThemeWrapper.tsx +++ b/worklenz-frontend/src/features/theme/ThemeWrapper.tsx @@ -1,4 +1,4 @@ -import { ConfigProvider, theme } from 'antd'; +import { ConfigProvider, theme } from '@/shared/antd-imports'; import React, { useEffect, useRef, memo, useMemo, useCallback } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/features/timeReport/projects/ProjectTimeLogDrawer.tsx b/worklenz-frontend/src/features/timeReport/projects/ProjectTimeLogDrawer.tsx index 1580138b..512ffaf8 100644 --- a/worklenz-frontend/src/features/timeReport/projects/ProjectTimeLogDrawer.tsx +++ b/worklenz-frontend/src/features/timeReport/projects/ProjectTimeLogDrawer.tsx @@ -1,9 +1,9 @@ -import { Avatar, Button, Card, Divider, Drawer, Tag, Timeline, Typography } from 'antd'; +import { Avatar, Button, Card, Divider, Drawer, Tag, Timeline, Typography } from '@/shared/antd-imports'; import React, { useState, useEffect } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleTimeLogDrawer } from './timeLogSlice'; -import { DownloadOutlined } from '@ant-design/icons'; +import { DownloadOutlined } from '@/shared/antd-imports'; import jsonData from './ProjectTimeLog.json'; import { AvatarNamesMap, durations } from '../../../shared/constants'; import './ProjectTimeLogDrawer.css'; diff --git a/worklenz-frontend/src/index.tsx b/worklenz-frontend/src/index.tsx index c8cf3b99..08956ec1 100644 --- a/worklenz-frontend/src/index.tsx +++ b/worklenz-frontend/src/index.tsx @@ -8,7 +8,7 @@ import './i18n'; import { Provider } from 'react-redux'; import { store } from './app/store'; import { applyCssVariables } from './styles/colors'; -import { ConfigProvider, theme } from 'antd'; +import { ConfigProvider, theme } from '@/shared/antd-imports'; import { colors } from './styles/colors'; import { getInitialTheme } from './utils/get-initial-theme'; import { initializePerformanceMonitoring } from './utils/enhanced-performance-monitoring'; diff --git a/worklenz-frontend/src/layouts/AdminCenterLayout.tsx b/worklenz-frontend/src/layouts/AdminCenterLayout.tsx index 4addfd3c..d46595b9 100644 --- a/worklenz-frontend/src/layouts/AdminCenterLayout.tsx +++ b/worklenz-frontend/src/layouts/AdminCenterLayout.tsx @@ -1,4 +1,4 @@ -import { Flex, Typography } from 'antd'; +import { Flex, Typography } from '@/shared/antd-imports'; import React from 'react'; import { Outlet } from 'react-router-dom'; import { useMediaQuery } from 'react-responsive'; diff --git a/worklenz-frontend/src/layouts/AuthLayout.tsx b/worklenz-frontend/src/layouts/AuthLayout.tsx index 925bca19..c3a197c3 100644 --- a/worklenz-frontend/src/layouts/AuthLayout.tsx +++ b/worklenz-frontend/src/layouts/AuthLayout.tsx @@ -1,4 +1,4 @@ -import { ConfigProvider, Flex, Layout } from 'antd'; +import { ConfigProvider, Flex, Layout } from '@/shared/antd-imports'; import React from 'react'; import { Outlet } from 'react-router-dom'; import { useAppSelector } from '../hooks/useAppSelector'; diff --git a/worklenz-frontend/src/layouts/MainLayout.tsx b/worklenz-frontend/src/layouts/MainLayout.tsx index 8e3cc66b..b1c6a7d3 100644 --- a/worklenz-frontend/src/layouts/MainLayout.tsx +++ b/worklenz-frontend/src/layouts/MainLayout.tsx @@ -1,15 +1,13 @@ -import { Col, ConfigProvider, Layout } from 'antd'; -import { Outlet, useNavigate } from 'react-router-dom'; +import { Col, ConfigProvider, Layout } from '@/shared/antd-imports'; +import { Outlet } from 'react-router-dom'; import { memo, useMemo, useEffect, useRef } from 'react'; import { useMediaQuery } from 'react-responsive'; import Navbar from '../features/navbar/navbar'; import { useAppSelector } from '../hooks/useAppSelector'; -import { useAppDispatch } from '../hooks/useAppDispatch'; import { colors } from '../styles/colors'; import { useRenderPerformance } from '@/utils/performance'; -import HubSpot from '@/components/HubSpot'; import { DynamicCSSLoader, LayoutStabilizer } from '@/utils/css-optimizations'; const MainLayout = memo(() => { diff --git a/worklenz-frontend/src/layouts/ReportingLayout.tsx b/worklenz-frontend/src/layouts/ReportingLayout.tsx index 09f8c6b2..c9538390 100644 --- a/worklenz-frontend/src/layouts/ReportingLayout.tsx +++ b/worklenz-frontend/src/layouts/ReportingLayout.tsx @@ -1,4 +1,4 @@ -import { Col, ConfigProvider, Layout } from 'antd'; +import { Col, ConfigProvider, Layout } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import Navbar from '../features/navbar/navbar'; import { useAppSelector } from '../hooks/useAppSelector'; diff --git a/worklenz-frontend/src/layouts/SettingsLayout.tsx b/worklenz-frontend/src/layouts/SettingsLayout.tsx index 87f0f525..84e050f6 100644 --- a/worklenz-frontend/src/layouts/SettingsLayout.tsx +++ b/worklenz-frontend/src/layouts/SettingsLayout.tsx @@ -1,4 +1,4 @@ -import { Flex, Typography } from 'antd'; +import { Flex, Typography } from '@/shared/antd-imports'; import SettingsSidebar from '../pages/settings/sidebar/settings-sidebar'; import { Outlet, useNavigate } from 'react-router-dom'; import { useMediaQuery } from 'react-responsive'; diff --git a/worklenz-frontend/src/lib/settings/settings-constants.ts b/worklenz-frontend/src/lib/settings/settings-constants.ts index 8823bd7e..04305a8e 100644 --- a/worklenz-frontend/src/lib/settings/settings-constants.ts +++ b/worklenz-frontend/src/lib/settings/settings-constants.ts @@ -12,7 +12,7 @@ import { UserOutlined, UserSwitchOutlined, BulbOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import React, { ReactNode, lazy } from 'react'; const ProfileSettings = lazy(() => import('../../pages/settings/profile/profile-settings')); const NotificationsSettings = lazy(() => import('../../pages/settings/notifications/notifications-settings')); diff --git a/worklenz-frontend/src/pages/404-page/404-page.tsx b/worklenz-frontend/src/pages/404-page/404-page.tsx index e651dc2c..130ad3ef 100644 --- a/worklenz-frontend/src/pages/404-page/404-page.tsx +++ b/worklenz-frontend/src/pages/404-page/404-page.tsx @@ -1,6 +1,6 @@ import React from 'react'; import notFoundImg from '../../assets/images/not-found-img.png'; -import { Button, Flex, Layout, Typography } from 'antd'; +import { Button, Flex, Layout, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; const NotFoundPage = () => { diff --git a/worklenz-frontend/src/pages/admin-center/admin-center-constants.ts b/worklenz-frontend/src/pages/admin-center/admin-center-constants.ts index 1cee4eb8..7494ff78 100644 --- a/worklenz-frontend/src/pages/admin-center/admin-center-constants.ts +++ b/worklenz-frontend/src/pages/admin-center/admin-center-constants.ts @@ -4,7 +4,7 @@ import { ProfileOutlined, TeamOutlined, UserOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import React, { ReactNode, lazy } from 'react'; const Overview = lazy(() => import('./overview/overview')); const Users = lazy(() => import('./users/users')); diff --git a/worklenz-frontend/src/pages/admin-center/billing/billing.tsx b/worklenz-frontend/src/pages/admin-center/billing/billing.tsx index b4eaa864..bc18dcbb 100644 --- a/worklenz-frontend/src/pages/admin-center/billing/billing.tsx +++ b/worklenz-frontend/src/pages/admin-center/billing/billing.tsx @@ -1,32 +1,39 @@ import { PageHeader } from '@ant-design/pro-components'; -import { Tabs, TabsProps } from 'antd'; -import React from 'react'; +import { Tabs, TabsProps } from '@/shared/antd-imports'; +import React, { useMemo } from 'react'; import CurrentBill from '@/components/admin-center/billing/current-bill'; import Configuration from '@/components/admin-center/configuration/configuration'; import { useTranslation } from 'react-i18next'; -const Billing: React.FC = () => { +const Billing: React.FC = React.memo(() => { const { t } = useTranslation('admin-center/current-bill'); - const items: TabsProps['items'] = [ - { - key: '1', - label: t('currentBill'), - children: , - }, - { - key: '2', - label: t('configuration'), - children: , - }, - ]; + const items: TabsProps['items'] = useMemo( + () => [ + { + key: '1', + label: t('currentBill'), + children: , + }, + { + key: '2', + label: t('configuration'), + children: , + }, + ], + [t] + ); + + const pageHeaderStyle = useMemo(() => ({ padding: '16px 0' }), []); return (
- {t('title')}} style={{ padding: '16px 0' }} /> - + {t('title')}} style={pageHeaderStyle} /> +
); -}; +}); + +Billing.displayName = 'Billing'; export default Billing; diff --git a/worklenz-frontend/src/pages/admin-center/overview/overview.tsx b/worklenz-frontend/src/pages/admin-center/overview/overview.tsx index e20d103c..dd46d605 100644 --- a/worklenz-frontend/src/pages/admin-center/overview/overview.tsx +++ b/worklenz-frontend/src/pages/admin-center/overview/overview.tsx @@ -1,6 +1,6 @@ -import { EditOutlined, MailOutlined, PhoneOutlined } from '@ant-design/icons'; +import { EditOutlined, MailOutlined, PhoneOutlined } from '@/shared/antd-imports'; import { PageHeader } from '@ant-design/pro-components'; -import { Button, Card, Input, Space, Tooltip, Typography } from 'antd'; +import { Button, Card, Input, Space, Tooltip, Typography } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; import OrganizationAdminsTable from '@/components/admin-center/overview/organization-admins-table/organization-admins-table'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/admin-center/projects/projects.tsx b/worklenz-frontend/src/pages/admin-center/projects/projects.tsx index 41d92db8..46eaf214 100644 --- a/worklenz-frontend/src/pages/admin-center/projects/projects.tsx +++ b/worklenz-frontend/src/pages/admin-center/projects/projects.tsx @@ -21,8 +21,8 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; -import { DeleteOutlined, SearchOutlined, SyncOutlined } from '@ant-design/icons'; +} from '@/shared/antd-imports'; +import { DeleteOutlined, SearchOutlined, SyncOutlined } from '@/shared/antd-imports'; import { PageHeader } from '@ant-design/pro-components'; import { projectsApiService } from '@/api/projects/projects.api.service'; diff --git a/worklenz-frontend/src/pages/admin-center/sidebar/sidebar.tsx b/worklenz-frontend/src/pages/admin-center/sidebar/sidebar.tsx index 0a893d02..8103790c 100644 --- a/worklenz-frontend/src/pages/admin-center/sidebar/sidebar.tsx +++ b/worklenz-frontend/src/pages/admin-center/sidebar/sidebar.tsx @@ -1,5 +1,5 @@ -import { RightOutlined } from '@ant-design/icons'; -import { ConfigProvider, Flex, Menu, MenuProps } from 'antd'; +import { RightOutlined } from '@/shared/antd-imports'; +import { ConfigProvider, Flex, Menu, MenuProps } from '@/shared/antd-imports'; import React from 'react'; import { Link, useLocation } from 'react-router-dom'; import { colors } from '../../../styles/colors'; diff --git a/worklenz-frontend/src/pages/admin-center/teams/teams.tsx b/worklenz-frontend/src/pages/admin-center/teams/teams.tsx index db4522c8..f5043392 100644 --- a/worklenz-frontend/src/pages/admin-center/teams/teams.tsx +++ b/worklenz-frontend/src/pages/admin-center/teams/teams.tsx @@ -1,6 +1,6 @@ -import { SearchOutlined, SyncOutlined } from '@ant-design/icons'; +import { SearchOutlined, SyncOutlined } from '@/shared/antd-imports'; import { PageHeader } from '@ant-design/pro-components'; -import { Button, Flex, Input, Tooltip } from 'antd'; +import { Button, Flex, Input, Tooltip } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; diff --git a/worklenz-frontend/src/pages/admin-center/users/users.tsx b/worklenz-frontend/src/pages/admin-center/users/users.tsx index 2795a30e..d8db586c 100644 --- a/worklenz-frontend/src/pages/admin-center/users/users.tsx +++ b/worklenz-frontend/src/pages/admin-center/users/users.tsx @@ -1,6 +1,6 @@ -import { SearchOutlined, SyncOutlined } from '@ant-design/icons'; +import { SearchOutlined, SyncOutlined } from '@/shared/antd-imports'; import { PageHeader } from '@ant-design/pro-components'; -import { Button, Card, Flex, Input, Table, TableProps, Tooltip, Typography } from 'antd'; +import { Button, Card, Flex, Input, Table, TableProps, Tooltip, Typography } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; import { RootState } from '@/app/store'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/auth/ForgotPasswordPage.tsx b/worklenz-frontend/src/pages/auth/ForgotPasswordPage.tsx index 94f2863b..da3e3563 100644 --- a/worklenz-frontend/src/pages/auth/ForgotPasswordPage.tsx +++ b/worklenz-frontend/src/pages/auth/ForgotPasswordPage.tsx @@ -2,7 +2,7 @@ import { useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useMediaQuery } from 'react-responsive'; import { Link, useNavigate } from 'react-router-dom'; -import { UserOutlined } from '@ant-design/icons'; +import { UserOutlined } from '@/shared/antd-imports'; import { Form, Card, Input, Flex, Button, Typography, Result } from 'antd/es'; import PageHeader from '@components/AuthPageHeader'; diff --git a/worklenz-frontend/src/pages/auth/LoginPage.tsx b/worklenz-frontend/src/pages/auth/LoginPage.tsx index df5fa088..1f8b8824 100644 --- a/worklenz-frontend/src/pages/auth/LoginPage.tsx +++ b/worklenz-frontend/src/pages/auth/LoginPage.tsx @@ -2,7 +2,7 @@ import React, { useCallback, useEffect, useState } from 'react'; import { Card, Input, Flex, Checkbox, Button, Typography, Space, Form, message } from 'antd/es'; import { Rule } from 'antd/es/form'; -import { LockOutlined, UserOutlined } from '@ant-design/icons'; +import { LockOutlined, UserOutlined } from '@/shared/antd-imports'; import { Link, useNavigate } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import { useMediaQuery } from 'react-responsive'; diff --git a/worklenz-frontend/src/pages/auth/SignupPage.tsx b/worklenz-frontend/src/pages/auth/SignupPage.tsx index 7f096da2..065989d2 100644 --- a/worklenz-frontend/src/pages/auth/SignupPage.tsx +++ b/worklenz-frontend/src/pages/auth/SignupPage.tsx @@ -2,10 +2,10 @@ import { useEffect, useState } from 'react'; import { Link, useNavigate } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import { useMediaQuery } from 'react-responsive'; -import { LockOutlined, MailOutlined, UserOutlined } from '@ant-design/icons'; +import { LockOutlined, MailOutlined, UserOutlined } from '@/shared/antd-imports'; import { Form, Card, Input, Flex, Button, Typography, Space, message } from 'antd/es'; import { Rule } from 'antd/es/form'; -import { CheckCircleTwoTone, CloseCircleTwoTone } from '@ant-design/icons'; +import { CheckCircleTwoTone, CloseCircleTwoTone } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import googleIcon from '@/assets/images/google-icon.png'; diff --git a/worklenz-frontend/src/pages/auth/VerifyResetEmailPage.tsx b/worklenz-frontend/src/pages/auth/VerifyResetEmailPage.tsx index 00c48b7d..ba46b465 100644 --- a/worklenz-frontend/src/pages/auth/VerifyResetEmailPage.tsx +++ b/worklenz-frontend/src/pages/auth/VerifyResetEmailPage.tsx @@ -1,10 +1,10 @@ import { useCallback, useEffect, useState } from 'react'; import { Link, useNavigate, useParams } from 'react-router-dom'; import { Form, Card, Input, Flex, Button, Typography, Result } from 'antd/es'; -import { LockOutlined } from '@ant-design/icons'; +import { LockOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useMediaQuery } from 'react-responsive'; -import { CheckCircleTwoTone, CloseCircleTwoTone } from '@ant-design/icons'; +import { CheckCircleTwoTone, CloseCircleTwoTone } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import PageHeader from '@components/AuthPageHeader'; diff --git a/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/add-favourite-project-button.tsx b/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/add-favourite-project-button.tsx index 43262a78..ca781ecd 100644 --- a/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/add-favourite-project-button.tsx +++ b/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/add-favourite-project-button.tsx @@ -1,5 +1,5 @@ -import { StarFilled } from '@ant-design/icons'; -import { Button, ConfigProvider, Tooltip } from 'antd'; +import { StarFilled } from '@/shared/antd-imports'; +import { Button, ConfigProvider, Tooltip } from '@/shared/antd-imports'; import { useMemo } from 'react'; import { colors } from '@/styles/colors'; import { IProjectViewModel } from '@/types/project/projectViewModel.types'; diff --git a/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/recent-and-favourite-project-list.tsx b/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/recent-and-favourite-project-list.tsx index ff7d70cc..198808a4 100644 --- a/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/recent-and-favourite-project-list.tsx +++ b/worklenz-frontend/src/pages/home/recent-and-favourite-project-list/recent-and-favourite-project-list.tsx @@ -1,4 +1,4 @@ -import { SyncOutlined } from '@ant-design/icons'; +import { SyncOutlined } from '@/shared/antd-imports'; import { Badge, Button, @@ -10,7 +10,7 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useCallback, useEffect, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/home/task-list/add-task-inline-form.tsx b/worklenz-frontend/src/pages/home/task-list/add-task-inline-form.tsx index caff5f7f..8e806fe2 100644 --- a/worklenz-frontend/src/pages/home/task-list/add-task-inline-form.tsx +++ b/worklenz-frontend/src/pages/home/task-list/add-task-inline-form.tsx @@ -1,4 +1,4 @@ -import { Alert, DatePicker, Flex, Form, Input, InputRef, Select, Typography } from 'antd'; +import { Alert, DatePicker, Flex, Form, Input, InputRef, Select, Typography } from '@/shared/antd-imports'; import { useEffect, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { TFunction } from 'i18next'; diff --git a/worklenz-frontend/src/pages/home/task-list/calendar-view.tsx b/worklenz-frontend/src/pages/home/task-list/calendar-view.tsx index c0bfac8f..32a5fdb2 100644 --- a/worklenz-frontend/src/pages/home/task-list/calendar-view.tsx +++ b/worklenz-frontend/src/pages/home/task-list/calendar-view.tsx @@ -1,6 +1,6 @@ import HomeCalendar from '../../../components/calendars/homeCalendar/HomeCalendar'; -import { Tag, Typography } from 'antd'; -import { ClockCircleOutlined } from '@ant-design/icons'; +import { Tag, Typography } from '@/shared/antd-imports'; +import { ClockCircleOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import AddTaskInlineForm from './add-task-inline-form'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/home/task-list/list-view.tsx b/worklenz-frontend/src/pages/home/task-list/list-view.tsx index 255a650c..cef270c5 100644 --- a/worklenz-frontend/src/pages/home/task-list/list-view.tsx +++ b/worklenz-frontend/src/pages/home/task-list/list-view.tsx @@ -1,4 +1,4 @@ -import { Tabs } from 'antd'; +import { Tabs } from '@/shared/antd-imports'; import AddTaskInlineForm from './add-task-inline-form'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/home/task-list/tasks-list.tsx b/worklenz-frontend/src/pages/home/task-list/tasks-list.tsx index 17ba17dd..d8ce0bed 100644 --- a/worklenz-frontend/src/pages/home/task-list/tasks-list.tsx +++ b/worklenz-frontend/src/pages/home/task-list/tasks-list.tsx @@ -1,4 +1,4 @@ -import { ExpandAltOutlined, SyncOutlined } from '@ant-design/icons'; +import { ExpandAltOutlined, SyncOutlined } from '@/shared/antd-imports'; import { Badge, Button, @@ -12,7 +12,7 @@ import { Tooltip, Typography, Pagination, -} from 'antd'; +} from '@/shared/antd-imports'; import React, { useState, useMemo, useCallback, useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { useMediaQuery } from 'react-responsive'; diff --git a/worklenz-frontend/src/pages/home/todo-list/todo-done-button.tsx b/worklenz-frontend/src/pages/home/todo-list/todo-done-button.tsx index 01437aba..efa48a4b 100644 --- a/worklenz-frontend/src/pages/home/todo-list/todo-done-button.tsx +++ b/worklenz-frontend/src/pages/home/todo-list/todo-done-button.tsx @@ -1,4 +1,4 @@ -import { CheckCircleOutlined } from '@ant-design/icons'; +import { CheckCircleOutlined } from '@/shared/antd-imports'; import ConfigProvider from 'antd/es/config-provider'; import Button from 'antd/es/button'; import Tooltip from 'antd/es/tooltip'; diff --git a/worklenz-frontend/src/pages/home/todo-list/todo-list.tsx b/worklenz-frontend/src/pages/home/todo-list/todo-list.tsx index f8715808..28054667 100644 --- a/worklenz-frontend/src/pages/home/todo-list/todo-list.tsx +++ b/worklenz-frontend/src/pages/home/todo-list/todo-list.tsx @@ -1,4 +1,4 @@ -import { CheckCircleOutlined, SyncOutlined } from '@ant-design/icons'; +import { CheckCircleOutlined, SyncOutlined } from '@/shared/antd-imports'; import { useRef, useState } from 'react'; import Form from 'antd/es/form'; import Input, { InputRef } from 'antd/es/input'; diff --git a/worklenz-frontend/src/pages/license-expired/license-expired.tsx b/worklenz-frontend/src/pages/license-expired/license-expired.tsx index 37f8b596..6b724bb5 100644 --- a/worklenz-frontend/src/pages/license-expired/license-expired.tsx +++ b/worklenz-frontend/src/pages/license-expired/license-expired.tsx @@ -1,4 +1,4 @@ -import { Button, Result } from 'antd'; +import { Button, Result } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; import { useAuthService } from '@/hooks/useAuth'; diff --git a/worklenz-frontend/src/pages/projects/project-list.tsx b/worklenz-frontend/src/pages/projects/project-list.tsx index 38729c17..b82688dc 100644 --- a/worklenz-frontend/src/pages/projects/project-list.tsx +++ b/worklenz-frontend/src/pages/projects/project-list.tsx @@ -16,14 +16,14 @@ import { Table, TablePaginationConfig, Tooltip, -} from 'antd'; +} from '@/shared/antd-imports'; import { PageHeader } from '@ant-design/pro-components'; import { SearchOutlined, SyncOutlined, UnorderedListOutlined, AppstoreOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import type { FilterValue, SorterResult } from 'antd/es/table/interface'; import ProjectDrawer from '@/components/projects/project-drawer/project-drawer'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/board/project-view-board.tsx b/worklenz-frontend/src/pages/projects/project-view-1/board/project-view-board.tsx index b9d407e4..cf0a839f 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/board/project-view-board.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/board/project-view-board.tsx @@ -10,8 +10,8 @@ import { import { useAppSelector } from '@/hooks/useAppSelector'; import TaskListFilters from '../taskList/taskListFilters/TaskListFilters'; -import { Button, Skeleton } from 'antd'; -import { PlusOutlined } from '@ant-design/icons'; +import { Button, Skeleton } from '@/shared/antd-imports'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useDispatch } from 'react-redux'; import { toggleDrawer } from '@/features/projects/status/StatusSlice'; import KanbanGroup from '@/components/board/kanban-group/kanban-group'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/project-view-roadmap.tsx b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/project-view-roadmap.tsx index ec256f67..cb7ca914 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/project-view-roadmap.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/project-view-roadmap.tsx @@ -2,7 +2,7 @@ import { useState } from 'react'; import { ViewMode } from 'gantt-task-react'; import 'gantt-task-react/dist/index.css'; import './project-view-roadmap.css'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import { useAppSelector } from '../../../../hooks/useAppSelector'; import { TimeFilter } from './time-filter'; import RoadmapTable from './roadmap-table/roadmap-table'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-table.tsx b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-table.tsx index 96991e6c..f81b03f1 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-table.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-table.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { DatePicker, Typography } from 'antd'; +import { DatePicker, Typography } from '@/shared/antd-imports'; import dayjs, { Dayjs } from 'dayjs'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-task-cell.tsx b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-task-cell.tsx index d56d809a..c565414c 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-task-cell.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/roadmap-table/roadmap-task-cell.tsx @@ -1,10 +1,10 @@ -import { Flex, Typography, Button, Tooltip } from 'antd'; +import { Flex, Typography, Button, Tooltip } from '@/shared/antd-imports'; import { DoubleRightOutlined, DownOutlined, RightOutlined, ExpandAltOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { NewTaskType, toggleTaskExpansion } from '@features/roadmap/roadmap-slice'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleTaskDrawer } from '@features/tasks/taskSlice'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/time-filter.tsx b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/time-filter.tsx index ff1461f1..bf26e722 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/roadmap/time-filter.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/roadmap/time-filter.tsx @@ -1,7 +1,7 @@ import React from 'react'; import 'gantt-task-react/dist/index.css'; import { ViewMode } from 'gantt-task-react'; -import { Flex, Select } from 'antd'; +import { Flex, Select } from '@/shared/antd-imports'; type TimeFilterProps = { onViewModeChange: (viewMode: ViewMode) => void; }; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/table-v2.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/table-v2.tsx index 7f756485..5f90b63b 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/table-v2.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/table-v2.tsx @@ -1,6 +1,6 @@ import { useCallback, useMemo, useRef, useState } from 'react'; -import { Checkbox, Flex, Tag, Tooltip } from 'antd'; -import { HolderOutlined } from '@ant-design/icons'; +import { Checkbox, Flex, Tag, Tooltip } from '@/shared/antd-imports'; +import { HolderOutlined } from '@/shared/antd-imports'; import { DndContext, DragEndEvent, diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-columns/task-list-columns.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-columns/task-list-columns.tsx index 773b683a..23c0ed7a 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-columns/task-list-columns.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-columns/task-list-columns.tsx @@ -1,7 +1,7 @@ -import { Avatar, Checkbox, DatePicker, Flex, Select, Tag } from 'antd'; +import { Avatar, Checkbox, DatePicker, Flex, Select, Tag } from '@/shared/antd-imports'; import { createColumnHelper, ColumnDef } from '@tanstack/react-table'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; -import { HolderOutlined, PlusOutlined } from '@ant-design/icons'; +import { HolderOutlined, PlusOutlined } from '@/shared/antd-imports'; import StatusDropdown from '@/components/task-list-common/status-dropdown/status-dropdown'; import Avatars from '@/components/avatars/avatars'; import LabelsSelector from '@/components/task-list-common/labelsSelector/labels-selector'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-custom.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-custom.tsx index da30ca2f..ebdbe404 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-custom.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-custom.tsx @@ -1,5 +1,5 @@ import { useCallback, useMemo, useRef, useState } from 'react'; -import { Checkbox, theme } from 'antd'; +import { Checkbox, theme } from '@/shared/antd-imports'; import { useReactTable, getCoreRowModel, diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-header/task-list-header.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-header/task-list-header.tsx index 12043805..db648652 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-header/task-list-header.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-header/task-list-header.tsx @@ -1,12 +1,12 @@ import React, { useState } from 'react'; -import { Button, Dropdown, Input, Menu, Badge, Tooltip } from 'antd'; +import { Button, Dropdown, Input, Menu, Badge, Tooltip } from '@/shared/antd-imports'; import { RightOutlined, LoadingOutlined, EllipsisOutlined, EditOutlined, RetweetOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { ITaskListGroup } from '@/types/tasks/taskList.types'; import { ITaskStatusCategory } from '@/types/status.types'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-instant-task-input/task-list-instant-task-input.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-instant-task-input/task-list-instant-task-input.tsx index d41534cd..0c726f36 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-instant-task-input/task-list-instant-task-input.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-instant-task-input/task-list-instant-task-input.tsx @@ -1,4 +1,4 @@ -import { Input, InputRef, theme } from 'antd'; +import { Input, InputRef, theme } from '@/shared/antd-imports'; import React, { useState, useMemo, useRef } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-old/task-list-table-old.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-old/task-list-table-old.tsx index 5972a489..6cc52e12 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-old/task-list-table-old.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-old/task-list-table-old.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState } from 'react'; -import { Avatar, Checkbox, DatePicker, Flex, Tag, Tooltip, Typography } from 'antd'; +import { Avatar, Checkbox, DatePicker, Flex, Tag, Tooltip, Typography } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { columnList } from '@/pages/projects/project-view-1/taskList/taskListTable/columns/columnList'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-wrapper/task-list-table-wrapper.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-wrapper/task-list-table-wrapper.tsx index e3ec231f..e499a99b 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-wrapper/task-list-table-wrapper.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list-table-wrapper/task-list-table-wrapper.tsx @@ -1,7 +1,7 @@ -import { Badge, Button, Collapse, ConfigProvider, Dropdown, Flex, Input, Typography } from 'antd'; +import { Badge, Button, Collapse, ConfigProvider, Dropdown, Flex, Input, Typography } from '@/shared/antd-imports'; import { useState } from 'react'; import { TaskType } from '@/types/task.types'; -import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@ant-design/icons'; +import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import './task-list-table-wrapper.css'; import TaskListTable from '../table-v2'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list.tsx b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list.tsx index a5ad9f85..928ad63e 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/task-list/task-list.tsx @@ -1,5 +1,5 @@ import { useEffect } from 'react'; -import { Flex, Skeleton } from 'antd'; +import { Flex, Skeleton } from '@/shared/antd-imports'; import TaskListFilters from '@/pages/projects/project-view-1/taskList/taskListFilters/TaskListFilters'; import { useAppSelector } from '@/hooks/useAppSelector'; import { ITaskListConfigV2, ITaskListGroup } from '@/types/tasks/taskList.types'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/ProjectViewTaskList.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/ProjectViewTaskList.tsx index 676a7dbe..0d70c695 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/ProjectViewTaskList.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/ProjectViewTaskList.tsx @@ -1,5 +1,5 @@ import { useEffect } from 'react'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { fetchStatusesCategories } from '@/features/taskAttributes/taskStatusSlice'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/statusTables/StatusGroupTables.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/statusTables/StatusGroupTables.tsx index 4c74ca4a..b433323b 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/statusTables/StatusGroupTables.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/statusTables/StatusGroupTables.tsx @@ -1,6 +1,6 @@ import { TaskType } from '@/types/task.types'; import { useAppSelector } from '@/hooks/useAppSelector'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import TaskListTableWrapper from '@/pages/projects/project-view-1/taskList/taskListTable/TaskListTableWrapper'; import { createPortal } from 'react-dom'; import BulkTasksActionContainer from '@/features/projects/bulkActions/BulkTasksActionContainer'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/GroupByFilterDropdown.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/GroupByFilterDropdown.tsx index bdc87e82..89dcce16 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/GroupByFilterDropdown.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/GroupByFilterDropdown.tsx @@ -1,5 +1,5 @@ -import { CaretDownFilled } from '@ant-design/icons'; -import { ConfigProvider, Flex, Select } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { ConfigProvider, Flex, Select } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { colors } from '@/styles/colors'; import ConfigPhaseButton from '@features/projects/singleProject/phase/ConfigPhaseButton'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/LabelsFilterDropdown.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/LabelsFilterDropdown.tsx index afa395d4..fc398f04 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/LabelsFilterDropdown.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/LabelsFilterDropdown.tsx @@ -1,4 +1,4 @@ -import { CaretDownFilled } from '@ant-design/icons'; +import { CaretDownFilled } from '@/shared/antd-imports'; import { Badge, Button, @@ -11,7 +11,7 @@ import { InputRef, List, Space, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useRef, useState } from 'react'; import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/MembersFilterDropdown.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/MembersFilterDropdown.tsx index ea59bd1b..dbdcf027 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/MembersFilterDropdown.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/MembersFilterDropdown.tsx @@ -1,5 +1,5 @@ /* eslint-disable react-hooks/exhaustive-deps */ -import { CaretDownFilled } from '@ant-design/icons'; +import { CaretDownFilled } from '@/shared/antd-imports'; import { Badge, Button, @@ -13,7 +13,7 @@ import { List, Space, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useMemo, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/PriorityFilterDropdown.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/PriorityFilterDropdown.tsx index dafc5af2..a0b0c002 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/PriorityFilterDropdown.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/PriorityFilterDropdown.tsx @@ -1,5 +1,5 @@ -import { CaretDownFilled } from '@ant-design/icons'; -import { Badge, Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Badge, Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import { useState } from 'react'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SearchDropdown.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SearchDropdown.tsx index 8eb0d3b0..f968ec4a 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SearchDropdown.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SearchDropdown.tsx @@ -1,5 +1,5 @@ -import { SearchOutlined } from '@ant-design/icons'; -import { Button, Card, Dropdown, Flex, Input, InputRef, Space } from 'antd'; +import { SearchOutlined } from '@/shared/antd-imports'; +import { Button, Card, Dropdown, Flex, Input, InputRef, Space } from '@/shared/antd-imports'; import { useRef } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/ShowFieldsFilterDropdown.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/ShowFieldsFilterDropdown.tsx index f98b6c3c..0ef98fc7 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/ShowFieldsFilterDropdown.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/ShowFieldsFilterDropdown.tsx @@ -1,5 +1,5 @@ -import { MoreOutlined } from '@ant-design/icons'; -import { Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { MoreOutlined } from '@/shared/antd-imports'; +import { Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SortFilterDropdown.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SortFilterDropdown.tsx index 85c2cfd5..35612aac 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SortFilterDropdown.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/SortFilterDropdown.tsx @@ -1,5 +1,5 @@ -import { CaretDownFilled, SortAscendingOutlined, SortDescendingOutlined } from '@ant-design/icons'; -import { Badge, Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { CaretDownFilled, SortAscendingOutlined, SortDescendingOutlined } from '@/shared/antd-imports'; +import { Badge, Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { colors } from '../../../../../styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/TaskListFilters.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/TaskListFilters.tsx index d794c414..e1bfad6a 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/TaskListFilters.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListFilters/TaskListFilters.tsx @@ -1,4 +1,4 @@ -import { Checkbox, Flex, Typography } from 'antd'; +import { Checkbox, Flex, Typography } from '@/shared/antd-imports'; import SearchDropdown from './SearchDropdown'; import SortFilterDropdown from './SortFilterDropdown'; import LabelsFilterDropdown from './LabelsFilterDropdown'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTable.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTable.tsx index 1acd6c30..ea336c4f 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTable.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTable.tsx @@ -1,7 +1,7 @@ import { useAppSelector } from '@/hooks/useAppSelector'; import { columnList } from './columns/columnList'; import AddTaskListRow from './taskListTableRows/AddTaskListRow'; -import { Checkbox, Flex, Tag, Tooltip } from 'antd'; +import { Checkbox, Flex, Tag, Tooltip } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; import { useSelectedProject } from '@/hooks/useSelectedProject'; import TaskCell from './taskListTableCells/TaskCell'; @@ -12,7 +12,7 @@ import { useAppDispatch } from '@/hooks/useAppDispatch'; import { deselectAll } from '@features/projects/bulkActions/bulkActionSlice'; import { useTranslation } from 'react-i18next'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; -import { HolderOutlined } from '@ant-design/icons'; +import { HolderOutlined } from '@/shared/antd-imports'; const TaskListTable = ({ taskList, diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTableWrapper.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTableWrapper.tsx index b71ba97c..ecdf01a2 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTableWrapper.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/TaskListTableWrapper.tsx @@ -1,7 +1,6 @@ -import { Badge, Button, Collapse, ConfigProvider, Dropdown, Flex, Input, Typography } from 'antd'; +import { Badge, Button, Collapse, ConfigProvider, Dropdown, Flex, Input, Typography } from '@/shared/antd-imports'; import { useState } from 'react'; -import { TaskType } from '../../../../../types/task.types'; -import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@ant-design/icons'; +import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@/shared/antd-imports'; import { colors } from '../../../../../styles/colors'; import './taskListTableWrapper.css'; import TaskListTable from './TaskListTable'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/contextMenu/TaskContextMenu.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/contextMenu/TaskContextMenu.tsx index 757570b2..f87955fb 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/contextMenu/TaskContextMenu.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/contextMenu/TaskContextMenu.tsx @@ -4,8 +4,8 @@ import { InboxOutlined, RetweetOutlined, UserAddOutlined, -} from '@ant-design/icons'; -import { Badge, Dropdown, Flex, Typography } from 'antd'; +} from '@/shared/antd-imports'; +import { Badge, Dropdown, Flex, Typography } from '@/shared/antd-imports'; import { MenuProps } from 'antd/lib'; import React from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskCell.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskCell.tsx index b5e53016..b244796f 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskCell.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskCell.tsx @@ -1,12 +1,12 @@ // TaskNameCell.tsx import React from 'react'; -import { Flex, Typography, Button } from 'antd'; +import { Flex, Typography, Button } from '@/shared/antd-imports'; import { DoubleRightOutlined, DownOutlined, RightOutlined, ExpandAltOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { setShowTaskDrawer } from '@/features/task-drawer/task-drawer.slice'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskProgress.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskProgress.tsx index 24df83f9..0f15bd5a 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskProgress.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TaskProgress.tsx @@ -1,4 +1,4 @@ -import { Progress, Tooltip } from 'antd'; +import { Progress, Tooltip } from '@/shared/antd-imports'; import React from 'react'; import './TaskProgress.css'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TimeTracker.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TimeTracker.tsx index 03496d0a..1f19d6c9 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TimeTracker.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableCells/TimeTracker.tsx @@ -1,6 +1,6 @@ import React from 'react'; -import { Divider, Empty, Flex, Popover, Typography } from 'antd'; -import { PlayCircleFilled } from '@ant-design/icons'; +import { Divider, Empty, Flex, Popover, Typography } from '@/shared/antd-imports'; +import { PlayCircleFilled } from '@/shared/antd-imports'; import { colors } from '../../../../../../styles/colors'; import CustomAvatar from '../../../../../../components/CustomAvatar'; import { mockTimeLogs } from './mockTimeLogs'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddSubTaskListRow.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddSubTaskListRow.tsx index 5fc71fdf..1c5cdea9 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddSubTaskListRow.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddSubTaskListRow.tsx @@ -1,4 +1,4 @@ -import { Input } from 'antd'; +import { Input } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddTaskListRow.tsx b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddTaskListRow.tsx index fa7e9f85..17258412 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddTaskListRow.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/taskList/taskListTable/taskListTableRows/AddTaskListRow.tsx @@ -1,4 +1,4 @@ -import { Input } from 'antd'; +import { Input } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/pages/projects/project-view-1/updates/project-view-updates.tsx b/worklenz-frontend/src/pages/projects/project-view-1/updates/project-view-updates.tsx index c432b766..2a4d0994 100644 --- a/worklenz-frontend/src/pages/projects/project-view-1/updates/project-view-updates.tsx +++ b/worklenz-frontend/src/pages/projects/project-view-1/updates/project-view-updates.tsx @@ -11,7 +11,7 @@ import { Dropdown, Menu, Popconfirm, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useState, useCallback, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import DOMPurify from 'dompurify'; @@ -29,7 +29,7 @@ import { calculateTimeDifference } from '@/utils/calculate-time-difference'; import { getUserSession } from '@/utils/session-helper'; import './project-view-updates.css'; import { useAppSelector } from '@/hooks/useAppSelector'; -import { DeleteOutlined } from '@ant-design/icons'; +import { DeleteOutlined } from '@/shared/antd-imports'; const MAX_COMMENT_LENGTH = 2000; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-create-section-card.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-create-section-card.tsx index 7e61385e..876b1ea0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-create-section-card.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-create-section-card.tsx @@ -1,5 +1,5 @@ -import { Button, Flex } from 'antd'; -import { PlusOutlined } from '@ant-design/icons'; +import { Button, Flex } from '@/shared/antd-imports'; +import { PlusOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { nanoid } from '@reduxjs/toolkit'; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card-header.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card-header.tsx index 3c6ec55d..427dfe20 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card-header.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card-header.tsx @@ -9,7 +9,7 @@ import { Popconfirm, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { DeleteOutlined, EditOutlined, @@ -18,8 +18,8 @@ import { MoreOutlined, PlusOutlined, RetweetOutlined, -} from '@ant-design/icons'; -import { MenuProps } from 'antd'; +} from '@/shared/antd-imports'; +import { MenuProps } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import ChangeCategoryDropdown from '@/components/board/changeCategoryDropdown/ChangeCategoryDropdown'; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card.tsx index 6bf60f80..14b2b36c 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-card/board-section-card.tsx @@ -1,4 +1,4 @@ -import { Button, Flex } from 'antd'; +import { Button, Flex } from '@/shared/antd-imports'; import { useEffect, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useDroppable } from '@dnd-kit/core'; @@ -9,7 +9,7 @@ import { CSS } from '@dnd-kit/utilities'; import { useAppSelector } from '@/hooks/useAppSelector'; import { themeWiseColor } from '@/utils/themeWiseColor'; import BoardSectionCardHeader from './board-section-card-header'; -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import BoardViewTaskCard from '../board-task-card/board-view-task-card'; import BoardViewCreateTaskCard from '../board-task-card/board-view-create-task-card'; import { ITaskListGroup } from '@/types/tasks/taskList.types'; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-container.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-container.tsx index bb9d41b3..45e4a9e0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-container.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-section-container.tsx @@ -1,4 +1,4 @@ -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import { SortableContext, horizontalListSortingStrategy } from '@dnd-kit/sortable'; import BoardSectionCard from './board-section-card/board-section-card'; import BoardCreateSectionCard from './board-section-card/board-create-section-card'; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-create-sub-task-card.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-create-sub-task-card.tsx index f26a0136..4773be40 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-create-sub-task-card.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-create-sub-task-card.tsx @@ -1,4 +1,4 @@ -import { Flex, Input, InputRef } from 'antd'; +import { Flex, Input, InputRef } from '@/shared/antd-imports'; import React, { useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-sub-task-card.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-sub-task-card.tsx index d3b074d7..a9ba68d0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-sub-task-card.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-sub-task-card/board-sub-task-card.tsx @@ -1,12 +1,12 @@ import { useCallback, useState } from 'react'; import dayjs, { Dayjs } from 'dayjs'; -import { Col, Flex, Typography, List, Dropdown, MenuProps, Popconfirm } from 'antd'; +import { Col, Flex, Typography, List, Dropdown, MenuProps, Popconfirm } from '@/shared/antd-imports'; import { UserAddOutlined, DeleteOutlined, ExclamationCircleFilled, InboxOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import CustomAvatarGroup from '@/components/board/custom-avatar-group'; import CustomDueDatePicker from '@/components/board/custom-due-date-picker'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-create-task-card.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-create-task-card.tsx index 4b628d1b..b7612b1c 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-create-task-card.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-create-task-card.tsx @@ -1,4 +1,4 @@ -import { Button, Flex, Input, InputRef } from 'antd'; +import { Button, Flex, Input, InputRef } from '@/shared/antd-imports'; import React, { useRef, useState, useEffect } from 'react'; import { Dayjs } from 'dayjs'; import { nanoid } from '@reduxjs/toolkit'; diff --git a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-task-card.tsx b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-task-card.tsx index 542d3796..770cfb2f 100644 --- a/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-task-card.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/board/board-section/board-task-card/board-view-task-card.tsx @@ -12,7 +12,7 @@ import { Divider, Popconfirm, Skeleton, -} from 'antd'; +} from '@/shared/antd-imports'; import { DoubleRightOutlined, PauseOutlined, @@ -25,7 +25,7 @@ import { CaretDownFilled, ExclamationCircleFilled, PlusOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import dayjs, { Dayjs } from 'dayjs'; import { useTranslation } from 'react-i18next'; import { useSortable } from '@dnd-kit/sortable'; diff --git a/worklenz-frontend/src/pages/projects/projectView/files/project-view-files.tsx b/worklenz-frontend/src/pages/projects/projectView/files/project-view-files.tsx index 358c5122..0ec8d85b 100644 --- a/worklenz-frontend/src/pages/projects/projectView/files/project-view-files.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/files/project-view-files.tsx @@ -8,7 +8,7 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { colors } from '@/styles/colors'; import { @@ -18,7 +18,7 @@ import { DeleteOutlined, ExclamationCircleFilled, ExclamationCircleOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { durationDateFormat } from '@utils/durationDateFormat'; import { DEFAULT_PAGE_SIZE, IconsMap } from '@/shared/constants'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/insights-members.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/insights-members.tsx index 45361236..59408d4f 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/insights-members.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/insights-members.tsx @@ -1,4 +1,4 @@ -import { Card, Flex, Typography } from 'antd'; +import { Card, Flex, Typography } from '@/shared/antd-imports'; import TaskByMembersTable from './tables/tasks-by-members'; import MemberStats from '../member-stats/member-stats'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/assigned-tasks-list.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/assigned-tasks-list.tsx index d78f9797..2d07951c 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/assigned-tasks-list.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/assigned-tasks-list.tsx @@ -1,5 +1,5 @@ import React, { useEffect, useState } from 'react'; -import { Flex, Tooltip, Typography } from 'antd'; +import { Flex, Tooltip, Typography } from '@/shared/antd-imports'; import { projectInsightsApiService } from '@/api/projects/insights/project-insights.api.service'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/tasks-by-members.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/tasks-by-members.tsx index dad92582..49b39a0a 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/tasks-by-members.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-members/tables/tasks-by-members.tsx @@ -1,9 +1,9 @@ import { useEffect, useState } from 'react'; -import { Flex, Progress } from 'antd'; +import { Flex, Progress } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useAppSelector } from '@/hooks/useAppSelector'; import { themeWiseColor } from '@/utils/themeWiseColor'; -import { DownOutlined, ExclamationCircleOutlined, RightOutlined } from '@ant-design/icons'; +import { DownOutlined, ExclamationCircleOutlined, RightOutlined } from '@/shared/antd-imports'; import logger from '@/utils/errorLogger'; import { projectsApiService } from '@/api/projects/projects.api.service'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/priority-overview.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/priority-overview.tsx index 2c822b94..58aa56b9 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/priority-overview.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/priority-overview.tsx @@ -1,7 +1,7 @@ import { Bar } from 'react-chartjs-2'; import { Chart, ArcElement, Tooltip, CategoryScale, LinearScale, BarElement } from 'chart.js'; import { ChartOptions } from 'chart.js'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import { ITaskPriorityCounts } from '@/types/project/project-insights.types'; import { useEffect, useState } from 'react'; import { projectInsightsApiService } from '@/api/projects/insights/project-insights.api.service'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/status-overview.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/status-overview.tsx index 450cfecb..65503fc0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/status-overview.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/graphs/status-overview.tsx @@ -1,7 +1,7 @@ import React, { useEffect, useState } from 'react'; import { Doughnut } from 'react-chartjs-2'; import { Chart, ArcElement } from 'chart.js'; -import { Badge, Flex, Tooltip, Typography, Spin } from 'antd'; +import { Badge, Flex, Tooltip, Typography, Spin } from '@/shared/antd-imports'; import { ChartOptions } from 'chart.js'; import { projectInsightsApiService } from '@/api/projects/insights/project-insights.api.service'; import { ITaskStatusCounts } from '@/types/project/project-insights.types'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/insights-overview.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/insights-overview.tsx index edb51aa3..d089136d 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/insights-overview.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/insights-overview.tsx @@ -1,4 +1,4 @@ -import { Button, Card, Flex, Typography } from 'antd'; +import { Button, Card, Flex, Typography } from '@/shared/antd-imports'; import StatusOverview from './graphs/status-overview'; import PriorityOverview from './graphs/priority-overview'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/last-updated-tasks.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/last-updated-tasks.tsx index ad438cc1..8b96c6e0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/last-updated-tasks.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/last-updated-tasks.tsx @@ -1,4 +1,4 @@ -import { Flex, Table, Tooltip, Typography } from 'antd'; +import { Flex, Table, Tooltip, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { colors } from '@/styles/colors'; import { TableProps } from 'antd/lib'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/project-deadline.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/project-deadline.tsx index 4475ad12..dc346a89 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/project-deadline.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-overview/tables/project-deadline.tsx @@ -1,4 +1,4 @@ -import { Card, Flex, Skeleton, Table, Typography } from 'antd'; +import { Card, Flex, Skeleton, Table, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { colors } from '@/styles/colors'; import { TableProps } from 'antd/lib'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/insights-tasks.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/insights-tasks.tsx index 48ab18e2..7f027d70 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/insights-tasks.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/insights-tasks.tsx @@ -1,5 +1,5 @@ -import { Button, Card, Flex, Tooltip, Typography } from 'antd'; -import { ExclamationCircleOutlined } from '@ant-design/icons'; +import { Button, Card, Flex, Tooltip, Typography } from '@/shared/antd-imports'; +import { ExclamationCircleOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import OverdueTasksTable from './tables/overdue-tasks-table'; import OverLoggedTasksTable from './tables/over-logged-tasks-table'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/over-logged-tasks-table.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/over-logged-tasks-table.tsx index 95dd1986..eb123902 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/over-logged-tasks-table.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/over-logged-tasks-table.tsx @@ -1,8 +1,8 @@ -import { Avatar, Button, Flex, Table, Typography } from 'antd'; +import { Avatar, Button, Flex, Table, Typography } from '@/shared/antd-imports'; import { useState, useEffect } from 'react'; import { colors } from '@/styles/colors'; import { TableProps } from 'antd/lib'; -import { PlusOutlined } from '@ant-design/icons'; +import { PlusOutlined } from '@/shared/antd-imports'; import { IInsightTasks } from '@/types/project/projectInsights.types'; import logger from '@/utils/errorLogger'; import { projectInsightsApiService } from '@/api/projects/insights/project-insights.api.service'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/overdue-tasks-table.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/overdue-tasks-table.tsx index 6e36cbae..4d5c9ffa 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/overdue-tasks-table.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/overdue-tasks-table.tsx @@ -1,4 +1,4 @@ -import { Flex, Table, Typography } from 'antd'; +import { Flex, Table, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { colors } from '@/styles/colors'; import { TableProps } from 'antd/lib'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-early-table.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-early-table.tsx index 75b0d1d3..56749587 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-early-table.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-early-table.tsx @@ -1,4 +1,4 @@ -import { Flex, Table, Typography } from 'antd'; +import { Flex, Table, Typography } from '@/shared/antd-imports'; import { TableProps } from 'antd/lib'; import { useEffect, useState } from 'react'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-late-table.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-late-table.tsx index 764d0e21..27c2ea35 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-late-table.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/insights-tasks/tables/task-completed-late-table.tsx @@ -1,4 +1,4 @@ -import { Flex, Table, Typography } from 'antd'; +import { Flex, Table, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { colors } from '@/styles/colors'; import { TableProps } from 'antd/lib'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/member-stats/member-stats.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/member-stats/member-stats.tsx index 2f897cc4..ab3a2078 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/member-stats/member-stats.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/member-stats/member-stats.tsx @@ -1,5 +1,5 @@ import ProjectStatsCard from '@/components/projects/project-stats-card'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import groupIcon from '@/assets/icons/insightsIcons/group.png'; import warningIcon from '@/assets/icons/insightsIcons/warning.png'; import unassignedIcon from '@/assets/icons/insightsIcons/block-user.png'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/project-stats/project-stats.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/project-stats/project-stats.tsx index cbee0f5b..99d655c7 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/project-stats/project-stats.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/project-stats/project-stats.tsx @@ -1,5 +1,5 @@ import ProjectStatsCard from '@/components/projects/project-stats-card'; -import { Flex, Tooltip } from 'antd'; +import { Flex, Tooltip } from '@/shared/antd-imports'; import checkIcon from '@assets/icons/insightsIcons/insights-check.png'; import clipboardIcon from '@assets/icons/insightsIcons/clipboard.png'; import clockIcon from '@assets/icons/insightsIcons/clock-green.png'; diff --git a/worklenz-frontend/src/pages/projects/projectView/insights/project-view-insights.tsx b/worklenz-frontend/src/pages/projects/projectView/insights/project-view-insights.tsx index 81b7c717..45474ef0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/insights/project-view-insights.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/insights/project-view-insights.tsx @@ -1,5 +1,5 @@ -import { DownloadOutlined } from '@ant-design/icons'; -import { Badge, Button, Checkbox, Flex, Segmented } from 'antd'; +import { DownloadOutlined } from '@/shared/antd-imports'; +import { Badge, Button, Checkbox, Flex, Segmented } from '@/shared/antd-imports'; import { useEffect, useRef, useState } from 'react'; import { useParams } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/members/project-view-members.tsx b/worklenz-frontend/src/pages/projects/projectView/members/project-view-members.tsx index 0e2f8d54..2208ab24 100644 --- a/worklenz-frontend/src/pages/projects/projectView/members/project-view-members.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/members/project-view-members.tsx @@ -11,11 +11,11 @@ import { TableProps, Tooltip, Typography, - Input, // <-- Add this import -} from 'antd'; + Input +} from '@/shared/antd-imports'; // Icons -import { DeleteOutlined, ExclamationCircleFilled, SyncOutlined } from '@ant-design/icons'; +import { DeleteOutlined, ExclamationCircleFilled, SyncOutlined } from '@/shared/antd-imports'; // React & Router import { useEffect, useState } from 'react'; diff --git a/worklenz-frontend/src/pages/projects/projectView/project-view-header.tsx b/worklenz-frontend/src/pages/projects/projectView/project-view-header.tsx index ed604d88..050541e4 100644 --- a/worklenz-frontend/src/pages/projects/projectView/project-view-header.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/project-view-header.tsx @@ -65,7 +65,7 @@ import { addTaskCardToTheTop, fetchBoardTaskGroups } from '@/features/board/boar import { fetchPhasesByProjectId } from '@/features/projects/singleProject/phase/phases.slice'; import { fetchEnhancedKanbanGroups } from '@/features/enhanced-kanban/enhanced-kanban.slice'; import { fetchTasksV3 } from '@/features/task-management/task-management.slice'; -import { ShareAltOutlined } from '@ant-design/icons'; +import { ShareAltOutlined } from '@/shared/antd-imports'; import { fetchStatuses } from '@/features/taskAttributes/taskStatusSlice'; const ProjectViewHeader = memo(() => { diff --git a/worklenz-frontend/src/pages/projects/projectView/project-view.tsx b/worklenz-frontend/src/pages/projects/projectView/project-view.tsx index 30bed530..7361fd50 100644 --- a/worklenz-frontend/src/pages/projects/projectView/project-view.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/project-view.tsx @@ -10,7 +10,6 @@ import { Tabs, PushpinFilled, PushpinOutlined, - type TabsProps, } from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; @@ -41,7 +40,6 @@ import { SuspenseFallback } from '@/components/suspense-fallback/suspense-fallba import { useTranslation } from 'react-i18next'; import { useTimerInitialization } from '@/hooks/useTimerInitialization'; - // Import critical components synchronously to avoid suspense interruptions import TaskDrawer from '@components/task-drawer/task-drawer'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/components/task-group/task-group.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/components/task-group/task-group.tsx index 87cd04fd..ba1fb4a3 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/components/task-group/task-group.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/components/task-group/task-group.tsx @@ -8,7 +8,7 @@ import Dropdown from 'antd/es/dropdown'; import Input from 'antd/es/input'; import Typography from 'antd/es/typography'; import { MenuProps } from 'antd/es/menu'; -import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@ant-design/icons'; +import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/TaskGroupList.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/TaskGroupList.tsx index b0abc8f9..e672bd83 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/TaskGroupList.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/TaskGroupList.tsx @@ -17,7 +17,7 @@ import { DragEndEvent, DragStartEvent, } from '@dnd-kit/core'; -import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@ant-design/icons'; +import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/priorityTables/PriorityGroupTables.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/priorityTables/PriorityGroupTables.tsx index d72929be..9d8fd153 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/priorityTables/PriorityGroupTables.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/groupTables/priorityTables/PriorityGroupTables.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { TaskPriorityType, TaskType } from '../../../../../../types/task.types'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import TaskListTableWrapper from '../../task-list-table/task-list-table-wrapper/task-list-table-wrapper'; import { useAppSelector } from '../../../../../../hooks/useAppSelector'; import { getPriorityColor } from '../../../../../../utils/getPriorityColors'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/context-menu/task-context-menu.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/context-menu/task-context-menu.tsx index eaab7cf5..f359ecd8 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/context-menu/task-context-menu.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/context-menu/task-context-menu.tsx @@ -5,8 +5,8 @@ import { LoadingOutlined, RetweetOutlined, UserAddOutlined, -} from '@ant-design/icons'; -import { Badge, Dropdown, Flex, Typography, Modal } from 'antd'; +} from '@/shared/antd-imports'; +import { Badge, Dropdown, Flex, Typography, Modal } from '@/shared/antd-imports'; import { MenuProps } from 'antd/lib'; import { useState } from 'react'; import { TFunction } from 'i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-label-cell/custom-column-label-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-label-cell/custom-column-label-cell.tsx index 2985a352..117ad3d9 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-label-cell/custom-column-label-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-label-cell/custom-column-label-cell.tsx @@ -1,6 +1,6 @@ -import { Badge, Card, Dropdown, Empty, Flex, Menu, MenuProps, Typography } from 'antd'; +import { Badge, Card, Dropdown, Empty, Flex, Menu, MenuProps, Typography } from '@/shared/antd-imports'; import React, { useState, useEffect } from 'react'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined } from '@/shared/antd-imports'; // custom css file import './custom-column-label-cell.css'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-selection-cell/custom-column-selection-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-selection-cell/custom-column-selection-cell.tsx index 6d200fc1..981cc674 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-selection-cell/custom-column-selection-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-cells/custom-column-selection-cell/custom-column-selection-cell.tsx @@ -1,6 +1,6 @@ -import { Badge, Card, Dropdown, Empty, Flex, Menu, MenuProps, Typography } from 'antd'; +import { Badge, Card, Dropdown, Empty, Flex, Menu, MenuProps, Typography } from '@/shared/antd-imports'; import React, { useState, useEffect } from 'react'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined } from '@/shared/antd-imports'; // custom css file import './custom-column-selection-cell.css'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-header/custom-column-header.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-header/custom-column-header.tsx index 20ab7316..b7401c55 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-header/custom-column-header.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-header/custom-column-header.tsx @@ -1,5 +1,5 @@ -import { SettingOutlined } from '@ant-design/icons'; -import { Button, Flex, Tooltip, Typography } from 'antd'; +import { SettingOutlined } from '@/shared/antd-imports'; +import { Button, Flex, Tooltip, Typography } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useTranslation } from 'react-i18next'; import CustomColumnModal from '../custom-column-modal/custom-column-modal'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/add-custom-column-button.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/add-custom-column-button.tsx index 738971b4..6b8301c0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/add-custom-column-button.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/add-custom-column-button.tsx @@ -1,5 +1,5 @@ -import { PlusOutlined } from '@ant-design/icons'; -import { Button, Tooltip } from 'antd'; +import { PlusOutlined } from '@/shared/antd-imports'; +import { Button, Tooltip } from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { setCustomColumnModalAttributes, diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/custom-column-modal.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/custom-column-modal.tsx index 52b8e553..5ebf1ef7 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/custom-column-modal.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/custom-column-modal.tsx @@ -51,7 +51,7 @@ import { } from '@/features/task-management/task-management.slice'; import { useParams } from 'react-router-dom'; import { tasksCustomColumnsService } from '@/api/tasks/tasks-custom-columns.service'; -import { ExclamationCircleFilled } from '@ant-design/icons'; +import { ExclamationCircleFilled } from '@/shared/antd-imports'; const CustomColumnModal = () => { const [mainForm] = Form.useForm(); diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/formula-type-column/formula-type-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/formula-type-column/formula-type-column.tsx index c5022639..bc1825a7 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/formula-type-column/formula-type-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/formula-type-column/formula-type-column.tsx @@ -1,4 +1,4 @@ -import { Flex, Form, Select, Typography } from 'antd'; +import { Flex, Form, Select, Typography } from '@/shared/antd-imports'; import React from 'react'; import { themeWiseColor } from '../../../../../../../../utils/themeWiseColor'; import { useAppSelector } from '../../../../../../../../hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/key-type-column/key-type-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/key-type-column/key-type-column.tsx index 963605a7..6b729943 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/key-type-column/key-type-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/key-type-column/key-type-column.tsx @@ -1,4 +1,4 @@ -import { Flex, Form, Input, Typography } from 'antd'; +import { Flex, Form, Input, Typography } from '@/shared/antd-imports'; import React, { useState } from 'react'; const KeyTypeColumn = () => { diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/label-type-column/label-type-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/label-type-column/label-type-column.tsx index ec5a0093..84f62455 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/label-type-column/label-type-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/label-type-column/label-type-column.tsx @@ -1,8 +1,8 @@ import React, { useState, useEffect } from 'react'; import { nanoid } from 'nanoid'; import { PhaseColorCodes } from '../../../../../../../../shared/constants'; -import { Button, Flex, Input, Select, Tag, Typography } from 'antd'; -import { CloseCircleOutlined, HolderOutlined } from '@ant-design/icons'; +import { Button, Flex, Input, Select, Tag, Typography } from '@/shared/antd-imports'; +import { CloseCircleOutlined, HolderOutlined } from '@/shared/antd-imports'; import { useAppDispatch } from '../../../../../../../../hooks/useAppDispatch'; import { useAppSelector } from '../../../../../../../../hooks/useAppSelector'; import { setLabelsList } from '../../../../../../../../features/projects/singleProject/task-list-custom-columns/task-list-custom-columns-slice'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/formatted-type-number-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/formatted-type-number-column.tsx index a4091030..629c1fe8 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/formatted-type-number-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/formatted-type-number-column.tsx @@ -1,4 +1,4 @@ -import { Form, Select, Typography } from 'antd'; +import { Form, Select, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '../../../../../../../../hooks/useAppSelector'; import { themeWiseColor } from '../../../../../../../../utils/themeWiseColor'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/number-type-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/number-type-column.tsx index ba56f7ec..e628d322 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/number-type-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/number-type-column.tsx @@ -1,4 +1,4 @@ -import { Form, Select, Typography } from 'antd'; +import { Form, Select, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { themeWiseColor } from '@/utils/themeWiseColor'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/percentage-type-number-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/percentage-type-number-column.tsx index 590befb9..62f75358 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/percentage-type-number-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/percentage-type-number-column.tsx @@ -1,4 +1,4 @@ -import { Form, Select, Typography } from 'antd'; +import { Form, Select, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { themeWiseColor } from '@/utils/themeWiseColor'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/unformatted-type-number-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/unformatted-type-number-column.tsx index 2287b584..37d21f4d 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/unformatted-type-number-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/unformatted-type-number-column.tsx @@ -1,4 +1,4 @@ -import { Form, Typography } from 'antd'; +import { Form, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '../../../../../../../../hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/with-label-type-number-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/with-label-type-number-column.tsx index ff86e95f..da592df0 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/with-label-type-number-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/number-type-column/with-label-type-number-column.tsx @@ -1,4 +1,4 @@ -import { Form, Input, Select, Typography } from 'antd'; +import { Form, Input, Select, Typography } from '@/shared/antd-imports'; import React from 'react'; import { useAppSelector } from '../../../../../../../../hooks/useAppSelector'; import { themeWiseColor } from '../../../../../../../../utils/themeWiseColor'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/selection-type-column/selection-type-column.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/selection-type-column/selection-type-column.tsx index 415d58ca..eeb165e9 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/selection-type-column/selection-type-column.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/custom-columns/custom-column-modal/selection-type-column/selection-type-column.tsx @@ -1,8 +1,8 @@ import React, { useState, useEffect } from 'react'; import { nanoid } from 'nanoid'; import { PhaseColorCodes } from '../../../../../../../../shared/constants'; -import { Button, Flex, Input, Select, Tag, Typography } from 'antd'; -import { CloseCircleOutlined, HolderOutlined } from '@ant-design/icons'; +import { Button, Flex, Input, Select, Tag, Typography } from '@/shared/antd-imports'; +import { CloseCircleOutlined, HolderOutlined } from '@/shared/antd-imports'; import { useAppDispatch } from '../../../../../../../../hooks/useAppDispatch'; import { useAppSelector } from '../../../../../../../../hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-completed-date-cell/task-list-completed-date-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-completed-date-cell/task-list-completed-date-cell.tsx index 92c625d1..4a7dcdd4 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-completed-date-cell/task-list-completed-date-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-completed-date-cell/task-list-completed-date-cell.tsx @@ -1,4 +1,4 @@ -import { Tooltip, Typography } from 'antd'; +import { Tooltip, Typography } from '@/shared/antd-imports'; import React from 'react'; import { durationDateFormat } from '@/utils/durationDateFormat'; import { formatDate } from '@/utils/timeUtils'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-created-date-cell/task-list-created-date-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-created-date-cell/task-list-created-date-cell.tsx index 2b843aa2..b79ab97f 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-created-date-cell/task-list-created-date-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-created-date-cell/task-list-created-date-cell.tsx @@ -1,4 +1,4 @@ -import { Tooltip, Typography } from 'antd'; +import { Tooltip, Typography } from '@/shared/antd-imports'; import { durationDateFormat } from '@/utils/durationDateFormat'; import { formatDate } from '@/utils/timeUtils'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-description-cell/task-list-description-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-description-cell/task-list-description-cell.tsx index 1ee5c921..fd1be167 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-description-cell/task-list-description-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-description-cell/task-list-description-cell.tsx @@ -1,4 +1,4 @@ -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; import DOMPurify from 'dompurify'; const TaskListDescriptionCell = ({ description }: { description: string }) => { diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-date-cell/task-list-due-date-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-date-cell/task-list-due-date-cell.tsx index 9e584d3a..e8cb18d5 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-date-cell/task-list-due-date-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-date-cell/task-list-due-date-cell.tsx @@ -1,4 +1,4 @@ -import { DatePicker } from 'antd'; +import { DatePicker } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import dayjs, { Dayjs } from 'dayjs'; import { useSocket } from '@/socket/socketContext'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-time-cell/task-list-due-time-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-time-cell/task-list-due-time-cell.tsx index a6fe9516..a479c47d 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-time-cell/task-list-due-time-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-due-time-cell/task-list-due-time-cell.tsx @@ -1,4 +1,4 @@ -import { TimePicker, TimePickerProps } from 'antd'; +import { TimePicker, TimePickerProps } from '@/shared/antd-imports'; import React from 'react'; // import dayjs from 'dayjs'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-estimation-cell/task-list-estimation-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-estimation-cell/task-list-estimation-cell.tsx index ffd04062..fd57d903 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-estimation-cell/task-list-estimation-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-estimation-cell/task-list-estimation-cell.tsx @@ -1,5 +1,5 @@ import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; import React from 'react'; interface ITaskListEstimationCellProps { diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-labels-cell/task-list-labels-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-labels-cell/task-list-labels-cell.tsx index 1104e7b6..b64aa311 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-labels-cell/task-list-labels-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-labels-cell/task-list-labels-cell.tsx @@ -1,4 +1,4 @@ -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import CustomNumberLabel from '@/components/taskListCommon/labelsSelector/CustomNumberLabel'; import LabelsSelector from '@/components/taskListCommon/labelsSelector/LabelsSelector'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-last-updated-cell/task-list-last-updated-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-last-updated-cell/task-list-last-updated-cell.tsx index c040550e..13b99e62 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-last-updated-cell/task-list-last-updated-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-last-updated-cell/task-list-last-updated-cell.tsx @@ -1,4 +1,4 @@ -import { Tooltip, Typography } from 'antd'; +import { Tooltip, Typography } from '@/shared/antd-imports'; import { durationDateFormat } from '@/utils/durationDateFormat'; import { formatDate } from '@/utils/timeUtils'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-progress-cell/task-list-progress-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-progress-cell/task-list-progress-cell.tsx index d4099e73..b37098a4 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-progress-cell/task-list-progress-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-progress-cell/task-list-progress-cell.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Progress, Tooltip } from 'antd'; +import { Progress, Tooltip } from '@/shared/antd-imports'; import './task-list-progress-cell.css'; import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-reporter-cell/task-list-reporter-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-reporter-cell/task-list-reporter-cell.tsx index 1930650e..bffb3463 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-reporter-cell/task-list-reporter-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-reporter-cell/task-list-reporter-cell.tsx @@ -1,5 +1,5 @@ import { IProjectTask } from '@/types/project/projectTasksViewModel.types'; -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; const TaskListReporterCell = ({ task }: { task: IProjectTask }) => { return {task?.reporter}; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-start-date-cell/task-list-start-date-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-start-date-cell/task-list-start-date-cell.tsx index 53f40cbe..d101e875 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-start-date-cell/task-list-start-date-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-start-date-cell/task-list-start-date-cell.tsx @@ -1,4 +1,4 @@ -import { DatePicker } from 'antd'; +import { DatePicker } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import dayjs, { Dayjs } from 'dayjs'; import { useSocket } from '@/socket/socketContext'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-cell/task-list-task-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-cell/task-list-task-cell.tsx index 2c313d79..61d3eca5 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-cell/task-list-task-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-cell/task-list-task-cell.tsx @@ -1,5 +1,5 @@ -import { Flex, Typography, Button, Input, Tooltip } from 'antd'; -import type { InputRef } from 'antd'; +import { Flex, Typography, Button, Input, Tooltip } from '@/shared/antd-imports'; +import type { InputRef } from '@/shared/antd-imports'; import { DoubleRightOutlined, DownOutlined, @@ -10,7 +10,7 @@ import { PaperClipOutlined, MinusCircleOutlined, RetweetOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-id-cell/task-list-task-id-cell.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-id-cell/task-list-task-id-cell.tsx index b7cdf949..37e24d06 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-id-cell/task-list-task-id-cell.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-cells/task-list-task-id-cell/task-list-task-id-cell.tsx @@ -1,4 +1,4 @@ -import { Tag, Tooltip } from 'antd'; +import { Tag, Tooltip } from '@/shared/antd-imports'; import React from 'react'; const TaskListTaskIdCell = ({ taskId }: { taskId: string | null }) => { diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-sub-task-list-row.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-sub-task-list-row.tsx index 260b6c2e..6b9c13e6 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-sub-task-list-row.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-sub-task-list-row.tsx @@ -1,4 +1,4 @@ -import { Input, Button } from 'antd'; +import { Input, Button } from '@/shared/antd-imports'; import React, { useRef, useEffect, useState } from 'react'; import { useAppSelector } from '../../../../../../hooks/useAppSelector'; import { colors } from '../../../../../../styles/colors'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-task-list-row.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-task-list-row.tsx index 01f2dc96..c5403162 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-task-list-row.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-rows/add-task-list-row.tsx @@ -1,7 +1,7 @@ import Input, { InputRef } from 'antd/es/input'; import { useMemo, useRef, useState, useEffect } from 'react'; -import { Spin } from 'antd'; -import { LoadingOutlined } from '@ant-design/icons'; +import { Spin } from '@/shared/antd-imports'; +import { LoadingOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-wrapper/task-list-table-wrapper.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-wrapper/task-list-table-wrapper.tsx index fb7c9fb1..1c445a09 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-wrapper/task-list-table-wrapper.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table-wrapper/task-list-table-wrapper.tsx @@ -9,7 +9,7 @@ import Dropdown from 'antd/es/dropdown'; import Input from 'antd/es/input'; import Typography from 'antd/es/typography'; import { MenuProps } from 'antd/es/menu'; -import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@ant-design/icons'; +import { EditOutlined, EllipsisOutlined, RetweetOutlined, RightOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import './task-list-table-wrapper.css'; import TaskListTable from '../task-list-table'; diff --git a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table.tsx b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table.tsx index 255bbf78..3a505155 100644 --- a/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/taskList/task-list-table/task-list-table.tsx @@ -11,7 +11,7 @@ import { SettingOutlined, UsergroupAddOutlined, PlusOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useSortable } from '@dnd-kit/sortable'; import { CSS } from '@dnd-kit/utilities'; @@ -33,7 +33,7 @@ import { } from '@dnd-kit/sortable'; import { createPortal } from 'react-dom'; import { DragOverEvent } from '@dnd-kit/core'; -import { List, Card, Avatar, Dropdown, Empty, Divider, Button } from 'antd'; +import { List, Card, Avatar, Dropdown, Empty, Divider, Button } from '@/shared/antd-imports'; import dayjs from 'dayjs'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/projects/projectView/updates/ProjectViewUpdates.tsx b/worklenz-frontend/src/pages/projects/projectView/updates/ProjectViewUpdates.tsx index 608bfd94..dae57f95 100644 --- a/worklenz-frontend/src/pages/projects/projectView/updates/ProjectViewUpdates.tsx +++ b/worklenz-frontend/src/pages/projects/projectView/updates/ProjectViewUpdates.tsx @@ -1,4 +1,4 @@ -import { Button, ConfigProvider, Flex, Form, Mentions, Space, Tooltip, Typography } from 'antd'; +import { Button, ConfigProvider, Flex, Form, Mentions, Space, Tooltip, Typography } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useAppSelector } from '../../../../hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/members-reports-table.tsx b/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/members-reports-table.tsx index 5a59feb7..fa349e2b 100644 --- a/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/members-reports-table.tsx +++ b/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/members-reports-table.tsx @@ -1,5 +1,5 @@ import { useEffect, useState } from 'react'; -import { ConfigProvider, Table, TableColumnsType } from 'antd'; +import { ConfigProvider, Table, TableColumnsType } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/memberCell/MemberCell.tsx b/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/memberCell/MemberCell.tsx index 869b2161..8b600a58 100644 --- a/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/memberCell/MemberCell.tsx +++ b/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/memberCell/MemberCell.tsx @@ -1,4 +1,4 @@ -import { Avatar, Flex, Typography } from 'antd'; +import { Avatar, Flex, Typography } from '@/shared/antd-imports'; import CustomAvatar from '@components/CustomAvatar'; type ProjectMangerCellProps = { diff --git a/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/tasksProgressCell/TasksProgressCell.tsx b/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/tasksProgressCell/TasksProgressCell.tsx index 3c9514af..9acfcd0b 100644 --- a/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/tasksProgressCell/TasksProgressCell.tsx +++ b/worklenz-frontend/src/pages/reporting/members-reports/members-reports-table/tablesCells/tasksProgressCell/TasksProgressCell.tsx @@ -1,4 +1,4 @@ -import { Flex, Tooltip, Typography } from 'antd'; +import { Flex, Tooltip, Typography } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/members-reports/members-reports.tsx b/worklenz-frontend/src/pages/reporting/members-reports/members-reports.tsx index eddfd3fd..192f7dae 100644 --- a/worklenz-frontend/src/pages/reporting/members-reports/members-reports.tsx +++ b/worklenz-frontend/src/pages/reporting/members-reports/members-reports.tsx @@ -1,5 +1,5 @@ -import { Button, Card, Checkbox, Dropdown, Flex, Skeleton, Space, Typography } from 'antd'; -import { DownOutlined } from '@ant-design/icons'; +import { Button, Card, Checkbox, Dropdown, Flex, Skeleton, Space, Typography } from '@/shared/antd-imports'; +import { DownOutlined } from '@/shared/antd-imports'; import MembersReportsTable from './members-reports-table/members-reports-table'; import TimeWiseFilter from '@/components/reporting/time-wise-filter'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/pages/reporting/overview-reports/overview-reports.tsx b/worklenz-frontend/src/pages/reporting/overview-reports/overview-reports.tsx index 0bb76d1d..d55e900e 100644 --- a/worklenz-frontend/src/pages/reporting/overview-reports/overview-reports.tsx +++ b/worklenz-frontend/src/pages/reporting/overview-reports/overview-reports.tsx @@ -1,5 +1,5 @@ import { useEffect, useCallback, useMemo } from 'react'; -import { Button, Card, Checkbox, Flex, Typography } from 'antd'; +import { Button, Card, Checkbox, Flex, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useDocumentTitle } from '@/hooks/useDoumentTItle'; import { useMixpanelTracking } from '@/hooks/useMixpanelTracking'; diff --git a/worklenz-frontend/src/pages/reporting/overview-reports/overview-stat-card.tsx b/worklenz-frontend/src/pages/reporting/overview-reports/overview-stat-card.tsx index d1f3491d..e7145ccb 100644 --- a/worklenz-frontend/src/pages/reporting/overview-reports/overview-stat-card.tsx +++ b/worklenz-frontend/src/pages/reporting/overview-reports/overview-stat-card.tsx @@ -1,4 +1,4 @@ -import { Card, Flex, Typography, theme } from 'antd'; +import { Card, Flex, Typography, theme } from '@/shared/antd-imports'; import React, { useMemo } from 'react'; interface InsightCardProps { diff --git a/worklenz-frontend/src/pages/reporting/overview-reports/overview-stats.tsx b/worklenz-frontend/src/pages/reporting/overview-reports/overview-stats.tsx index 3b359d17..1e7ac239 100644 --- a/worklenz-frontend/src/pages/reporting/overview-reports/overview-stats.tsx +++ b/worklenz-frontend/src/pages/reporting/overview-reports/overview-stats.tsx @@ -1,7 +1,7 @@ -import { Flex, Typography, theme } from 'antd'; +import { Flex, Typography, theme } from '@/shared/antd-imports'; import React, { useEffect, useState, useCallback, useMemo } from 'react'; import OverviewStatCard from './overview-stat-card'; -import { BankOutlined, FileOutlined, UsergroupAddOutlined } from '@ant-design/icons'; +import { BankOutlined, FileOutlined, UsergroupAddOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; import { IRPTOverviewStatistics } from '@/types/reporting/reporting.types'; diff --git a/worklenz-frontend/src/pages/reporting/overview-reports/overview-table/overview-reports-table.tsx b/worklenz-frontend/src/pages/reporting/overview-reports/overview-table/overview-reports-table.tsx index a49215e0..2442f2b6 100644 --- a/worklenz-frontend/src/pages/reporting/overview-reports/overview-table/overview-reports-table.tsx +++ b/worklenz-frontend/src/pages/reporting/overview-reports/overview-table/overview-reports-table.tsx @@ -1,5 +1,5 @@ import { memo, useEffect, useState, useCallback, useMemo } from 'react'; -import { ConfigProvider, Table, TableColumnsType } from 'antd'; +import { ConfigProvider, Table, TableColumnsType } from '@/shared/antd-imports'; import { useAppDispatch } from '../../../../hooks/useAppDispatch'; import CustomTableTitle from '../../../../components/CustomTableTitle'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-categories-filter-dropdown.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-categories-filter-dropdown.tsx index 10968817..b01fda4e 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-categories-filter-dropdown.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-categories-filter-dropdown.tsx @@ -4,8 +4,8 @@ import { setSelectedProjectCategories } from '@/features/reporting/projectReport import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { IProjectCategoryViewModel } from '@/types/project/projectCategory.types'; -import { CaretDownFilled } from '@ant-design/icons'; -import { Badge, Button, Card, Checkbox, Dropdown, Empty, Flex, Input, InputRef, List } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Badge, Button, Card, Checkbox, Dropdown, Empty, Flex, Input, InputRef, List } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-health-filter-dropdown.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-health-filter-dropdown.tsx index 274edaaf..9f730e38 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-health-filter-dropdown.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-health-filter-dropdown.tsx @@ -6,8 +6,8 @@ import { import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { IProjectHealth } from '@/types/project/projectHealth.types'; -import { CaretDownFilled } from '@ant-design/icons'; -import { Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import React, { useEffect, useState, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import debounce from 'lodash/debounce'; // Install lodash if not already present diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-managers-filter-dropdown.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-managers-filter-dropdown.tsx index 433c65eb..2a7f13c0 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-managers-filter-dropdown.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-managers-filter-dropdown.tsx @@ -3,8 +3,8 @@ import { setSelectedProjectManagers } from '@/features/reporting/projectReports/ import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { IProjectManager } from '@/types/project/projectManager.types'; -import { CaretDownFilled } from '@ant-design/icons'; -import { Button, Card, Checkbox, Dropdown, Empty, Flex, Input, InputRef, List } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Button, Card, Checkbox, Dropdown, Empty, Flex, Input, InputRef, List } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useRef, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-reports-filters.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-reports-filters.tsx index 05473501..efb3ed92 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-reports-filters.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-reports-filters.tsx @@ -1,4 +1,4 @@ -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import { useMemo, useCallback, memo } from 'react'; import { useTranslation } from 'react-i18next'; import ProjectStatusFilterDropdown from './project-status-filter-dropdown'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-status-filter-dropdown.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-status-filter-dropdown.tsx index f9a59440..326eb338 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-status-filter-dropdown.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-status-filter-dropdown.tsx @@ -6,8 +6,8 @@ import { import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { IProjectStatus } from '@/types/project/projectStatus.types'; -import { CaretDownFilled } from '@ant-design/icons'; -import { Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import { debounce } from 'lodash'; import React, { useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-table-show-fields-dropdown.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-table-show-fields-dropdown.tsx index 7de0fb89..1e1ef542 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-table-show-fields-dropdown.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-filters/project-table-show-fields-dropdown.tsx @@ -1,6 +1,6 @@ import React, { useState } from 'react'; -import { MoreOutlined } from '@ant-design/icons'; -import { Button, Card, Checkbox, Dropdown, List, Space } from 'antd'; +import { MoreOutlined } from '@/shared/antd-imports'; +import { Button, Card, Checkbox, Dropdown, List, Space } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { toggleColumnHidden } from '@/features/reporting/projectReports/project-reports-table-column-slice/project-reports-table-column-slice'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/projects-reports-table.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/projects-reports-table.tsx index 10570e65..ccb2ba1d 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/projects-reports-table.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/projects-reports-table.tsx @@ -1,8 +1,8 @@ import { useEffect, useState, useMemo, useCallback, memo } from 'react'; -import { Button, ConfigProvider, Flex, PaginationProps, Table, TableColumnsType } from 'antd'; +import { Button, ConfigProvider, Flex, PaginationProps, Table, TableColumnsType } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { createPortal } from 'react-dom'; -import { ExpandAltOutlined } from '@ant-design/icons'; +import { ExpandAltOutlined } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/estimated-vs-actual-cell/estimated-vs-actual-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/estimated-vs-actual-cell/estimated-vs-actual-cell.tsx index 07499c88..60b5c5bb 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/estimated-vs-actual-cell/estimated-vs-actual-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/estimated-vs-actual-cell/estimated-vs-actual-cell.tsx @@ -2,7 +2,7 @@ import React from 'react'; import { Bar } from 'react-chartjs-2'; import { Chart, BarElement, CategoryScale, LinearScale } from 'chart.js'; import { ChartOptions } from 'chart.js'; -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; Chart.register(BarElement, CategoryScale, LinearScale); diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/last-activity-cell/last-activity-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/last-activity-cell/last-activity-cell.tsx index bc3c2c20..72a55235 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/last-activity-cell/last-activity-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/last-activity-cell/last-activity-cell.tsx @@ -1,4 +1,4 @@ -import { Tooltip, Typography } from 'antd'; +import { Tooltip, Typography } from '@/shared/antd-imports'; import React from 'react'; const LastActivityCell = ({ activity }: { activity: string }) => { diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-category-cell/project-category-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-category-cell/project-category-cell.tsx index 9b68baa9..2024829c 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-category-cell/project-category-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-category-cell/project-category-cell.tsx @@ -1,6 +1,6 @@ /* eslint-disable react-hooks/exhaustive-deps */ -import { DownOutlined } from '@ant-design/icons'; -import { Badge, Card, Dropdown, Flex, Input, InputRef, Menu, MenuProps, Typography } from 'antd'; +import { DownOutlined } from '@/shared/antd-imports'; +import { Badge, Card, Dropdown, Flex, Input, InputRef, Menu, MenuProps, Typography } from '@/shared/antd-imports'; import React, { useEffect, useMemo, useRef, useState } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { colors } from '@/styles/colors'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-cell/project-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-cell/project-cell.tsx index ff6c6bca..e7ac7508 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-cell/project-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-cell/project-cell.tsx @@ -1,4 +1,4 @@ -import { Badge, Flex, Space, Tooltip, Typography } from 'antd'; +import { Badge, Flex, Space, Tooltip, Typography } from '@/shared/antd-imports'; import React from 'react'; type ProjectCellProps = { diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-client-cell/project-client-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-client-cell/project-client-cell.tsx index a921cdfe..a55a3cde 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-client-cell/project-client-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-client-cell/project-client-cell.tsx @@ -1,4 +1,4 @@ -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; import React from 'react'; const ProjectClientCell = ({ client }: { client: string }) => { diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-dates-cell/project-dates-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-dates-cell/project-dates-cell.tsx index 1f9d283e..79962636 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-dates-cell/project-dates-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-dates-cell/project-dates-cell.tsx @@ -1,4 +1,4 @@ -import { DatePicker, Flex, Typography } from 'antd'; +import { DatePicker, Flex, Typography } from '@/shared/antd-imports'; import { useEffect } from 'react'; import { colors } from '@/styles/colors'; import dayjs, { Dayjs } from 'dayjs'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-days-left-and-overdue-cell/project-days-left-and-overdue-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-days-left-and-overdue-cell/project-days-left-and-overdue-cell.tsx index 87406690..7c617ef0 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-days-left-and-overdue-cell/project-days-left-and-overdue-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-days-left-and-overdue-cell/project-days-left-and-overdue-cell.tsx @@ -1,4 +1,4 @@ -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; import React from 'react'; import { colors } from '../../../../../../styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-health-cell/project-health-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-health-cell/project-health-cell.tsx index c2dfe5a9..194debf1 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-health-cell/project-health-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-health-cell/project-health-cell.tsx @@ -1,6 +1,6 @@ -import { Badge, Card, Dropdown, Flex, Menu, MenuProps, Typography } from 'antd'; +import { Badge, Card, Dropdown, Flex, Menu, MenuProps, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import './project-health-cell.css'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-manager-cell/project-manager-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-manager-cell/project-manager-cell.tsx index 3066159f..b4ddc86e 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-manager-cell/project-manager-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-manager-cell/project-manager-cell.tsx @@ -1,4 +1,4 @@ -import { Avatar, Flex, Typography } from 'antd'; +import { Avatar, Flex, Typography } from '@/shared/antd-imports'; import CustomAvatar from '@components/CustomAvatar'; import { ITeamMemberViewModel } from '@/types/teamMembers/teamMembersGetResponse.types'; import SingleAvatar from '@/components/common/single-avatar/single-avatar'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-status-cell/project-status-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-status-cell/project-status-cell.tsx index aa7e581d..4757746b 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-status-cell/project-status-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-status-cell/project-status-cell.tsx @@ -1,4 +1,4 @@ -import { ConfigProvider, Select, Typography } from 'antd'; +import { ConfigProvider, Select, Typography } from '@/shared/antd-imports'; import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-team-cell/project-team-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-team-cell/project-team-cell.tsx index c6f1bf34..d9fe1024 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-team-cell/project-team-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-team-cell/project-team-cell.tsx @@ -1,4 +1,4 @@ -import { Tag } from 'antd'; +import { Tag } from '@/shared/antd-imports'; import React from 'react'; import { colors } from '../../../../../../styles/colors'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-update-cell/project-update-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-update-cell/project-update-cell.tsx index d61a3b43..81ce5ec1 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-update-cell/project-update-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/project-update-cell/project-update-cell.tsx @@ -1,4 +1,4 @@ -import { Typography } from 'antd'; +import { Typography } from '@/shared/antd-imports'; import React from 'react'; type ProjectUpdateCellProps = { diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/tasks-progress-cell/tasks-progress-cell.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/tasks-progress-cell/tasks-progress-cell.tsx index 751b5979..c6608fe9 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/tasks-progress-cell/tasks-progress-cell.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports-table/table-cells/tasks-progress-cell/tasks-progress-cell.tsx @@ -1,4 +1,4 @@ -import { Flex, Tooltip, Typography } from 'antd'; +import { Flex, Tooltip, Typography } from '@/shared/antd-imports'; import React from 'react'; import { colors } from '../../../../../../styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports.tsx b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports.tsx index c2451d72..acc0541b 100644 --- a/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports.tsx +++ b/worklenz-frontend/src/pages/reporting/projects-reports/projects-reports.tsx @@ -1,7 +1,7 @@ -import { Button, Card, Checkbox, Dropdown, Flex, Space, Typography } from 'antd'; +import { Button, Card, Checkbox, Dropdown, Flex, Space, Typography } from '@/shared/antd-imports'; import { useMemo, useCallback, memo } from 'react'; import CustomPageHeader from '@/pages/reporting/page-header/custom-page-header'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined } from '@/shared/antd-imports'; import ProjectReportsTable from './projects-reports-table/projects-reports-table'; import ProjectsReportsFilters from './projects-reports-filters/project-reports-filters'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/reporting/sidebar/reporting-collapsed-button.tsx b/worklenz-frontend/src/pages/reporting/sidebar/reporting-collapsed-button.tsx index e0c17085..6bc7dcc6 100644 --- a/worklenz-frontend/src/pages/reporting/sidebar/reporting-collapsed-button.tsx +++ b/worklenz-frontend/src/pages/reporting/sidebar/reporting-collapsed-button.tsx @@ -1,7 +1,7 @@ -import { GlobalOutlined, LeftCircleOutlined, RightCircleOutlined } from '@ant-design/icons'; +import { GlobalOutlined, LeftCircleOutlined, RightCircleOutlined } from '@/shared/antd-imports'; import React, { useEffect, useState } from 'react'; import { colors } from '@/styles/colors'; -import { Button, Flex, Tooltip, Typography } from 'antd'; +import { Button, Flex, Tooltip, Typography } from '@/shared/antd-imports'; import { themeWiseColor } from '@utils/themeWiseColor'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/sidebar/reporting-sider.tsx b/worklenz-frontend/src/pages/reporting/sidebar/reporting-sider.tsx index 46cb2beb..33272c12 100644 --- a/worklenz-frontend/src/pages/reporting/sidebar/reporting-sider.tsx +++ b/worklenz-frontend/src/pages/reporting/sidebar/reporting-sider.tsx @@ -1,4 +1,4 @@ -import { ConfigProvider, Flex, Menu, MenuProps } from 'antd'; +import { ConfigProvider, Flex, Menu, MenuProps } from '@/shared/antd-imports'; import { Link, useLocation } from 'react-router-dom'; import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/time-reports/project-time-sheet/project-time-sheet-chart.tsx b/worklenz-frontend/src/pages/reporting/time-reports/project-time-sheet/project-time-sheet-chart.tsx index 6881c702..4eadccc0 100644 --- a/worklenz-frontend/src/pages/reporting/time-reports/project-time-sheet/project-time-sheet-chart.tsx +++ b/worklenz-frontend/src/pages/reporting/time-reports/project-time-sheet/project-time-sheet-chart.tsx @@ -16,7 +16,7 @@ import { useAppSelector } from '../../../../hooks/useAppSelector'; import { useTranslation } from 'react-i18next'; import { reportingTimesheetApiService } from '@/api/reporting/reporting.timesheet.api.service'; import { IRPTTimeProject } from '@/types/reporting/reporting.types'; -import { Empty, Spin } from 'antd'; +import { Empty, Spin } from '@/shared/antd-imports'; import logger from '@/utils/errorLogger'; // Lazy load the Bar chart component diff --git a/worklenz-frontend/src/pages/reporting/time-reports/time-sheet-table/time-sheet-table.tsx b/worklenz-frontend/src/pages/reporting/time-reports/time-sheet-table/time-sheet-table.tsx index 8a7ee8e7..ff74a6f4 100644 --- a/worklenz-frontend/src/pages/reporting/time-reports/time-sheet-table/time-sheet-table.tsx +++ b/worklenz-frontend/src/pages/reporting/time-reports/time-sheet-table/time-sheet-table.tsx @@ -1,6 +1,6 @@ import React, { useEffect, useState } from 'react'; import { MemberLoggedTimeType } from '@/types/timeSheet/project.types'; -import { Empty, Progress, Spin } from 'antd'; +import { Empty, Progress, Spin } from '@/shared/antd-imports'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useTranslation } from 'react-i18next'; import { reportingTimesheetApiService } from '@/api/reporting/reporting.timesheet.api.service'; diff --git a/worklenz-frontend/src/pages/reporting/timeReports/estimated-vs-actual-time-reports.tsx b/worklenz-frontend/src/pages/reporting/timeReports/estimated-vs-actual-time-reports.tsx index 9a9deb4c..8bcf649c 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/estimated-vs-actual-time-reports.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/estimated-vs-actual-time-reports.tsx @@ -1,4 +1,4 @@ -import { Card, Flex, Segmented } from 'antd'; +import { Card, Flex, Segmented } from '@/shared/antd-imports'; import TimeReportPageHeader from '@/pages/reporting/timeReports/page-header/time-report-page-header'; import EstimatedVsActualTimeSheet, { EstimatedVsActualTimeSheetRef, diff --git a/worklenz-frontend/src/pages/reporting/timeReports/members-time-reports.tsx b/worklenz-frontend/src/pages/reporting/timeReports/members-time-reports.tsx index 2c0d87de..351f46c2 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/members-time-reports.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/members-time-reports.tsx @@ -1,4 +1,4 @@ -import { Card, Flex } from 'antd'; +import { Card, Flex } from '@/shared/antd-imports'; import TimeReportPageHeader from '@/pages/reporting/timeReports/page-header/time-report-page-header'; import MembersTimeSheet, { MembersTimeSheetRef, diff --git a/worklenz-frontend/src/pages/reporting/timeReports/overview-time-reports.tsx b/worklenz-frontend/src/pages/reporting/timeReports/overview-time-reports.tsx index bc899835..7219ce5a 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/overview-time-reports.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/overview-time-reports.tsx @@ -1,6 +1,6 @@ import React from 'react'; import TimeReportPageHeader from '@/pages/reporting/timeReports/page-header/time-report-page-header'; -import { Flex } from 'antd'; +import { Flex } from '@/shared/antd-imports'; import TimeSheetTable from '@/pages/reporting/time-reports/time-sheet-table/time-sheet-table'; import TimeReportingRightHeader from './timeReportingRightHeader/TimeReportingRightHeader'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/timeReports/page-header/billable.tsx b/worklenz-frontend/src/pages/reporting/timeReports/page-header/billable.tsx index ffb15f59..8fd29c77 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/page-header/billable.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/page-header/billable.tsx @@ -1,8 +1,8 @@ import { setSelectOrDeselectBillable } from '@/features/reporting/time-reports/time-reports-overview.slice'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; -import { CaretDownFilled } from '@ant-design/icons'; -import { Button, Checkbox, Dropdown, MenuProps } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Button, Checkbox, Dropdown, MenuProps } from '@/shared/antd-imports'; import React from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/timeReports/page-header/categories.tsx b/worklenz-frontend/src/pages/reporting/timeReports/page-header/categories.tsx index c35aa873..064d65d5 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/page-header/categories.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/page-header/categories.tsx @@ -6,8 +6,8 @@ import { } from '@/features/reporting/time-reports/time-reports-overview.slice'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; -import { CaretDownFilled } from '@ant-design/icons'; -import { Button, Card, Checkbox, Divider, Dropdown, Input, theme } from 'antd'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Button, Card, Checkbox, Divider, Dropdown, Input, theme } from '@/shared/antd-imports'; import { CheckboxChangeEvent } from 'antd/es/checkbox'; import React, { useState } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/timeReports/page-header/projects.tsx b/worklenz-frontend/src/pages/reporting/timeReports/page-header/projects.tsx index 48d83ce6..823461b3 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/page-header/projects.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/page-header/projects.tsx @@ -11,7 +11,7 @@ import { DownOutlined, RightOutlined, FilterOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { Button, Checkbox, @@ -26,7 +26,7 @@ import { Space, Tooltip, Empty, -} from 'antd'; +} from '@/shared/antd-imports'; import { CheckboxChangeEvent } from 'antd/es/checkbox'; import React, { useState, useMemo, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/reporting/timeReports/page-header/team.tsx b/worklenz-frontend/src/pages/reporting/timeReports/page-header/team.tsx index 76aea69c..0022ab3b 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/page-header/team.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/page-header/team.tsx @@ -1,24 +1,19 @@ -import { CaretDownFilled } from '@ant-design/icons'; -import { Button, Checkbox, Divider, Dropdown, Input, theme } from 'antd'; -import React, { useEffect, useState } from 'react'; +import { CaretDownFilled } from '@/shared/antd-imports'; +import { Button, Checkbox, Divider, Dropdown, Input, theme } from '@/shared/antd-imports'; +import React, { useState } from 'react'; import type { CheckboxChangeEvent } from 'antd/es/checkbox'; import { useTranslation } from 'react-i18next'; -import { ISelectableTeam } from '@/types/reporting/reporting-filters.types'; -import { reportingApiService } from '@/api/reporting/reporting.api.service'; -import logger from '@/utils/errorLogger'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { fetchReportingCategories, fetchReportingProjects, - fetchReportingTeams, setSelectOrDeselectAllTeams, setSelectOrDeselectTeam, } from '@/features/reporting/time-reports/time-reports-overview.slice'; const Team: React.FC = () => { const dispatch = useAppDispatch(); - const [checkedList, setCheckedList] = useState([]); const [searchText, setSearchText] = useState(''); const [selectAll, setSelectAll] = useState(true); const { t } = useTranslation('time-report'); diff --git a/worklenz-frontend/src/pages/reporting/timeReports/projects-time-reports.tsx b/worklenz-frontend/src/pages/reporting/timeReports/projects-time-reports.tsx index d5dd13f5..45b829b3 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/projects-time-reports.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/projects-time-reports.tsx @@ -1,4 +1,4 @@ -import { Card, Flex } from 'antd'; +import { Card, Flex } from '@/shared/antd-imports'; import TimeReportPageHeader from '@/pages/reporting/timeReports/page-header/time-report-page-header'; import ProjectTimeSheetChart, { ProjectTimeSheetChartRef, diff --git a/worklenz-frontend/src/pages/reporting/timeReports/timeReportingRightHeader/TimeReportingRightHeader.tsx b/worklenz-frontend/src/pages/reporting/timeReports/timeReportingRightHeader/TimeReportingRightHeader.tsx index d2594db0..415527a4 100644 --- a/worklenz-frontend/src/pages/reporting/timeReports/timeReportingRightHeader/TimeReportingRightHeader.tsx +++ b/worklenz-frontend/src/pages/reporting/timeReports/timeReportingRightHeader/TimeReportingRightHeader.tsx @@ -1,6 +1,6 @@ import React from 'react'; -import { Button, Checkbox, Dropdown, Space, Typography } from 'antd'; -import { DownOutlined } from '@ant-design/icons'; +import { Button, Checkbox, Dropdown, Space, Typography } from '@/shared/antd-imports'; +import { DownOutlined } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import CustomPageHeader from '../../page-header/custom-page-header'; import TimeWiseFilter from '../../../../components/reporting/time-wise-filter'; diff --git a/worklenz-frontend/src/pages/schedule-old/schedule.tsx b/worklenz-frontend/src/pages/schedule-old/schedule.tsx index 45c5885f..f81c7f07 100644 --- a/worklenz-frontend/src/pages/schedule-old/schedule.tsx +++ b/worklenz-frontend/src/pages/schedule-old/schedule.tsx @@ -1,7 +1,7 @@ -import { Button, DatePicker, DatePickerProps, Select, Space } from 'antd'; +import { Button, DatePicker, DatePickerProps, Select, Space } from '@/shared/antd-imports'; import React, { Suspense, useState } from 'react'; import Team from '../../components/schedule-old/team/Team'; -import { SettingOutlined } from '@ant-design/icons'; +import { SettingOutlined } from '@/shared/antd-imports'; import { useDispatch } from 'react-redux'; import { toggleSettingsDrawer } from '@/features/schedule-old/scheduleSlice'; import ScheduleSettingsDrawer from '@/features/schedule-old/ScheduleSettingsDrawer'; diff --git a/worklenz-frontend/src/pages/schedule/grant-chart.tsx b/worklenz-frontend/src/pages/schedule/grant-chart.tsx index 4f93090e..ccf89d53 100644 --- a/worklenz-frontend/src/pages/schedule/grant-chart.tsx +++ b/worklenz-frontend/src/pages/schedule/grant-chart.tsx @@ -10,7 +10,7 @@ // Row, // Tooltip, // Typography, -// } from 'antd'; +// } from '@/shared/antd-imports'; // import { avatarNamesMap } from '../../../shared/constants'; // import { CaretDownOutlined, CaretRightFilled } from '@ant-design/icons'; // import { useAppSelector } from '@/hooks/useAppSelector'; @@ -563,7 +563,7 @@ export default Grant; // useState, // } from 'react'; // import { Member } from '../../../../types/schedule/schedule.types'; -// import { Col, Flex, Row, Typography } from 'antd'; +// import { Col, Flex, Row, Typography } from '@/shared/antd-imports'; // import { useAppSelector } from '../../../../hooks/useAppSelector'; // import { useDispatch } from 'react-redux'; // import { toggleScheduleDrawer } from '../../../../features/schedule/scheduleSlice'; diff --git a/worklenz-frontend/src/pages/schedule/schedule.tsx b/worklenz-frontend/src/pages/schedule/schedule.tsx index d1d013fe..ba51d28c 100644 --- a/worklenz-frontend/src/pages/schedule/schedule.tsx +++ b/worklenz-frontend/src/pages/schedule/schedule.tsx @@ -1,5 +1,5 @@ -import { Button, DatePicker, DatePickerProps, Flex, Select, Space } from 'antd'; -import React, { useRef, useState } from 'react'; +import { Button, DatePicker, DatePickerProps, Flex, Select, Space } from '@/shared/antd-imports'; +import React, { useRef } from 'react'; import { SettingOutlined } from '@ant-design/icons'; import { useDispatch } from 'react-redux'; import { setDate, setType, toggleSettingsDrawer } from '@/features/schedule/scheduleSlice'; diff --git a/worklenz-frontend/src/pages/settings/appearance/appearance-settings.tsx b/worklenz-frontend/src/pages/settings/appearance/appearance-settings.tsx index 89d6970b..20e25e5a 100644 --- a/worklenz-frontend/src/pages/settings/appearance/appearance-settings.tsx +++ b/worklenz-frontend/src/pages/settings/appearance/appearance-settings.tsx @@ -1,10 +1,10 @@ -import { Card, Divider, Flex, Switch, Typography } from 'antd'; +import { Card, Flex, Switch, Typography } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useAppSelector } from '@/hooks/useAppSelector'; import { toggleTheme } from '@/features/theme/themeSlice'; import { useDocumentTitle } from '@/hooks/useDoumentTItle'; -import { MoonOutlined, SunOutlined } from '@ant-design/icons'; +import { MoonOutlined, SunOutlined } from '@/shared/antd-imports'; const AppearanceSettings = () => { const { t } = useTranslation('settings/appearance'); diff --git a/worklenz-frontend/src/pages/settings/categories/categories-settings.tsx b/worklenz-frontend/src/pages/settings/categories/categories-settings.tsx index f583ce0b..2f7b5362 100644 --- a/worklenz-frontend/src/pages/settings/categories/categories-settings.tsx +++ b/worklenz-frontend/src/pages/settings/categories/categories-settings.tsx @@ -1,4 +1,4 @@ -import { DeleteOutlined, ExclamationCircleFilled, SearchOutlined } from '@ant-design/icons'; +import { DeleteOutlined, ExclamationCircleFilled, SearchOutlined } from '@/shared/antd-imports'; import { Button, Card, @@ -9,11 +9,10 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { colors } from '@/styles/colors'; -import { CategoryType } from '@/types/categories.types'; import CustomColorsCategoryTag from '@features/settings/categories/CustomColorsCategoryTag'; import { deleteCategory } from '@features/settings/categories/categoriesSlice'; import { categoriesApiService } from '@/api/settings/categories/categories.api.service'; diff --git a/worklenz-frontend/src/pages/settings/change-password/change-password.tsx b/worklenz-frontend/src/pages/settings/change-password/change-password.tsx index e7187fff..ddc245dc 100644 --- a/worklenz-frontend/src/pages/settings/change-password/change-password.tsx +++ b/worklenz-frontend/src/pages/settings/change-password/change-password.tsx @@ -1,5 +1,5 @@ -import { EyeInvisibleOutlined, EyeOutlined } from '@ant-design/icons'; -import { Button, Card, Form, Input, notification, Row, Typography } from 'antd'; +import { EyeInvisibleOutlined, EyeOutlined } from '@/shared/antd-imports'; +import { Button, Card, Form, Input, notification, Row, Typography } from '@/shared/antd-imports'; import React, { useState } from 'react'; import { useDocumentTitle } from '@/hooks/useDoumentTItle'; import { profileSettingsApiService } from '@/api/settings/profile/profile-settings.api.service'; diff --git a/worklenz-frontend/src/pages/settings/clients/client-drawer.tsx b/worklenz-frontend/src/pages/settings/clients/client-drawer.tsx index a0003f7e..d27f16b2 100644 --- a/worklenz-frontend/src/pages/settings/clients/client-drawer.tsx +++ b/worklenz-frontend/src/pages/settings/clients/client-drawer.tsx @@ -1,4 +1,4 @@ -import { Button, Drawer, Form, Input, message, Typography } from 'antd'; +import { Button, Drawer, Form, Input, message, Typography } from '@/shared/antd-imports'; import { useEffect } from 'react'; import { useAppSelector } from '@/hooks/useAppSelector'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/pages/settings/clients/clients-settings.tsx b/worklenz-frontend/src/pages/settings/clients/clients-settings.tsx index b4466838..161a3df7 100644 --- a/worklenz-frontend/src/pages/settings/clients/clients-settings.tsx +++ b/worklenz-frontend/src/pages/settings/clients/clients-settings.tsx @@ -3,7 +3,7 @@ import { EditOutlined, ExclamationCircleFilled, SearchOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { Button, Card, @@ -14,7 +14,7 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useMemo, useState } from 'react'; import { colors } from '@/styles/colors'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/pages/settings/job-titles/job-titles-drawer.tsx b/worklenz-frontend/src/pages/settings/job-titles/job-titles-drawer.tsx index de1d7227..8f3b5f41 100644 --- a/worklenz-frontend/src/pages/settings/job-titles/job-titles-drawer.tsx +++ b/worklenz-frontend/src/pages/settings/job-titles/job-titles-drawer.tsx @@ -1,4 +1,4 @@ -import { Button, Drawer, Form, Input, message, Typography } from 'antd'; +import { Button, Drawer, Form, Input, message, Typography } from '@/shared/antd-imports'; import { useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import { jobTitlesApiService } from '@/api/settings/job-titles/job-titles.api.service'; diff --git a/worklenz-frontend/src/pages/settings/job-titles/job-titles-settings.tsx b/worklenz-frontend/src/pages/settings/job-titles/job-titles-settings.tsx index ae47ca01..896e05bf 100644 --- a/worklenz-frontend/src/pages/settings/job-titles/job-titles-settings.tsx +++ b/worklenz-frontend/src/pages/settings/job-titles/job-titles-settings.tsx @@ -3,7 +3,7 @@ import { EditOutlined, ExclamationCircleFilled, SearchOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import { useDocumentTitle } from '@/hooks/useDoumentTItle'; import { jobTitlesApiService } from '@/api/settings/job-titles/job-titles.api.service'; @@ -22,7 +22,7 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import JobTitleDrawer from './job-titles-drawer'; diff --git a/worklenz-frontend/src/pages/settings/labels/labels-settings.tsx b/worklenz-frontend/src/pages/settings/labels/labels-settings.tsx index 4deb4540..dffc7eaa 100644 --- a/worklenz-frontend/src/pages/settings/labels/labels-settings.tsx +++ b/worklenz-frontend/src/pages/settings/labels/labels-settings.tsx @@ -8,12 +8,12 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useMemo, useState } from 'react'; import PinRouteToNavbarButton from '../../../components/PinRouteToNavbarButton'; import { useTranslation } from 'react-i18next'; -import { DeleteOutlined, ExclamationCircleFilled, SearchOutlined } from '@ant-design/icons'; +import { DeleteOutlined, ExclamationCircleFilled, SearchOutlined } from '@/shared/antd-imports'; import { ITaskLabel } from '@/types/label.type'; import { labelsApiService } from '@/api/taskAttributes/labels/labels.api.service'; import CustomColorLabel from '@components/task-list-common/labelsSelector/custom-color-label'; diff --git a/worklenz-frontend/src/pages/settings/language-and-region/language-and-region-settings.tsx b/worklenz-frontend/src/pages/settings/language-and-region/language-and-region-settings.tsx index 4dc0191c..9e860b46 100644 --- a/worklenz-frontend/src/pages/settings/language-and-region/language-and-region-settings.tsx +++ b/worklenz-frontend/src/pages/settings/language-and-region/language-and-region-settings.tsx @@ -1,4 +1,4 @@ -import { Button, Card, Flex, Form, Select, Skeleton, Typography } from 'antd'; +import { Button, Card, Flex, Form, Select, Skeleton, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useAppDispatch } from '@/hooks/useAppDispatch'; diff --git a/worklenz-frontend/src/pages/settings/profile/profile-settings.tsx b/worklenz-frontend/src/pages/settings/profile/profile-settings.tsx index cd8950e1..e238b2dd 100644 --- a/worklenz-frontend/src/pages/settings/profile/profile-settings.tsx +++ b/worklenz-frontend/src/pages/settings/profile/profile-settings.tsx @@ -1,4 +1,4 @@ -import { LoadingOutlined, PlusOutlined } from '@ant-design/icons'; +import { LoadingOutlined, PlusOutlined } from '@/shared/antd-imports'; import { Button, Card, @@ -9,7 +9,7 @@ import { Typography, Spin, Skeleton, -} from 'antd'; +} from '@/shared/antd-imports'; import { useEffect, useState, useRef } from 'react'; import { useTranslation } from 'react-i18next'; import { changeUserName, setUser } from '@features/user/userSlice'; diff --git a/worklenz-frontend/src/pages/settings/project-templates/project-templates-settings.tsx b/worklenz-frontend/src/pages/settings/project-templates/project-templates-settings.tsx index 2d8b60f1..167b748c 100644 --- a/worklenz-frontend/src/pages/settings/project-templates/project-templates-settings.tsx +++ b/worklenz-frontend/src/pages/settings/project-templates/project-templates-settings.tsx @@ -1,8 +1,8 @@ -import { Button, Card, Popconfirm, Table, TableProps, Tooltip, Typography } from 'antd'; -import React, { useEffect, useState } from 'react'; +import { Button, Card, Popconfirm, Table, TableProps, Tooltip, Typography } from '@/shared/antd-imports'; +import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useAppSelector } from '@/hooks/useAppSelector'; -import { DeleteOutlined, EditOutlined } from '@ant-design/icons'; +import { DeleteOutlined } from '@/shared/antd-imports'; import { useNavigate } from 'react-router-dom'; import { useDocumentTitle } from '@/hooks/useDoumentTItle'; import { projectTemplatesApiService } from '@/api/project-templates/project-templates.api.service'; diff --git a/worklenz-frontend/src/pages/settings/project-templates/projectTemplateEditView/ProjectTemplateEditView.tsx b/worklenz-frontend/src/pages/settings/project-templates/projectTemplateEditView/ProjectTemplateEditView.tsx index de56a6e8..4c8eee61 100644 --- a/worklenz-frontend/src/pages/settings/project-templates/projectTemplateEditView/ProjectTemplateEditView.tsx +++ b/worklenz-frontend/src/pages/settings/project-templates/projectTemplateEditView/ProjectTemplateEditView.tsx @@ -1,10 +1,10 @@ -import { Button, Flex, Select, Typography } from 'antd'; +import { Button, Flex, Select, Typography } from '@/shared/antd-imports'; import { useState } from 'react'; import StatusGroupTables from '../../../projects/project-view-1/taskList/statusTables/StatusGroupTables'; import { TaskType } from '../../../../types/task.types'; import { useAppSelector } from '../../../../hooks/useAppSelector'; import { PageHeader } from '@ant-design/pro-components'; -import { ArrowLeftOutlined, CaretDownFilled } from '@ant-design/icons'; +import { ArrowLeftOutlined, CaretDownFilled } from '@/shared/antd-imports'; import { useNavigate, useParams } from 'react-router-dom'; import SearchDropdown from '../../../projects/project-view-1/taskList/taskListFilters/SearchDropdown'; import { useSelectedProject } from '../../../../hooks/useSelectedProject'; diff --git a/worklenz-frontend/src/pages/settings/sidebar/settings-sidebar.tsx b/worklenz-frontend/src/pages/settings/sidebar/settings-sidebar.tsx index 61f67a94..f39bc8d5 100644 --- a/worklenz-frontend/src/pages/settings/sidebar/settings-sidebar.tsx +++ b/worklenz-frontend/src/pages/settings/sidebar/settings-sidebar.tsx @@ -1,5 +1,5 @@ -import { RightOutlined } from '@ant-design/icons'; -import { ConfigProvider, Flex, Menu, MenuProps } from 'antd'; +import { RightOutlined } from '@/shared/antd-imports'; +import { ConfigProvider, Flex, Menu, MenuProps } from '@/shared/antd-imports'; import { Link, useLocation } from 'react-router-dom'; import { colors } from '@/styles/colors'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/settings/task-templates/task-templates-settings.tsx b/worklenz-frontend/src/pages/settings/task-templates/task-templates-settings.tsx index 82ef4736..5bf3f18e 100644 --- a/worklenz-frontend/src/pages/settings/task-templates/task-templates-settings.tsx +++ b/worklenz-frontend/src/pages/settings/task-templates/task-templates-settings.tsx @@ -1,8 +1,8 @@ -import { Button, Card, Popconfirm, Table, TableProps, Tooltip, Typography } from 'antd'; +import { Button, Card, Popconfirm, Table, TableProps, Tooltip, Typography } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import './task-templates-settings.css'; -import { DeleteOutlined, EditOutlined } from '@ant-design/icons'; +import { DeleteOutlined, EditOutlined } from '@/shared/antd-imports'; import { useAppDispatch } from '@/hooks/useAppDispatch'; import TaskTemplateDrawer from '@/components/task-templates/task-template-drawer'; import { useAppSelector } from '@/hooks/useAppSelector'; diff --git a/worklenz-frontend/src/pages/settings/team-members/team-members-settings.tsx b/worklenz-frontend/src/pages/settings/team-members/team-members-settings.tsx index f7656c6f..4087c1c2 100644 --- a/worklenz-frontend/src/pages/settings/team-members/team-members-settings.tsx +++ b/worklenz-frontend/src/pages/settings/team-members/team-members-settings.tsx @@ -5,7 +5,7 @@ import { SearchOutlined, SyncOutlined, UserSwitchOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import { Avatar, Badge, @@ -18,7 +18,7 @@ import { TableProps, Tooltip, Typography, -} from 'antd'; +} from '@/shared/antd-imports'; import { createPortal } from 'react-dom'; import { useEffect, useState, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/settings/teams/teams-settings.tsx b/worklenz-frontend/src/pages/settings/teams/teams-settings.tsx index 5c21fb0c..e6932d09 100644 --- a/worklenz-frontend/src/pages/settings/teams/teams-settings.tsx +++ b/worklenz-frontend/src/pages/settings/teams/teams-settings.tsx @@ -1,8 +1,8 @@ -import { Button, Card, Flex, Table, TableProps, Tooltip, Typography } from 'antd'; +import { Button, Card, Flex, Table, TableProps, Tooltip, Typography } from '@/shared/antd-imports'; import PinRouteToNavbarButton from '@components/PinRouteToNavbarButton'; import { useAppSelector } from '@/hooks/useAppSelector'; import { durationDateFormat } from '@utils/durationDateFormat'; -import { EditOutlined } from '@ant-design/icons'; +import { EditOutlined } from '@/shared/antd-imports'; import { useEffect, useState } from 'react'; import EditTeamModal from '@/components/settings/edit-team-name-modal'; import { useTranslation } from 'react-i18next'; diff --git a/worklenz-frontend/src/pages/unauthorized/unauthorized.tsx b/worklenz-frontend/src/pages/unauthorized/unauthorized.tsx index 7be795bf..ee31c5bf 100644 --- a/worklenz-frontend/src/pages/unauthorized/unauthorized.tsx +++ b/worklenz-frontend/src/pages/unauthorized/unauthorized.tsx @@ -1,5 +1,5 @@ import { useDocumentTitle } from '@/hooks/useDoumentTItle'; -import { Button, Result } from 'antd'; +import { Button, Result } from '@/shared/antd-imports'; import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; diff --git a/worklenz-frontend/src/services/alerts/alertService.ts b/worklenz-frontend/src/services/alerts/alertService.ts index df4d2865..4de3f663 100644 --- a/worklenz-frontend/src/services/alerts/alertService.ts +++ b/worklenz-frontend/src/services/alerts/alertService.ts @@ -1,6 +1,6 @@ import { AlertType } from '@/types/alert.types'; import DOMPurify from 'dompurify'; -import { notification } from 'antd'; +import { notification } from '@/shared/antd-imports'; class AlertService { private static instance: AlertService; private activeAlerts: Set = new Set(); diff --git a/worklenz-frontend/src/services/alerts/alertSlice.ts b/worklenz-frontend/src/services/alerts/alertSlice.ts index f7dd324d..94332ff0 100644 --- a/worklenz-frontend/src/services/alerts/alertSlice.ts +++ b/worklenz-frontend/src/services/alerts/alertSlice.ts @@ -1,6 +1,6 @@ import { AlertConfig, AlertState, AlertType } from '@/types/alert.types'; import { createSlice, PayloadAction } from '@reduxjs/toolkit'; -import { notification } from 'antd'; +import { notification } from '@/shared/antd-imports'; import DOMPurify from 'dompurify'; const initialState: AlertState = { diff --git a/worklenz-frontend/src/shared/antd-imports.ts b/worklenz-frontend/src/shared/antd-imports.ts index bd0b31bd..9f532aa2 100644 --- a/worklenz-frontend/src/shared/antd-imports.ts +++ b/worklenz-frontend/src/shared/antd-imports.ts @@ -12,6 +12,7 @@ import React from 'react'; // Import Ant Design components using the standard method for better context sharing import { + AutoComplete, Button, Input, Select, @@ -50,7 +51,21 @@ import { message, notification, theme, -} from 'antd'; + Statistic, + Segmented, + Switch, + Calendar, + FloatButton, + Pagination, + ColorPicker, + Popover, + Image, + Collapse, + Breadcrumb, + Timeline, + Mentions, + Radio, +} from 'antd/es'; // Icons - Import commonly used ones export { @@ -101,12 +116,78 @@ export { DoubleRightOutlined, UserAddOutlined, ArrowsAltOutlined, - EllipsisOutlined + EllipsisOutlined, + ExclamationCircleOutlined, + FormatPainterOutlined, + CloseCircleOutlined, + MailOutlined, + InfoCircleTwoTone, + ContainerOutlined, + CheckCircleFilled, + PhoneOutlined, + LoadingOutlined, + PauseOutlined, + MinusOutlined, + ForkOutlined, + CaretRightFilled, + CaretDownFilled, + DoubleLeftOutlined, + StopOutlined, + MenuOutlined, + BankOutlined, + ProjectOutlined, + StarFilled, + SortAscendingOutlined, + SortDescendingOutlined, + CaretDownOutlined, + CaretLeftOutlined, + CaretRightOutlined, + CaretUpOutlined, + QuestionCircleOutlined, + CloseCircleFilled, + PlusCircleOutlined, + WifiOutlined, + DisconnectOutlined, + ReloadOutlined, + ArrowRightOutlined, + ExclamationCircleFilled, + DownloadOutlined, + LikeOutlined, + LikeTwoTone, + HomeOutlined, + PlayCircleFilled, + CommentOutlined, + TagsOutlined, + BulbOutlined, + ReadOutlined, + FileExcelOutlined, + FileZipOutlined, + GlobalOutlined, + IdcardOutlined, + LockOutlined, + NotificationOutlined, + ProfileOutlined, + UserSwitchOutlined, + LeftCircleOutlined, + RightCircleOutlined, + ClearOutlined, + MoonOutlined, + SunOutlined, + EyeInvisibleOutlined, + CreditCardOutlined, + CheckCircleTwoTone, + CloseCircleTwoTone, + EnterOutlined, + InfoCircleOutlined, + WarningTwoTone, + ShareAltOutlined, + CloudDownloadOutlined } from '@ant-design/icons'; // Re-export all components with React export { React, + AutoComplete, Button, Input, Select, @@ -145,6 +226,20 @@ export { message, notification, theme, + Statistic, + Segmented, + Switch, + Calendar, + FloatButton, + Pagination, + ColorPicker, + Popover, + Image, + Collapse, + Breadcrumb, + Timeline, + Mentions, + Radio, }; // TypeScript Types - Import commonly used ones @@ -165,7 +260,10 @@ export type { TabsProps, TableProps, TableColumnsType, -} from 'antd'; + PaginationProps, + CollapseProps, + TablePaginationConfig, +} from 'antd/es'; // Dayjs export { default as dayjs } from 'dayjs'; diff --git a/worklenz-frontend/src/shared/constants.ts b/worklenz-frontend/src/shared/constants.ts index 7c46718e..a4a5bd6e 100644 --- a/worklenz-frontend/src/shared/constants.ts +++ b/worklenz-frontend/src/shared/constants.ts @@ -4,7 +4,7 @@ import { ClockCircleOutlined, CloseCircleOutlined, StopOutlined, -} from '@ant-design/icons'; +} from '@/shared/antd-imports'; import dayjs from 'dayjs'; export const avatarNamesMap: { [x: string]: string } = { diff --git a/worklenz-frontend/src/socket/socketContext.tsx b/worklenz-frontend/src/socket/socketContext.tsx index c20d676c..c0bf99af 100644 --- a/worklenz-frontend/src/socket/socketContext.tsx +++ b/worklenz-frontend/src/socket/socketContext.tsx @@ -4,7 +4,7 @@ import { useTranslation } from 'react-i18next'; import { SOCKET_CONFIG } from './config'; import logger from '@/utils/errorLogger'; -import { Modal, message } from 'antd'; +import { Modal, message } from '@/shared/antd-imports'; import { SocketEvents } from '@/shared/socket-events'; import { getUserSession } from '@/utils/session-helper'; diff --git a/worklenz-frontend/src/styles/customOverrides.css b/worklenz-frontend/src/styles/customOverrides.css index b4332cfb..b2f9586e 100644 --- a/worklenz-frontend/src/styles/customOverrides.css +++ b/worklenz-frontend/src/styles/customOverrides.css @@ -180,3 +180,42 @@ body.dark .overview-stat-card .ant-card-body, .ql-snow .ql-stroke { stroke: #6c757d !important; } + +/* HubSpot Widget Dark Mode Fixes */ +html.dark #hubspot-messages-iframe-container { + background-color: transparent !important; +} + +html.dark #hubspot-messages-iframe-container iframe { + background-color: transparent !important; +} + +/* Target the HubSpot widget container */ +html.dark .hs-messages-widget-open { + background-color: transparent !important; +} + +/* Remove white background from HubSpot elements */ +html.dark #hs-messages-iframe-container, +html.dark .hs-messages-iframe-container { + background: transparent !important; + background-color: transparent !important; +} + +/* Ensure the iframe wrapper has no background */ +html.dark iframe#hs-messages-iframe { + background: transparent !important; +} + +/* Target the widget launcher button area */ +html.dark .hs-messages-widget, +html.dark .hs-messages-widget-container { + background: transparent !important; + background-color: transparent !important; +} + +/* Remove any box shadow that might appear white */ +html.dark #hubspot-messages-iframe-container, +html.dark .hs-messages-widget { + box-shadow: none !important; +} diff --git a/worklenz-frontend/src/types/project/project.types.ts b/worklenz-frontend/src/types/project/project.types.ts index 0f39b125..4c8c3def 100644 --- a/worklenz-frontend/src/types/project/project.types.ts +++ b/worklenz-frontend/src/types/project/project.types.ts @@ -3,7 +3,7 @@ import { IProjectStatus } from '@/types/project/projectStatus.types'; import { IProjectViewModel } from './projectViewModel.types'; import { NavigateFunction } from 'react-router-dom'; import { AppDispatch } from '@/app/store'; -import { TablePaginationConfig } from 'antd'; +import { TablePaginationConfig } from '@/shared/antd-imports'; import { FilterValue, SorterResult } from 'antd/es/table/interface'; export interface IProject {