@idea-fragments/react-components-zendesk 0.1.77 → 0.1.79

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/dist/loaders.js CHANGED
@@ -4036,7 +4036,7 @@ var Logger = /** @class */function () {
4036
4036
  if (typeof window !== "undefined") window.Logger = Logger;
4037
4037
  var Logger_1 = dist.Logger = Logger;
4038
4038
  var name = "@idea-fragments/react-components-zendesk";
4039
- var version = "0.1.77";
4039
+ var version = "0.1.79";
4040
4040
  var files = ["dist/*.js", "dist/*.js.map", "dist/types"];
4041
4041
  var exports$1 = {
4042
4042
  "./*": {
package/dist/media.js CHANGED
@@ -11425,7 +11425,7 @@ clearTimeout(timerId);timerId=setTimeout(timerExpired,wait);return invokeFunc(la
11425
11425
  * // Cancel the trailing throttled invocation.
11426
11426
  * jQuery(window).on('popstate', throttled.cancel);
11427
11427
  */function throttle(func,wait,options){var leading=true,trailing=true;if(typeof func!='function'){throw new TypeError(FUNC_ERROR_TEXT);}if(isObject(options)){leading='leading'in options?!!options.leading:leading;trailing='trailing'in options?!!options.trailing:trailing;}return debounce(func,wait,{'leading':leading,'maxWait':wait,'trailing':trailing});}var throttle_1=throttle;var Slider=function(_a){var _b;var color=_a.color,disabled=_a.disabled,fluid=_a.fluid,hint=_a.hint,label=_a.label,_c=_a.max,max=_c===void 0?100:_c,message=_a.message,_d=_a.min,min=_d===void 0?0:_d,onChange=_a.onChange,_e=_a.step,step=_e===void 0?1:_e,_f=_a.throttleMilliseconds,throttleMilliseconds=_f===void 0?50:_f,_g=_a.validation,validation=_g===void 0?{validation:VALIDATION_STATES.NONE}:_g,valueProp=_a.value;var value=(_b=__read$1(React.useState(valueProp!==null&&valueProp!==void 0?valueProp:min),2),_b[0]),setValue=_b[1];var throttledOnChange=React.useMemo(function(){return throttle_1(onChange,throttleMilliseconds);},[onChange,throttleMilliseconds]);var handleChange=React.useCallback(function(e){setValue(Number(e.target.value));throttledOnChange(Number(e.target.value),e);},[throttledOnChange]);var syncValueFromParent=React.useCallback(function(){setValue(valueProp);},[valueProp]);React.useEffect(function(){syncValueFromParent();},[syncValueFromParent]);return jsxRuntime.jsx(Container$4,__assign$2({fluid:fluid,gap:null,withRows:true},{children:jsxRuntime.jsxs(Field,{children:[label?jsxRuntime.jsx(Label,{children:label}):null,hint?jsxRuntime.jsx(Hint,__assign$2({_css:styled.css(templateObject_1$5||(templateObject_1$5=__makeTemplateObject(["\n &&& {\n font-size: ",";\n }\n "],["\n &&& {\n font-size: ",";\n }\n "])),FONT_SIZES.XS)},{children:hint})):null,jsxRuntime.jsx(Range,{color:color,disabled:disabled,max:max,min:min,onChange:handleChange,step:step,value:value,valuePercent:(value-min)/(max-min)*100}),message?jsxRuntime.jsx(Message,__assign$2({_css:"\n &&& {\n font-size: ".concat(FONT_SIZES.XS,";\n }\n "),validation:validation===null||validation===void 0?void 0:validation.validation},{children:message})):null]})}));};var baseTrackStyles=styled.css(templateObject_2$4||(templateObject_2$4=__makeTemplateObject(["\n background: ",";\n border-radius: 0.5rem;\n height: 0.45rem;\n"],["\n background: ",";\n border-radius: 0.5rem;\n height: 0.45rem;\n"])),function(_a){var color=_a.color,valuePercent=_a.valuePercent,theme=_a.theme;return"linear-gradient(to right, ".concat(color," ").concat(valuePercent,"%, ").concat(theme.styles.colors.grey["300"]," ").concat(valuePercent,"%)");});var disabledThumbStyles=styled.css(templateObject_3$4||(templateObject_3$4=__makeTemplateObject(["\n ",";\n"],["\n ",";\n"])),function(_a){var disabled=_a.disabled,theme=_a.theme;return disabled?"background-color: ".concat(theme.styles.colors.grey["300"]):"";});var baseThumbStyles=styled.css(templateObject_4$1||(templateObject_4$1=__makeTemplateObject(["\n -webkit-appearance: none;\n appearance: none;\n border-radius: 1.4rem;\n //margin-top: -.5rem; /* chrome only - centers thumb on the track */\n border: 0.2rem solid ",";\n height: 1.4rem;\n width: 1.4rem;\n outline: none;\n ",";\n ",";\n"],["\n -webkit-appearance: none;\n appearance: none;\n border-radius: 1.4rem;\n //margin-top: -.5rem; /* chrome only - centers thumb on the track */\n border: 0.2rem solid ",";\n height: 1.4rem;\n width: 1.4rem;\n outline: none;\n ",";\n ",";\n"])),function(_a){var color=_a.color;return color;},buttonLikeHoverable,disabledThumbStyles);Slider=styled__default["default"](Slider)(templateObject_5$1||(templateObject_5$1=__makeTemplateObject(["\n && {\n font-size: inherit;\n }\n"],["\n && {\n font-size: inherit;\n }\n"])));var Range=styled__default["default"](Range$1).attrs(function(_a){var color=_a.color,theme=_a.theme;return{color:color!==null&&color!==void 0?color:theme.styles.colorPrimary,primary:true};})(templateObject_6$1||(templateObject_6$1=__makeTemplateObject(["\n && {\n &::-webkit-slider-runnable-track {\n ",";\n }\n\n &::-moz-range-track {\n ","\n }\n\n &::-webkit-slider-thumb {\n ",";\n //box-shadow: -80px 0 0 80px #43e5f7;\n }\n\n &::-ms-fill-lower {\n background: #777;\n border-radius: 10px;\n }\n\n &::-ms-fill-upper {\n background: #ddd;\n border-radius: 10px;\n }\n }\n"],["\n && {\n &::-webkit-slider-runnable-track {\n ",";\n }\n\n &::-moz-range-track {\n ","\n }\n\n &::-webkit-slider-thumb {\n ",";\n //box-shadow: -80px 0 0 80px #43e5f7;\n }\n\n &::-ms-fill-lower {\n background: #777;\n border-radius: 10px;\n }\n\n &::-ms-fill-upper {\n background: #ddd;\n border-radius: 10px;\n }\n }\n"])),baseTrackStyles,baseTrackStyles,baseThumbStyles);var Container$4=styled__default["default"](FlexBox)(templateObject_7$1||(templateObject_7$1=__makeTemplateObject(["\n ","\n && * {\n font-size: inherit;\n }\n"],["\n ","\n && * {\n font-size: inherit;\n }\n"])),function(_a){var fluid=_a.fluid;return fluid?"width: 100%;":"";});var templateObject_1$5,templateObject_2$4,templateObject_3$4,templateObject_4$1,templateObject_5$1,templateObject_6$1,templateObject_7$1;var MAX_SCALE$1=5;var MIN_SCALE$1=1;var ImageCropper=function(_a){var _b;var _c=_a.aspectRatio,aspectRatio=_c===void 0?1:_c,imageData=_a.imageData,_d=_a.imageQuality,imageQuality=_d===void 0?0.6:_d,onComplete=_a.onComplete;var imageRef=React.useRef();var _e=__read$1(React.useState({x:0,y:0}),2),crop=_e[0],setCrop=_e[1];var _f=__read$1(React.useState(),2),croppedArea=_f[0],setCroppedArea=_f[1];var _g=__read$1(React.useState(MIN_SCALE$1),2),zoom=_g[0],setZoom=_g[1];var canvasToFile=React.useCallback(function(canvas){return __awaiter$1(void 0,void 0,void 0,function(){return __generator$1(this,function(_a){return[2/*return*/,new Promise(function(resolve){var toFile=function(blob){var _a,_b;if(!blob)throw new Error("ImageCropper: Canvas is empty");resolve(new File([blob],(_b=(_a=imageData.file)===null||_a===void 0?void 0:_a.name)!==null&&_b!==void 0?_b:"".concat(crypto.randomUUID(),".jpg")));};canvas.toBlob(toFile,"image/jpeg",imageQuality);})];});});},[(_b=imageData.file)===null||_b===void 0?void 0:_b.name,imageQuality]);var canvasToDataUrl=React.useCallback(function(canvas){return canvas.toDataURL("image/jpeg",imageQuality);},[imageQuality]);var croppedImageData=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var canvas,ctx,image;var _a;return __generator$1(this,function(_b){switch(_b.label){case 0:canvas=document.createElement("canvas");ctx=canvas.getContext("2d");image=imageRef.current;if(!ctx||!croppedArea||!image)return[2/*return*/];canvas.width=croppedArea.width;canvas.height=croppedArea.height;ctx.drawImage(image,croppedArea.x,croppedArea.y,croppedArea.width,croppedArea.height,0,0,croppedArea.width,croppedArea.height);_a={dataURL:canvasToDataUrl(canvas)};return[4/*yield*/,canvasToFile(canvas)];case 1:return[2/*return*/,(_a.file=_b.sent(),_a)];}});});},[croppedArea,canvasToDataUrl,canvasToFile]);var onCropComplete=React.useCallback(function(croppedAreaPercent,croppedAreaPixels){// console.log(croppedAreaPercent, croppedAreaPixels)
11428
- setCroppedArea(croppedAreaPixels);},[]);var submitCroppedImage=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var data;return __generator$1(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,croppedImageData()];case 1:data=_a.sent();if(data)onComplete(data);return[2/*return*/];}});});},[croppedImageData,onComplete]);return jsxRuntime.jsxs(FullScreen$1,__assign$2({withRows:true},{children:[jsxRuntime.jsx(Container$3,{children:jsxRuntime.jsx(Cropper,{aspect:aspectRatio,crop:crop,image:imageData===null||imageData===void 0?void 0:imageData.dataURL,maxZoom:MAX_SCALE$1,minZoom:MIN_SCALE$1,onCropChange:setCrop,onCropComplete:onCropComplete,onZoomChange:setZoom,setImageRef:function(ref){var _a;imageRef.current=(_a=ref.current)!==null&&_a!==void 0?_a:undefined;},zoom:zoom})}),jsxRuntime.jsxs(FlexBox,__assign$2({_css:styled.css(templateObject_1$4||(templateObject_1$4=__makeTemplateObject(["\n align-self: center;\n width: 300px;\n max-width: 100%;\n position: relative;\n "],["\n align-self: center;\n width: 300px;\n max-width: 100%;\n position: relative;\n "]))),withRows:true},{children:[jsxRuntime.jsx(Slider,{max:MAX_SCALE$1,min:MIN_SCALE$1,onChange:setZoom,step:0.1,throttleMilliseconds:50,value:zoom}),jsxRuntime.jsx(Button$1,__assign$2({fluid:true,onClick:submitCroppedImage},{children:"Crop"}))]}))]}));};var Container$3=styled__default["default"](FlexBox)(templateObject_2$3||(templateObject_2$3=__makeTemplateObject(["\n max-width: 100%;\n height: calc(100% - 100px);\n position: relative;\n"],["\n max-width: 100%;\n height: calc(100% - 100px);\n position: relative;\n"])));var FullScreen$1=styled__default["default"](FlexBox)(templateObject_3$3||(templateObject_3$3=__makeTemplateObject(["\n background: ",";\n position: fixed;\n height: 100%;\n width: 100%;\n left: 0;\n top: 0;\n z-index: ",";\n padding: ",";\n transition: top 0.5s ease-in-out;\n\n .ReactCrop.ReactCrop--fixed-aspect,\n .ReactCrop__child-wrapper {\n height: 100%;\n }\n"],["\n background: ",";\n position: fixed;\n height: 100%;\n width: 100%;\n left: 0;\n top: 0;\n z-index: ",";\n padding: ",";\n transition: top 0.5s ease-in-out;\n\n .ReactCrop.ReactCrop--fixed-aspect,\n .ReactCrop__child-wrapper {\n height: 100%;\n }\n"])),function(_a){var theme=_a.theme;return theme.styles.colors.white;},function(_a){var theme=_a.theme;return theme.styles.appBar.zIndex+1;},SPACINGS.SM);var templateObject_1$4,templateObject_2$3,templateObject_3$3;var dist$1={};var utils$1={};(function(exports){Object.defineProperty(exports,"__esModule",{value:true});exports.getListFiles=exports.getImage=exports.getBase64=exports.getAcceptTypeString=exports.openFileDialog=void 0;exports.openFileDialog=function(inputRef){if(inputRef.current)inputRef.current.click();};exports.getAcceptTypeString=function(acceptType,allowNonImageType){if(acceptType===null||acceptType===void 0?void 0:acceptType.length)return acceptType.map(function(item){return"."+item;}).join(', ');if(allowNonImageType)return'';return'image/*';};exports.getBase64=function(file){var reader=new FileReader();return new Promise(function(resolve){reader.addEventListener('load',function(){return resolve(String(reader.result));});reader.readAsDataURL(file);});};exports.getImage=function(file){var image=new Image();return new Promise(function(resolve){image.addEventListener('load',function(){return resolve(image);});image.src=URL.createObjectURL(file);});};exports.getListFiles=function(files,dataURLKey){var promiseFiles=[];for(var i=0;i<files.length;i+=1){promiseFiles.push(exports.getBase64(files[i]));}return Promise.all(promiseFiles).then(function(fileListBase64){var fileList=fileListBase64.map(function(base64,index){var _a;return _a={},_a[dataURLKey]=base64,_a.file=files[index],_a;});return fileList;});};})(utils$1);var validation={};var constants={};Object.defineProperty(constants,"__esModule",{value:true});constants.DEFAULT_DATA_URL_KEY=constants.INIT_MAX_NUMBER=constants.DEFAULT_NULL_INDEX=void 0;constants.DEFAULT_NULL_INDEX=-1;constants.INIT_MAX_NUMBER=1000;constants.DEFAULT_DATA_URL_KEY='dataURL';(function(exports){var __awaiter=commonjsGlobal&&commonjsGlobal.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value);});}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value));}catch(e){reject(e);}}function rejected(value){try{step(generator["throw"](value));}catch(e){reject(e);}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected);}step((generator=generator.apply(thisArg,_arguments||[])).next());});};var __generator=commonjsGlobal&&commonjsGlobal.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1];},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),"throw":verb(1),"return":verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this;}),g;function verb(n){return function(v){return step([n,v]);};}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue;}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break;}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break;}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break;}if(t[2])_.ops.pop();_.trys.pop();continue;}op=body.call(thisArg,_);}catch(e){op=[6,e];y=0;}finally{f=t=0;}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true};}};Object.defineProperty(exports,"__esModule",{value:true});exports.getErrorValidation=exports.isMaxNumberValid=exports.isAcceptTypeValid=exports.isMaxFileSizeValid=exports.isImageValid=exports.isResolutionValid=void 0;var constants_1=constants;var utils_1=utils$1;exports.isResolutionValid=function(image,resolutionType,resolutionWidth,resolutionHeight){if(resolutionWidth===void 0){resolutionWidth=0;}if(resolutionHeight===void 0){resolutionHeight=1;}if(!resolutionWidth||!resolutionHeight||!image.width||!image.height)return true;switch(resolutionType){case'absolute':{if(image.width===resolutionWidth&&image.height===resolutionHeight)return true;break;}case'ratio':{var ratio=resolutionWidth/resolutionHeight;if(image.width/image.height===ratio)return true;break;}case'less':{if(image.width<=resolutionWidth&&image.height<=resolutionHeight)return true;break;}case'more':{if(image.width>=resolutionWidth&&image.height>=resolutionHeight)return true;break;}}return false;};exports.isImageValid=function(fileType){if(fileType.includes('image')){return true;}return false;};exports.isMaxFileSizeValid=function(fileSize,maxFileSize){return maxFileSize?fileSize<=maxFileSize:true;};exports.isAcceptTypeValid=function(acceptType,fileName){if(acceptType&&acceptType.length>0){var type_1=fileName.split('.').pop()||'';if(acceptType.findIndex(function(item){return item.toLowerCase()===type_1.toLowerCase();})<0)return false;}return true;};exports.isMaxNumberValid=function(totalNumber,maxNumber,keyUpdate){if(maxNumber!==0&&!maxNumber)return true;if(keyUpdate===constants_1.DEFAULT_NULL_INDEX){if(totalNumber<=maxNumber)return true;}else if(totalNumber<=maxNumber+1)return true;return false;};exports.getErrorValidation=function(_a){var fileList=_a.fileList,value=_a.value,maxNumber=_a.maxNumber,keyUpdate=_a.keyUpdate,acceptType=_a.acceptType,maxFileSize=_a.maxFileSize,resolutionType=_a.resolutionType,resolutionWidth=_a.resolutionWidth,resolutionHeight=_a.resolutionHeight,allowNonImageType=_a.allowNonImageType;return __awaiter(void 0,void 0,void 0,function(){var newErrors,i,file,image,checkRes;return __generator(this,function(_b){switch(_b.label){case 0:newErrors={};if(!!exports.isMaxNumberValid(fileList.length+value.length,maxNumber,keyUpdate))return[3/*break*/,1];newErrors.maxNumber=true;return[3/*break*/,5];case 1:i=0;_b.label=2;case 2:if(!(i<fileList.length))return[3/*break*/,5];file=fileList[i].file;if(!file)return[3/*break*/,4];if(!allowNonImageType&&!exports.isImageValid(file.type)){newErrors.acceptType=true;return[3/*break*/,5];}if(!exports.isAcceptTypeValid(acceptType,file.name)){newErrors.acceptType=true;return[3/*break*/,5];}if(!exports.isMaxFileSizeValid(file.size,maxFileSize)){newErrors.maxFileSize=true;return[3/*break*/,5];}if(!resolutionType)return[3/*break*/,4];return[4/*yield*/,utils_1.getImage(file)];case 3:image=_b.sent();checkRes=exports.isResolutionValid(image,resolutionType,resolutionWidth,resolutionHeight);if(!checkRes){newErrors.resolution=true;return[3/*break*/,5];}_b.label=4;case 4:i+=1;return[3/*break*/,2];case 5:if(Object.values(newErrors).find(Boolean))return[2/*return*/,newErrors];return[2/*return*/,null];}});});};})(validation);var __assign=commonjsGlobal&&commonjsGlobal.__assign||function(){__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++){s=arguments[i];for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))t[p]=s[p];}return t;};return __assign.apply(this,arguments);};var __createBinding=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;Object.defineProperty(o,k2,{enumerable:true,get:function(){return m[k];}});}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k];});var __setModuleDefault=commonjsGlobal&&commonjsGlobal.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v});}:function(o,v){o["default"]=v;});var __importStar=commonjsGlobal&&commonjsGlobal.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result;};var __awaiter=commonjsGlobal&&commonjsGlobal.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value);});}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value));}catch(e){reject(e);}}function rejected(value){try{step(generator["throw"](value));}catch(e){reject(e);}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected);}step((generator=generator.apply(thisArg,_arguments||[])).next());});};var __generator=commonjsGlobal&&commonjsGlobal.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1];},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),"throw":verb(1),"return":verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this;}),g;function verb(n){return function(v){return step([n,v]);};}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue;}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break;}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break;}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break;}if(t[2])_.ops.pop();_.trys.pop();continue;}op=body.call(thisArg,_);}catch(e){op=[6,e];y=0;}finally{f=t=0;}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true};}};var __spreadArrays=commonjsGlobal&&commonjsGlobal.__spreadArrays||function(){for(var s=0,i=0,il=arguments.length;i<il;i++)s+=arguments[i].length;for(var r=Array(s),k=0,i=0;i<il;i++)for(var a=arguments[i],j=0,jl=a.length;j<jl;j++,k++)r[k]=a[j];return r;};Object.defineProperty(dist$1,"__esModule",{value:true});var react_1=__importStar(React__default["default"]);var utils_1=utils$1;var validation_1=validation;var constants_1=constants;var ReactImageUploading=function(_a){var _b=_a.value,value=_b===void 0?[]:_b,onChange=_a.onChange,onError=_a.onError,children=_a.children,_c=_a.dataURLKey,dataURLKey=_c===void 0?constants_1.DEFAULT_DATA_URL_KEY:_c,_d=_a.multiple,multiple=_d===void 0?false:_d,_e=_a.maxNumber,maxNumber=_e===void 0?constants_1.INIT_MAX_NUMBER:_e,acceptType=_a.acceptType,maxFileSize=_a.maxFileSize,resolutionWidth=_a.resolutionWidth,resolutionHeight=_a.resolutionHeight,resolutionType=_a.resolutionType,_f=_a.inputProps,inputProps=_f===void 0?{}:_f,_g=_a.allowNonImageType,allowNonImageType=_g===void 0?false:_g;var inValue=value||[];var inputRef=react_1.useRef(null);var _h=react_1.useState(constants_1.DEFAULT_NULL_INDEX),keyUpdate=_h[0],setKeyUpdate=_h[1];var _j=react_1.useState(null),errors=_j[0],setErrors=_j[1];var _k=react_1.useState(false),isDragging=_k[0],setIsDragging=_k[1];var handleClickInput=react_1.useCallback(function(){return utils_1.openFileDialog(inputRef);},[inputRef]);var onImageUpload=react_1.useCallback(function(){setKeyUpdate(constants_1.DEFAULT_NULL_INDEX);handleClickInput();},[handleClickInput]);var onImageRemoveAll=react_1.useCallback(function(){onChange===null||onChange===void 0?void 0:onChange([]);},[onChange]);var onImageRemove=function(index){var updatedList=__spreadArrays(inValue);if(Array.isArray(index)){index.forEach(function(i){updatedList.splice(i,1);});}else{updatedList.splice(index,1);}onChange===null||onChange===void 0?void 0:onChange(updatedList);};var onImageUpdate=function(index){setKeyUpdate(index);handleClickInput();};var validate=function(fileList){return __awaiter(void 0,void 0,void 0,function(){var errorsValidation;return __generator(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,validation_1.getErrorValidation({fileList:fileList,maxFileSize:maxFileSize,maxNumber:maxNumber,acceptType:acceptType,keyUpdate:keyUpdate,resolutionType:resolutionType,resolutionWidth:resolutionWidth,resolutionHeight:resolutionHeight,value:inValue,allowNonImageType:allowNonImageType})];case 1:errorsValidation=_a.sent();if(errorsValidation){setErrors(errorsValidation);onError===null||onError===void 0?void 0:onError(errorsValidation,fileList);return[2/*return*/,false];}errors&&setErrors(null);return[2/*return*/,true];}});});};var handleChange=function(files){return __awaiter(void 0,void 0,void 0,function(){var fileList,checkValidate,updatedFileList,updatedIndexes,firstFile,i;return __generator(this,function(_a){switch(_a.label){case 0:if(!files)return[2/*return*/];return[4/*yield*/,utils_1.getListFiles(files,dataURLKey)];case 1:fileList=_a.sent();if(!fileList.length)return[2/*return*/];return[4/*yield*/,validate(fileList)];case 2:checkValidate=_a.sent();if(!checkValidate)return[2/*return*/];updatedIndexes=[];if(keyUpdate>constants_1.DEFAULT_NULL_INDEX){firstFile=fileList[0];updatedFileList=__spreadArrays(inValue);updatedFileList[keyUpdate]=firstFile;updatedIndexes.push(keyUpdate);}else if(multiple){updatedFileList=__spreadArrays(inValue,fileList);for(i=inValue.length;i<updatedFileList.length;i+=1){updatedIndexes.push(i);}}else{updatedFileList=[fileList[0]];updatedIndexes.push(0);}onChange===null||onChange===void 0?void 0:onChange(updatedFileList,updatedIndexes);return[2/*return*/];}});});};var onInputChange=function(e){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,handleChange(e.target.files)];case 1:_a.sent();keyUpdate>constants_1.DEFAULT_NULL_INDEX&&setKeyUpdate(constants_1.DEFAULT_NULL_INDEX);if(inputRef.current)inputRef.current.value='';return[2/*return*/];}});});};var acceptTypeString=react_1.useMemo(function(){return utils_1.getAcceptTypeString(acceptType,allowNonImageType);},[acceptType,allowNonImageType]);var handleDrag=function(e){e.preventDefault();e.stopPropagation();};var handleDragIn=function(e){e.preventDefault();e.stopPropagation();if(e.dataTransfer.items&&e.dataTransfer.items.length>0){setIsDragging(true);}};var handleDragOut=function(e){e.preventDefault();e.stopPropagation();setIsDragging(false);};var handleDrop=function(e){e.preventDefault();e.stopPropagation();setIsDragging(false);if(e.dataTransfer.files&&e.dataTransfer.files.length>0){handleChange(e.dataTransfer.files);}};var handleDragStart=function(e){e.preventDefault();e.stopPropagation();e.dataTransfer.clearData();};return react_1.default.createElement(react_1.default.Fragment,null,react_1.default.createElement("input",__assign({type:"file",accept:acceptTypeString,ref:inputRef,multiple:multiple&&keyUpdate===constants_1.DEFAULT_NULL_INDEX,onChange:onInputChange,style:{display:'none'}},inputProps)),children===null||children===void 0?void 0:children({imageList:inValue,onImageUpload:onImageUpload,onImageRemoveAll:onImageRemoveAll,onImageUpdate:onImageUpdate,onImageRemove:onImageRemove,errors:errors,dragProps:{onDrop:handleDrop,onDragEnter:handleDragIn,onDragLeave:handleDragOut,onDragOver:handleDrag,onDragStart:handleDragStart},isDragging:isDragging}));};var _default=dist$1.default=ReactImageUploading;var ImageUploader=function(_a){var buttonProps=_a.buttonProps,renderProp=_a.children,imageData=_a.imageData,onChange=_a.onChange;var _b=__read$1(React.useState(false),2),cropMode=_b[0],setCropModeTo=_b[1];var _c=__read$1(React.useState(imageData),2),originalImage=_c[0],setOriginalImage=_c[1];var enableCropper=React.useCallback(function(){setCropModeTo(true);},[]);var cacheCroppedImage=React.useCallback(function(croppedImage){onChange(croppedImage);setCropModeTo(false);},[onChange]);var cacheUploadedImage=React.useCallback(function(imageList){if(isEmpty(imageList)){setOriginalImage(undefined);onChange(undefined);return;}setOriginalImage(imageList[0]);enableCropper();},[enableCropper,onChange]);return jsxRuntime.jsx(_default,__assign$2({dataURLKey:"dataURL",onChange:cacheUploadedImage,value:imageData?[imageData]:[]},{children:function(_a){_a.imageList;var onImageUpload=_a.onImageUpload,onImageRemoveAll=_a.onImageRemoveAll;_a.onImageUpdate;_a.onImageRemove;_a.isDragging;var dragProps=_a.dragProps;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[renderProp?renderProp({clearImageData:onImageRemoveAll,openImageSelector:onImageUpload}):jsxRuntime.jsxs(FlexBox,{children:[jsxRuntime.jsx(Button$1,__assign$2({danger:true,icon:js.mdiTrashCanOutline,onClick:onImageRemoveAll},buttonProps)),originalImage?jsxRuntime.jsx(Button$1,__assign$2({disabled:cropMode,onClick:enableCropper},buttonProps,{children:"Edit"})):null,jsxRuntime.jsx(Button$1,__assign$2({onClick:onImageUpload},dragProps,buttonProps,{children:"Select Image"}))]}),cropMode&&originalImage?jsxRuntime.jsx(ImageCropper,{imageData:originalImage,onComplete:cacheCroppedImage}):null]});}}));};var dist={};Object.defineProperty(dist,'__esModule',{value:true});function __read(o,n){var m=typeof Symbol==="function"&&o[Symbol.iterator];if(!m)return o;var i=m.call(o),r,ar=[],e;try{while((n===void 0||n-->0)&&!(r=i.next()).done){ar.push(r.value);}}catch(error){e={error:error};}finally{try{if(r&&!r.done&&(m=i["return"]))m.call(i);}finally{if(e)throw e.error;}}return ar;}function __spreadArray(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;i++){if(ar||!(i in from)){if(!ar)ar=Array.prototype.slice.call(from,0,i);ar[i]=from[i];}}return to.concat(ar||Array.prototype.slice.call(from));}var LEVEL_STYLES={info:"background: #499cc8; color: white;",error:"background: #c14a4f; color: white;",warn:"background: #e0a270; color: black;"};var modules=new Set();var Logger=/** @class */function(){function Logger(moduleName){var _this=this;this.log=function(level){return function(){var args=[];for(var _i=0;_i<arguments.length;_i++){args[_i]=arguments[_i];}if(!modules.has(_this.moduleName))return;console[level].apply(console,__spreadArray(["%c".concat(Logger.packagePrefix()).concat(_this.moduleName),"".concat(LEVEL_STYLES[level]," padding: 2px 6px;")],__read(args),false));};};this.writeInfo=this.log("info");this.writeError=this.log("error");this.writeWarning=this.log("warn");this.moduleName=moduleName;}var _a;_a=Logger;Logger.packageName="";Logger.addModules=function(m){m.forEach(function(name){return modules.add(name);});};Logger.getModules=function(){return __spreadArray([],__read(modules),false);};Logger.packagePrefix=function(){return!!_a.packageName?"".concat(_a.packageName," : "):"";};return Logger;}();if(typeof window!=="undefined")window.Logger=Logger;var Logger_1=dist.Logger=Logger;var IconButton=styled__default["default"](function(_a){var primary=_a.primary,flat=_a.flat,pill=_a.pill,props=__rest(_a,["primary","flat","pill"]);return jsxRuntime.jsx(Button$1,__assign$2({flat:flat!=null?flat:true,fluid:false},props,{pill:pill!=null?pill:true,primary:primary!==null&&primary!==void 0?primary:false}));})(templateObject_1$3||(templateObject_1$3=__makeTemplateObject(["\n && {\n padding: 0.5em;\n min-width: 0;\n height: auto;\n }\n"],["\n && {\n padding: 0.5em;\n min-width: 0;\n height: auto;\n }\n"])));var templateObject_1$3;var TranslucentLoader=function(_a){var _css=_a._css,children=_a.children,className=_a.className,innerAs=_a.innerAs,_b=_a.isLoading,isLoading=_b===void 0?true:_b,_c=_a.fullScreenBackdrop,fullScreenBackdrop=_c===void 0?false:_c;var theme=React.useContext(styled.ThemeContext);return jsxRuntime.jsxs(Container$2,__assign$2({as:innerAs,className:className,_css:_css},{children:[children,isLoading?jsxRuntime.jsx(SpinnerContainer,__assign$2({alignItems:"center",fullScreen:fullScreenBackdrop,justifyContent:"center"},{children:jsxRuntime.jsx(Dots,{color:theme.styles.colorPrimary})})):null]}));};TranslucentLoader=styled__default["default"](TranslucentLoader)(templateObject_1$2||(templateObject_1$2=__makeTemplateObject([""],[""])));var Container$2=styled__default["default"].div(templateObject_2$2||(templateObject_2$2=__makeTemplateObject(["\n position: relative;\n ","\n"],["\n position: relative;\n ","\n"])),function(_a){var _css=_a._css;return _css?_css:"";});var SpinnerContainer=styled__default["default"](FlexBox)(templateObject_3$2||(templateObject_3$2=__makeTemplateObject(["\n background: white;\n opacity: 0.7;\n top: 0;\n left: 0;\n position: ",";\n height: 100%;\n width: 100%;\n z-index: 100;\n"],["\n background: white;\n opacity: 0.7;\n top: 0;\n left: 0;\n position: ",";\n height: 100%;\n width: 100%;\n z-index: 100;\n"])),function(_a){var fullScreen=_a.fullScreen;return fullScreen?"fixed":"absolute";});var templateObject_1$2,templateObject_2$2,templateObject_3$2;var useLoaderV2=function(){var _a=__read$1(React.useState(0),2),loadingCount=_a[0],setLoadingCount=_a[1];var isLoading=loadingCount>0;var loadingRef=useLatest(isLoading);var withLoading=React.useMemo(function(){return function(p){return __awaiter$1(void 0,void 0,void 0,function(){var val;return __generator$1(this,function(_a){switch(_a.label){case 0:setLoadingCount(function(c){return c+1;});_a.label=1;case 1:_a.trys.push([1,,3,4]);return[4/*yield*/,p];case 2:val=_a.sent();return[3/*break*/,4];case 3:setLoadingCount(function(c){return c-1;});return[7/*endfinally*/];case 4:return[2/*return*/,val];}});});};},[]);var Loader=React.useMemo(function(){return function(_a){var as=_a.as,props=__rest(_a,["as"]);return jsxRuntime.jsx(TranslucentLoader,__assign$2({},props,{innerAs:as,isLoading:loadingRef.current}));};},[loadingRef]);return{isLoading:isLoading,Loader:Loader,withLoading:withLoading};};var useLatest=function(value){var ref=React.useRef(value);ref.current=value;return ref;};var build={exports:{}};(function(module,exports){!function(e,t){module.exports=t();}(commonjsGlobal,function(){return function(e){function t(i){if(n[i])return n[i].exports;var r=n[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,t),r.l=!0,r.exports;}var n={};return t.m=e,t.c=n,t.d=function(e,n,i){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:i});},t.n=function(e){var n=e&&e.__esModule?function(){return e.default;}:function(){return e;};return t.d(n,"a",n),n;},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t);},t.p="",t(t.s=4);}([function(e,t,n){n.d(t,"b",function(){return o;}),n.d(t,"c",function(){return a;});var i=n(1),r=n(7);n.d(t,"a",function(){return r.a;}),n.d(t,"d",function(){return i.b;});var o=i.a.FACING_MODES,a=i.a.IMAGE_TYPES;},function(e,t,n){var i=n(6);n.d(t,"a",function(){return i.a;});var r=n(2);n.d(t,"b",function(){return r.a;});},function(e,t,n){function i(e,t){if(!(t>=0&&t<=1))throw new Error(t+" is invalid imageCompression, choose between: [0, 1]");if(!l.f.includes(e))throw new Error(e+" is invalid imageType, choose between: "+l.f.join(", "));return!0;}function r(e,t){var n={};try{i(e,t),n.imageType=e,n.imageCompression=t;}catch(e){console.error(e),console.error("default value of "+l.c.PNG+" is used"),n.imageType=l.c.PNG,n.imageCompression=null;}return n;}function o(){var e=window.navigator.platform,t=window.navigator.userAgent;return e||t;}function a(){return"ontouchend"in document;}function u(e,t,n){var i=e*parseFloat(n);return{imageWidth:i,imageHeight:t/(e/i)};}function c(e,t,n){return r(t,n).imageType===l.c.JPG?n?e.toDataURL(l.b[l.c.JPG],n):e.toDataURL(l.b[l.c.JPG]):e.toDataURL(l.b[t]);}function s(e,t){return e||t;}function f(){var e=o();if(/iPad|iPhone|iPod/.test(e))return!0;var t=a();return!(!/Mac/.test(e)||!t);}function d(){return{userAgent:window.navigator.userAgent,platform:window.navigator.platform,_getStringWithPlatform:o(),_getHasTouchEvents:a(),getIsIOS:f()};}t.c=u,t.b=c,t.e=s,t.d=f,t.a=d;var l=n(3);},function(e,t,n){function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e;}n.d(t,"e",function(){return o;}),n.d(t,"a",function(){return a;}),n.d(t,"f",function(){return u;}),n.d(t,"c",function(){return c;}),n.d(t,"b",function(){return s;}),n.d(t,"d",function(){return f;});var r,o=["user","environment"],a={USER:"user",ENVIRONMENT:"environment"},u=["jpg","png"],c={PNG:"png",JPG:"jpg"},s=(r={},i(r,"jpg","image/jpeg"),i(r,"png","image/png"),r),f={audio:!1,video:!0};},function(e,t,n){e.exports=n(5);},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var i=n(0);n.d(t,"FACING_MODES",function(){return i.b;}),n.d(t,"IMAGE_TYPES",function(){return i.c;}),n.d(t,"_getDebugPlatformInfo",function(){return i.d;});var r=n(9);n.d(t,"downloadPhoto",function(){return r.a;}),t.default=i.a;},function(e,t,n){function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function");}n.d(t,"a",function(){return u;});var r=n(2),o=n(3),a=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i);}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t;};}(),u=function(){function e(){i(this,e);}return a(e,null,[{key:"getDataUri",value:function(e,t){var n=t.sizeFactor,i=t.imageType,o=t.imageCompression,a=t.isImageMirror,u=e.videoWidth,c=e.videoHeight,s=Object(r.c)(u,c,n),f=s.imageWidth,d=s.imageHeight,l=document.createElement("canvas");l.width=f,l.height=d;var v=l.getContext("2d");return a&&v.setTransform(-1,0,0,1,l.width,0),v.drawImage(e,0,0,f,d),Object(r.b)(l,i,o);}},{key:"getWindowURL",value:function(){return window.URL||window.webkitURL||window.mozURL||window.msURL;}},{key:"getNavigatorMediaDevices",value:function(){var e=null,t=!(!navigator.mediaDevices||!navigator.mediaDevices.getUserMedia),n=!(!navigator.mozGetUserMedia&&!navigator.webkitGetUserMedia);if(t)e=navigator.mediaDevices;else if(n){var i=navigator.mozGetUserMedia||navigator.webkitGetUserMedia,r={getUserMedia:function(e){return new Promise(function(t,n){i.call(navigator,e,t,n);});}};e=Object.assign(i,r);}return e;}},{key:"isSupportedFacingMode",value:function(){return e.getNavigatorMediaDevices().getSupportedConstraints().facingMode;}},{key:"getIdealConstraints",value:function(t,n){if(!Object(r.e)(t,n))return o.d;var i=e.getNavigatorMediaDevices().getSupportedConstraints();if(!i.width||!i.height)return console.error("Constraint width or height not supported! fallback to default resolution"),o.d;var a=void 0,u=void 0;if(t){o.e.includes(t)?a=t:u={exact:t};}return{audio:!1,video:{facingMode:a,deviceId:u,width:n&&n.width,height:n&&n.height}};}},{key:"getMaxResolutionConstraints",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=arguments[1];console.warn("getMaxResolutionConstraints() numberOfMaxResolutionTry:",n);var i=[{width:{min:640}},{width:{min:800}},{width:{min:900}},{width:{min:1024}},{width:{min:1080}},{width:{min:1280}},{width:{min:1920}},{width:{min:2560}},{width:{min:3840}}],o=e.getIdealConstraints(t,{});if(0===n){if(Object(r.d)()){console.warn("fallback to iOS constraints");return e.getIdealConstraints(t,{width:{min:640,ideal:3840},height:{min:480,ideal:2160}});}return o.video.advanced=i,o;}if(n<i.length){var a=i.slice(0,-n);return o.video.advanced=a,o;}return null;}},{key:"FACING_MODES",get:function(){return o.a;}},{key:"IMAGE_TYPES",get:function(){return o.c;}}]),e;}();},function(e,t,n){function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function");}n.d(t,"a",function(){return c;});var r=n(1),o=n(8),a=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i);}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t;};}(),u=r.a.IMAGE_TYPES.PNG,c=function(){function e(t){i(this,e),this.videoElement=t,this.stream=null,this.numberOfMaxResolutionTry=0,this.settings=null,this.cameras=[],this.windowURL=r.a.getWindowURL(),this.mediaDevices=r.a.getNavigatorMediaDevices();}return a(e,[{key:"_getStreamDevice",value:function(e,t){var n=this;return new Promise(function(i,o){var a=r.a.getIdealConstraints(e,t);n.mediaDevices.getUserMedia(a).then(function(e){n._gotStream(e),i(e);}).catch(function(e){o(e);});});}},{key:"_getStreamDeviceMaxResolution",value:function(e){var t=this,n=r.a.getMaxResolutionConstraints(e,this.numberOfMaxResolutionTry);if(null==n){var i={};return this._getStreamDevice(e,i);}return new Promise(function(i,r){t.mediaDevices.getUserMedia(n).then(function(e){t._gotStream(e),i(e);}).catch(function(n){setTimeout(function(){t.numberOfMaxResolutionTry+=1,t._getStreamDeviceMaxResolution(e).catch(function(){r(n);});},20);});});}},{key:"_setVideoSrc",value:function(e){if("srcObject"in this.videoElement)this.videoElement.srcObject=e;else{var t=this.windowURL.createObjectURL(e);this.videoElement.src=t;}}},{key:"_setSettings",value:function(e){this.settings=null;var t=e&&e.getTracks?e.getTracks():[];t.length>0&&t[0].getSettings&&(this.settings=t[0].getSettings());}},{key:"_enumerateCamerasPromise",value:function(){var e=this;return new Promise(function(t,n){var i=[];e.mediaDevices.enumerateDevices().then(function(e){e.forEach(function(e){"videoinput"===e.kind&&e.deviceId&&i.push(e);}),t(i);}).catch(function(e){n(e);});});}},{key:"_gotStream",value:function(e){this.stream=e,this._setSettings(e),this._setVideoSrc(e);}},{key:"getCameraSettings",value:function(){return this.settings;}},{key:"enumerateCameras",value:function(){var e=this;return this.stream?this._enumerateCamerasPromise():this.stopCamera().then(function(){}).catch(function(){}).then(function(){var t={video:!0};return e.mediaDevices.getUserMedia(t).then(function(e){setTimeout(function(){e.getTracks().forEach(function(e){e.stop();});},20);}).then(function(){}).catch(function(){}).then(function(){return e._enumerateCamerasPromise();});});}},{key:"startCamera",value:function(e,t){var n=this;return this.stopCamera().then(function(){}).catch(function(){}).then(function(){return n._getStreamDevice(e,t);});}},{key:"startCameraMaxResolution",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.numberOfMaxResolutionTry=0,this.stopCamera().then(function(){}).catch(function(){}).then(function(){return e._getStreamDeviceMaxResolution(t);});}},{key:"getDataUri",value:function(e){var t={sizeFactor:void 0===e.sizeFactor?o.c:e.sizeFactor,imageType:void 0===e.imageType?u:e.imageType,imageCompression:void 0===e.imageCompression?o.a:e.imageCompression,isImageMirror:void 0===e.isImageMirror?o.b:e.isImageMirror};return r.a.getDataUri(this.videoElement,t);}},{key:"stopCamera",value:function(){var e=this;return new Promise(function(t,n){e.stream&&(e.stream.getTracks().forEach(function(e){e.stop();}),e.videoElement.src="",e.stream=null,e._setSettings(null),t()),n(Error("no stream to stop!"));});}}]),e;}();},function(e,t,n){n.d(t,"c",function(){return i;}),n.d(t,"a",function(){return r;}),n.d(t,"b",function(){return o;});var i=1,r=null,o=!1;},function(e,t,n){var i=n(10);n.d(t,"a",function(){return i.a;});},function(e,t,n){function i(e){for(var t=atob(e.split(",")[1]),n=e.split(",")[0].split(":")[1].split(";")[0],i=new ArrayBuffer(t.length),r=new Uint8Array(i),o=0;o<t.length;o++)r[o]=t.charCodeAt(o);return new Blob([i],{type:n});}function r(e,t){return e+="",e.length>=t?e:new Array(t-e.length+1).join("0")+e;}function o(e){var t=s.c.PNG;return"image/jpeg"===e&&(t=s.c.JPG),t;}function a(e,t,n){return e+"-"+r(t,4)+"."+o(n);}function u(e,t,n){window.URL=window.webkitURL||window.URL;var i=document.createElement("a");i.download=a(t,n,e.type),i.href=window.URL.createObjectURL(e);var r=document.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),i.dispatchEvent(r);}function c(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"photo",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;u(i(e),t,n);}t.a=c;var s=n(0);}]);});})(build);var CameraPhoto=/*@__PURE__*/getDefaultExportFromCjs(build.exports);var useTheme=function(){return React.useContext(styled.ThemeContext);};// export const setThemeContext = (ctx :)
11428
+ setCroppedArea(croppedAreaPixels);},[]);var submitCroppedImage=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var data;return __generator$1(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,croppedImageData()];case 1:data=_a.sent();if(data)onComplete(data);return[2/*return*/];}});});},[croppedImageData,onComplete]);return jsxRuntime.jsxs(FullScreen$1,__assign$2({withRows:true},{children:[jsxRuntime.jsx(Container$3,{children:jsxRuntime.jsx(Cropper,{aspect:aspectRatio,crop:crop,image:imageData===null||imageData===void 0?void 0:imageData.dataURL,maxZoom:MAX_SCALE$1,minZoom:MIN_SCALE$1,onCropChange:setCrop,onCropComplete:onCropComplete,onZoomChange:setZoom,setImageRef:function(ref){var _a;imageRef.current=(_a=ref.current)!==null&&_a!==void 0?_a:undefined;},zoom:zoom})}),jsxRuntime.jsxs(FlexBox,__assign$2({_css:styled.css(templateObject_1$4||(templateObject_1$4=__makeTemplateObject(["\n align-self: center;\n width: 300px;\n max-width: 100%;\n position: relative;\n "],["\n align-self: center;\n width: 300px;\n max-width: 100%;\n position: relative;\n "]))),withRows:true},{children:[jsxRuntime.jsx(Slider,{max:MAX_SCALE$1,min:MIN_SCALE$1,onChange:setZoom,step:0.1,throttleMilliseconds:50,value:zoom}),jsxRuntime.jsx(Button$1,__assign$2({fluid:true,onClick:submitCroppedImage},{children:"Crop"}))]}))]}));};var Container$3=styled__default["default"](FlexBox)(templateObject_2$3||(templateObject_2$3=__makeTemplateObject(["\n max-width: 100%;\n height: calc(100% - 100px);\n position: relative;\n"],["\n max-width: 100%;\n height: calc(100% - 100px);\n position: relative;\n"])));var FullScreen$1=styled__default["default"](FlexBox)(templateObject_3$3||(templateObject_3$3=__makeTemplateObject(["\n background: ",";\n position: fixed;\n height: 100%;\n width: 100%;\n left: 0;\n top: 0;\n z-index: ",";\n padding: ",";\n transition: top 0.5s ease-in-out;\n\n .ReactCrop.ReactCrop--fixed-aspect,\n .ReactCrop__child-wrapper {\n height: 100%;\n }\n"],["\n background: ",";\n position: fixed;\n height: 100%;\n width: 100%;\n left: 0;\n top: 0;\n z-index: ",";\n padding: ",";\n transition: top 0.5s ease-in-out;\n\n .ReactCrop.ReactCrop--fixed-aspect,\n .ReactCrop__child-wrapper {\n height: 100%;\n }\n"])),function(_a){var theme=_a.theme;return theme.styles.colors.white;},function(_a){var theme=_a.theme;return theme.styles.appBar.zIndex+1;},SPACINGS.SM);var templateObject_1$4,templateObject_2$3,templateObject_3$3;var dist$1={};var utils$1={};(function(exports){Object.defineProperty(exports,"__esModule",{value:true});exports.getListFiles=exports.getImage=exports.getBase64=exports.getAcceptTypeString=exports.openFileDialog=void 0;exports.openFileDialog=function(inputRef){if(inputRef.current)inputRef.current.click();};exports.getAcceptTypeString=function(acceptType,allowNonImageType){if(acceptType===null||acceptType===void 0?void 0:acceptType.length)return acceptType.map(function(item){return"."+item;}).join(', ');if(allowNonImageType)return'';return'image/*';};exports.getBase64=function(file){var reader=new FileReader();return new Promise(function(resolve){reader.addEventListener('load',function(){return resolve(String(reader.result));});reader.readAsDataURL(file);});};exports.getImage=function(file){var image=new Image();return new Promise(function(resolve){image.addEventListener('load',function(){return resolve(image);});image.src=URL.createObjectURL(file);});};exports.getListFiles=function(files,dataURLKey){var promiseFiles=[];for(var i=0;i<files.length;i+=1){promiseFiles.push(exports.getBase64(files[i]));}return Promise.all(promiseFiles).then(function(fileListBase64){var fileList=fileListBase64.map(function(base64,index){var _a;return _a={},_a[dataURLKey]=base64,_a.file=files[index],_a;});return fileList;});};})(utils$1);var validation={};var constants={};Object.defineProperty(constants,"__esModule",{value:true});constants.DEFAULT_DATA_URL_KEY=constants.INIT_MAX_NUMBER=constants.DEFAULT_NULL_INDEX=void 0;constants.DEFAULT_NULL_INDEX=-1;constants.INIT_MAX_NUMBER=1000;constants.DEFAULT_DATA_URL_KEY='dataURL';(function(exports){var __awaiter=commonjsGlobal&&commonjsGlobal.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value);});}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value));}catch(e){reject(e);}}function rejected(value){try{step(generator["throw"](value));}catch(e){reject(e);}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected);}step((generator=generator.apply(thisArg,_arguments||[])).next());});};var __generator=commonjsGlobal&&commonjsGlobal.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1];},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),"throw":verb(1),"return":verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this;}),g;function verb(n){return function(v){return step([n,v]);};}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue;}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break;}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break;}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break;}if(t[2])_.ops.pop();_.trys.pop();continue;}op=body.call(thisArg,_);}catch(e){op=[6,e];y=0;}finally{f=t=0;}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true};}};Object.defineProperty(exports,"__esModule",{value:true});exports.getErrorValidation=exports.isMaxNumberValid=exports.isAcceptTypeValid=exports.isMaxFileSizeValid=exports.isImageValid=exports.isResolutionValid=void 0;var constants_1=constants;var utils_1=utils$1;exports.isResolutionValid=function(image,resolutionType,resolutionWidth,resolutionHeight){if(resolutionWidth===void 0){resolutionWidth=0;}if(resolutionHeight===void 0){resolutionHeight=1;}if(!resolutionWidth||!resolutionHeight||!image.width||!image.height)return true;switch(resolutionType){case'absolute':{if(image.width===resolutionWidth&&image.height===resolutionHeight)return true;break;}case'ratio':{var ratio=resolutionWidth/resolutionHeight;if(image.width/image.height===ratio)return true;break;}case'less':{if(image.width<=resolutionWidth&&image.height<=resolutionHeight)return true;break;}case'more':{if(image.width>=resolutionWidth&&image.height>=resolutionHeight)return true;break;}}return false;};exports.isImageValid=function(fileType){if(fileType.includes('image')){return true;}return false;};exports.isMaxFileSizeValid=function(fileSize,maxFileSize){return maxFileSize?fileSize<=maxFileSize:true;};exports.isAcceptTypeValid=function(acceptType,fileName){if(acceptType&&acceptType.length>0){var type_1=fileName.split('.').pop()||'';if(acceptType.findIndex(function(item){return item.toLowerCase()===type_1.toLowerCase();})<0)return false;}return true;};exports.isMaxNumberValid=function(totalNumber,maxNumber,keyUpdate){if(maxNumber!==0&&!maxNumber)return true;if(keyUpdate===constants_1.DEFAULT_NULL_INDEX){if(totalNumber<=maxNumber)return true;}else if(totalNumber<=maxNumber+1)return true;return false;};exports.getErrorValidation=function(_a){var fileList=_a.fileList,value=_a.value,maxNumber=_a.maxNumber,keyUpdate=_a.keyUpdate,acceptType=_a.acceptType,maxFileSize=_a.maxFileSize,resolutionType=_a.resolutionType,resolutionWidth=_a.resolutionWidth,resolutionHeight=_a.resolutionHeight,allowNonImageType=_a.allowNonImageType;return __awaiter(void 0,void 0,void 0,function(){var newErrors,i,file,image,checkRes;return __generator(this,function(_b){switch(_b.label){case 0:newErrors={};if(!!exports.isMaxNumberValid(fileList.length+value.length,maxNumber,keyUpdate))return[3/*break*/,1];newErrors.maxNumber=true;return[3/*break*/,5];case 1:i=0;_b.label=2;case 2:if(!(i<fileList.length))return[3/*break*/,5];file=fileList[i].file;if(!file)return[3/*break*/,4];if(!allowNonImageType&&!exports.isImageValid(file.type)){newErrors.acceptType=true;return[3/*break*/,5];}if(!exports.isAcceptTypeValid(acceptType,file.name)){newErrors.acceptType=true;return[3/*break*/,5];}if(!exports.isMaxFileSizeValid(file.size,maxFileSize)){newErrors.maxFileSize=true;return[3/*break*/,5];}if(!resolutionType)return[3/*break*/,4];return[4/*yield*/,utils_1.getImage(file)];case 3:image=_b.sent();checkRes=exports.isResolutionValid(image,resolutionType,resolutionWidth,resolutionHeight);if(!checkRes){newErrors.resolution=true;return[3/*break*/,5];}_b.label=4;case 4:i+=1;return[3/*break*/,2];case 5:if(Object.values(newErrors).find(Boolean))return[2/*return*/,newErrors];return[2/*return*/,null];}});});};})(validation);var __assign=commonjsGlobal&&commonjsGlobal.__assign||function(){__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++){s=arguments[i];for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))t[p]=s[p];}return t;};return __assign.apply(this,arguments);};var __createBinding=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;Object.defineProperty(o,k2,{enumerable:true,get:function(){return m[k];}});}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k];});var __setModuleDefault=commonjsGlobal&&commonjsGlobal.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v});}:function(o,v){o["default"]=v;});var __importStar=commonjsGlobal&&commonjsGlobal.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result;};var __awaiter=commonjsGlobal&&commonjsGlobal.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P(function(resolve){resolve(value);});}return new(P||(P=Promise))(function(resolve,reject){function fulfilled(value){try{step(generator.next(value));}catch(e){reject(e);}}function rejected(value){try{step(generator["throw"](value));}catch(e){reject(e);}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected);}step((generator=generator.apply(thisArg,_arguments||[])).next());});};var __generator=commonjsGlobal&&commonjsGlobal.__generator||function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1];},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),"throw":verb(1),"return":verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this;}),g;function verb(n){return function(v){return step([n,v]);};}function step(op){if(f)throw new TypeError("Generator is already executing.");while(_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue;}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break;}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break;}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break;}if(t[2])_.ops.pop();_.trys.pop();continue;}op=body.call(thisArg,_);}catch(e){op=[6,e];y=0;}finally{f=t=0;}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true};}};var __spreadArrays=commonjsGlobal&&commonjsGlobal.__spreadArrays||function(){for(var s=0,i=0,il=arguments.length;i<il;i++)s+=arguments[i].length;for(var r=Array(s),k=0,i=0;i<il;i++)for(var a=arguments[i],j=0,jl=a.length;j<jl;j++,k++)r[k]=a[j];return r;};Object.defineProperty(dist$1,"__esModule",{value:true});var react_1=__importStar(React__default["default"]);var utils_1=utils$1;var validation_1=validation;var constants_1=constants;var ReactImageUploading=function(_a){var _b=_a.value,value=_b===void 0?[]:_b,onChange=_a.onChange,onError=_a.onError,children=_a.children,_c=_a.dataURLKey,dataURLKey=_c===void 0?constants_1.DEFAULT_DATA_URL_KEY:_c,_d=_a.multiple,multiple=_d===void 0?false:_d,_e=_a.maxNumber,maxNumber=_e===void 0?constants_1.INIT_MAX_NUMBER:_e,acceptType=_a.acceptType,maxFileSize=_a.maxFileSize,resolutionWidth=_a.resolutionWidth,resolutionHeight=_a.resolutionHeight,resolutionType=_a.resolutionType,_f=_a.inputProps,inputProps=_f===void 0?{}:_f,_g=_a.allowNonImageType,allowNonImageType=_g===void 0?false:_g;var inValue=value||[];var inputRef=react_1.useRef(null);var _h=react_1.useState(constants_1.DEFAULT_NULL_INDEX),keyUpdate=_h[0],setKeyUpdate=_h[1];var _j=react_1.useState(null),errors=_j[0],setErrors=_j[1];var _k=react_1.useState(false),isDragging=_k[0],setIsDragging=_k[1];var handleClickInput=react_1.useCallback(function(){return utils_1.openFileDialog(inputRef);},[inputRef]);var onImageUpload=react_1.useCallback(function(){setKeyUpdate(constants_1.DEFAULT_NULL_INDEX);handleClickInput();},[handleClickInput]);var onImageRemoveAll=react_1.useCallback(function(){onChange===null||onChange===void 0?void 0:onChange([]);},[onChange]);var onImageRemove=function(index){var updatedList=__spreadArrays(inValue);if(Array.isArray(index)){index.forEach(function(i){updatedList.splice(i,1);});}else{updatedList.splice(index,1);}onChange===null||onChange===void 0?void 0:onChange(updatedList);};var onImageUpdate=function(index){setKeyUpdate(index);handleClickInput();};var validate=function(fileList){return __awaiter(void 0,void 0,void 0,function(){var errorsValidation;return __generator(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,validation_1.getErrorValidation({fileList:fileList,maxFileSize:maxFileSize,maxNumber:maxNumber,acceptType:acceptType,keyUpdate:keyUpdate,resolutionType:resolutionType,resolutionWidth:resolutionWidth,resolutionHeight:resolutionHeight,value:inValue,allowNonImageType:allowNonImageType})];case 1:errorsValidation=_a.sent();if(errorsValidation){setErrors(errorsValidation);onError===null||onError===void 0?void 0:onError(errorsValidation,fileList);return[2/*return*/,false];}errors&&setErrors(null);return[2/*return*/,true];}});});};var handleChange=function(files){return __awaiter(void 0,void 0,void 0,function(){var fileList,checkValidate,updatedFileList,updatedIndexes,firstFile,i;return __generator(this,function(_a){switch(_a.label){case 0:if(!files)return[2/*return*/];return[4/*yield*/,utils_1.getListFiles(files,dataURLKey)];case 1:fileList=_a.sent();if(!fileList.length)return[2/*return*/];return[4/*yield*/,validate(fileList)];case 2:checkValidate=_a.sent();if(!checkValidate)return[2/*return*/];updatedIndexes=[];if(keyUpdate>constants_1.DEFAULT_NULL_INDEX){firstFile=fileList[0];updatedFileList=__spreadArrays(inValue);updatedFileList[keyUpdate]=firstFile;updatedIndexes.push(keyUpdate);}else if(multiple){updatedFileList=__spreadArrays(inValue,fileList);for(i=inValue.length;i<updatedFileList.length;i+=1){updatedIndexes.push(i);}}else{updatedFileList=[fileList[0]];updatedIndexes.push(0);}onChange===null||onChange===void 0?void 0:onChange(updatedFileList,updatedIndexes);return[2/*return*/];}});});};var onInputChange=function(e){return __awaiter(void 0,void 0,void 0,function(){return __generator(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,handleChange(e.target.files)];case 1:_a.sent();keyUpdate>constants_1.DEFAULT_NULL_INDEX&&setKeyUpdate(constants_1.DEFAULT_NULL_INDEX);if(inputRef.current)inputRef.current.value='';return[2/*return*/];}});});};var acceptTypeString=react_1.useMemo(function(){return utils_1.getAcceptTypeString(acceptType,allowNonImageType);},[acceptType,allowNonImageType]);var handleDrag=function(e){e.preventDefault();e.stopPropagation();};var handleDragIn=function(e){e.preventDefault();e.stopPropagation();if(e.dataTransfer.items&&e.dataTransfer.items.length>0){setIsDragging(true);}};var handleDragOut=function(e){e.preventDefault();e.stopPropagation();setIsDragging(false);};var handleDrop=function(e){e.preventDefault();e.stopPropagation();setIsDragging(false);if(e.dataTransfer.files&&e.dataTransfer.files.length>0){handleChange(e.dataTransfer.files);}};var handleDragStart=function(e){e.preventDefault();e.stopPropagation();e.dataTransfer.clearData();};return react_1.default.createElement(react_1.default.Fragment,null,react_1.default.createElement("input",__assign({type:"file",accept:acceptTypeString,ref:inputRef,multiple:multiple&&keyUpdate===constants_1.DEFAULT_NULL_INDEX,onChange:onInputChange,style:{display:'none'}},inputProps)),children===null||children===void 0?void 0:children({imageList:inValue,onImageUpload:onImageUpload,onImageRemoveAll:onImageRemoveAll,onImageUpdate:onImageUpdate,onImageRemove:onImageRemove,errors:errors,dragProps:{onDrop:handleDrop,onDragEnter:handleDragIn,onDragLeave:handleDragOut,onDragOver:handleDrag,onDragStart:handleDragStart},isDragging:isDragging}));};var _default=dist$1.default=ReactImageUploading;var ImageUploader=function(_a){var buttonProps=_a.buttonProps,renderProp=_a.children,imageData=_a.imageData,onChange=_a.onChange;var _b=__read$1(React.useState(false),2),cropMode=_b[0],setCropModeTo=_b[1];var _c=__read$1(React.useState(imageData),2),originalImage=_c[0],setOriginalImage=_c[1];var enableCropper=React.useCallback(function(){setCropModeTo(true);},[]);var cacheCroppedImage=React.useCallback(function(croppedImage){onChange(croppedImage);setCropModeTo(false);},[onChange]);var cacheUploadedImage=React.useCallback(function(imageList){if(isEmpty(imageList)){setOriginalImage(undefined);onChange(undefined);return;}setOriginalImage(imageList[0]);enableCropper();},[enableCropper,onChange]);return jsxRuntime.jsx(_default,__assign$2({dataURLKey:"dataURL",onChange:cacheUploadedImage,value:imageData?[imageData]:[]},{children:function(_a){_a.imageList;var onImageUpload=_a.onImageUpload,onImageRemoveAll=_a.onImageRemoveAll;_a.onImageUpdate;_a.onImageRemove;_a.isDragging;var dragProps=_a.dragProps;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[renderProp?renderProp({clearImageData:onImageRemoveAll,openImageSelector:onImageUpload}):jsxRuntime.jsxs(FlexBox,{children:[jsxRuntime.jsx(Button$1,__assign$2({danger:true,icon:js.mdiTrashCanOutline,onClick:onImageRemoveAll},buttonProps)),originalImage?jsxRuntime.jsx(Button$1,__assign$2({disabled:cropMode,onClick:enableCropper},buttonProps,{children:"Edit"})):null,jsxRuntime.jsx(Button$1,__assign$2({onClick:onImageUpload},dragProps,buttonProps,{children:"Select Image"}))]}),cropMode&&originalImage?jsxRuntime.jsx(ImageCropper,{imageData:originalImage,onComplete:cacheCroppedImage}):null]});}}));};var dist={};Object.defineProperty(dist,'__esModule',{value:true});function __read(o,n){var m=typeof Symbol==="function"&&o[Symbol.iterator];if(!m)return o;var i=m.call(o),r,ar=[],e;try{while((n===void 0||n-->0)&&!(r=i.next()).done){ar.push(r.value);}}catch(error){e={error:error};}finally{try{if(r&&!r.done&&(m=i["return"]))m.call(i);}finally{if(e)throw e.error;}}return ar;}function __spreadArray(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;i++){if(ar||!(i in from)){if(!ar)ar=Array.prototype.slice.call(from,0,i);ar[i]=from[i];}}return to.concat(ar||Array.prototype.slice.call(from));}var LEVEL_STYLES={info:"background: #499cc8; color: white;",error:"background: #c14a4f; color: white;",warn:"background: #e0a270; color: black;"};var modules=new Set();var Logger=/** @class */function(){function Logger(moduleName){var _this=this;this.log=function(level){return function(){var args=[];for(var _i=0;_i<arguments.length;_i++){args[_i]=arguments[_i];}if(!modules.has(_this.moduleName))return;console[level].apply(console,__spreadArray(["%c".concat(Logger.packagePrefix()).concat(_this.moduleName),"".concat(LEVEL_STYLES[level]," padding: 2px 6px;")],__read(args),false));};};this.writeInfo=this.log("info");this.writeError=this.log("error");this.writeWarning=this.log("warn");this.moduleName=moduleName;}var _a;_a=Logger;Logger.packageName="";Logger.addModules=function(m){m.forEach(function(name){return modules.add(name);});};Logger.getModules=function(){return __spreadArray([],__read(modules),false);};Logger.packagePrefix=function(){return!!_a.packageName?"".concat(_a.packageName," : "):"";};return Logger;}();if(typeof window!=="undefined")window.Logger=Logger;var Logger_1=dist.Logger=Logger;var IconButton=styled__default["default"](function(_a){var primary=_a.primary,flat=_a.flat,pill=_a.pill,props=__rest(_a,["primary","flat","pill"]);return jsxRuntime.jsx(Button$1,__assign$2({flat:flat!=null?flat:true,fluid:false},props,{pill:pill!=null?pill:true,primary:primary!==null&&primary!==void 0?primary:false}));})(templateObject_1$3||(templateObject_1$3=__makeTemplateObject(["\n && {\n padding: 0.5em;\n min-width: 0;\n height: auto;\n }\n"],["\n && {\n padding: 0.5em;\n min-width: 0;\n height: auto;\n }\n"])));var templateObject_1$3;var TranslucentLoader=function(_a){var _css=_a._css,children=_a.children,className=_a.className,innerAs=_a.innerAs,_b=_a.isLoading,isLoading=_b===void 0?true:_b,_c=_a.fullScreenBackdrop,fullScreenBackdrop=_c===void 0?false:_c;var theme=React.useContext(styled.ThemeContext);return jsxRuntime.jsxs(Container$2,__assign$2({as:innerAs,className:className,_css:_css},{children:[children,isLoading?jsxRuntime.jsx(SpinnerContainer,__assign$2({alignItems:"center",fullScreen:fullScreenBackdrop,justifyContent:"center"},{children:jsxRuntime.jsx(Dots,{color:theme.styles.colorPrimary})})):null]}));};TranslucentLoader=styled__default["default"](TranslucentLoader)(templateObject_1$2||(templateObject_1$2=__makeTemplateObject([""],[""])));var Container$2=styled__default["default"].div(templateObject_2$2||(templateObject_2$2=__makeTemplateObject(["\n position: relative;\n ","\n"],["\n position: relative;\n ","\n"])),function(_a){var _css=_a._css;return _css?_css:"";});var SpinnerContainer=styled__default["default"](FlexBox)(templateObject_3$2||(templateObject_3$2=__makeTemplateObject(["\n background: white;\n opacity: 0.7;\n top: 0;\n left: 0;\n position: ",";\n height: 100%;\n width: 100%;\n z-index: 100;\n"],["\n background: white;\n opacity: 0.7;\n top: 0;\n left: 0;\n position: ",";\n height: 100%;\n width: 100%;\n z-index: 100;\n"])),function(_a){var fullScreen=_a.fullScreen;return fullScreen?"fixed":"absolute";});var templateObject_1$2,templateObject_2$2,templateObject_3$2;var LOADING_DELAY_MS=100;var useLoaderV2=function(){var _a=__read$1(React.useState(0),2),loadingCount=_a[0],setLoadingCount=_a[1];var isLoading=loadingCount>0;var loadingRef=useLatest(isLoading);var withLoading=React.useMemo(function(){return function(p){return __awaiter$1(void 0,void 0,void 0,function(){var shown,timer,val;return __generator$1(this,function(_a){switch(_a.label){case 0:shown=false;timer=setTimeout(function(){shown=true;setLoadingCount(function(c){return c+1;});},LOADING_DELAY_MS);_a.label=1;case 1:_a.trys.push([1,,3,4]);return[4/*yield*/,p];case 2:val=_a.sent();return[3/*break*/,4];case 3:clearTimeout(timer);if(shown)setLoadingCount(function(c){return c-1;});return[7/*endfinally*/];case 4:return[2/*return*/,val];}});});};},[]);var Loader=React.useMemo(function(){return function(_a){var as=_a.as,props=__rest(_a,["as"]);return jsxRuntime.jsx(TranslucentLoader,__assign$2({},props,{innerAs:as,isLoading:loadingRef.current}));};},[loadingRef]);return{isLoading:isLoading,Loader:Loader,withLoading:withLoading};};var useLatest=function(value){var ref=React.useRef(value);ref.current=value;return ref;};var build={exports:{}};(function(module,exports){!function(e,t){module.exports=t();}(commonjsGlobal,function(){return function(e){function t(i){if(n[i])return n[i].exports;var r=n[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,t),r.l=!0,r.exports;}var n={};return t.m=e,t.c=n,t.d=function(e,n,i){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:i});},t.n=function(e){var n=e&&e.__esModule?function(){return e.default;}:function(){return e;};return t.d(n,"a",n),n;},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t);},t.p="",t(t.s=4);}([function(e,t,n){n.d(t,"b",function(){return o;}),n.d(t,"c",function(){return a;});var i=n(1),r=n(7);n.d(t,"a",function(){return r.a;}),n.d(t,"d",function(){return i.b;});var o=i.a.FACING_MODES,a=i.a.IMAGE_TYPES;},function(e,t,n){var i=n(6);n.d(t,"a",function(){return i.a;});var r=n(2);n.d(t,"b",function(){return r.a;});},function(e,t,n){function i(e,t){if(!(t>=0&&t<=1))throw new Error(t+" is invalid imageCompression, choose between: [0, 1]");if(!l.f.includes(e))throw new Error(e+" is invalid imageType, choose between: "+l.f.join(", "));return!0;}function r(e,t){var n={};try{i(e,t),n.imageType=e,n.imageCompression=t;}catch(e){console.error(e),console.error("default value of "+l.c.PNG+" is used"),n.imageType=l.c.PNG,n.imageCompression=null;}return n;}function o(){var e=window.navigator.platform,t=window.navigator.userAgent;return e||t;}function a(){return"ontouchend"in document;}function u(e,t,n){var i=e*parseFloat(n);return{imageWidth:i,imageHeight:t/(e/i)};}function c(e,t,n){return r(t,n).imageType===l.c.JPG?n?e.toDataURL(l.b[l.c.JPG],n):e.toDataURL(l.b[l.c.JPG]):e.toDataURL(l.b[t]);}function s(e,t){return e||t;}function f(){var e=o();if(/iPad|iPhone|iPod/.test(e))return!0;var t=a();return!(!/Mac/.test(e)||!t);}function d(){return{userAgent:window.navigator.userAgent,platform:window.navigator.platform,_getStringWithPlatform:o(),_getHasTouchEvents:a(),getIsIOS:f()};}t.c=u,t.b=c,t.e=s,t.d=f,t.a=d;var l=n(3);},function(e,t,n){function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e;}n.d(t,"e",function(){return o;}),n.d(t,"a",function(){return a;}),n.d(t,"f",function(){return u;}),n.d(t,"c",function(){return c;}),n.d(t,"b",function(){return s;}),n.d(t,"d",function(){return f;});var r,o=["user","environment"],a={USER:"user",ENVIRONMENT:"environment"},u=["jpg","png"],c={PNG:"png",JPG:"jpg"},s=(r={},i(r,"jpg","image/jpeg"),i(r,"png","image/png"),r),f={audio:!1,video:!0};},function(e,t,n){e.exports=n(5);},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var i=n(0);n.d(t,"FACING_MODES",function(){return i.b;}),n.d(t,"IMAGE_TYPES",function(){return i.c;}),n.d(t,"_getDebugPlatformInfo",function(){return i.d;});var r=n(9);n.d(t,"downloadPhoto",function(){return r.a;}),t.default=i.a;},function(e,t,n){function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function");}n.d(t,"a",function(){return u;});var r=n(2),o=n(3),a=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i);}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t;};}(),u=function(){function e(){i(this,e);}return a(e,null,[{key:"getDataUri",value:function(e,t){var n=t.sizeFactor,i=t.imageType,o=t.imageCompression,a=t.isImageMirror,u=e.videoWidth,c=e.videoHeight,s=Object(r.c)(u,c,n),f=s.imageWidth,d=s.imageHeight,l=document.createElement("canvas");l.width=f,l.height=d;var v=l.getContext("2d");return a&&v.setTransform(-1,0,0,1,l.width,0),v.drawImage(e,0,0,f,d),Object(r.b)(l,i,o);}},{key:"getWindowURL",value:function(){return window.URL||window.webkitURL||window.mozURL||window.msURL;}},{key:"getNavigatorMediaDevices",value:function(){var e=null,t=!(!navigator.mediaDevices||!navigator.mediaDevices.getUserMedia),n=!(!navigator.mozGetUserMedia&&!navigator.webkitGetUserMedia);if(t)e=navigator.mediaDevices;else if(n){var i=navigator.mozGetUserMedia||navigator.webkitGetUserMedia,r={getUserMedia:function(e){return new Promise(function(t,n){i.call(navigator,e,t,n);});}};e=Object.assign(i,r);}return e;}},{key:"isSupportedFacingMode",value:function(){return e.getNavigatorMediaDevices().getSupportedConstraints().facingMode;}},{key:"getIdealConstraints",value:function(t,n){if(!Object(r.e)(t,n))return o.d;var i=e.getNavigatorMediaDevices().getSupportedConstraints();if(!i.width||!i.height)return console.error("Constraint width or height not supported! fallback to default resolution"),o.d;var a=void 0,u=void 0;if(t){o.e.includes(t)?a=t:u={exact:t};}return{audio:!1,video:{facingMode:a,deviceId:u,width:n&&n.width,height:n&&n.height}};}},{key:"getMaxResolutionConstraints",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",n=arguments[1];console.warn("getMaxResolutionConstraints() numberOfMaxResolutionTry:",n);var i=[{width:{min:640}},{width:{min:800}},{width:{min:900}},{width:{min:1024}},{width:{min:1080}},{width:{min:1280}},{width:{min:1920}},{width:{min:2560}},{width:{min:3840}}],o=e.getIdealConstraints(t,{});if(0===n){if(Object(r.d)()){console.warn("fallback to iOS constraints");return e.getIdealConstraints(t,{width:{min:640,ideal:3840},height:{min:480,ideal:2160}});}return o.video.advanced=i,o;}if(n<i.length){var a=i.slice(0,-n);return o.video.advanced=a,o;}return null;}},{key:"FACING_MODES",get:function(){return o.a;}},{key:"IMAGE_TYPES",get:function(){return o.c;}}]),e;}();},function(e,t,n){function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function");}n.d(t,"a",function(){return c;});var r=n(1),o=n(8),a=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i);}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t;};}(),u=r.a.IMAGE_TYPES.PNG,c=function(){function e(t){i(this,e),this.videoElement=t,this.stream=null,this.numberOfMaxResolutionTry=0,this.settings=null,this.cameras=[],this.windowURL=r.a.getWindowURL(),this.mediaDevices=r.a.getNavigatorMediaDevices();}return a(e,[{key:"_getStreamDevice",value:function(e,t){var n=this;return new Promise(function(i,o){var a=r.a.getIdealConstraints(e,t);n.mediaDevices.getUserMedia(a).then(function(e){n._gotStream(e),i(e);}).catch(function(e){o(e);});});}},{key:"_getStreamDeviceMaxResolution",value:function(e){var t=this,n=r.a.getMaxResolutionConstraints(e,this.numberOfMaxResolutionTry);if(null==n){var i={};return this._getStreamDevice(e,i);}return new Promise(function(i,r){t.mediaDevices.getUserMedia(n).then(function(e){t._gotStream(e),i(e);}).catch(function(n){setTimeout(function(){t.numberOfMaxResolutionTry+=1,t._getStreamDeviceMaxResolution(e).catch(function(){r(n);});},20);});});}},{key:"_setVideoSrc",value:function(e){if("srcObject"in this.videoElement)this.videoElement.srcObject=e;else{var t=this.windowURL.createObjectURL(e);this.videoElement.src=t;}}},{key:"_setSettings",value:function(e){this.settings=null;var t=e&&e.getTracks?e.getTracks():[];t.length>0&&t[0].getSettings&&(this.settings=t[0].getSettings());}},{key:"_enumerateCamerasPromise",value:function(){var e=this;return new Promise(function(t,n){var i=[];e.mediaDevices.enumerateDevices().then(function(e){e.forEach(function(e){"videoinput"===e.kind&&e.deviceId&&i.push(e);}),t(i);}).catch(function(e){n(e);});});}},{key:"_gotStream",value:function(e){this.stream=e,this._setSettings(e),this._setVideoSrc(e);}},{key:"getCameraSettings",value:function(){return this.settings;}},{key:"enumerateCameras",value:function(){var e=this;return this.stream?this._enumerateCamerasPromise():this.stopCamera().then(function(){}).catch(function(){}).then(function(){var t={video:!0};return e.mediaDevices.getUserMedia(t).then(function(e){setTimeout(function(){e.getTracks().forEach(function(e){e.stop();});},20);}).then(function(){}).catch(function(){}).then(function(){return e._enumerateCamerasPromise();});});}},{key:"startCamera",value:function(e,t){var n=this;return this.stopCamera().then(function(){}).catch(function(){}).then(function(){return n._getStreamDevice(e,t);});}},{key:"startCameraMaxResolution",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.numberOfMaxResolutionTry=0,this.stopCamera().then(function(){}).catch(function(){}).then(function(){return e._getStreamDeviceMaxResolution(t);});}},{key:"getDataUri",value:function(e){var t={sizeFactor:void 0===e.sizeFactor?o.c:e.sizeFactor,imageType:void 0===e.imageType?u:e.imageType,imageCompression:void 0===e.imageCompression?o.a:e.imageCompression,isImageMirror:void 0===e.isImageMirror?o.b:e.isImageMirror};return r.a.getDataUri(this.videoElement,t);}},{key:"stopCamera",value:function(){var e=this;return new Promise(function(t,n){e.stream&&(e.stream.getTracks().forEach(function(e){e.stop();}),e.videoElement.src="",e.stream=null,e._setSettings(null),t()),n(Error("no stream to stop!"));});}}]),e;}();},function(e,t,n){n.d(t,"c",function(){return i;}),n.d(t,"a",function(){return r;}),n.d(t,"b",function(){return o;});var i=1,r=null,o=!1;},function(e,t,n){var i=n(10);n.d(t,"a",function(){return i.a;});},function(e,t,n){function i(e){for(var t=atob(e.split(",")[1]),n=e.split(",")[0].split(":")[1].split(";")[0],i=new ArrayBuffer(t.length),r=new Uint8Array(i),o=0;o<t.length;o++)r[o]=t.charCodeAt(o);return new Blob([i],{type:n});}function r(e,t){return e+="",e.length>=t?e:new Array(t-e.length+1).join("0")+e;}function o(e){var t=s.c.PNG;return"image/jpeg"===e&&(t=s.c.JPG),t;}function a(e,t,n){return e+"-"+r(t,4)+"."+o(n);}function u(e,t,n){window.URL=window.webkitURL||window.URL;var i=document.createElement("a");i.download=a(t,n,e.type),i.href=window.URL.createObjectURL(e);var r=document.createEvent("MouseEvents");r.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),i.dispatchEvent(r);}function c(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"photo",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;u(i(e),t,n);}t.a=c;var s=n(0);}]);});})(build);var CameraPhoto=/*@__PURE__*/getDefaultExportFromCjs(build.exports);var useTheme=function(){return React.useContext(styled.ThemeContext);};// export const setThemeContext = (ctx :)
11429
11429
  var useDocumentEdgeDetection=function(){var analyzeDocumentEdges=React.useCallback(function(base64Image){return __awaiter$1(void 0,void 0,void 0,function(){var img,canvas,context,imageData,data,width,height,gray,i,r,g,b,edges,y,x,idx,gx,gy,threshold,binary,edgePoints,y,x,xs,ys,getPercentile,leftX,rightX,topY,bottomY,docWidth,docHeight,aspectRatio,isReasonableAspectRatio,areaRatio,isReasonableSize,perimeterEdges,perimeterRatio,hasPerimeterConcentration,confidence,baseConfidence,aspectBonus,detected;return __generator$1(this,function(_a){switch(_a.label){case 0:img=new Image();img.src=base64Image;return[4/*yield*/,new Promise(function(resolve,reject){img.onload=resolve;img.onerror=reject;})// Create a canvas to get image data
11430
11430
  ];case 1:_a.sent();canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;context=canvas.getContext("2d");if(!context)return[2/*return*/,null];context.drawImage(img,0,0,canvas.width,canvas.height);imageData=context.getImageData(0,0,canvas.width,canvas.height);data=imageData.data;width=canvas.width;height=canvas.height;gray=new Array(width*height);for(i=0;i<data.length;i+=4){r=data[i];g=data[i+1];b=data[i+2];gray[i/4]=0.299*r+0.587*g+0.114*b;}edges=new Array(width*height).fill(0);for(y=1;y<height-1;y++){for(x=1;x<width-1;x++){idx=y*width+x;gx=-gray[idx-width-1]+gray[idx-width+1]-2*gray[idx-1]+2*gray[idx+1]-gray[idx+width-1]+gray[idx+width+1];gy=-gray[idx-width-1]-2*gray[idx-width]-gray[idx-width+1]+gray[idx+width-1]+2*gray[idx+width]+gray[idx+width+1];edges[idx]=Math.sqrt(gx*gx+gy*gy);}}threshold=50;binary=edges.map(function(val){return val>threshold?255:0;});edgePoints=[];for(y=0;y<height;y++){for(x=0;x<width;x++){if(binary[y*width+x]===255){edgePoints.push({x:x,y:y});}}}// If not enough edge points, no document detected
11431
11431
  if(edgePoints.length<100){return[2/*return*/,{confidence:0,corners:null,detected:false}];}xs=edgePoints.map(function(p){return p.x;}).sort(function(a,b){return a-b;});ys=edgePoints.map(function(p){return p.y;}).sort(function(a,b){return a-b;});getPercentile=function(arr,percentile){var idx=Math.floor(arr.length*percentile);return arr[idx];};leftX=getPercentile(xs,0.05);rightX=getPercentile(xs,0.95);topY=getPercentile(ys,0.05);bottomY=getPercentile(ys,0.95);docWidth=rightX-leftX;docHeight=bottomY-topY;aspectRatio=docWidth/docHeight;isReasonableAspectRatio=aspectRatio>0.7&&aspectRatio<1.6;areaRatio=docWidth*docHeight/(width*height);isReasonableSize=areaRatio>0.3&&areaRatio<0.8;perimeterEdges=edgePoints.filter(function(p){var nearLeft=Math.abs(p.x-leftX)<docWidth*0.1;var nearRight=Math.abs(p.x-rightX)<docWidth*0.1;var nearTop=Math.abs(p.y-topY)<docHeight*0.1;var nearBottom=Math.abs(p.y-bottomY)<docHeight*0.1;return nearLeft||nearRight||nearTop||nearBottom;});perimeterRatio=perimeterEdges.length/edgePoints.length;hasPerimeterConcentration=perimeterRatio>0.4;confidence=0;if(isReasonableAspectRatio&&isReasonableSize&&hasPerimeterConcentration){baseConfidence=Math.round(perimeterRatio*100);aspectBonus=Math.abs(aspectRatio-1.414)<0.2||Math.abs(aspectRatio-1.294)<0.2?10:0;confidence=Math.min(100,baseConfidence+aspectBonus);}detected=confidence>60;return[2/*return*/,{confidence:confidence,corners:detected?{bottomLeft:{x:leftX,y:bottomY},bottomRight:{x:rightX,y:bottomY},topLeft:{x:leftX,y:topY},topRight:{x:rightX,y:topY}}:null,detected:detected}];}});});},[]);return{analyzeDocumentEdges:analyzeDocumentEdges};};var EXPOSURE_ASSESSMENTS={overexposed:"overexposed",slightly_overexposed:"slightly_overexposed",underexposed:"underexposed",slightly_underexposed:"slightly_underexposed",well_exposed:"well_exposed"};var useExposureAnalysis=function(){var getExposureAssessment=React.useCallback(function(clippedHighlights,clippedShadows,meanBrightness){// Overexposed if too many bright pixels or very high mean brightness
@@ -11785,14 +11785,22 @@ var sum=0;var sumSquares=0;var pixelCount=data.length/4;for(var i=0;i<data.lengt
11785
11785
  ];case 1:_c.sent();canvas=document.createElement("canvas");sampleWidth=Math.min(640,img.width);sampleHeight=Math.min(480,img.height);canvas.width=sampleWidth;canvas.height=sampleHeight;context=canvas.getContext("2d");if(!context)return[2/*return*/,null];context.drawImage(img,0,0,sampleWidth,sampleHeight);imageData=context.getImageData(0,0,sampleWidth,sampleHeight);sharpnessValue=calculateSharpnessFromImageData(imageData);contrastValue=calculateContrastFromImageData(imageData);sharpnessAssessment=getQualityAssessment(sharpnessValue,TEXT_SHARPNESS_LEVELS);contrastAssessment=getQualityAssessment(contrastValue,TEXT_CONTRAST_LEVELS);if(!skipOcrDetection)return[3/*break*/,2];_a=null;return[3/*break*/,4];case 2:return[4/*yield*/,performOCR(base64Image)// Overall quality is the worse of the two
11786
11786
  ];case 3:_a=_c.sent();_c.label=4;case 4:ocrResult=_a;assessmentRanking=(_b={},_b[TEXT_QUALITY_ASSESSMENTS.excellent]=4,_b[TEXT_QUALITY_ASSESSMENTS.good]=3,_b[TEXT_QUALITY_ASSESSMENTS.poor]=2,_b[TEXT_QUALITY_ASSESSMENTS.very_poor]=1,_b);overallQuality=assessmentRanking[sharpnessAssessment]<assessmentRanking[contrastAssessment]?sharpnessAssessment:contrastAssessment;return[2/*return*/,{contrast:{assessment:contrastAssessment,value:contrastValue},ocr:ocrResult,overallQuality:overallQuality,sharpness:{assessment:sharpnessAssessment,value:sharpnessValue}}];}});});},[calculateContrastFromImageData,calculateSharpnessFromImageData,getQualityAssessment,performOCR,skipOcrDetection]);// Initialize Tesseract worker (skip if OCR detection is disabled)
11787
11787
  React.useEffect(function(){if(skipOcrDetection){setIsOCRReady(true);// Set ready immediately when OCR is skipped
11788
- return;}var worker=null;var initWorker=function(){return __awaiter$1(void 0,void 0,void 0,function(){var error_2;return __generator$1(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4/*yield*/,src.createWorker("eng")];case 1:worker=_a.sent();workerRef.current=worker;setIsOCRReady(true);logger$1.writeInfo("Tesseract worker initialized");return[3/*break*/,3];case 2:error_2=_a.sent();logger$1.writeError("Failed to initialize Tesseract worker",error_2);return[3/*break*/,3];case 3:return[2/*return*/];}});});};initWorker();return function(){if(worker){worker.terminate();workerRef.current=null;setIsOCRReady(false);}};},[skipOcrDetection]);return{analyzeTextQuality:analyzeTextQuality,isOCRReady:isOCRReady};};var logger=new Logger_1("PhotoBooth");var PhotoBooth=function(_a){var _b=_a.documentMode,documentMode=_b===void 0?false:_b,onCameraCapabilitiesDetected=_a.onCameraCapabilitiesDetected,onDocumentEdgeDetected=_a.onDocumentEdgeDetected,onExposureDetected=_a.onExposureDetected,onGlareDetected=_a.onGlareDetected,_c=_a.onHideCamera,onHideCamera=_c===void 0?DO_NOTHING:_c,onLightLevelChange=_a.onLightLevelChange,onMotionBlurDetected=_a.onMotionBlurDetected,onNoiseDetected=_a.onNoiseDetected,onPerspectiveDetected=_a.onPerspectiveDetected,onPreviewChanged=_a.onPreviewChanged,_d=_a.onSilentError,onSilentError=_d===void 0?DO_NOTHING:_d,onSubmit=_a.onSubmit,onTextQualityDetected=_a.onTextQualityDetected,open=_a.open,_e=_a.skipOcrDetection,skipOcrDetection=_e===void 0?false:_e,trigger=_a.trigger;if(lodash.exports.isBoolean(open)&&trigger)throw new Error("PhotoBooth cannot have `open` and a `trigger` set at the same time");var theme=useTheme();var _f=__read$1(React.useState([]),2),cameraIds=_f[0],setCameraIds=_f[1];var _g=__read$1(React.useState(0),2),currentCameraIdIndex=_g[0],setCurrentCameraIdIndex=_g[1];var _h=__read$1(React.useState(false),2),_isCameraVisible=_h[0],setIsCameraVisibleTo=_h[1];var _j=__read$1(React.useState({x:0,y:0}),2),panPosition=_j[0],setPanPosition=_j[1];var _k=__read$1(React.useState(),2),previewSrc=_k[0],setPreviewSrc=_k[1];var _l=__read$1(React.useState(1),2),zoomScale=_l[0],setZoomScale=_l[1];var cameraPhoto=React.useRef();var canvasRef=React.useRef(null);var previewContainerRef=React.useRef(null);var previewRef=React.useRef(null);var touchStateRef=React.useRef({initialDistance:null,initialScale:1,initialPan:{x:0,y:0},lastPan:{x:0,y:0},isPinching:false});var viewFinderRef=React.useRef(null);var isCameraVisible=React.useMemo(function(){return open!==null&&open!==void 0?open:_isCameraVisible;},[_isCameraVisible,open]);var _m=useLoaderV2(),withLoading=_m.withLoading,isLoading=_m.isLoading;var _o=useLoaderV2(),withSubmitLoading=_o.withLoading,isSubmitting=_o.isLoading;var clearPhoto=React.useCallback(function(){setPreviewSrc(undefined);setZoomScale(1);setPanPosition({x:0,y:0});},[]);var getDeviceCameraIds=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var cameras,foundIds;return __generator$1(this,function(_a){switch(_a.label){case 0:if(isNotEmpty(cameraIds))return[2/*return*/];return[4/*yield*/,cameraPhoto.current.enumerateCameras()];case 1:cameras=_a.sent();foundIds=cameras.map(function(c){return c.deviceId;}).reverse();logger.writeInfo("cameras",cameras);if(isEmpty(foundIds))foundIds.concat([build.exports.FACING_MODES.ENVIRONMENT]);setCameraIds(foundIds);return[2/*return*/];}});});},[cameraIds]);var showCamera=React.useCallback(function(){setIsCameraVisibleTo(true);},[]);var removeCameraId=React.useCallback(function(){setCameraIds(function(prevState){return takeOutItem(prevState,currentCameraIdIndex);});},[currentCameraIdIndex]);// Use detection hooks
11789
- var analyzeDocumentEdges=useDocumentEdgeDetection().analyzeDocumentEdges;var analyzeExposure=useExposureAnalysis().analyzeExposure;var analyzeGlare=useGlareDetection().analyzeGlare;var analyzeLightLevel=useLightLevelDetection().analyzeLightLevel;var _p=useMotionBlurDetection(),analyzeMotionBlur=_p.analyzeMotionBlur,resetMotionBlur=_p.reset;var analyzeNoise=useNoiseDetection().analyzeNoise;var analyzePerspective=usePerspectiveDetection().analyzePerspective;var _q=useTextQualityDetection({skipOcrDetection:skipOcrDetection}),analyzeTextQuality=_q.analyzeTextQuality,isOCRReady=_q.isOCRReady;var logCameraCapabilities=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var stream,videoTrack,capabilities,settings,currentWidth,currentHeight,megapixels,maxWidth,maxHeight,maxMegapixels,video,canvas,lightLevelData,context,base64Image,capabilitiesAny,settingsAny,cameraCapabilitiesData;var _a,_b,_c;return __generator$1(this,function(_d){switch(_d.label){case 0:stream=(_a=cameraPhoto.current)===null||_a===void 0?void 0:_a.stream;if(!stream)return[2/*return*/];videoTrack=stream.getVideoTracks()[0];if(!videoTrack)return[2/*return*/];capabilities=videoTrack.getCapabilities();settings=videoTrack.getSettings();currentWidth=settings.width||0;currentHeight=settings.height||0;megapixels=(currentWidth*currentHeight/1000000).toFixed(2);maxWidth=((_b=capabilities.width)===null||_b===void 0?void 0:_b.max)||0;maxHeight=((_c=capabilities.height)===null||_c===void 0?void 0:_c.max)||0;maxMegapixels=(maxWidth*maxHeight/1000000).toFixed(2);video=viewFinderRef.current;canvas=canvasRef.current;lightLevelData=null;if(!(video&&canvas))return[3/*break*/,2];context=canvas.getContext("2d");if(!context)return[3/*break*/,2];canvas.width=video.videoWidth;canvas.height=video.videoHeight;context.drawImage(video,0,0,canvas.width,canvas.height);base64Image=canvas.toDataURL("image/png");return[4/*yield*/,analyzeLightLevel(base64Image)];case 1:lightLevelData=_d.sent();_d.label=2;case 2:// Call callback with light level data
11790
- if(lightLevelData&&onLightLevelChange){onLightLevelChange(lightLevelData);}capabilitiesAny=capabilities;settingsAny=settings;cameraCapabilitiesData={capabilities:{aspectRatio:capabilities.aspectRatio,brightness:capabilitiesAny.brightness,colorTemperature:capabilitiesAny.colorTemperature,contrast:capabilitiesAny.contrast,deviceId:capabilitiesAny.deviceId,exposureCompensation:capabilitiesAny.exposureCompensation,exposureMode:capabilitiesAny.exposureMode,exposureTime:capabilitiesAny.exposureTime,facingMode:capabilities.facingMode,focusDistance:capabilitiesAny.focusDistance,focusMode:capabilitiesAny.focusMode,frameRate:capabilities.frameRate,groupId:capabilitiesAny.groupId,height:capabilities.height,resizeMode:capabilitiesAny.resizeMode,saturation:capabilitiesAny.saturation,sharpness:capabilitiesAny.sharpness,whiteBalanceMode:capabilitiesAny.whiteBalanceMode,width:capabilities.width,zoom:capabilitiesAny.zoom},currentSettings:{aspectRatio:settings.aspectRatio,brightness:settingsAny.brightness,colorTemperature:settingsAny.colorTemperature,contrast:settingsAny.contrast,deviceId:settings.deviceId,exposureCompensation:settingsAny.exposureCompensation,exposureMode:settingsAny.exposureMode,exposureTime:settingsAny.exposureTime,facingMode:settings.facingMode,focusDistance:settingsAny.focusDistance,focusMode:settingsAny.focusMode,frameRate:settings.frameRate,groupId:settingsAny.groupId,height:settings.height,resizeMode:settingsAny.resizeMode,saturation:settingsAny.saturation,sharpness:settingsAny.sharpness,whiteBalanceMode:settingsAny.whiteBalanceMode,width:settings.width,zoom:settingsAny.zoom},deviceId:videoTrack.getSettings().deviceId,label:videoTrack.label,megapixels:{current:"".concat(megapixels," MP (").concat(currentWidth,"x").concat(currentHeight,")"),maximum:"".concat(maxMegapixels," MP (").concat(maxWidth,"x").concat(maxHeight,")")}};// Call callback with camera capabilities data
11791
- if(onCameraCapabilitiesDetected){onCameraCapabilitiesDetected(cameraCapabilitiesData);}logger.writeInfo("Camera Capabilities",__assign$2(__assign$2({},cameraCapabilitiesData),{lightLevel:lightLevelData?{brightnessPercentage:"".concat(lightLevelData.brightnessPercentage,"%"),rawValue:lightLevelData.rawValue,status:lightLevelData.status}:"Not available"}));return[2/*return*/];}});});},[analyzeLightLevel,onCameraCapabilitiesDetected,onLightLevelChange]);var startCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var cameraId,e_1;return __generator$1(this,function(_a){switch(_a.label){case 0:cameraId=cameraIds[currentCameraIdIndex];_a.label=1;case 1:_a.trys.push([1,3,,4]);// @ts-ignore
11792
- return[4/*yield*/,withLoading(cameraPhoto.current.startCamera(cameraId))// Wait for video to render first frame before logging capabilities
11793
- ];case 2:// @ts-ignore
11794
- _a.sent();// Wait for video to render first frame before logging capabilities
11795
- setTimeout(function(){logCameraCapabilities();},500);return[3/*break*/,4];case 3:e_1=_a.sent();if(!e_1.message.includes("Could not start video source"))throw e_1;onSilentError(new Error("Could not start video source for camera: ".concat(cameraId)));removeCameraId();return[3/*break*/,4];case 4:return[2/*return*/];}});});},[cameraIds,currentCameraIdIndex,logCameraCapabilities,onSilentError,removeCameraId,withLoading]);var stopCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var e_2;return __generator$1(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4/*yield*/,withLoading(cameraPhoto.current.stopCamera())];case 1:_a.sent();return[3/*break*/,3];case 2:e_2=_a.sent();if(!e_2.message.includes("no stream to stop"))throw e_2;return[3/*break*/,3];case 3:return[2/*return*/];}});});},[withLoading]);var hideCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var _a;return __generator$1(this,function(_b){switch(_b.label){case 0:if(!((_a=cameraPhoto.current)===null||_a===void 0?void 0:_a.stream))return[2/*return*/];return[4/*yield*/,stopCamera().then()];case 1:_b.sent();setIsCameraVisibleTo(false);onHideCamera();return[2/*return*/];}});});},[onHideCamera,stopCamera]);var submitPhoto=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var blob,file;return __generator$1(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,fetch(previewSrc)];case 1:return[4/*yield*/,_a.sent().blob()];case 2:blob=_a.sent();file=new File([blob],"image.png");_a.label=3;case 3:_a.trys.push([3,,5,6]);return[4/*yield*/,withSubmitLoading(onSubmit({file:file,dataUri:previewSrc}))];case 4:_a.sent();return[3/*break*/,6];case 5:clearPhoto();hideCamera().then();return[7/*endfinally*/];case 6:return[2/*return*/];}});});},[clearPhoto,hideCamera,onSubmit,previewSrc,withSubmitLoading]);var switchCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var nextIdIndex;return __generator$1(this,function(_a){nextIdIndex=nextItemIndex(cameraIds,currentCameraIdIndex);setCurrentCameraIdIndex(nextIdIndex);return[2/*return*/];});});},[cameraIds,currentCameraIdIndex]);var takePhoto=React.useCallback(function(){var dataUri=cameraPhoto.current.getDataUri({imageCompression:0.95,imageType:build.exports.IMAGE_TYPES.PNG,isImageMirror:false,sizeFactor:1});setPreviewSrc(dataUri);},[]);// Periodically analyze image quality while camera is active
11788
+ return;}var worker=null;var initWorker=function(){return __awaiter$1(void 0,void 0,void 0,function(){var error_2;return __generator$1(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4/*yield*/,src.createWorker("eng")];case 1:worker=_a.sent();workerRef.current=worker;setIsOCRReady(true);logger$1.writeInfo("Tesseract worker initialized");return[3/*break*/,3];case 2:error_2=_a.sent();logger$1.writeError("Failed to initialize Tesseract worker",error_2);return[3/*break*/,3];case 3:return[2/*return*/];}});});};initWorker();return function(){if(worker){worker.terminate();workerRef.current=null;setIsOCRReady(false);}};},[skipOcrDetection]);return{analyzeTextQuality:analyzeTextQuality,isOCRReady:isOCRReady};};var logger=new Logger_1("PhotoBooth");var PhotoBooth=function(_a){var _b=_a.documentMode,documentMode=_b===void 0?false:_b,_c=_a.highQualityViewfinder,highQualityViewfinder=_c===void 0?false:_c,onCameraCapabilitiesDetected=_a.onCameraCapabilitiesDetected,onDocumentEdgeDetected=_a.onDocumentEdgeDetected,onExposureDetected=_a.onExposureDetected,onGlareDetected=_a.onGlareDetected,_d=_a.onHideCamera,onHideCamera=_d===void 0?DO_NOTHING:_d,onLightLevelChange=_a.onLightLevelChange,onMotionBlurDetected=_a.onMotionBlurDetected,onNoiseDetected=_a.onNoiseDetected,onPerspectiveDetected=_a.onPerspectiveDetected,onPreviewChanged=_a.onPreviewChanged,_e=_a.onSilentError,onSilentError=_e===void 0?DO_NOTHING:_e,onSubmit=_a.onSubmit,onTextQualityDetected=_a.onTextQualityDetected,open=_a.open,_f=_a.skipOcrDetection,skipOcrDetection=_f===void 0?false:_f,trigger=_a.trigger;if(lodash.exports.isBoolean(open)&&trigger)throw new Error("PhotoBooth cannot have `open` and a `trigger` set at the same time");var theme=useTheme();var _g=__read$1(React.useState([]),2),cameraIds=_g[0],setCameraIds=_g[1];var _h=__read$1(React.useState(null),2),cameraZoomCapability=_h[0],setCameraZoomCapability=_h[1];var _j=__read$1(React.useState(0),2),currentCameraIdIndex=_j[0],setCurrentCameraIdIndex=_j[1];var _k=__read$1(React.useState(1),2),currentCameraZoom=_k[0],setCurrentCameraZoom=_k[1];var _l=__read$1(React.useState(false),2),_isCameraVisible=_l[0],setIsCameraVisibleTo=_l[1];var _m=__read$1(React.useState(false),2),isZoomModeActive=_m[0],setIsZoomModeActive=_m[1];var _o=__read$1(React.useState({x:0,y:0}),2),panPosition=_o[0],setPanPosition=_o[1];var _p=__read$1(React.useState(),2),previewSrc=_p[0],setPreviewSrc=_p[1];var _q=__read$1(React.useState(1),2),zoomScale=_q[0],setZoomScale=_q[1];var cameraPhoto=React.useRef();var canvasRef=React.useRef(null);var previewContainerRef=React.useRef(null);var previewRef=React.useRef(null);var touchStateRef=React.useRef({initialDistance:null,initialScale:1,initialPan:{x:0,y:0},lastPan:{x:0,y:0},isPinching:false});var viewFinderRef=React.useRef(null);var isCameraVisible=React.useMemo(function(){return open!==null&&open!==void 0?open:_isCameraVisible;},[_isCameraVisible,open]);var _r=useLoaderV2(),withLoading=_r.withLoading,isLoading=_r.isLoading;var _s=useLoaderV2(),withSubmitLoading=_s.withLoading,isSubmitting=_s.isLoading;var clearPhoto=React.useCallback(function(){setPreviewSrc(undefined);setZoomScale(1);setPanPosition({x:0,y:0});setIsZoomModeActive(false);},[]);var getDeviceCameraIds=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var cameras,foundIds;return __generator$1(this,function(_a){switch(_a.label){case 0:if(isNotEmpty(cameraIds))return[2/*return*/];return[4/*yield*/,cameraPhoto.current.enumerateCameras()];case 1:cameras=_a.sent();foundIds=cameras.map(function(c){return c.deviceId;}).reverse();logger.writeInfo("cameras",cameras);if(isEmpty(foundIds))foundIds.concat([build.exports.FACING_MODES.ENVIRONMENT]);setCameraIds(foundIds);return[2/*return*/];}});});},[cameraIds]);var showCamera=React.useCallback(function(){setIsCameraVisibleTo(true);},[]);var removeCameraId=React.useCallback(function(){setCameraIds(function(prevState){return takeOutItem(prevState,currentCameraIdIndex);});},[currentCameraIdIndex]);var applyZoom=React.useCallback(function(zoomLevel){return __awaiter$1(void 0,void 0,void 0,function(){var stream,videoTrack,capabilities,_a,_b,min,_c,max,boundedZoom,error_1;var _d;return __generator$1(this,function(_e){switch(_e.label){case 0:stream=(_d=cameraPhoto.current)===null||_d===void 0?void 0:_d.stream;if(!stream)return[2/*return*/];videoTrack=stream.getVideoTracks()[0];if(!videoTrack)return[2/*return*/];capabilities=videoTrack.getCapabilities();if(!capabilities.zoom)return[3/*break*/,4];_a=capabilities.zoom,_b=_a.min,min=_b===void 0?1:_b,_c=_a.max,max=_c===void 0?1:_c;boundedZoom=Math.max(min,Math.min(max,zoomLevel));_e.label=1;case 1:_e.trys.push([1,3,,4]);// Apply the zoom constraint
11789
+ // Use type assertion for zoom property not in TypeScript 4.6 definitions
11790
+ return[4/*yield*/,videoTrack.applyConstraints({advanced:[{zoom:boundedZoom}]})];case 2:// Apply the zoom constraint
11791
+ // Use type assertion for zoom property not in TypeScript 4.6 definitions
11792
+ _e.sent();setCurrentCameraZoom(boundedZoom);logger.writeInfo("Applied zoom",{zoomLevel:boundedZoom});return[3/*break*/,4];case 3:error_1=_e.sent();logger.writeError("Failed to apply zoom",error_1);return[3/*break*/,4];case 4:return[2/*return*/];}});});},[]);// Use detection hooks
11793
+ var analyzeDocumentEdges=useDocumentEdgeDetection().analyzeDocumentEdges;var analyzeExposure=useExposureAnalysis().analyzeExposure;var analyzeGlare=useGlareDetection().analyzeGlare;var analyzeLightLevel=useLightLevelDetection().analyzeLightLevel;var _t=useMotionBlurDetection(),analyzeMotionBlur=_t.analyzeMotionBlur,resetMotionBlur=_t.reset;var analyzeNoise=useNoiseDetection().analyzeNoise;var analyzePerspective=usePerspectiveDetection().analyzePerspective;var _u=useTextQualityDetection({skipOcrDetection:skipOcrDetection}),analyzeTextQuality=_u.analyzeTextQuality,isOCRReady=_u.isOCRReady;var logCameraCapabilities=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var stream,videoTrack,capabilities,settings,capabilitiesAny,settingsAny,currentWidth,currentHeight,megapixels,maxWidth,maxHeight,maxMegapixels,video,canvas,lightLevelData,context,base64Image,cameraCapabilitiesData;var _a,_b,_c;return __generator$1(this,function(_d){switch(_d.label){case 0:stream=(_a=cameraPhoto.current)===null||_a===void 0?void 0:_a.stream;if(!stream)return[2/*return*/];videoTrack=stream.getVideoTracks()[0];if(!videoTrack)return[2/*return*/];capabilities=videoTrack.getCapabilities();settings=videoTrack.getSettings();capabilitiesAny=capabilities;settingsAny=settings;if(capabilitiesAny.zoom){setCameraZoomCapability(capabilitiesAny.zoom);setCurrentCameraZoom(settingsAny.zoom||1);}else{setCameraZoomCapability(null);setCurrentCameraZoom(1);}currentWidth=settings.width||0;currentHeight=settings.height||0;megapixels=(currentWidth*currentHeight/1000000).toFixed(2);maxWidth=((_b=capabilities.width)===null||_b===void 0?void 0:_b.max)||0;maxHeight=((_c=capabilities.height)===null||_c===void 0?void 0:_c.max)||0;maxMegapixels=(maxWidth*maxHeight/1000000).toFixed(2);video=viewFinderRef.current;canvas=canvasRef.current;lightLevelData=null;if(!(video&&canvas))return[3/*break*/,2];context=canvas.getContext("2d");if(!context)return[3/*break*/,2];canvas.width=video.videoWidth;canvas.height=video.videoHeight;context.drawImage(video,0,0,canvas.width,canvas.height);base64Image=canvas.toDataURL("image/png");return[4/*yield*/,analyzeLightLevel(base64Image)];case 1:lightLevelData=_d.sent();_d.label=2;case 2:// Call callback with light level data
11794
+ if(lightLevelData&&onLightLevelChange){onLightLevelChange(lightLevelData);}cameraCapabilitiesData={capabilities:{aspectRatio:capabilities.aspectRatio,brightness:capabilitiesAny.brightness,colorTemperature:capabilitiesAny.colorTemperature,contrast:capabilitiesAny.contrast,deviceId:capabilitiesAny.deviceId,exposureCompensation:capabilitiesAny.exposureCompensation,exposureMode:capabilitiesAny.exposureMode,exposureTime:capabilitiesAny.exposureTime,facingMode:capabilities.facingMode,focusDistance:capabilitiesAny.focusDistance,focusMode:capabilitiesAny.focusMode,frameRate:capabilities.frameRate,groupId:capabilitiesAny.groupId,height:capabilities.height,resizeMode:capabilitiesAny.resizeMode,saturation:capabilitiesAny.saturation,sharpness:capabilitiesAny.sharpness,whiteBalanceMode:capabilitiesAny.whiteBalanceMode,width:capabilities.width,zoom:capabilitiesAny.zoom},currentSettings:{aspectRatio:settings.aspectRatio,brightness:settingsAny.brightness,colorTemperature:settingsAny.colorTemperature,contrast:settingsAny.contrast,deviceId:settings.deviceId,exposureCompensation:settingsAny.exposureCompensation,exposureMode:settingsAny.exposureMode,exposureTime:settingsAny.exposureTime,facingMode:settings.facingMode,focusDistance:settingsAny.focusDistance,focusMode:settingsAny.focusMode,frameRate:settings.frameRate,groupId:settingsAny.groupId,height:settings.height,resizeMode:settingsAny.resizeMode,saturation:settingsAny.saturation,sharpness:settingsAny.sharpness,whiteBalanceMode:settingsAny.whiteBalanceMode,width:settings.width,zoom:settingsAny.zoom},deviceId:videoTrack.getSettings().deviceId,label:videoTrack.label,megapixels:{current:"".concat(megapixels," MP (").concat(currentWidth,"x").concat(currentHeight,")"),maximum:"".concat(maxMegapixels," MP (").concat(maxWidth,"x").concat(maxHeight,")")}};// Call callback with camera capabilities data
11795
+ if(onCameraCapabilitiesDetected){onCameraCapabilitiesDetected(cameraCapabilitiesData);}logger.writeInfo("Camera Capabilities",__assign$2(__assign$2({},cameraCapabilitiesData),{lightLevel:lightLevelData?{brightnessPercentage:"".concat(lightLevelData.brightnessPercentage,"%"),rawValue:lightLevelData.rawValue,status:lightLevelData.status}:"Not available"}));return[2/*return*/];}});});},[analyzeLightLevel,onCameraCapabilitiesDetected,onLightLevelChange]);var startCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var cameraId,constraints,stream,e_1;return __generator$1(this,function(_a){switch(_a.label){case 0:cameraId=cameraIds[currentCameraIdIndex];_a.label=1;case 1:_a.trys.push([1,6,,7]);if(!highQualityViewfinder)return[3/*break*/,3];constraints={video:{deviceId:cameraId,width:{ideal:4000},height:{ideal:3000},facingMode:cameraId.includes("user")?"user":"environment"},audio:false};logger.writeInfo("Starting high quality camera",constraints);return[4/*yield*/,navigator.mediaDevices.getUserMedia(constraints)// Set the stream to the video element
11796
+ ];case 2:stream=_a.sent();// Set the stream to the video element
11797
+ if(viewFinderRef.current){viewFinderRef.current.srcObject=stream;cameraPhoto.current.stream=stream;}return[3/*break*/,5];case 3:// Use default CameraPhoto library settings (lower quality for performance)
11798
+ // @ts-ignore
11799
+ return[4/*yield*/,cameraPhoto.current.startCamera(cameraId)];case 4:// Use default CameraPhoto library settings (lower quality for performance)
11800
+ // @ts-ignore
11801
+ _a.sent();_a.label=5;case 5:// Wait for video to render first frame before logging capabilities
11802
+ setTimeout(function(){logCameraCapabilities();},500);return[3/*break*/,7];case 6:e_1=_a.sent();if(!e_1.message.includes("Could not start video source"))throw e_1;onSilentError(new Error("Could not start video source for camera: ".concat(cameraId)));removeCameraId();return[3/*break*/,7];case 7:return[2/*return*/];}});});},[cameraIds,currentCameraIdIndex,highQualityViewfinder,logCameraCapabilities,onSilentError,removeCameraId,withLoading]);var stopCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var e_2;return __generator$1(this,function(_a){switch(_a.label){case 0:_a.trys.push([0,2,,3]);return[4/*yield*/,withLoading(cameraPhoto.current.stopCamera())];case 1:_a.sent();return[3/*break*/,3];case 2:e_2=_a.sent();if(!e_2.message.includes("no stream to stop"))throw e_2;return[3/*break*/,3];case 3:return[2/*return*/];}});});},[withLoading]);var hideCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var _a;return __generator$1(this,function(_b){switch(_b.label){case 0:if(!((_a=cameraPhoto.current)===null||_a===void 0?void 0:_a.stream))return[2/*return*/];return[4/*yield*/,stopCamera().then()];case 1:_b.sent();setIsCameraVisibleTo(false);onHideCamera();return[2/*return*/];}});});},[onHideCamera,stopCamera]);var submitPhoto=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var blob,file;return __generator$1(this,function(_a){switch(_a.label){case 0:return[4/*yield*/,fetch(previewSrc)];case 1:return[4/*yield*/,_a.sent().blob()];case 2:blob=_a.sent();file=new File([blob],"image.png");_a.label=3;case 3:_a.trys.push([3,,5,6]);return[4/*yield*/,withSubmitLoading(onSubmit({file:file,dataUri:previewSrc}))];case 4:_a.sent();return[3/*break*/,6];case 5:clearPhoto();hideCamera().then();return[7/*endfinally*/];case 6:return[2/*return*/];}});});},[clearPhoto,hideCamera,onSubmit,previewSrc,withSubmitLoading]);var switchCamera=React.useCallback(function(){return __awaiter$1(void 0,void 0,void 0,function(){var nextIdIndex;return __generator$1(this,function(_a){nextIdIndex=nextItemIndex(cameraIds,currentCameraIdIndex);setCurrentCameraIdIndex(nextIdIndex);// Reset zoom when switching cameras
11803
+ setCurrentCameraZoom(1);setIsZoomModeActive(false);return[2/*return*/];});});},[cameraIds,currentCameraIdIndex]);var takePhoto=React.useCallback(function(){var dataUri=cameraPhoto.current.getDataUri({imageCompression:0.95,imageType:build.exports.IMAGE_TYPES.PNG,isImageMirror:false,sizeFactor:1});setPreviewSrc(dataUri);},[]);// Periodically analyze image quality while camera is active
11796
11804
  React.useEffect(function(){if(!isCameraVisible||previewSrc)return;// Check if any detection callback is provided
11797
11805
  var hasAnyCallback=onTextQualityDetected||onMotionBlurDetected||onGlareDetected||onExposureDetected||onNoiseDetected||onDocumentEdgeDetected||onPerspectiveDetected;if(!hasAnyCallback)return;var intervalId=setInterval(function(){return __awaiter$1(void 0,void 0,void 0,function(){var video,canvas,context,base64Image,detections,_a,textQualityData,motionBlurData,glareData,exposureData,noiseData,documentEdgeData,perspectiveData;var _b;return __generator$1(this,function(_c){switch(_c.label){case 0:video=viewFinderRef.current;canvas=canvasRef.current;if(!video||!canvas||!((_b=cameraPhoto.current)===null||_b===void 0?void 0:_b.stream))return[2/*return*/];context=canvas.getContext("2d");if(!context)return[2/*return*/];canvas.width=video.videoWidth;canvas.height=video.videoHeight;context.drawImage(video,0,0,canvas.width,canvas.height);base64Image=canvas.toDataURL("image/png");return[4/*yield*/,Promise.all([onTextQualityDetected&&isOCRReady?analyzeTextQuality(base64Image):null,onMotionBlurDetected?analyzeMotionBlur(base64Image):null,onGlareDetected?analyzeGlare(base64Image):null,onExposureDetected?analyzeExposure(base64Image):null,onNoiseDetected?analyzeNoise(base64Image):null,onDocumentEdgeDetected&&documentMode?analyzeDocumentEdges(base64Image):null,onPerspectiveDetected&&documentMode?analyzePerspective(base64Image):null])];case 1:detections=_c.sent();_a=__read$1(detections,7),textQualityData=_a[0],motionBlurData=_a[1],glareData=_a[2],exposureData=_a[3],noiseData=_a[4],documentEdgeData=_a[5],perspectiveData=_a[6];// Call callbacks with results
11798
11806
  if(textQualityData&&onTextQualityDetected){onTextQualityDetected(textQualityData);}if(motionBlurData&&onMotionBlurDetected){onMotionBlurDetected(motionBlurData);}if(glareData&&onGlareDetected){onGlareDetected(glareData);}if(exposureData&&onExposureDetected){onExposureDetected(exposureData);}if(noiseData&&onNoiseDetected){onNoiseDetected(noiseData);}if(documentEdgeData&&onDocumentEdgeDetected){onDocumentEdgeDetected(documentEdgeData);}if(perspectiveData&&onPerspectiveDetected){onPerspectiveDetected(perspectiveData);}return[2/*return*/];}});});},2000);// Check every 2 seconds
@@ -11809,7 +11817,7 @@ var maxPan=200*(currentScale-1);var boundedX=Math.max(-maxPan,Math.min(maxPan,ne
11809
11817
  var handleWheel=function(e){e.preventDefault();var delta=e.deltaY>0?-0.1:0.1;var newScale=Math.max(1,Math.min(4,zoomScale+delta));logger.writeInfo("wheel zoom",{newScale:newScale});setZoomScale(newScale);// Reset pan when zooming out to 1x
11810
11818
  if(newScale===1){setPanPosition({x:0,y:0});}};// Mouse drag pan for desktop testing
11811
11819
  var isDragging=false;var dragStart={x:0,y:0};var dragLastPan={x:0,y:0};var handleMouseDown=function(e){if(zoomScale>1){isDragging=true;dragStart={x:e.clientX,y:e.clientY};dragLastPan=panPosition;}};var handleMouseMove=function(e){if(isDragging&&zoomScale>1){var deltaX=e.clientX-dragStart.x;var deltaY=e.clientY-dragStart.y;var newX=dragLastPan.x+deltaX;var newY=dragLastPan.y+deltaY;var maxPan=200*(zoomScale-1);var boundedX=Math.max(-maxPan,Math.min(maxPan,newX));var boundedY=Math.max(-maxPan,Math.min(maxPan,newY));setPanPosition({x:boundedX,y:boundedY});}};var handleMouseUp=function(){isDragging=false;};// Add event listeners with passive: false to allow preventDefault
11812
- container.addEventListener("touchstart",handleTouchStart,{passive:false});container.addEventListener("touchmove",handleTouchMove,{passive:false});container.addEventListener("touchend",handleTouchEnd,{passive:false});container.addEventListener("wheel",handleWheel,{passive:false});container.addEventListener("mousedown",handleMouseDown);container.addEventListener("mousemove",handleMouseMove);container.addEventListener("mouseup",handleMouseUp);container.addEventListener("mouseleave",handleMouseUp);return function(){container.removeEventListener("touchstart",handleTouchStart);container.removeEventListener("touchmove",handleTouchMove);container.removeEventListener("touchend",handleTouchEnd);container.removeEventListener("wheel",handleWheel);container.removeEventListener("mousedown",handleMouseDown);container.removeEventListener("mousemove",handleMouseMove);container.removeEventListener("mouseup",handleMouseUp);container.removeEventListener("mouseleave",handleMouseUp);};},[panPosition,previewSrc,zoomScale]);React.useEffect(function(){if(!isCameraVisible||!viewFinderRef.current||!canvasRef.current||!previewRef.current)return;if(!cameraPhoto.current)cameraPhoto.current=new CameraPhoto(viewFinderRef.current);if(isEmpty(cameraIds)){getDeviceCameraIds().then();return;}cameraPhoto.current.videoElement=viewFinderRef.current;startCamera().then(DO_NOTHING);},[cameraIds,currentCameraIdIndex,getDeviceCameraIds,hideCamera,isCameraVisible,startCamera]);return jsxRuntime.jsx(TranslucentLoader,__assign$2({_css:"height: 100%; width: 100%;",isLoading:isLoading},{children:isCameraVisible?jsxRuntime.jsxs(Container$1,__assign$2({gap:SPACINGS.XXL,withRows:true},{children:[jsxRuntime.jsx(BackButtonContainer,{children:jsxRuntime.jsx(Button,{color:theme.styles.colors.grey["700"],icon:js.mdiArrowLeft,onClick:hideCamera})}),jsxRuntime.jsxs(ViewFinderContainer,__assign$2({hidden:!!previewSrc},{children:[jsxRuntime.jsx(ViewFinder,{autoPlay:true,ref:viewFinderRef}),documentMode&&!previewSrc&&jsxRuntime.jsx(AlignmentGuide,{})]})),jsxRuntime.jsx(Canvas,{ref:canvasRef}),jsxRuntime.jsxs(PreviewContainer,__assign$2({hidden:!previewSrc,ref:previewContainerRef},{children:[jsxRuntime.jsx(Preview$2,{alt:"preview",panX:panPosition.x,panY:panPosition.y,ref:previewRef,scale:zoomScale,src:previewSrc}),documentMode&&previewSrc&&jsxRuntime.jsx(AlignmentGuide,{})]})),jsxRuntime.jsx(ButtonContainer,__assign$2({gap:SPACINGS.LG},{children:previewSrc?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(FlexBox,{fluid:true}),jsxRuntime.jsx(Button,{_css:styled.css(templateObject_1$1||(templateObject_1$1=__makeTemplateObject(["\n border: 4px solid transparent;\n "],["\n border: 4px solid transparent;\n "]))),icon:js.mdiCheck,loading:isSubmitting,onClick:submitPhoto,success:true}),jsxRuntime.jsx(FlexBox,__assign$2({fluid:true},{children:jsxRuntime.jsx(Button,{color:theme.styles.colors.grey["700"],icon:js.mdiCameraRetakeOutline,iconSize:"1.5rem",loading:isSubmitting,onClick:clearPhoto})}))]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(FlexBox,{fluid:true}),jsxRuntime.jsx(Button,{_css:styled.css(templateObject_2$1||(templateObject_2$1=__makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.5);\n border: 4px solid\n ",";\n "],["\n background-color: rgba(0, 0, 0, 0.5);\n border: 4px solid\n ",";\n "])),function(_a){var theme=_a.theme;return theme.styles.colors.primary["500"];}),flat:true,color:"transparent",icon:js.mdiCircleSlice8,onClick:takePhoto}),jsxRuntime.jsx(FlexBox,__assign$2({fluid:true},{children:cameraIds.length>1?jsxRuntime.jsx(Button,{color:theme.styles.colors.grey["700"],icon:js.mdiCached,onClick:switchCamera}):null}))]})}))]})):trigger?trigger(showCamera):null}));};var Canvas=styled__default["default"].canvas(templateObject_3$1||(templateObject_3$1=__makeTemplateObject(["\n display: none;\n"],["\n display: none;\n"])));var BackButtonContainer=styled__default["default"](FlexBox)(templateObject_4||(templateObject_4=__makeTemplateObject(["\n position: absolute;\n top: ",";\n left: ",";\n z-index: 10;\n"],["\n position: absolute;\n top: ",";\n left: ",";\n z-index: 10;\n"])),SPACINGS.MD,SPACINGS.MD);var Button=styled__default["default"](IconButton).attrs(function(_a){var _css=_a._css,flat=_a.flat,iconSize=_a.iconSize;return{_css:_css||"",flat:flat!==null&&flat!==void 0?flat:false,iconSize:iconSize!==null&&iconSize!==void 0?iconSize:SPACINGS.LG,primary:!flat};})(templateObject_5||(templateObject_5=__makeTemplateObject(["\n &&&& {\n height: fit-content;\n ","\n }\n"],["\n &&&& {\n height: fit-content;\n ","\n }\n"])),function(_a){var _css=_a._css;return _css;});var ButtonContainer=styled__default["default"](FlexBox)(templateObject_6||(templateObject_6=__makeTemplateObject(["\n position: absolute;\n bottom: ",";\n width: 100%;\n justify-content: center;\n align-items: center;\n"],["\n position: absolute;\n bottom: ",";\n width: 100%;\n justify-content: center;\n align-items: center;\n"])),SPACINGS.MD);var Container$1=styled__default["default"](FlexBox)(templateObject_7||(templateObject_7=__makeTemplateObject(["\n height: 100%;\n width: 100%;\n background: black;\n justify-content: center;\n align-items: center;\n"],["\n height: 100%;\n width: 100%;\n background: black;\n justify-content: center;\n align-items: center;\n"])));var PreviewContainer=styled__default["default"].div(templateObject_8||(templateObject_8=__makeTemplateObject(["\n ",";\n width: 100%;\n height: 100%;\n overflow: hidden;\n touch-action: none;\n position: relative;\n cursor: grab;\n\n &:active {\n cursor: grabbing;\n }\n"],["\n ",";\n width: 100%;\n height: 100%;\n overflow: hidden;\n touch-action: none;\n position: relative;\n cursor: grab;\n\n &:active {\n cursor: grabbing;\n }\n"])),function(_a){var hidden=_a.hidden;return hidden?"display: none;":"";});var Preview$2=styled__default["default"].img(templateObject_9||(templateObject_9=__makeTemplateObject(["\n width: 100%;\n height: 100%;\n object-fit: contain;\n transform: scale(",")\n translate(\n ","px,\n ","px\n );\n transition: transform 0.1s ease-out;\n will-change: transform;\n"],["\n width: 100%;\n height: 100%;\n object-fit: contain;\n transform: scale(",")\n translate(\n ","px,\n ","px\n );\n transition: transform 0.1s ease-out;\n will-change: transform;\n"])),function(_a){var scale=_a.scale;return scale;},function(_a){var panX=_a.panX,scale=_a.scale;return panX/scale;},function(_a){var panY=_a.panY,scale=_a.scale;return panY/scale;});var ViewFinderContainer=styled__default["default"].div(templateObject_10||(templateObject_10=__makeTemplateObject(["\n ",";\n height: 100%;\n position: relative;\n width: 100%;\n"],["\n ",";\n height: 100%;\n position: relative;\n width: 100%;\n"])),function(_a){var hidden=_a.hidden;return hidden?"display: none;":"";});var ViewFinder=styled__default["default"].video(templateObject_11||(templateObject_11=__makeTemplateObject(["\n max-height: 100%;\n width: 100%;\n"],["\n max-height: 100%;\n width: 100%;\n"])));var AlignmentGuide=styled__default["default"].div(templateObject_12||(templateObject_12=__makeTemplateObject(["\n border: 2px dashed ",";\n border-radius: 8px;\n bottom: 10%;\n height: 80%;\n left: 5%;\n opacity: 0.7;\n pointer-events: none;\n position: absolute;\n top: 10%;\n width: 90%;\n z-index: 5;\n\n &::before,\n &::after {\n background-color: ",";\n content: \"\";\n opacity: 0.5;\n position: absolute;\n }\n\n /* Horizontal center line */\n &::before {\n height: 1px;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n }\n\n /* Vertical center line */\n &::after {\n height: 100%;\n left: 50%;\n top: 0;\n transform: translateX(-50%);\n width: 1px;\n }\n"],["\n border: 2px dashed ",";\n border-radius: 8px;\n bottom: 10%;\n height: 80%;\n left: 5%;\n opacity: 0.7;\n pointer-events: none;\n position: absolute;\n top: 10%;\n width: 90%;\n z-index: 5;\n\n &::before,\n &::after {\n background-color: ",";\n content: \"\";\n opacity: 0.5;\n position: absolute;\n }\n\n /* Horizontal center line */\n &::before {\n height: 1px;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n }\n\n /* Vertical center line */\n &::after {\n height: 100%;\n left: 50%;\n top: 0;\n transform: translateX(-50%);\n width: 1px;\n }\n"])),function(_a){var theme=_a.theme;return theme.styles.colors.white;},function(_a){var theme=_a.theme;return theme.styles.colors.white;});var templateObject_1$1,templateObject_2$1,templateObject_3$1,templateObject_4,templateObject_5,templateObject_6,templateObject_7,templateObject_8,templateObject_9,templateObject_10,templateObject_11,templateObject_12;var lib={};var players={};var utils={};var loadScript=function load(src,opts,cb){var head=document.head||document.getElementsByTagName('head')[0];var script=document.createElement('script');if(typeof opts==='function'){cb=opts;opts={};}opts=opts||{};cb=cb||function(){};script.type=opts.type||'text/javascript';script.charset=opts.charset||'utf8';script.async='async'in opts?!!opts.async:true;script.src=src;if(opts.attrs){setAttributes(script,opts.attrs);}if(opts.text){script.text=''+opts.text;}var onend='onload'in script?stdOnEnd:ieOnEnd;onend(script,cb);// some good legacy browsers (firefox) fail the 'in' detection above
11820
+ container.addEventListener("touchstart",handleTouchStart,{passive:false});container.addEventListener("touchmove",handleTouchMove,{passive:false});container.addEventListener("touchend",handleTouchEnd,{passive:false});container.addEventListener("wheel",handleWheel,{passive:false});container.addEventListener("mousedown",handleMouseDown);container.addEventListener("mousemove",handleMouseMove);container.addEventListener("mouseup",handleMouseUp);container.addEventListener("mouseleave",handleMouseUp);return function(){container.removeEventListener("touchstart",handleTouchStart);container.removeEventListener("touchmove",handleTouchMove);container.removeEventListener("touchend",handleTouchEnd);container.removeEventListener("wheel",handleWheel);container.removeEventListener("mousedown",handleMouseDown);container.removeEventListener("mousemove",handleMouseMove);container.removeEventListener("mouseup",handleMouseUp);container.removeEventListener("mouseleave",handleMouseUp);};},[panPosition,previewSrc,zoomScale]);React.useEffect(function(){if(!isCameraVisible||!viewFinderRef.current||!canvasRef.current||!previewRef.current)return;if(!cameraPhoto.current)cameraPhoto.current=new CameraPhoto(viewFinderRef.current);if(isEmpty(cameraIds)){getDeviceCameraIds().then();return;}cameraPhoto.current.videoElement=viewFinderRef.current;startCamera().then(DO_NOTHING);},[cameraIds,currentCameraIdIndex,getDeviceCameraIds,hideCamera,isCameraVisible,startCamera]);return jsxRuntime.jsx(TranslucentLoader,__assign$2({_css:"height: 100%; width: 100%;",isLoading:isLoading},{children:isCameraVisible?jsxRuntime.jsxs(Container$1,__assign$2({gap:SPACINGS.XXL,withRows:true},{children:[jsxRuntime.jsx(BackButtonContainer,{children:jsxRuntime.jsx(Button,{color:theme.styles.colors.grey["700"],icon:js.mdiArrowLeft,onClick:hideCamera})}),jsxRuntime.jsxs(ViewFinderContainer,__assign$2({hidden:!!previewSrc},{children:[jsxRuntime.jsx(ViewFinder,{autoPlay:true,ref:viewFinderRef}),documentMode&&!previewSrc&&jsxRuntime.jsx(AlignmentGuide,{})]})),jsxRuntime.jsx(Canvas,{ref:canvasRef}),jsxRuntime.jsxs(PreviewContainer,__assign$2({hidden:!previewSrc,ref:previewContainerRef},{children:[jsxRuntime.jsx(Preview$2,{alt:"preview",panX:panPosition.x,panY:panPosition.y,ref:previewRef,scale:zoomScale,src:previewSrc}),documentMode&&previewSrc&&jsxRuntime.jsx(AlignmentGuide,{})]})),!previewSrc&&cameraZoomCapability&&cameraZoomCapability.max&&cameraZoomCapability.max>1&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ZoomButtonContainer,{children:jsxRuntime.jsx(ZoomButton,{active:isZoomModeActive,color:theme.styles.colors.white,icon:js.mdiMagnify,iconSize:"1.2rem",onClick:function(){return setIsZoomModeActive(!isZoomModeActive);}})}),isZoomModeActive&&jsxRuntime.jsxs(ZoomPresetsContainer,{children:[jsxRuntime.jsx(ZoomPresetButton,__assign$2({active:currentCameraZoom===1,onClick:function(){return applyZoom(1);}},{children:"1x"})),cameraZoomCapability.max>=2&&jsxRuntime.jsx(ZoomPresetButton,__assign$2({active:currentCameraZoom===2,onClick:function(){return applyZoom(2);}},{children:"2x"})),cameraZoomCapability.max>=3&&jsxRuntime.jsx(ZoomPresetButton,__assign$2({active:currentCameraZoom===3,onClick:function(){return applyZoom(3);}},{children:"3x"})),cameraZoomCapability.max>=6&&jsxRuntime.jsx(ZoomPresetButton,__assign$2({active:currentCameraZoom===6,onClick:function(){return applyZoom(6);}},{children:"6x"})),cameraZoomCapability.max>=10&&jsxRuntime.jsx(ZoomPresetButton,__assign$2({active:currentCameraZoom===10,onClick:function(){return applyZoom(10);}},{children:"10x"}))]})]}),jsxRuntime.jsx(ButtonContainer,__assign$2({gap:SPACINGS.LG},{children:previewSrc?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(FlexBox,{fluid:true}),jsxRuntime.jsx(Button,{_css:styled.css(templateObject_1$1||(templateObject_1$1=__makeTemplateObject(["\n border: 4px solid transparent;\n "],["\n border: 4px solid transparent;\n "]))),icon:js.mdiCheck,loading:isSubmitting,onClick:submitPhoto,success:true}),jsxRuntime.jsx(FlexBox,__assign$2({fluid:true},{children:jsxRuntime.jsx(Button,{color:theme.styles.colors.grey["700"],icon:js.mdiCameraRetakeOutline,iconSize:"1.5rem",loading:isSubmitting,onClick:clearPhoto})}))]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(FlexBox,{fluid:true}),jsxRuntime.jsx(Button,{_css:styled.css(templateObject_2$1||(templateObject_2$1=__makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.5);\n border: 4px solid\n ",";\n "],["\n background-color: rgba(0, 0, 0, 0.5);\n border: 4px solid\n ",";\n "])),function(_a){var theme=_a.theme;return theme.styles.colors.primary["500"];}),flat:true,color:"transparent",icon:js.mdiCircleSlice8,onClick:takePhoto}),jsxRuntime.jsx(FlexBox,__assign$2({fluid:true},{children:cameraIds.length>1?jsxRuntime.jsx(Button,{color:theme.styles.colors.grey["700"],icon:js.mdiCached,onClick:switchCamera}):null}))]})}))]})):trigger?trigger(showCamera):null}));};var Canvas=styled__default["default"].canvas(templateObject_3$1||(templateObject_3$1=__makeTemplateObject(["\n display: none;\n"],["\n display: none;\n"])));var BackButtonContainer=styled__default["default"](FlexBox)(templateObject_4||(templateObject_4=__makeTemplateObject(["\n position: absolute;\n top: ",";\n left: ",";\n z-index: 10;\n"],["\n position: absolute;\n top: ",";\n left: ",";\n z-index: 10;\n"])),SPACINGS.MD,SPACINGS.MD);var Button=styled__default["default"](IconButton).attrs(function(_a){var _css=_a._css,flat=_a.flat,iconSize=_a.iconSize;return{_css:_css||"",flat:flat!==null&&flat!==void 0?flat:false,iconSize:iconSize!==null&&iconSize!==void 0?iconSize:SPACINGS.LG,primary:!flat};})(templateObject_5||(templateObject_5=__makeTemplateObject(["\n &&&& {\n height: fit-content;\n ","\n }\n"],["\n &&&& {\n height: fit-content;\n ","\n }\n"])),function(_a){var _css=_a._css;return _css;});var ButtonContainer=styled__default["default"](FlexBox)(templateObject_6||(templateObject_6=__makeTemplateObject(["\n position: absolute;\n bottom: ",";\n width: 100%;\n justify-content: center;\n align-items: center;\n"],["\n position: absolute;\n bottom: ",";\n width: 100%;\n justify-content: center;\n align-items: center;\n"])),SPACINGS.MD);var Container$1=styled__default["default"](FlexBox)(templateObject_7||(templateObject_7=__makeTemplateObject(["\n height: 100%;\n width: 100%;\n background: black;\n justify-content: center;\n align-items: center;\n"],["\n height: 100%;\n width: 100%;\n background: black;\n justify-content: center;\n align-items: center;\n"])));var PreviewContainer=styled__default["default"].div(templateObject_8||(templateObject_8=__makeTemplateObject(["\n ",";\n width: 100%;\n height: 100%;\n overflow: hidden;\n touch-action: none;\n position: relative;\n cursor: grab;\n\n &:active {\n cursor: grabbing;\n }\n"],["\n ",";\n width: 100%;\n height: 100%;\n overflow: hidden;\n touch-action: none;\n position: relative;\n cursor: grab;\n\n &:active {\n cursor: grabbing;\n }\n"])),function(_a){var hidden=_a.hidden;return hidden?"display: none;":"";});var Preview$2=styled__default["default"].img(templateObject_9||(templateObject_9=__makeTemplateObject(["\n width: 100%;\n height: 100%;\n object-fit: contain;\n transform: scale(",")\n translate(\n ","px,\n ","px\n );\n transition: transform 0.1s ease-out;\n will-change: transform;\n"],["\n width: 100%;\n height: 100%;\n object-fit: contain;\n transform: scale(",")\n translate(\n ","px,\n ","px\n );\n transition: transform 0.1s ease-out;\n will-change: transform;\n"])),function(_a){var scale=_a.scale;return scale;},function(_a){var panX=_a.panX,scale=_a.scale;return panX/scale;},function(_a){var panY=_a.panY,scale=_a.scale;return panY/scale;});var ViewFinderContainer=styled__default["default"].div(templateObject_10||(templateObject_10=__makeTemplateObject(["\n ",";\n height: 100%;\n position: relative;\n width: 100%;\n"],["\n ",";\n height: 100%;\n position: relative;\n width: 100%;\n"])),function(_a){var hidden=_a.hidden;return hidden?"display: none;":"";});var ViewFinder=styled__default["default"].video(templateObject_11||(templateObject_11=__makeTemplateObject(["\n max-height: 100%;\n width: 100%;\n"],["\n max-height: 100%;\n width: 100%;\n"])));var ZoomButtonContainer=styled__default["default"].div(templateObject_12||(templateObject_12=__makeTemplateObject(["\n position: absolute;\n right: ",";\n top: 50%;\n transform: translateY(-50%);\n z-index: 10;\n"],["\n position: absolute;\n right: ",";\n top: 50%;\n transform: translateY(-50%);\n z-index: 10;\n"])),SPACINGS.MD);var ZoomButton=styled__default["default"](IconButton)(templateObject_13||(templateObject_13=__makeTemplateObject(["\n &&&& {\n background: ",";\n border: 2px solid\n ",";\n border-radius: 50%;\n height: 48px;\n width: 48px;\n }\n"],["\n &&&& {\n background: ",";\n border: 2px solid\n ",";\n border-radius: 50%;\n height: 48px;\n width: 48px;\n }\n"])),function(_a){var active=_a.active;return active?"rgba(255, 255, 255, 0.3)":"rgba(0, 0, 0, 0.5)";},function(_a){var active=_a.active,theme=_a.theme;return active?theme.styles.colors.white:"transparent";});var ZoomPresetsContainer=styled__default["default"](FlexBox)(templateObject_14||(templateObject_14=__makeTemplateObject(["\n background: rgba(0, 0, 0, 0.7);\n border-radius: 24px;\n gap: ",";\n left: 50%;\n padding: ",";\n position: absolute;\n top: ",";\n transform: translateX(-50%);\n z-index: 10;\n"],["\n background: rgba(0, 0, 0, 0.7);\n border-radius: 24px;\n gap: ",";\n left: 50%;\n padding: ",";\n position: absolute;\n top: ",";\n transform: translateX(-50%);\n z-index: 10;\n"])),SPACINGS.XS,SPACINGS.XS,SPACINGS.LG);var ZoomPresetButton=styled__default["default"].button(templateObject_15||(templateObject_15=__makeTemplateObject(["\n background: ",";\n border: 1px solid\n ",";\n border-radius: 16px;\n color: ",";\n cursor: pointer;\n font-size: 14px;\n font-weight: ",";\n padding: 6px 12px;\n transition: all 0.2s ease;\n\n &:hover {\n background: rgba(255, 255, 255, 0.4);\n }\n\n &:active {\n transform: scale(0.95);\n }\n"],["\n background: ",";\n border: 1px solid\n ",";\n border-radius: 16px;\n color: ",";\n cursor: pointer;\n font-size: 14px;\n font-weight: ",";\n padding: 6px 12px;\n transition: all 0.2s ease;\n\n &:hover {\n background: rgba(255, 255, 255, 0.4);\n }\n\n &:active {\n transform: scale(0.95);\n }\n"])),function(_a){var active=_a.active;return active?"rgba(255, 255, 255, 0.9)":"rgba(255, 255, 255, 0.2)";},function(_a){var active=_a.active;return active?"rgba(255, 255, 255, 0.9)":"rgba(255, 255, 255, 0.4)";},function(_a){var active=_a.active;return active?"#000":"#fff";},function(_a){var active=_a.active;return active?"bold":"normal";});var AlignmentGuide=styled__default["default"].div(templateObject_16||(templateObject_16=__makeTemplateObject(["\n border: 2px dashed ",";\n border-radius: 8px;\n bottom: 10%;\n height: 80%;\n left: 5%;\n opacity: 0.7;\n pointer-events: none;\n position: absolute;\n top: 10%;\n width: 90%;\n z-index: 5;\n\n &::before,\n &::after {\n background-color: ",";\n content: \"\";\n opacity: 0.5;\n position: absolute;\n }\n\n /* Horizontal center line */\n &::before {\n height: 1px;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n }\n\n /* Vertical center line */\n &::after {\n height: 100%;\n left: 50%;\n top: 0;\n transform: translateX(-50%);\n width: 1px;\n }\n"],["\n border: 2px dashed ",";\n border-radius: 8px;\n bottom: 10%;\n height: 80%;\n left: 5%;\n opacity: 0.7;\n pointer-events: none;\n position: absolute;\n top: 10%;\n width: 90%;\n z-index: 5;\n\n &::before,\n &::after {\n background-color: ",";\n content: \"\";\n opacity: 0.5;\n position: absolute;\n }\n\n /* Horizontal center line */\n &::before {\n height: 1px;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n width: 100%;\n }\n\n /* Vertical center line */\n &::after {\n height: 100%;\n left: 50%;\n top: 0;\n transform: translateX(-50%);\n width: 1px;\n }\n"])),function(_a){var theme=_a.theme;return theme.styles.colors.white;},function(_a){var theme=_a.theme;return theme.styles.colors.white;});var templateObject_1$1,templateObject_2$1,templateObject_3$1,templateObject_4,templateObject_5,templateObject_6,templateObject_7,templateObject_8,templateObject_9,templateObject_10,templateObject_11,templateObject_12,templateObject_13,templateObject_14,templateObject_15,templateObject_16;var lib={};var players={};var utils={};var loadScript=function load(src,opts,cb){var head=document.head||document.getElementsByTagName('head')[0];var script=document.createElement('script');if(typeof opts==='function'){cb=opts;opts={};}opts=opts||{};cb=cb||function(){};script.type=opts.type||'text/javascript';script.charset=opts.charset||'utf8';script.async='async'in opts?!!opts.async:true;script.src=src;if(opts.attrs){setAttributes(script,opts.attrs);}if(opts.text){script.text=''+opts.text;}var onend='onload'in script?stdOnEnd:ieOnEnd;onend(script,cb);// some good legacy browsers (firefox) fail the 'in' detection above
11813
11821
  // so as a fallback we always set onload
11814
11822
  // old IE will ignore this and new IE will set onload
11815
11823
  if(!script.onload){stdOnEnd(script,cb);}head.appendChild(script);};function setAttributes(script,attrs){for(var attr in attrs){script.setAttribute(attr,attrs[attr]);}}function stdOnEnd(script,cb){script.onload=function(){this.onerror=this.onload=null;cb(null,script);};script.onerror=function(){// this.onload = null here is necessary