@bjsdistribution/dms-client-return 0.1.92-prod → 0.1.93-prod
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useState as
|
|
3
|
-
import { useApiHook as _, useAxios as j, AntModal as
|
|
1
|
+
import { jsxs as E, Fragment as F, jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import { useState as M, useEffect as i } from "react";
|
|
3
|
+
import { useApiHook as _, useAxios as j, AntModal as w, Checkbox as G } from "@bjsdistribution/dms-component-library";
|
|
4
4
|
import { useAtom as V } from "jotai";
|
|
5
5
|
import { countReducerAtom as B, useDeleteProdsID as W, usefetchAgain as $ } from "../store.js";
|
|
6
6
|
import z from "./DefectsModal.js";
|
|
@@ -8,67 +8,75 @@ import K from "./CreateReturnModal.js";
|
|
|
8
8
|
import { useFinalPayload as U, usePostLoading as q, useSelectedOrders as J, useSelectedConfirmLoc as Q, useNewReturnPayload as X, useGroupedPayload as Y, useSelectAll as Z, useSendEmailNotification as ee } from "../../store.js";
|
|
9
9
|
import { notification as x } from "antd";
|
|
10
10
|
import { useNavigate as te } from "react-router-dom";
|
|
11
|
-
const
|
|
12
|
-
const [
|
|
11
|
+
const me = () => {
|
|
12
|
+
const [s, r] = V(B), [p, d] = M(!1), [m] = W(), [, R] = M(!1), [f] = U(), [g, h] = q(), [, y] = J(), [L, S] = Q(), [, P] = X(), [, k] = Y(), [, b] = Z(), [, D] = $(), [
|
|
13
13
|
l,
|
|
14
14
|
n
|
|
15
|
-
] = ee(),
|
|
16
|
-
|
|
17
|
-
},
|
|
15
|
+
] = ee(), A = te(), v = () => {
|
|
16
|
+
r({ type: "close" }), n(!0);
|
|
17
|
+
}, H = () => m?.length > 0;
|
|
18
18
|
i(() => {
|
|
19
|
-
R(
|
|
20
|
-
}, [
|
|
19
|
+
R(H());
|
|
20
|
+
}, [m]);
|
|
21
21
|
const {
|
|
22
22
|
data: e,
|
|
23
23
|
setShouldPerformAction: c,
|
|
24
24
|
loading: t,
|
|
25
|
-
error:
|
|
26
|
-
setError:
|
|
25
|
+
error: N,
|
|
26
|
+
setError: C
|
|
27
27
|
} = _({
|
|
28
28
|
endpoint: "/v1/return/create/",
|
|
29
29
|
method: "POST",
|
|
30
|
-
body:
|
|
30
|
+
body: f,
|
|
31
31
|
performAction: !1
|
|
32
32
|
});
|
|
33
33
|
i(() => {
|
|
34
|
-
|
|
34
|
+
h(t);
|
|
35
35
|
}, [t]);
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
}, { fetchData:
|
|
36
|
+
const T = () => {
|
|
37
|
+
f?.length > 0 && (c(!0), D(!0), h(t)), r({ type: "close" });
|
|
38
|
+
}, { fetchData: I } = j({
|
|
39
39
|
endpoint: "/v1/return/create-csv-and-send-email/",
|
|
40
40
|
method: "POST"
|
|
41
41
|
});
|
|
42
42
|
return i(() => {
|
|
43
43
|
t && d(!0);
|
|
44
44
|
}, [t]), i(() => {
|
|
45
|
-
if (
|
|
46
|
-
if (
|
|
45
|
+
if (p && !(t || g)) {
|
|
46
|
+
if (N || e && (e?.code == 500 || e?.code == 400)) {
|
|
47
47
|
d(!1);
|
|
48
|
-
const o =
|
|
48
|
+
const o = N?.message || e?.message || "Failed to create return";
|
|
49
49
|
x.error({
|
|
50
50
|
message: "Failure",
|
|
51
51
|
description: o
|
|
52
|
-
}),
|
|
52
|
+
}), r({ type: "close" }), n(!0), y([]), S([]), P([]), k([]), b(!1), c(!1), C(null);
|
|
53
53
|
} else if (e?.code === 201 || e?.code === 200) {
|
|
54
54
|
d(!1), x.success({
|
|
55
55
|
message: "Success",
|
|
56
56
|
// @ts-ignore
|
|
57
57
|
description: `${e?.message}`
|
|
58
|
-
}),
|
|
59
|
-
const o = e?.data?.[0]?.order_id,
|
|
58
|
+
}), r({ type: "close" });
|
|
59
|
+
const o = e?.data?.[0]?.order_id, O = {
|
|
60
60
|
// order_ids: response?.data ? response.data.map((item: any) => item?.order_id ?? 0) : [],
|
|
61
|
-
gsit_order_ids: e?.data ? e.data.map((
|
|
61
|
+
gsit_order_ids: e?.data ? e.data.map((u) => u?.order_id ?? 0) : []
|
|
62
62
|
};
|
|
63
|
-
|
|
63
|
+
(async () => {
|
|
64
|
+
if (l)
|
|
65
|
+
try {
|
|
66
|
+
await I({ payload: O });
|
|
67
|
+
} catch (u) {
|
|
68
|
+
console.error("Failed to send email notification:", u);
|
|
69
|
+
}
|
|
70
|
+
A(o ? `/orders/view/return/?order=${o}` : "/orders/view/return/overview"), n(!0), y([]), S([]), P([]), c(!1), b(!1), C(null);
|
|
71
|
+
})();
|
|
64
72
|
}
|
|
65
73
|
}
|
|
66
|
-
}, [
|
|
67
|
-
|
|
68
|
-
|
|
74
|
+
}, [g, t, p, e]), /* @__PURE__ */ E(F, { children: [
|
|
75
|
+
s?.state === "create-return" && /* @__PURE__ */ a(F, { children: /* @__PURE__ */ a(
|
|
76
|
+
w,
|
|
69
77
|
{
|
|
70
|
-
openStatus:
|
|
71
|
-
closeModal: () =>
|
|
78
|
+
openStatus: s?.state == "create-return",
|
|
79
|
+
closeModal: () => v(),
|
|
72
80
|
PopupHeader: {
|
|
73
81
|
heading: "CONFIRM RETURN",
|
|
74
82
|
subHeading: ""
|
|
@@ -76,7 +84,7 @@ const pe = () => {
|
|
|
76
84
|
PopupFooter: {
|
|
77
85
|
btns: [
|
|
78
86
|
{
|
|
79
|
-
name: /* @__PURE__ */
|
|
87
|
+
name: /* @__PURE__ */ E(
|
|
80
88
|
"div",
|
|
81
89
|
{
|
|
82
90
|
style: {
|
|
@@ -87,14 +95,14 @@ const pe = () => {
|
|
|
87
95
|
},
|
|
88
96
|
onClick: (o) => o.stopPropagation(),
|
|
89
97
|
children: [
|
|
90
|
-
/* @__PURE__ */
|
|
98
|
+
/* @__PURE__ */ a(
|
|
91
99
|
G,
|
|
92
100
|
{
|
|
93
101
|
checked: l,
|
|
94
102
|
onChange: () => n(!l)
|
|
95
103
|
}
|
|
96
104
|
),
|
|
97
|
-
/* @__PURE__ */
|
|
105
|
+
/* @__PURE__ */ a(
|
|
98
106
|
"span",
|
|
99
107
|
{
|
|
100
108
|
style: {
|
|
@@ -116,9 +124,9 @@ const pe = () => {
|
|
|
116
124
|
{
|
|
117
125
|
name: "Submit",
|
|
118
126
|
btnStyle: "rounded",
|
|
119
|
-
onClick:
|
|
127
|
+
onClick: T,
|
|
120
128
|
type: "button",
|
|
121
|
-
disabled:
|
|
129
|
+
disabled: L.length === 0
|
|
122
130
|
}
|
|
123
131
|
],
|
|
124
132
|
btnAlign: "justifyEnd"
|
|
@@ -128,11 +136,11 @@ const pe = () => {
|
|
|
128
136
|
classNameAdd: "globalPopup"
|
|
129
137
|
}
|
|
130
138
|
) }),
|
|
131
|
-
|
|
132
|
-
|
|
139
|
+
s?.state == "defectsModal" && /* @__PURE__ */ a(
|
|
140
|
+
w,
|
|
133
141
|
{
|
|
134
|
-
openStatus:
|
|
135
|
-
closeModal:
|
|
142
|
+
openStatus: s?.state == "defectsModal",
|
|
143
|
+
closeModal: v,
|
|
136
144
|
PopupHeader: {
|
|
137
145
|
heading: "DEliver - DWLK1006 - 00605",
|
|
138
146
|
subHeading: "ALtair TV stand for TVs up to 60"
|
|
@@ -155,6 +163,6 @@ const pe = () => {
|
|
|
155
163
|
] });
|
|
156
164
|
};
|
|
157
165
|
export {
|
|
158
|
-
|
|
166
|
+
me as default
|
|
159
167
|
};
|
|
160
168
|
//# sourceMappingURL=ModalManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalManager.js","sources":["../../../../src/components/order-view/modalsPopup/ModalManager.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n AntModal,\n useApiHook,\n useAxios,\n Checkbox,\n} from '@bjsdistribution/dms-component-library';\nimport { useAtom } from 'jotai';\nimport { countReducerAtom, useDeleteProdsID, usefetchAgain } from '../store';\n\nimport DefectsModal from './DefectsModal';\nimport { ApiResponse } from '../types';\nimport CreateReturnModal from './CreateReturnModal';\nimport {\n useFinalPayload,\n useGroupedPayload,\n useNewReturnPayload,\n usePostLoading,\n useSelectAll,\n useSelectedConfirmLoc,\n useSelectedOrders,\n useSendEmailNotification,\n} from '../../store';\nimport { notification } from 'antd';\nimport { useNavigate } from 'react-router-dom';\n\nconst ModalManager = () => {\n const [popupName, dispatch] = useAtom(countReducerAtom);\n const [hasStartedLoading, setHasStartedLoading] = useState(false);\n const [selectedRows] = useDeleteProdsID();\n const [, setIsFormValid] = useState(false);\n const [newGrouped] = useFinalPayload();\n const [postLoading, SetPostLoading] = usePostLoading();\n const [, setSelectedReturnOrder] = useSelectedOrders();\n const [forDisabledCheck, setCheck] = useSelectedConfirmLoc();\n const [, setNewPayload] = useNewReturnPayload();\n const [, setGrouped] = useGroupedPayload();\n const [, setSelectAll] = useSelectAll();\n const [, setCallForFetch] = usefetchAgain();\n const [\n sendEmailNotification,\n setSendEmailNotification,\n ] = useSendEmailNotification();\n const navigate = useNavigate();\n\n const closeModal = () => {\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n };\n\n const validateForm = () => {\n return selectedRows?.length > 0;\n };\n\n useEffect(() => {\n setIsFormValid(validateForm());\n }, [selectedRows]);\n\n // Confirm return popup\n const {\n data: response,\n setShouldPerformAction,\n loading: confirmLoading,\n error: apiError,\n setError,\n } = useApiHook<{\n data: ApiResponse[];\n }>({\n endpoint: `/v1/return/create/`,\n method: 'POST',\n body: newGrouped,\n performAction: false,\n });\n\n useEffect(() => {\n SetPostLoading(confirmLoading);\n }, [confirmLoading]);\n\n const handleConfirmReturn = () => {\n if (newGrouped?.length > 0) {\n setShouldPerformAction(true);\n setCallForFetch(true);\n SetPostLoading(confirmLoading);\n }\n dispatch({ type: 'close' });\n };\n\n const { fetchData: callSendEmail } = useAxios({\n endpoint: '/v1/return/create-csv-and-send-email/',\n method: 'POST',\n });\n\n useEffect(() => {\n if (confirmLoading) {\n setHasStartedLoading(true);\n }\n }, [confirmLoading]);\n\n useEffect(() => {\n if (!hasStartedLoading) return;\n if (confirmLoading || postLoading) return;\n\n // @ts-ignore\n if (apiError || (response && (response?.code == 500 || response?.code == 400))) {\n setHasStartedLoading(false);\n\n // @ts-ignore\n const errorMessage = apiError?.message || response?.message || 'Failed to create return';\n notification.error({\n message: 'Failure',\n description: errorMessage,\n });\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setGrouped([]);\n setSelectAll(false);\n setShouldPerformAction(false);\n setError(null);\n // @ts-ignore\n } else if (response?.code === 201 || response?.code === 200) {\n setHasStartedLoading(false);\n notification.success({\n message: 'Success',\n // @ts-ignore\n description: `${response?.message}`,\n });\n dispatch({ type: 'close' });\n //@ts-ignore\n const orderIdsString = response?.data?.[0]?.order_id;\n\n const emailApiPayload = {\n // order_ids: response?.data ? response.data.map((item: any) => item?.order_id ?? 0) : [],\n gsit_order_ids: response?.data\n ? response.data.map((item: any) => item?.order_id ?? 0)\n : [],\n };\n\n // send to API\n if (sendEmailNotification) {\n callSendEmail({ payload: emailApiPayload });\n }\n if (orderIdsString) {\n navigate(`/orders/view/return/?order=${orderIdsString}`);\n } else {\n navigate('/orders/view/return/overview');\n }\n\n // Reset email notification state back to true\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setShouldPerformAction(false);\n setSelectAll(false);\n setError(null);\n\n // for local\n // navigate('/overview');\n\n // for dev\n //navigate('/orders/view/return/overview');\n }\n }, [postLoading, confirmLoading, hasStartedLoading, response]);\n\n return (\n <>\n {popupName?.state === 'create-return' && (\n <>\n <AntModal\n openStatus={popupName?.state == 'create-return' ? true : false}\n closeModal={() => closeModal()}\n PopupHeader={{\n heading: 'CONFIRM RETURN',\n subHeading: '',\n }}\n PopupFooter={{\n btns: [\n {\n name: (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n marginRight: '16px',\n gap: '8px',\n }}\n onClick={e => e.stopPropagation()}\n >\n <Checkbox\n checked={sendEmailNotification}\n onChange={() =>\n setSendEmailNotification(!sendEmailNotification)\n }\n />\n <span\n style={{\n color: '#8d8f90',\n fontFamily: 'Poppins',\n fontSize: '14px',\n fontWeight: 400,\n textTransform: 'none',\n }}\n >\n Send Email Notification\n </span>\n </div>\n ),\n btnStyle: '',\n type: 'button',\n },\n {\n name: 'Submit',\n btnStyle: 'rounded',\n onClick: handleConfirmReturn,\n type: 'button',\n disabled: forDisabledCheck.length === 0,\n },\n ],\n\n btnAlign: 'justifyEnd',\n }}\n BodyComponent={CreateReturnModal}\n width={800}\n classNameAdd={'globalPopup'}\n />\n </>\n )}\n\n {popupName?.state == 'defectsModal' && (\n <AntModal\n openStatus={popupName?.state == 'defectsModal' ? true : false}\n closeModal={closeModal}\n PopupHeader={{\n heading: 'DEliver - DWLK1006 - 00605',\n subHeading: 'ALtair TV stand for TVs up to 60',\n }}\n PopupFooter={{\n btns: [\n {\n name: '',\n btnStyle: '',\n type: '',\n },\n ],\n btnAlign: '',\n }}\n BodyComponent={DefectsModal}\n width={1504}\n classNameAdd={'globalPopup'}\n />\n )}\n </>\n );\n};\n\nexport default ModalManager;\n\n\n\n"],"names":["ModalManager","popupName","dispatch","useAtom","countReducerAtom","hasStartedLoading","setHasStartedLoading","useState","selectedRows","useDeleteProdsID","setIsFormValid","newGrouped","useFinalPayload","postLoading","SetPostLoading","usePostLoading","setSelectedReturnOrder","useSelectedOrders","forDisabledCheck","setCheck","useSelectedConfirmLoc","setNewPayload","useNewReturnPayload","setGrouped","useGroupedPayload","setSelectAll","useSelectAll","setCallForFetch","usefetchAgain","sendEmailNotification","setSendEmailNotification","useSendEmailNotification","navigate","useNavigate","closeModal","validateForm","useEffect","response","setShouldPerformAction","confirmLoading","apiError","setError","useApiHook","handleConfirmReturn","callSendEmail","useAxios","errorMessage","notification","orderIdsString","emailApiPayload","item","jsxs","Fragment","jsx","AntModal","e","Checkbox","CreateReturnModal","DefectsModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModalManager.js","sources":["../../../../src/components/order-view/modalsPopup/ModalManager.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n AntModal,\n useApiHook,\n useAxios,\n Checkbox,\n} from '@bjsdistribution/dms-component-library';\nimport { useAtom } from 'jotai';\nimport { countReducerAtom, useDeleteProdsID, usefetchAgain } from '../store';\n\nimport DefectsModal from './DefectsModal';\nimport { ApiResponse } from '../types';\nimport CreateReturnModal from './CreateReturnModal';\nimport {\n useFinalPayload,\n useGroupedPayload,\n useNewReturnPayload,\n usePostLoading,\n useSelectAll,\n useSelectedConfirmLoc,\n useSelectedOrders,\n useSendEmailNotification,\n} from '../../store';\nimport { notification } from 'antd';\nimport { useNavigate } from 'react-router-dom';\n\nconst ModalManager = () => {\n const [popupName, dispatch] = useAtom(countReducerAtom);\n const [hasStartedLoading, setHasStartedLoading] = useState(false);\n const [selectedRows] = useDeleteProdsID();\n const [, setIsFormValid] = useState(false);\n const [newGrouped] = useFinalPayload();\n const [postLoading, SetPostLoading] = usePostLoading();\n const [, setSelectedReturnOrder] = useSelectedOrders();\n const [forDisabledCheck, setCheck] = useSelectedConfirmLoc();\n const [, setNewPayload] = useNewReturnPayload();\n const [, setGrouped] = useGroupedPayload();\n const [, setSelectAll] = useSelectAll();\n const [, setCallForFetch] = usefetchAgain();\n const [\n sendEmailNotification,\n setSendEmailNotification,\n ] = useSendEmailNotification();\n const navigate = useNavigate();\n\n const closeModal = () => {\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n };\n\n const validateForm = () => {\n return selectedRows?.length > 0;\n };\n\n useEffect(() => {\n setIsFormValid(validateForm());\n }, [selectedRows]);\n\n // Confirm return popup\n const {\n data: response,\n setShouldPerformAction,\n loading: confirmLoading,\n error: apiError,\n setError,\n } = useApiHook<{\n data: ApiResponse[];\n }>({\n endpoint: `/v1/return/create/`,\n method: 'POST',\n body: newGrouped,\n performAction: false,\n });\n\n useEffect(() => {\n SetPostLoading(confirmLoading);\n }, [confirmLoading]);\n\n const handleConfirmReturn = () => {\n if (newGrouped?.length > 0) {\n setShouldPerformAction(true);\n setCallForFetch(true);\n SetPostLoading(confirmLoading);\n }\n dispatch({ type: 'close' });\n };\n\n const { fetchData: callSendEmail } = useAxios({\n endpoint: '/v1/return/create-csv-and-send-email/',\n method: 'POST',\n });\n\n useEffect(() => {\n if (confirmLoading) {\n setHasStartedLoading(true);\n }\n }, [confirmLoading]);\n\n useEffect(() => {\n if (!hasStartedLoading) return;\n if (confirmLoading || postLoading) return;\n\n // @ts-ignore\n if (apiError || (response && (response?.code == 500 || response?.code == 400))) {\n setHasStartedLoading(false);\n\n // @ts-ignore\n const errorMessage = apiError?.message || response?.message || 'Failed to create return';\n notification.error({\n message: 'Failure',\n description: errorMessage,\n });\n dispatch({ type: 'close' });\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setGrouped([]);\n setSelectAll(false);\n setShouldPerformAction(false);\n setError(null);\n // @ts-ignore\n } else if (response?.code === 201 || response?.code === 200) {\n setHasStartedLoading(false);\n notification.success({\n message: 'Success',\n // @ts-ignore\n description: `${response?.message}`,\n });\n dispatch({ type: 'close' });\n //@ts-ignore\n const orderIdsString = response?.data?.[0]?.order_id;\n\n const emailApiPayload = {\n // order_ids: response?.data ? response.data.map((item: any) => item?.order_id ?? 0) : [],\n gsit_order_ids: response?.data\n ? response.data.map((item: any) => item?.order_id ?? 0)\n : [],\n };\n\n const handleEmailAndNavigate = async () => {\n // send to API\n if (sendEmailNotification) {\n try {\n await callSendEmail({ payload: emailApiPayload });\n } catch (error) {\n console.error('Failed to send email notification:', error);\n }\n }\n if (orderIdsString) {\n navigate(`/orders/view/return/?order=${orderIdsString}`);\n } else {\n navigate('/orders/view/return/overview');\n }\n\n // Reset email notification state back to true\n setSendEmailNotification(true);\n setSelectedReturnOrder([]);\n setCheck([]);\n setNewPayload([]);\n setShouldPerformAction(false);\n setSelectAll(false);\n setError(null);\n };\n\n handleEmailAndNavigate();\n }\n }, [postLoading, confirmLoading, hasStartedLoading, response]);\n\n return (\n <>\n {popupName?.state === 'create-return' && (\n <>\n <AntModal\n openStatus={popupName?.state == 'create-return' ? true : false}\n closeModal={() => closeModal()}\n PopupHeader={{\n heading: 'CONFIRM RETURN',\n subHeading: '',\n }}\n PopupFooter={{\n btns: [\n {\n name: (\n <div\n style={{\n display: 'flex',\n alignItems: 'center',\n marginRight: '16px',\n gap: '8px',\n }}\n onClick={e => e.stopPropagation()}\n >\n <Checkbox\n checked={sendEmailNotification}\n onChange={() =>\n setSendEmailNotification(!sendEmailNotification)\n }\n />\n <span\n style={{\n color: '#8d8f90',\n fontFamily: 'Poppins',\n fontSize: '14px',\n fontWeight: 400,\n textTransform: 'none',\n }}\n >\n Send Email Notification\n </span>\n </div>\n ),\n btnStyle: '',\n type: 'button',\n },\n {\n name: 'Submit',\n btnStyle: 'rounded',\n onClick: handleConfirmReturn,\n type: 'button',\n disabled: forDisabledCheck.length === 0,\n },\n ],\n\n btnAlign: 'justifyEnd',\n }}\n BodyComponent={CreateReturnModal}\n width={800}\n classNameAdd={'globalPopup'}\n />\n </>\n )}\n\n {popupName?.state == 'defectsModal' && (\n <AntModal\n openStatus={popupName?.state == 'defectsModal' ? true : false}\n closeModal={closeModal}\n PopupHeader={{\n heading: 'DEliver - DWLK1006 - 00605',\n subHeading: 'ALtair TV stand for TVs up to 60',\n }}\n PopupFooter={{\n btns: [\n {\n name: '',\n btnStyle: '',\n type: '',\n },\n ],\n btnAlign: '',\n }}\n BodyComponent={DefectsModal}\n width={1504}\n classNameAdd={'globalPopup'}\n />\n )}\n </>\n );\n};\n\nexport default ModalManager;\n\n\n\n"],"names":["ModalManager","popupName","dispatch","useAtom","countReducerAtom","hasStartedLoading","setHasStartedLoading","useState","selectedRows","useDeleteProdsID","setIsFormValid","newGrouped","useFinalPayload","postLoading","SetPostLoading","usePostLoading","setSelectedReturnOrder","useSelectedOrders","forDisabledCheck","setCheck","useSelectedConfirmLoc","setNewPayload","useNewReturnPayload","setGrouped","useGroupedPayload","setSelectAll","useSelectAll","setCallForFetch","usefetchAgain","sendEmailNotification","setSendEmailNotification","useSendEmailNotification","navigate","useNavigate","closeModal","validateForm","useEffect","response","setShouldPerformAction","confirmLoading","apiError","setError","useApiHook","handleConfirmReturn","callSendEmail","useAxios","errorMessage","notification","orderIdsString","emailApiPayload","item","error","jsxs","Fragment","jsx","AntModal","e","Checkbox","CreateReturnModal","DefectsModal"],"mappings":"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"}
|
package/package.json
CHANGED