oa-componentbook 1.0.1-stage.39 → 1.0.1-stage.391
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.
- package/build/components/oa-component-accordion/Accordion.js +129 -40
- package/build/components/oa-component-accordion/styles.js +2 -2
- package/build/components/oa-component-button/CustomButton.js +24 -19
- package/build/components/oa-component-checkbox/CustomCheckBox.js +20 -17
- package/build/components/oa-component-checkbox/styles.js +1 -1
- package/build/components/oa-component-datepicker/CustomDatePicker.js +37 -26
- package/build/components/oa-component-drawer/CustomDrawer.js +2 -0
- package/build/components/oa-component-dropdown/CustomDropdown.js +16 -4
- package/build/components/oa-component-icons/MaterialIcon.js +2 -1
- package/build/components/oa-component-info/CustomInfo.js +9 -4
- package/build/components/oa-component-info/styles.js +3 -3
- package/build/components/oa-component-modal/CustomModal.js +51 -46
- package/build/components/oa-component-modal/styles.js +3 -2
- package/build/components/oa-component-pagination/CustomPagination.js +111 -0
- package/build/components/oa-component-pagination/styles.js +12 -0
- package/build/components/oa-component-select/CustomSelect.js +116 -56
- package/build/components/oa-component-steps/CustomSteps.js +117 -0
- package/build/components/oa-component-steps/styles.js +12 -0
- package/build/components/oa-component-table/CustomTable.js +28 -5
- package/build/components/oa-component-table/CustomTableV1.js +610 -0
- package/build/components/oa-component-table/styles.js +1 -1
- package/build/components/oa-component-table/stylesV1.js +19 -0
- package/build/components/oa-component-tabs/CustomTabs.js +1 -1
- package/build/components/oa-component-tag/CustomTag.js +29 -11
- package/build/components/oa-component-tag/styles.js +30 -3
- package/build/components/oa-component-textarea/{TextArea.js → CustomTextArea.js} +4 -4
- package/build/components/oa-component-tooltip/CustomTooltip.js +8 -4
- package/build/components/oa-component-upload/CustomUpload.js +120 -40
- package/build/components/oa-component-viewer/CustomViewer.js +3 -1
- package/build/dev/oa-component-document-viewer/CustomDocumentViewer.js +367 -0
- package/build/dev/oa-component-document-viewer/styles.js +12 -0
- package/build/dev/oa-component-upload/CustomUpload.js +3 -0
- package/build/dev/oa-widget-document-modal/DocumentSideModal.js +166 -0
- package/build/dev/oa-widget-document-modal/styles.js +12 -0
- package/build/dev/oa-widget-document-side-drawer/DocumentSideDrawer.js +196 -0
- package/build/dev/oa-widget-document-side-drawer/styles.js +12 -0
- package/build/global-css/GlobalCss.js +2 -1
- package/build/global-css/GridLayout.js +1 -1
- package/build/global-css/commonStyles.js +11 -0
- package/build/images/Car.png +0 -0
- package/build/images/TwoWheeler.png +0 -0
- package/build/images/astronaut_emptystate.png +0 -0
- package/build/images/exportGrp01.png +0 -0
- package/build/images/exportGrp02.png +0 -0
- package/build/images/exportGrp03.png +0 -0
- package/build/images/outOfStock.png +0 -0
- package/build/index.js +110 -5
- package/build/layout/DetailDataLayout/DetailDataLayout.js +20 -0
- package/build/layout/DetailDataLayout/components/Form.js +22 -0
- package/build/layout/DetailDataLayout/components/Header.js +32 -0
- package/build/layout/DetailDataLayout/style.css +9 -0
- package/build/layout/DetailDataLayout/styles.js +12 -0
- package/build/layout/EntityOverviewLayout/EntityOverviewLayout.js +235 -0
- package/build/layout/EntityOverviewLayout/reducer/entityOverviewLayoutReducer.js +63 -0
- package/build/layout/EntityOverviewLayout/styles.js +13 -0
- package/build/layout/GenricLayOut/GenricLayOut.js +2314 -0
- package/build/layout/GenricLayOut/components/AppliedFilters.js +91 -0
- package/build/layout/GenricLayOut/components/CardList.js +34 -0
- package/build/layout/GenricLayOut/components/DropdownSearch.js +48 -0
- package/build/layout/GenricLayOut/components/Header.js +74 -0
- package/build/layout/GenricLayOut/components/Modal.js +93 -0
- package/build/layout/GenricLayOut/components/ProfileSection.js +87 -0
- package/build/layout/GenricLayOut/components/Search.js +51 -0
- package/build/layout/GenricLayOut/components/StaticFilter.css +73 -0
- package/build/layout/GenricLayOut/components/StaticFilter.js +37 -0
- package/build/layout/GenricLayOut/reducer/layoutReducer.js +294 -0
- package/build/layout/GenricLayOut/resolver/staticConfigResolver.js +98 -0
- package/build/layout/GenricLayOut/styles.js +30 -0
- package/build/utils/download-file.js +23 -0
- package/build/widgets/oa-form-widget/FormWidget.js +576 -0
- package/build/widgets/oa-form-widget/FormWidgetStyle.js +18 -0
- package/build/widgets/oa-widget-add-spare-part/AddSparePartCollapseWidget.js +80 -16
- package/build/widgets/oa-widget-add-spare-part/AddSparePartWidget.js +50 -7
- package/build/widgets/oa-widget-address/AddressWidget.js +12 -17
- package/build/widgets/oa-widget-approval/ApprovalWidget.js +19 -11
- package/build/widgets/oa-widget-approval/ApprovalWidgetNew.js +492 -0
- package/build/widgets/oa-widget-approval/styles.js +2 -2
- package/build/widgets/oa-widget-chat/ChatWidget.js +5 -5
- package/build/widgets/oa-widget-close-claim/CloseClaimWidget.js +17 -5
- package/build/widgets/oa-widget-collapsible-key-value/CollapsibleKeyValueWidget.js +396 -0
- package/build/widgets/oa-widget-collapsible-key-value/styles.js +16 -0
- package/build/widgets/oa-widget-content-panel/ContentPanel.js +82 -0
- package/build/widgets/oa-widget-content-panel/styles.js +12 -0
- package/build/widgets/oa-widget-customer-rating-card/CustomerRatingCard.js +5 -5
- package/build/widgets/oa-widget-detailcard/styles.js +1 -1
- package/build/widgets/oa-widget-document-upload/DocUploadWidget.js +6 -9
- package/build/widgets/oa-widget-dropdown-search-input/DropdownSearchInput.js +53 -19
- package/build/widgets/oa-widget-dropdown-search-input/styles.js +1 -1
- package/build/widgets/oa-widget-guide/GuideWidget.js +70 -0
- package/build/widgets/oa-widget-guide/GuideWidgetStyle.js +12 -0
- package/build/widgets/oa-widget-hub-automation-modal/HubAutomationDeleteBiker.js +24 -0
- package/build/widgets/oa-widget-hub-automation-modal/HubAutomationModal.js +34 -0
- package/build/widgets/oa-widget-hub-automation-modal/HubAutomationModalStyle.js +13 -0
- package/build/widgets/oa-widget-image-carousel/ImageCarouselWidget.js +149 -64
- package/build/widgets/oa-widget-image-carousel/styles.js +16 -5
- package/build/widgets/oa-widget-image-gallery/FullscreenViewer.js +169 -0
- package/build/widgets/oa-widget-image-gallery/ImageGallery.js +87 -0
- package/build/widgets/oa-widget-image-gallery/ThumbnailGrid.js +146 -0
- package/build/widgets/oa-widget-image-gallery/imageCache.js +15 -0
- package/build/widgets/oa-widget-image-gallery/imageGalleryStyle.js +16 -0
- package/build/widgets/oa-widget-item-info-card/InfoCardListWidget.js +60 -0
- package/build/widgets/oa-widget-item-info-card/ItemInfoCardWidget.js +77 -0
- package/build/widgets/oa-widget-item-info-card/styles.css +50 -0
- package/build/widgets/oa-widget-item-info-card/styles.js +14 -0
- package/build/widgets/oa-widget-key-value/KeyValueWidget.js +46 -12
- package/build/widgets/oa-widget-key-value/styles.js +1 -1
- package/build/widgets/oa-widget-kpi/KPICardWidget.js +86 -0
- package/build/widgets/oa-widget-kpi/styles.js +12 -0
- package/build/widgets/oa-widget-map-base-location/AddressDetails.js +21 -7
- package/build/widgets/oa-widget-map-base-location/AddressForm.js +32 -5
- package/build/widgets/oa-widget-map-base-location/MapBaseLocation.js +9 -3
- package/build/widgets/oa-widget-map-base-location/MapComponent.js +17 -2
- package/build/widgets/oa-widget-membershipcard/MembershipCard.js +14 -3
- package/build/widgets/oa-widget-membershipcard/styles.js +1 -1
- package/build/widgets/oa-widget-notes/NotesWidget.js +32 -30
- package/build/widgets/oa-widget-notes/styles.js +4 -3
- package/build/widgets/oa-widget-profile-data/ProfileDataWidget.js +117 -0
- package/build/widgets/oa-widget-profile-data/styles.js +13 -0
- package/build/widgets/oa-widget-progressive-steps/ProgressiveStepsWidget.js +362 -0
- package/build/widgets/oa-widget-progressive-steps/styles.js +12 -0
- package/build/widgets/oa-widget-reimbursement-breakup/ReimbursementBreakupWidget.js +18 -9
- package/build/widgets/oa-widget-reimbursement-breakup/styles.js +1 -1
- package/build/widgets/oa-widget-reupload-drawer/ReUploadDrawer.js +164 -0
- package/build/widgets/oa-widget-select-list-item-modal/SelectListItemModal.js +79 -0
- package/build/widgets/oa-widget-sidebar/SidebarWidget.js +156 -0
- package/build/widgets/oa-widget-sidebar/components/Header.js +33 -0
- package/build/widgets/oa-widget-sidebar/sidebar.css +0 -0
- package/build/widgets/oa-widget-sidebar/styles.js +13 -0
- package/build/widgets/oa-widget-spare-part/SparePartsWidget.js +57 -29
- package/build/widgets/oa-widget-track-shipment/TrackShipmentWidget.js +28 -6
- package/build/widgets/oa-widget-track-shipment-list/TrackShipmentWidgetList.js +103 -0
- package/build/widgets/oa-widget-track-shipment-list/fn.js +81 -0
- package/build/widgets/oa-widget-user-management/UserManagementWidget.js +352 -0
- package/build/widgets/oa-widget-user-management/styles.js +15 -0
- package/package.json +3 -1
- package/build/dev/oa-widget-track-shipment/TrackShipmentWidget.js +0 -195
- /package/build/{dev/oa-widget-track-shipment → widgets/oa-widget-track-shipment-list}/styles.js +0 -0
|
@@ -25,8 +25,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
25
25
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
26
26
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
27
27
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
28
|
-
const FlexContainer = _styledComponents.default.section(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n gap: 16px;\n .text-only-size{\n justify-content: left;\n }\n small{\n color: var(--color-secondary-content);\n display: block;\n }\n"])));
|
|
29
|
-
const CostBreakdown = _styledComponents.default.aside(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n background: var(--color-secondary-background);\n padding: 0 12px;\n border-radius: 4px;\n ul{\n display: flex;\n margin: 0;\n border-bottom: 1px solid var(--color-divider);\n padding: 12px 0;\n }\n ul:last-child{\n border-bottom: none;\n }\n ul li{\n width: 100%;\n list-style: none;\n }\n ul li:first-child{\n color: var(--color-primary-content);\n font-style: normal;\n }\n ul li:last-child{\n font-style: normal;\n color: var(--color-secondary-content);\n }\n"])));
|
|
28
|
+
const FlexContainer = _styledComponents.default.section(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n gap: 16px;\n .text-only-size{\n justify-content: left;\n }\n small{\n color: var(--color-secondary-content);\n display: block;\n }\n .costClass span {\n display: block;\n text-align: end; \n }\n"])));
|
|
29
|
+
const CostBreakdown = _styledComponents.default.aside(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n background: var(--color-secondary-background);\n padding: 0 12px;\n border-radius: 4px;\n ul{\n display: flex;\n margin: 0;\n border-bottom: 1px solid var(--color-divider);\n padding: 12px 0;\n }\n ul:last-child{\n border-bottom: none;\n }\n ul li{\n width: 100%;\n list-style: none;\n }\n ul li:first-child{\n color: var(--color-primary-content);\n font-style: normal;\n }\n ul li:last-child{\n font-style: normal;\n color: var(--color-secondary-content);\n }\n .font-bold{\n font-weight: 700;\n }\n .subHeadingclass{\n color:rgba(113, 113, 113, 1);\n font-weight: 400;\n }\n\n .alignItemsClass{\n display: flex;\n flex-direction: column;\n justify-content: start;\n gap: 4px;\n }\n .breakDownLastChild{\n text-align: right;\n margin-right: 8px;\n }\n \n"])));
|
|
30
30
|
// Mapping of how costs are covered
|
|
31
31
|
const costCoveredBy = {
|
|
32
32
|
costToCompany: 'Cost to Company',
|
|
@@ -34,27 +34,33 @@ const costCoveredBy = {
|
|
|
34
34
|
costToInsurer: 'Cost to Insurer',
|
|
35
35
|
costToOneassist: 'Cost to OneAssist',
|
|
36
36
|
totalCoverAmount: 'Total Cover Amount',
|
|
37
|
-
remainingCoverAmount: 'Remaining Cover Amount'
|
|
37
|
+
remainingCoverAmount: 'Remaining Cover Amount',
|
|
38
|
+
totalAmount: 'Total Amount',
|
|
39
|
+
coveredAmount: 'Covered Amount',
|
|
40
|
+
amountToPay: 'Amount to Pay'
|
|
38
41
|
};
|
|
39
42
|
|
|
40
43
|
// Renders the cost with currency formatting
|
|
41
|
-
const renderCost = cost => {
|
|
44
|
+
const renderCost = (cost, config) => {
|
|
42
45
|
if ( /*#__PURE__*/_react.default.isValidElement(cost)) {
|
|
43
46
|
return /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
44
|
-
typography:
|
|
47
|
+
typography: config !== null && config !== void 0 && config.isBold ? 'type-b2-700' : 'type-b2-400',
|
|
48
|
+
color: config !== null && config !== void 0 && config.fontColor ? config === null || config === void 0 ? void 0 : config.fontColor : ''
|
|
45
49
|
}, cost);
|
|
46
50
|
}
|
|
47
51
|
if (!Number.isNaN(cost)) {
|
|
48
52
|
var _Number;
|
|
49
53
|
return /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
50
|
-
|
|
54
|
+
color: config !== null && config !== void 0 && config.fontColor ? config === null || config === void 0 ? void 0 : config.fontColor : '',
|
|
55
|
+
typography: config !== null && config !== void 0 && config.isBold ? 'type-b2-700' : 'type-b2-400'
|
|
51
56
|
}, (_Number = Number(cost)) === null || _Number === void 0 ? void 0 : _Number.toLocaleString('en-IN', {
|
|
52
57
|
style: 'currency',
|
|
53
58
|
currency: 'INR'
|
|
54
59
|
}));
|
|
55
60
|
}
|
|
56
61
|
return /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
57
|
-
|
|
62
|
+
color: config !== null && config !== void 0 && config.fontColor ? config === null || config === void 0 ? void 0 : config.fontColor : '',
|
|
63
|
+
typography: config !== null && config !== void 0 && config.isBold ? 'type-b2-700' : 'type-b2-400'
|
|
58
64
|
}, cost);
|
|
59
65
|
};
|
|
60
66
|
|
|
@@ -107,7 +113,10 @@ function SparePartsWidget(_ref) {
|
|
|
107
113
|
onViewPriceHistory,
|
|
108
114
|
showGST,
|
|
109
115
|
showDiscount,
|
|
110
|
-
showSparePartsInfo = true
|
|
116
|
+
showSparePartsInfo = true,
|
|
117
|
+
keySettings = {},
|
|
118
|
+
showNonCoverageMessage,
|
|
119
|
+
unCoveredScopeDescription
|
|
111
120
|
} = _ref;
|
|
112
121
|
const sparePartList = [...scopeDetails.unCoveredScope, ...scopeDetails.coveredScope];
|
|
113
122
|
const showActionList = sparePartList.some(sparePart => {
|
|
@@ -123,7 +132,9 @@ function SparePartsWidget(_ref) {
|
|
|
123
132
|
typography: "type-b2-400"
|
|
124
133
|
}, scopeName), (record === null || record === void 0 ? void 0 : record.subText) && /*#__PURE__*/_react.default.createElement("small", {
|
|
125
134
|
className: "type-b2-400"
|
|
126
|
-
}, "(", record === null || record === void 0 ? void 0 : record.subText, ")"),
|
|
135
|
+
}, "(", record === null || record === void 0 ? void 0 : record.subText, ")"), (record === null || record === void 0 ? void 0 : record.extraNode) && /*#__PURE__*/_react.default.createElement("div", {
|
|
136
|
+
className: "extraNode"
|
|
137
|
+
}, record.extraNode), showPriceHistory && !['Transport Charge', 'Labour Charge'].includes(scopeName) && /*#__PURE__*/_react.default.createElement(_CustomButton.default, {
|
|
127
138
|
onClick: () => {
|
|
128
139
|
onViewPriceHistory(record);
|
|
129
140
|
},
|
|
@@ -131,16 +142,29 @@ function SparePartsWidget(_ref) {
|
|
|
131
142
|
label: "View Price History",
|
|
132
143
|
type: "text-only"
|
|
133
144
|
}))
|
|
134
|
-
}
|
|
145
|
+
}];
|
|
146
|
+
if (coverageShow) {
|
|
147
|
+
columns.push({
|
|
148
|
+
title: 'Coverage',
|
|
149
|
+
dataIndex: 'isCovered',
|
|
150
|
+
width: '20%',
|
|
151
|
+
key: 'isCovered',
|
|
152
|
+
render: (text, record) => renderCoverage(record.isCovered, record.className)
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
// Coverga show column need to be shown first
|
|
156
|
+
columns.push({
|
|
135
157
|
title: 'Cost',
|
|
136
158
|
width: '20%',
|
|
137
159
|
dataIndex: 'cost',
|
|
160
|
+
className: 'costClass',
|
|
138
161
|
key: 'cost',
|
|
139
162
|
render: (cost, record) => /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
|
|
140
163
|
className: "row",
|
|
141
164
|
style: {
|
|
142
165
|
gap: '4px',
|
|
143
|
-
cursor: 'pointer'
|
|
166
|
+
cursor: 'pointer',
|
|
167
|
+
justifyContent: 'flex-end'
|
|
144
168
|
}
|
|
145
169
|
}, ' ', /*#__PURE__*/_react.default.createElement("span", null, renderCost(record.cost - record.discount)), (record === null || record === void 0 ? void 0 : record.showCostInfo) && /*#__PURE__*/_react.default.createElement(_antd.Tooltip, {
|
|
146
170
|
title: "Basic Price : ".concat(record.basicPrice, " , Discount : ").concat(record.discount)
|
|
@@ -149,16 +173,7 @@ function SparePartsWidget(_ref) {
|
|
|
149
173
|
}, /*#__PURE__*/_react.default.createElement(_icons.InfoCircleFilled, null)))), (record === null || record === void 0 ? void 0 : record.subText2) && /*#__PURE__*/_react.default.createElement("small", {
|
|
150
174
|
className: "type-b2-400"
|
|
151
175
|
}, "(", record === null || record === void 0 ? void 0 : record.subText2, ")"))
|
|
152
|
-
}
|
|
153
|
-
if (coverageShow) {
|
|
154
|
-
columns.push({
|
|
155
|
-
title: 'Coverage',
|
|
156
|
-
dataIndex: 'isCovered',
|
|
157
|
-
width: '20%',
|
|
158
|
-
key: 'isCovered',
|
|
159
|
-
render: (text, record) => renderCoverage(record.isCovered, record.className)
|
|
160
|
-
});
|
|
161
|
-
}
|
|
176
|
+
});
|
|
162
177
|
if (showDiscount) {
|
|
163
178
|
columns.push({
|
|
164
179
|
title: 'Discount',
|
|
@@ -196,9 +211,9 @@ function SparePartsWidget(_ref) {
|
|
|
196
211
|
var _scopeDetails$unCover;
|
|
197
212
|
const unCoveredScope = (scopeDetails === null || scopeDetails === void 0 ? void 0 : scopeDetails.unCoveredScope) || [];
|
|
198
213
|
const coveredScope = (scopeDetails === null || scopeDetails === void 0 ? void 0 : scopeDetails.coveredScope) || [];
|
|
199
|
-
return /*#__PURE__*/_react.default.createElement(FlexContainer, null, (scopeDetails === null || scopeDetails === void 0 || (_scopeDetails$unCover = scopeDetails.unCoveredScope) === null || _scopeDetails$unCover === void 0 ? void 0 : _scopeDetails$unCover.length) > 0 && coverageShow && /*#__PURE__*/_react.default.createElement(_CustomInfo.default, {
|
|
214
|
+
return /*#__PURE__*/_react.default.createElement(FlexContainer, null, showNonCoverageMessage && (scopeDetails === null || scopeDetails === void 0 || (_scopeDetails$unCover = scopeDetails.unCoveredScope) === null || _scopeDetails$unCover === void 0 ? void 0 : _scopeDetails$unCover.length) > 0 && coverageShow && /*#__PURE__*/_react.default.createElement(_CustomInfo.default, {
|
|
200
215
|
color: "background-warning",
|
|
201
|
-
description:
|
|
216
|
+
description: unCoveredScopeDescription,
|
|
202
217
|
iconConfig: {
|
|
203
218
|
icon: /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
|
|
204
219
|
color: "warning",
|
|
@@ -213,13 +228,20 @@ function SparePartsWidget(_ref) {
|
|
|
213
228
|
size: "middle"
|
|
214
229
|
}), showCostBreakdown && /*#__PURE__*/_react.default.createElement(CostBreakdown, null, Object.keys(scopeDetails).map((key, index) => {
|
|
215
230
|
if (costCoveredBy[key] && scopeDetails[key] != null && scopeDetails[key] !== undefined) {
|
|
231
|
+
const config = keySettings[key] || {};
|
|
232
|
+
const className = "type-b2-400 alignItemsClass ".concat(config !== null && config !== void 0 && config.isBold ? 'font-bold' : '');
|
|
216
233
|
return /*#__PURE__*/_react.default.createElement("ul", {
|
|
217
234
|
key: (0, _utils.getUUID)()
|
|
218
235
|
}, /*#__PURE__*/_react.default.createElement("li", {
|
|
219
|
-
className:
|
|
220
|
-
},
|
|
221
|
-
|
|
222
|
-
},
|
|
236
|
+
className: className
|
|
237
|
+
}, /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
238
|
+
color: config !== null && config !== void 0 && config.fontColor ? config === null || config === void 0 ? void 0 : config.fontColor : ''
|
|
239
|
+
}, costCoveredBy[key]), ' ', (config === null || config === void 0 ? void 0 : config.subHeading) && /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
240
|
+
className: "subHeadingclass",
|
|
241
|
+
typography: "type-b2-400"
|
|
242
|
+
}, config === null || config === void 0 ? void 0 : config.subHeading)), ' ', /*#__PURE__*/_react.default.createElement("li", {
|
|
243
|
+
className: "".concat(className, " breakDownLastChild")
|
|
244
|
+
}, renderCost(scopeDetails[key], config)));
|
|
223
245
|
}
|
|
224
246
|
return null; // To satisfy React key warning
|
|
225
247
|
})));
|
|
@@ -245,7 +267,10 @@ SparePartsWidget.propTypes = {
|
|
|
245
267
|
onViewPriceHistory: _propTypes.default.func,
|
|
246
268
|
showSparePartsInfo: _propTypes.default.bool,
|
|
247
269
|
showGST: _propTypes.default.bool,
|
|
248
|
-
showDiscount: _propTypes.default.bool
|
|
270
|
+
showDiscount: _propTypes.default.bool,
|
|
271
|
+
keySettings: _propTypes.default.shape({}),
|
|
272
|
+
showNonCoverageMessage: _propTypes.default.bool,
|
|
273
|
+
unCoveredScopeDescription: _propTypes.default.string
|
|
249
274
|
};
|
|
250
275
|
|
|
251
276
|
// Define default props for SpareParts component
|
|
@@ -261,6 +286,9 @@ SparePartsWidget.defaultProps = {
|
|
|
261
286
|
onViewPriceHistory: data => console.log(data),
|
|
262
287
|
showSparePartsInfo: true,
|
|
263
288
|
showGST: false,
|
|
264
|
-
showDiscount: false
|
|
289
|
+
showDiscount: false,
|
|
290
|
+
keySettings: {},
|
|
291
|
+
showNonCoverageMessage: true,
|
|
292
|
+
unCoveredScopeDescription: 'Multiple components need to be repaired which are not covered in this plan'
|
|
265
293
|
};
|
|
266
294
|
var _default = exports.default = SparePartsWidget;
|
|
@@ -9,12 +9,14 @@ exports.default = void 0;
|
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
11
|
var _FileCopyOutlined = _interopRequireDefault(require("@material-ui/icons/FileCopyOutlined"));
|
|
12
|
+
var _InfoOutlined = _interopRequireDefault(require("@material-ui/icons/InfoOutlined"));
|
|
12
13
|
var _AddressWidget = _interopRequireDefault(require("../oa-widget-address/AddressWidget"));
|
|
13
14
|
var _CustomTable = _interopRequireDefault(require("../../components/oa-component-table/CustomTable"));
|
|
14
15
|
var _CustomTimeline = _interopRequireDefault(require("../../components/oa-component-timeline/CustomTimeline"));
|
|
15
16
|
var _MaterialIcon = _interopRequireDefault(require("../../components/oa-component-icons/MaterialIcon"));
|
|
16
17
|
var _styles = require("./styles");
|
|
17
18
|
var _CustomNotification = _interopRequireDefault(require("../../components/oa-component-notification/CustomNotification"));
|
|
19
|
+
var _CustomInfo = _interopRequireDefault(require("../../components/oa-component-info/CustomInfo"));
|
|
18
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
21
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
20
22
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -41,7 +43,9 @@ function TrackShipmentWidget(_ref) {
|
|
|
41
43
|
tableData,
|
|
42
44
|
title,
|
|
43
45
|
toAddress,
|
|
44
|
-
heading
|
|
46
|
+
heading,
|
|
47
|
+
partnerName,
|
|
48
|
+
errorReason
|
|
45
49
|
} = _ref;
|
|
46
50
|
// local variables
|
|
47
51
|
const deilveryStageText = 'SHIPMENT DELIVERED to Customer';
|
|
@@ -81,7 +85,7 @@ function TrackShipmentWidget(_ref) {
|
|
|
81
85
|
const isOnDeliveryStage = Array.isArray(tableData) && tableData.length > 0 && ((_tableData = tableData[tableData.length - 1]) === null || _tableData === void 0 ? void 0 : _tableData.oneassistDisplayStatus) === deilveryStageText && ((_tableData2 = tableData[tableData.length - 1]) === null || _tableData2 === void 0 ? void 0 : _tableData2.toDate) === null;
|
|
82
86
|
|
|
83
87
|
// remove duplicate consicutive objects only show single unique objects
|
|
84
|
-
const stepsData = tableData.map(item => ({
|
|
88
|
+
const stepsData = tableData === null || tableData === void 0 ? void 0 : tableData.map(item => ({
|
|
85
89
|
title: item.oneassistDisplayStatus,
|
|
86
90
|
status: getCircleClass(item, true)
|
|
87
91
|
})).filter((item, index) => {
|
|
@@ -96,7 +100,7 @@ function TrackShipmentWidget(_ref) {
|
|
|
96
100
|
className: "type-t1-500"
|
|
97
101
|
}, title) : null, /*#__PURE__*/_react.default.createElement("h3", {
|
|
98
102
|
className: "type-t1-500"
|
|
99
|
-
}, heading), /*#__PURE__*/_react.default.createElement("p", {
|
|
103
|
+
}, heading), awbNumber && /*#__PURE__*/_react.default.createElement("p", {
|
|
100
104
|
className: "type-b2-400 disFlex"
|
|
101
105
|
}, "AWB Number:", awbNumber, awbNumber && /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
|
|
102
106
|
icon: _FileCopyOutlined.default,
|
|
@@ -106,16 +110,30 @@ function TrackShipmentWidget(_ref) {
|
|
|
106
110
|
cursor: 'pointer',
|
|
107
111
|
color: '014FC5'
|
|
108
112
|
}
|
|
109
|
-
})),
|
|
113
|
+
})), partnerName && /*#__PURE__*/_react.default.createElement("p", {
|
|
114
|
+
className: "type-b2-400 disFlex"
|
|
115
|
+
}, "Partner:", partnerName), fromAddress && toAddress && /*#__PURE__*/_react.default.createElement(_styles.AddressesContainer, null, /*#__PURE__*/_react.default.createElement(_AddressWidget.default, {
|
|
110
116
|
address: fromAddress
|
|
111
117
|
}), /*#__PURE__*/_react.default.createElement(_AddressWidget.default, {
|
|
112
118
|
address: toAddress
|
|
113
|
-
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
119
|
+
})), (stepsData === null || stepsData === void 0 ? void 0 : stepsData.length) > 0 && /*#__PURE__*/_react.default.createElement("div", {
|
|
114
120
|
className: "cstScroll"
|
|
115
121
|
}, /*#__PURE__*/_react.default.createElement(_CustomTimeline.default, {
|
|
116
122
|
currentStep: isOnDeliveryStage ? stepsData.length : stepsData.length - 1,
|
|
117
123
|
stepsData: stepsData
|
|
118
|
-
})), /*#__PURE__*/_react.default.createElement(
|
|
124
|
+
})), errorReason && /*#__PURE__*/_react.default.createElement("div", {
|
|
125
|
+
className: "margin-top-16 margin-bottom-16"
|
|
126
|
+
}, /*#__PURE__*/_react.default.createElement(_CustomInfo.default, {
|
|
127
|
+
iconConfig: {
|
|
128
|
+
icon: /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
|
|
129
|
+
color: "warning",
|
|
130
|
+
size: 24,
|
|
131
|
+
icon: _InfoOutlined.default
|
|
132
|
+
}),
|
|
133
|
+
position: 'left'
|
|
134
|
+
},
|
|
135
|
+
description: errorReason
|
|
136
|
+
})), (tableData === null || tableData === void 0 ? void 0 : tableData.length) > 0 && /*#__PURE__*/_react.default.createElement(_CustomTable.default, {
|
|
119
137
|
bordered: true,
|
|
120
138
|
rowKey: "key",
|
|
121
139
|
columns: [{
|
|
@@ -158,6 +176,8 @@ function TrackShipmentWidget(_ref) {
|
|
|
158
176
|
}
|
|
159
177
|
TrackShipmentWidget.propTypes = {
|
|
160
178
|
awbNumber: _propTypes.default.string.isRequired,
|
|
179
|
+
errorReason: _propTypes.default.string,
|
|
180
|
+
partnerName: _propTypes.default.string,
|
|
161
181
|
fromAddress: _propTypes.default.shape({
|
|
162
182
|
heading: _propTypes.default.string,
|
|
163
183
|
addressLine1: _propTypes.default.string,
|
|
@@ -198,6 +218,8 @@ TrackShipmentWidget.propTypes = {
|
|
|
198
218
|
})
|
|
199
219
|
};
|
|
200
220
|
TrackShipmentWidget.defaultProps = {
|
|
221
|
+
errorReason: '',
|
|
222
|
+
partnerName: '',
|
|
201
223
|
fromAddress: {
|
|
202
224
|
heading: ''
|
|
203
225
|
},
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _fn = require("./fn");
|
|
10
|
+
var _TrackShipmentWidget = _interopRequireDefault(require("../oa-widget-track-shipment/TrackShipmentWidget"));
|
|
11
|
+
var _Accordion = _interopRequireDefault(require("../../components/oa-component-accordion/Accordion"));
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
function TrackShipmentWidgetList(_ref) {
|
|
14
|
+
var _assignments$map;
|
|
15
|
+
let {
|
|
16
|
+
shipmentData,
|
|
17
|
+
onChange
|
|
18
|
+
} = _ref;
|
|
19
|
+
const assignments = (shipmentData === null || shipmentData === void 0 ? void 0 : shipmentData.assignments) || [];
|
|
20
|
+
if (assignments.length === 0) {
|
|
21
|
+
return /*#__PURE__*/_react.default.createElement(_TrackShipmentWidget.default, (0, _fn.getSingleShipmentHistory)(shipmentData));
|
|
22
|
+
}
|
|
23
|
+
if (assignments.length === 1) {
|
|
24
|
+
return /*#__PURE__*/_react.default.createElement(_TrackShipmentWidget.default, (0, _fn.getSingleShipmentHistory)(assignments[0]));
|
|
25
|
+
}
|
|
26
|
+
const lastReassignmentId = assignments && assignments.length > 0 ? assignments[assignments.length - 1].assignmentId || 0 : 0;
|
|
27
|
+
return assignments === null || assignments === void 0 || (_assignments$map = assignments.map) === null || _assignments$map === void 0 ? void 0 : _assignments$map.call(assignments, (item, index) => {
|
|
28
|
+
const {
|
|
29
|
+
assignmentId,
|
|
30
|
+
assignmentDate,
|
|
31
|
+
assignmentClosedTime,
|
|
32
|
+
status
|
|
33
|
+
} = item !== null && item !== void 0 ? item : {};
|
|
34
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
35
|
+
className: "margin-bottom-16",
|
|
36
|
+
key: assignmentId
|
|
37
|
+
}, /*#__PURE__*/_react.default.createElement(_Accordion.default, {
|
|
38
|
+
defaultActiveKey: lastReassignmentId,
|
|
39
|
+
activeKey: assignmentId,
|
|
40
|
+
body: /*#__PURE__*/_react.default.createElement(_TrackShipmentWidget.default, (0, _fn.getSingleShipmentHistory)(item)),
|
|
41
|
+
headerText: (0, _fn.headerText)(index, assignmentDate, assignmentClosedTime, status)
|
|
42
|
+
}));
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
const HistoryPropType = _propTypes.default.shape({
|
|
46
|
+
shipmentStatus: _propTypes.default.string.isRequired,
|
|
47
|
+
fromDate: _propTypes.default.string.isRequired,
|
|
48
|
+
toDate: _propTypes.default.string.isRequired,
|
|
49
|
+
partnerStatus: _propTypes.default.string,
|
|
50
|
+
customerDisplayStatus: _propTypes.default.string.isRequired,
|
|
51
|
+
oneassistDisplayStatus: _propTypes.default.string.isRequired,
|
|
52
|
+
stageConsistent: _propTypes.default.bool.isRequired
|
|
53
|
+
});
|
|
54
|
+
const AssignmentPropType = _propTypes.default.shape({
|
|
55
|
+
assignmentDate: _propTypes.default.number.isRequired,
|
|
56
|
+
assignmentClosedTime: _propTypes.default.number.isRequired,
|
|
57
|
+
logisticPartnerName: _propTypes.default.string.isRequired,
|
|
58
|
+
assignmentId: _propTypes.default.number.isRequired,
|
|
59
|
+
logisticPartnerRefNum: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
60
|
+
originAddressLine1: _propTypes.default.string.isRequired,
|
|
61
|
+
originDistrict: _propTypes.default.string.isRequired,
|
|
62
|
+
originPincode: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired,
|
|
63
|
+
destAddressLine1: _propTypes.default.string.isRequired,
|
|
64
|
+
destDistrict: _propTypes.default.string,
|
|
65
|
+
destPincode: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired,
|
|
66
|
+
history: _propTypes.default.arrayOf(HistoryPropType).isRequired,
|
|
67
|
+
origAddressFullName: _propTypes.default.string.isRequired,
|
|
68
|
+
destAddressFullName: _propTypes.default.string.isRequired,
|
|
69
|
+
assignments: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
70
|
+
logisticPartnerRefNum: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
71
|
+
originAddressLine1: _propTypes.default.string.isRequired,
|
|
72
|
+
originDistrict: _propTypes.default.string.isRequired,
|
|
73
|
+
originPincode: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired,
|
|
74
|
+
destAddressLine1: _propTypes.default.string.isRequired,
|
|
75
|
+
destDistrict: _propTypes.default.string,
|
|
76
|
+
destPincode: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired,
|
|
77
|
+
history: _propTypes.default.arrayOf(HistoryPropType).isRequired,
|
|
78
|
+
origAddressFullName: _propTypes.default.string.isRequired,
|
|
79
|
+
destAddressFullName: _propTypes.default.string.isRequired,
|
|
80
|
+
assignments: _propTypes.default.array // Placeholder to break recursion
|
|
81
|
+
}))
|
|
82
|
+
});
|
|
83
|
+
TrackShipmentWidgetList.propTypes = {
|
|
84
|
+
shipmentData: _propTypes.default.shape({
|
|
85
|
+
logisticPartnerRefNum: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
86
|
+
originAddressLine1: _propTypes.default.string.isRequired,
|
|
87
|
+
originDistrict: _propTypes.default.string.isRequired,
|
|
88
|
+
originPincode: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired,
|
|
89
|
+
destAddressLine1: _propTypes.default.string.isRequired,
|
|
90
|
+
destDistrict: _propTypes.default.string,
|
|
91
|
+
destPincode: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired,
|
|
92
|
+
history: _propTypes.default.arrayOf(HistoryPropType).isRequired,
|
|
93
|
+
origAddressFullName: _propTypes.default.string.isRequired,
|
|
94
|
+
destAddressFullName: _propTypes.default.string.isRequired,
|
|
95
|
+
assignments: _propTypes.default.arrayOf(AssignmentPropType)
|
|
96
|
+
}),
|
|
97
|
+
onChange: _propTypes.default.func
|
|
98
|
+
};
|
|
99
|
+
TrackShipmentWidgetList.defaultProps = {
|
|
100
|
+
shipmentData: {},
|
|
101
|
+
onChange: () => {}
|
|
102
|
+
};
|
|
103
|
+
var _default = exports.default = TrackShipmentWidgetList;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.isActive = exports.headerText = exports.getSingleShipmentHistory = exports.getDateString = exports.getCurrentShipmentLabel = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
|
+
function numberToOrdinal(number) {
|
|
10
|
+
const suffixes = ['th', 'st', 'nd', 'rd'];
|
|
11
|
+
const value = number % 100;
|
|
12
|
+
const suffix = value >= 11 && value <= 13 ? suffixes[0] // 11th, 12th, 13th
|
|
13
|
+
: suffixes[number % 10] || suffixes[0]; // 1st, 2nd, 3rd, others
|
|
14
|
+
return "".concat(number).concat(suffix); // Use template literal correctly
|
|
15
|
+
}
|
|
16
|
+
const getDateFromEpoch = date => {
|
|
17
|
+
if (!date) {
|
|
18
|
+
return '';
|
|
19
|
+
}
|
|
20
|
+
const dateObj = new Date(date);
|
|
21
|
+
const day = dateObj.getDate();
|
|
22
|
+
const month = dateObj.getMonth();
|
|
23
|
+
const year = dateObj.getFullYear();
|
|
24
|
+
const months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
|
|
25
|
+
return "".concat(day, " ").concat(months[month], " ").concat(year);
|
|
26
|
+
};
|
|
27
|
+
const getDateString = (startTime, endTime) => {
|
|
28
|
+
const startDate = getDateFromEpoch(startTime);
|
|
29
|
+
const endDate = getDateFromEpoch(endTime);
|
|
30
|
+
if (startDate === '' && endDate === '') {
|
|
31
|
+
return '';
|
|
32
|
+
}
|
|
33
|
+
if (endDate === '') {
|
|
34
|
+
return startDate;
|
|
35
|
+
}
|
|
36
|
+
return "".concat(startDate, " - ").concat(endDate);
|
|
37
|
+
};
|
|
38
|
+
exports.getDateString = getDateString;
|
|
39
|
+
const getCurrentShipmentLabel = number => {
|
|
40
|
+
const ordinalNumber = numberToOrdinal(number);
|
|
41
|
+
return "".concat(ordinalNumber, " Shipment");
|
|
42
|
+
};
|
|
43
|
+
exports.getCurrentShipmentLabel = getCurrentShipmentLabel;
|
|
44
|
+
const showNewLineChar = addressDetail => {
|
|
45
|
+
var _splitedAddress$map;
|
|
46
|
+
const splitedAddress = addressDetail === null || addressDetail === void 0 ? void 0 : addressDetail.split('\n');
|
|
47
|
+
if ((splitedAddress === null || splitedAddress === void 0 ? void 0 : splitedAddress.length) === 1) return addressDetail;
|
|
48
|
+
return (_splitedAddress$map = splitedAddress.map((title, index) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, title, index === 0 && /*#__PURE__*/_react.default.createElement("br", null)))) !== null && _splitedAddress$map !== void 0 ? _splitedAddress$map : '';
|
|
49
|
+
};
|
|
50
|
+
const isActive = time => time === null;
|
|
51
|
+
exports.isActive = isActive;
|
|
52
|
+
const headerText = (index, reassignmentTime, modifiedTime, status) => "".concat(getCurrentShipmentLabel(index + 1), " | ").concat(getDateString(reassignmentTime, modifiedTime)).concat(isActive(modifiedTime) ? ' - Present' : '');
|
|
53
|
+
exports.headerText = headerText;
|
|
54
|
+
const getSingleShipmentHistory = item => {
|
|
55
|
+
var _item$history;
|
|
56
|
+
return {
|
|
57
|
+
partnerName: item === null || item === void 0 ? void 0 : item.logisticPartnerName,
|
|
58
|
+
errorReason: item === null || item === void 0 ? void 0 : item.failureReason,
|
|
59
|
+
awbNumber: item === null || item === void 0 ? void 0 : item.logisticPartnerRefNum,
|
|
60
|
+
fromAddress: {
|
|
61
|
+
heading: 'From Address:',
|
|
62
|
+
addressLine1: item === null || item === void 0 ? void 0 : item.origAddressFullName,
|
|
63
|
+
addressLine2: showNewLineChar(item === null || item === void 0 ? void 0 : item.originAddressLine1),
|
|
64
|
+
pincode: item === null || item === void 0 ? void 0 : item.originPincode,
|
|
65
|
+
city: item === null || item === void 0 ? void 0 : item.originDistrict,
|
|
66
|
+
landmark: item === null || item === void 0 ? void 0 : item.originLandmark,
|
|
67
|
+
state: item === null || item === void 0 ? void 0 : item.originState
|
|
68
|
+
},
|
|
69
|
+
toAddress: {
|
|
70
|
+
heading: 'To Address:',
|
|
71
|
+
addressLine1: item === null || item === void 0 ? void 0 : item.destAddressFullName,
|
|
72
|
+
addressLine2: showNewLineChar(item === null || item === void 0 ? void 0 : item.destAddressLine1),
|
|
73
|
+
pincode: item === null || item === void 0 ? void 0 : item.destPincode,
|
|
74
|
+
city: item === null || item === void 0 ? void 0 : item.destDistrict,
|
|
75
|
+
landmark: item === null || item === void 0 ? void 0 : item.destLandmark,
|
|
76
|
+
state: item === null || item === void 0 ? void 0 : item.destState
|
|
77
|
+
},
|
|
78
|
+
tableData: (_item$history = item === null || item === void 0 ? void 0 : item.history) !== null && _item$history !== void 0 ? _item$history : []
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
exports.getSingleShipmentHistory = getSingleShipmentHistory;
|