oa-componentbook 1.0.1-stage.45 → 1.0.1-stage.451
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 +147 -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-button/styles.js +1 -1
- 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-document-details-panel/DocumentDetailsPanel.js +154 -0
- 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 +1 -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 +59 -48
- 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-progress-bar/CustomProgressBar.js +8 -4
- package/build/components/oa-component-select/CustomSelect.js +130 -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 +613 -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-table-with-search-and-filter/TableWithSearchAndFilter.js +469 -0
- package/build/components/oa-component-table-with-search-and-filter/styles.js +23 -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/CustomTextArea.js +161 -0
- package/build/components/oa-component-textarea/constants.js +39 -0
- package/build/components/oa-component-textarea/styles.js +12 -3
- package/build/components/oa-component-tooltip/CustomTooltip.js +8 -4
- package/build/components/oa-component-upload/CustomUpload.js +129 -42
- package/build/components/oa-component-viewer/CustomViewer.js +17 -11
- 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 +116 -29
- package/build/dev/oa-component-upload/styles.js +2 -2
- 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 +200 -0
- package/build/dev/oa-widget-document-side-drawer/styles.js +12 -0
- package/build/dev/oa-widget-document-viewer-with-details/DocumentViewerWithDetails.js +123 -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 +131 -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 +403 -0
- package/build/layout/EntityOverviewLayout/reducer/entityOverviewLayoutReducer.js +85 -0
- package/build/layout/EntityOverviewLayout/styles.js +13 -0
- package/build/layout/GenricLayOut/GenricLayOut.js +2421 -0
- package/build/layout/GenricLayOut/components/AppliedFilters.js +90 -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 +96 -0
- package/build/layout/GenricLayOut/components/ProfileSection.js +219 -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 +310 -0
- package/build/layout/GenricLayOut/resolver/staticConfigResolver.js +98 -0
- package/build/layout/GenricLayOut/styles.js +42 -0
- package/build/utils/download-file.js +23 -0
- package/build/widgets/oa-form-widget/FormWidget.js +577 -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 +74 -48
- 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 +83 -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 +165 -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 +91 -0
- package/build/widgets/oa-widget-sidebar/SidebarWidget.js +175 -0
- package/build/widgets/oa-widget-sidebar/components/Header.js +33 -0
- package/build/widgets/oa-widget-sidebar/styles.js +13 -0
- package/build/widgets/oa-widget-spare-part/SparePartsWidget.js +63 -35
- 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 +407 -0
- package/build/widgets/oa-widget-user-management/styles.js +15 -0
- package/package.json +3 -1
- package/build/components/oa-component-textarea/TextArea.js +0 -74
- 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
|
@@ -9,5 +9,5 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
|
9
9
|
var _templateObject, _templateObject2;
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
11
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
12
|
-
const MainStyleSec = exports.MainStyleSec = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n.ant-upload-list{\n
|
|
13
|
-
const StyledSection = exports.StyledSection = _styledComponents.default.section(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n gap: 16px;\n justify-content: space-between;\n h2{\n margin: 0;\n }\n \n @media only screen and (max-width: 600px) {\n
|
|
12
|
+
const MainStyleSec = exports.MainStyleSec = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .ant-upload-list {\n display: flex !important;\n gap: 16px !important;\n flex-wrap: wrap !important;\n }\n .ant-upload-wrapper .ant-upload-list::before {\n display: none;\n }\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload.ant-upload-select,\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload-list.ant-upload-list-picture-card\n .ant-upload-list-item-container {\n width: 96px;\n height: 96px;\n margin-block: 0;\n margin-inline: 0;\n }\n .ant-upload-select button > span.UploadImg {\n width: 24px !important;\n height: 24px;\n }\n .ant-upload-select button > span.UploadImg > img {\n width: 100% !important;\n }\n .ant-upload-list-item-container:last-child {\n margin: 0 !important;\n }\n .ant-form-item {\n margin-bottom: 0;\n }\n .ant-upload button {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 4px;\n }\n\n .uploadSecPad div {\n padding: 0 0 8px;\n }\n .anticon-upload {\n font-size: 24px;\n }\n .ant-upload-disabled .button {\n cursor: not-allowed;\n }\n .uploadSecPad {\n width: 100%;\n }\n .uploadSecPad div:last-child {\n padding: 0;\n }\n display: flex;\n flex-direction: column;\n gap: 24px;\n .ant-upload-list-item-done,\n .ant-upload-list-item-A {\n border: 1px solid var(--color-divider) !important;\n }\n\n .ant-upload-list-item-actions {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 16px;\n }\n\n .ant-upload-list-item-actions button {\n background: #212121;\n border-radius: 50px;\n height: 24px !important;\n display: flex;\n align-items: center;\n }\n .ant-btn-text:not(:disabled):not(.ant-btn-disabled):hover {\n background: #212121;\n }\n .ant-upload-list-item-actions a {\n background: #212121;\n border-radius: 50px;\n height: 24px;\n display: flex;\n }\n\n .ant-upload-wrapper\n .ant-upload-list.ant-upload-list-picture-card\n .ant-upload-list-item {\n opacity: 1 !important;\n }\n\n @media only screen and (max-width: 600px) {\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload-list.ant-upload-list-picture-card\n .ant-upload-list-item-container,\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload.ant-upload-select {\n width: 64px;\n height: 64px;\n }\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload-list.ant-upload-list-picture-card\n .ant-upload-list-item::before,\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload-list.ant-upload-list-picture-card\n .ant-upload-list-item-actions,\n .ant-upload-wrapper\n .ant-upload-list\n .ant-upload-list-item\n .ant-upload-list-item-actions\n .ant-upload-list-item-action {\n opacity: 1;\n }\n .ant-upload-list-item-actions a {\n height: 16px;\n align-items: center;\n justify-content: center;\n width: 16px !important;\n }\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload-list.ant-upload-list-picture-card\n .ant-upload-list-item-actions\n .anticon-eye,\n .ant-upload-wrapper.ant-upload-picture-card-wrapper\n .ant-upload-list.ant-upload-list-picture-card\n .ant-upload-list-item-actions\n .anticon-delete {\n font-size: 12px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0px !important;\n padding: 0px !important;\n color: #fff;\n }\n }\n"])));
|
|
13
|
+
const StyledSection = exports.StyledSection = _styledComponents.default.section(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n .errorBorder {\n border: 1px dashed #de350b !important;\n }\n\n .uploadSecPad .ant-upload-list-picture {\n padding: 0 !important;\n gap: 0 !important;\n }\n\n .uploadSecPad\n .ant-upload-wrapper\n .ant-upload-list.ant-upload-list-picture\n .ant-upload-list-item\n .ant-upload-list-item-progress {\n bottom: -2px;\n width: calc(100% - 24px);\n margin-top: 0;\n padding-inline-start: 34px;\n }\n\n .uploadSecPad .ant-upload-list-item-thumbnail {\n line-height: normal !important;\n width: 24px !important;\n height: 24px !important;\n padding: 0;\n }\n\n .uploadSecPad .ant-upload-list-item-thumbnail .anticon-file,\n .uploadSecPad .ant-upload-list-item-thumbnail .anticon-loading {\n font-size: 24px !important;\n color: #014fc5 !important;\n }\n\n .uploadSecPad .ant-upload-list-picture .ant-upload-list-item-done {\n border: none !important;\n margin: 0;\n padding: 0;\n height: auto;\n }\n\n .uploadSecPad .ant-upload-list-item-actions button,\n .uploadSecPad .ant-upload-list-item-actions button:hover {\n background: transparent !important;\n }\n\n .uploadSecPad .ant-upload-list-item-actions button .anticon-delete svg {\n color: #de350b;\n font-size: 18px;\n }\n\n .uploadSecPad\n .ant-upload-wrapper\n .ant-upload-list.ant-upload-list-picture\n .ant-upload-list-item-uploading\n .ant-upload-list-item-name {\n color: #014fc5;\n }\n .uploadSecPad {\n width: 100%;\n border-radius: 4px;\n border: 1px dashed #014fc5;\n background: #f6f6f6;\n padding: 24px 16px;\n cursor: pointer;\n }\n\n .uploadSecPad .ant-upload-list-item-container {\n width: 100%;\n }\n\n .uploadSecPad button {\n display: flex;\n flex-direction: row;\n gap: 8px;\n padding: 0;\n margin: 0;\n color: #014fc5;\n cursor: pointer;\n }\n .uploadSecPad .ant-form-item-control-input {\n min-height: auto;\n }\n .uploadSecPad .ant-upload-select {\n padding: 0px;\n }\n display: flex;\n gap: 16px;\n justify-content: space-between;\n h2 {\n margin: 0;\n }\n\n .uploadSecPad\n .ant-upload-wrapper\n .ant-upload-list.ant-upload-list-picture\n .ant-upload-list-item {\n height: auto;\n padding: 0;\n border: none;\n border-radius: 0;\n border-style: none !important;\n margin: 0;\n }\n\n @media only screen and (max-width: 600px) {\n .ant-upload-list-item-actions button {\n height: 16px !important;\n width: 16px !important;\n justify-content: center;\n }\n .ant-upload-list-item-actions a {\n height: 16px;\n width: 16px !important;\n align-items: center;\n justify-content: center;\n }\n .ant-upload-list-item-actions {\n gap: 8px;\n }\n .ant-upload button span + div {\n display: none;\n }\n }\n"])));
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.assign.js");
|
|
4
|
+
require("core-js/modules/es.weak-map.js");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
10
|
+
require("core-js/modules/es.array.includes.js");
|
|
11
|
+
require("core-js/modules/es.string.includes.js");
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
var _styles = require("./styles.js");
|
|
14
|
+
var _CustomCheckBox = _interopRequireDefault(require("../../components/oa-component-checkbox/CustomCheckBox"));
|
|
15
|
+
var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
|
|
16
|
+
var _CustomButton = _interopRequireDefault(require("../../components/oa-component-button/CustomButton"));
|
|
17
|
+
var _MaterialIcon = _interopRequireDefault(require("../../components/oa-component-icons/MaterialIcon"));
|
|
18
|
+
var _CustomDocumentViewer = _interopRequireDefault(require("../oa-component-document-viewer/CustomDocumentViewer"));
|
|
19
|
+
var _Close = _interopRequireDefault(require("@material-ui/icons/Close"));
|
|
20
|
+
var _reactPdf = require("react-pdf");
|
|
21
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
+
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); }
|
|
24
|
+
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; }
|
|
25
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /* eslint-disable */
|
|
26
|
+
_reactPdf.pdfjs.GlobalWorkerOptions.workerSrc = "https://cdnjs.cloudflare.com/ajax/libs/pdf.js/".concat(_reactPdf.pdfjs.version, "/pdf.worker.min.js");
|
|
27
|
+
function DocumentSideModal(_ref) {
|
|
28
|
+
let {
|
|
29
|
+
headerIcon,
|
|
30
|
+
headerText,
|
|
31
|
+
infoIcon,
|
|
32
|
+
infoText,
|
|
33
|
+
onClose,
|
|
34
|
+
customDocumentViewerProps,
|
|
35
|
+
initialSelectedPages,
|
|
36
|
+
initialSlide,
|
|
37
|
+
updateSelectedPages,
|
|
38
|
+
maxPages
|
|
39
|
+
} = _ref;
|
|
40
|
+
const [carouselPageNumber, setcarouselPageNumber] = (0, _react.useState)(initialSlide !== null && initialSlide !== void 0 ? initialSlide : 0);
|
|
41
|
+
const [selectedPages, setSelectedPages] = (0, _react.useState)([]); //selected page
|
|
42
|
+
|
|
43
|
+
(0, _react.useEffect)(() => {
|
|
44
|
+
if (initialSelectedPages) {
|
|
45
|
+
setSelectedPages(initialSelectedPages);
|
|
46
|
+
}
|
|
47
|
+
}, [initialSelectedPages]);
|
|
48
|
+
(0, _react.useEffect)(() => {
|
|
49
|
+
document.body.style.overflow = "hidden";
|
|
50
|
+
return () => {
|
|
51
|
+
document.body.style.overflow = "";
|
|
52
|
+
};
|
|
53
|
+
}, []);
|
|
54
|
+
const pageRefs = (0, _react.useRef)([]);
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Handles the checkbox change event.
|
|
58
|
+
* @param {boolean} checked if the checkbox is checked or not.
|
|
59
|
+
* The function will add or remove the current page number from the selectedPages state
|
|
60
|
+
* depending on the checked status. If the checkbox is checked and the selectedPages state
|
|
61
|
+
* length is less than maxPages (default 2), it will add the current page number to the selectedPages state.
|
|
62
|
+
* If the checkbox is unchecked, it will remove the current page number from the selectedPages state.
|
|
63
|
+
*/
|
|
64
|
+
const handleCheckboxChange = checked => {
|
|
65
|
+
setSelectedPages(prevSelectedPages => {
|
|
66
|
+
if (checked) {
|
|
67
|
+
if (!prevSelectedPages.includes(carouselPageNumber) && prevSelectedPages.length < maxPages) {
|
|
68
|
+
return [...prevSelectedPages, carouselPageNumber];
|
|
69
|
+
}
|
|
70
|
+
return prevSelectedPages;
|
|
71
|
+
} else {
|
|
72
|
+
return prevSelectedPages.filter(page => page !== carouselPageNumber);
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Updates the current carousel page number.
|
|
79
|
+
*
|
|
80
|
+
* @param {number} value - The new page number to set for the carousel.
|
|
81
|
+
*/
|
|
82
|
+
|
|
83
|
+
const setcarouselPageNumberHandler = value => {
|
|
84
|
+
setcarouselPageNumber(value);
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Deletes the page from selectedPages state.
|
|
89
|
+
* @param {number} pageNumber - The page number to delete from the selectedPages state.
|
|
90
|
+
*/
|
|
91
|
+
const deleteSelectedPage = pageNumber => {
|
|
92
|
+
setSelectedPages(prevSelected => {
|
|
93
|
+
return prevSelected === null || prevSelected === void 0 ? void 0 : prevSelected.filter(item => item !== pageNumber);
|
|
94
|
+
});
|
|
95
|
+
};
|
|
96
|
+
const isPageSelected = (0, _react.useMemo)(() => selectedPages === null || selectedPages === void 0 ? void 0 : selectedPages.includes(carouselPageNumber), [selectedPages, carouselPageNumber]);
|
|
97
|
+
const disableCheckbox = (0, _react.useMemo)(() => !isPageSelected && selectedPages.length >= maxPages, [isPageSelected, selectedPages]);
|
|
98
|
+
return /*#__PURE__*/_react.default.createElement(_styles.Wrapper, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
99
|
+
className: "deviceName"
|
|
100
|
+
}, /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
101
|
+
className: "type-t2-700",
|
|
102
|
+
color: "primary-background"
|
|
103
|
+
}, headerText), /*#__PURE__*/_react.default.createElement("div", {
|
|
104
|
+
style: {
|
|
105
|
+
cursor: "pointer"
|
|
106
|
+
}
|
|
107
|
+
}, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
|
|
108
|
+
icon: _Close.default,
|
|
109
|
+
size: 20,
|
|
110
|
+
onClick: onClose
|
|
111
|
+
}))), /*#__PURE__*/_react.default.createElement("div", {
|
|
112
|
+
className: "previewSec"
|
|
113
|
+
}, /*#__PURE__*/_react.default.createElement(_CustomDocumentViewer.default, _extends({}, customDocumentViewerProps, {
|
|
114
|
+
setcarouselPageNumberHandler: setcarouselPageNumberHandler,
|
|
115
|
+
initialSlide: initialSlide,
|
|
116
|
+
selectedPages: selectedPages,
|
|
117
|
+
isFooterVisible: selectedPages.length > 0 // <-- new prop
|
|
118
|
+
,
|
|
119
|
+
carouselPageNumber: carouselPageNumber,
|
|
120
|
+
deleteSelectedPage: deleteSelectedPage
|
|
121
|
+
}))), /*#__PURE__*/_react.default.createElement("div", {
|
|
122
|
+
className: "footerSec"
|
|
123
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
124
|
+
className: "containerWidth"
|
|
125
|
+
}, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_CustomCheckBox.default, {
|
|
126
|
+
label: "Select Page ".concat(carouselPageNumber + 1),
|
|
127
|
+
checked: isPageSelected,
|
|
128
|
+
disabled: disableCheckbox,
|
|
129
|
+
onChange: e => handleCheckboxChange(e.target.checked)
|
|
130
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
131
|
+
className: "padding-top-4"
|
|
132
|
+
}, /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
133
|
+
className: "type-b3-400",
|
|
134
|
+
color: disableCheckbox ? "warning" : "secondary-content"
|
|
135
|
+
}, "(Maximum ".concat(maxPages, " pages can be selected)")))), /*#__PURE__*/_react.default.createElement(_CustomButton.default, {
|
|
136
|
+
label: selectedPages.length === 0 ? "Selected" : "".concat(selectedPages.length, " ").concat(selectedPages.length > 1 ? "" : "", " Selected"),
|
|
137
|
+
disabled: selectedPages.length === 0,
|
|
138
|
+
onClick: () => updateSelectedPages(selectedPages)
|
|
139
|
+
}))));
|
|
140
|
+
}
|
|
141
|
+
DocumentSideModal.propTypes = {
|
|
142
|
+
headerText: _propTypes.default.string,
|
|
143
|
+
initialSlide: _propTypes.default.number,
|
|
144
|
+
initialSelectedPages: _propTypes.default.arrayOf(_propTypes.default.number),
|
|
145
|
+
headerIcon: _propTypes.default.elementType,
|
|
146
|
+
// assuming it's a component like an Icon
|
|
147
|
+
infoIcon: _propTypes.default.elementType,
|
|
148
|
+
infoText: _propTypes.default.string,
|
|
149
|
+
onClose: _propTypes.default.func.isRequired,
|
|
150
|
+
customDocumentViewerProps: _propTypes.default.object,
|
|
151
|
+
updateSelectedPages: _propTypes.default.func.isRequired,
|
|
152
|
+
maxPages: _propTypes.default.number
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
// ✅ Default Props
|
|
156
|
+
DocumentSideModal.defaultProps = {
|
|
157
|
+
headerText: "",
|
|
158
|
+
initialSelectedPages: [],
|
|
159
|
+
initialSlide: 0,
|
|
160
|
+
headerIcon: null,
|
|
161
|
+
infoIcon: null,
|
|
162
|
+
infoText: "",
|
|
163
|
+
customDocumentViewerProps: {},
|
|
164
|
+
maxPages: 2
|
|
165
|
+
};
|
|
166
|
+
var _default = exports.default = DocumentSideModal;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.Wrapper = 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 Wrapper = exports.Wrapper = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n.previewSec > div,.previewSec > div > div,.react-pdf__Document .ant-carousel,.slick-list,.slick-track,.slick-slide,.slick-slide > div,.slick-slide > div > div{\nheight: 100%;\n}\n.react-pdf__Document{\nheight: 100% !important;\noverflow: hidden !important;\nposition: relative;\n}\n.imgViewer .react-pdf__Page canvas{\n height: 100% !important;\n width: 100% !important;\n}\n.slick-slider{\n height: 100%;\n}\n display: flex;\n flex-direction: column;\n height: 100dvh;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 1000;\n background: rgba(0, 0, 0, 0.70);\n @media screen and (-webkit-min-device-pixel-ratio: 0) {\n @supports (-webkit-overflow-scrolling: touch) {\n height: auto;\n}\n}\n@media only screen and (max-width: 600px) {\n height: auto;\n}\n \n .react-pdf__Page{\n display: flex !important;\n justify-content: center;\n \n align-items: top;\n\n }\n .carouselFooter{\n height: 88px !important;\n width: 100%;\n color: #fff;\n position: fixed;\n bottom: 72px;\n display: flex;\n align-items: center;\n background: rgba(0, 0, 0, 0.70);\n box-shadow: 0px -4px 12px 0px rgba(0, 0, 0, 0.14);\n \n }\n .footerContainer{\n max-width: 768px;\n margin: 0 auto;\n display: flex;\n gap: 20px;\n width: 100%;\n }\n .imgViewer{\n position: relative;\n width: 56px;\n height: 56px;\n border: 1px solid var(--color-primary-background);\n border-radius: 8px;\n }\n // .imgViewer .react-pdf__Page canvas{\n // position: absolute;\n // top: 0;\n // width: 100%;\n // }\n .imgViewer .react-pdf__Document{\n position: absolute;\n top: 0;\n width: 100%;\n border-radius: 8px;\n }\n .imgViewer svg{\n position: absolute;\n right: -9px;\n color: #fff;\n top: -9px;\n z-index: 9;\n background: var(--color-primary);\n border-radius: 50%;\n cursor: pointer;\n font-weight: bolder;\n padding: 2px;\n }\n .slick-prev, .slick-next{\n display: flex !important;\n }\n .ant-carousel .slick-prev::after, .ant-carousel .slick-next::after {\n display: none;\n }\n .ant-carousel .slick-next:hover,.slick-prev:hover{\n color: #fff;\n background: #212121;\n }\n .ant-carousel .slick-next::before ,.ant-carousel .slick-prev::before {display: none;}\n .slick-slide > div > div{\n display: flex !important;\n flex-direction: column-reverse;\n justify-content: center;\n align-items: center;\n padding: 0px 0 0;\n }\n .slick-disabled{\n display: none !important;\n }\n // .react-transform-component{\n // height: calc(100vh - 178px) !important;\n // }\n \n .react-pdf__Page canvas{\n width: max-content !important;\n height: calc(100dvh - 72px - 48px) !important;\n }\n .react-transform-wrapper{\n overflow-y: hidden !important;\n padding: 0 !important;\n height: 100% !important;\n }\n // .react-pdf__Page__textContent{\n // height: 80% !important;\n // width: auto !important;\n // }\n .deviceName{\n height: 48px;\n background: #212121;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n .deviceName svg{\n position: absolute;\n right: 24px;\n top: 16px;\n color: #FFF;\n }\n .infoSec{\n background: var(--color-background-warning);\n height: 48px;\n color:#212121;\n align-items: center;\n justify-content: center;\n \n }\n .containerWidth{\n max-width: 768px;\n margin: 0 auto;\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 0 !important;\n }\n .containerWidth div{\n display: flex;\n align-items: center;\n gap: 8px;\n }\n .previewSec{\n flex: 1;\n overflow: hidden;\n }\n .withFooter{\n margin: 0 0 84px !important;\n }\n .customDocumentViewerOverlay{\n display: flex;\n flex-direction: column-reverse;\n height: calc(100vh - 180px);\n width: 100%;\n align-items: anchor-center;\n }\n .pageNumber{\n white-space: nowrap;\n }\n .customDocumentViewerOverlayHeader{\n position: fixed !important;\n bottom: 82px !important;\n }\n .controlsWithFooter .customDocumentViewerOverlayHeader{\n bottom: 170px !important;\n }\n .footerSec{\n background: var(--color-primary-background);\n height: 72px;\n }\n .footerSec .containerWidth{\n height: 72px;\n }\n .footerSec .containerWidth div{\n flex-direction: column;\n align-items: flex-start;\n gap: 0;\n }\n\n @media only screen and (max-width: 600px) {\n \n .deviceName {\n justify-content: start;\n padding: 0 16px;\n}\n .footerSec{\n padding: 0 16px;\n }\n .carouselFooter{\n display: flex;\n height: 72px;\n justify-content: flex-start;\n align-items: center;\n}\n .footerContainer{\n padding: 0 16px;\n width: 100%;\n }\n .infoSec{\n padding: 0 16px;\n }\n}\n"])));
|
|
12
|
+
var _default = exports.default = Wrapper;
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.assign.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
require("react-pdf/dist/esm/Page/AnnotationLayer.css");
|
|
11
|
+
var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
|
|
12
|
+
var _CustomDrawer = _interopRequireDefault(require("../../components/oa-component-drawer/CustomDrawer"));
|
|
13
|
+
var _CustomDocumentViewer = _interopRequireDefault(require("../oa-component-document-viewer/CustomDocumentViewer"));
|
|
14
|
+
var _CustomTabs = _interopRequireDefault(require("../../components/oa-component-tabs/CustomTabs"));
|
|
15
|
+
var _CustomTag = _interopRequireDefault(require("../../components/oa-component-tag/CustomTag"));
|
|
16
|
+
var _CustomButton = _interopRequireDefault(require("../../components/oa-component-button/CustomButton"));
|
|
17
|
+
var _CustomTooltip = _interopRequireDefault(require("../../components/oa-component-tooltip/CustomTooltip"));
|
|
18
|
+
var _MaterialIcon = _interopRequireDefault(require("../../components/oa-component-icons/MaterialIcon"));
|
|
19
|
+
var _Close = _interopRequireDefault(require("@material-ui/icons/Close"));
|
|
20
|
+
var _Check = _interopRequireDefault(require("@material-ui/icons/Check"));
|
|
21
|
+
var _styles = _interopRequireDefault(require("./styles"));
|
|
22
|
+
const _excluded = ["title", "handleCloseDrawer", "documentConfig", "drawerWidth", "drawerButtonConfig", "drawerTagConfig", "onlyDocumentView", "containerClassName"];
|
|
23
|
+
/* eslint-disable */
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
26
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
27
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
28
|
+
/**
|
|
29
|
+
* DocumentSideDrawer Component
|
|
30
|
+
*
|
|
31
|
+
* A side drawer component that displays documents with optional metadata.
|
|
32
|
+
* Supports both single document (backward compatibility) and multiple documents (new feature).
|
|
33
|
+
*
|
|
34
|
+
* @param {Object} props - Component props
|
|
35
|
+
* @param {string} props.title - Drawer title
|
|
36
|
+
* @param {Function} props.handleCloseDrawer - Function to close the drawer
|
|
37
|
+
* @param {Object|Array} props.documentConfig - Single document config or array of document configs
|
|
38
|
+
* @param {string} props.drawerWidth - Custom drawer width
|
|
39
|
+
* @param {Object} props.drawerButtonConfig - Button configuration for the drawer
|
|
40
|
+
* @param {Object} props.drawerTagConfig - Tag configuration (heading, tag, viewDetails)
|
|
41
|
+
* @param {boolean} props.onlyDocumentView - Whether to show only document viewer
|
|
42
|
+
* @param {React.ReactNode} props.children - Additional content to render
|
|
43
|
+
*/
|
|
44
|
+
function DocumentSideDrawer(_ref) {
|
|
45
|
+
var _drawerTagConfig$view;
|
|
46
|
+
let {
|
|
47
|
+
title,
|
|
48
|
+
handleCloseDrawer,
|
|
49
|
+
documentConfig,
|
|
50
|
+
drawerWidth,
|
|
51
|
+
drawerButtonConfig,
|
|
52
|
+
drawerTagConfig,
|
|
53
|
+
onlyDocumentView,
|
|
54
|
+
containerClassName
|
|
55
|
+
} = _ref,
|
|
56
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
57
|
+
// Calculate the drawer width based on documentConfig or fallback to 480
|
|
58
|
+
const calculatedWidth = drawerWidth !== null && drawerWidth !== void 0 ? drawerWidth : documentConfig ? 1200 : 480;
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Determines if documentConfig contains multiple documents
|
|
62
|
+
* @returns {boolean} True if documentConfig is an array with multiple items
|
|
63
|
+
*/
|
|
64
|
+
const isMultipleDocuments = Array.isArray(documentConfig) && documentConfig.length > 1;
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Renders the document viewer(s) based on configuration
|
|
68
|
+
* @returns {React.ReactNode} Document viewer component(s)
|
|
69
|
+
*/
|
|
70
|
+
const renderDocumentViewer = () => {
|
|
71
|
+
if (!documentConfig) return null;
|
|
72
|
+
|
|
73
|
+
// Handle multiple documents with tabs
|
|
74
|
+
if (isMultipleDocuments) {
|
|
75
|
+
return /*#__PURE__*/_react.default.createElement(_CustomTabs.default, {
|
|
76
|
+
data: {
|
|
77
|
+
tabs: documentConfig.map((doc, index) => ({
|
|
78
|
+
body: /*#__PURE__*/_react.default.createElement(_CustomDocumentViewer.default, _extends({}, doc, {
|
|
79
|
+
onlyDocumentView: onlyDocumentView
|
|
80
|
+
})),
|
|
81
|
+
key: String(index + 1),
|
|
82
|
+
label: doc.label || "Document ".concat(index + 1)
|
|
83
|
+
}))
|
|
84
|
+
},
|
|
85
|
+
"data-test": "tabs",
|
|
86
|
+
type: "card"
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// Handle single document (backward compatibility)
|
|
91
|
+
const singleDocument = Array.isArray(documentConfig) ? documentConfig[0] : documentConfig;
|
|
92
|
+
return /*#__PURE__*/_react.default.createElement(_CustomDocumentViewer.default, _extends({}, singleDocument, {
|
|
93
|
+
onlyDocumentView: onlyDocumentView
|
|
94
|
+
}));
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Renders the tooltip content for view details
|
|
99
|
+
* @param {Array} items - Array of detail items
|
|
100
|
+
* @param {string} title - Tooltip title
|
|
101
|
+
* @returns {React.ReactNode} Tooltip content
|
|
102
|
+
*
|
|
103
|
+
*/
|
|
104
|
+
|
|
105
|
+
const renderTooltipContent = (items, title) => {
|
|
106
|
+
const totalItems = (items === null || items === void 0 ? void 0 : items.length) || 0;
|
|
107
|
+
if (totalItems === 0) return null;
|
|
108
|
+
const numColumns = totalItems === 1 ? 1 : 2;
|
|
109
|
+
const col1Size = Math.ceil(totalItems / numColumns);
|
|
110
|
+
const col2Size = totalItems - col1Size;
|
|
111
|
+
const columns = [items.slice(0, col1Size),
|
|
112
|
+
// First column
|
|
113
|
+
items.slice(col1Size) // Second column
|
|
114
|
+
];
|
|
115
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, title && /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
116
|
+
typography: "type-sl1-700",
|
|
117
|
+
color: "secondary-content"
|
|
118
|
+
}, title), /*#__PURE__*/_react.default.createElement("div", {
|
|
119
|
+
className: "tooltip-grid",
|
|
120
|
+
style: {
|
|
121
|
+
flexDirection: totalItems === 1 ? "column" : "row",
|
|
122
|
+
width: totalItems === 1 ? "100%" : "auto"
|
|
123
|
+
}
|
|
124
|
+
}, columns.map((columnItems, colIndex) => /*#__PURE__*/_react.default.createElement("div", {
|
|
125
|
+
key: "col-".concat(colIndex),
|
|
126
|
+
className: "tooltip-column"
|
|
127
|
+
}, columnItems.map(item => /*#__PURE__*/_react.default.createElement("li", {
|
|
128
|
+
key: item.title,
|
|
129
|
+
className: "tooltip-item"
|
|
130
|
+
}, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
|
|
131
|
+
size: 20,
|
|
132
|
+
icon: item.type === "positive" ? _Check.default : _Close.default,
|
|
133
|
+
color: item.type === "positive" ? "positive" : "negative"
|
|
134
|
+
}), /*#__PURE__*/_react.default.createElement("p", null, item.title)))))));
|
|
135
|
+
};
|
|
136
|
+
return /*#__PURE__*/_react.default.createElement(_CustomDrawer.default, _extends({
|
|
137
|
+
buttonConfig: drawerButtonConfig,
|
|
138
|
+
"data-test": "document-side-drawer",
|
|
139
|
+
className: "documentDrawer",
|
|
140
|
+
width: calculatedWidth,
|
|
141
|
+
onClose: handleCloseDrawer,
|
|
142
|
+
title: title
|
|
143
|
+
}, props), /*#__PURE__*/_react.default.createElement(_styles.default, {
|
|
144
|
+
className: containerClassName
|
|
145
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
146
|
+
className: "viewerContainer"
|
|
147
|
+
}, renderDocumentViewer(), !onlyDocumentView && /*#__PURE__*/_react.default.createElement("div", {
|
|
148
|
+
className: "rightContSection"
|
|
149
|
+
}, drawerTagConfig && /*#__PURE__*/_react.default.createElement("div", {
|
|
150
|
+
className: "grayBoxSec"
|
|
151
|
+
}, drawerTagConfig.heading && /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
152
|
+
className: "type-t2-700",
|
|
153
|
+
color: "primary-content"
|
|
154
|
+
}, drawerTagConfig.heading), /*#__PURE__*/_react.default.createElement("div", {
|
|
155
|
+
className: "margin-top-12 statusSec"
|
|
156
|
+
}, drawerTagConfig.tag && (
|
|
157
|
+
// Conditionally render CustomTag or Typography based on tag type
|
|
158
|
+
drawerTagConfig.tag.type ? /*#__PURE__*/_react.default.createElement(_CustomTag.default, {
|
|
159
|
+
label: drawerTagConfig.tag.label,
|
|
160
|
+
type: drawerTagConfig.tag.type
|
|
161
|
+
}) : /*#__PURE__*/_react.default.createElement(_Typography.default, {
|
|
162
|
+
typography: "type-b2-400",
|
|
163
|
+
color: "primary-content"
|
|
164
|
+
}, drawerTagConfig.tag.label)), ((_drawerTagConfig$view = drawerTagConfig.viewDetails) === null || _drawerTagConfig$view === void 0 || (_drawerTagConfig$view = _drawerTagConfig$view.items) === null || _drawerTagConfig$view === void 0 ? void 0 : _drawerTagConfig$view.length) > 0 && /*#__PURE__*/_react.default.createElement(_CustomTooltip.default, {
|
|
165
|
+
overlayClassName: "multipleDocumentTooltip",
|
|
166
|
+
isDisplayed: true,
|
|
167
|
+
placement: "bottomRight",
|
|
168
|
+
title: renderTooltipContent(drawerTagConfig.viewDetails.items, drawerTagConfig.viewDetails.title)
|
|
169
|
+
}, /*#__PURE__*/_react.default.createElement(_CustomButton.default, {
|
|
170
|
+
type: "text-only",
|
|
171
|
+
label: drawerTagConfig.viewDetails.label
|
|
172
|
+
})))), props.children))));
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
// Define the prop types to enforce correct data types for the props
|
|
176
|
+
DocumentSideDrawer.propTypes = {
|
|
177
|
+
title: _propTypes.default.string,
|
|
178
|
+
handleCloseDrawer: _propTypes.default.func,
|
|
179
|
+
documentConfig: _propTypes.default.oneOfType([_propTypes.default.object,
|
|
180
|
+
// Single document configuration
|
|
181
|
+
_propTypes.default.arrayOf(_propTypes.default.object) // Array of document configurations
|
|
182
|
+
]),
|
|
183
|
+
drawerWidth: _propTypes.default.string,
|
|
184
|
+
drawerButtonConfig: _propTypes.default.object,
|
|
185
|
+
drawerTagConfig: _propTypes.default.object,
|
|
186
|
+
onlyDocumentView: _propTypes.default.bool,
|
|
187
|
+
containerClassName: _propTypes.default.string
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
// Default props to provide fallback values for optional props
|
|
191
|
+
DocumentSideDrawer.defaultProps = {
|
|
192
|
+
title: "",
|
|
193
|
+
handleCloseDrawer: () => {},
|
|
194
|
+
documentConfig: null,
|
|
195
|
+
drawerWidth: null,
|
|
196
|
+
drawerButtonConfig: null,
|
|
197
|
+
drawerTagConfig: null,
|
|
198
|
+
onlyDocumentView: false
|
|
199
|
+
};
|
|
200
|
+
var _default = exports.default = DocumentSideDrawer;
|
|
@@ -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 ViewerContainer = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n.ant-tabs-nav{\n margin: 0;\n}\n .ant-tabs-top>.ant-tabs-nav::before {\n border: none;\n border-right: 1px solid #E0E0E0;\n }\n .ant-tabs-content-holder .customDocumentViewerOverlayHeader{\n bottom: 60px;\n }\n .ant-tabs-tab{\n border-radius: 0px !important;\n border: none !important;\n border-bottom: 2px solid transparent !important;\n }\n .ant-tabs-tab-active{\n border-bottom: 2px solid var(--color-primary) !important;\n }\n .viewerContainer > div {\n flex: 1;\n box-sizing: border-box;\n }\n .viewerContainer {\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n }\n .rightContSection {\n display: flex;\n flex-direction: column;\n padding: 24px;\n min-width: 300px;\n max-width: 450px;\n overflow-x: visible;\n }\n /* Styles specific to DocumentViewerWithDetails */\n &.documentViewerWithDetails {\n .viewerContainer > div:first-child {\n flex: 1;\n box-sizing: border-box;\n min-width: 0;\n }\n .rightContSection {\n flex: 0 0 auto;\n width: fit-content;\n min-width: auto;\n max-width: none;\n }\n }\n .grayBoxSec {\n border-radius: 8px;\n background: #f6f6f6;\n padding: 12px 16px;\n }\n .statusSec {\n display: flex;\n flex-direction: row;\n align-items: center;\n }\n .statusSec button {\n margin-left: 8px;\n }\n"])));
|
|
12
|
+
var _default = exports.default = ViewerContainer;
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.assign.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _DocumentSideDrawer = _interopRequireDefault(require("../oa-widget-document-side-drawer/DocumentSideDrawer"));
|
|
11
|
+
var _DocumentDetailsPanel = _interopRequireDefault(require("../../components/oa-component-document-details-panel/DocumentDetailsPanel"));
|
|
12
|
+
const _excluded = ["title", "onClose", "drawerWidth", "fileUrl", "fileType", "documentConfig", "detailsTitle", "sectionTitle", "details", "actions", "children"];
|
|
13
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
15
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
16
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
17
|
+
/**
|
|
18
|
+
* DocumentViewerWithDetails Component
|
|
19
|
+
*
|
|
20
|
+
* A split-view component that displays a document viewer on the left
|
|
21
|
+
* and a details panel with actions on the right.
|
|
22
|
+
*
|
|
23
|
+
* Uses DocumentSideDrawer and DocumentDetailsPanel internally.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* <DocumentViewerWithDetails
|
|
27
|
+
* title="VIEW DOCUMENT"
|
|
28
|
+
* fileUrl="/path/to/document.pdf"
|
|
29
|
+
* fileType="pdf"
|
|
30
|
+
* detailsTitle="Document Information"
|
|
31
|
+
* sectionTitle="DETAILS"
|
|
32
|
+
* details={[
|
|
33
|
+
* { label: 'Date', value: '17 Nov 2025' },
|
|
34
|
+
* { label: 'Document Number', value: 'DOC-12345' },
|
|
35
|
+
* ]}
|
|
36
|
+
* actions={[
|
|
37
|
+
* { label: 'Download', onClick: () => {}, icon: <DownloadIcon /> },
|
|
38
|
+
* ]}
|
|
39
|
+
* onClose={() => setIsOpen(false)}
|
|
40
|
+
* />
|
|
41
|
+
*/
|
|
42
|
+
function DocumentViewerWithDetails(_ref) {
|
|
43
|
+
let {
|
|
44
|
+
// Drawer props
|
|
45
|
+
title,
|
|
46
|
+
onClose,
|
|
47
|
+
drawerWidth,
|
|
48
|
+
// Document props
|
|
49
|
+
fileUrl,
|
|
50
|
+
fileType,
|
|
51
|
+
documentConfig,
|
|
52
|
+
// Details panel props
|
|
53
|
+
detailsTitle,
|
|
54
|
+
sectionTitle,
|
|
55
|
+
details,
|
|
56
|
+
actions,
|
|
57
|
+
// Additional children
|
|
58
|
+
children
|
|
59
|
+
} = _ref,
|
|
60
|
+
restProps = _objectWithoutProperties(_ref, _excluded);
|
|
61
|
+
// Build document config from fileUrl or use provided documentConfig
|
|
62
|
+
const finalDocumentConfig = documentConfig || (fileUrl ? {
|
|
63
|
+
fileUrl,
|
|
64
|
+
fileType: fileType || 'pdf'
|
|
65
|
+
} : null);
|
|
66
|
+
return /*#__PURE__*/_react.default.createElement(_DocumentSideDrawer.default, _extends({
|
|
67
|
+
title: title,
|
|
68
|
+
handleCloseDrawer: onClose,
|
|
69
|
+
documentConfig: finalDocumentConfig,
|
|
70
|
+
drawerWidth: drawerWidth,
|
|
71
|
+
containerClassName: "documentViewerWithDetails"
|
|
72
|
+
}, restProps), /*#__PURE__*/_react.default.createElement(_DocumentDetailsPanel.default, {
|
|
73
|
+
title: detailsTitle,
|
|
74
|
+
sectionTitle: sectionTitle,
|
|
75
|
+
details: details,
|
|
76
|
+
actions: actions
|
|
77
|
+
}, children));
|
|
78
|
+
}
|
|
79
|
+
DocumentViewerWithDetails.propTypes = {
|
|
80
|
+
/** Drawer title displayed in the header */
|
|
81
|
+
title: _propTypes.default.string,
|
|
82
|
+
/** Callback function when drawer is closed */
|
|
83
|
+
onClose: _propTypes.default.func,
|
|
84
|
+
/** Custom drawer width (default: 1200) */
|
|
85
|
+
drawerWidth: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
86
|
+
/** URL of the document to display */
|
|
87
|
+
fileUrl: _propTypes.default.string,
|
|
88
|
+
/** Type of document: 'pdf', 'pdfWithCarousel', or 'image' */
|
|
89
|
+
fileType: _propTypes.default.oneOf(['pdf', 'pdfWithCarousel', 'image']),
|
|
90
|
+
/** Full document config (alternative to fileUrl) */
|
|
91
|
+
documentConfig: _propTypes.default.object,
|
|
92
|
+
/** Title text for the details panel */
|
|
93
|
+
detailsTitle: _propTypes.default.string,
|
|
94
|
+
/** Section header text (e.g., "DETAILS") */
|
|
95
|
+
sectionTitle: _propTypes.default.string,
|
|
96
|
+
/** Array of detail items to display */
|
|
97
|
+
details: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
98
|
+
label: _propTypes.default.string.isRequired,
|
|
99
|
+
value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired
|
|
100
|
+
})),
|
|
101
|
+
/** Array of action buttons to display */
|
|
102
|
+
actions: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
103
|
+
label: _propTypes.default.string.isRequired,
|
|
104
|
+
onClick: _propTypes.default.func,
|
|
105
|
+
icon: _propTypes.default.node
|
|
106
|
+
})),
|
|
107
|
+
/** Additional content to render in the details panel */
|
|
108
|
+
children: _propTypes.default.node
|
|
109
|
+
};
|
|
110
|
+
DocumentViewerWithDetails.defaultProps = {
|
|
111
|
+
title: null,
|
|
112
|
+
onClose: () => {},
|
|
113
|
+
drawerWidth: '1200',
|
|
114
|
+
fileUrl: null,
|
|
115
|
+
fileType: null,
|
|
116
|
+
documentConfig: null,
|
|
117
|
+
detailsTitle: null,
|
|
118
|
+
sectionTitle: null,
|
|
119
|
+
details: [],
|
|
120
|
+
actions: [],
|
|
121
|
+
children: null
|
|
122
|
+
};
|
|
123
|
+
var _default = exports.default = DocumentViewerWithDetails;
|
|
@@ -12,13 +12,14 @@ var _Elevation = _interopRequireDefault(require("./Elevation"));
|
|
|
12
12
|
var _GridLayout = _interopRequireDefault(require("./GridLayout"));
|
|
13
13
|
var _SpacingScales = _interopRequireDefault(require("./SpacingScales"));
|
|
14
14
|
var _Typographies = _interopRequireDefault(require("./Typographies"));
|
|
15
|
+
var _commonStyles = _interopRequireDefault(require("./commonStyles"));
|
|
15
16
|
require("antd/dist/reset.css");
|
|
16
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
18
|
function GlobalCss(_ref) {
|
|
18
19
|
let {
|
|
19
20
|
children
|
|
20
21
|
} = _ref;
|
|
21
|
-
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_BorderRadius.default, null), /*#__PURE__*/_react.default.createElement(_SpacingScales.default, null), /*#__PURE__*/_react.default.createElement(_ColorVariables.default, null), /*#__PURE__*/_react.default.createElement(_Elevation.default, null), /*#__PURE__*/_react.default.createElement(_GridLayout.default, null), /*#__PURE__*/_react.default.createElement(_Typographies.default, null), children);
|
|
22
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_BorderRadius.default, null), /*#__PURE__*/_react.default.createElement(_SpacingScales.default, null), /*#__PURE__*/_react.default.createElement(_ColorVariables.default, null), /*#__PURE__*/_react.default.createElement(_Elevation.default, null), /*#__PURE__*/_react.default.createElement(_GridLayout.default, null), /*#__PURE__*/_react.default.createElement(_commonStyles.default, null), /*#__PURE__*/_react.default.createElement(_Typographies.default, null), children);
|
|
22
23
|
}
|
|
23
24
|
GlobalCss.propTypes = {
|
|
24
25
|
children: _propTypes.default.node.isRequired
|
|
@@ -21,5 +21,5 @@ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(
|
|
|
21
21
|
// TODO: Figure out a way to make this work with storybook.
|
|
22
22
|
// Can be used to wrap the entire application, to make these styles available to every component
|
|
23
23
|
|
|
24
|
-
const GridLayout = (0, _styledComponents.createGlobalStyle)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n.container {\n max-width: 1154px;\n margin: 0 auto;\n padding: 0 16px;\n}\n\n.container-fluid {\n width: 100%;\n padding: 0 16px;\n}\n\n.row {\n display: flex;\n flex-direction: column;\n}\n\n.gutter {\n padding: 0 24px 0 0;\n}\n\n.row::after {\n content: \"\";\n clear: both;\n display: table;\n}\n\n.col-xs-1 {\n width: 8.33333%;\n}\n\n.col-xs-2 {\n width: 16.66667%;\n}\n\n.col-xs-3 {\n width: 25%;\n}\n\n.col-xs-4 {\n width: 33.33333%;\n}\n\n.col-xs-5 {\n width: 41.66667%;\n}\n\n.col-xs-6 {\n width: 50%;\n}\n\n.col-xs-7 {\n width: 58.33333%;\n}\n\n.col-xs-8 {\n width: 66.66667%;\n}\n\n.col-xs-9 {\n width: 75%;\n}\n\n.col-xs-10 {\n width: 83.33333%;\n}\n\n.col-xs-11 {\n width: 91.66667%;\n}\n\n.col-xs-12 {\n width: 100%;\n}\n\n@media (min-width: 768px) {\n .row {\n flex-direction: row;\n }\n\n .col-sm-1 {\n width: 8.33333%;\n }\n\n .col-sm-2 {\n width: 16.66667%;\n }\n\n .col-sm-3 {\n width: 25%;\n }\n\n .col-sm-4 {\n width: 33.33333%;\n }\n\n .col-sm-5 {\n width: 41.66667%;\n }\n\n .col-sm-6 {\n width: 50%;\n }\n\n .col-sm-7 {\n width: 58.33333%;\n }\n\n .col-sm-8 {\n width: 66.66667%;\n }\n\n .col-sm-9 {\n width: 75%;\n }\n\n .col-sm-10 {\n width: 83.33333%;\n }\n\n .col-sm-11 {\n width: 91.66667%;\n }\n\n .col-sm-12 {\n width: 100%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md-1 {\n width: 8.33333%;\n }\n\n .col-md-2 {\n width: 16.66667%;\n }\n\n .col-md-3 {\n width: 25%;\n }\n\n .col-md-4 {\n width: 33.33333%;\n float: left;\n }\n\n .col-md-5 {\n width: 41.66667%;\n }\n\n .col-md-6 {\n width: 50%;\n }\n\n .col-md-7 {\n width: 58.33333%;\n }\n\n .col-md-8 {\n width: 66.66667%;\n }\n\n .col-md-9 {\n width: 75%;\n }\n\n .col-md-10 {\n width: 83.33333%;\n }\n\n .col-md-11 {\n width: 91.66667%;\n }\n\n .col-md-12 {\n width: 100%;\n }\n}\n\n/* Large Devices (desktops) */\n@media (min-width: 992px) {\n .gutter {\n padding: 0 24px 0 0;\n }\n\n .col-lg-1 {\n width: 8.33333%;\n }\n\n .col-lg-2 {\n width: 16.66667%;\n }\n\n .col-lg-3 {\n width: 25%;\n }\n\n .col-lg-4 {\n width: 33.33333%;\n }\n\n .col-lg-5 {\n width: 41.66667%;\n }\n\n .col-lg-6 {\n width: 50%;\n }\n\n .col-lg-7 {\n width: 58.33333%;\n }\n\n .col-lg-8 {\n width: 66.66667%;\n }\n\n .col-lg-9 {\n width: 75%;\n }\n\n .col-lg-10 {\n width: 83.33333%;\n }\n\n .col-lg-11 {\n width: 91.66667%;\n }\n\n .col-lg-12 {\n width: 100%;\n }\n}\n.ant-modal .ant-modal-content {\n padding: 24px 24px 32px;\n border-radius: 12px;\n }\n .ant-select-dropdown .ant-select-item{\n min-height: auto !important;\n }\n .ant-notification .ant-notification-notice-wrapper .ant-notification-notice-message{\n margin-bottom: 0 !important;\n }\n .ant-notification .ant-notification-notice-wrapper{\n background: transparent;\n }\n .ant-notification .ant-notification-notice-wrapper .ant-notification-notice-close{\n position: inherit !important;\n width: 24px !important;\n height: 24px !important;\n }\n .ant-notification .ant-notification-notice-wrapper .ant-notification-notice-closable .ant-notification-notice-message {\n padding-inline-end: 0px !important;\n}\n .ant-notification-notice-close > button{\n width: 24px !important;\n height: 24px !important;\n }\n .ant-notification .ant-notification-notice-wrapper .ant-notification-notice {\n display: flex;\n align-items: center;\n gap: 12px;\n justify-content: space-between;\n }\n @media (max-width: 372px) {\n .ant-picker-date-panel .ant-picker-body{\n padding: 8px !important;\n }\n }\n@media (max-width: 600px) {\n .ant-drawer .ant-drawer-header,.ant-drawer .ant-drawer-body{\n padding: 16px !important;\n }\n .ant-drawer .ant-drawer-footer {\n padding: 12px 16px;\n }\n .ant-picker-dropdown .ant-picker-date-panel{\n width: 100%;\n }\n .ant-picker-dropdown .ant-picker-time-panel-column {\n overflow-y: auto;\n}\n.ant-picker-dropdown .ant-picker-time-panel-column::-webkit-scrollbar {\n width: 2px;\n }\n\n .ant-modal-root .ant-modal-wrap {\n position: fixed;\n overflow: inherit;\n }\n .ant-modal-root .ant-modal-centered .ant-modal{\n vertical-align: middle;\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100% !important;\n max-width: 100%!important;\n // transform-origin: bottom !important;\n //animation-duration: 0s !important;\n animation-name: slideUp;\n animation-duration: 0.2s;\n transition: .3s ease-in-out;\n animation-timing-function: ease-in;\n }\n @keyframes slideUp {\n 0%,\n 50% {\n transform: translateY(100%);\n opacity: 0;\n }\n \n 60%,\n 100% {\n transform: translateY(0);\n opacity: 1;\n \n }\n }\n .ant-modal .ant-modal-content {\n bottom: -8px;\n left: 0;\n position: absolute;\n right: 0;\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0px;\n }\n .ant-modal .ant-modal-body{\n max-height: calc(90vh - 126px);\n overflow: auto;\n padding-right: 16px;\n }\n .ant-modal-footer{\n padding-right: 16px !important;\n }\n .ant-modal .ant-modal-content{\n padding: 24px 16px 32px;\n padding-right: 0;\n }\n}\n@media (min-width: 1200px) {\n .gutter {\n padding: 0 32px 0 0;\n }\n\n .col-xl-1 {\n width: 8.33333%;\n }\n \n .col-xl-2 {\n width: 16.66667%;\n }\n\n .col-xl-3 {\n width: 25%;\n }\n\n .col-xl-4 {\n width: 33.33333%;\n }\n\n .col-xl-5 {\n width: 41.66667%;\n }\n\n .col-xl-6 {\n width: 50%;\n }\n\n .col-xl-7 {\n width: 58.33333%;\n }\n\n .col-xl-8 {\n width: 66.66667%;\n }\n\n .col-xl-9 {\n width: 75%;\n }\n\n .col-xl-10 {\n width: 83.33333%;\n }\n\n .col-xl-11 {\n width: 91.66667%;\n }\n\n .col-xl-12 {\n width: 100%;\n }\n \n}\n\n.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item{\n padding: 12px 24px;\n}\n.ant-dropdown-menu{\n min-width: 256px;\n top: 4px;\n}\n.ant-space-item span{\n line-height: 0 !important;\n display: flex;\n}\n\n\n.ant-select-dropdown{border-radius: 4px; padding:8px 0 !important;\n background: var(--color-primary-background) ;\n box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.14);}\n\n\n\n .ant-select-dropdown .ant-select-item { \n min-height: auto;\n padding: 12px 16px;\n color: var(--color-primary-content) ;\n line-height: 20px;\n border-radius: 0px;\n}\n\n.label-date-dropdown {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: center;\n gap: 16px;\n}\n\n.ant-select-dropdown .ant-select-item-option-active span{ color: var(--color-primary) !important;}\n.ant-picker-range {opacity: 0;}\n.ant-picker-dropdown-range { padding: 0; }\n\n.fadeImg{\n position: relative;\n width: 100%;\n max-height: 300px;\n overflow-x: auto;\n}\n.overLayImg{\n background: rgb(0 0 0 / 40%);\n border-radius: 12px 12px 0px 0px;\n overflow: hidden;\n}\n \n .OaTooltip .ant-tooltip-inner{\n padding: 24px 16px;\n background: #fff;\n color: #212121;\n box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.14);\n width: 348px;\n border-radius: 12px;\n }\n .OaTooltip .ant-tooltip-arrow:before{\n background: #fff !important;\n }\n .OaFooterBtn{\n display: flex;\n justify-content: end;\n }\n .OaTooltip{\n max-width: 348px !important;\n }\n.paddingBot .ant-drawer-body{\n padding-bottom: 100px !important;\n}\n.react-transform-component,.react-transform-wrapper,.react-transform-component > div{\n width: 100%;\n}\n.ascCollapse .ant-collapse-arrow{\n transform: rotate(90deg);\n color: var(--color-primary) !important;\n font-size: 14px !important;\n}\n.gappingIcons{\n display: flex;\n gap: 16px;\n}\n.imageZoom .ant-modal-body > div{\n height: 350px;\n overflow-y: auto;\n margin: 30px 0px 0px;\n padding: 0px 8px 0 0;;\n \n}\n/* width */\n.imageZoom ::-webkit-scrollbar {\n width: 8px;\n height: 100px;\n border-radius: 8px;\n}\n\n/* Track */\n.imageZoom ::-webkit-scrollbar-track {\n background: #f6f6f6; \n border-radius: 8px;\n}\n \n/* Handle */\n.imageZoom ::-webkit-scrollbar-thumb {\n background: #888; \n border-radius: 8px;\n height: 100px;\n}\n\n/* Handle on hover */\n.imageZoom ::-webkit-scrollbar-thumb:hover {\n background: #555; \n}\n .modalImg{\n width: 100%;\n }\n.overflowScroll{\n position: relative;\n}\n.ascCollapse .ant-collapse-header{\n border-radius: 4px !important;\n background: var(--color-secondary-background);\n}\n.ascCollapse,.ant-collapse{\n overflow: hidden;\n}\n.ascCollapse .totalVal{\n display: flex;\n gap: 12px;\n}\n.ascCollapse.ant-collapse-item-active .ant-collapse-arrow{\n transform: rotate(180deg) !important;\n}.mobilesIcons li.ant-dropdown-menu-item > svg {\n display: none\n}\n .ant-notification-notice-close svg{\n font-size: 24px !important;\n height: auto;\n }\n @media only screen and (max-width: 574px) {\n .ant-steps-item-tail{\n inset-inline-start: 78px !important;\n \n }\n}\n @media only screen and (max-width: 480px) {\n .ant-steps-item-tail{\n inset-inline-start: 60px !important;\n \n }\n}\n@media only screen and (max-width: 600px) {\n \n .ant-picker-dropdown .ant-picker-date-panel .ant-picker-body {\n padding: 8px;\n }\n .ant-picker-dropdown { width: 100%; left: 0 !important; }\n .mobilesIcons li.ant-dropdown-menu-item > svg {\n display: block;\n}\n.imageZoom .ant-modal-body>div{\n height: auto;\n overflow-y: auto;\n}\n.imageZoom .ant-modal-footer{\n padding-right: 16px !important;\n}\n .fadeImg{\n max-height: auto;\n }\n .ant-picker-dropdown .ant-picker-date-panel .ant-picker-content th {\n width: 24px; font-size: 12px; font-weight: bold; }\n\n .ant-picker-dropdown .ant-picker-content th {\n height: 24px;\n }\n .ant-picker-dropdown .ant-picker-content td {\n font-size: 12px;\n }\n .ant-picker-dropdown .ant-picker-date-panel .ant-picker-content {\n width: 100%;\n }\n\n}\n\n\n.ant-picker .ant-picker-clear{\n font-size: 20px;\n}\n \n"])));
|
|
24
|
+
const GridLayout = (0, _styledComponents.createGlobalStyle)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n.container {\n max-width: 1154px;\n margin: 0 auto;\n padding: 0 16px;\n}\n\n.container-fluid {\n width: 100%;\n padding: 0 16px;\n}\n\n.row {\n display: flex;\n flex-direction: column;\n}\n\n.gutter {\n padding: 0 24px 0 0;\n}\n\n.row::after {\n content: \"\";\n clear: both;\n display: table;\n}\n\n.col-xs-1 {\n width: 8.33333%;\n}\n\n.col-xs-2 {\n width: 16.66667%;\n}\n\n.col-xs-3 {\n width: 25%;\n}\n\n.col-xs-4 {\n width: 33.33333%;\n}\n\n.col-xs-5 {\n width: 41.66667%;\n}\n\n.col-xs-6 {\n width: 50%;\n}\n\n.col-xs-7 {\n width: 58.33333%;\n}\n\n.col-xs-8 {\n width: 66.66667%;\n}\n\n.col-xs-9 {\n width: 75%;\n}\n\n.col-xs-10 {\n width: 83.33333%;\n}\n\n.col-xs-11 {\n width: 91.66667%;\n}\n\n.col-xs-12 {\n width: 100%;\n}\n\n@media (min-width: 768px) {\n .row {\n flex-direction: row;\n }\n\n .col-sm-1 {\n width: 8.33333%;\n }\n\n .col-sm-2 {\n width: 16.66667%;\n }\n\n .col-sm-3 {\n width: 25%;\n }\n\n .col-sm-4 {\n width: 33.33333%;\n }\n\n .col-sm-5 {\n width: 41.66667%;\n }\n\n .col-sm-6 {\n width: 50%;\n }\n\n .col-sm-7 {\n width: 58.33333%;\n }\n\n .col-sm-8 {\n width: 66.66667%;\n }\n\n .col-sm-9 {\n width: 75%;\n }\n\n .col-sm-10 {\n width: 83.33333%;\n }\n\n .col-sm-11 {\n width: 91.66667%;\n }\n\n .col-sm-12 {\n width: 100%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md-1 {\n width: 8.33333%;\n }\n\n .col-md-2 {\n width: 16.66667%;\n }\n\n .col-md-3 {\n width: 25%;\n }\n\n .col-md-4 {\n width: 33.33333%;\n float: left;\n }\n\n .col-md-5 {\n width: 41.66667%;\n }\n\n .col-md-6 {\n width: 50%;\n }\n\n .col-md-7 {\n width: 58.33333%;\n }\n\n .col-md-8 {\n width: 66.66667%;\n }\n\n .col-md-9 {\n width: 75%;\n }\n\n .col-md-10 {\n width: 83.33333%;\n }\n\n .col-md-11 {\n width: 91.66667%;\n }\n\n .col-md-12 {\n width: 100%;\n }\n}\n\n/* Large Devices (desktops) */\n@media (min-width: 992px) {\n .gutter {\n padding: 0 24px 0 0;\n }\n\n .col-lg-1 {\n width: 8.33333%;\n }\n\n .col-lg-2 {\n width: 16.66667%;\n }\n\n .col-lg-3 {\n width: 25%;\n }\n\n .col-lg-4 {\n width: 33.33333%;\n }\n\n .col-lg-5 {\n width: 41.66667%;\n }\n\n .col-lg-6 {\n width: 50%;\n }\n\n .col-lg-7 {\n width: 58.33333%;\n }\n\n .col-lg-8 {\n width: 66.66667%;\n }\n\n .col-lg-9 {\n width: 75%;\n }\n\n .col-lg-10 {\n width: 83.33333%;\n }\n\n .col-lg-11 {\n width: 91.66667%;\n }\n\n .col-lg-12 {\n width: 100%;\n }\n} \n \n\n@media (min-width: 1200px) {\n .gutter {\n padding: 0 32px 0 0;\n }\n\n .col-xl-1 {\n width: 8.33333%;\n }\n \n .col-xl-2 {\n width: 16.66667%;\n }\n\n .col-xl-3 {\n width: 25%;\n }\n\n .col-xl-4 {\n width: 33.33333%;\n }\n\n .col-xl-5 {\n width: 41.66667%;\n }\n\n .col-xl-6 {\n width: 50%;\n }\n\n .col-xl-7 {\n width: 58.33333%;\n }\n\n .col-xl-8 {\n width: 66.66667%;\n }\n\n .col-xl-9 {\n width: 75%;\n }\n\n .col-xl-10 {\n width: 83.33333%;\n }\n\n .col-xl-11 {\n width: 91.66667%;\n }\n\n .col-xl-12 {\n width: 100%;\n }\n \n}\n"])));
|
|
25
25
|
var _default = exports.default = GridLayout;
|