UNPKG

inline-print

Version:

Inline Print için kullanılır.

294 lines (245 loc) 12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _react = _interopRequireDefault(require("react")); var _Grid = _interopRequireDefault(require("@material-ui/core/Grid")); var _Button = _interopRequireDefault(require("@material-ui/core/Button")); var _ButtonGroup = _interopRequireDefault(require("@material-ui/core/ButtonGroup")); var _ClickAwayListener = _interopRequireDefault(require("@material-ui/core/ClickAwayListener")); var _Grow = _interopRequireDefault(require("@material-ui/core/Grow")); var _Paper = _interopRequireDefault(require("@material-ui/core/Paper")); var _Popper = _interopRequireDefault(require("@material-ui/core/Popper")); var _InputLabel = _interopRequireDefault(require("@material-ui/core/InputLabel")); var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem")); var _MenuList = _interopRequireDefault(require("@material-ui/core/MenuList")); var _CircularProgress = _interopRequireDefault(require("@material-ui/core/CircularProgress")); var _JSPMStatus = _interopRequireDefault(require("./JSPMStatus")); var _Tooltip = _interopRequireDefault(require("@material-ui/core/Tooltip")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _extends() { _extends = Object.assign || 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); } function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // import SettingsIcon from "@material-ui/icons/Settings"; // import LoopIcon from "@material-ui/icons/Loop"; // import GetAppIcon from "@material-ui/icons/GetApp"; // import PrintIcon from "@material-ui/icons/Print"; //find index in data function getIndexFromData(value, arr, prop) { if (arr) { for (var i = 0; i < arr.length; i++) { if (arr[i][prop] == value) { return i; } } } return 0; //to handle the case where the value doesn't exist } var PrintInlineComponent = function PrintInlineComponent(_ref) { var options = _ref.options, selected = _ref.selected, onHandlePrintChange = _ref.onHandlePrintChange, onHandleDownload = _ref.onHandleDownload, onHandlePrint = _ref.onHandlePrint, onHandlePrinterRefresh = _ref.onHandlePrinterRefresh, reportName = _ref.reportName, status = _ref.status, locale = _ref.locale; var strings = {}; if (locale === "tr") { strings = { TARA: "Tara", INDIR: "İndir", YAZDIR: "Yazdır", SECILI_INDIRME_SECENEGI: "Seçili İndirme Seçeneği", INDIRME_SECENEKLERI: "İndirme Seçenekleri" }; } else { strings = { TARA: "Tara", INDIR: "İndir", YAZDIR: "Yazdır", SECILI_INDIRME_SECENEGI: "Seçili İndirme Seçeneği", INDIRME_SECENEKLERI: "İndirme Seçenekleri" }; } _react["default"].useEffect(function () { var index = getIndexFromData(selected, options, 3); var show = options[index][1] == "file"; setSelectedIndex(index); setShowFileDownload(show); }, [selected, options]); var _React$useState = _react["default"].useState(false), _React$useState2 = _slicedToArray(_React$useState, 2), open = _React$useState2[0], setOpen = _React$useState2[1]; var anchorRef = _react["default"].useRef(undefined); var initialSelectedIndex = getIndexFromData(selected, options, 3); var _React$useState3 = _react["default"].useState(initialSelectedIndex), _React$useState4 = _slicedToArray(_React$useState3, 2), selectedIndex = _React$useState4[0], setSelectedIndex = _React$useState4[1]; var _React$useState5 = _react["default"].useState(options[selectedIndex][1] == "file"), _React$useState6 = _slicedToArray(_React$useState5, 2), showFileDownload = _React$useState6[0], setShowFileDownload = _React$useState6[1]; var _React$useState7 = _react["default"].useState(false), _React$useState8 = _slicedToArray(_React$useState7, 2), loading = _React$useState8[0], setLoading = _React$useState8[1]; var _React$useState9 = _react["default"].useState(""), _React$useState10 = _slicedToArray(_React$useState9, 2), type = _React$useState10[0], setType = _React$useState10[1]; var printTypeSelectOnClick = function printTypeSelectOnClick(event, index) { setSelectedIndex(index); setOpen(false); onHandlePrintChange(options[index]); if (options[index][1] == "file") { setShowFileDownload(true); } else { setShowFileDownload(false); } //09.06.2021 Türkan - type diye bir hook tanımlanmamış //setType(options[index][3]); }; var handleToggle = function handleToggle() { setOpen(function (prevOpen) { return !prevOpen; }); }; var handleClose = function handleClose(event) { if (anchorRef.current && anchorRef.current.contains(event.target)) { return; } setOpen(false); }; var setLoadingExternal = function setLoadingExternal(val) { setLoading(false); }; var printerRefresh = function printerRefresh(event) { setLoading(true); onHandlePrinterRefresh(event, setLoadingExternal); }; var handleDownload = function handleDownload() { onHandleDownload(options[selectedIndex]); }; var handlePrint = function handlePrint() { onHandlePrint(options[selectedIndex]); }; var printSelected = function printSelected() { var index = getIndexFromData(selected, options, 3); return /*#__PURE__*/_react["default"].createElement("table", null, /*#__PURE__*/_react["default"].createElement("tbody", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement("td", null, options[index][1] == "file" ? options[index][2] : options[index][2].substring(0, 9) + ".."), /*#__PURE__*/_react["default"].createElement("td", null, "\xA0\xA0"), /*#__PURE__*/_react["default"].createElement("td", null, " ", options[index][1] == "file" ? options[index][3] : null)))); }; var buttonStyle = { padding: "9.5px" }; return /*#__PURE__*/_react["default"].createElement(_Grid["default"], { container: true, spacing: 2 }, /*#__PURE__*/_react["default"].createElement(_Grid["default"], { container: true, item: true, xs: 12 }, status && /*#__PURE__*/_react["default"].createElement(_Grid["default"], { container: true, item: true, xs: 3, alignContent: "center" }, /*#__PURE__*/_react["default"].createElement("strong", null, reportName, "\xA0"), /*#__PURE__*/_react["default"].createElement(_JSPMStatus["default"], { JSPM_WS_Status: status }), "\xA0"), /*#__PURE__*/_react["default"].createElement(_ButtonGroup["default"], { name: "print-button-group" // variant="contained" , color: "primary", "aria-label": " primary group", ref: anchorRef }, /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], { title: strings["INDIRME_SECENEKLERI"], "aria-label": "INDIRME_SECENEKLERI" }, /*#__PURE__*/_react["default"].createElement(_Button["default"], { color: "primary", variant: "contained", size: "small", name: "button-settings", style: buttonStyle, "aria-controls": open ? "split-button-menu" : undefined, "aria-expanded": open ? "true" : undefined, "aria-label": "select merge strategy" // startIcon={<PrintIcon />} , "aria-haspopup": "menu", onClick: handleToggle }, printSelected())), showFileDownload ? /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], { title: strings["INDIR"], "aria-label": "INDIR" }, /*#__PURE__*/_react["default"].createElement(_Button["default"], { color: "primary", variant: "contained", name: "button-download", onClick: handleDownload, style: buttonStyle // startIcon={<GetAppIcon />} }, /*#__PURE__*/_react["default"].createElement("i", { className: "fas fa-download" }))) : /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], { title: strings["YAZDIR"], "aria-label": "YAZDIR" }, /*#__PURE__*/_react["default"].createElement(_Button["default"], { color: "primary", variant: "contained", name: "button-print" // startIcon={<PrintIcon />} , style: buttonStyle, onClick: handlePrint }, /*#__PURE__*/_react["default"].createElement("i", { className: "fas fa-print" })))), /*#__PURE__*/_react["default"].createElement(_Popper["default"], { open: open, anchorEl: anchorRef.current, role: undefined, transition: true, style: { zIndex: 1500 } }, function (_ref2) { var TransitionProps = _ref2.TransitionProps, placement = _ref2.placement; return /*#__PURE__*/_react["default"].createElement(_Grow["default"], _extends({}, TransitionProps, { style: { transformOrigin: placement === "bottom" ? "center top" : "center bottom" } }), /*#__PURE__*/_react["default"].createElement(_Paper["default"], { name: "print-popover-button-group" }, /*#__PURE__*/_react["default"].createElement(_ClickAwayListener["default"], { onClickAway: handleClose }, /*#__PURE__*/_react["default"].createElement(_MenuList["default"], { id: "split-button-menu", name: "print-slit-button-menu" }, options.map(function (option, index) { return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], { name: "print-menu-item-" + option[0], key: option[0], disabled: option[0] === 7, selected: index == selectedIndex, onClick: function onClick(event) { return printTypeSelectOnClick(event, index); } }, option[2], "\xA0", option[1] == "file" ? option[3] : null); }), loading ? /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], null, /*#__PURE__*/_react["default"].createElement(_CircularProgress["default"], null)) : /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], { style: { color: "red" }, key: 999, onClick: function onClick(event) { return printerRefresh(event); } }, /*#__PURE__*/_react["default"].createElement("i", { className: "fas fa-recycle" }), "\xA0Yaz\u0131c\u0131lar\u0131 Tekrar Y\xFCkle"))))); }))); }; var _default = PrintInlineComponent; exports["default"] = _default;