Files
portal-api/public/js/pages/cropper.js
2026-01-30 08:23:19 +07:00

33 lines
8.2 KiB
JavaScript

/*
* ATTENTION: An "eval-source-map" devtool has been used.
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ({
/***/ "./resources/js/pages/cropper.js":
/*!***************************************!*\
!*** ./resources/js/pages/cropper.js ***!
\***************************************/
/***/ (() => {
eval("// npm package: cropperjs\n// github link: https://github.com/fengyuanchen/cropperjs\n\n\n\n(function () {\n var croppingImage = document.querySelector('#croppingImage'),\n img_w = document.querySelector('.img-w'),\n cropBtn = document.querySelector('.crop'),\n croppedImg = document.querySelector('.cropped-img'),\n dwn = document.querySelector('.download'),\n upload = document.querySelector('#cropperImageUpload');\n var cropper = '';\n cropper = new Cropper(croppingImage, {\n zoomable: false\n });\n\n // on change show image with crop options\n upload.addEventListener('change', function (e) {\n if (e.target.files.length) {\n console.log(e.target.files[0]);\n var fileType = e.target.files[0].type;\n if (fileType === 'image/gif' || fileType === 'image/jpeg' || fileType === 'image/png') {\n cropper.destroy();\n // start file reader\n var reader = new FileReader();\n reader.onload = function (e) {\n if (e.target.result) {\n croppingImage.src = e.target.result;\n cropper = new Cropper(croppingImage, {\n zoomable: false\n });\n }\n };\n reader.readAsDataURL(e.target.files[0]);\n } else {\n alert(\"Selected file type is not supported. Please try again\");\n }\n }\n });\n\n // crop on click\n cropBtn.addEventListener('click', function (e) {\n e.preventDefault();\n // get result to data uri\n var imgSrc = cropper.getCroppedCanvas({\n width: img_w.value // input value\n }).toDataURL();\n croppedImg.src = imgSrc;\n dwn.setAttribute('href', imgSrc);\n dwn.download = 'imagename.png';\n });\n})();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvcGFnZXMvY3JvcHBlci5qcyIsIm1hcHBpbmdzIjoiQUFBQTtBQUNBOztBQUVhOztBQUViLENBQUMsWUFBVztFQUVWLElBQU1BLGFBQWEsR0FBR0MsUUFBUSxDQUFDQyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7SUFDNURDLEtBQUssR0FBR0YsUUFBUSxDQUFDQyxhQUFhLENBQUMsUUFBUSxDQUFDO0lBQ3hDRSxPQUFPLEdBQUdILFFBQVEsQ0FBQ0MsYUFBYSxDQUFDLE9BQU8sQ0FBQztJQUN6Q0csVUFBVSxHQUFHSixRQUFRLENBQUNDLGFBQWEsQ0FBQyxjQUFjLENBQUM7SUFDbkRJLEdBQUcsR0FBR0wsUUFBUSxDQUFDQyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQ3pDSyxNQUFNLEdBQUdOLFFBQVEsQ0FBQ0MsYUFBYSxDQUFDLHFCQUFxQixDQUFDO0VBQ3hELElBQUlNLE9BQU8sR0FBRyxFQUFFO0VBRWhCQSxPQUFPLEdBQUcsSUFBSUMsT0FBTyxDQUFDVCxhQUFhLEVBQUU7SUFDbkNVLFFBQVEsRUFBRTtFQUNaLENBQUMsQ0FBQzs7RUFFRjtFQUNBSCxNQUFNLENBQUNJLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxVQUFVQyxDQUFDLEVBQUU7SUFDN0MsSUFBSUEsQ0FBQyxDQUFDQyxNQUFNLENBQUNDLEtBQUssQ0FBQ0MsTUFBTSxFQUFFO01BQ3pCQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0wsQ0FBQyxDQUFDQyxNQUFNLENBQUNDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztNQUM5QixJQUFNSSxRQUFRLEdBQUdOLENBQUMsQ0FBQ0MsTUFBTSxDQUFDQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUNLLElBQUk7TUFDdkMsSUFBR0QsUUFBUSxLQUFLLFdBQVcsSUFBSUEsUUFBUSxLQUFLLFlBQVksSUFBSUEsUUFBUSxLQUFLLFdBQVcsRUFBRTtRQUNwRlYsT0FBTyxDQUFDWSxPQUFPLENBQUMsQ0FBQztRQUNqQjtRQUNBLElBQU1DLE1BQU0sR0FBRyxJQUFJQyxVQUFVLENBQUMsQ0FBQztRQUMvQkQsTUFBTSxDQUFDRSxNQUFNLEdBQUcsVUFBVVgsQ0FBQyxFQUFFO1VBQzNCLElBQUdBLENBQUMsQ0FBQ0MsTUFBTSxDQUFDVyxNQUFNLEVBQUM7WUFDakJ4QixhQUFhLENBQUN5QixHQUFHLEdBQUdiLENBQUMsQ0FBQ0MsTUFBTSxDQUFDVyxNQUFNO1lBQ25DaEIsT0FBTyxHQUFHLElBQUlDLE9BQU8sQ0FBQ1QsYUFBYSxFQUFFO2NBQ25DVSxRQUFRLEVBQUU7WUFDWixDQUFDLENBQUM7VUFDSjtRQUNGLENBQUM7UUFDRFcsTUFBTSxDQUFDSyxhQUFhLENBQUNkLENBQUMsQ0FBQ0MsTUFBTSxDQUFDQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7TUFDekMsQ0FBQyxNQUFNO1FBQ0xhLEtBQUssQ0FBQyx1REFBdUQsQ0FBQztNQUNoRTtJQUNGO0VBQ0YsQ0FBQyxDQUFDOztFQUVGO0VBQ0F2QixPQUFPLENBQUNPLGdCQUFnQixDQUFDLE9BQU8sRUFBQyxVQUFTQyxDQUFDLEVBQUU7SUFDM0NBLENBQUMsQ0FBQ2dCLGNBQWMsQ0FBQyxDQUFDO0lBQ2xCO0lBQ0EsSUFBSUMsTUFBTSxHQUFHckIsT0FBTyxDQUFDc0IsZ0JBQWdCLENBQUM7TUFDcENDLEtBQUssRUFBRTVCLEtBQUssQ0FBQzZCLEtBQUssQ0FBQztJQUNyQixDQUFDLENBQUMsQ0FBQ0MsU0FBUyxDQUFDLENBQUM7SUFDZDVCLFVBQVUsQ0FBQ29CLEdBQUcsR0FBR0ksTUFBTTtJQUN2QnZCLEdBQUcsQ0FBQzRCLFlBQVksQ0FBQyxNQUFNLEVBQUVMLE1BQU0sQ0FBQztJQUNoQ3ZCLEdBQUcsQ0FBQzZCLFFBQVEsR0FBRyxlQUFlO0VBQ2hDLENBQUMsQ0FBQztBQUVKLENBQUMsRUFBRSxDQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL3BhZ2VzL2Nyb3BwZXIuanM/NjMxZSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBucG0gcGFja2FnZTogY3JvcHBlcmpzXG4vLyBnaXRodWIgbGluazogaHR0cHM6Ly9naXRodWIuY29tL2Zlbmd5dWFuY2hlbi9jcm9wcGVyanNcblxuJ3VzZSBzdHJpY3QnO1xuXG4oZnVuY3Rpb24gKCl7XG5cbiAgY29uc3QgY3JvcHBpbmdJbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNjcm9wcGluZ0ltYWdlJyksXG4gICAgaW1nX3cgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuaW1nLXcnKSxcbiAgICBjcm9wQnRuID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmNyb3AnKSxcbiAgICBjcm9wcGVkSW1nID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmNyb3BwZWQtaW1nJyksXG4gICAgZHduID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmRvd25sb2FkJyksXG4gICAgdXBsb2FkID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2Nyb3BwZXJJbWFnZVVwbG9hZCcpO1xuICBsZXQgY3JvcHBlciA9ICcnO1xuXG4gIGNyb3BwZXIgPSBuZXcgQ3JvcHBlcihjcm9wcGluZ0ltYWdlLCB7XG4gICAgem9vbWFibGU6IGZhbHNlXG4gIH0pO1xuXG4gIC8vIG9uIGNoYW5nZSBzaG93IGltYWdlIHdpdGggY3JvcCBvcHRpb25zXG4gIHVwbG9hZC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBmdW5jdGlvbiAoZSkge1xuICAgIGlmIChlLnRhcmdldC5maWxlcy5sZW5ndGgpIHtcbiAgICAgIGNvbnNvbGUubG9nKGUudGFyZ2V0LmZpbGVzWzBdKTtcbiAgICAgIGNvbnN0IGZpbGVUeXBlID0gZS50YXJnZXQuZmlsZXNbMF0udHlwZTtcbiAgICAgIGlmKGZpbGVUeXBlID09PSAnaW1hZ2UvZ2lmJyB8fCBmaWxlVHlwZSA9PT0gJ2ltYWdlL2pwZWcnIHx8IGZpbGVUeXBlID09PSAnaW1hZ2UvcG5nJykge1xuICAgICAgICBjcm9wcGVyLmRlc3Ryb3koKTtcbiAgICAgICAgLy8gc3RhcnQgZmlsZSByZWFkZXJcbiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgcmVhZGVyLm9ubG9hZCA9IGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgaWYoZS50YXJnZXQucmVzdWx0KXtcbiAgICAgICAgICAgIGNyb3BwaW5nSW1hZ2Uuc3JjID0gZS50YXJnZXQucmVzdWx0O1xuICAgICAgICAgICAgY3JvcHBlciA9IG5ldyBDcm9wcGVyKGNyb3BwaW5nSW1hZ2UsIHtcbiAgICAgICAgICAgICAgem9vbWFibGU6IGZhbHNlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGUudGFyZ2V0LmZpbGVzWzBdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFsZXJ0KFwiU2VsZWN0ZWQgZmlsZSB0eXBlIGlzIG5vdCBzdXBwb3J0ZWQuIFBsZWFzZSB0cnkgYWdhaW5cIilcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIC8vIGNyb3Agb24gY2xpY2tcbiAgY3JvcEJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsZnVuY3Rpb24oZSkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAvLyBnZXQgcmVzdWx0IHRvIGRhdGEgdXJpXG4gICAgbGV0IGltZ1NyYyA9IGNyb3BwZXIuZ2V0Q3JvcHBlZENhbnZhcyh7XG4gICAgICB3aWR0aDogaW1nX3cudmFsdWUgLy8gaW5wdXQgdmFsdWVcbiAgICB9KS50b0RhdGFVUkwoKTtcbiAgICBjcm9wcGVkSW1nLnNyYyA9IGltZ1NyYztcbiAgICBkd24uc2V0QXR0cmlidXRlKCdocmVmJywgaW1nU3JjKTtcbiAgICBkd24uZG93bmxvYWQgPSAnaW1hZ2VuYW1lLnBuZyc7XG4gIH0pO1xuXG59KSgpOyJdLCJuYW1lcyI6WyJjcm9wcGluZ0ltYWdlIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiaW1nX3ciLCJjcm9wQnRuIiwiY3JvcHBlZEltZyIsImR3biIsInVwbG9hZCIsImNyb3BwZXIiLCJDcm9wcGVyIiwiem9vbWFibGUiLCJhZGRFdmVudExpc3RlbmVyIiwiZSIsInRhcmdldCIsImZpbGVzIiwibGVuZ3RoIiwiY29uc29sZSIsImxvZyIsImZpbGVUeXBlIiwidHlwZSIsImRlc3Ryb3kiLCJyZWFkZXIiLCJGaWxlUmVhZGVyIiwib25sb2FkIiwicmVzdWx0Iiwic3JjIiwicmVhZEFzRGF0YVVSTCIsImFsZXJ0IiwicHJldmVudERlZmF1bHQiLCJpbWdTcmMiLCJnZXRDcm9wcGVkQ2FudmFzIiwid2lkdGgiLCJ2YWx1ZSIsInRvRGF0YVVSTCIsInNldEF0dHJpYnV0ZSIsImRvd25sb2FkIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./resources/js/pages/cropper.js\n");
/***/ })
/******/ });
/************************************************************************/
/******/
/******/ // startup
/******/ // Load entry module and return exports
/******/ // This entry module can't be inlined because the eval-source-map devtool is used.
/******/ var __webpack_exports__ = {};
/******/ __webpack_modules__["./resources/js/pages/cropper.js"]();
/******/
/******/ })()
;