refactor(FE): Remove unused imports and redundant code

This commit is contained in:
rstubryan
2026-02-20 14:17:26 +07:00
parent de0f9ae985
commit 1f2f3acebb
90 changed files with 222 additions and 474 deletions
@@ -48,11 +48,7 @@ import RequirePermission from '@/components/helper/RequirePermission';
const MemoizedDeliveryOrderProductTable = memo(DeliveryOrderProductTable);
const MemoizedDeliveryOrderProductForm = memo(DeliveryOrderProductForm);
const DeliveryOrderFormModal = ({
initialValues,
}: {
initialValues?: Marketing;
}) => {
const DeliveryOrderFormModal = ({}: { initialValues?: Marketing }) => {
const router = useRouter();
const searchParams = useSearchParams();
@@ -76,19 +72,14 @@ const DeliveryOrderFormModal = ({
);
};
const { data: marketing, isLoading: isLoadingMarketing } = useSWR(
const { data: marketing } = useSWR(
isModalActionForForm && marketingId
? `detail-marketing-${marketingId}`
: undefined,
() => MarketingApi.getSingle(Number(marketingId))
);
const {
approvals,
rawDataApprovals,
isLoading: isLoadingApproval,
refresh: refreshApproval,
} = useApprovalSteps({
const { rawDataApprovals, refresh: refreshApproval } = useApprovalSteps({
latestApproval: isResponseSuccess(marketing)
? marketing?.data.latest_approval
: undefined,
@@ -284,29 +275,10 @@ const DeliveryOrderFormModal = ({
setIsLoading(false);
};
const memoSalesOrder = formik.values.sales_order;
// ================== HANDLER ==================
const nextButtonHandler = () => {
setStep(step + 1);
};
const prevButtonHandler = () => {
setStep(step - 1);
};
const handleChangeCustomer = useCallback(
(val: OptionType | OptionType[] | null) => {
formik.setFieldValue('customer_id', (val as OptionType)?.value);
formik.setFieldValue('customer', val as OptionType);
},
[]
);
const handleChangeSalesPerson = useCallback(
(val: OptionType | OptionType[] | null) => {
formik.setFieldValue('sales_person_id', (val as OptionType)?.value);
formik.setFieldValue('sales_person', val as OptionType);
},
[]
);
const rejectMarketingHandler = async (notes: string) => {
if (!marketingId) {
toast.error(`Tidak ada data yang valid untuk di reject.`);
@@ -507,18 +479,18 @@ const DeliveryOrderFormModal = ({
}, []);
// ================== MEMOIZED ==================
const isNextButtonDisabled = useMemo(() => {
if (step === 1) {
return Boolean(
!formik.values.customer_id ||
!formik.values.sales_person_id ||
!formik.values.so_date ||
!formik.values.notes
);
}
// const isNextButtonDisabled = useMemo(() => {
// if (step === 1) {
// return Boolean(
// !formik.values.customer_id ||
// !formik.values.sales_person_id ||
// !formik.values.so_date ||
// !formik.values.notes
// );
// }
return true;
}, [step, formik.values]);
// return true;
// }, [step, formik.values]);
const deliveryRejected = useMemo(() => {
return (
isResponseSuccess(marketing) &&
@@ -877,7 +849,7 @@ const DeliveryOrderFormModal = ({
text: 'Oke',
color: 'primary',
className: 'rounded-lg',
onClick: (e) => {
onClick: () => {
closeModalHandler();
},
}}
@@ -25,7 +25,6 @@ import { useMemo, useState } from 'react';
import toast from 'react-hot-toast';
import useSWR from 'swr';
import RequirePermission from '@/components/helper/RequirePermission';
import { useAuth } from '@/services/hooks/useAuth';
import ButtonFilter from '@/components/helper/ButtonFilter';
import Dropdown from '@/components/Dropdown';
import PopoverButton from '@/components/popover/PopoverButton';
@@ -136,7 +135,7 @@ const RowsOptionsMenu = ({
onClick={deleteClickHandler}
variant='ghost'
color='none'
className='relative p-3 overflow-hidden justify-start text-sm font-semibold w-full text-error before:content-[""] before:absolute before:h-0.25 before:p-3 before:top-0 before:left-0 before:right-0 before:border-t before:border-base-content/5'
className='relative p-3 overflow-hidden justify-start text-sm font-semibold w-full text-error before:content-[""] before:absolute before:h-px before:p-3 before:top-0 before:left-0 before:right-0 before:border-t before:border-base-content/5'
>
<Icon icon='heroicons:trash' width={20} height={20} />
Delete Item
@@ -149,14 +148,11 @@ const RowsOptionsMenu = ({
};
const MarketingTable = () => {
const [search, setSearch] = useState('');
const [approveAction, setApproveAction] = useState<'APPROVED' | 'REJECTED'>(
'APPROVED'
);
const [selectedItem, setSelectedItem] = useState<Marketing | null>(null);
const [rowSelection, setRowSelection] = useState<Record<string, boolean>>({});
const { permissionCheck } = useAuth();
const router = useRouter();
const deleteModal = useModal();
@@ -530,7 +526,7 @@ const MarketingTable = () => {
</RequirePermission>
{idsToProcess.length > 0 && (
<>
<div className='divider divider-horizontal w-0.25 p-0 m-0 bg-base-content/10 text-base-content/10 before:bg-base-content/10 before:w-0.25 after:bg-base-content/10 after:w-0.25'></div>
<div className='divider divider-horizontal w-px p-0 m-0 bg-base-content/10 text-base-content/10 before:bg-base-content/10 before:w-px after:bg-base-content/10 after:w-px'></div>
<RequirePermission permissions='lti.marketing.sales_order.approve'>
<Button
color='error'
@@ -569,7 +565,7 @@ const MarketingTable = () => {
<div className='flex flex-row gap-3'>
<ButtonFilter
values={(() => {
const { page, pageSize, ...rest } = tableFilterState;
const { ...rest } = tableFilterState;
return rest;
})()}
onClick={() => {
@@ -81,7 +81,7 @@ const SalesOrderFormModal = ({
);
};
const { data: marketing, isLoading: isLoadingMarketing } = useSWR(
const { data: marketing } = useSWR(
isModalActionForForm && marketingId
? `detail-marketing-${marketingId}`
: undefined,
@@ -750,7 +750,7 @@ const SalesOrderFormModal = ({
text: 'Oke',
color: 'primary',
className: 'rounded-lg',
onClick: (e) => {
onClick: () => {
closeModalHandler();
},
}}
@@ -34,7 +34,6 @@ const DeliveryOrderProductForm = ({
salesOrders,
initialValues,
exisitingValues,
onSubmitForm,
onUpdateForm,
isLoading,
}: {
@@ -96,12 +95,12 @@ const DeliveryOrderProductForm = ({
);
// Options Week dari minggu 1 - 22
const optionsWeek = useMemo(() => {
return Array.from({ length: 22 }, (_, i) => ({
value: i + 1,
label: `Week ${i + 1}`,
}));
}, []);
// const optionsWeek = useMemo(() => {
// return Array.from({ length: 22 }, (_, i) => ({
// value: i + 1,
// label: `Week ${i + 1}`,
// }));
// }, []);
const options = exisitingValues
?.map((item) => {
@@ -139,12 +139,12 @@ const SalesOrderProductForm = ({
} = useSelect<Kandang>(WarehouseApi.basePath, 'id', 'name');
// Options Week dari minggu 1 - 22
const optionsWeek = useMemo(() => {
return Array.from({ length: 22 }, (_, i) => ({
value: i + 1,
label: `Week ${i + 1}`,
}));
}, []);
// const optionsWeek = useMemo(() => {
// return Array.from({ length: 22 }, (_, i) => ({
// value: i + 1,
// label: `Week ${i + 1}`,
// }));
// }, []);
const {
options: warehouseSourceOptions,
@@ -49,7 +49,7 @@ const DeliveryOrderExport = ({
document.body.removeChild(link);
window.URL.revokeObjectURL(url);
}, 150);
} catch (error) {
} catch {
toast.error('Failed to generate PDF. Please try again.');
} finally {
setIsGeneratingPDF(false);
@@ -1,7 +1,7 @@
import Button from '@/components/Button';
import { Marketing } from '@/types/api/marketing/marketing';
import { Icon } from '@iconify/react';
import { Document, Image, Page, pdf, Text, View } from '@react-pdf/renderer';
import { Document, Page, pdf, Text, View } from '@react-pdf/renderer';
import { useMemo, useState } from 'react';
import { formatDate, formatNumber } from '@/lib/helper';
import pdfStyles from '@/components/pages/marketing/pdf/styles/MarketingPDFStyles';
@@ -43,7 +43,7 @@ const SalesOrderExport = ({ data }: SalesOrderExportProps) => {
document.body.removeChild(link);
window.URL.revokeObjectURL(url);
}, 150);
} catch (error) {
} catch {
toast.error('Failed to generate PDF. Please try again.');
} finally {
setIsGeneratingPDF(false);
@@ -162,7 +162,7 @@ const PDFDocument = ({ data }: { data: Marketing }) => {
</View>
</View>
{data?.sales_order?.map((item, index) => {
const isLastItem = index === (data?.sales_order?.length || 0) - 1;
// const isLastItem = index === (data?.sales_order?.length || 0) - 1;
return (
<View
key={index}