oa-componentbook 1.0.1-stage.44 → 1.0.1-stage.440

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.
Files changed (136) hide show
  1. package/build/components/oa-component-accordion/Accordion.js +123 -43
  2. package/build/components/oa-component-accordion/styles.js +2 -2
  3. package/build/components/oa-component-button/CustomButton.js +24 -19
  4. package/build/components/oa-component-button/styles.js +1 -1
  5. package/build/components/oa-component-checkbox/CustomCheckBox.js +20 -17
  6. package/build/components/oa-component-checkbox/styles.js +1 -1
  7. package/build/components/oa-component-datepicker/CustomDatePicker.js +37 -26
  8. package/build/components/oa-component-drawer/CustomDrawer.js +2 -0
  9. package/build/components/oa-component-dropdown/CustomDropdown.js +16 -4
  10. package/build/components/oa-component-icons/MaterialIcon.js +1 -1
  11. package/build/components/oa-component-modal/CustomModal.js +59 -48
  12. package/build/components/oa-component-modal/styles.js +3 -2
  13. package/build/components/oa-component-pagination/CustomPagination.js +111 -0
  14. package/build/components/oa-component-pagination/styles.js +12 -0
  15. package/build/components/oa-component-progress-bar/CustomProgressBar.js +8 -4
  16. package/build/components/oa-component-select/CustomSelect.js +130 -56
  17. package/build/components/oa-component-steps/CustomSteps.js +117 -0
  18. package/build/components/oa-component-steps/styles.js +12 -0
  19. package/build/components/oa-component-table/CustomTable.js +28 -5
  20. package/build/components/oa-component-table/CustomTableV1.js +613 -0
  21. package/build/components/oa-component-table/styles.js +1 -1
  22. package/build/components/oa-component-table/stylesV1.js +19 -0
  23. package/build/components/oa-component-tabs/CustomTabs.js +1 -1
  24. package/build/components/oa-component-tag/CustomTag.js +29 -11
  25. package/build/components/oa-component-tag/styles.js +30 -3
  26. package/build/components/oa-component-textarea/CustomTextArea.js +161 -0
  27. package/build/components/oa-component-textarea/constants.js +39 -0
  28. package/build/components/oa-component-textarea/styles.js +12 -3
  29. package/build/components/oa-component-tooltip/CustomTooltip.js +8 -4
  30. package/build/components/oa-component-upload/CustomUpload.js +129 -42
  31. package/build/components/oa-component-viewer/CustomViewer.js +17 -11
  32. package/build/dev/oa-component-document-viewer/CustomDocumentViewer.js +367 -0
  33. package/build/dev/oa-component-document-viewer/styles.js +12 -0
  34. package/build/dev/oa-component-upload/CustomUpload.js +116 -29
  35. package/build/dev/oa-component-upload/styles.js +2 -2
  36. package/build/dev/oa-widget-document-modal/DocumentSideModal.js +166 -0
  37. package/build/dev/oa-widget-document-modal/styles.js +12 -0
  38. package/build/dev/oa-widget-document-side-drawer/DocumentSideDrawer.js +196 -0
  39. package/build/dev/oa-widget-document-side-drawer/styles.js +12 -0
  40. package/build/global-css/GlobalCss.js +2 -1
  41. package/build/global-css/GridLayout.js +1 -1
  42. package/build/global-css/commonStyles.js +11 -0
  43. package/build/images/Car.png +0 -0
  44. package/build/images/TwoWheeler.png +0 -0
  45. package/build/images/astronaut_emptystate.png +0 -0
  46. package/build/images/exportGrp01.png +0 -0
  47. package/build/images/exportGrp02.png +0 -0
  48. package/build/images/exportGrp03.png +0 -0
  49. package/build/images/outOfStock.png +0 -0
  50. package/build/index.js +114 -2
  51. package/build/layout/DetailDataLayout/DetailDataLayout.js +20 -0
  52. package/build/layout/DetailDataLayout/components/Form.js +22 -0
  53. package/build/layout/DetailDataLayout/components/Header.js +32 -0
  54. package/build/layout/DetailDataLayout/style.css +9 -0
  55. package/build/layout/DetailDataLayout/styles.js +12 -0
  56. package/build/layout/EntityOverviewLayout/EntityOverviewLayout.js +403 -0
  57. package/build/layout/EntityOverviewLayout/reducer/entityOverviewLayoutReducer.js +85 -0
  58. package/build/layout/EntityOverviewLayout/styles.js +13 -0
  59. package/build/layout/GenricLayOut/GenricLayOut.js +2421 -0
  60. package/build/layout/GenricLayOut/components/AppliedFilters.js +90 -0
  61. package/build/layout/GenricLayOut/components/CardList.js +34 -0
  62. package/build/layout/GenricLayOut/components/DropdownSearch.js +48 -0
  63. package/build/layout/GenricLayOut/components/Header.js +74 -0
  64. package/build/layout/GenricLayOut/components/Modal.js +96 -0
  65. package/build/layout/GenricLayOut/components/ProfileSection.js +219 -0
  66. package/build/layout/GenricLayOut/components/Search.js +51 -0
  67. package/build/layout/GenricLayOut/components/StaticFilter.css +73 -0
  68. package/build/layout/GenricLayOut/components/StaticFilter.js +37 -0
  69. package/build/layout/GenricLayOut/reducer/layoutReducer.js +310 -0
  70. package/build/layout/GenricLayOut/resolver/staticConfigResolver.js +98 -0
  71. package/build/layout/GenricLayOut/styles.js +42 -0
  72. package/build/utils/download-file.js +23 -0
  73. package/build/widgets/oa-form-widget/FormWidget.js +577 -0
  74. package/build/widgets/oa-form-widget/FormWidgetStyle.js +18 -0
  75. package/build/widgets/oa-widget-add-spare-part/AddSparePartCollapseWidget.js +80 -16
  76. package/build/widgets/oa-widget-add-spare-part/AddSparePartWidget.js +50 -7
  77. package/build/widgets/oa-widget-address/AddressWidget.js +12 -17
  78. package/build/widgets/oa-widget-approval/ApprovalWidget.js +19 -11
  79. package/build/widgets/oa-widget-approval/ApprovalWidgetNew.js +492 -0
  80. package/build/widgets/oa-widget-approval/styles.js +2 -2
  81. package/build/widgets/oa-widget-chat/ChatWidget.js +5 -5
  82. package/build/widgets/oa-widget-close-claim/CloseClaimWidget.js +17 -5
  83. package/build/widgets/oa-widget-collapsible-key-value/CollapsibleKeyValueWidget.js +396 -0
  84. package/build/widgets/oa-widget-collapsible-key-value/styles.js +16 -0
  85. package/build/widgets/oa-widget-content-panel/ContentPanel.js +82 -0
  86. package/build/widgets/oa-widget-content-panel/styles.js +12 -0
  87. package/build/widgets/oa-widget-customer-rating-card/CustomerRatingCard.js +5 -5
  88. package/build/widgets/oa-widget-detailcard/styles.js +1 -1
  89. package/build/widgets/oa-widget-document-upload/DocUploadWidget.js +6 -9
  90. package/build/widgets/oa-widget-dropdown-search-input/DropdownSearchInput.js +53 -19
  91. package/build/widgets/oa-widget-dropdown-search-input/styles.js +1 -1
  92. package/build/widgets/oa-widget-guide/GuideWidget.js +70 -0
  93. package/build/widgets/oa-widget-guide/GuideWidgetStyle.js +12 -0
  94. package/build/widgets/oa-widget-hub-automation-modal/HubAutomationDeleteBiker.js +24 -0
  95. package/build/widgets/oa-widget-hub-automation-modal/HubAutomationModal.js +34 -0
  96. package/build/widgets/oa-widget-hub-automation-modal/HubAutomationModalStyle.js +13 -0
  97. package/build/widgets/oa-widget-image-carousel/ImageCarouselWidget.js +256 -0
  98. package/build/widgets/oa-widget-image-carousel/styles.js +23 -0
  99. package/build/widgets/oa-widget-image-gallery/FullscreenViewer.js +169 -0
  100. package/build/widgets/oa-widget-image-gallery/ImageGallery.js +87 -0
  101. package/build/widgets/oa-widget-image-gallery/ThumbnailGrid.js +146 -0
  102. package/build/widgets/oa-widget-image-gallery/imageCache.js +15 -0
  103. package/build/widgets/oa-widget-image-gallery/imageGalleryStyle.js +16 -0
  104. package/build/widgets/oa-widget-item-info-card/InfoCardListWidget.js +60 -0
  105. package/build/widgets/oa-widget-item-info-card/ItemInfoCardWidget.js +83 -0
  106. package/build/widgets/oa-widget-item-info-card/styles.css +50 -0
  107. package/build/widgets/oa-widget-item-info-card/styles.js +14 -0
  108. package/build/widgets/oa-widget-key-value/KeyValueWidget.js +46 -12
  109. package/build/widgets/oa-widget-key-value/styles.js +1 -1
  110. package/build/widgets/oa-widget-kpi/KPICardWidget.js +86 -0
  111. package/build/widgets/oa-widget-kpi/styles.js +12 -0
  112. package/build/widgets/oa-widget-map-base-location/AddressDetails.js +21 -7
  113. package/build/widgets/oa-widget-map-base-location/AddressForm.js +32 -5
  114. package/build/widgets/oa-widget-map-base-location/MapBaseLocation.js +9 -3
  115. package/build/widgets/oa-widget-map-base-location/MapComponent.js +17 -2
  116. package/build/widgets/oa-widget-membershipcard/MembershipCard.js +14 -3
  117. package/build/widgets/oa-widget-membershipcard/styles.js +1 -1
  118. package/build/widgets/oa-widget-notes/NotesWidget.js +32 -30
  119. package/build/widgets/oa-widget-notes/styles.js +4 -3
  120. package/build/widgets/oa-widget-profile-data/ProfileDataWidget.js +165 -0
  121. package/build/widgets/oa-widget-profile-data/styles.js +13 -0
  122. package/build/widgets/oa-widget-progressive-steps/ProgressiveStepsWidget.js +362 -0
  123. package/build/widgets/oa-widget-progressive-steps/styles.js +12 -0
  124. package/build/widgets/oa-widget-reimbursement-breakup/ReimbursementBreakupWidget.js +18 -9
  125. package/build/widgets/oa-widget-reimbursement-breakup/styles.js +1 -1
  126. package/build/widgets/oa-widget-reupload-drawer/ReUploadDrawer.js +164 -0
  127. package/build/widgets/oa-widget-select-list-item-modal/SelectListItemModal.js +91 -0
  128. package/build/widgets/oa-widget-sidebar/SidebarWidget.js +175 -0
  129. package/build/widgets/oa-widget-sidebar/components/Header.js +33 -0
  130. package/build/widgets/oa-widget-sidebar/styles.js +13 -0
  131. package/build/widgets/oa-widget-spare-part/SparePartsWidget.js +63 -35
  132. package/build/widgets/oa-widget-track-shipment-list/fn.js +16 -4
  133. package/build/widgets/oa-widget-user-management/UserManagementWidget.js +407 -0
  134. package/build/widgets/oa-widget-user-management/styles.js +15 -0
  135. package/package.json +4 -2
  136. package/build/components/oa-component-textarea/TextArea.js +0 -74
@@ -0,0 +1,367 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.weak-map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/web.dom-collections.iterator.js");
9
+ require("core-js/modules/es.promise.js");
10
+ require("core-js/modules/web.url.js");
11
+ require("core-js/modules/web.url-search-params.js");
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _propTypes = _interopRequireDefault(require("prop-types"));
14
+ var _reactPdf = require("react-pdf");
15
+ var _icons = require("@material-ui/icons");
16
+ var _Close = _interopRequireDefault(require("@material-ui/icons/Close"));
17
+ var _RotateRight = _interopRequireDefault(require("@material-ui/icons/RotateRight"));
18
+ var _MaterialIcon = _interopRequireDefault(require("../../components/oa-component-icons/MaterialIcon"));
19
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
20
+ var _styles = _interopRequireDefault(require("./styles"));
21
+ var _reactZoomPanPinch = require("react-zoom-pan-pinch");
22
+ var _antd = require("antd");
23
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
+ 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); }
25
+ 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; }
26
+ /* eslint-disable */
27
+
28
+ _reactPdf.pdfjs.GlobalWorkerOptions.workerSrc = "https://cdnjs.cloudflare.com/ajax/libs/pdf.js/".concat(_reactPdf.pdfjs.version, "/pdf.worker.min.js");
29
+ function CustomDocumentViewer(_ref) {
30
+ let {
31
+ fileType,
32
+ fileUrl,
33
+ onDownload,
34
+ hideZoom,
35
+ hideDownload,
36
+ hidePageNumber,
37
+ hideRotate,
38
+ documentViewerOverlayHeight,
39
+ oaImgCenterHeight,
40
+ docHeight,
41
+ onlyDocumentView,
42
+ setcarouselPageNumberHandler,
43
+ initialSlide,
44
+ // in case of carousel - we can specify the initialSlide for opening specific page
45
+ carouselPageNumber,
46
+ selectedPages,
47
+ deleteSelectedPage
48
+ } = _ref;
49
+ const [totalPages, setTotalPages] = (0, _react.useState)(null);
50
+ const [currentPage, setCurrentPage] = (0, _react.useState)(1); // For image rotation.
51
+ const [rotation, setRotation] = (0, _react.useState)(0);
52
+ const [transformUtils, setTransformUtils] = (0, _react.useState)(null);
53
+ const containerRef = (0, _react.useRef)(null);
54
+ const pageRefs = (0, _react.useRef)([]);
55
+ const carouselRef = (0, _react.useRef)();
56
+ const transformUtilsRefs = (0, _react.useRef)([]); // holds utils per page
57
+
58
+ // When the document loads, update total pages (for PDFs).
59
+ const onDocumentLoadSuccess = _ref2 => {
60
+ let {
61
+ numPages
62
+ } = _ref2;
63
+ return setTotalPages(numPages);
64
+ };
65
+ const handleKeyDown = (0, _react.useCallback)(event => {
66
+ // Early return if not in carousel mode or carousel ref isn't ready
67
+ if (fileType !== "pdfWithCarousel" || !carouselRef.current) return;
68
+
69
+ // Ensure totalPages is valid before arithmetic
70
+ if (!totalPages || typeof totalPages !== "number") return;
71
+
72
+ // Check for right arrow and ensure we're not on the last page
73
+ if (event.key === "ArrowRight" && carouselPageNumber < totalPages - 1) {
74
+ var _carouselRef$current;
75
+ (_carouselRef$current = carouselRef.current) === null || _carouselRef$current === void 0 || _carouselRef$current.next();
76
+ }
77
+ // Check for left arrow and ensure we're not on the first page
78
+ else if (event.key === "ArrowLeft" && carouselPageNumber > 0) {
79
+ var _carouselRef$current2;
80
+ (_carouselRef$current2 = carouselRef.current) === null || _carouselRef$current2 === void 0 || _carouselRef$current2.prev();
81
+ }
82
+ }, [fileType, carouselPageNumber, totalPages]);
83
+ (0, _react.useEffect)(() => {
84
+ window.addEventListener("keydown", handleKeyDown);
85
+ return () => window.removeEventListener("keydown", handleKeyDown);
86
+ }, [handleKeyDown]);
87
+ const handleRotate = (0, _react.useCallback)(() => setRotation(prev => prev + 90), []);
88
+ // Default download function; can be overridden by passing an onDownload prop.
89
+ const defaultDownload = (0, _react.useCallback)(() => {
90
+ if (fileType === "image") {
91
+ fetch(fileUrl, {
92
+ mode: "cors"
93
+ }).then(res => res.blob()).then(blob => {
94
+ const url = URL.createObjectURL(blob);
95
+ const link = document.createElement("a");
96
+ link.href = url;
97
+ link.download = fileUrl.split("/").pop();
98
+ document.body.appendChild(link);
99
+ link.click();
100
+ document.body.removeChild(link);
101
+ URL.revokeObjectURL(url);
102
+ }).catch(error => console.error("Image download failed:", error));
103
+ } else {
104
+ // For PDFs and other file types, use the standard download.
105
+ const link = document.createElement("a");
106
+ link.href = fileUrl;
107
+ link.download = fileUrl.split("/").pop();
108
+ document.body.appendChild(link);
109
+ link.click();
110
+ document.body.removeChild(link);
111
+ }
112
+ }, [fileUrl, fileType]);
113
+ const handleDownload = onDownload || defaultDownload;
114
+ const customNextArrow = /*#__PURE__*/_react.default.createElement("div", {
115
+ className: "custom-slick-arrow custom-next"
116
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
117
+ icon: _icons.KeyboardArrowRight,
118
+ size: 32
119
+ }));
120
+ const customPrevArrow = /*#__PURE__*/_react.default.createElement("div", {
121
+ className: "custom-slick-arrow custom-prev"
122
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
123
+ icon: _icons.KeyboardArrowLeft,
124
+ size: 32
125
+ }));
126
+ const handleScroll = (0, _react.useCallback)(() => {
127
+ const container = containerRef.current;
128
+ if (!container) return;
129
+ const containerRect = container.getBoundingClientRect();
130
+ let closestPage = 1;
131
+ let minDistance = Infinity;
132
+ pageRefs.current.forEach((ref, index) => {
133
+ if (ref) {
134
+ const rect = ref.getBoundingClientRect();
135
+ const distance = Math.abs(rect.top - containerRect.top);
136
+ if (distance < minDistance) {
137
+ minDistance = distance;
138
+ closestPage = index + 1;
139
+ }
140
+ }
141
+ });
142
+ setCurrentPage(closestPage);
143
+ }, []);
144
+ const Controls = (0, _react.useMemo)(() => {
145
+ return _ref3 => {
146
+ let {
147
+ zoomIn,
148
+ zoomOut,
149
+ resetTransform
150
+ } = _ref3;
151
+ return /*#__PURE__*/_react.default.createElement("div", {
152
+ className: "customDocumentViewerOverlayHeader"
153
+ }, !hideRotate && fileType === "image" && /*#__PURE__*/_react.default.createElement("div", {
154
+ className: "pageNumber"
155
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
156
+ color: "primary-background",
157
+ size: 24,
158
+ icon: _RotateRight.default,
159
+ onClick: handleRotate,
160
+ style: {
161
+ cursor: "pointer"
162
+ }
163
+ })), !hidePageNumber && fileType === "pdf" && /*#__PURE__*/_react.default.createElement("div", {
164
+ className: "pageNumber"
165
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
166
+ className: "type-button-500",
167
+ color: "primary-background"
168
+ }, "Page ", currentPage, " of ", totalPages)), !hidePageNumber && fileType === "pdfWithCarousel" && /*#__PURE__*/_react.default.createElement("div", {
169
+ className: "pageNumber"
170
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
171
+ className: "type-button-500",
172
+ color: "primary-background"
173
+ }, "Page ", carouselPageNumber + 1, " out of ", totalPages)), !hideZoom && /*#__PURE__*/_react.default.createElement("div", {
174
+ className: "customDocumentViewerOverlayHeaderIcons"
175
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
176
+ color: "primary-background",
177
+ size: 24,
178
+ icon: _icons.RemoveRounded,
179
+ onClick: () => zoomOut()
180
+ }), /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
181
+ color: "primary-background",
182
+ size: 24,
183
+ icon: _icons.ZoomInRounded,
184
+ onClick: () => resetTransform()
185
+ }), /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
186
+ color: "primary-background",
187
+ size: 24,
188
+ icon: _icons.AddRounded,
189
+ onClick: () => zoomIn()
190
+ })), !hideDownload && /*#__PURE__*/_react.default.createElement("div", {
191
+ className: "downloadIcon"
192
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
193
+ color: "primary-background",
194
+ size: 24,
195
+ icon: _icons.GetAppRounded,
196
+ onClick: handleDownload
197
+ })));
198
+ };
199
+ }, [fileType, hideZoom, hideDownload, hidePageNumber, hideRotate, currentPage, totalPages, handleRotate, handleDownload, carouselPageNumber, transformUtils]);
200
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_styles.default, {
201
+ documentViewerOverlayHeight: documentViewerOverlayHeight,
202
+ oaImgCenterHeight: oaImgCenterHeight
203
+ }, fileType === "pdf" && /*#__PURE__*/_react.default.createElement("div", {
204
+ className: "customDocumentViewerOverlay ".concat(docHeight, " ").concat(fileType === "pdf" ? "pdfHeaderStyle" : "", " ").concat(onlyDocumentView ? " onlyDocumentView" : ""),
205
+ onScroll: handleScroll,
206
+ ref: containerRef
207
+ }, /*#__PURE__*/_react.default.createElement(_reactZoomPanPinch.TransformWrapper, {
208
+ initialScale: 1,
209
+ initialPositionX: 200,
210
+ wheel: {
211
+ disabled: true
212
+ },
213
+ pinch: {
214
+ disabled: true
215
+ },
216
+ doubleClick: {
217
+ disabled: true
218
+ }
219
+ }, utils => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Controls, utils), /*#__PURE__*/_react.default.createElement(_reactZoomPanPinch.TransformComponent, {
220
+ wrapperStyle: {
221
+ overflowY: "auto"
222
+ // height: "calc(100vh - 112px)",
223
+ }
224
+ }, /*#__PURE__*/_react.default.createElement(_reactPdf.Document, {
225
+ file: fileUrl,
226
+ onLoadSuccess: onDocumentLoadSuccess
227
+ }, Array.from({
228
+ length: totalPages
229
+ }, (_, index) => /*#__PURE__*/_react.default.createElement("div", {
230
+ key: "page_".concat(index + 1),
231
+ ref: el => pageRefs.current[index] = el,
232
+ style: {
233
+ marginBottom: "20px",
234
+ display: "flex",
235
+ justifyContent: "center"
236
+ }
237
+ }, /*#__PURE__*/_react.default.createElement(_reactPdf.Page, {
238
+ pageNumber: index + 1,
239
+ scale: 1.0
240
+ })))))))), fileType === "image" && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_reactZoomPanPinch.TransformWrapper, {
241
+ initialScale: 1
242
+ // wheel={{ disabled: true }}
243
+ ,
244
+ initialPositionX: 200,
245
+ initialPositionY: 100
246
+ }, utils => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Controls, utils), /*#__PURE__*/_react.default.createElement(_reactZoomPanPinch.TransformComponent, {
247
+ wrapperClass: "customDocumentViewerOverlay ".concat(onlyDocumentView ? " onlyDocumentView" : "")
248
+ }, /*#__PURE__*/_react.default.createElement("img", {
249
+ src: fileUrl,
250
+ alt: "document",
251
+ style: {
252
+ maxWidth: "100%",
253
+ maxHeight: "50%",
254
+ transform: "rotate(".concat(rotation, "deg)"),
255
+ transformOrigin: "center center",
256
+ transition: "transform 0.3s ease-in-out"
257
+ }
258
+ }))))), fileType === "pdfWithCarousel" && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactPdf.Document, {
259
+ file: fileUrl,
260
+ onLoadSuccess: onDocumentLoadSuccess
261
+ }, /*#__PURE__*/_react.default.createElement("div", {
262
+ className: (selectedPages === null || selectedPages === void 0 ? void 0 : selectedPages.length) > 0 ? "controlsWithFooter" : ""
263
+ }, transformUtils && /*#__PURE__*/_react.default.createElement(Controls, transformUtils)), /*#__PURE__*/_react.default.createElement(_antd.Carousel, {
264
+ ref: carouselRef,
265
+ arrows: true,
266
+ infinite: false,
267
+ dots: false,
268
+ nextArrow: customNextArrow,
269
+ beforeChange: (current, next) => {
270
+ setcarouselPageNumberHandler(next);
271
+ const nextUtils = transformUtilsRefs.current[next];
272
+ if (nextUtils) setTransformUtils(nextUtils); // update Controls to work on new page
273
+ // setCarouselPageNumber(next + 1);
274
+ },
275
+ prevArrow: customPrevArrow,
276
+ initialSlide: initialSlide !== null && initialSlide !== void 0 ? initialSlide : 0
277
+ }, Array.from({
278
+ length: totalPages
279
+ }, (_, index) => /*#__PURE__*/_react.default.createElement("div", {
280
+ key: "page_".concat(index + 1),
281
+ ref: el => pageRefs.current[index] = el
282
+ }, /*#__PURE__*/_react.default.createElement(_reactZoomPanPinch.TransformWrapper, {
283
+ initialScale: 1,
284
+ initialPositionX: 200,
285
+ wheel: {
286
+ disabled: true
287
+ },
288
+ pinch: {
289
+ disabled: true
290
+ },
291
+ doubleClick: {
292
+ disabled: true
293
+ },
294
+ onInit: utils => {
295
+ transformUtilsRefs.current[index] = utils;
296
+ if (index === 0) {
297
+ setTransformUtils(utils); // default for initial slide
298
+ }
299
+ }
300
+ }, utils => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactZoomPanPinch.TransformComponent, {
301
+ wrapperStyle: {
302
+ overflowY: "auto",
303
+ display: "flex",
304
+ justifyContent: "center",
305
+ padding: "20px 0"
306
+ }
307
+ }, /*#__PURE__*/_react.default.createElement(_reactPdf.Page, {
308
+ pageNumber: index + 1,
309
+ scale: 1.0
310
+ })))))))), (selectedPages === null || selectedPages === void 0 ? void 0 : selectedPages.length) > 0 && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
311
+ className: "carouselFooter"
312
+ }, /*#__PURE__*/_react.default.createElement("div", {
313
+ className: "footerContainer"
314
+ }, selectedPages === null || selectedPages === void 0 ? void 0 : selectedPages.map(pageNumber => /*#__PURE__*/_react.default.createElement("div", {
315
+ className: "imgViewer"
316
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
317
+ icon: _Close.default,
318
+ size: 20,
319
+ onClick: () => deleteSelectedPage(pageNumber)
320
+ }), /*#__PURE__*/_react.default.createElement(_reactPdf.Document, {
321
+ file: fileUrl
322
+ }, /*#__PURE__*/_react.default.createElement("div", {
323
+ key: "page_".concat(pageNumber + 1),
324
+ ref: el => pageRefs.current[pageNumber] = el,
325
+ style: {
326
+ marginBottom: "20px",
327
+ display: "flex",
328
+ justifyContent: "center"
329
+ }
330
+ }, /*#__PURE__*/_react.default.createElement(_reactPdf.Page, {
331
+ pageNumber: pageNumber + 1,
332
+ scale: 1.0
333
+ })))))))))));
334
+ }
335
+ CustomDocumentViewer.propTypes = {
336
+ fileType: _propTypes.default.string.isRequired,
337
+ fileUrl: _propTypes.default.string.isRequired,
338
+ onDownload: _propTypes.default.func,
339
+ hideZoom: _propTypes.default.bool,
340
+ hideDownload: _propTypes.default.bool,
341
+ hidePageNumber: _propTypes.default.bool,
342
+ hideRotate: _propTypes.default.bool,
343
+ documentViewerOverlayHeight: _propTypes.default.string,
344
+ docHeight: _propTypes.default.string,
345
+ oaImgCenterHeight: _propTypes.default.string,
346
+ onlyDocumentView: _propTypes.default.bool,
347
+ setcarouselPageNumberHandler: _propTypes.default.func,
348
+ initialSlide: _propTypes.default.number,
349
+ carouselPageNumber: _propTypes.default.number,
350
+ selectedPages: _propTypes.default.array
351
+ };
352
+ CustomDocumentViewer.defaultProps = {
353
+ onDownload: null,
354
+ hideZoom: false,
355
+ hideDownload: false,
356
+ hidePageNumber: false,
357
+ hideRotate: false,
358
+ documentViewerOverlayHeight: "100vh",
359
+ docHeight: "",
360
+ oaImgCenterHeight: "calc(-114px + 100vh)",
361
+ onlyDocumentView: false,
362
+ setcarouselPageNumberHandler: null,
363
+ initialSlide: 0,
364
+ carouselPageNumber: 0,
365
+ selectedPages: []
366
+ };
367
+ var _default = exports.default = CustomDocumentViewer;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ var _templateObject;
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
11
+ const DocumentViewerContainer = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: relative;\n .customDocumentViewerOverlay .react-transform-component {\n background-color: var(--color-primary-content);\n // height: ", ";\n height: calc(100vh - 114px);\n display: flex;\n justify-content: center;\n width: 100%;\n padding: 0;\n margin: 0;\n flex-direction: column;\n align-items: center;\n position: relative;\n overflow: hidden;\n }\n .onlyDocumentView .react-transform-component {\n height: calc(100vh - 114px + 61px);\n }\n .react-pdf__Document {\n height: -webkit-fill-available;\n overflow: auto;\n }\n\n .react-pdf__Page {\n cursor: grab;\n display: contents;\n }\n .react-pdf__Page canvas{\n max-width: 100% !important;\n height: -webkit-fill-available !important;\n }\n .viewerContainer > div {\n position: rtelative;\n }\n .documentPdfHeight {\n height: calc(100vh - 114px);\n }\n .pdfHeaderStyle .react-transform-component {\n display: block;\n }\n .react-transform-component img {\n cursor: grab;\n pointer-events: auto;\n }\n .customDocumentViewerOverlayHeader {\n position: absolute;\n bottom: 16px;\n left: 50%;\n transform: translateX(-50%); /* Center horizontally */\n\n padding: 0 16px;\n height: 40px;\n width: fit-content;\n border-radius: 4px;\n z-index: 99;\n background: rgba(0, 0, 0, 0.7);\n box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.34);\n\n padding: 0 16px;\n height: 40px;\n width: fit-content;\n border-radius: 4px;\n z-index: 99;\n background: rgba(0, 0, 0, 0.7);\n box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.34);\n\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .customDocumentViewerOverlayHeaderIcons {\n display: flex;\n padding: 8px 0;\n flex-direction: row;\n gap: 16px;\n }\n\n .downloadIcon {\n border-left: solid 1px #fff;\n padding-left: 16px;\n margin-left: 16px;\n height: 100%;\n align-items: center;\n display: flex;\n }\n .pageNumber {\n border-right: solid 1px #fff;\n padding-right: 16px;\n margin-right: 16px;\n height: 100%;\n align-items: center;\n display: flex;\n }\n .ant-radio-group {\n display: flex;\n white-space: nowrap;\n }\n .oaImgCenter {\n // height: calc(-114px + 100vh);\n height: ", ";\n display: flex;\n justify-content: center;\n align-items: center;\n position: relative;\n }\n // slider css from here\n .slick-prev,\n .slick-next {\n z-index: 100;\n width: 36px;\n height: 36px;\n // display: flex !important;\n align-items: center;\n justify-content: center;\n background: #212121;\n border-radius: 50%;\n color: #fff; \n opacity: 1;\n }\n\n .slick-prev::before,\n .slick-next::before {\n font-size: 20px;\n color: white;\n opacity: 1;\n }\n\n .slick-prev {\n left: 8px;\n }\n .slick-next {\n right: 8px;\n }\n"])), props => props.documentViewerOverlayHeight, props => props.oaImgCenterHeight);
12
+ var _default = exports.default = DocumentViewerContainer;
@@ -18,7 +18,10 @@ var _ColorVariablesMap = _interopRequireDefault(require("../../global-css/ColorV
18
18
  var _handIcon = _interopRequireDefault(require("../../images/hand-icon.svg"));
19
19
  var _PdfSampleImage = _interopRequireDefault(require("../../images/PdfSampleImage.png"));
20
20
  var _styles = require("./styles");
21
- const _excluded = ["uploadedDocuments", "handleCustomOnChange", "multipleDoc", "showDelete", "formName", "getPreview", "isMandatory", "noOfUpload", "downloadCallback", "showDownloadButton", "showDeleteButton", "deleteHandler", "showRoateButton", "showZoomInButton", "showZoomOutButton"];
21
+ const _excluded = ["uploadedDocuments", "handleCustomOnChange", "multipleDoc", "showDelete", "formName", "getPreview", "isMandatory", "noOfUpload", "downloadCallback", "showDownloadButton", "showDeleteButton", "deleteHandler", "showRoateButton", "showZoomInButton", "showZoomOutButton", "uploadButtonConfig", "notShowPreviewButton", "removeHandler", "listType", "deleteModalConfig"];
22
+ /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */
23
+ /* eslint-disable jsx-a11y/no-noninteractive-element-to-interactive-role */
24
+ /* eslint-disable */
22
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); }
23
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; }
24
27
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -94,7 +97,12 @@ function DocumentUpload(_ref) {
94
97
  deleteHandler,
95
98
  showRoateButton,
96
99
  showZoomInButton,
97
- showZoomOutButton
100
+ showZoomOutButton,
101
+ uploadButtonConfig,
102
+ notShowPreviewButton,
103
+ removeHandler = () => {},
104
+ listType,
105
+ deleteModalConfig
98
106
  } = _ref,
99
107
  antDesignProps = _objectWithoutProperties(_ref, _excluded);
100
108
  const [previewOpen, setPreviewOpen] = (0, _react.useState)(false);
@@ -105,10 +113,16 @@ function DocumentUpload(_ref) {
105
113
  const [deleteConfirmation, setDeleteConfirmation] = (0, _react.useState)(false);
106
114
  const [selectedFile, setSelectedFile] = (0, _react.useState)(null);
107
115
  const [selectedDocumentData, setSelectedDocumentData] = (0, _react.useState)({});
116
+ const [isError, setIsError] = (0, _react.useState)(false);
117
+ const uploadRef = _react.default.useRef(null);
108
118
  (0, _react.useEffect)(() => {
109
119
  setFileList(uploadedDocuments);
110
120
  }, [uploadedDocuments === null || uploadedDocuments === void 0 ? void 0 : uploadedDocuments.length]);
111
121
  const handlePreview = async file => {
122
+ // Don't show preview if notShowPreviewButton is true
123
+ if (notShowPreviewButton) {
124
+ return;
125
+ }
112
126
  if (file !== null && file !== void 0 && file.originFileObj) {
113
127
  setPreviewImage(file);
114
128
  } else if ((file === null || file === void 0 ? void 0 : file.fileType) === 'thumbnail') {
@@ -126,6 +140,22 @@ function DocumentUpload(_ref) {
126
140
  fileList: newFileList,
127
141
  file
128
142
  } = _ref2;
143
+ if (antDesignProps !== null && antDesignProps !== void 0 && antDesignProps.customRequest) {
144
+ const isError = newFileList.some(f => (f === null || f === void 0 ? void 0 : f.status) === 'error');
145
+ if (isError) {
146
+ setFileList([]);
147
+ setIsError(true);
148
+ setLoading(false);
149
+ return;
150
+ }
151
+ setIsError(false);
152
+ setFileList(newFileList);
153
+ const isUploading = newFileList.some(f => f.status === 'uploading');
154
+ setLoading(isUploading);
155
+ return;
156
+ }
157
+
158
+ // Default behavior for non-custom uploads
129
159
  const modifiedList = await Promise.all(newFileList.map(async files => {
130
160
  let modifiedFile = files;
131
161
  setLoading(true);
@@ -135,7 +165,6 @@ function DocumentUpload(_ref) {
135
165
  modifiedFile.status = 'done';
136
166
  if (!isImageFile(file === null || file === void 0 ? void 0 : file.name)) {
137
167
  modifiedFile.url = _PdfSampleImage.default;
138
- // delete modifiedFile?.type;
139
168
  }
140
169
  }
141
170
  } catch (error) {
@@ -147,38 +176,83 @@ function DocumentUpload(_ref) {
147
176
  const tempList = modifiedList === null || modifiedList === void 0 ? void 0 : modifiedList.filter(Boolean);
148
177
  setFileList(tempList);
149
178
  };
179
+ const getUploadButtonIcon = () => {
180
+ if ((uploadButtonConfig === null || uploadButtonConfig === void 0 ? void 0 : uploadButtonConfig.icon) === 'PlusOutlined') {
181
+ return /*#__PURE__*/_react.default.createElement(_icons.PlusOutlined, null);
182
+ }
183
+ return /*#__PURE__*/_react.default.createElement(_icons.UploadOutlined, null);
184
+ };
150
185
  const uploadButton = /*#__PURE__*/_react.default.createElement("button", {
151
186
  style: {
152
187
  border: 0,
153
188
  background: 'none'
154
189
  },
155
190
  type: "button"
156
- }, loading ? /*#__PURE__*/_react.default.createElement(_icons.LoadingOutlined, null) :
157
- /*#__PURE__*/
158
- // <CustomIcon
159
- // className="UploadImg"
160
- // alt="phone img"
161
- // src={offerImg}
162
- // />
163
- _react.default.createElement(_icons.UploadOutlined, null), /*#__PURE__*/_react.default.createElement("div", null, "Upload"));
191
+ }, loading ? /*#__PURE__*/_react.default.createElement(_icons.LoadingOutlined, null) : getUploadButtonIcon(), /*#__PURE__*/_react.default.createElement("div", null, uploadButtonConfig !== null && uploadButtonConfig !== void 0 && uploadButtonConfig.text ? uploadButtonConfig === null || uploadButtonConfig === void 0 ? void 0 : uploadButtonConfig.text : 'Upload'));
164
192
  const DeleteFile = async () => {
165
- await deleteHandler(selectedFile);
193
+ await deleteHandler(selectedFile, isEmptyFileList => {
194
+ if (isEmptyFileList) {
195
+ setFileList([]);
196
+ }
197
+ });
166
198
  setDeleteConfirmation(false);
167
199
  if (showDeleteButton) {
168
200
  setPreviewOpen(false);
169
201
  }
170
202
  };
171
203
  const handleRemove = file => new Promise((resolve, reject) => {
172
- setSelectedFile(file);
173
- setDeleteConfirmation(true);
174
- resolve(false);
204
+ // If file is uploading, cancel immediately without confirmation
205
+ if ((file === null || file === void 0 ? void 0 : file.status) === 'uploading') {
206
+ // Remove file from list immediately to cancel upload
207
+ const newFileList = fileList.filter(f => f.uid !== file.uid);
208
+ setFileList(newFileList);
209
+ resolve(true); // Allow removal
210
+ if (removeHandler) removeHandler(file);
211
+ return;
212
+ }
213
+
214
+ // If file is done or error, show confirmation modal
215
+ if ((file === null || file === void 0 ? void 0 : file.status) === 'done' || (file === null || file === void 0 ? void 0 : file.status) === 'error') {
216
+ setSelectedFile(file);
217
+ setDeleteConfirmation(true);
218
+ resolve(false); // Prevent removal until confirmed
219
+ return;
220
+ }
221
+
222
+ // Default: allow removal
223
+ resolve(true);
175
224
  });
176
225
  const handleModalDeleteButton = file => {
177
226
  setSelectedFile(file);
178
227
  setDeleteConfirmation(true);
179
228
  };
229
+
230
+ // Get the appropriate remove icon based on file status
231
+ const getRemoveIcon = file => {
232
+ // Show cross icon during upload (to cancel)
233
+ if ((file === null || file === void 0 ? void 0 : file.status) === 'uploading') {
234
+ return /*#__PURE__*/_react.default.createElement(_icons.CloseOutlined, null);
235
+ }
236
+ // Show delete icon after upload is done or if upload failed
237
+ if ((file === null || file === void 0 ? void 0 : file.status) === 'done' || (file === null || file === void 0 ? void 0 : file.status) === 'error') {
238
+ return /*#__PURE__*/_react.default.createElement(_icons.DeleteOutlined, null);
239
+ }
240
+ // Default to delete icon
241
+ return /*#__PURE__*/_react.default.createElement(_icons.DeleteOutlined, null);
242
+ };
180
243
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_styles.MainStyleSec, null, /*#__PURE__*/_react.default.createElement(_styles.StyledSection, null, /*#__PURE__*/_react.default.createElement("div", {
181
- className: "uploadDiv"
244
+ onClick: listType === 'picture' ? () => {
245
+ var _inst$upload, _inst$nativeElement, _inst$nativeElement$q, _inst$querySelector, _input$click;
246
+ if ((fileList === null || fileList === void 0 ? void 0 : fileList.length) >= noOfUpload) return;
247
+ const inst = uploadRef.current;
248
+ if (inst !== null && inst !== void 0 && inst.onClick) {
249
+ inst.onClick();
250
+ return;
251
+ }
252
+ const input = (inst === null || inst === void 0 || (_inst$upload = inst.upload) === null || _inst$upload === void 0 ? void 0 : _inst$upload.input) || (inst === null || inst === void 0 ? void 0 : inst.fileInput) || (inst === null || inst === void 0 || (_inst$nativeElement = inst.nativeElement) === null || _inst$nativeElement === void 0 || (_inst$nativeElement$q = _inst$nativeElement.querySelector) === null || _inst$nativeElement$q === void 0 ? void 0 : _inst$nativeElement$q.call(_inst$nativeElement, 'input[type="file"]')) || (inst === null || inst === void 0 || (_inst$querySelector = inst.querySelector) === null || _inst$querySelector === void 0 ? void 0 : _inst$querySelector.call(inst, 'input[type="file"]'));
253
+ input === null || input === void 0 || (_input$click = input.click) === null || _input$click === void 0 || _input$click.call(input);
254
+ } : null,
255
+ className: listType === 'picture' ? "uploadSecPad ".concat(isError && 'errorBorder') : 'uploadDiv'
182
256
  }, multipleDoc > 0 && /*#__PURE__*/_react.default.createElement("em", null, multipleDoc), /*#__PURE__*/_react.default.createElement(_antd.ConfigProvider, {
183
257
  theme: {
184
258
  token: {
@@ -196,24 +270,30 @@ function DocumentUpload(_ref) {
196
270
  rules: [{
197
271
  validator: (rule, value) => {
198
272
  if (isMandatory && !(value !== null && value !== void 0 && value.length)) {
273
+ if (typeof value === 'object' && Object.keys(value).length > 0) {
274
+ return Promise.resolve();
275
+ }
199
276
  return Promise.reject(new Error('Please upload the document.'));
200
277
  }
201
278
  return Promise.resolve();
202
279
  }
203
280
  }]
204
281
  }, /*#__PURE__*/_react.default.createElement(_antd.Upload, _extends({
205
- customRequest: () => {},
206
- listType: "picture-card",
282
+ onClick: e => e.stopPropagation(),
283
+ ref: uploadRef,
284
+ listType: listType || 'picture-card',
207
285
  fileList: fileList,
208
- onPreview: handlePreview,
286
+ onPreview: notShowPreviewButton ? undefined : handlePreview,
209
287
  onChange: handleChange,
210
288
  onRemove: handleRemove,
211
289
  showUploadList: {
212
290
  showDownloadIcon: false,
213
- showRemoveIcon: showDelete,
214
- removeIcon: /*#__PURE__*/_react.default.createElement(_icons.DeleteFilled, null),
215
- previewIcon: /*#__PURE__*/_react.default.createElement(_icons.EyeFilled, null)
216
- }
291
+ showRemoveIcon: showDelete !== undefined ? showDelete : true,
292
+ showPreviewIcon: !notShowPreviewButton,
293
+ removeIcon: file => getRemoveIcon(file),
294
+ previewIcon: notShowPreviewButton ? false : /*#__PURE__*/_react.default.createElement(_icons.EyeFilled, null)
295
+ },
296
+ maxCount: noOfUpload
217
297
  }, antDesignProps), (fileList === null || fileList === void 0 ? void 0 : fileList.length) >= noOfUpload ? null : uploadButton)))))), previewOpen && /*#__PURE__*/_react.default.createElement(_CustomViewer.default, {
218
298
  open: previewOpen,
219
299
  previewFile: previewImage,
@@ -233,12 +313,14 @@ function DocumentUpload(_ref) {
233
313
  label: 'Yes, Delete',
234
314
  type: 'danger-primary'
235
315
  }],
236
- imgSrc: _handIcon.default,
316
+ imgSrc: deleteModalConfig !== null && deleteModalConfig !== void 0 && deleteModalConfig.deleteImage ? deleteModalConfig.deleteImage : _handIcon.default,
237
317
  open: deleteConfirmation,
238
- onCancel: () => setDeleteConfirmation(false),
239
- title: "Delete Item?",
318
+ onCancel: () => {
319
+ setDeleteConfirmation(false);
320
+ },
321
+ title: deleteModalConfig !== null && deleteModalConfig !== void 0 && deleteModalConfig.title ? deleteModalConfig.title : 'Delete Item?',
240
322
  className: "delete-modal-confirmation"
241
- }, "This action will permanently delete the selected item"));
323
+ }, deleteModalConfig !== null && deleteModalConfig !== void 0 && deleteModalConfig.body ? deleteModalConfig.body : 'This action will permanently delete the selected item'));
242
324
  }
243
325
  DocumentUpload.propTypes = {
244
326
  uploadedDocuments: _propTypes.default.array,
@@ -259,7 +341,10 @@ DocumentUpload.propTypes = {
259
341
  showDeleteButton: _propTypes.default.bool,
260
342
  showRoateButton: _propTypes.default.bool,
261
343
  showZoomInButton: _propTypes.default.bool,
262
- showZoomOutButton: _propTypes.default.bool
344
+ showZoomOutButton: _propTypes.default.bool,
345
+ uploadButtonConfig: _propTypes.default.object,
346
+ // Config for upload button text
347
+ notShowPreviewButton: _propTypes.default.bool // Hide preview button
263
348
  };
264
349
  DocumentUpload.defaultProps = {
265
350
  uploadedDocuments: [],
@@ -277,6 +362,8 @@ DocumentUpload.defaultProps = {
277
362
  showDownloadButton: true,
278
363
  showRoateButton: true,
279
364
  showZoomInButton: true,
280
- showZoomOutButton: true
365
+ showZoomOutButton: true,
366
+ uploadButtonConfig: null,
367
+ notShowPreviewButton: false
281
368
  };
282
369
  var _default = exports.default = DocumentUpload;