cronapi-js 4.3.4 → 4.4.0-RC.11
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/cronapi.js +98 -3
- package/dist/cronapi.min.js +1 -1
- package/i18n/locale_en_us.json +12 -0
- package/i18n/locale_pt_br.json +12 -0
- package/package.json +1 -1
package/cronapi.js
CHANGED
|
@@ -5409,23 +5409,118 @@ function cronapi() {
|
|
|
5409
5409
|
|
|
5410
5410
|
/**
|
|
5411
5411
|
* @type function
|
|
5412
|
+
* @platform M
|
|
5413
|
+
* @name {{startPreview}}
|
|
5414
|
+
* @nameTags startCamera|câmera|camera
|
|
5415
|
+
* @description {{startPreviewDescription}}
|
|
5416
|
+
* @returns {ObjectType.VOID}
|
|
5417
|
+
*/
|
|
5418
|
+
this.cronapi.cordova.camera.startPreview = async function(/** @type {ObjectType.INTEGER} @description {{cameraDirection}} @defaultValue 0 @blockType util_dropdown @keys 0|1 @values {{back}}|{{front}} */ cameraDirection, /** @type {ObjectType.OBJECT} @description {{cameraOptions}} */ cameraOptions, /** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ cameraId ) {
|
|
5419
|
+
cameraDirection = (cameraDirection === 1 || cameraDirection === '1') ? CameraPreview.CAMERA_DIRECTION.FRONT: CameraPreview.CAMERA_DIRECTION.BACK;
|
|
5420
|
+
cameraOptions = cameraOptions || {};
|
|
5421
|
+
let x = 0;
|
|
5422
|
+
let y = 0;
|
|
5423
|
+
let width = window.screen.width;
|
|
5424
|
+
let height = window.screen.height;
|
|
5425
|
+
if (cameraId) {
|
|
5426
|
+
let element = $(`#${cameraId}`);
|
|
5427
|
+
if (element.length) {
|
|
5428
|
+
width = element[0].getBoundingClientRect().width;
|
|
5429
|
+
height = element[0].getBoundingClientRect().height;
|
|
5430
|
+
x = element[0].getBoundingClientRect().x;
|
|
5431
|
+
y = element[0].getBoundingClientRect().y;
|
|
5432
|
+
}
|
|
5433
|
+
}
|
|
5434
|
+
|
|
5435
|
+
let options = {
|
|
5436
|
+
x: x,
|
|
5437
|
+
y: y,
|
|
5438
|
+
width: width,
|
|
5439
|
+
height: height,
|
|
5440
|
+
camera: cameraDirection,
|
|
5441
|
+
toBack: false,
|
|
5442
|
+
tapPhoto: false,
|
|
5443
|
+
tapFocus: false,
|
|
5444
|
+
previewDrag: false,
|
|
5445
|
+
storeToFile: false,
|
|
5446
|
+
disableExifHeaderStripping: false,
|
|
5447
|
+
...cameraOptions
|
|
5448
|
+
};
|
|
5449
|
+
|
|
5450
|
+
return new Promise((resolve, reject) => {
|
|
5451
|
+
CameraPreview.startCamera(options, ()=> {
|
|
5452
|
+
resolve();
|
|
5453
|
+
}, (error => {
|
|
5454
|
+
reject(error);
|
|
5455
|
+
}));
|
|
5456
|
+
});
|
|
5457
|
+
}
|
|
5458
|
+
|
|
5459
|
+
/**
|
|
5460
|
+
* @type function
|
|
5461
|
+
* @platform M
|
|
5462
|
+
* @name {{stopPreview}}
|
|
5463
|
+
* @nameTags stopCamera|câmera|camera
|
|
5464
|
+
* @description {{stopPreviewDescription}}
|
|
5465
|
+
* @returns {ObjectType.VOID}
|
|
5466
|
+
*/
|
|
5467
|
+
this.cronapi.cordova.camera.stopPreview = async function() {
|
|
5468
|
+
return new Promise((resolve, reject) => {
|
|
5469
|
+
CameraPreview.stopCamera(() => {
|
|
5470
|
+
resolve();
|
|
5471
|
+
}, (error) => {
|
|
5472
|
+
reject(error);
|
|
5473
|
+
});
|
|
5474
|
+
});
|
|
5475
|
+
}
|
|
5476
|
+
|
|
5477
|
+
/**
|
|
5478
|
+
* @type function
|
|
5479
|
+
* @platform M
|
|
5480
|
+
* @name {{takeSnapshot}}
|
|
5481
|
+
* @nameTags stopCamera|câmera|camera
|
|
5482
|
+
* @description {{takeSnapshotDescription}}
|
|
5483
|
+
* @returns {ObjectType.STRING}
|
|
5484
|
+
*/
|
|
5485
|
+
this.cronapi.cordova.camera.takeSnapshot = async function(/** @type {ObjectType.OBJECT} @description {{cameraSnapshotOptions}} */ cameraOptions) {
|
|
5486
|
+
cameraOptions = cameraOptions || {};
|
|
5487
|
+
let options = {
|
|
5488
|
+
quality: 85,
|
|
5489
|
+
...cameraOptions
|
|
5490
|
+
};
|
|
5491
|
+
|
|
5492
|
+
return new Promise((resolve, reject) => {
|
|
5493
|
+
CameraPreview.takeSnapshot(options, (base64PictureData) => {
|
|
5494
|
+
resolve("data:image/jpeg;base64," + base64PictureData)
|
|
5495
|
+
}, (error) => {
|
|
5496
|
+
reject(error);
|
|
5497
|
+
});
|
|
5498
|
+
});
|
|
5499
|
+
|
|
5500
|
+
}
|
|
5501
|
+
|
|
5502
|
+
/**
|
|
5503
|
+
* @type function
|
|
5412
5504
|
* @name {{getPicture}}
|
|
5413
5505
|
* @nameTags geolocation|getPicture
|
|
5414
5506
|
* @description {{getPictureDescription}}
|
|
5415
5507
|
* @returns {ObjectType.VOID}
|
|
5416
5508
|
*/
|
|
5417
5509
|
|
|
5418
|
-
this.cronapi.cordova.camera.getPicture = function(/** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error, /** @type {ObjectType.LONG} @description {{destinationType}} @blockType util_dropdown @keys 0|1|2 @values DATA_URL|FILE_URI|NATIVE_URI */ destinationType, /** @type {ObjectType.LONG} @description {{pictureSourceType}} @blockType util_dropdown @keys 0|1|2 @values PHOTOLIBRARY|CAMERA|SAVEDPHOTOALBUM */ pictureSourceType, /** @type {ObjectType.LONG} @description {{mediaType}} @blockType util_dropdown @keys 0|1|2 @values PICTURE|VIDEO|ALLMEDIA */ mediaType, /** @type {ObjectType.BOOLEAN} @description {{allowEdit}} @blockType util_dropdown @keys false|true @values {{false}}|{{true}} */ allowEdit, /** @type {ObjectType.BOOLEAN} @description {{Compress}} @blockType util_dropdown @defaultValue true @keys true|false @values {{true}}|{{false}} */ compress) {
|
|
5510
|
+
this.cronapi.cordova.camera.getPicture = function(/** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error, /** @type {ObjectType.LONG} @description {{destinationType}} @blockType util_dropdown @keys 0|1|2 @values DATA_URL|FILE_URI|NATIVE_URI */ destinationType, /** @type {ObjectType.LONG} @description {{pictureSourceType}} @blockType util_dropdown @keys 0|1|2 @values PHOTOLIBRARY|CAMERA|SAVEDPHOTOALBUM */ pictureSourceType, /** @type {ObjectType.LONG} @description {{mediaType}} @blockType util_dropdown @keys 0|1|2 @values PICTURE|VIDEO|ALLMEDIA */ mediaType, /** @type {ObjectType.BOOLEAN} @description {{allowEdit}} @blockType util_dropdown @keys false|true @values {{false}}|{{true}} */ allowEdit, /** @type {ObjectType.BOOLEAN} @description {{Compress}} @blockType util_dropdown @defaultValue true @keys true|false @values {{true}}|{{false}} */ compress, /** @type {ObjectType.INTEGER} @description {{cameraDirection}} @defaultValue 0 @blockType util_dropdown @keys 0|1 @values {{back}}|{{front}} */ cameraDirection) {
|
|
5419
5511
|
if(mediaType === undefined || mediaType === null) mediaType = 0 ;
|
|
5420
5512
|
allowEdit = (allowEdit === true || allowEdit === 'true');
|
|
5421
5513
|
compress = (compress === true || compress === 'true');
|
|
5514
|
+
cameraDirection = (cameraDirection === 1 || cameraDirection === '1') ? 1 : 0;
|
|
5422
5515
|
let options = {
|
|
5423
5516
|
destinationType: Number(destinationType),
|
|
5424
5517
|
sourceType: Number(pictureSourceType),
|
|
5425
5518
|
mediaType: Number(mediaType),
|
|
5426
5519
|
allowEdit: allowEdit,
|
|
5427
5520
|
quality: (compress ? 50 /** default **/ : 100),
|
|
5428
|
-
encodingType: (compress ? 0 : 1)
|
|
5521
|
+
encodingType: (compress ? 0 : 1),
|
|
5522
|
+
correctOrientation: true,
|
|
5523
|
+
cameraDirection: cameraDirection
|
|
5429
5524
|
};
|
|
5430
5525
|
if(window.cordova && window.cordova.platformId && window.cordova.platformId !== 'browser') {
|
|
5431
5526
|
|
|
@@ -5994,7 +6089,7 @@ function cronapi() {
|
|
|
5994
6089
|
* @param {ObjectType.STRING} action {{accordionActionParamDescription}}
|
|
5995
6090
|
* @param {ObjectType.STRING} idItem {{accordionIdSubItemParamDescription}}
|
|
5996
6091
|
*/
|
|
5997
|
-
this.cronapi.event.changeValueAccordion = function (/** @type {ObjectType.STRING} @blockType ids_from_screen*/ idAccordion,
|
|
6092
|
+
this.cronapi.event.changeValueAccordion = function (/** @type {ObjectType.STRING} @blockType ids_from_screen*/ idAccordion, /** @type {ObjectType.STRING} @blockType util_dropdown @keys collapseAll|expandAll|collapseOne|expandOne @values {{accordionCollapseAll}}|{{accordionExpandAll}}|{{accordionCollapseOne}}|{{accordionExpandOne}} */ action, /** @type {ObjectType.STRING} @blockType ids_from_screen*/ idItem) {
|
|
5998
6093
|
|
|
5999
6094
|
switch (action) {
|
|
6000
6095
|
case "collapseAll":
|
package/dist/cronapi.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function cronapi(){"use strict";this.$evt=function(t){var n,a=this;a.$eval||(n=event?event.target:a.$element[0],a=angular.element(n).scope());a||(a=angular.element(document.getElementById("main-view")).scope()),a.$eval(t)}.bind(this),this.cronapi={},this.cronapi.getRequestData=t=>{let n=t||{};return t.data&&"object"==typeof t.data&&(n=t.data),n},this.cronapi.toDate=function(t){return new Date(t)};var getDatasource=function(t){return"string"==typeof t?window[t]:t};this.cronapi.doEval=function(t){return t};var reorderArgs=function(t,n,a){if(n&&n.length&&a&&a.length){let r=[];for(var o=0;o<n.length;o++)r.push(null);for(let o=0;o<n.length;o++)for(let s=0;s<a.length;s++)if("string"==typeof n[o]){if(n[o]==a[s]){r[o]=t[s];break}}else if(n[o].description==a[s]||n[o].id==a[s]){r[o]=t[s];break}return r}return t};this.cronapi.evalInContext=async function(js){var result=eval("this.cronapi.doEval("+js+")");if(result){if(result=result.data||result,result.commands)for(var i=0;i<result.commands.length;i++){var func=eval(result.commands[i].function);let argsMetadata,argsNames=result.commands[i].names,args=result.commands[i].params;try{argsMetadata=eval(result.commands[i].function+"Args")}catch(t){}args=reorderArgs(args,argsMetadata,argsNames),await func.apply(this,args)}return result.value}};let clientMap={},clientMapTimeout={};this.cronapi.client=function(pack){let attr=!1,argsNames,notificationOnError=!0;return{attr:function(){return attr=!0,this},disableNotification:function(){return notificationOnError=!1,this},names:function(t){argsNames=[];for(let t=0;t<arguments.length;t++)argsNames.push(arguments[t]);return this},run:function(){for(var key=pack,args=[],i=0,bk,argsMetadata;i<arguments.length;i++)key+=String(arguments[i]),args.push(arguments[i]);try{bk=eval("blockly."+pack)}catch(t){}try{argsMetadata=eval("blockly."+pack+"Args")}catch(t){}if(!argsMetadata)try{argsMetadata=eval(pack+"Args")}catch(t){}bk||(bk=eval(pack)),args=reorderArgs(args,argsMetadata,argsNames);let isAsyncResult=t=>null!=t&&t.then&&"function"==typeof t.then,result;if(!attr){let t="AsyncFunction"===bk.constructor.name;return t?bk.apply(this,args).catch((t=>{if(!notificationOnError)throw t;this.cronapi.$scope.Notification.error(t)})):bk.apply(this,args)}if(clientMapTimeout[key]?clearTimeout(clientMapTimeout[key]):(result=bk.apply(this,args),isAsyncResult(result)||(clientMap[key]=result)),clientMapTimeout[key]=setTimeout((()=>(result=result||bk.apply(this,args),isAsyncResult(result)?result.then((t=>{clientMap[key]!==t&&this.safeApply((()=>{clientMap[key]=t}))})).catch((t=>{clientMap[key]!==t&&this.safeApply((()=>{clientMap[key]=t}))})):clientMap[key]=result,clientMap[key])),300),clientMap[key])return clientMap[key]}.bind(this)}};var serverMap={};function getCalendar(t){let n=Date.now(),a=(o,r)=>{let s=$("#"+t+" cron-calendar").data("kendoCalendar");s?o(s):Date.now()-n>=1e4?o():setTimeout((()=>a(o,r)),200)};return new Promise(a)}function showErrorNotification(t){const n=this.cronapi.$translate.instant(t);this.cronapi.$scope.Notification.error(n)}function getChat(t){let n=Date.now(),a=(o,r)=>{let s=$("#"+t+" .k-chat").data("kendoChat");s?o(s):Date.now()-n>=1e4?o():setTimeout((()=>a(o,r)),200)};return new Promise(a)}this.cronapi.server=function(t){var n=!1,a=!1,o=!0,r=!0;let s;return{attr:function(){return n=!0,this},toPromise:function(){return a=!0,this},notAsync:function(){return o=!1,this},names:function(){s=[];for(let t=0;t<arguments.length;t++)s.push(arguments[t]);return this},disableNotification:function(){return r=!1,this},run:function(){for(var c=t,l=0;l<arguments.length;l++)c+=String(arguments[l]);if(n){if(serverMap.hasOwnProperty(c))return"$$loading"!=serverMap[c]?serverMap[c]:"";serverMap[c]="$$loading"}var p=t.split("."),u=p[p.length-1];p.pop();var d,h,f=p.join(".")+":"+u,g=new Promise(((t,n)=>{d=t,h=n})),m=function(t){this.safeApply((function(){n&&(serverMap[c]=t),d(t)}))}.bind(this),w=function(t){this.safeApply((function(){n&&(serverMap[c]=t),h(t)})),t&&r&&this.cronapi.$scope.Notification.error(t)}.bind(this),y=[f];if(!o){s&&s.length&&y.push({argsNames:s});for(l=0;l<arguments.length;l++)y.push(arguments[l]);let t=this.cronapi.util.callServerBlockly.apply(this,y);return n&&(serverMap[c]=t),t}y.push(m),y.push(w),s&&s.length&&y.push({argsNames:s});for(var l=0;l<arguments.length;l++)y.push(arguments[l]);if(this.cronapi.util.makeCallServerBlocklyAsync.apply(this,y),a)return g}.bind(this)}},this.cronapi.callFunction=function(name){return{call:function(){var ref;try{ref=eval(name)}catch(t){}if(ref)return ref.apply(this,arguments)}.bind(this)}},this.cronapi.conversion={},this.cronapi.conversion.asciiToBinary=function(t){var n="";if(t.length>0)for(var a=0;a<t.length;a++)for(var o=t.charCodeAt(a),r=7;r>=0;r--)n+=o>>r&1;return n},this.cronapi.conversion.toBoolean=function(t){return this.cronapi.internal.parseBoolean(t)},this.cronapi.conversion.toBytes=function(t){return t?t.toString():""},this.cronapi.conversion.chrToAscii=function(t){return t?t.charCodeAt(0):null},this.cronapi.conversion.stringToJs=function(t){return this.cronapi.internal.stringToJs(t)},this.cronapi.conversion.stringToDate=function(value){var pattern=/^\s*(\d+)[\/\.-](\d+)[\/\.-](\d+)(\s(\d+):(\d+):(\d+))?\s*$/;if(value){if(value instanceof Date)return value;if(pattern.test(value)){var splited=pattern.exec(value),userLang=(navigator.language||navigator.userLanguage).split("-")[0];if("pt"==userLang||"en"==userLang){var functionToCall=eval("cronapi.internal."+userLang+"Date");return functionToCall(splited)}return new Date(value)}return new Date(value)}return null},this.cronapi.conversion.stringToDateWithFormat=function(t,n){let a=moment(t,n);return a.isValid()?a.toDate():null},this.cronapi.conversion.intToHex=function(t){return Number(t).toString(16).toUpperCase()},this.cronapi.conversion.toLong=function(t){return parseInt(t)},this.cronapi.conversion.toString=function(t){return t?new String(t).toString():""},this.cronapi.util={},this.cronapi.util.fillDatasource=async function(id,filterUrl,params,paramsNames){const odataUrl=`${window.hostApp}api/cronapi/odata/v2/`,db=this.cronapi.internal.getPouchDB(id);let totalReceived=0,defaultPagination=100;if(paramsNames&&"object"==typeof paramsNames){let t=[];for(let n=0;n<paramsNames.length;n++){let a={};a[paramsNames[n]]=params[n],t.push(a)}params=t}let convertToODataDate=t=>`'${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}T${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}:${String(t.getSeconds()).padStart(2,"0")}'`,evalForODATA=async value=>{let result="";try{result=await eval(value.replace("await ",""))}catch(t){result=value}return"string"==typeof result&&(result=`'${result}'`),"object"==typeof result&&result.getFullYear&&(result=convertToODataDate(result)),result},getFilter=t=>{let n="",a=t.match(/(\$filter=)(.*)/);return a&&a.length>2&&(n=a[2]),n},getUrl=t=>{let n="",a=t.match(/^(GET|POST|DELETE|PUT)\s(.*?)($|\?)/);return a&&a.length>2&&(n=`${odataUrl}${a[2]}`),n};if(params){for(let t=0;t<params.length;t++){let n=params[t];for(let t in n)n[t]=await evalForODATA(n[t])}params.forEach((t=>{for(let n in t)filterUrl=filterUrl.replace(`:${n}`,t[n])}))}let config={method:"GET",params:{$inlinecount:"allpages",$format:"json",$top:`${defaultPagination}`,$skip:0},url:getUrl(filterUrl)},filter=getFilter(filterUrl);filter&&(config.params.$filter=filter);let makeRequest=async(t,n,a)=>{let o=this.$http(t);o.then((t=>n(t))),o.catch((t=>a(t)))},success=t=>{let n=t.data.d,a=n.results.length;totalReceived+=a,totalReceived<n.__count&&(config.params.$skip+=defaultPagination,makeRequest(config,success,error)),this.cronapi.internal.updatePouchDB(db,n.results),console.log(`Caching Data (%c${id}%c): %c${totalReceived} of ${n.__count}`,"color: red","color: black","color: red")},error=t=>{console.error(`error caching datasource ${db.name}`,t)};makeRequest(config,success,error)},this.cronapi.util.changeViewLogout=function(){let t=window.cordova?this.cronapi.util.getMobileLogoutRoute():this.cronapi.util.getWebLogoutRoute();this.cronapi.screen.changeView(t)},this.cronapi.util.getWebLogoutRoute=function(){let t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){let a=n.responseJSON["cronapp.framework.web.logoutroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t)},this.cronapi.util.getMobileLogoutRoute=function(){let t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){let a=n.responseJSON["cronapp.framework.mobile.logoutroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t)},this.cronapi.util.changeViewMain=function(){var t=void 0;t=window.cordova?this.cronapi.util.getMobileMainRoute():this.cronapi.util.getWebMainRoute(),this.cronapi.screen.changeView(t)},this.cronapi.util.getWebMainRoute=function(){var t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){var a=n.responseJSON["cronapp.framework.web.mainroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t)},this.cronapi.util.getMobileMainRoute=function(){var t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){var a=n.responseJSON["cronapp.framework.mobile.mainroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t,"mobile")},this.cronapi.util.setToken=function(t){let n={};localStorage.getItem("_u")&&(n=JSON.parse(localStorage.getItem("_u")),window.isUsingCookie()?delete n.token:n.token=t),localStorage.setItem("_u",JSON.stringify(n))},this.cronapi.util.getApplicationName=function(){return $("#projectName").length?$("#projectName").val():$("h1:first").length&&$("h1:first").text().trim().length?$("h1:first").text().trim():""},this.cronapi.util.createPromise=function(){var t,n,a=new Promise(((a,o)=>{t=a,n=o}));return a.__functionToResolve=t,a.__functionToReject=n,a},this.cronapi.util.handleValueToPromise=function(t,n,a){"resolve"===t?n.__functionToResolve(a):n.__functionToReject(a)},this.cronapi.util.monitorPromise=function(t,n,a){t&&(n&&t.then(n),a&&t.catch(a))},this.cronapi.util.sleep=async function(t){return new Promise((n=>{setInterval((()=>{n(t)}),t)}))},this.cronapi.util.callServerBlocklyAsync=function(t,n,a,o){var r,s="api/cronapi/call/body/#classNameWithMethod#/".replace("#classNameWithMethod#",t),c=this.cronapi.$scope.http,l=[];$(arguments).each((function(){this&&Array.isArray(this.argsNames)?r=this.argsNames:l.push(this)}));var p={fields:n,inputs:l.slice(4)};r&&(p.names=r);var u=this.cronapi.internal.getAddressWithHostApp(s);let d;try{d=JSON.stringify(p)}catch(t){d=JSON.stringify(p,(()=>{const t=new WeakSet;return(n,a)=>{if("object"==typeof a&&null!==a){if(t.has(a))return;t.add(a)}return a}})())}c({method:"POST",url:u,data:d,responseType:"text",headers:window.isUsingCookie()?{"Content-Type":"application/json",toJS:!0,timezone:moment().utcOffset()}:{"Content-Type":"application/json","X-AUTH-TOKEN":this.cronapi.util.getUserToken(),toJS:!0,timezone:moment().utcOffset()},transformResponse:t=>t}).then((function(t){a(t.data)}),(function(t){o(t.data,t.status)}))},this.cronapi.util.getScreenFields=function(){var fields={};for(var key in this.cronapi.$scope)this.cronapi.$scope[key]&&this.cronapi.$scope[key].constructor&&"DataSet"==this.cronapi.$scope[key].constructor.name&&(fields[key]={},fields[key].active=this.cronapi.$scope[key].active);var scope=this.cronapi.$scope,recursiveLookup=function(scope){var fieldValue;try{fieldValue=eval(scope.vars)}catch(t){}if(fieldValue&&0!==Object.keys(fieldValue).length){var keys=Object.keys(fieldValue);keys.forEach((function(t){void 0!==fieldValue[t]&&null!==fieldValue[t]&&(fields.vars||(fields.vars={}),fields.vars[t]=fieldValue[t])}))}else if(scope&&scope.$parent)return recursiveLookup(scope.$parent)};for(var key in recursiveLookup(scope),this.cronapi.$scope.params)this.cronapi.$scope.params[key]&&(fields.params||(fields.params={}),fields.params[key]=this.cronapi.$scope.params[key]);return fields},this.cronapi.util.makeCallServerBlocklyAsync=function(blocklyWithFunction,callbackSuccess,callbackError){var fields=this.cronapi.util.getScreenFields(),paramsApply=[];paramsApply.push(blocklyWithFunction),paramsApply.push(fields),paramsApply.push(function(data){this.cronapi.evalInContext(data).then((result=>{"string"==typeof callbackSuccess?eval(callbackSuccess)(result):callbackSuccess&&callbackSuccess(result)}))}.bind(this)),paramsApply.push(function(data,status,errorThrown){var message=this.cronapi.internal.getErrorMessage(data,errorThrown);"string"==typeof callbackError?eval(callbackError)(message):callbackError?callbackError(message):this.cronapi.$scope.Notification.error(message)}.bind(this)),$(arguments).each((function(t){t>=3&¶msApply.push(this)})),this.cronapi.util.callServerBlocklyAsync.apply(this,paramsApply)},this.cronapi.util.callServerBlocklyNoReturn=async function(){return this.cronapi.util.callServerBlockly.apply(this,arguments)},this.cronapi.util.throwException=function(t){throw t},this.cronapi.util.createException=function(t){return t},this.cronapi.util.language=function(){return(window.navigator.userLanguage||window.navigator.language||"pt_br").replace("-","_")},this.cronapi.util.share=function(t,n,a){return new Promise(((o,r)=>{navigator.share({title:t,text:n,url:a}).then((()=>{o("Successful share"),console.log("Successful share")})).catch((t=>{r(t),console.log("Error sharing:",t)}))}))},this.cronapi.util.callServerBlockly=async function(t){let n=[];n.push(t),n.push(null),n.push(null);let a=1;for(;a<arguments.length;a++)n.push(arguments[a]);return new Promise(((t,a)=>{n[1]=(n=>{t(n)}).bind(this),n[2]=(t=>{a(t)}).bind(this),this.cronapi.util.makeCallServerBlocklyAsync.apply(this,n)}).bind(this))},this.cronapi.util.callServerBlocklyAsynchronous=function(t,n,a){if(""!=t&&"function"==typeof n){(a=[]).push(t),a.push(n),a.push(n);for(var o=2;o<arguments.length;o++)a.push(arguments[o]);this.cronapi.util.makeCallServerBlocklyAsync.apply(this,a)}},this.cronapi.util.executeJavascriptNoReturn=function(value){eval(value)},this.cronapi.util.downloadFile=function(t){var n=this.cronapi.internal.getAddressWithHostApp(t);this.cronapi.screen.openUrl(n,"_blank",0,0)},this.cronapi.util.executeJavascriptNoReturn=function(value){eval(value)},this.cronapi.util.executeJavascriptReturn=function(value){return eval(value)},this.cronapi.util.openReport=function(t){this.cronapi.$scope.getReport(t)},this.cronapi.util.getIP=function(){return $.get({url:"https://api.ipify.org/",async:!1}).responseText},this.cronapi.util.openDashboard=function(t){this.cronapi.$scope.getReport(t)},this.cronapi.util.handleCallback=function(t){if(t){return"AsyncFunction"===t.constructor.name?function(){(async()=>{await t.apply(this,arguments)})()}.bind(this):t.bind(this)}},this.cronapi.util.getURLFromOthers=function(t,n,a,o,r,s,c){if(o&&"application/x-www-form-urlencoded"===n){for(var l in o)if(o[l]instanceof Array){var p=o[l].toString();o[l]=`[${p}]`}}else o&&"application/json"===n&&(o=JSON.stringify(o));var u=Object.create(r);u["Content-Type"]=n,this.cronapi.$scope.http({method:t,url:a,data:o,headers:u,transformResponse:t=>t}).then(function(t){this.cronapi.util.handleCallback(s).bind(this)(t.data,t)}.bind(this),function(t){this.cronapi.util.handleCallback(c).bind(this)(t.data,t)}.bind(this))},this.cronapi.util.getUserToken=function(){if(localStorage.getItem("_u")){let t=JSON.parse(window.localStorage.getItem("_u"));if(t.token)return t.token}return""},this.cronapi.util.getUser=function(){return JSON.parse(window.localStorage.getItem("_u")).user.username},this.cronapi.util.getUserName=function(){return JSON.parse(window.localStorage.getItem("_u")).user.name},this.cronapi.util.setSessionStorage=function(t,n){window.sessionStorage.setItem(t,n)},this.cronapi.util.getSessionStorage=function(t){return window.sessionStorage.getItem(t)},this.cronapi.util.setLocalStorage=function(t,n){window.localStorage.setItem(t,n)},this.cronapi.util.getLocalStorage=function(t){return window.localStorage.getItem(t)},this.cronapi.util.executeAsynchronous=function(t){setTimeout(t,0)},this.cronapi.util.scheduleExecution=function(t,n,a,o,r){r="true"===(r=r||!0)||!0===r;var s=1;"seconds"===o?s=1e3:"minutes"===o?s=6e4:"hours"===o&&(s=36e5),n*=s,a*=s;var c=-1,l=setTimeout(function(){t(),c=setInterval(t,a)}.bind(this),n);r&&this.$on("$destroy",(function(){try{clearTimeout(l)}catch(t){}try{clearInterval(c)}catch(t){}}))},this.cronapi.util.openReport=function(t,n,a){this.cronapi.$scope.getReport(t,n,a)},this.cronapi.util.openDashboard=function(t,n,a){this.cronapi.$scope.getReport(t,n,a)},this.cronapi.util.getCEP=function(t,n){if(this.cronapi.logic.isNullOrEmpty(t))throw new Error("Informe o CEP");if((t=t.replace(/\.|\-/g,"").split(" ").join("")).length<8)throw new Error("CEP inválido");let a="https://viacep.com.br/ws/"+t+"/json/?callback=?";$.getJSON(a,this.cronapi.util.handleCallback(n.bind(this)))},this.cronapi.screen={},this.cronapi.screen.isInsertingMode=function(t){return getDatasource(t).inserting},this.cronapi.screen.isEditingMode=function(t){return getDatasource(t).editing},this.cronapi.screen.changeTitleScreen=function(t){window.document.title=t},this.cronapi.screen.fieldFromScreen=function(t){return t},this.cronapi.screen.changeValueOfField=function(t,n){try{this.__tempValue=n;var a=new Function("this."+t+" = this.__tempValue;");this.safeApply(a.bind(this))}catch(t){}},this.cronapi.screen.getValueOfField=function(field){try{if(field&&field.length>0){if(field.indexOf(".active.")>-1)return eval(field);var scope=eval("this"),recursiveLookup=function(scope){var fieldValue;try{fieldValue=eval("scope."+field)}catch(t){}return void 0!==fieldValue||null!==fieldValue?fieldValue:scope&&scope.$parent?recursiveLookup(scope.$parent):""};return recursiveLookup(scope)}return""}catch(t){alert(t)}},this.cronapi.screen.createScopeVariable=function(t,n){this.cronapi.$scope.safeApply((()=>this.cronapi.$scope.vars[t]=n))},this.cronapi.screen.getScopeVariable=function(t){return this.cronapi.$scope.vars[t]},this.cronapi.screen.notify=function(t,n){null!=n&&null!=n||(n=""),this.cronapi.$scope.Notification({message:n.toString()},t)},this.cronapi.screen.datasourceFromScreen=function(t){return t},this.cronapi.screen.startInsertingMode=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).startInserting(null,(()=>{n()}))}catch(t){a(t)}}))}))},this.cronapi.screen.startEditingMode=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).startEditing(null,(()=>{n()}))}catch(t){a(t)}}))}))},this.cronapi.screen.backNormalState=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).onBackNomalState(),n()}catch(t){a(t)}}))}))},this.cronapi.screen.previusRecord=function(t){getDatasource(t).$apply(new function(){getDatasource(t).previous()})},this.cronapi.screen.nextRecord=function(t){getDatasource(t).$apply(new function(){getDatasource(t).next()})},this.cronapi.screen.firstRecord=function(t){getDatasource(t).$apply(new function(){var n=getDatasource(t);n.cursor=-1,n.next()})},this.cronapi.screen.lastRecord=function(t){getDatasource(t).$apply(new function(){var n=getDatasource(t);n.cursor=n.data.length-2,n.next()})},this.cronapi.screen.removeRecord=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).removeSilent(null,(()=>{n()}),(t=>{a(t)}))}catch(t){a(t)}}))}))},this.cronapi.screen.refreshActiveRecord=async function(t){return new Promise(((n,a)=>{try{getDatasource(t).refreshActive((()=>{n()}),(t=>{a(t)}))}catch(t){a(t)}}))},this.cronapi.screen.hasNextRecord=function(t){return getDatasource(t).hasNext()},this.cronapi.screen.quantityRecords=function(t){return getDatasource(t).data.length},this.cronapi.screen.post=async function(t){return new Promise(((n,a)=>{try{getDatasource(t).postSilent((()=>{n()}),(t=>{a(t)}))}catch(t){a(t)}}))},this.cronapi.screen.filter=function(t,n){getDatasource(t).isOData()?getDatasource(t).search(n):getDatasource(t).filter("/"+n)},this.cronapi.screen.doFilter=function(t,n,a){let o=a;a instanceof Array&&(o=a.join(" "+n+" ")),getDatasource(t).isOData()?getDatasource(t).search(o):getDatasource(t).filter("/"+o)},this.cronapi.screen.createFilter=function(t,n,a){return"substringof"===n?"substringof('"+(a||!1===a?a instanceof Date?a.toISOString():a:"")+"', "+t+")":t+" "+n+" "+objToOData(a)},this.cronapi.screen.changeView=function(view,params){try{var queryString="",paramsStopEncode={};function decodeCharParam(value){if(value)for(var param in paramsStopEncode){var regex=eval("/"+param+"/g");value=value.replace(regex,paramsStopEncode[param])}return value}if(paramsStopEncode["%24"]="$",void 0!==params)if(params instanceof Array)for(var i in Object.keys(params)){var k=Object.keys(params[i])[0],paramValue=Object.values(params[i])[0];paramValue instanceof Date&&(paramValue=paramValue.toISOString());var v=String(paramValue);queryString&&(queryString+="&"),queryString+=decodeCharParam(encodeURIComponent(k))+"="+encodeURIComponent(v)}else for(var k in params)queryString&&(queryString+="&"),queryString+=decodeCharParam(encodeURIComponent(k))+"="+encodeURIComponent(params[k]);let existRoute=t=>{if(this.cronapi.$scope&&this.cronapi.$scope.$state){let n=this.cronapi.$scope.$state.get(),a="views/"+t.split("/").slice(2).join("/")+".view.html";n.forEach((n=>{let o=n.templateUrl;if(o instanceof Function){let t=/('|")[a-z0-9/.]+('|")/gim.exec(o.toString());null!=t&&t[0]&&(o=t[0].replace(/'|"/g,""))}o===a&&(t="#"+n.url)}))}return t};var oldHash=window.location.hash;view=existRoute(view),window.location.hash=view+(queryString?"?"+queryString:"");var oldHashToCheck=oldHash+(oldHash.indexOf("?")>-1?"":"?"),viewToCheck=view+(view.indexOf("?")>-1?"":"?");this.cronapi.forceCloseAllModal(),oldHashToCheck.indexOf(viewToCheck)>=0&&window.location.reload()}catch(t){alert(t)}},this.cronapi.screen.openUrl=function(t,n,a,o){try{var r="_self",s="";n&&"true"==n.toString().toLowerCase()&&(r="_blank"),a&&(s+="width="+a+","),o&&(s+="height="+o+","),window.open(t,r,s)}catch(t){alert(t)}},this.cronapi.screen.getParam=function(t){try{for(var n,a=[],o=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),r=0;r<o.length;r++)n=o[r].split("="),a.push(n[0]),a[n[0]]=n[1];if(void 0!==a[t])return decodeURIComponent(a[t])}catch(t){}return null},this.cronapi.screen.confimDialog=function(t){return confirm(t)},this.cronapi.screen.createDefaultModal=function(t,n,a,o,r,s,c){$("#modalTemplateTitle").text(t),$("#modalTemplateBody").text(n),$("#modalTemplateCancel").text(a),$("#modalTemplateSave").text(o),$("#modalTemplateClose").unbind("click"),$("#modalTemplateClose").click(c),$("#modalTemplateCancel").unbind("click"),$("#modalTemplateCancel").click(s),$("#modalTemplateSave").unbind("click"),$("#modalTemplateSave").click(r),this.cronapi.screen.showModal("modalTemplate")},this.cronapi.screen.showModal=function(t){let n=`#${t}`,a=$(":focus"),o=$(":hover");try{$(n).one("shown.bs.modal",(function(t){a.length&&($(this).data("lastFocused",a),$(this).data("lastFocusedClass","."+a.attr("class").split(" ").join("."))),o.length&&$(this).data("lastHovers",o);let n=$(this).find("input:not(:hidden)")[0];n&&n.focus()})).one("hidden.bs.modal",(function(t){let a,o=$(n).data("lastFocused"),r=!1;o&&o.length&&(a=$($(this).data("lastFocusedClass")),r=$("html").has(o).length?o.is(":visible"):a.is(":visible"));let s=function(t){return $(t[t.length-1]).closest("li:visible").find("a:first")},c=$(n).data("lastHovers");if(r)a.focus(),o.focus();else if($("html").has(o).length){s(o).focus()}else if(c&&c.length){s(c).focus()}})).modal({backdrop:"static",keyboard:!1})}catch(t){$(n).show()}$(n).css("overflow-y","auto")},this.cronapi.screen.setActiveTab=function(t){this.cronapi.$scope.safeApply((function(){void 0===$("#"+t).attr("data-target")?$('[data-target="#'+t+'"]').tab("show"):$("#"+t).tab("show")}))},this.cronapi.screen.hideModal=function(t){try{$("#"+t).modal("hide")}catch(n){$("#"+t).hide()}},this.cronapi.screen.showIonicModal=async function(t){return $(`#${t}`).data("cronapp-modal")&&$(`#${t}`).data("cronapp-modal").remove(),new Promise(((n,a)=>{this.cronapi.$scope.$ionicModal.fromTemplateUrl(t,{scope:this.cronapi.$scope,animation:"slide-in-up"}).then((a=>{$("#"+t).data("cronapp-modal",a),a.show(),n()})).catch((t=>a(t)))}))},this.cronapi.screen.hideIonicModal=function(t){$("#"+t).data("cronapp-modal")&&($("#"+t).data("cronapp-modal").remove(),$("#"+t).data("cronapp-modal",null))},this.cronapi.screen.isShownIonicModal=function(t){return!!$("#"+t).data("cronapp-modal")&&$("#"+t).data("cronapp-modal").isShown()},this.cronapi.screen.showLoading=function(){this.cronapi.$scope.$ionicLoading&&this.cronapi.$scope.$ionicLoading.show({content:"Loading",animation:"fade-in",showBackdrop:!0,maxWidth:200,showDelay:0})},this.cronapi.screen.hide=function(){this.cronapi.$scope.$ionicLoading&&this.cronapi.$scope.$ionicLoading.hide()},this.cronapi.screen.getHostapp=function(){return window.hostApp},this.cronapi.screen.searchIds=function(){},this.cronapi.screen.showComponent=function(t){const n=$("#"+t);if(n.length>0){const t=n.parent();n.attr("data-component")?n.attr("style","display:block !important"):t.attr("style","display:block !important")}else console.error("Element not found: "+t)},this.cronapi.screen.hideComponent=function(t){const n=$("#"+t);if(n.length>0){const t=n.parent();n.attr("data-component")?n.attr("style","display:none !important"):t.attr("style","display:none !important")}else console.error("Element not found: "+t)},this.cronapi.screen.disableComponent=function(t){let n;if(window.cordova)n=this.cronapi.$scope;else{let t=window.angular.element("body").injector();n=t.get("$rootScope")}let a=(t,n)=>{t.data("kendoComboBox")?t.data("kendoComboBox").enable(!1):t.hasClass("cronSelect")&&t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!1):t.data("kendoDropDownList")?t.data("kendoDropDownList").enable(!1):t.data("kendoMultiSelect")?t.data("kendoMultiSelect").enable(!1):t.find("[data-role=grid]").data("kendoGrid")||t.find("cron-grid").length?this.cronapi.internal.coverElement(t):$.each(t.find("*").addBack(),(function(t,o){let r=$(o);r.prop("disabled",!0).addClass("disabled"),n&&a(r,!1)}))},o=()=>{let r=$(`#${t}`);"$apply"!==n.$$phase&&"$digest"!==n.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout((()=>o()),200)};o()},this.cronapi.screen.enableComponent=function(t){let n;if(window.cordova)n=this.cronapi.$scope;else{let t=window.angular.element("body").injector();n=t.get("$rootScope")}let a=(t,n)=>{t.data("kendoComboBox")?t.data("kendoComboBox").enable(!0):t.hasClass("cronSelect")&&t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!0):t.data("kendoDropDownList")?t.data("kendoDropDownList").enable(!0):t.data("kendoMultiSelect")?t.data("kendoMultiSelect").enable(!0):t.find("[data-role=grid]").data("kendoGrid")||t.find("cron-grid").length?this.cronapi.internal.discoverElement(t):$.each(t.find("*").addBack(),(function(t,o){let r=$(o);r.prop("disabled",!1).removeClass("disabled"),n&&a(r,!1)}))},o=()=>{let r=$(`#${t}`);"$apply"!==n.$$phase&&"$digest"!==n.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout((()=>o()),200)};o()},this.cronapi.screen.focusComponent=function(t){this.cronapi.$scope.safeApply((function(){tinyMCE&&tinyMCE.get(t)?tinyMCE.get(t).focus():$("#"+t).find("*").addBack().focus()}))},this.cronapi.screen.changeAttrValue=function(t,n,a){$("#"+t).attr(n,a)},this.cronapi.screen.getAttrValue=function(t,n){return $(`#${t}`).attr(n)},this.cronapi.screen.changeContent=function(t,n,a){if($("#"+t).html(n),!0===a||"true"===a){var o=angular.injector(["ng"]),r=this;o.invoke(["$compile",function(n){n(document.querySelector("#"+t))(r.cronapi.$scope)}])}},this.cronapi.screen.setVisibility=function(t,n){let a=!0===n||"true"===n?"visible":"hidden";$(`#${t}`).css("visibility",`${a}`)},this.cronapi.screen.getContent=function(t){return $(`#${t}`).html()},this.cronapi.screen.copyValue=function(t){var n=this.cronapi.screen.getValueOfField(t);null==n&&(n=""),navigator.clipboard.writeText(n)},this.cronapi.screen.toggleClass=function(t,n){$(`#${t}`).toggleClass(n)},this.cronapi.screen.recompileComponent=async function(t){let n=$(`#${t}`);n.data("alreadycompiled",!1);let a=await(t=>new Promise((n=>{let a=t.data("$compile");a?n(a):angular.injector(["ng"]).invoke(["$compile",t=>n(t)])})))(n),o=this.cronapi.$scope;o.safeApply((()=>a(n)(o)))},this.cronapi.screen.logout=function(){null!=this.cronapi.$scope.logout&&this.cronapi.$scope.logout()},this.cronapi.screen.refreshDatasource=function(t,n){1==n||"true"==n?this[t].search(this[t].terms,this[t].caseInsensitive):this[t].search("",this[t].caseInsensitive)},this.cronapi.screen.loadMore=function(t){getDatasource(t).$apply((function(){getDatasource(t).nextPage()}))},this.cronapi.screen.hasNextPage=function(t){return getDatasource(t).hasNextPage()},this.cronapi.screen.load=function(t){let n=getDatasource(t);n.reloadedFromCronapi=!0,n.fetch({params:{}},void 0,void 0,{origin:"button"})},this.cronapi.screen.addClass=function(t,n){$(`#${t}`).addClass(n)},this.cronapi.screen.removeClass=function(t,n){$(`#${t}`).removeClass(n)},this.cronapi.screen.createMenuObjectMobile=function(t){let n=[];return t&&(Array.isArray(t)?n=t:n.push(t)),{escope:"MOBILE",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,n)}},this.cronapi.screen.createMenuObjectWeb=function(t){let n=[];return t&&(Array.isArray(t)?n=t:n.push(t)),{escope:"WEB",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,n)}},this.cronapi.screen.recursiveDefineItemsIds=function(t,n,a){for(let o=0;o<a.length;o++)a[o].level=n,a[o].id=t+"-"+(o+1),a[o].menuItems=this.cronapi.screen.recursiveDefineItemsIds(a[o].id,n+1,a[o].menuItems);return a},this.cronapi.screen.createMenuItemMobile=function(t,n,a,o,r,s,c,l,p,u){let d="";return a&&"ion-NONE"!=a&&(d=0==a.indexOf("ion-")?"icon "+a:a),{id:"TODO",name:t||"",title:n||"",iconClass:d,hide:o||"",security:r||"",action:s||"",level:0,textPosition:c||"left",imagePosition:l||"left",contentTheme:p||"light",iconTheme:u||"light",menuItems:[]}},this.cronapi.screen.createMenuItemWeb=function(t,n,a,o,r,s,c){let l=[];c&&(Array.isArray(c)?l=c:l.push(c));let p="";return a&&"fa-NONE"!=a&&(p=0==a.indexOf("fa-")?"fa "+a:a),{id:"TODO",name:t||"",title:n||"",iconClass:p,hide:o||"",security:r||"",action:s||"",level:0,textPosition:"left",imagePosition:"left",contentTheme:"light",iconTheme:"light",menuItems:l}},this.cronapi.screen.createMenuItemSecurity=function(t,n){let a=[];t&&""!==t&&(Array.isArray(t)?a=t:a.push(t));let o=[];n&&""!==n&&(Array.isArray(n)?o=n:o.push(n));let r="";return a.length>0&&(r="visible : "+a.join(";")),o.length>0&&(r=r.length>0?r+", enabled : "+o.join(";"):"enabled : "+o.join(";")),r},this.cronapi.dateTime={},this.cronapi.dateTime.formats=function(){var t=[];return(t="pt_br"==this.cronapi.$translate.use()?["DD/MM/YYYY HH:mm:ss","DD/MM/YYYY","DD-MM-YYYY HH:mm:ss","DD-MM-YYYY"]:["MM/DD/YYYY HH:mm:ss","MM/DD/YYYY","MM-DD-YYYY HH:mm:ss","MM-DD-YYYY"]).push("YYYY-MM-DDTHH:mm:ss"),t.push("HH:mm:ss"),t.push("MMMM"),t},this.cronapi.dateTime.getMomentObj=function(value){var currentMoment=moment;if(value instanceof moment)return value;if(value instanceof Date)return currentMoment(value).utcOffset(window.timeZoneOffset);if(value){let dateString=new RegExp("/Date((.*?))/"),regexExecution=dateString.exec(value);if(regexExecution&®exExecution.length>1){let date=eval(`new Date${regexExecution[1]}`);return currentMoment(date).utcOffset(window.timeZoneOffset)}}var formats=this.cronapi.dateTime.formats(),momentObj=null;for(var ix in formats)if(momentObj=currentMoment(value,formats[ix]),momentObj.isValid())break;return momentObj},this.cronapi.dateTime.changeDateMask=function(t,n,a,o,r){if(this.cronapi.logic.isNullOrEmpty(t))return t;if(this.cronapi.logic.isNullOrEmpty(n))return new Var("INVALID INIT MASK");if(a=this.cronapi.logic.isNullOrEmpty(a)?"pt-BR":a.replace("_","-"),this.cronapi.logic.isNullOrEmpty(o))return new Var("INVALID END MASK");r=this.cronapi.logic.isNullOrEmpty(r)?"pt-BR":r.replace("_","-");var s=moment(t,n,a);return s.locale(r),s.format(o)},this.cronapi.dateTime.getSecond=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("second"):0},this.cronapi.dateTime.getMinute=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("minute"):0},this.cronapi.dateTime.getHour=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("hour"):0},this.cronapi.dateTime.getYear=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("year"):0},this.cronapi.dateTime.getMonth=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("month")+1:0},this.cronapi.dateTime.getDay=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("date"):0},this.cronapi.dateTime.getSecondsBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"seconds")},this.cronapi.dateTime.getMinutesBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"minutes")},this.cronapi.dateTime.getHoursBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"hours")},this.cronapi.dateTime.getDaysBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"days")},this.cronapi.dateTime.getMonthsBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"months")},this.cronapi.dateTime.getYearsBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"years")},this.cronapi.dateTime.incSecond=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("seconds",n).toDate()},this.cronapi.dateTime.incMinute=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("minutes",n).toDate()},this.cronapi.dateTime.incHour=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("hours",n).toDate()},this.cronapi.dateTime.incDay=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("days",n).toDate()},this.cronapi.dateTime.incMonth=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("months",n).toDate()},this.cronapi.dateTime.incYear=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("years",n).toDate()},this.cronapi.dateTime.getNow=function(){return moment().toDate()},this.cronapi.dateTime.formatDateTime=function(t,n){return this.cronapi.dateTime.getMomentObj(t).format(n)},this.cronapi.dateTime.newDate=function(t,n,a,o,r,s){var c=new Date;return c.setYear(t),c.setMonth(n-1),c.setDate(a),c.setHours(o),c.setMinutes(r),c.setSeconds(s),this.cronapi.dateTime.getMomentObj(c).toDate()},this.cronapi.dateTime.updateDate=function(t,n,a,o,r,s,c,l){var p=this.cronapi.dateTime.getMomentObj(t).toDate();if(p&&!isNaN(p.getTime()))return p.setYear(n),p.setMonth(a-1),p.setDate(o),p.setHours(r),p.setMinutes(s),p.setSeconds(c),p.setMilliseconds(l),this.cronapi.dateTime.getMomentObj(p).toDate();this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]))},this.cronapi.dateTime.updateNewDate=function(t,n,a){var o=this.cronapi.dateTime.getMomentObj(t).toDate();if(o&&!isNaN(o.getTime())){switch(n){case"year":o.setYear(a);break;case"month":o.setMonth(a-1);break;case"day":o.setDate(a);break;case"hour":o.setHours(a);break;case"minute":o.setMinutes(a);break;case"second":o.setSeconds(a);break;case"millisecond":o.setMilliseconds(a)}return this.cronapi.dateTime.getMomentObj(o).toDate()}this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]))},this.cronapi.text={},this.cronapi.text.prompt=function(t){return null},this.cronapi.text.formatTextWithReplacement=function(t,...n){var a=Array.prototype.slice.call(n,0);return t.replace(/\{(\d+)\}/g,(function(t,n){return a[n]}))},this.cronapi.text.newline=function(){return"\n"},this.cronapi.text.replaceAll=function(t,n,a,o){return this.cronapi.logic.isNull(t)||this.cronapi.logic.isNull(n)||this.cronapi.logic.isNull(o)?null:"-"!==a?t.replace(new RegExp(n,a),o):t.replace(n,o)},this.cronapi.xml={},this.cronapi.xml.newXMLEmpty=function(){return $.parseXML('<?xml version="1.0" encoding="UTF-8"?><root></root>')},this.cronapi.xml.newXMLEmptyWithRoot=function(t){var n=$.parseXML('<?xml version="1.0" encoding="UTF-8"?><root></root>');return n.removeChild(n.firstElementChild),n.appendChild(t),n},this.cronapi.xml.newXMLElement=function(t,n){var a=document.createElement(t);return a.textContent=n,a},this.cronapi.xml.addXMLElement=function(t,n){try{var a=n.cloneNode(!0);return t.appendChild(a),!0}catch(t){return!1}},this.cronapi.xml.XMLHasRootElement=function(t){return!(!t||!t.getRootNode())},this.cronapi.xml.XMLGetRootElement=function(t){return t instanceof XMLDocument?t.firstElementChild:t.getRootNode()},this.cronapi.xml.XMLDocumentToText=function(t){if(t instanceof XMLDocument)return $($($(t.firstElementChild).context.outerHTML).removeAttr("xmlns"))[0].outerHTML;if($(t).size()>1){var n="";return $.each($(t).toArray(),(function(t,a){n+=$($(a)[0].outerHTML).removeAttr("xmlns")[0].outerHTML})),n}return $($($(t).context.outerHTML).removeAttr("xmlns"))[0].outerHTML},this.cronapi.xml.getChildren=function(t,n){return t instanceof XMLDocument?t.firstElementChild.toArray:n?n.localName?$(t).find(n.localName).toArray():$(t).find(n).toArray():$(t).children().toArray()},this.cronapi.xml.setAttribute=function(t,n,a){return!!n&&(t instanceof XMLDocument?(t.firstChild.setAttribute(n,a),!0):!!t&&(t.setAttribute(n,a),!0))},this.cronapi.xml.getAttributeValue=function(t,n){return n?t instanceof XMLDocument?t.firstChild.getAttribute(n)?t.firstChild.getAttribute(n):"":t&&n?t.getAttribute(n):"":""},this.cronapi.xml.getParentNode=function(t){return t instanceof XMLDocument?t.firstChild:t.parentNode},this.cronapi.xml.setElementContent=function(t,n){t instanceof XMLDocument&&(t.firstChild.textContent=n),t.textContent=n},this.cronapi.xml.getElementContent=function(t){return t instanceof XMLDocument?t.firstChild.innerText:t.innerText},this.cronapi.xml.removeElement=function(t,n){t instanceof XMLDocument?n?n instanceof HTMLUnknownElement?n.remove():$.each($(t.firstElementChild.children),(function(t,a){a.localName==n&&a.remove()})):$.each($(t.firstElementChild.children),(function(t,n){n.remove()})):n?n instanceof HTMLUnknownElement?n.remove():$.each($(t.children),(function(t,a){a.localName==n&&a.remove()})):$.each($(t.children),(function(t,n){n.remove()}))},this.cronapi.xml.getElementName=function(t){return t instanceof XMLDocument?t.firstChild.localName:t.localName},this.cronapi.xml.renameElement=function(t,n){var a=t.outerHTML.replace(t.localName,n);a=a.replace("/"+t.localName,"/"+n),a=$(a).removeAttr("xmlns"),t.replaceWith(a[0])},this.cronapi.logic={},this.cronapi.logic.isNull=function(t){return null==t||null==t},this.cronapi.logic.isEmpty=function(t){return""===t},this.cronapi.logic.isNullOrEmpty=function(t){return this.cronapi.logic.isNull(t)||this.cronapi.logic.isEmpty(t)},this.cronapi.logic.typeOf=function(t,n){return"array"===n?Array.isArray(t):("object"!==n||!Array.isArray(t))&&typeof t===n},this.cronapi.i18n={},this.cronapi.i18n.translate=function(t,n){if(t){for(var a=this.cronapi.$translate.instant(t),o=0;o<n.length;o++){var r=n[o];if(null!=r&&void 0!==r){var s=new RegExp("\\{"+o+"\\}","g");a=a.replace(s,r)}}return a}},this.cronapi.internal={},this.cronapi.internal.forceRefreshNgModel=async function(t,n){let a=()=>new Promise((t=>{let n=setInterval((()=>{clearInterval(n),t()}))}));await a(),this.cronapi.screen.changeValueOfField(t,void 0),await a(),this.cronapi.screen.changeValueOfField(t,n)},this.cronapi.internal.hasMethodInCallStack=function(t){return(new Error).stack.indexOf(t)>-1},this.cronapi.internal.lastCronappMenuClick=function(t){window.angular.element("body").injector().get("$rootScope").__lastCronappMenuClick=t},this.cronapi.internal.isJsonString=t=>{if("string"!=typeof t)return!1;try{return JSON.parse(t),!0}catch(t){return!1}},this.cronapi.internal.getPouchDB=t=>{let n;window.pouchDBInstances=window.pouchDBInstances||{};let a=t=>(window.pouchDBInstances[t]=new PouchDB(t),window.pouchDBInstances[t]);return n=window.pouchDBInstances[t]?window.pouchDBInstances[t]:a(t),n.info().then((function(o){o||(n.close(),n=a(t))})).catch((function(o){n.close(),n=a(t)})),n},this.cronapi.internal.updatePouchDB=function(t,n,a){let o=$.extend(!0,{},n);this.cronapi.internal.normalizePouchDBData(o).forEach((n=>{t.get(n._id).then((a=>(a&&a._id&&(n._rev=a._rev),t.put(n)))).then(a).catch((o=>{"not_found"===o.name?t.post(n).then(a).catch((t=>{console.error(t)})):console.error(o)}))}))},this.cronapi.internal.normalizePouchDBData=function(t,n){let a=[];return $.each(t,(function(t,o){let r=o;r[n?"__metadata":"$metadata"]=r[n?"$metadata":"__metadata"],r[n?"_objectKey":"$objectKey"]=r[n?"$objectKey":"_objectKey"],r[n?"__$masterExpression":"$$masterExpression"]=r[n?"$$masterExpression":"__$masterExpression"],r[n?"__parentId":"$parentId"]=r[n?"$parentId":"__parentId"],r[n?"__sender":"$sender"]=r[n?"$sender":"__sender"],r[n?"__status":"$status"]=r[n?"$status":"__status"],r[n?"__original":"$original"]=r[n?"$original":"__original"],r.hasOwnProperty(n?"$odataFile_attached":"__odataFile_attached")&&(r[n?"__odataFile_attached":"$odataFile_attached"]=r[n?"$odataFile_attached":"__odataFile_attached"]),n?(delete r.$metadata,delete r.$objectKey,delete r.$$masterExpression,delete r.$parentId,delete r.$sender,delete r.$status,delete r.$original,delete r.$odataFile_attached):(r._id=r._objectKey,delete r.__metadata,delete r._objectKey,delete r.__$id,delete r.__$masterExpression,delete r.__parentId,delete r.__sender,delete r.__status,delete r.__original,delete r.__odataFile_attached),a.push(r)})),a},this.cronapi.internal.getMaxZIndex=function(){let t=0;return $("body *").each(((n,a)=>{let o=window.getComputedStyle(a).zIndex;o&&!Number.isNaN(parseFloat(o))&&$(a).is(":visible")&&(o=parseFloat(o),t=o>t?o:t)})),t},this.cronapi.internal.viewToRoute=function(t,n){var a=void 0;if(this.cronapi.$scope&&this.cronapi.$scope.$state){var o=this.cronapi.$scope.$state.get().find((n=>n.templateUrl===t));o&&(a="".concat(o.url))}return a||(a="/".concat(t.replace("views/","").replace(".view.html","")),"mobile"===n&&(a="/app".concat(a))),a},this.cronapi.internal.loginSocial=function(t){let n=$(`#${t}`),a=n.attr("action"),o=$("<form/>");o.attr("method","POST"),o.attr("action",a),n.children().appendTo(o),n.parent().append(o),o.submit()},this.cronapi.internal.selectContent=function(t){let n=window.getSelection(),a=document.createRange();a.selectNodeContents(t),n.removeAllRanges(),n.addRange(a)},this.cronapi.internal.skipIterationLoop=function(){return new Promise((t=>{t()}))},this.cronapi.internal.coverElement=function(t){((n,a)=>{let o=a.eq(0).outerWidth(),r=a.eq(0).outerHeight();a.each((function(a){let s=t.closest(".modal-dialog").length,c=s?999999:9999,l=s?$(".modal.fade.in"):t.parent(),p=$(this).offset();$(`<div class='cover-${n}'>`).css({width:o,height:r,position:"absolute",top:p.top,left:p.left,"z-index":c}).appendTo(l)}))})(t.attr("id"),t)},this.cronapi.internal.discoverElement=function(t){let n=t.attr("id");$(`.cover-${n}`).remove()},this.cronapi.internal.focusFormInput=function(){let t=$($("form")[0]),n=$(t.find("input")[0]);if(n&&n.length){let t=setInterval((()=>{n.is(":visible")&&("dropdownlist"!==n.data("role")&&n.focus(),clearInterval(t))}),100)}},this.cronapi.forceCloseAllModal=function(){var t=$(".modal.fade.in");t&&t.each(((t,n)=>this.cronapi.screen.hideModal(n.id))),$(".modal-backdrop.fade.in").remove()},this.cronapi.internal.setFile=function(t,n){this.cronapi.internal.fileToBase64(n,function(n){this.cronapi.screen.changeValueOfField(t,n)}.bind(this))},this.cronapi.internal.fileToBase64=function(t,n){var a=new FileReader;a.readAsDataURL(t),a.onload=function(t){var a=t.target.result.substr(t.target.result.indexOf("base64,")+7);n(a)}},this.cronapi.internal.getMaxResolution=function(t,n){var a=window.innerWidth,o=window.innerHeight,r=0;return n*=r=a/t,(t*=r)>a&&(n*=r=a/t,t*=r),n>o&&(t*=r=o/n,n*=r),{width:t,height:n}},this.cronapi.internal.startCamera=function(t,n,a,o,r){if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId)this.cronapi.cordova.camera.getPicture((n=>{this.cronapi.screen.changeValueOfField(t,n.replace(/^data:image\/\w+;base64,/,""))}),(t=>{console.error(t),this.cronapi.$scope.Notification.error(t)}),0,1,0,a,100!==parseInt(n));else{var s='<div class="camera-container" style="margin-left:-$marginleft$;margin-top:-$margintop$"> <button class="btn btn-success button button-balanced" id="cronapiVideoCaptureOk" style="position: absolute; z-index: 999999999;"> <span class="glyphicon glyphicon-ok icon ion-checkmark-round"></span> <span class="sr-only">{{"Upload.camera" | translate}}</span> </button> <button class="btn btn-danger button button-assertive button-cancel-capture" id="cronapiVideoCaptureCancel" style="position: absolute; margin-left: 42px; z-index: 999999999;"> <span class="glyphicon glyphicon-remove icon ion-android-close"></span> <span class="sr-only">{{"Cancel" | translate}}</span> </button> <video id="cronapiVideoCapture" style="height: $height$; width: $width$;" autoplay=""></video> </div>',c=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia({video:!0}).then(function(n){c=n;var a=cronapi.internal.getMaxResolution(n.getTracks()[0].getSettings().width,n.getTracks()[0].getSettings().height),o=a.width,r=a.height;try{o=parseInt(o/2),r=parseInt(r/2)}catch(t){}s=s.split("$height$").join(a.height+"px").split("$width$").join(a.width+"px").split("$marginleft$").join(o+"px").split("$margintop$").join(r+"px");var l=$(s);l.prependTo("body");var p=document.getElementById("cronapiVideoCapture");l.find("#cronapiVideoCaptureCancel").on("click",function(){null!=c&&c.getTracks().length>0&&c.getTracks()[0].stop(),$(l).remove()}.bind(this)),l.find("#cronapiVideoCaptureOk").on("click",function(){this.cronapi.internal.captureFromCamera(t,a.width,a.height),null!=c&&c.getTracks().length>0&&c.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=n,p.onloadedmetadata=function(t){p.play()}}.bind(this))}},this.cronapi.internal.getPicture=function(t){if(1===t.sourceType)cronapi.internal.getPictureFromCamera(t);else if(0===t.sourceType||2===t.sourceType)cronapi.internal.getPictureFromFile(t);else{$('<div id="captureChooser"></div>').prependTo("body"),$("#captureChooser").kendoDialog({title:"",content:this.cronapi.i18n.translate("getImageFrom",[]),buttonLayout:"normal",actions:[{text:this.cronapi.i18n.translate("camera",[]),primary:!0,action:function(){return cronapi.internal.getPictureFromCamera(t),!0}},{text:this.cronapi.i18n.translate("gallery",[]),action:function(){return cronapi.internal.getPictureFromFile(t),!0}}]})}},this.cronapi.internal.getPictureFromCamera=function(t){var n=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({video:!0}).then(function(a){n=a;var o=cronapi.internal.getMaxResolution(a.getTracks()[0].getSettings().width,a.getTracks()[0].getSettings().height),r=o.width,s=o.height;try{r=parseInt(r/2),s=parseInt(s/2)}catch(t){}var c='<div class="camera-container" style="margin-left:-$marginleft$;margin-top:-$margintop$"> <button class="btn btn-success button button-balanced" id="cronapiFileBrowserOk" style="position: absolute; z-index: 999999999;"> <span class="glyphicon glyphicon-ok icon ion-checkmark-round"></span> <span class="sr-only">{{"Upload.camera" | translate}}</span> </button> <button class="btn btn-danger button button-assertive button-cancel-capture" id="cronapiFileBrowserCancel" style="position: absolute; margin-left: 42px; z-index: 999999999;"> <span class="glyphicon glyphicon-remove icon ion-android-close"></span> <span class="sr-only">{{"Cancel" | translate}}</span> </button> <video id="cronapiFileBrowser" style="height: $height$; width: $width$;" autoplay=""></video> </div> </div>';c=c.split("$height$").join(o.height+"px").split("$width$").join(o.width+"px").split("$marginleft$").join(r+"px").split("$margintop$").join(s+"px");var l=$(c);l.prependTo("body");var p=document.getElementById("cronapiFileBrowser");l.find("#cronapiFileBrowserCancel").on("click",function(){null!=n&&n.getTracks().length>0&&n.getTracks()[0].stop(),t.errorCallback&&t.errorCallback("Operação cancelada"),$(l).remove()}.bind(this)),l.find("#cronapiFileBrowserOk").on("click",function(){cronapi.internal.getPictureSuccess(t,o.width,o.height),null!=n&&n.getTracks().length>0&&n.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=a,p.onloadedmetadata=function(t){p.play()}}.bind(this)).catch(function(n){t.errorCallback&&t.errorCallback(n.toString())}.bind(this)):t.errorCallback&&t.errorCallback("Recurso não suportado ou não autorizado")},this.cronapi.internal.getPictureFromFile=function(t){var n=cronapi.internal.getMaxResolution(window.innerWidth,window.innerHeight),a=n.width,o=n.height;try{a=parseInt(a/2),o=parseInt(o/2)}catch(t){console.log(t)}var r='<div class="camera-container" style="margin-left:-$marginleft$;margin-top:-$margintop$; height: $height$; width: $width$; display: flex; align-items: center; flex-direction: column; justify-content: center; background: #848484a3;"> <div style="overflow: hidden;max-width: 80%;overflow-y: scroll;"><img style="width: 100%; border-radius: 5px;" id="imgPreview" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0BAMAAAA5+MK5AAAAG1BMVEX09PTh4eHl5eXo6Ojy8vLq6urs7Ozw8PDu7u5TsDcvAAAH+0lEQVR42uzVMWpCQRQF0FeEJO37IZ+0cQdqoaWNYq9Y6w5EFKxduYtwBmbwnB1cLpcbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC86uO+m0+aND9co6btLNs1LFdRze0/m/Z7jkrW2bqfStk32b5xFRV8TbMDi6jgkT0YjlHcZ/ZhjOJO2Yn9u5aeOb5t6ZmF1/6d/fiLoi7Zj+EcJXXx6U927uCpaSCK4/gTQtvjvnaLXjt2Zj2CMJZj7TgOV8QRj6AOXgv4BxDHQf9sqTOdZ4Cy2d1s+G2a7xUOhE/eJoFNl+2s5yJX+UI345TqT9dzfa94jc/AH1bvNl7XUa902Dc5rQZUWRecWPN1XeWYT9fzhqbSm5qseNXcQ+w1/5+miure+csfZFfM0vMoj20fCbPsKMbDW6d4kwjajKXtGIf+glDrxTj0rcIUodZlaRjj0DXBFvvQFaGWjSIf+phgW98TvlVvZ71Vb2e9VW9nvVVvZ71Vb2e9VW9nvVVvZ/2xDeM3539+UPkSU9e0osPjES96+XlKJWuGevZVvmXwjcqVmLoqs3X4hErVBPXurt/+5LTUteV/Pg7/nmqC+k++V/+aSpSWuir5XshwStaSV5dBL7RP9tJS13S3S+83cFJX74744QxZS0tdWdBdNignrr5AB2Gve9ZnvLKBbZFPXH03ZAtXWuqKCnVCtqqmrZ4H7ddMS70469kuM8oZX7N6hxnnjK931mdBb2IkrX4WtkM5LXVd/EWHvImRtHqHGWjYa531jaA3MZJWv+DbYK7stc76ETPOOlebutzAw9zU1DnrGVtTtLqU1XtsybaHPC11Xby2AV3dalXfZGtD8uw3nrpyO/QB+dXrz6HVN9han/zKeQKnrkl6Fu3Qe8z9ObL6W7Y39URnNmjqyvEFZ1905sEcWP0i1sdG5LzIgKlrxxPeG30x7bjqMZY5QWeeYKkrt4vbwA99yQ6rHumWJudlBkpdx76RFfTFIo+qvhXl8SVnySCpK8eHVj90mXZQ9S5b017o0gRIvXAsI7a144ku046pHuPPkjkXMzjqqvhz2pr7osu0Y6rP2FLfF10yMOq6+AVL2/7owg6p3mVLY290yaCoK3JZ504D0IUdUd36xD71R5cMiLomh2HfDkIXdkR1y96CcQi6NMFQVy4fwncdhi7sgOqPn/HDMHTJQKhrKr9xbj8UXe7kAdXp0vKx1SHokkFQV+WtTDi6/BYB1VcvdP3rYHTJAKjr0p8s/KoKdGEHVKcvEdEl8/Tq6r7XKOakCzugOl1Zrkch6JJ5cnVN98rO/J/ZBN3ODqgu7zdKE6oMXdjhZv22zoiLHVB16MIOqE70vuh+MK0OXTJ4s76o94GF54QqRRd2RHWi7GYJ/+YXUZXokgGc9X9lh+fHe5++vyOqGl3YIdUDyrlsBnHWpRjowt4s9ZzLZzBnPSa6sDdJPWeXTINmXdBLsjdHPWe3TGNmXdBLszdFPWfXTENmXdAd2JuhnrN7phGzLuhO7E1Qz9kn04BZF3RH9vTVc/bLJD/rgu7Mnrr6X/buGLVhIIjCsIuwqScEnBvkGkqTe2wTUuoKvnkgEH7sqNAuHmv27bwDCImPHzUSC3oz++Ctg97BPrY66B3sQ7cOehf7yOqgd7EP3DronezjqoPeyR659cUFHfa46uXdBR32uK1XW13QYY+qXszOLuiwR229mtnqgc7WmOrFDPa7orO3mK1XXO6OTu0R1YsZ7A7oXJ49xWi9kqMDOrXHUy+4eKBTe7zWKy4u6NQeTb0YObqgwx6t9Xrl4oDOlljqoMN+X3S2xmoddG7OCd1itQ467F7otoRqHXTYPdDjtQ467G7otkRqHXSDHXRhddBh30BXbP0/Ou920BXVQWewgy7YejXGVtBl1UFnsIMu2DroG7WDbnrqoDPYL8bkWgf9dusfuqg66Az2izG51kHfYL9GF1MHncF+g67VOugbe7HfaaoXa5hW69X2T0u9DV2q9X3oiupt6FKtt6ErqbeiC7W+F11PvRVdqPVWdB31dnSZ1vejq6m3o8u03o6uot6DLtJ6C7qWeg+6SOs96BrqfegSrbehK6n3oUu03oeuoN6LLtB6K7qOei+6QOu96OOrH47+2NZDoT9WPRT6Rutxzmnd3vDqH3b4lsDntN4s1YdvPdijz6uerc+onq3PqJ6tz6ierc+onq3PqJ6tz6ierc+onq3PqJ6tz6ierc+onq3PqJ6tz6ierc+onq3PqO7feqyvKtaD1D+/jt73cvh/bhGGusU+FaB5x5+6/3qKulTP1lM9W0/1bD3Vs/VUz9ZTPVtP9Wz9FHVP3urnU9Q9ezx6MfbDzh2rRBADYRz/wOO8diLGrUV7dQstF0GwVPABFmwsFzmOK4978rurUi+bwIT8f0+QMElmhsBEeVVklWtLwiCn3ktsfWOW/Min1bclXYlbZGErj1b/Zsld1rSR9B69mBXJQ89WmSfN5Gs67hKjFvH1uTbPoFyurC43msvXJOwFYtbOoCoPUqvv3Ji1SKxJ1mJ7YzXpdNZmUfMlNXriwyQ1euI7nbX5xo+6aLGqiVKrYR+lRsMeld/RahAOyu+6itz+qhLWFTQxcVARH+bd7aRCds7j/jipmM/e/Apvg0ra//b3LvV/kwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACc2oNDAgAAAABB/197wggAAAAwCf/UoxkfDe2dAAAAAElFTkSuQmCC"/></div> <input type="file" id="imageBrowser" accept="image/*" style="width: 0px; height: 0px; overflow: hidden;"> <div> <button class="btn btn-success button button-balanced" id="cronapiFileBrowserOK" style="position: absolute; z-index: 999999999; bottom: 5px; left: calc(50% - 52px);"> <span class="glyphicon glyphicon-ok icon ion-checkmark-round"></span> <span class="sr-only">{{"Upload.camera" | translate}}</span> </button> <button class="btn btn-danger button button-assertive button-cancel-capture" id="cronapiFileBrowserCancel" style="position: absolute; z-index: 999999999; bottom: 5px; right: calc(50% - 52px); margin-right: -5px;"> <span class="glyphicon glyphicon-remove icon ion-android-close"></span> <span class="sr-only">{{"Cancel" | translate}}</span> </button> <div> </div>';r=r.split("$height$").join(n.height+"px").split("$width$").join(n.width+"px").split("$marginleft$").join(a+"px").split("$margintop$").join(o+"px");var s=$(r);s.prependTo("body"),s.find("#cronapiFileBrowserCancel").on("click",function(){t.errorCallback&&t.errorCallback("Operação cancelada"),$(s).remove()}.bind(this)),s.find("#cronapiFileBrowserOK").on("click",function(){cronapi.internal.getPictureSuccess(t,n.width,n.height,!0),$(s).remove()}.bind(this)),s.find("#imgPreview").on("touchend click",(function(t){"touchend"==t.type&&$(this).off("click"),$("#imageBrowser").trigger("click")})),s.find("#imageBrowser").on("change",(function(){if($("img#imgPreview").attr("src",""),"undefined"!=typeof FileReader){var t=new FileReader;t.onload=function(t){$("img#imgPreview").attr("src",t.target.result)},t.readAsDataURL($(this)[0].files[0])}}))},this.cronapi.internal.getPictureSuccess=function(t,n,a,o){if(t.successCallback)if(o){var r=document.getElementById("imageBrowser").files[0];if(r){var s=new FileReader;s.onload=function(n){var a=n.target.result;t.successCallback(a)},s.readAsDataURL(r)}else t.successCallback(null)}else{var c=document.createElement("canvas");c.width=n,c.height=a;var l=c.getContext("2d"),p=document.getElementById("cronapiFileBrowser");l.drawImage(p,0,0,n,a);let o="data:image/jpeg;base64, "+c.toDataURL().substr(22);t.successCallback(o)}},this.cronapi.internal.downloadFileEntityMobile=function(t,n,a,o){var r,s,c=null;if(a)r=t.data[a][n],s=t.data[a];else try{r=t.active[n],s=t.active}catch(a){r=t[n],s=t}try{c=JSON.parse(r)}catch(t){}if(c){var l=this.cronapi.internal.getAddressWithHostApp("/api/cronapi/filePreview/");window.open(l+c.path,"_system")}else if(r.startsWith("https://")||r.startsWith("http://"))window.open(r,"_system");else if(t.isOData())cronapi.internal.makeDownloadFromBytes(r,o);else{var p="/api/cronapi/downloadFile",u=t.entity.split("/"),d=u[u.length-1];if(d.indexOf(":")>-1){for(var h="",f=u[3].split("."),g=0;g<f.length-1;g++)h+=f[g]+".";var m=d.split(":");d=h+m[m.length-1]}p+="/"+d,p+="/"+n;var w=s,y=t.getKeyValues(w),b=0;for(var $ in y)p=0==b?p+"/"+w[$]:p+":"+w[$],b++;l=this.cronapi.internal.getAddressWithHostApp(p);window.open(l,"_system")}},this.cronapi.internal.captureFromCamera=function(t,n,a){var o=document.createElement("canvas");o.width=n,o.height=a;var r=o.getContext("2d"),s=document.getElementById("cronapiVideoCapture");r.drawImage(s,0,0,n,a);var c=o.toDataURL().substr(22);this.cronapi.screen.changeValueOfField(t,c)},this.cronapi.internal.qrCodeScanner=function(t,n,a){let o,r;navigator.mediaDevices.getUserMedia({audio:!1,video:!0}).then((s=>{switch(a.formats){case"AZTEC":r=new ZXing.BrowserAztecCodeReader;break;case"DATA_MATRIX":r=new ZXing.BrowserDatamatrixCodeReader;break;case"QR_CODE":r=new ZXing.BrowserQRCodeReader;break;case"PDF_417":r=new ZXing.BrowserPDF417Reader;break;default:r=new ZXing.BrowserMultiFormatReader}a.formats&&-1!="UPC_A|UPC_E|EAN_8|EAN_13|CODE_39|CODE_128|ITF|RSS14|RSS_EXPANDED".indexOf(a.formats)&&(r=new ZXing.BrowserBarcodeReader),r.listVideoInputDevices().then((n=>{o=n[0].deviceId;let a=$('<div style="position: fixed; display: flex; width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; background-color:\n rgb(0 0 0 / 72%); z-index: 9999999; cursor: pointer; justify-content: center; align-items: center;">\n <div style="position: absolute">\n <div class="row" style="position: absolute; bottom 50px; z-index: 999999999;">\n <div class="col-xs-8">\n <select style="width: 100%; position: absolute; bottom: 10px; left: 0; z-index: 999999999;" id="videoSource"></select>\n </div>\n <div class="col-xs-2">\n <button class="btn btn-danger button button-dark" id="cronapiBarCodeChangeCam" >\n <span class="glyphicon glyphicon-remove icon ion ion-ios-reverse-camera"></span>\n <span class="sr-only">{{"ChangeCam" | translate}}</span>\n </button>\n </div>\n <div class="col-xs-2">\n <button class="btn btn-danger button button-assertive" id="cronapiBarCodeCancel" >\n <span class="glyphicon glyphicon-remove icon ion-android-close"></span>\n <span class="sr-only">{{"Cancel" | translate}}</span>\n </button>\n </div>\n </div>\n <video id="video" style="width: 100%; max-width: 600px; border-radius: 5px;"></video>\n </div>\n </div>');a.prependTo("body"),n.map(((t,n)=>{if("videoinput"===t.kind){let a=document.createElement("option");a.value=t.deviceId,a.text=t.label||"Câmera "+(n+1),0===n&&(a.selected=!0),document.querySelector("select#videoSource").appendChild(a)}})),a.find("#cronapiBarCodeCancel").on("click",(()=>{$(a).remove(),r.reset()}).bind(this)),a.find("#cronapiBarCodeChangeCam").on("click",(()=>{let t=$("#videoSource").prop("selectedIndex");t<$("#videoSource option").length-1?$("#videoSource").prop("selectedIndex",t+1):$("#videoSource").prop("selectedIndex",0),$("#videoSource").trigger("change")}).bind(this)),a.find("#videoSource").on("change",(()=>{r.decodeOnceFromVideoDevice($("#videoSource").val(),"video").then((n=>{n&&(t(n.text),$(a).remove(),r.reset())}))}).bind(this)),r.decodeOnceFromVideoDevice(o,"video").then((n=>{n&&(t(n.text),$(a).remove(),r.reset())}))})).catch((t=>{n(t),r.reset()}))})).catch((function(t){n(t)}))},this.cronapi.internal.castBinaryStringToByteArray=function(t){for(var n=t.length,a=new Uint8Array(n),o=0;o<n;o++)a[o]=t.charCodeAt(o);return a},this.cronapi.internal.castBase64ToByteArray=function(t){var n=window.atob(t);return this.cronapi.internal.castBinaryStringToByteArray(n)},this.cronapi.internal.castByteArrayToString=function(t){return String.fromCharCode.apply(null,new Uint16Array(t))},this.cronapi.internal.generatePreviewDescriptionByte=function(data,fileInfo){var json;let fileInfoContent=eval(fileInfo);try{json=fileInfoContent?JSON.parse(fileInfoContent):JSON.parse(data)}catch(e){try{json=JSON.parse(window.atob(data))}catch(e){if(data&&data.match(/__odataFile_/g)){var file=eval(data);json=cronapi.internal.getJsonDescriptionFromFile(file)}else if(data&&(data.startsWith("http://")||data.startsWith("https://"))){json={};var urlSplited=data.split("/"),fullName=urlSplited[urlSplited.length-1].replace("?dl=0",""),fullNameSplited=fullName.split("."),extension="."+fullNameSplited[fullNameSplited.length-1];json.fileExtension=extension,json.name=fullName.replace(extension,""),json.contentType="file/"+extension.replace(".","")}else if(data&&this.cronapi.internal.isBase64(data)){var fileName="download",fileExtesion=this.cronapi.internal.getExtensionBase64(data),contentType=this.cronapi.internal.getContentTypeFromExtension(fileExtesion);fileName+=fileExtesion,json={},json.fileExtension=fileExtesion,json.name=fileName,json.contentType=contentType}}}if(json){json.name.length>25&&(json.name=json.name.substr(0,22)+"...");var result=("pt_br"==this.cronapi.$translate.use()?"<b>Nome:</b> <br/>":"<b>Name:</b> <br/>")+(void 0!==json.contentType?json.name+"<br/>":"");return result+=void 0!==json.contentType?"<b>Content-Type:</b> <br/>"+json.contentType+"<br/>":"",result+=""!==json.fileExtension?"pt_br"==this.cronapi.$translate.use()?"<b>Extensão:</b> <br/>"+json.fileExtension+"<br/>":"<b>Extension:</b> <br/>"+json.fileExtension+"<br/>":"",result}},this.cronapi.internal.getContentTypeFromExtension=function(t){if(t)switch(t.toLowerCase()){case".png":return"image/png";case".jpg":return"image/jpeg";case".mp4":return"video/mp4";case".pdf":return"application/pdf";case".ico":return"image/vnd.microsoft.icon";case".rar":return"application/x-rar-compressed";case".rtf":return"application/rtf";case".txt":return"text/plain";case".zip":return"application/zip";case".srt":return"text/srt";default:return"unknown"}},this.cronapi.internal.getExtensionBase64=function(t){if(t)switch(t.substr(0,5).toLocaleUpperCase()){case"IVBOR":return".png";case"/9J/4":return".jpg";case"AAAAF":return".mp4";case"JVBER":return".pdf";case"AAABA":return".ico";case"UMFYI":return".rar";case"E1XYD":return".rtf";case"U1PKC":return".txt";case"UESDB":return".zip";case"MQOWM":case"77U/M":return".srt";default:return""}return""},this.cronapi.internal.isBase64=function(t){try{return btoa(atob(t))==t}catch(t){return!1}},this.cronapi.internal.downloadUrl=function(t,n){let a=document.createElement("a");a.setAttribute("href",t),a.setAttribute("download",n);let o=document.createEvent("MouseEvents");o.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),a.dispatchEvent(o)},this.cronapi.internal.makeDownloadFromBytes=function(valueContent,fileInfo){var urlCreator=window.URL||window.webkitURL||window.mozURL||window.msURL,bytesOrFileInput,fileName="download";if(valueContent.match(/__odataFile_/g))bytesOrFileInput=eval(valueContent),fileName=bytesOrFileInput.name;else{fileName+=cronapi.internal.getExtensionBase64(valueContent);try{valueContent=window.atob(valueContent)}catch(t){}bytesOrFileInput=cronapi.internal.castBinaryStringToByteArray(valueContent)}let fileInfoDescription=eval(fileInfo);if(fileInfoDescription){let t=JSON.parse(fileInfoDescription);fileName=t.name}var url=urlCreator.createObjectURL(new Blob([bytesOrFileInput],{type:"application/octet-stream"}));cronapi.internal.downloadUrl(url,fileName)},this.cronapi.internal.downloadFileEntity=function(t,n,a,o){var r,s,c=null;if(a)r=t.data[a][n],s=t.data[a];else try{r=t.active[n],s=t.active}catch(a){r=t[n],s=t}try{c=JSON.parse(r)}catch(t){}if(c)window.open("/api/cronapi/filePreview/"+c.path);else if(r.startsWith("https://")||r.startsWith("http://"))window.open(r);else if(t.isOData())cronapi.internal.makeDownloadFromBytes(r,o);else{var l="/api/cronapi/downloadFile",p=t.entity.split("/"),u=p[p.length-1];if(u.indexOf(":")>-1){for(var d="",h=p[3].split("."),f=0;f<h.length-1;f++)d+=h[f]+".";var g=u.split(":");u=d+g[g.length-1]}l+="/"+u,l+="/"+n;JSON.parse(localStorage.getItem("_u"));var m=s,w=this.cronapi.internal.getAddressWithHostApp(l);let a=window.isUsingCookie()?{"Content-Type":"application/json"}:{"Content-Type":"application/json","X-AUTH-TOKEN":this.cronapi.util.getUserToken()};this.$promise=this.cronapi.$scope.$http({method:"POST",url:w,data:m?JSON.stringify(m):null,responseType:"blob",headers:a}).then(function(t,n,a,o){a=(a=a||t.headers)(),t=this.cronapi.getRequestData(t);var r=a["x-filename"]||"download.bin",s=window.URL||window.webkitURL||window.mozURL||window.msURL;try{var c=s.createObjectURL(t);cronapi.internal.downloadUrl(c,r)}catch(t){console.log("Error downloading file"),console.log(t)}}.bind(this)).catch(function(t,n,a,o){console.log("Error downloading file")}.bind(this))}},this.cronapi.internal.uploadFileAjax=function(t,n,a){var o=new FormData;o.append("file",n);JSON.parse(localStorage.getItem("_u"));var r=this.cronapi.internal.getAddressWithHostApp("/api/cronapi/uploadFile");let s=window.isUsingCookie()?{"Content-Type":void 0}:{"Content-Type":void 0,"X-AUTH-TOKEN":this.cronapi.util.getUserToken()};this.$promise=this.cronapi.$scope.$http({method:"POST",url:r,data:o,headers:s,onProgress:function(t){if(t.lengthComputable){var n=t.loaded/t.total*100|0,o=$("#"+a);if(o.length>0)if("bootstrapProgress"==o.data("type"))n<100?(o.show(),o.find(".progress-bar").css("width",n+"%")):(o.hide(),o.find(".progress-bar").css("width","0%"));else{var r=document.getElementById(a);r.value=r.innerHTML=n}}}}).then(function(n,a,o,r){n=this.cronapi.getRequestData(n),this.cronapi.screen.changeValueOfField(t,n.jsonString)}.bind(this)).catch(function(t,n,a,o){alert("Error uploading file")}.bind(this))},this.cronapi.internal.getFieldFromActiveString=function(t){return/.active.([a-zA-Z0-9_-]*)/g.exec(t)[1]},this.cronapi.internal.getJsonDescriptionFromFile=function(t){let n={};if(t){let a=t.name.split("."),o="."+a[a.length-1];n.fileExtension=o,n.name=t.name,n.contentType=t.type||"unknown"}return n},this.cronapi.internal.uploadFile=function(field,file,progressId,fileInfo,errorFile){if(errorFile&&errorFile.length&&errorFile[0].$errorMessages&&errorFile[0].$errorMessages.maxSize){let t=this.cronapi.$translate.instant("maxFileSize");showErrorNotification.bind(this)(`${t} ${errorFile[0].$errorParam}`)}if(file){var regexForDatasource=/(.*?).active./g,groupDatasource=regexForDatasource.exec(field);if(groupDatasource){var datasource=eval(groupDatasource[1]);if(datasource.isOData()){let t=cronapi.internal.getFieldFromActiveString(field),n=datasource.getFieldSchema(t);if(n&&"Binary"==n.type){if(datasource.active["__odataFile_"+t]=file,datasource.active[t]=datasource.name+".active.__odataFile_"+t,fileInfo){let t=cronapi.internal.getJsonDescriptionFromFile(file),n=cronapi.internal.getFieldFromActiveString(fileInfo);datasource.active[n]=JSON.stringify(t)}return}}}this.cronapi.internal.uploadFileAjax(field,file,progressId)}},this.cronapi.object={},this.cronapi.object.getProperty=function(t,n){t||(t={});var a=n.split(".");if(a.length>1){var o=function(t,n,a){return a||(a=0),void 0===t[n[a]]&&(t[n[a]]={}),++a<n.length?o(t[n[a-1]],n,a):t[n[a-1]]};return o(t,a,0)}return t[n]},this.cronapi.object.setProperty=function(t,n,a){var o=n.split(".");if(o.length>1){var r=function(t,n,a,o){o||(o=0),void 0===t[n[o]]&&(t[n[o]]={}),++o<n.length?r(t[n[o-1]],n,a,o):t[n[o-1]]=a};r(t,o,a,0)}else t[n]=a},this.cronapi.object.createObjectFromString=function(t){return JSON.parse(t)},this.cronapi.object.createObjectLoginFromString=function(t,n){let a={};return a.username=t,a.password=n,JSON.parse(JSON.stringify(a))},this.cronapi.object.serializeObject=function(t){return JSON.stringify(t)},this.cronapi.object.deleteProperty=function(t,n){delete t[n]},this.cronapi.object.newObject=function(){var t={};if(arguments&&arguments.length>0)for(var n=0;n<arguments.length;n++){var a=arguments[n];a.name&&(t[a.name]=a.value)}return t},this.cronapi.object.getObjectField=function(t,n){var a=void 0;return t&&n&&(a=t[n]),a},this.cronapi.json={},this.cronapi.json.createObjectFromString=function(t){return this.cronapi.object.createObjectFromString(t)},this.cronapi.json.setProperty=function(t,n,a){this.cronapi.object.setProperty(t,n,a)},this.cronapi.json.deleteProperty=function(t,n){this.cronapi.object.deleteProperty(t,n)},this.cronapi.json.getProperty=function(t,n){return this.cronapi.object.getProperty(t,n)},this.cronapi.cordova={},this.cronapi.cordova.vibrate=function(t){navigator.vibrate(t)},this.cronapi.cordova.device={},this.cronapi.cordova.device.getFirebaseToken=function(t,n){document.addEventListener("deviceready",(function(){try{window.FirebasePlugin.getToken(cronapi.util.handleCallback(t),cronapi.util.handleCallback(n))}catch(t){console.error(t),n(t)}}),!1)},this.cronapi.cordova.device.getFirebaseNotificationData=function(t,n){document.addEventListener("deviceready",(function(){try{window.FirebasePlugin.onMessageReceived((function(n){t(n)}),(function(t){n(t)}))}catch(t){console.warn(t)}try{window.FirebasePlugin.onNotificationOpen((function(n){t(n)}),(function(t){n(t)}))}catch(t){console.warn(t)}}),!1)},this.cronapi.cordova.device.getDeviceInfo=function(t){return window.device[t]},this.cronapi.cordova.geolocation={},this.cronapi.cordova.geolocation.getCurrentPosition=function(t,n){navigator.geolocation.getCurrentPosition(this.cronapi.util.handleCallback(t),this.cronapi.util.handleCallback(n))},this.cronapi.cordova.geolocation.watchPosition=function(t,n,a,o,r){return navigator.geolocation.watchPosition(this.cronapi.util.handleCallback(t),this.cronapi.util.handleCallback(n),{maximumAge:a,timeout:o,enableHighAccuracy:r})},this.cronapi.cordova.geolocation.clearWatchPosition=function(t){navigator.geolocation.clearWatch(t)},this.cronapi.cordova.camera={},this.cronapi.cordova.camera.getPicture=function(t,n,a,o,r,s,c){null==r&&(r=0),s=!0===s||"true"===s,c=!0===c||"true"===c;let l={destinationType:Number(a),sourceType:Number(o),mediaType:Number(r),allowEdit:s,quality:c?50:100,encodingType:c?0:1};if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId){let o=async n=>{n.startsWith("file://")?n=Ionic.WebView.convertFileSrc(n):n&&!n.startsWith("data:image")&&(n="data:image/jpeg;base64, "+n),!t||t(n)};const c=t=>new Promise(((n,a)=>{window.resolveLocalFileSystemURL(t,(t=>{t.file((t=>{const a=new FileReader;a.onloadend=()=>{const t=a.result;n(t)},a.readAsDataURL(t)}),(t=>a(t)))}))}));s&&0===Number(r)?navigator.camera.getPicture((t=>plugins.ratioCrop((t=>{Number(a)===Camera.DestinationType.FILE_URI?o(t):c(t).then(this.cronapi.util.handleCallback(o)).catch(this.cronapi.util.handleCallback(n))}),this.cronapi.util.handleCallback(n),t,{})),this.cronapi.util.handleCallback(n),{...l,destinationType:Camera.DestinationType.FILE_URI,allowEdit:!1}):navigator.camera.getPicture(this.cronapi.util.handleCallback(o),this.cronapi.util.handleCallback(n),l)}else l.allowEdit=s,l.successCallback=t,l.errorCallback=n,l.targetWidth=640,l.targetHeight=480,this.cronapi.internal.getPicture(l)},this.cronapi.cordova.camera.qrCodeScanner=function(t,n,a,o){const r={preferFrontCamera:!1,showFlipCameraButton:!0,showTorchButton:!0,saveHistory:!0,prompt:n,resultDisplayDuration:500,orientation:"portrait",disableAnimations:!0,disableSuccessBeep:!1};"all"!==t&&(r.formats=t),window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId?cordova.plugins.barcodeScanner.scan((function(t){a(t.text)}),(function(t){"Scan is already in progress"!==t&&o(t)}),r):this.cronapi.internal.qrCodeScanner(a,o,r)},this.cronapi.cordova.file={},this.cronapi.cordova.file.getDirectory=function(t){var n;return"0"==t?n=cordova.file.dataDirectory:((n=cordova.file.externalApplicationStorageDirectory)||(n=cordova.file.externalDataDirectory),n||(n=cordova.file.syncedDataDirectory)),n},this.cronapi.cordova.file.removeFile=function(t,n,a){window.resolveLocalFileSystemURL(t,function(t){t.remove(function(t){n&&n(t)}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.readFile=function(t,n,a,o){window.resolveLocalFileSystemURL(t,function(t){t.file(function(t){var a=new FileReader;switch(a.onloadend=function(t){n(this.result)},o){case"ARRAYBUFFER":a.readAsArrayBuffer(t);break;case"TEXT":default:a.readAsText(t);break;case"BINARYSTRING":a.readAsBinaryString(t);break;case"DATAURL":a.readAsDataURL(t)}}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.createFile=function(t,n,a,o,r){t||getDirectory(0);window.resolveLocalFileSystemURL(t,function(s){console.log(t),s.getFile(n,{create:!0},function(t){t.createWriter(function(t){t.onwriteend=function(t){console.log('Write of file "'+n+'"" completed.')},t.onerror=function(t){console.log("Write failed: "+t.toString())};var r=new Blob([a],{type:"text/plain"});t.write(r),o&&setTimeout(function(){o()}.bind(this),500)}.bind(this),this.cronapi.util.handleCallback(r))}.bind(this),this.cronapi.util.handleCallback(r))}.bind(this),this.cronapi.util.handleCallback(r))},this.cronapi.cordova.file.createDirectory=function(t,n,a,o){window.resolveLocalFileSystemURL(t,function(t){t.getDirectory(n,{create:!0},function(t){a&&a(t.fullPath)}.bind(this),this.cronapi.util.handleCallback(o))}.bind(this),this.cronapi.util.handleCallback(o))},this.cronapi.cordova.storage={},this.cronapi.cordova.storage.setStorageItem=function(t,n){var a=window.localStorage;a?a.setItem(t,n):console.error("Local Storage not Found!")},this.cronapi.cordova.storage.getStorageItem=function(t){var n=window.localStorage;if(n)return n.getItem(t);console.error("Local Storage not Found!")},this.cronapi.cordova.storage.removeStorageItem=function(t){var n=window.localStorage;n?n.removeItem(t):console.error("Local Storage not Found!")},this.cronapi.cordova.connection={},this.cronapi.cordova.connection.getConnection=function(){return navigator.connection.type},this.cronapi.cordova.connection.verifyConnection=function(t){return navigator.connection.type==t},this.cronapi.cordova.database={},this.cronapi.cordova.database.DatabaseModule=class{constructor(){this.DEFAULT_DATABASE_NAME="cronappDB"}connect(t=this.DEFAULT_DATABASE_NAME){let n=window.openDatabase;if(window.sqlitePlugin&&(n=window.sqlitePlugin.openDatabase),void 0===n)throw"Sem suporte para SQLDatabase!";return n(t,"1.0",t,1e6)}async executeSQL(t=this.DEFAULT_DATABASE_NAME,n="",a=[]){const o=this.connect(t);try{const t=n.trim().split(";").filter((t=>t||null));return this.handleExecuteTransaction(o,t,a)}catch(t){throw console.log(t),t}}extractSQLResult(t){return t._array?t._array:t}async handleExecuteSQL(t,n,a){return new Promise(((o,r)=>{t.executeSql(n,a,((t,n)=>{try{o(n.rows)}catch(t){r(t)}}))}))}async handleExecuteTransaction(t,n,a){return new Promise(((o,r)=>{try{t.transaction((async t=>{let r;for(let o of n)r=await this.handleExecuteSQL(t,o,a);o(this.extractSQLResult(r))}))}catch(t){r(t)}}))}},this.cronapi.cordova.database.openDatabase=function(t){return(new this.cronapi.cordova.database.DatabaseModule).connect(t)},this.cronapi.cordova.database.executeSQL=async function(t,n,a){return(new this.cronapi.cordova.database.DatabaseModule).executeSQL(t,n,a)},this.cronapi.cordova.database.executeSql=function(t,n,a,o,r){this.cronapi.cordova.database.openDatabase(t).transaction(function(t){t.executeSql(n,a,function(t,n){o.call(this,Object.values(n.rows))}.bind(this))}.bind(this),function(t){console.log(t),r(t)}.bind(this))},this.cronapi.cordova.database.executeMultipleSql=function(t,n,a,o){var r=this.cronapi.cordova.database.openDatabase(t);let s=[],c=n.split(";");for(let t in c){let n=c[t];if(!n)break;let a=new Promise(((t,a)=>{r.transaction(function(o){o.executeSql(n.trim(),[],function(n,a){t(a)}.bind(this),function(t,n){a(n)}.bind(this))}.bind(this))}));s.push(a)}Promise.all(s).then(function(t){a(t)}.bind(this)).catch(function(t){o(t)}.bind(this))},this.cronapi.event={},this.cronapi.event.contextMenu=function(t,n,a,o){var r="#ulKendoContextMenu";$(r).kendoMenu();var s=$(r).data("kendoMenu");s&&s.destroy();let c=$("body"),l=$('<ul id="ulKendoContextMenu"></ul>');c.append(l);let p={target:"#"+t,animation:{open:{effects:n},duration:500}};"left"===a&&(p.showOn="click"),p.dataSource=Array.isArray(o)?o:[o],$("#ulKendoContextMenu").kendoContextMenu(p)},this.cronapi.event.itemContextMenu=function(t,n,a,o){let r={text:t};return o&&(r.items=Array.isArray(o)?o:[o]),o||(r.select=a),n&&(r.cssClass=n),r},this.cronapi.event.changeValueAccordion=function(t,n,a){switch(n){case"collapseAll":$("#"+t+" .panel-collapse").data("bs.collapse",null),$("#"+t+" .panel-collapse").collapse("hide");break;case"expandAll":$("#"+t+" .panel-collapse").data("bs.collapse",null),$("#"+t+" .panel-collapse").collapse("show");break;case"collapseOne":setTimeout((function(){$("#"+a).filter("[aria-expanded=true]").trigger("click")}),500);break;case"expandOne":setTimeout((function(){$("#"+a).filter("[aria-expanded=false]").trigger("click")}),500)}},this.cronapi.event.changeInnerTextButton=function(t,n){let a=`#${t} button span`;"BUTTON"===$(`#${t}`).prop("tagName")&&(a=`#${t} span`),$(a).text(n)},this.cronapi.cordova.database.openInAppBrowser=function(t){cordova.InAppBrowser&&cordova.InAppBrowser.open(t,"_blank","location=no")},this.cronapi.cordova.util={},this.cronapi.cordova.util.fingerPrintRead=function(t,n){if(Fingerprint){function a(){Fingerprint.show({},o,r)}function o(){t(0)}function r(t){n(-1)}function s(){n(-2)}Fingerprint.isAvailable(a,s)}else n(-2)},this.cronapi.internal.ptDate=function(t){var n=t[1],a=t[2],o=t[3],r=t[5],s=t[6],c=t[7];return r?new Date(o,a-1,n,r,s,c):new Date(o,a-1,n,0,0,0)},this.cronapi.internal.enDate=function(t){var n=t[1],a=t[2],o=t[3],r=t[5],s=t[6],c=t[7];return r?new Date(o,n-1,a,r,s,c):new Date(o,n-1,a,0,0,0)},this.cronapi.internal.parseBoolean=function(t){return!!t&&("boolean"==typeof t?t:"1"==(t=t.toString().toLowerCase().trim())||"true"==t)},this.cronapi.internal.removeAccents=function(t){var n="áàãâäéèêëíìîïóòõôöúùûüçÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÖÔÚÙÛÜÇ",a="";for(i=0;i<t.length;i++)n.search(t.substr(i,1))>=0?a+="aaaaaeeeeiiiiooooouuuucAAAAAEEEEIIIIOOOOOUUUUC".substr(n.search(t.substr(i,1)),1):a+=t.substr(i,1);return a},this.cronapi.internal.arrayRemove=function(t,n){var a=this.cronapi.internal.arrayIndexOf(t,n);-1!=a&&t.splice(a,1)},this.cronapi.internal.arrayIndexOf=function(t,n){var a=-1;return $(t).each((function(t){n==this&&(a=t)})),a},this.cronapi.internal.replaceAll=function(t,n,a){return t.toString().split(n).join(a)},this.cronapi.internal.getWindowHeight=function(){$(window).height()},this.cronapi.internal.getWindowWidth=function(){$(window).width()},this.cronapi.internal.getAddressWithHostApp=function(t){var n=window.hostApp||"";if(n=n.endsWith("/")?n.substr(0,n.length-1):n,t){var a=t.startsWith("/")?t.substr(1):t;n=""===n?a:n+"/"+a}return n},this.cronapi.internal.Url={encode:function(t){return t?escape(this.cronapi.internal.Url._utf8_encode(t)):""},decode:function(t){return t?this.cronapi.internal.Url._utf8_decode(unescape(t)):""},_utf8_encode:function(t){t=t.replace(/\r\n/g,"\n");for(var n="",a=0;a<t.length;a++){var o=t.charCodeAt(a);o<128?n+=String.fromCharCode(o):o>127&&o<2048?(n+=String.fromCharCode(o>>6|192),n+=String.fromCharCode(63&o|128)):(n+=String.fromCharCode(o>>12|224),n+=String.fromCharCode(o>>6&63|128),n+=String.fromCharCode(63&o|128))}return n},_utf8_decode:function(t){for(var n="",a=0,o=c1=c2=0;a<t.length;)(o=t.charCodeAt(a))<128?(n+=String.fromCharCode(o),a++):o>191&&o<224?(c2=t.charCodeAt(a+1),n+=String.fromCharCode((31&o)<<6|63&c2),a+=2):(c2=t.charCodeAt(a+1),c3=t.charCodeAt(a+2),n+=String.fromCharCode((15&o)<<12|(63&c2)<<6|63&c3),a+=3);return n}},this.cronapi.internal.stringToJs=function(t){return(t+"").replace(/[\\"']/g,"\\$&").replace(/\u0000/g,"\\0")},this.cronapi.internal.getErrorMessage=function(t,n){try{var a=null;if("object"==typeof t?t.data&&("object"==typeof t.data?a=t.data:"string"==typeof t.data&&(a=JSON.parse(t.data))):"string"==typeof t&&(a=JSON.parse(t)),a&&a.error)return a.error}catch(t){}return n},this.cronapi.util.upload=function(t,n,a,o,r){this.UploadService.upload({description:n,id:t,filter:a,maxSize:o,multiple:r,scope:this})},this.cronapi.util.getBaseUrl=function(){return window.location.origin},this.cronapi.util.watchAcceleration=function(t){window.addEventListener("deviceorientation",(function(n){t({absolute:n.absolute,alpha:n.alpha,beta:n.beta,gamma:n.gamma})}),!1)},this.cronapi.chart={},this.cronapi.chart.createChart=function(t,n,a,o,r){let s;if("object"==typeof o)s=o;else try{s=JSON.parse(o)}catch(t){s={},console.log(t)}var c=s&&s.colors?s.colors:[],l=["#FF5C00","#0E53A7","#48DD00","#FFD500","#7309AA","#CD0074","#00AF64","#BF8230","#F16D95","#A65000","#A65000","#AF66D5"],p=0;function u(){return p<l.length?p++:p=0,p}function d(){""==m.data.datasets[0].label&&(null==m.options.legend?(m.options.legend={},m.options.legend.display=!1):m.options.legend.display=!1)}function h(t){var n=[],a=4;Array.isArray(t[4])&&"object"==typeof t[4][0]&&"label"in t[4][0]&&"data"in t[4][0]&&(t=t[4],a=0);for(;a<t.length;a++){let o=t[a].label?t[a].label:null,r=t[a].options?t[a].options:null,s=t[a].data?t[a].data:t[a];n.push(cronapi.chart.createDataset(o,s,r))}return n}function f(){null==m.options?(m.options={},m.options.scales={},m.options.scales.yAxes=[{ticks:{beginAtZero:!0}}]):null==m.options.scales&&(m.options.scales={},m.options.scales.yAxes=[{ticks:{beginAtZero:!0}}])}var g=document.getElementById(t);if(g){g._chart&&g._chart.destroy(),g.getContext("2d");var m={};switch(m.type=n,m.data=[],m.options=s,Array.isArray(a)?m.data.labels=a:m.data.labels=JSON.parse(a),m.data.datasets=[],n){case"line":m.data.datasets=h(arguments),$.each(m.data.datasets,(function(t,n){n.fill=!1,n.backgroundColor=c[t]?c[t]:l[u()],n.borderColor=n.backgroundColor,f(),d()}));break;case"bar":case"horizontalBar":m.data.datasets=h(arguments),$.each(m.data.datasets,(function(t,n){1===m.data.datasets.length&&c.length>1?n.backgroundColor=c:n.backgroundColor=c[t]?c[t]:l[u()],n.borderColor=n.backgroundColor})),f(),d();break;case"doughnut":case"pie":case"polarArea":var w=h(arguments);$.each(w,(function(t,n){var a={};(a=w[t]).backgroundColor=[],a.borderColor=[],$.each(a.data,(function(t,n){a.backgroundColor.push(c[t]?c[t]:l[u()])})),a.borderColor=a.backgroundColor,m.data.datasets.push(a),p=0}))}var y=new Chart(g,m);g._chart=y}},this.cronapi.chart.createDataset=function(t,n,a){let o;if("object"==typeof a)o=a;else try{o=JSON.parse(a)}catch(t){o={},console.log(t)}var r={options:o};return r.label=t||"",Array.isArray(n)?r.data=n:r.data=n?JSON.parse(n):[],r},this.cronapi.social={},this.cronapi.social.gup=function(t,n){n||(n=location.href),t=t.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a=new RegExp("[\\?&]"+t+"=([^&#]*)").exec(n);return null==a?null:a[1]},this.cronapi.social.login=function(t,n,a){this.cronapi.$scope.login(t,n,a)},this.cronapi.social.sociaLogin=function(t,n){var a=this,o=window.hostApp+"signin/"+t+"/";if(window.cordova&&cordova.InAppBrowser){var r="";!0!==n&&"true"!==n||(r=",clearcache=yes");var s=cordova.InAppBrowser.open(o,"_blank","location=no"+r);s.addEventListener("loadstart",(function(t){t.url.indexOf("_ctk")>-1&&(s.close(),a.cronapi.social.login.bind(a)("#OAUTH#","#OAUTH#",a.cronapi.social.gup("_ctk",t.url)))}))}else window.location.href="signin/"+t+"/"},this.cronapi.social.ssoLogin=async function(){let t=this.cronapi.$scope,n={method:"GET",url:this.cronapi.internal.getAddressWithHostApp("authproviders")},a=await this.$http(n);return new Promise(((n,o)=>{let r="login";if(a.data&&1==a.data.length&&(r=a.data[0].loginURL),window.cordova&&cordova.InAppBrowser){const a=cordova.InAppBrowser.open(this.cronapi.internal.getAddressWithHostApp(r),"_blank","location=no,footer=yes,zoom=no,enableViewportScale=yes,hidenavigationbuttons=yes"),s=r=>{const c=new URL(r.url),l=new URLSearchParams(c.search);l.has("_ctk")?(a.removeEventListener("loadstart",s),a.close(),t.loginWithToken(l.get("_ctk")),n()):o()};a.addEventListener("loadstart",s)}else window.location.href=this.cronapi.internal.getAddressWithHostApp(r)}))},this.cronapi.screen.getSelectedRowsGrid=function(t){var n=[],a=$('[ng-model="'+t+'"]').children().data("kendoGrid");a&&a.select().each((function(){var t=a.dataItem(this);n.push(t)}));return n},this.cronapi.screen.getSelectedRowsAdvancedList=function(t){var n=[],a=$('[ng-model="'+t+'"]');return a.length&&a.find("[crn-list-item].selected").each((function(){var t=angular.element(this).scope();t&&t.item&&n.push(t.item)})),n},this.cronapi.screen.back=function(){history.back()},this.cronapi.notification={},this.cronapi.notification.customNotify=function(t,n,a,o,r,s){let c="customNotification",l={stacking:"default",autoHideAfter:5e3,position:{pinned:!0},animation:{open:{effects:null},close:{effects:null}}};function p(t){if("bottom"===t)l.position.bottom=20,c=c.concat("-bottom");else l.position.top=60,c=c.concat("-top")}function u(t){switch(t){case"right":l.position.right=20,c=c.concat("-right");break;case"center":l.show=d,c=c.concat("-center");break;default:l.position.left=20,c=c.concat("-left")}}function d(t){if(1==t.sender.getNotifications().length){var n,a=t.element.parent().width(),o=$(window).width();n=Math.floor(o/2-a/2),t.element.parent().css({left:n})}}function h(t){switch(t){case"slide":l.show&&null!=l.position.bottom?(l.animation.open.effects="slideIn:up",c=c.concat("-slideIn-up")):l.show&&null!=l.position.top?(l.animation.open.effects="slideIn:down",c=c.concat("-slideIn-dow")):null!=l.position.left?(l.animation.open.effects="slideIn:right",c=c.concat("-slideIn-right")):null==l.position.left&&(l.animation.open.effects="slideIn:left",c=c.concat("-slideIn-left")),l.animation.close.effects="slideOut";break;case"zoom":l.animation.open.effects="zoomIn",l.animation.close.effects="zoomOut",c=c.concat("-zoom");break;default:l.animation.open.effects="fadeIn",l.animation.close.effects="fadeOut",c=c.concat("-fade")}}function f(t){"false"==t&&(l.autoHideAfter=0,c=c.concat("-autoHideAfter"))}async function g(t,n){if(!function(t){return document.getElementById(t)}(t)){let a=$(`<span id="${t}"></span>`);$("body").append(a),await $(`#${t}`).kendoNotification(n),"center"==r&&d(e)}}function m(t,n,a){$(`#${t}`).getKendoNotification().show(n,a)}a||o||r||s?async function(t,n,a,o,r,s){p(o),u(r),h(a),f(s),g(c,l),m(c,t,n)}(n,t,a,o,r,s):async function(t,n){let a={id:"CronappNotification",verticalPosition:"top",horizontalPosition:"left",animation:"slide",autoHide:"false"};p(a.verticalPosition),u(a.horizontalPosition),h(a.animation),f(a.autoHide),function(t){return $(`#${t}`).getKendoNotification()}(a.id)||g(a.id,l);m(a.id,t,n)}(n,t)},this.cronapi.notification.confirmDialogAlert=function(t,n,a,o){let r="cronapp-dialog-"+String(Math.random()).substring(2),s=$(`<div data-dialog-type="${t}" id="${r}"></div>`);$("body").append(s);const c=window.ionic&&window.cordova,l=`<div id="modalBodyConfirmDialog">\n <div class="icon">\n <div class="cronapp-icon cronapp-${t}">${(()=>{switch(t){case"error":return'<span class="cronapp-x-mark">\n <span class="cronapp-x-mark-line-left"></span>\n <span class="cronapp-x-mark-line-right"></span>\n </span>';case"success":return'<div class="cronapp-success-circular-line-left"></div>\n <span class="cronapp-success-line-tip"></span>\n <span class="cronapp-success-line-long"></span>\n <div class="cronapp-success-ring"></div>\n <div class="cronapp-success-fix"></div>\n <div class="cronapp-success-circular-line-right">\n </div>';case"info":return'<div class="cronapp-icon-content">i</div>';default:return'<div class="cronapp-icon-content">!</div>'}})()}</div>\n </div>\n <h2 class="title">${n}</h2> <h3 class="subtitle">${a}</h3>\n </div>`;let p={width:"450px",minWidth:300,maxWidth:()=>window.innerWidth-40,title:c&&n||!1,closable:!1,modal:!0,content:c?a:l,buttonLayout:c?"stretched":"normal",actions:[],close:()=>setTimeout((()=>s.data("kendoDialog").destroy()))};!function(t){let n=Array.isArray(t)?t:[t],a=!1;for(let t=0;t<n.length;t++){let o=n[t];o&&(p.actions.push({text:o.title,action:o.value,primary:"true"==o.primaryValue||null}),a=!0)}a||p.actions.push({text:"OK",primary:!0})}(o),s.kendoDialog(p);const u=s.data("kendoDialog"),d=u.wrapper;d.attr("data-dialog-type",t);let h=cronapi.internal.getMaxZIndex()+1;d.css("z-index",h).css("pointer-events","all"),u.open()},this.cronapi.notification.buttonConfirmDialogAlert=function(t,n,a){return{title:n,value:function(){return a&&a(),!0},primaryValue:t}},this.cronapi.regex={},this.cronapi.regex.extractTextByRegex=function(t,n,a){if(this.cronapi.logic.isNull(t)||this.cronapi.logic.isNull(n))return[];let o=null;o=null!=a&&"-"!==a?new RegExp(n,a):new RegExp(n);let r,s=[],c=null;for(;(r=o.exec(t))&&(null==c||c!=r.index);){let t=[];for(i=1;i<r.length;i++)t.push(r[i]);c=r.index,s.push(t)}return s},this.cronapi.regex.validateTextWithRegex=function(t,n,a){return!this.cronapi.logic.isNull(t)&&!this.cronapi.logic.isNull(n)&&(null!=a&&"-"!==a?new RegExp(n,a).test(t):new RegExp(n).test(t))},this.cronapi.calendar={},this.cronapi.calendar.getCalendarValue=async function(t){const n=await getCalendar(t);return n?n.value():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarValue=async function(t,n){const a=await getCalendar(t);a?a.value(n):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.getCalendarMin=async function(t){const n=await getCalendar(t);return n?n.min():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarMin=async function(t,n){const a=await getCalendar(t);a?a.min(n):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.getCalendarMax=async function(t){const n=await getCalendar(t);return n?n.max():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarMax=async function(t,n){const a=await getCalendar(t);a?a.max(n):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.getCalendarSelectDates=async function(t){const n=await getCalendar(t);return n?n.selectDates():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarSelectDates=async function(t,n){const a=await getCalendar(t);a?a.selectDates(Array.isArray(n)?n:[n]):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.navigateCalendarTo=async function(t,n,a){const o=await getCalendar(t);o?o.navigate(n,a):showErrorNotification("calendarElementNotPresent")},this.cronapi.chat={},this.cronapi.chat.chatUserObj=function(t,n,a){return{id:t,name:n,iconUrl:a}},this.cronapi.chat.chatAttachmentObj=function(t,n,a,o,r,s){return{contentType:"heroCard",content:{title:t,subtitle:n,text:a,images:[{url:o,alt:r}],buttons:Array.isArray(s)?s:[s]}}},this.cronapi.chat.chatSuggestedActionObj=function(t,n){return{title:t,value:n}},this.cronapi.chat.getChatUser=async function(t,n,a){getChat(t).then((t=>{if(t)n(t.getUser());else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),a(t)}}))},this.cronapi.chat.postChatMessage=function(t,n,a,o){getChat(t).then((t=>{if(t)t.postMessage(n),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.renderChatMessage=function(t,n,a,o,r){getChat(t).then((t=>{if(t)t.renderMessage({type:"text",text:n},a),o();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),r(t)}}))},this.cronapi.chat.renderChatAttachments=function(t,n,a,o,r,s){getChat(t).then((t=>{if(t)t.renderAttachments({attachments:Array.isArray(a)?a:[a],attachmentLayout:o},n),r();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),s(t)}}))},this.cronapi.chat.renderChatHtml=function(t,n,a,o,r,s){const c=function(t){let n=document.createElement("div");n.innerHTML=t;let a=n.getElementsByTagName("script"),o=a.length;for(;o--;)a[o].parentNode.removeChild(a[o]);return n.innerHTML},l=kendo.template('\n <div class="#=styles.card# #=styles.cardRich#">\n <div class="#=styles.cardBody#">\n <div>\n #=text#\n </div>\n </div>\n </div>');kendo.chat.Templates.kendoChatHtmlTemplate||kendo.chat.registerTemplate("kendoChatHtmlTemplate",l);let p=[];if(Array.isArray(a))for(let t in a){let n={contentType:"kendoChatHtmlTemplate",content:{text:c(a[t])}};p.push(n)}else{let t={contentType:"kendoChatHtmlTemplate",content:{text:c(a)}};p.push(t)}getChat(t).then((t=>{if(t)t.renderAttachments({attachments:p,attachmentLayout:o},n),r();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),s(t)}}))},this.cronapi.chat.renderChatSuggestedActions=function(t,n,a,o){getChat(t).then((t=>{if(t)t.renderSuggestedActions(Array.isArray(n)?n:[n]),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.renderChatUserTypingIndicator=function(t,n,a,o){getChat(t).then((t=>{if(t)t.renderUserTypingIndicator(n),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.clearChatUserTypingIndicator=function(t,n,a,o){getChat(t).then((t=>{if(t)t.clearUserTypingIndicator(n),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.removeChatTypingIndicator=function(t,n,a){getChat(t).then((t=>{if(t)t.removeTypingIndicator(),n();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),a(t)}}))},this.cronapi.util.setCookie=function(t,n,a,o){let r=new Date,s=new Date,c=0;this.cronapi.logic.isNullOrEmpty(o)||0==o?s.setTime(r.getTime()+864e5):s.setTime(r.getTime()+parseInt(o*function(t){return"seconds"===t?c=1e3:"minutes"===t?c=6e4:"hours"===t?c=36e5:"days"===t&&(c=864e5),c}(a))),document.cookie=encodeURIComponent(t)+"="+encodeURIComponent(n)+"; expires="+s.toGMTString()},this.cronapi.util.getCookie=function(t){const n=function(t,n){return t.find((t=>t.startsWith(n+"=")))}(document.cookie.split("; "),t);return function(t){return void 0===t?null:t.split("=").pop()}(n)},this.cronapi.util.checkSavedCookies=function(t){var n=document.cookie.split(";");return n.forEach((function(t){let[a,o]=t.split("=");n[a.trim()]=o})),n.cookieEssencial},this.cronapi.authentication={},this.cronapi.authentication.login=function(t,n,a){this.cronapi.$scope.login(t,n,a)},this.cronapi.authentication.changePassword=function(){let t,n,a;this.cronapi.screen.getValueOfField("vars.newPassword")===this.cronapi.screen.getValueOfField("vars.confirmationPassword")?(a=this.cronapi.screen.getValueOfField("vars.oldPassword"),t=this.cronapi.screen.getValueOfField("vars.newPassword"),n=this.cronapi.screen.getValueOfField("vars.confirmationPassword"),this.cronapi.screen.showLoading(),this.cronapi.logic.isNullOrEmpty(this.cronapi.screen.getHostapp())?(this.cronapi.screen.hide(),this.cronapi.screen.notify("error","HostApp is Required")):this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",String(this.cronapi.screen.getHostapp())+String("changePassword"),this.cronapi.object.createObjectFromString(['{ "oldPassword": "',a,'" , "newPassword": "',t,'" , "newPasswordConfirmation": "',n,'" } '].join("")),this.cronapi.object.createObjectFromString(['{ "X-AUTH-TOKEN": "',this.cronapi.util.getUserToken(),'" } '].join("")),(async t=>{this.cronapi.screen.hide(),this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.passwordChanged",[]));try{await this.cronapi.client("blockly.js.blockly.auth.ChangePassword.closeModal").run()}catch(t){this.cronapi.screen.hideIonicModal("changePassword")}finally{this.cronapi.screen.changeValueOfField("vars.oldPassword",""),this.cronapi.screen.changeValueOfField("vars.newPassword",""),this.cronapi.screen.changeValueOfField("vars.confirmationPassword","")}}),(t=>{"403"==this.cronapi.object.getProperty(t,"status")||"401"==this.cronapi.object.getProperty(t,"status")?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[])):this.cronapi.screen.notify("error",this.cronapi.object.getProperty(t,"responseJSON.message")),this.cronapi.screen.hide()}))):this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[]))},this.cronapi.authentication.signup=async function(t,n,a,o){let r,s,c,l,p=this.cronapi.authentication.isValidSignup;const u=this?.blockly?.js?.blockly?.UserControl?.isValidSignup,d=this?.blockly?.js?.blockly?.auth?.UserControl?.isValidSignup;angular.isFunction(u)?p=u:angular.isFunction(d)&&(p=d),await p(t,n,a,o)&&this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:signUp",(async t=>{r=t,s=this.cronapi.json.createObjectFromString(r),c=this.cronapi.json.getProperty(s,"code"),l=this.cronapi.json.getProperty(s,"message"),"201"==c?(window.cordova&&window.ionic?this.cronapi.screen.changeView("#/app/login",[]):this.cronapi.screen.changeView("#/login",[]),this.cronapi.screen.notify("success",this.cronapi.i18n.translate("UserSuccessfullyRegistered",[]))):this.cronapi.logic.isNullOrEmpty(l)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("General.ErrorNotSpecified",[])):this.cronapi.screen.notify("warning",l)}),t,n,a)},this.cronapi.authentication.mutualSignup=async function(){let t;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",String(this.cronapi.util.getBaseUrl())+String("/mutual/register"),this.cronapi.object.createObjectFromString(['{ "token": "',this.cronapi.util.getUserToken(),'" } '].join("")),null,(async n=>{t=n,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))}),(async n=>{t=n,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(t,"responseJSON.message"))}))},this.cronapi.authentication.mutualLogin=async function(){let t;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",String(this.cronapi.util.getBaseUrl())+String("/mutual/register"),this.cronapi.object.createObjectFromString(['{ "token": "',this.cronapi.util.getUserToken(),'" } '].join("")),null,(async n=>{t=n,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))}),(async n=>{t=n,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(t,"responseJSON.message"))}))},this.cronapi.authentication.isValidSignup=function(t,n,a,o){let r=!0;return this.cronapi.logic.isNullOrEmpty(t)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("UsernameCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(n)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(a)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("PasswordCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(o)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("PasswordConfirmationCanNotBeEmpty",[])),r=!1),a!==o&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("PasswordDoesNotMatch",[])),r=!1),r},this.cronapi.authentication.resetPassword=function(t){this.cronapi.logic.isNullOrEmpty(t)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",(t=>{this.cronapi.screen.notify("success",this.cronapi.i18n.translate("ForgotPasswordSent",[])),this.cronapi.screen.hideModal("forgotPasswordModal")}),t,!1)},this.cronapi.authentication.resetPasswordWithOTP=function(t){this.cronapi.logic.isNullOrEmpty(t)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):(localStorage.removeItem("otpToken"),this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",(t=>{localStorage.setItem("otpToken",t),this.cronapi.screen.changeView("#/app/login",[])}),t,!0),this.cronapi.screen.notify("success",this.cronapi.i18n.translate("ForgotPasswordSent",[])))},this.cronapi.organizers={},this.cronapi.organizers.marker=function(){},this.cronapi.organizers.comment=function(){},this.cronapi.organizers.group=function(){},this.cronapi.map={},this.cronapi.map.createMap=function(t){return t},this.cronapi.map.setMapValueByKey=function(t,n,a){const o={[n]:a};t.push(o)},this.cronapi.map.setMapValueByPath=function(t,n,a){const o={},r=n.split("."),s=r.pop(),c=r.reduce(((t,n)=>t[n]=t[n]||{}),o);c[s]=a,t.push(o)},this.cronapi.map.getMapValueByPath=function(t,n){let a=null;return t.forEach((t=>{a=t;const o=n.split(".");for(;o.length;){const t=o.shift();if(!a.hasOwnProperty(t))break;a=a[t]}})),a},this.cronapi.map.getMapValueByKey=function(t,n){let a=null;return t.forEach((t=>{t.hasOwnProperty(n)&&(a=t[n])})),a},this.cronapi.breadcrumb={},this.cronapi.breadcrumb.jsonBreadcrumb=function(t){let n=[];return(t=Array.isArray(t)?t:[t]).forEach((function(t){n.push(t)})),n},this.cronapi.breadcrumb.listBreadcrumb=function(t,n,a,o){let r={};return r.type="true"===t||!0===t?"rootitem":"item",r.text=n,r.showText=!0,r.href="javascript:void(0);",o&&(r.action=o),a?(r.icon=a,r.showIcon=!0):r.showIcon=!1,console.log(r),r},this.cronapi.websocket={},this.cronapi.websocket.connect=function(t,n,a,o){let r={};return function s(){r.ws=new WebSocket(t),r.ws.onopen=()=>{n&&n(r.ws)},r.ws.onmessage=t=>{a&&a(t.data)},r.ws.onclose=t=>{r.__closed||(console.log("Socket is closed. Reconnect will be attempted in 1 second.",t.reason),setTimeout((()=>{s()}),1e3))},r.ws.onerror=t=>{console.error("Socket encountered error: ",t.message),o&&o(t)}}(),r},this.cronapi.websocket.send=function(t,n){t&&!t.__closed&&t.ws.send(n)},this.cronapi.websocket.close=function(t){t&&!t.__closed&&(t.__closed=!0,t.ws.close())},this.cronapi.multimedia=this.cronapi.multimedia||{},this.cronapi.multimedia.recordAudio=async function(){let t={audio:!0};try{const n=await navigator.mediaDevices.getUserMedia(t),a=document.createElement("audio");a.srcObject=n,document.body.appendChild(a);const o=new MediaRecorder(n);return o.start(),o}catch(t){alert(t)}},this.cronapi.multimedia.pauseRecord=async function(t){"recording"===t.state?t.pause():t.resume()},this.cronapi.multimedia.stopRecord=async function(t){const n=new Promise((function(n,a){let o=[];t.ondataavailable=function(t){o.push(t.data)},t.onstop=function(){let t=new Blob(o,{type:"audio/mp3;"});n(t)},t.stop()}));return await n},this.cronapi.dateTime.getLastDayOfMonth=function(t,n){if(t<1||t>12)return"invalid month";if(n<1)return"invalid year";let a=new Date;return a.setYear(n),a.setDate(1),a.setMonth(t),a.setDate(a.getDate()-1),a.getDate()}}void 0!==window.fixedTimeZone&&null!==window.fixedTimeZone||(window.fixedTimeZone=!0),void 0!==window.timeZone&&null!==window.timeZone||(window.timeZone="UTC"),void 0!==window.timeZoneOffset&&null!==window.timeZoneOffset||(window.timeZoneOffset=0),window.systemTimeZoneOffset=window.timeZoneOffset,window.fixedTimeZone||(window.timeZoneOffset=moment().utcOffset()),window.isUsingCookie||(window.isUsingCookie=function(){return navigator.cookieEnabled&&!window.disableServerCookies&&!window.cordova}),cronapi.bind(window)();try{module&&(module.exports={window:window})}catch(t){}
|
|
1
|
+
function cronapi(){"use strict";this.$evt=function(t){var n,a=this;a.$eval||(n=event?event.target:a.$element[0],a=angular.element(n).scope());a||(a=angular.element(document.getElementById("main-view")).scope()),a.$eval(t)}.bind(this),this.cronapi={},this.cronapi.getRequestData=t=>{let n=t||{};return t.data&&"object"==typeof t.data&&(n=t.data),n},this.cronapi.toDate=function(t){return new Date(t)};var getDatasource=function(t){return"string"==typeof t?window[t]:t};this.cronapi.doEval=function(t){return t};var reorderArgs=function(t,n,a){if(n&&n.length&&a&&a.length){let r=[];for(var o=0;o<n.length;o++)r.push(null);for(let o=0;o<n.length;o++)for(let s=0;s<a.length;s++)if("string"==typeof n[o]){if(n[o]==a[s]){r[o]=t[s];break}}else if(n[o].description==a[s]||n[o].id==a[s]){r[o]=t[s];break}return r}return t};this.cronapi.evalInContext=async function(js){var result=eval("this.cronapi.doEval("+js+")");if(result){if(result=result.data||result,result.commands)for(var i=0;i<result.commands.length;i++){var func=eval(result.commands[i].function);let argsMetadata,argsNames=result.commands[i].names,args=result.commands[i].params;try{argsMetadata=eval(result.commands[i].function+"Args")}catch(t){}args=reorderArgs(args,argsMetadata,argsNames),await func.apply(this,args)}return result.value}};let clientMap={},clientMapTimeout={};this.cronapi.client=function(pack){let attr=!1,argsNames,notificationOnError=!0;return{attr:function(){return attr=!0,this},disableNotification:function(){return notificationOnError=!1,this},names:function(t){argsNames=[];for(let t=0;t<arguments.length;t++)argsNames.push(arguments[t]);return this},run:function(){for(var key=pack,args=[],i=0,bk,argsMetadata;i<arguments.length;i++)key+=String(arguments[i]),args.push(arguments[i]);try{bk=eval("blockly."+pack)}catch(t){}try{argsMetadata=eval("blockly."+pack+"Args")}catch(t){}if(!argsMetadata)try{argsMetadata=eval(pack+"Args")}catch(t){}bk||(bk=eval(pack)),args=reorderArgs(args,argsMetadata,argsNames);let isAsyncResult=t=>null!=t&&t.then&&"function"==typeof t.then,result;if(!attr){let t="AsyncFunction"===bk.constructor.name;return t?bk.apply(this,args).catch((t=>{if(!notificationOnError)throw t;this.cronapi.$scope.Notification.error(t)})):bk.apply(this,args)}if(clientMapTimeout[key]?clearTimeout(clientMapTimeout[key]):(result=bk.apply(this,args),isAsyncResult(result)||(clientMap[key]=result)),clientMapTimeout[key]=setTimeout((()=>(result=result||bk.apply(this,args),isAsyncResult(result)?result.then((t=>{clientMap[key]!==t&&this.safeApply((()=>{clientMap[key]=t}))})).catch((t=>{clientMap[key]!==t&&this.safeApply((()=>{clientMap[key]=t}))})):clientMap[key]=result,clientMap[key])),300),clientMap[key])return clientMap[key]}.bind(this)}};var serverMap={};function getCalendar(t){let n=Date.now(),a=(o,r)=>{let s=$("#"+t+" cron-calendar").data("kendoCalendar");s?o(s):Date.now()-n>=1e4?o():setTimeout((()=>a(o,r)),200)};return new Promise(a)}function showErrorNotification(t){const n=this.cronapi.$translate.instant(t);this.cronapi.$scope.Notification.error(n)}function getChat(t){let n=Date.now(),a=(o,r)=>{let s=$("#"+t+" .k-chat").data("kendoChat");s?o(s):Date.now()-n>=1e4?o():setTimeout((()=>a(o,r)),200)};return new Promise(a)}this.cronapi.server=function(t){var n=!1,a=!1,o=!0,r=!0;let s;return{attr:function(){return n=!0,this},toPromise:function(){return a=!0,this},notAsync:function(){return o=!1,this},names:function(){s=[];for(let t=0;t<arguments.length;t++)s.push(arguments[t]);return this},disableNotification:function(){return r=!1,this},run:function(){for(var c=t,l=0;l<arguments.length;l++)c+=String(arguments[l]);if(n){if(serverMap.hasOwnProperty(c))return"$$loading"!=serverMap[c]?serverMap[c]:"";serverMap[c]="$$loading"}var p=t.split("."),u=p[p.length-1];p.pop();var d,h,f=p.join(".")+":"+u,g=new Promise(((t,n)=>{d=t,h=n})),m=function(t){this.safeApply((function(){n&&(serverMap[c]=t),d(t)}))}.bind(this),w=function(t){this.safeApply((function(){n&&(serverMap[c]=t),h(t)})),t&&r&&this.cronapi.$scope.Notification.error(t)}.bind(this),y=[f];if(!o){s&&s.length&&y.push({argsNames:s});for(l=0;l<arguments.length;l++)y.push(arguments[l]);let t=this.cronapi.util.callServerBlockly.apply(this,y);return n&&(serverMap[c]=t),t}y.push(m),y.push(w),s&&s.length&&y.push({argsNames:s});for(var l=0;l<arguments.length;l++)y.push(arguments[l]);if(this.cronapi.util.makeCallServerBlocklyAsync.apply(this,y),a)return g}.bind(this)}},this.cronapi.callFunction=function(name){return{call:function(){var ref;try{ref=eval(name)}catch(t){}if(ref)return ref.apply(this,arguments)}.bind(this)}},this.cronapi.conversion={},this.cronapi.conversion.asciiToBinary=function(t){var n="";if(t.length>0)for(var a=0;a<t.length;a++)for(var o=t.charCodeAt(a),r=7;r>=0;r--)n+=o>>r&1;return n},this.cronapi.conversion.toBoolean=function(t){return this.cronapi.internal.parseBoolean(t)},this.cronapi.conversion.toBytes=function(t){return t?t.toString():""},this.cronapi.conversion.chrToAscii=function(t){return t?t.charCodeAt(0):null},this.cronapi.conversion.stringToJs=function(t){return this.cronapi.internal.stringToJs(t)},this.cronapi.conversion.stringToDate=function(value){var pattern=/^\s*(\d+)[\/\.-](\d+)[\/\.-](\d+)(\s(\d+):(\d+):(\d+))?\s*$/;if(value){if(value instanceof Date)return value;if(pattern.test(value)){var splited=pattern.exec(value),userLang=(navigator.language||navigator.userLanguage).split("-")[0];if("pt"==userLang||"en"==userLang){var functionToCall=eval("cronapi.internal."+userLang+"Date");return functionToCall(splited)}return new Date(value)}return new Date(value)}return null},this.cronapi.conversion.stringToDateWithFormat=function(t,n){let a=moment(t,n);return a.isValid()?a.toDate():null},this.cronapi.conversion.intToHex=function(t){return Number(t).toString(16).toUpperCase()},this.cronapi.conversion.toLong=function(t){return parseInt(t)},this.cronapi.conversion.toString=function(t){return t?new String(t).toString():""},this.cronapi.util={},this.cronapi.util.fillDatasource=async function(id,filterUrl,params,paramsNames){const odataUrl=`${window.hostApp}api/cronapi/odata/v2/`,db=this.cronapi.internal.getPouchDB(id);let totalReceived=0,defaultPagination=100;if(paramsNames&&"object"==typeof paramsNames){let t=[];for(let n=0;n<paramsNames.length;n++){let a={};a[paramsNames[n]]=params[n],t.push(a)}params=t}let convertToODataDate=t=>`'${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}T${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}:${String(t.getSeconds()).padStart(2,"0")}'`,evalForODATA=async value=>{let result="";try{result=await eval(value.replace("await ",""))}catch(t){result=value}return"string"==typeof result&&(result=`'${result}'`),"object"==typeof result&&result.getFullYear&&(result=convertToODataDate(result)),result},getFilter=t=>{let n="",a=t.match(/(\$filter=)(.*)/);return a&&a.length>2&&(n=a[2]),n},getUrl=t=>{let n="",a=t.match(/^(GET|POST|DELETE|PUT)\s(.*?)($|\?)/);return a&&a.length>2&&(n=`${odataUrl}${a[2]}`),n};if(params){for(let t=0;t<params.length;t++){let n=params[t];for(let t in n)n[t]=await evalForODATA(n[t])}params.forEach((t=>{for(let n in t)filterUrl=filterUrl.replace(`:${n}`,t[n])}))}let config={method:"GET",params:{$inlinecount:"allpages",$format:"json",$top:`${defaultPagination}`,$skip:0},url:getUrl(filterUrl)},filter=getFilter(filterUrl);filter&&(config.params.$filter=filter);let makeRequest=async(t,n,a)=>{let o=this.$http(t);o.then((t=>n(t))),o.catch((t=>a(t)))},success=t=>{let n=t.data.d,a=n.results.length;totalReceived+=a,totalReceived<n.__count&&(config.params.$skip+=defaultPagination,makeRequest(config,success,error)),this.cronapi.internal.updatePouchDB(db,n.results),console.log(`Caching Data (%c${id}%c): %c${totalReceived} of ${n.__count}`,"color: red","color: black","color: red")},error=t=>{console.error(`error caching datasource ${db.name}`,t)};makeRequest(config,success,error)},this.cronapi.util.changeViewLogout=function(){let t=window.cordova?this.cronapi.util.getMobileLogoutRoute():this.cronapi.util.getWebLogoutRoute();this.cronapi.screen.changeView(t)},this.cronapi.util.getWebLogoutRoute=function(){let t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){let a=n.responseJSON["cronapp.framework.web.logoutroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t)},this.cronapi.util.getMobileLogoutRoute=function(){let t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){let a=n.responseJSON["cronapp.framework.mobile.logoutroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t)},this.cronapi.util.changeViewMain=function(){var t=void 0;t=window.cordova?this.cronapi.util.getMobileMainRoute():this.cronapi.util.getWebMainRoute(),this.cronapi.screen.changeView(t)},this.cronapi.util.getWebMainRoute=function(){var t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){var a=n.responseJSON["cronapp.framework.web.mainroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t)},this.cronapi.util.getMobileMainRoute=function(){var t="views/login.view.html",n=$.get({url:"cronapp.json",async:!1});if(n&&n.responseJSON){var a=n.responseJSON["cronapp.framework.mobile.mainroute"];a&&(t=a)}return this.cronapi.internal.viewToRoute(t,"mobile")},this.cronapi.util.setToken=function(t){let n={};localStorage.getItem("_u")&&(n=JSON.parse(localStorage.getItem("_u")),window.isUsingCookie()?delete n.token:n.token=t),localStorage.setItem("_u",JSON.stringify(n))},this.cronapi.util.getApplicationName=function(){return $("#projectName").length?$("#projectName").val():$("h1:first").length&&$("h1:first").text().trim().length?$("h1:first").text().trim():""},this.cronapi.util.createPromise=function(){var t,n,a=new Promise(((a,o)=>{t=a,n=o}));return a.__functionToResolve=t,a.__functionToReject=n,a},this.cronapi.util.handleValueToPromise=function(t,n,a){"resolve"===t?n.__functionToResolve(a):n.__functionToReject(a)},this.cronapi.util.monitorPromise=function(t,n,a){t&&(n&&t.then(n),a&&t.catch(a))},this.cronapi.util.sleep=async function(t){return new Promise((n=>{setInterval((()=>{n(t)}),t)}))},this.cronapi.util.callServerBlocklyAsync=function(t,n,a,o){var r,s="api/cronapi/call/body/#classNameWithMethod#/".replace("#classNameWithMethod#",t),c=this.cronapi.$scope.http,l=[];$(arguments).each((function(){this&&Array.isArray(this.argsNames)?r=this.argsNames:l.push(this)}));var p={fields:n,inputs:l.slice(4)};r&&(p.names=r);var u=this.cronapi.internal.getAddressWithHostApp(s);let d;try{d=JSON.stringify(p)}catch(t){d=JSON.stringify(p,(()=>{const t=new WeakSet;return(n,a)=>{if("object"==typeof a&&null!==a){if(t.has(a))return;t.add(a)}return a}})())}c({method:"POST",url:u,data:d,responseType:"text",headers:window.isUsingCookie()?{"Content-Type":"application/json",toJS:!0,timezone:moment().utcOffset()}:{"Content-Type":"application/json","X-AUTH-TOKEN":this.cronapi.util.getUserToken(),toJS:!0,timezone:moment().utcOffset()},transformResponse:t=>t}).then((function(t){a(t.data)}),(function(t){o(t.data,t.status)}))},this.cronapi.util.getScreenFields=function(){var fields={};for(var key in this.cronapi.$scope)this.cronapi.$scope[key]&&this.cronapi.$scope[key].constructor&&"DataSet"==this.cronapi.$scope[key].constructor.name&&(fields[key]={},fields[key].active=this.cronapi.$scope[key].active);var scope=this.cronapi.$scope,recursiveLookup=function(scope){var fieldValue;try{fieldValue=eval(scope.vars)}catch(t){}if(fieldValue&&0!==Object.keys(fieldValue).length){var keys=Object.keys(fieldValue);keys.forEach((function(t){void 0!==fieldValue[t]&&null!==fieldValue[t]&&(fields.vars||(fields.vars={}),fields.vars[t]=fieldValue[t])}))}else if(scope&&scope.$parent)return recursiveLookup(scope.$parent)};for(var key in recursiveLookup(scope),this.cronapi.$scope.params)this.cronapi.$scope.params[key]&&(fields.params||(fields.params={}),fields.params[key]=this.cronapi.$scope.params[key]);return fields},this.cronapi.util.makeCallServerBlocklyAsync=function(blocklyWithFunction,callbackSuccess,callbackError){var fields=this.cronapi.util.getScreenFields(),paramsApply=[];paramsApply.push(blocklyWithFunction),paramsApply.push(fields),paramsApply.push(function(data){this.cronapi.evalInContext(data).then((result=>{"string"==typeof callbackSuccess?eval(callbackSuccess)(result):callbackSuccess&&callbackSuccess(result)}))}.bind(this)),paramsApply.push(function(data,status,errorThrown){var message=this.cronapi.internal.getErrorMessage(data,errorThrown);"string"==typeof callbackError?eval(callbackError)(message):callbackError?callbackError(message):this.cronapi.$scope.Notification.error(message)}.bind(this)),$(arguments).each((function(t){t>=3&¶msApply.push(this)})),this.cronapi.util.callServerBlocklyAsync.apply(this,paramsApply)},this.cronapi.util.callServerBlocklyNoReturn=async function(){return this.cronapi.util.callServerBlockly.apply(this,arguments)},this.cronapi.util.throwException=function(t){throw t},this.cronapi.util.createException=function(t){return t},this.cronapi.util.language=function(){return(window.navigator.userLanguage||window.navigator.language||"pt_br").replace("-","_")},this.cronapi.util.share=function(t,n,a){return new Promise(((o,r)=>{navigator.share({title:t,text:n,url:a}).then((()=>{o("Successful share"),console.log("Successful share")})).catch((t=>{r(t),console.log("Error sharing:",t)}))}))},this.cronapi.util.callServerBlockly=async function(t){let n=[];n.push(t),n.push(null),n.push(null);let a=1;for(;a<arguments.length;a++)n.push(arguments[a]);return new Promise(((t,a)=>{n[1]=(n=>{t(n)}).bind(this),n[2]=(t=>{a(t)}).bind(this),this.cronapi.util.makeCallServerBlocklyAsync.apply(this,n)}).bind(this))},this.cronapi.util.callServerBlocklyAsynchronous=function(t,n,a){if(""!=t&&"function"==typeof n){(a=[]).push(t),a.push(n),a.push(n);for(var o=2;o<arguments.length;o++)a.push(arguments[o]);this.cronapi.util.makeCallServerBlocklyAsync.apply(this,a)}},this.cronapi.util.executeJavascriptNoReturn=function(value){eval(value)},this.cronapi.util.downloadFile=function(t){var n=this.cronapi.internal.getAddressWithHostApp(t);this.cronapi.screen.openUrl(n,"_blank",0,0)},this.cronapi.util.executeJavascriptNoReturn=function(value){eval(value)},this.cronapi.util.executeJavascriptReturn=function(value){return eval(value)},this.cronapi.util.openReport=function(t){this.cronapi.$scope.getReport(t)},this.cronapi.util.getIP=function(){return $.get({url:"https://api.ipify.org/",async:!1}).responseText},this.cronapi.util.openDashboard=function(t){this.cronapi.$scope.getReport(t)},this.cronapi.util.handleCallback=function(t){if(t){return"AsyncFunction"===t.constructor.name?function(){(async()=>{await t.apply(this,arguments)})()}.bind(this):t.bind(this)}},this.cronapi.util.getURLFromOthers=function(t,n,a,o,r,s,c){if(o&&"application/x-www-form-urlencoded"===n){for(var l in o)if(o[l]instanceof Array){var p=o[l].toString();o[l]=`[${p}]`}}else o&&"application/json"===n&&(o=JSON.stringify(o));var u=Object.create(r);u["Content-Type"]=n,this.cronapi.$scope.http({method:t,url:a,data:o,headers:u,transformResponse:t=>t}).then(function(t){this.cronapi.util.handleCallback(s).bind(this)(t.data,t)}.bind(this),function(t){this.cronapi.util.handleCallback(c).bind(this)(t.data,t)}.bind(this))},this.cronapi.util.getUserToken=function(){if(localStorage.getItem("_u")){let t=JSON.parse(window.localStorage.getItem("_u"));if(t.token)return t.token}return""},this.cronapi.util.getUser=function(){return JSON.parse(window.localStorage.getItem("_u")).user.username},this.cronapi.util.getUserName=function(){return JSON.parse(window.localStorage.getItem("_u")).user.name},this.cronapi.util.setSessionStorage=function(t,n){window.sessionStorage.setItem(t,n)},this.cronapi.util.getSessionStorage=function(t){return window.sessionStorage.getItem(t)},this.cronapi.util.setLocalStorage=function(t,n){window.localStorage.setItem(t,n)},this.cronapi.util.getLocalStorage=function(t){return window.localStorage.getItem(t)},this.cronapi.util.executeAsynchronous=function(t){setTimeout(t,0)},this.cronapi.util.scheduleExecution=function(t,n,a,o,r){r="true"===(r=r||!0)||!0===r;var s=1;"seconds"===o?s=1e3:"minutes"===o?s=6e4:"hours"===o&&(s=36e5),n*=s,a*=s;var c=-1,l=setTimeout(function(){t(),c=setInterval(t,a)}.bind(this),n);r&&this.$on("$destroy",(function(){try{clearTimeout(l)}catch(t){}try{clearInterval(c)}catch(t){}}))},this.cronapi.util.openReport=function(t,n,a){this.cronapi.$scope.getReport(t,n,a)},this.cronapi.util.openDashboard=function(t,n,a){this.cronapi.$scope.getReport(t,n,a)},this.cronapi.util.getCEP=function(t,n){if(this.cronapi.logic.isNullOrEmpty(t))throw new Error("Informe o CEP");if((t=t.replace(/\.|\-/g,"").split(" ").join("")).length<8)throw new Error("CEP inválido");let a="https://viacep.com.br/ws/"+t+"/json/?callback=?";$.getJSON(a,this.cronapi.util.handleCallback(n.bind(this)))},this.cronapi.screen={},this.cronapi.screen.isInsertingMode=function(t){return getDatasource(t).inserting},this.cronapi.screen.isEditingMode=function(t){return getDatasource(t).editing},this.cronapi.screen.changeTitleScreen=function(t){window.document.title=t},this.cronapi.screen.fieldFromScreen=function(t){return t},this.cronapi.screen.changeValueOfField=function(t,n){try{this.__tempValue=n;var a=new Function("this."+t+" = this.__tempValue;");this.safeApply(a.bind(this))}catch(t){}},this.cronapi.screen.getValueOfField=function(field){try{if(field&&field.length>0){if(field.indexOf(".active.")>-1)return eval(field);var scope=eval("this"),recursiveLookup=function(scope){var fieldValue;try{fieldValue=eval("scope."+field)}catch(t){}return void 0!==fieldValue||null!==fieldValue?fieldValue:scope&&scope.$parent?recursiveLookup(scope.$parent):""};return recursiveLookup(scope)}return""}catch(t){alert(t)}},this.cronapi.screen.createScopeVariable=function(t,n){this.cronapi.$scope.safeApply((()=>this.cronapi.$scope.vars[t]=n))},this.cronapi.screen.getScopeVariable=function(t){return this.cronapi.$scope.vars[t]},this.cronapi.screen.notify=function(t,n){null!=n&&null!=n||(n=""),this.cronapi.$scope.Notification({message:n.toString()},t)},this.cronapi.screen.datasourceFromScreen=function(t){return t},this.cronapi.screen.startInsertingMode=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).startInserting(null,(()=>{n()}))}catch(t){a(t)}}))}))},this.cronapi.screen.startEditingMode=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).startEditing(null,(()=>{n()}))}catch(t){a(t)}}))}))},this.cronapi.screen.backNormalState=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).onBackNomalState(),n()}catch(t){a(t)}}))}))},this.cronapi.screen.previusRecord=function(t){getDatasource(t).$apply(new function(){getDatasource(t).previous()})},this.cronapi.screen.nextRecord=function(t){getDatasource(t).$apply(new function(){getDatasource(t).next()})},this.cronapi.screen.firstRecord=function(t){getDatasource(t).$apply(new function(){var n=getDatasource(t);n.cursor=-1,n.next()})},this.cronapi.screen.lastRecord=function(t){getDatasource(t).$apply(new function(){var n=getDatasource(t);n.cursor=n.data.length-2,n.next()})},this.cronapi.screen.removeRecord=async function(t){return new Promise(((n,a)=>{getDatasource(t).$apply((()=>{try{getDatasource(t).removeSilent(null,(()=>{n()}),(t=>{a(t)}))}catch(t){a(t)}}))}))},this.cronapi.screen.refreshActiveRecord=async function(t){return new Promise(((n,a)=>{try{getDatasource(t).refreshActive((()=>{n()}),(t=>{a(t)}))}catch(t){a(t)}}))},this.cronapi.screen.hasNextRecord=function(t){return getDatasource(t).hasNext()},this.cronapi.screen.quantityRecords=function(t){return getDatasource(t).data.length},this.cronapi.screen.post=async function(t){return new Promise(((n,a)=>{try{getDatasource(t).postSilent((()=>{n()}),(t=>{a(t)}))}catch(t){a(t)}}))},this.cronapi.screen.filter=function(t,n){getDatasource(t).isOData()?getDatasource(t).search(n):getDatasource(t).filter("/"+n)},this.cronapi.screen.doFilter=function(t,n,a){let o=a;a instanceof Array&&(o=a.join(" "+n+" ")),getDatasource(t).isOData()?getDatasource(t).search(o):getDatasource(t).filter("/"+o)},this.cronapi.screen.createFilter=function(t,n,a){return"substringof"===n?"substringof('"+(a||!1===a?a instanceof Date?a.toISOString():a:"")+"', "+t+")":t+" "+n+" "+objToOData(a)},this.cronapi.screen.changeView=function(view,params){try{var queryString="",paramsStopEncode={};function decodeCharParam(value){if(value)for(var param in paramsStopEncode){var regex=eval("/"+param+"/g");value=value.replace(regex,paramsStopEncode[param])}return value}if(paramsStopEncode["%24"]="$",void 0!==params)if(params instanceof Array)for(var i in Object.keys(params)){var k=Object.keys(params[i])[0],paramValue=Object.values(params[i])[0];paramValue instanceof Date&&(paramValue=paramValue.toISOString());var v=String(paramValue);queryString&&(queryString+="&"),queryString+=decodeCharParam(encodeURIComponent(k))+"="+encodeURIComponent(v)}else for(var k in params)queryString&&(queryString+="&"),queryString+=decodeCharParam(encodeURIComponent(k))+"="+encodeURIComponent(params[k]);let existRoute=t=>{if(this.cronapi.$scope&&this.cronapi.$scope.$state){let n=this.cronapi.$scope.$state.get(),a="views/"+t.split("/").slice(2).join("/")+".view.html";n.forEach((n=>{let o=n.templateUrl;if(o instanceof Function){let t=/('|")[a-z0-9/.]+('|")/gim.exec(o.toString());null!=t&&t[0]&&(o=t[0].replace(/'|"/g,""))}o===a&&(t="#"+n.url)}))}return t};var oldHash=window.location.hash;view=existRoute(view),window.location.hash=view+(queryString?"?"+queryString:"");var oldHashToCheck=oldHash+(oldHash.indexOf("?")>-1?"":"?"),viewToCheck=view+(view.indexOf("?")>-1?"":"?");this.cronapi.forceCloseAllModal(),oldHashToCheck.indexOf(viewToCheck)>=0&&window.location.reload()}catch(t){alert(t)}},this.cronapi.screen.openUrl=function(t,n,a,o){try{var r="_self",s="";n&&"true"==n.toString().toLowerCase()&&(r="_blank"),a&&(s+="width="+a+","),o&&(s+="height="+o+","),window.open(t,r,s)}catch(t){alert(t)}},this.cronapi.screen.getParam=function(t){try{for(var n,a=[],o=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),r=0;r<o.length;r++)n=o[r].split("="),a.push(n[0]),a[n[0]]=n[1];if(void 0!==a[t])return decodeURIComponent(a[t])}catch(t){}return null},this.cronapi.screen.confimDialog=function(t){return confirm(t)},this.cronapi.screen.createDefaultModal=function(t,n,a,o,r,s,c){$("#modalTemplateTitle").text(t),$("#modalTemplateBody").text(n),$("#modalTemplateCancel").text(a),$("#modalTemplateSave").text(o),$("#modalTemplateClose").unbind("click"),$("#modalTemplateClose").click(c),$("#modalTemplateCancel").unbind("click"),$("#modalTemplateCancel").click(s),$("#modalTemplateSave").unbind("click"),$("#modalTemplateSave").click(r),this.cronapi.screen.showModal("modalTemplate")},this.cronapi.screen.showModal=function(t){let n=`#${t}`,a=$(":focus"),o=$(":hover");try{$(n).one("shown.bs.modal",(function(t){a.length&&($(this).data("lastFocused",a),$(this).data("lastFocusedClass","."+a.attr("class").split(" ").join("."))),o.length&&$(this).data("lastHovers",o);let n=$(this).find("input:not(:hidden)")[0];n&&n.focus()})).one("hidden.bs.modal",(function(t){let a,o=$(n).data("lastFocused"),r=!1;o&&o.length&&(a=$($(this).data("lastFocusedClass")),r=$("html").has(o).length?o.is(":visible"):a.is(":visible"));let s=function(t){return $(t[t.length-1]).closest("li:visible").find("a:first")},c=$(n).data("lastHovers");if(r)a.focus(),o.focus();else if($("html").has(o).length){s(o).focus()}else if(c&&c.length){s(c).focus()}})).modal({backdrop:"static",keyboard:!1})}catch(t){$(n).show()}$(n).css("overflow-y","auto")},this.cronapi.screen.setActiveTab=function(t){this.cronapi.$scope.safeApply((function(){void 0===$("#"+t).attr("data-target")?$('[data-target="#'+t+'"]').tab("show"):$("#"+t).tab("show")}))},this.cronapi.screen.hideModal=function(t){try{$("#"+t).modal("hide")}catch(n){$("#"+t).hide()}},this.cronapi.screen.showIonicModal=async function(t){return $(`#${t}`).data("cronapp-modal")&&$(`#${t}`).data("cronapp-modal").remove(),new Promise(((n,a)=>{this.cronapi.$scope.$ionicModal.fromTemplateUrl(t,{scope:this.cronapi.$scope,animation:"slide-in-up"}).then((a=>{$("#"+t).data("cronapp-modal",a),a.show(),n()})).catch((t=>a(t)))}))},this.cronapi.screen.hideIonicModal=function(t){$("#"+t).data("cronapp-modal")&&($("#"+t).data("cronapp-modal").remove(),$("#"+t).data("cronapp-modal",null))},this.cronapi.screen.isShownIonicModal=function(t){return!!$("#"+t).data("cronapp-modal")&&$("#"+t).data("cronapp-modal").isShown()},this.cronapi.screen.showLoading=function(){this.cronapi.$scope.$ionicLoading&&this.cronapi.$scope.$ionicLoading.show({content:"Loading",animation:"fade-in",showBackdrop:!0,maxWidth:200,showDelay:0})},this.cronapi.screen.hide=function(){this.cronapi.$scope.$ionicLoading&&this.cronapi.$scope.$ionicLoading.hide()},this.cronapi.screen.getHostapp=function(){return window.hostApp},this.cronapi.screen.searchIds=function(){},this.cronapi.screen.showComponent=function(t){const n=$("#"+t);if(n.length>0){const t=n.parent();n.attr("data-component")?n.attr("style","display:block !important"):t.attr("style","display:block !important")}else console.error("Element not found: "+t)},this.cronapi.screen.hideComponent=function(t){const n=$("#"+t);if(n.length>0){const t=n.parent();n.attr("data-component")?n.attr("style","display:none !important"):t.attr("style","display:none !important")}else console.error("Element not found: "+t)},this.cronapi.screen.disableComponent=function(t){let n;if(window.cordova)n=this.cronapi.$scope;else{let t=window.angular.element("body").injector();n=t.get("$rootScope")}let a=(t,n)=>{t.data("kendoComboBox")?t.data("kendoComboBox").enable(!1):t.hasClass("cronSelect")&&t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!1):t.data("kendoDropDownList")?t.data("kendoDropDownList").enable(!1):t.data("kendoMultiSelect")?t.data("kendoMultiSelect").enable(!1):t.find("[data-role=grid]").data("kendoGrid")||t.find("cron-grid").length?this.cronapi.internal.coverElement(t):$.each(t.find("*").addBack(),(function(t,o){let r=$(o);r.prop("disabled",!0).addClass("disabled"),n&&a(r,!1)}))},o=()=>{let r=$(`#${t}`);"$apply"!==n.$$phase&&"$digest"!==n.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout((()=>o()),200)};o()},this.cronapi.screen.enableComponent=function(t){let n;if(window.cordova)n=this.cronapi.$scope;else{let t=window.angular.element("body").injector();n=t.get("$rootScope")}let a=(t,n)=>{t.data("kendoComboBox")?t.data("kendoComboBox").enable(!0):t.hasClass("cronSelect")&&t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?t.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!0):t.data("kendoDropDownList")?t.data("kendoDropDownList").enable(!0):t.data("kendoMultiSelect")?t.data("kendoMultiSelect").enable(!0):t.find("[data-role=grid]").data("kendoGrid")||t.find("cron-grid").length?this.cronapi.internal.discoverElement(t):$.each(t.find("*").addBack(),(function(t,o){let r=$(o);r.prop("disabled",!1).removeClass("disabled"),n&&a(r,!1)}))},o=()=>{let r=$(`#${t}`);"$apply"!==n.$$phase&&"$digest"!==n.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout((()=>o()),200)};o()},this.cronapi.screen.focusComponent=function(t){this.cronapi.$scope.safeApply((function(){tinyMCE&&tinyMCE.get(t)?tinyMCE.get(t).focus():$("#"+t).find("*").addBack().focus()}))},this.cronapi.screen.changeAttrValue=function(t,n,a){$("#"+t).attr(n,a)},this.cronapi.screen.getAttrValue=function(t,n){return $(`#${t}`).attr(n)},this.cronapi.screen.changeContent=function(t,n,a){if($("#"+t).html(n),!0===a||"true"===a){var o=angular.injector(["ng"]),r=this;o.invoke(["$compile",function(n){n(document.querySelector("#"+t))(r.cronapi.$scope)}])}},this.cronapi.screen.setVisibility=function(t,n){let a=!0===n||"true"===n?"visible":"hidden";$(`#${t}`).css("visibility",`${a}`)},this.cronapi.screen.getContent=function(t){return $(`#${t}`).html()},this.cronapi.screen.copyValue=function(t){var n=this.cronapi.screen.getValueOfField(t);null==n&&(n=""),navigator.clipboard.writeText(n)},this.cronapi.screen.toggleClass=function(t,n){$(`#${t}`).toggleClass(n)},this.cronapi.screen.recompileComponent=async function(t){let n=$(`#${t}`);n.data("alreadycompiled",!1);let a=await(t=>new Promise((n=>{let a=t.data("$compile");a?n(a):angular.injector(["ng"]).invoke(["$compile",t=>n(t)])})))(n),o=this.cronapi.$scope;o.safeApply((()=>a(n)(o)))},this.cronapi.screen.logout=function(){null!=this.cronapi.$scope.logout&&this.cronapi.$scope.logout()},this.cronapi.screen.refreshDatasource=function(t,n){1==n||"true"==n?this[t].search(this[t].terms,this[t].caseInsensitive):this[t].search("",this[t].caseInsensitive)},this.cronapi.screen.loadMore=function(t){getDatasource(t).$apply((function(){getDatasource(t).nextPage()}))},this.cronapi.screen.hasNextPage=function(t){return getDatasource(t).hasNextPage()},this.cronapi.screen.load=function(t){let n=getDatasource(t);n.reloadedFromCronapi=!0,n.fetch({params:{}},void 0,void 0,{origin:"button"})},this.cronapi.screen.addClass=function(t,n){$(`#${t}`).addClass(n)},this.cronapi.screen.removeClass=function(t,n){$(`#${t}`).removeClass(n)},this.cronapi.screen.createMenuObjectMobile=function(t){let n=[];return t&&(Array.isArray(t)?n=t:n.push(t)),{escope:"MOBILE",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,n)}},this.cronapi.screen.createMenuObjectWeb=function(t){let n=[];return t&&(Array.isArray(t)?n=t:n.push(t)),{escope:"WEB",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,n)}},this.cronapi.screen.recursiveDefineItemsIds=function(t,n,a){for(let o=0;o<a.length;o++)a[o].level=n,a[o].id=t+"-"+(o+1),a[o].menuItems=this.cronapi.screen.recursiveDefineItemsIds(a[o].id,n+1,a[o].menuItems);return a},this.cronapi.screen.createMenuItemMobile=function(t,n,a,o,r,s,c,l,p,u){let d="";return a&&"ion-NONE"!=a&&(d=0==a.indexOf("ion-")?"icon "+a:a),{id:"TODO",name:t||"",title:n||"",iconClass:d,hide:o||"",security:r||"",action:s||"",level:0,textPosition:c||"left",imagePosition:l||"left",contentTheme:p||"light",iconTheme:u||"light",menuItems:[]}},this.cronapi.screen.createMenuItemWeb=function(t,n,a,o,r,s,c){let l=[];c&&(Array.isArray(c)?l=c:l.push(c));let p="";return a&&"fa-NONE"!=a&&(p=0==a.indexOf("fa-")?"fa "+a:a),{id:"TODO",name:t||"",title:n||"",iconClass:p,hide:o||"",security:r||"",action:s||"",level:0,textPosition:"left",imagePosition:"left",contentTheme:"light",iconTheme:"light",menuItems:l}},this.cronapi.screen.createMenuItemSecurity=function(t,n){let a=[];t&&""!==t&&(Array.isArray(t)?a=t:a.push(t));let o=[];n&&""!==n&&(Array.isArray(n)?o=n:o.push(n));let r="";return a.length>0&&(r="visible : "+a.join(";")),o.length>0&&(r=r.length>0?r+", enabled : "+o.join(";"):"enabled : "+o.join(";")),r},this.cronapi.dateTime={},this.cronapi.dateTime.formats=function(){var t=[];return(t="pt_br"==this.cronapi.$translate.use()?["DD/MM/YYYY HH:mm:ss","DD/MM/YYYY","DD-MM-YYYY HH:mm:ss","DD-MM-YYYY"]:["MM/DD/YYYY HH:mm:ss","MM/DD/YYYY","MM-DD-YYYY HH:mm:ss","MM-DD-YYYY"]).push("YYYY-MM-DDTHH:mm:ss"),t.push("HH:mm:ss"),t.push("MMMM"),t},this.cronapi.dateTime.getMomentObj=function(value){var currentMoment=moment;if(value instanceof moment)return value;if(value instanceof Date)return currentMoment(value).utcOffset(window.timeZoneOffset);if(value){let dateString=new RegExp("/Date((.*?))/"),regexExecution=dateString.exec(value);if(regexExecution&®exExecution.length>1){let date=eval(`new Date${regexExecution[1]}`);return currentMoment(date).utcOffset(window.timeZoneOffset)}}var formats=this.cronapi.dateTime.formats(),momentObj=null;for(var ix in formats)if(momentObj=currentMoment(value,formats[ix]),momentObj.isValid())break;return momentObj},this.cronapi.dateTime.changeDateMask=function(t,n,a,o,r){if(this.cronapi.logic.isNullOrEmpty(t))return t;if(this.cronapi.logic.isNullOrEmpty(n))return new Var("INVALID INIT MASK");if(a=this.cronapi.logic.isNullOrEmpty(a)?"pt-BR":a.replace("_","-"),this.cronapi.logic.isNullOrEmpty(o))return new Var("INVALID END MASK");r=this.cronapi.logic.isNullOrEmpty(r)?"pt-BR":r.replace("_","-");var s=moment(t,n,a);return s.locale(r),s.format(o)},this.cronapi.dateTime.getSecond=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("second"):0},this.cronapi.dateTime.getMinute=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("minute"):0},this.cronapi.dateTime.getHour=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("hour"):0},this.cronapi.dateTime.getYear=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("year"):0},this.cronapi.dateTime.getMonth=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("month")+1:0},this.cronapi.dateTime.getDay=function(t){var n=this.cronapi.dateTime.getMomentObj(t);return n?n.get("date"):0},this.cronapi.dateTime.getSecondsBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"seconds")},this.cronapi.dateTime.getMinutesBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"minutes")},this.cronapi.dateTime.getHoursBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"hours")},this.cronapi.dateTime.getDaysBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"days")},this.cronapi.dateTime.getMonthsBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"months")},this.cronapi.dateTime.getYearsBetweenDates=function(t,n){var a=this.cronapi.dateTime.getMomentObj(t),o=this.cronapi.dateTime.getMomentObj(n);return a.diff(o,"years")},this.cronapi.dateTime.incSecond=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("seconds",n).toDate()},this.cronapi.dateTime.incMinute=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("minutes",n).toDate()},this.cronapi.dateTime.incHour=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("hours",n).toDate()},this.cronapi.dateTime.incDay=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("days",n).toDate()},this.cronapi.dateTime.incMonth=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("months",n).toDate()},this.cronapi.dateTime.incYear=function(t,n){return this.cronapi.dateTime.getMomentObj(t).add("years",n).toDate()},this.cronapi.dateTime.getNow=function(){return moment().toDate()},this.cronapi.dateTime.formatDateTime=function(t,n){return this.cronapi.dateTime.getMomentObj(t).format(n)},this.cronapi.dateTime.newDate=function(t,n,a,o,r,s){var c=new Date;return c.setYear(t),c.setMonth(n-1),c.setDate(a),c.setHours(o),c.setMinutes(r),c.setSeconds(s),this.cronapi.dateTime.getMomentObj(c).toDate()},this.cronapi.dateTime.updateDate=function(t,n,a,o,r,s,c,l){var p=this.cronapi.dateTime.getMomentObj(t).toDate();if(p&&!isNaN(p.getTime()))return p.setYear(n),p.setMonth(a-1),p.setDate(o),p.setHours(r),p.setMinutes(s),p.setSeconds(c),p.setMilliseconds(l),this.cronapi.dateTime.getMomentObj(p).toDate();this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]))},this.cronapi.dateTime.updateNewDate=function(t,n,a){var o=this.cronapi.dateTime.getMomentObj(t).toDate();if(o&&!isNaN(o.getTime())){switch(n){case"year":o.setYear(a);break;case"month":o.setMonth(a-1);break;case"day":o.setDate(a);break;case"hour":o.setHours(a);break;case"minute":o.setMinutes(a);break;case"second":o.setSeconds(a);break;case"millisecond":o.setMilliseconds(a)}return this.cronapi.dateTime.getMomentObj(o).toDate()}this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]))},this.cronapi.text={},this.cronapi.text.prompt=function(t){return null},this.cronapi.text.formatTextWithReplacement=function(t,...n){var a=Array.prototype.slice.call(n,0);return t.replace(/\{(\d+)\}/g,(function(t,n){return a[n]}))},this.cronapi.text.newline=function(){return"\n"},this.cronapi.text.replaceAll=function(t,n,a,o){return this.cronapi.logic.isNull(t)||this.cronapi.logic.isNull(n)||this.cronapi.logic.isNull(o)?null:"-"!==a?t.replace(new RegExp(n,a),o):t.replace(n,o)},this.cronapi.xml={},this.cronapi.xml.newXMLEmpty=function(){return $.parseXML('<?xml version="1.0" encoding="UTF-8"?><root></root>')},this.cronapi.xml.newXMLEmptyWithRoot=function(t){var n=$.parseXML('<?xml version="1.0" encoding="UTF-8"?><root></root>');return n.removeChild(n.firstElementChild),n.appendChild(t),n},this.cronapi.xml.newXMLElement=function(t,n){var a=document.createElement(t);return a.textContent=n,a},this.cronapi.xml.addXMLElement=function(t,n){try{var a=n.cloneNode(!0);return t.appendChild(a),!0}catch(t){return!1}},this.cronapi.xml.XMLHasRootElement=function(t){return!(!t||!t.getRootNode())},this.cronapi.xml.XMLGetRootElement=function(t){return t instanceof XMLDocument?t.firstElementChild:t.getRootNode()},this.cronapi.xml.XMLDocumentToText=function(t){if(t instanceof XMLDocument)return $($($(t.firstElementChild).context.outerHTML).removeAttr("xmlns"))[0].outerHTML;if($(t).size()>1){var n="";return $.each($(t).toArray(),(function(t,a){n+=$($(a)[0].outerHTML).removeAttr("xmlns")[0].outerHTML})),n}return $($($(t).context.outerHTML).removeAttr("xmlns"))[0].outerHTML},this.cronapi.xml.getChildren=function(t,n){return t instanceof XMLDocument?t.firstElementChild.toArray:n?n.localName?$(t).find(n.localName).toArray():$(t).find(n).toArray():$(t).children().toArray()},this.cronapi.xml.setAttribute=function(t,n,a){return!!n&&(t instanceof XMLDocument?(t.firstChild.setAttribute(n,a),!0):!!t&&(t.setAttribute(n,a),!0))},this.cronapi.xml.getAttributeValue=function(t,n){return n?t instanceof XMLDocument?t.firstChild.getAttribute(n)?t.firstChild.getAttribute(n):"":t&&n?t.getAttribute(n):"":""},this.cronapi.xml.getParentNode=function(t){return t instanceof XMLDocument?t.firstChild:t.parentNode},this.cronapi.xml.setElementContent=function(t,n){t instanceof XMLDocument&&(t.firstChild.textContent=n),t.textContent=n},this.cronapi.xml.getElementContent=function(t){return t instanceof XMLDocument?t.firstChild.innerText:t.innerText},this.cronapi.xml.removeElement=function(t,n){t instanceof XMLDocument?n?n instanceof HTMLUnknownElement?n.remove():$.each($(t.firstElementChild.children),(function(t,a){a.localName==n&&a.remove()})):$.each($(t.firstElementChild.children),(function(t,n){n.remove()})):n?n instanceof HTMLUnknownElement?n.remove():$.each($(t.children),(function(t,a){a.localName==n&&a.remove()})):$.each($(t.children),(function(t,n){n.remove()}))},this.cronapi.xml.getElementName=function(t){return t instanceof XMLDocument?t.firstChild.localName:t.localName},this.cronapi.xml.renameElement=function(t,n){var a=t.outerHTML.replace(t.localName,n);a=a.replace("/"+t.localName,"/"+n),a=$(a).removeAttr("xmlns"),t.replaceWith(a[0])},this.cronapi.logic={},this.cronapi.logic.isNull=function(t){return null==t||null==t},this.cronapi.logic.isEmpty=function(t){return""===t},this.cronapi.logic.isNullOrEmpty=function(t){return this.cronapi.logic.isNull(t)||this.cronapi.logic.isEmpty(t)},this.cronapi.logic.typeOf=function(t,n){return"array"===n?Array.isArray(t):("object"!==n||!Array.isArray(t))&&typeof t===n},this.cronapi.i18n={},this.cronapi.i18n.translate=function(t,n){if(t){for(var a=this.cronapi.$translate.instant(t),o=0;o<n.length;o++){var r=n[o];if(null!=r&&void 0!==r){var s=new RegExp("\\{"+o+"\\}","g");a=a.replace(s,r)}}return a}},this.cronapi.internal={},this.cronapi.internal.forceRefreshNgModel=async function(t,n){let a=()=>new Promise((t=>{let n=setInterval((()=>{clearInterval(n),t()}))}));await a(),this.cronapi.screen.changeValueOfField(t,void 0),await a(),this.cronapi.screen.changeValueOfField(t,n)},this.cronapi.internal.hasMethodInCallStack=function(t){return(new Error).stack.indexOf(t)>-1},this.cronapi.internal.lastCronappMenuClick=function(t){window.angular.element("body").injector().get("$rootScope").__lastCronappMenuClick=t},this.cronapi.internal.isJsonString=t=>{if("string"!=typeof t)return!1;try{return JSON.parse(t),!0}catch(t){return!1}},this.cronapi.internal.getPouchDB=t=>{let n;window.pouchDBInstances=window.pouchDBInstances||{};let a=t=>(window.pouchDBInstances[t]=new PouchDB(t),window.pouchDBInstances[t]);return n=window.pouchDBInstances[t]?window.pouchDBInstances[t]:a(t),n.info().then((function(o){o||(n.close(),n=a(t))})).catch((function(o){n.close(),n=a(t)})),n},this.cronapi.internal.updatePouchDB=function(t,n,a){let o=$.extend(!0,{},n);this.cronapi.internal.normalizePouchDBData(o).forEach((n=>{t.get(n._id).then((a=>(a&&a._id&&(n._rev=a._rev),t.put(n)))).then(a).catch((o=>{"not_found"===o.name?t.post(n).then(a).catch((t=>{console.error(t)})):console.error(o)}))}))},this.cronapi.internal.normalizePouchDBData=function(t,n){let a=[];return $.each(t,(function(t,o){let r=o;r[n?"__metadata":"$metadata"]=r[n?"$metadata":"__metadata"],r[n?"_objectKey":"$objectKey"]=r[n?"$objectKey":"_objectKey"],r[n?"__$masterExpression":"$$masterExpression"]=r[n?"$$masterExpression":"__$masterExpression"],r[n?"__parentId":"$parentId"]=r[n?"$parentId":"__parentId"],r[n?"__sender":"$sender"]=r[n?"$sender":"__sender"],r[n?"__status":"$status"]=r[n?"$status":"__status"],r[n?"__original":"$original"]=r[n?"$original":"__original"],r.hasOwnProperty(n?"$odataFile_attached":"__odataFile_attached")&&(r[n?"__odataFile_attached":"$odataFile_attached"]=r[n?"$odataFile_attached":"__odataFile_attached"]),n?(delete r.$metadata,delete r.$objectKey,delete r.$$masterExpression,delete r.$parentId,delete r.$sender,delete r.$status,delete r.$original,delete r.$odataFile_attached):(r._id=r._objectKey,delete r.__metadata,delete r._objectKey,delete r.__$id,delete r.__$masterExpression,delete r.__parentId,delete r.__sender,delete r.__status,delete r.__original,delete r.__odataFile_attached),a.push(r)})),a},this.cronapi.internal.getMaxZIndex=function(){let t=0;return $("body *").each(((n,a)=>{let o=window.getComputedStyle(a).zIndex;o&&!Number.isNaN(parseFloat(o))&&$(a).is(":visible")&&(o=parseFloat(o),t=o>t?o:t)})),t},this.cronapi.internal.viewToRoute=function(t,n){var a=void 0;if(this.cronapi.$scope&&this.cronapi.$scope.$state){var o=this.cronapi.$scope.$state.get().find((n=>n.templateUrl===t));o&&(a="".concat(o.url))}return a||(a="/".concat(t.replace("views/","").replace(".view.html","")),"mobile"===n&&(a="/app".concat(a))),a},this.cronapi.internal.loginSocial=function(t){let n=$(`#${t}`),a=n.attr("action"),o=$("<form/>");o.attr("method","POST"),o.attr("action",a),n.children().appendTo(o),n.parent().append(o),o.submit()},this.cronapi.internal.selectContent=function(t){let n=window.getSelection(),a=document.createRange();a.selectNodeContents(t),n.removeAllRanges(),n.addRange(a)},this.cronapi.internal.skipIterationLoop=function(){return new Promise((t=>{t()}))},this.cronapi.internal.coverElement=function(t){((n,a)=>{let o=a.eq(0).outerWidth(),r=a.eq(0).outerHeight();a.each((function(a){let s=t.closest(".modal-dialog").length,c=s?999999:9999,l=s?$(".modal.fade.in"):t.parent(),p=$(this).offset();$(`<div class='cover-${n}'>`).css({width:o,height:r,position:"absolute",top:p.top,left:p.left,"z-index":c}).appendTo(l)}))})(t.attr("id"),t)},this.cronapi.internal.discoverElement=function(t){let n=t.attr("id");$(`.cover-${n}`).remove()},this.cronapi.internal.focusFormInput=function(){let t=$($("form")[0]),n=$(t.find("input")[0]);if(n&&n.length){let t=setInterval((()=>{n.is(":visible")&&("dropdownlist"!==n.data("role")&&n.focus(),clearInterval(t))}),100)}},this.cronapi.forceCloseAllModal=function(){var t=$(".modal.fade.in");t&&t.each(((t,n)=>this.cronapi.screen.hideModal(n.id))),$(".modal-backdrop.fade.in").remove()},this.cronapi.internal.setFile=function(t,n){this.cronapi.internal.fileToBase64(n,function(n){this.cronapi.screen.changeValueOfField(t,n)}.bind(this))},this.cronapi.internal.fileToBase64=function(t,n){var a=new FileReader;a.readAsDataURL(t),a.onload=function(t){var a=t.target.result.substr(t.target.result.indexOf("base64,")+7);n(a)}},this.cronapi.internal.getMaxResolution=function(t,n){var a=window.innerWidth,o=window.innerHeight,r=0;return n*=r=a/t,(t*=r)>a&&(n*=r=a/t,t*=r),n>o&&(t*=r=o/n,n*=r),{width:t,height:n}},this.cronapi.internal.startCamera=function(t,n,a,o,r){if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId)this.cronapi.cordova.camera.getPicture((n=>{this.cronapi.screen.changeValueOfField(t,n.replace(/^data:image\/\w+;base64,/,""))}),(t=>{console.error(t),this.cronapi.$scope.Notification.error(t)}),0,1,0,a,100!==parseInt(n));else{var s='<div class="camera-container" style="margin-left:-$marginleft$;margin-top:-$margintop$"> <button class="btn btn-success button button-balanced" id="cronapiVideoCaptureOk" style="position: absolute; z-index: 999999999;"> <span class="glyphicon glyphicon-ok icon ion-checkmark-round"></span> <span class="sr-only">{{"Upload.camera" | translate}}</span> </button> <button class="btn btn-danger button button-assertive button-cancel-capture" id="cronapiVideoCaptureCancel" style="position: absolute; margin-left: 42px; z-index: 999999999;"> <span class="glyphicon glyphicon-remove icon ion-android-close"></span> <span class="sr-only">{{"Cancel" | translate}}</span> </button> <video id="cronapiVideoCapture" style="height: $height$; width: $width$;" autoplay=""></video> </div>',c=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia({video:!0}).then(function(n){c=n;var a=cronapi.internal.getMaxResolution(n.getTracks()[0].getSettings().width,n.getTracks()[0].getSettings().height),o=a.width,r=a.height;try{o=parseInt(o/2),r=parseInt(r/2)}catch(t){}s=s.split("$height$").join(a.height+"px").split("$width$").join(a.width+"px").split("$marginleft$").join(o+"px").split("$margintop$").join(r+"px");var l=$(s);l.prependTo("body");var p=document.getElementById("cronapiVideoCapture");l.find("#cronapiVideoCaptureCancel").on("click",function(){null!=c&&c.getTracks().length>0&&c.getTracks()[0].stop(),$(l).remove()}.bind(this)),l.find("#cronapiVideoCaptureOk").on("click",function(){this.cronapi.internal.captureFromCamera(t,a.width,a.height),null!=c&&c.getTracks().length>0&&c.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=n,p.onloadedmetadata=function(t){p.play()}}.bind(this))}},this.cronapi.internal.getPicture=function(t){if(1===t.sourceType)cronapi.internal.getPictureFromCamera(t);else if(0===t.sourceType||2===t.sourceType)cronapi.internal.getPictureFromFile(t);else{$('<div id="captureChooser"></div>').prependTo("body"),$("#captureChooser").kendoDialog({title:"",content:this.cronapi.i18n.translate("getImageFrom",[]),buttonLayout:"normal",actions:[{text:this.cronapi.i18n.translate("camera",[]),primary:!0,action:function(){return cronapi.internal.getPictureFromCamera(t),!0}},{text:this.cronapi.i18n.translate("gallery",[]),action:function(){return cronapi.internal.getPictureFromFile(t),!0}}]})}},this.cronapi.internal.getPictureFromCamera=function(t){var n=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({video:!0}).then(function(a){n=a;var o=cronapi.internal.getMaxResolution(a.getTracks()[0].getSettings().width,a.getTracks()[0].getSettings().height),r=o.width,s=o.height;try{r=parseInt(r/2),s=parseInt(s/2)}catch(t){}var c='<div class="camera-container" style="margin-left:-$marginleft$;margin-top:-$margintop$"> <button class="btn btn-success button button-balanced" id="cronapiFileBrowserOk" style="position: absolute; z-index: 999999999;"> <span class="glyphicon glyphicon-ok icon ion-checkmark-round"></span> <span class="sr-only">{{"Upload.camera" | translate}}</span> </button> <button class="btn btn-danger button button-assertive button-cancel-capture" id="cronapiFileBrowserCancel" style="position: absolute; margin-left: 42px; z-index: 999999999;"> <span class="glyphicon glyphicon-remove icon ion-android-close"></span> <span class="sr-only">{{"Cancel" | translate}}</span> </button> <video id="cronapiFileBrowser" style="height: $height$; width: $width$;" autoplay=""></video> </div> </div>';c=c.split("$height$").join(o.height+"px").split("$width$").join(o.width+"px").split("$marginleft$").join(r+"px").split("$margintop$").join(s+"px");var l=$(c);l.prependTo("body");var p=document.getElementById("cronapiFileBrowser");l.find("#cronapiFileBrowserCancel").on("click",function(){null!=n&&n.getTracks().length>0&&n.getTracks()[0].stop(),t.errorCallback&&t.errorCallback("Operação cancelada"),$(l).remove()}.bind(this)),l.find("#cronapiFileBrowserOk").on("click",function(){cronapi.internal.getPictureSuccess(t,o.width,o.height),null!=n&&n.getTracks().length>0&&n.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=a,p.onloadedmetadata=function(t){p.play()}}.bind(this)).catch(function(n){t.errorCallback&&t.errorCallback(n.toString())}.bind(this)):t.errorCallback&&t.errorCallback("Recurso não suportado ou não autorizado")},this.cronapi.internal.getPictureFromFile=function(t){var n=cronapi.internal.getMaxResolution(window.innerWidth,window.innerHeight),a=n.width,o=n.height;try{a=parseInt(a/2),o=parseInt(o/2)}catch(t){console.log(t)}var r='<div class="camera-container" style="margin-left:-$marginleft$;margin-top:-$margintop$; height: $height$; width: $width$; display: flex; align-items: center; flex-direction: column; justify-content: center; background: #848484a3;"> <div style="overflow: hidden;max-width: 80%;overflow-y: scroll;"><img style="width: 100%; border-radius: 5px;" id="imgPreview" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0BAMAAAA5+MK5AAAAG1BMVEX09PTh4eHl5eXo6Ojy8vLq6urs7Ozw8PDu7u5TsDcvAAAH+0lEQVR42uzVMWpCQRQF0FeEJO37IZ+0cQdqoaWNYq9Y6w5EFKxduYtwBmbwnB1cLpcbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC86uO+m0+aND9co6btLNs1LFdRze0/m/Z7jkrW2bqfStk32b5xFRV8TbMDi6jgkT0YjlHcZ/ZhjOJO2Yn9u5aeOb5t6ZmF1/6d/fiLoi7Zj+EcJXXx6U927uCpaSCK4/gTQtvjvnaLXjt2Zj2CMJZj7TgOV8QRj6AOXgv4BxDHQf9sqTOdZ4Cy2d1s+G2a7xUOhE/eJoFNl+2s5yJX+UI345TqT9dzfa94jc/AH1bvNl7XUa902Dc5rQZUWRecWPN1XeWYT9fzhqbSm5qseNXcQ+w1/5+miure+csfZFfM0vMoj20fCbPsKMbDW6d4kwjajKXtGIf+glDrxTj0rcIUodZlaRjj0DXBFvvQFaGWjSIf+phgW98TvlVvZ71Vb2e9VW9nvVVvZ71Vb2e9VW9nvVVvZ/2xDeM3539+UPkSU9e0osPjES96+XlKJWuGevZVvmXwjcqVmLoqs3X4hErVBPXurt/+5LTUteV/Pg7/nmqC+k++V/+aSpSWuir5XshwStaSV5dBL7RP9tJS13S3S+83cFJX74744QxZS0tdWdBdNignrr5AB2Gve9ZnvLKBbZFPXH03ZAtXWuqKCnVCtqqmrZ4H7ddMS70469kuM8oZX7N6hxnnjK931mdBb2IkrX4WtkM5LXVd/EWHvImRtHqHGWjYa531jaA3MZJWv+DbYK7stc76ETPOOlebutzAw9zU1DnrGVtTtLqU1XtsybaHPC11Xby2AV3dalXfZGtD8uw3nrpyO/QB+dXrz6HVN9han/zKeQKnrkl6Fu3Qe8z9ObL6W7Y39URnNmjqyvEFZ1905sEcWP0i1sdG5LzIgKlrxxPeG30x7bjqMZY5QWeeYKkrt4vbwA99yQ6rHumWJudlBkpdx76RFfTFIo+qvhXl8SVnySCpK8eHVj90mXZQ9S5b017o0gRIvXAsI7a144ku046pHuPPkjkXMzjqqvhz2pr7osu0Y6rP2FLfF10yMOq6+AVL2/7owg6p3mVLY290yaCoK3JZ504D0IUdUd36xD71R5cMiLomh2HfDkIXdkR1y96CcQi6NMFQVy4fwncdhi7sgOqPn/HDMHTJQKhrKr9xbj8UXe7kAdXp0vKx1SHokkFQV+WtTDi6/BYB1VcvdP3rYHTJAKjr0p8s/KoKdGEHVKcvEdEl8/Tq6r7XKOakCzugOl1Zrkch6JJ5cnVN98rO/J/ZBN3ODqgu7zdKE6oMXdjhZv22zoiLHVB16MIOqE70vuh+MK0OXTJ4s76o94GF54QqRRd2RHWi7GYJ/+YXUZXokgGc9X9lh+fHe5++vyOqGl3YIdUDyrlsBnHWpRjowt4s9ZzLZzBnPSa6sDdJPWeXTINmXdBLsjdHPWe3TGNmXdBLszdFPWfXTENmXdAd2JuhnrN7phGzLuhO7E1Qz9kn04BZF3RH9vTVc/bLJD/rgu7Mnrr6X/buGLVhIIjCsIuwqScEnBvkGkqTe2wTUuoKvnkgEH7sqNAuHmv27bwDCImPHzUSC3oz++Ctg97BPrY66B3sQ7cOehf7yOqgd7EP3DronezjqoPeyR659cUFHfa46uXdBR32uK1XW13QYY+qXszOLuiwR229mtnqgc7WmOrFDPa7orO3mK1XXO6OTu0R1YsZ7A7oXJ49xWi9kqMDOrXHUy+4eKBTe7zWKy4u6NQeTb0YObqgwx6t9Xrl4oDOlljqoMN+X3S2xmoddG7OCd1itQ467F7otoRqHXTYPdDjtQ467G7otkRqHXSDHXRhddBh30BXbP0/Ou920BXVQWewgy7YejXGVtBl1UFnsIMu2DroG7WDbnrqoDPYL8bkWgf9dusfuqg66Az2izG51kHfYL9GF1MHncF+g67VOugbe7HfaaoXa5hW69X2T0u9DV2q9X3oiupt6FKtt6ErqbeiC7W+F11PvRVdqPVWdB31dnSZ1vejq6m3o8u03o6uot6DLtJ6C7qWeg+6SOs96BrqfegSrbehK6n3oUu03oeuoN6LLtB6K7qOei+6QOu96OOrH47+2NZDoT9WPRT6Rutxzmnd3vDqH3b4lsDntN4s1YdvPdijz6uerc+onq3PqJ6tz6ierc+onq3PqJ6tz6ierc+onq3PqJ6tz6ierc+onq3PqJ6tz6ierc+onq3PqO7feqyvKtaD1D+/jt73cvh/bhGGusU+FaB5x5+6/3qKulTP1lM9W0/1bD3Vs/VUz9ZTPVtP9Wz9FHVP3urnU9Q9ezx6MfbDzh2rRBADYRz/wOO8diLGrUV7dQstF0GwVPABFmwsFzmOK4978rurUi+bwIT8f0+QMElmhsBEeVVklWtLwiCn3ktsfWOW/Min1bclXYlbZGErj1b/Zsld1rSR9B69mBXJQ89WmSfN5Gs67hKjFvH1uTbPoFyurC43msvXJOwFYtbOoCoPUqvv3Ji1SKxJ1mJ7YzXpdNZmUfMlNXriwyQ1euI7nbX5xo+6aLGqiVKrYR+lRsMeld/RahAOyu+6itz+qhLWFTQxcVARH+bd7aRCds7j/jipmM/e/Apvg0ra//b3LvV/kwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACc2oNDAgAAAABB/197wggAAAAwCf/UoxkfDe2dAAAAAElFTkSuQmCC"/></div> <input type="file" id="imageBrowser" accept="image/*" style="width: 0px; height: 0px; overflow: hidden;"> <div> <button class="btn btn-success button button-balanced" id="cronapiFileBrowserOK" style="position: absolute; z-index: 999999999; bottom: 5px; left: calc(50% - 52px);"> <span class="glyphicon glyphicon-ok icon ion-checkmark-round"></span> <span class="sr-only">{{"Upload.camera" | translate}}</span> </button> <button class="btn btn-danger button button-assertive button-cancel-capture" id="cronapiFileBrowserCancel" style="position: absolute; z-index: 999999999; bottom: 5px; right: calc(50% - 52px); margin-right: -5px;"> <span class="glyphicon glyphicon-remove icon ion-android-close"></span> <span class="sr-only">{{"Cancel" | translate}}</span> </button> <div> </div>';r=r.split("$height$").join(n.height+"px").split("$width$").join(n.width+"px").split("$marginleft$").join(a+"px").split("$margintop$").join(o+"px");var s=$(r);s.prependTo("body"),s.find("#cronapiFileBrowserCancel").on("click",function(){t.errorCallback&&t.errorCallback("Operação cancelada"),$(s).remove()}.bind(this)),s.find("#cronapiFileBrowserOK").on("click",function(){cronapi.internal.getPictureSuccess(t,n.width,n.height,!0),$(s).remove()}.bind(this)),s.find("#imgPreview").on("touchend click",(function(t){"touchend"==t.type&&$(this).off("click"),$("#imageBrowser").trigger("click")})),s.find("#imageBrowser").on("change",(function(){if($("img#imgPreview").attr("src",""),"undefined"!=typeof FileReader){var t=new FileReader;t.onload=function(t){$("img#imgPreview").attr("src",t.target.result)},t.readAsDataURL($(this)[0].files[0])}}))},this.cronapi.internal.getPictureSuccess=function(t,n,a,o){if(t.successCallback)if(o){var r=document.getElementById("imageBrowser").files[0];if(r){var s=new FileReader;s.onload=function(n){var a=n.target.result;t.successCallback(a)},s.readAsDataURL(r)}else t.successCallback(null)}else{var c=document.createElement("canvas");c.width=n,c.height=a;var l=c.getContext("2d"),p=document.getElementById("cronapiFileBrowser");l.drawImage(p,0,0,n,a);let o="data:image/jpeg;base64, "+c.toDataURL().substr(22);t.successCallback(o)}},this.cronapi.internal.downloadFileEntityMobile=function(t,n,a,o){var r,s,c=null;if(a)r=t.data[a][n],s=t.data[a];else try{r=t.active[n],s=t.active}catch(a){r=t[n],s=t}try{c=JSON.parse(r)}catch(t){}if(c){var l=this.cronapi.internal.getAddressWithHostApp("/api/cronapi/filePreview/");window.open(l+c.path,"_system")}else if(r.startsWith("https://")||r.startsWith("http://"))window.open(r,"_system");else if(t.isOData())cronapi.internal.makeDownloadFromBytes(r,o);else{var p="/api/cronapi/downloadFile",u=t.entity.split("/"),d=u[u.length-1];if(d.indexOf(":")>-1){for(var h="",f=u[3].split("."),g=0;g<f.length-1;g++)h+=f[g]+".";var m=d.split(":");d=h+m[m.length-1]}p+="/"+d,p+="/"+n;var w=s,y=t.getKeyValues(w),b=0;for(var $ in y)p=0==b?p+"/"+w[$]:p+":"+w[$],b++;l=this.cronapi.internal.getAddressWithHostApp(p);window.open(l,"_system")}},this.cronapi.internal.captureFromCamera=function(t,n,a){var o=document.createElement("canvas");o.width=n,o.height=a;var r=o.getContext("2d"),s=document.getElementById("cronapiVideoCapture");r.drawImage(s,0,0,n,a);var c=o.toDataURL().substr(22);this.cronapi.screen.changeValueOfField(t,c)},this.cronapi.internal.qrCodeScanner=function(t,n,a){let o,r;navigator.mediaDevices.getUserMedia({audio:!1,video:!0}).then((s=>{switch(a.formats){case"AZTEC":r=new ZXing.BrowserAztecCodeReader;break;case"DATA_MATRIX":r=new ZXing.BrowserDatamatrixCodeReader;break;case"QR_CODE":r=new ZXing.BrowserQRCodeReader;break;case"PDF_417":r=new ZXing.BrowserPDF417Reader;break;default:r=new ZXing.BrowserMultiFormatReader}a.formats&&-1!="UPC_A|UPC_E|EAN_8|EAN_13|CODE_39|CODE_128|ITF|RSS14|RSS_EXPANDED".indexOf(a.formats)&&(r=new ZXing.BrowserBarcodeReader),r.listVideoInputDevices().then((n=>{o=n[0].deviceId;let a=$('<div style="position: fixed; display: flex; width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; background-color:\n rgb(0 0 0 / 72%); z-index: 9999999; cursor: pointer; justify-content: center; align-items: center;">\n <div style="position: absolute">\n <div class="row" style="position: absolute; bottom 50px; z-index: 999999999;">\n <div class="col-xs-8">\n <select style="width: 100%; position: absolute; bottom: 10px; left: 0; z-index: 999999999;" id="videoSource"></select>\n </div>\n <div class="col-xs-2">\n <button class="btn btn-danger button button-dark" id="cronapiBarCodeChangeCam" >\n <span class="glyphicon glyphicon-remove icon ion ion-ios-reverse-camera"></span>\n <span class="sr-only">{{"ChangeCam" | translate}}</span>\n </button>\n </div>\n <div class="col-xs-2">\n <button class="btn btn-danger button button-assertive" id="cronapiBarCodeCancel" >\n <span class="glyphicon glyphicon-remove icon ion-android-close"></span>\n <span class="sr-only">{{"Cancel" | translate}}</span>\n </button>\n </div>\n </div>\n <video id="video" style="width: 100%; max-width: 600px; border-radius: 5px;"></video>\n </div>\n </div>');a.prependTo("body"),n.map(((t,n)=>{if("videoinput"===t.kind){let a=document.createElement("option");a.value=t.deviceId,a.text=t.label||"Câmera "+(n+1),0===n&&(a.selected=!0),document.querySelector("select#videoSource").appendChild(a)}})),a.find("#cronapiBarCodeCancel").on("click",(()=>{$(a).remove(),r.reset()}).bind(this)),a.find("#cronapiBarCodeChangeCam").on("click",(()=>{let t=$("#videoSource").prop("selectedIndex");t<$("#videoSource option").length-1?$("#videoSource").prop("selectedIndex",t+1):$("#videoSource").prop("selectedIndex",0),$("#videoSource").trigger("change")}).bind(this)),a.find("#videoSource").on("change",(()=>{r.decodeOnceFromVideoDevice($("#videoSource").val(),"video").then((n=>{n&&(t(n.text),$(a).remove(),r.reset())}))}).bind(this)),r.decodeOnceFromVideoDevice(o,"video").then((n=>{n&&(t(n.text),$(a).remove(),r.reset())}))})).catch((t=>{n(t),r.reset()}))})).catch((function(t){n(t)}))},this.cronapi.internal.castBinaryStringToByteArray=function(t){for(var n=t.length,a=new Uint8Array(n),o=0;o<n;o++)a[o]=t.charCodeAt(o);return a},this.cronapi.internal.castBase64ToByteArray=function(t){var n=window.atob(t);return this.cronapi.internal.castBinaryStringToByteArray(n)},this.cronapi.internal.castByteArrayToString=function(t){return String.fromCharCode.apply(null,new Uint16Array(t))},this.cronapi.internal.generatePreviewDescriptionByte=function(data,fileInfo){var json;let fileInfoContent=eval(fileInfo);try{json=fileInfoContent?JSON.parse(fileInfoContent):JSON.parse(data)}catch(e){try{json=JSON.parse(window.atob(data))}catch(e){if(data&&data.match(/__odataFile_/g)){var file=eval(data);json=cronapi.internal.getJsonDescriptionFromFile(file)}else if(data&&(data.startsWith("http://")||data.startsWith("https://"))){json={};var urlSplited=data.split("/"),fullName=urlSplited[urlSplited.length-1].replace("?dl=0",""),fullNameSplited=fullName.split("."),extension="."+fullNameSplited[fullNameSplited.length-1];json.fileExtension=extension,json.name=fullName.replace(extension,""),json.contentType="file/"+extension.replace(".","")}else if(data&&this.cronapi.internal.isBase64(data)){var fileName="download",fileExtesion=this.cronapi.internal.getExtensionBase64(data),contentType=this.cronapi.internal.getContentTypeFromExtension(fileExtesion);fileName+=fileExtesion,json={},json.fileExtension=fileExtesion,json.name=fileName,json.contentType=contentType}}}if(json){json.name.length>25&&(json.name=json.name.substr(0,22)+"...");var result=("pt_br"==this.cronapi.$translate.use()?"<b>Nome:</b> <br/>":"<b>Name:</b> <br/>")+(void 0!==json.contentType?json.name+"<br/>":"");return result+=void 0!==json.contentType?"<b>Content-Type:</b> <br/>"+json.contentType+"<br/>":"",result+=""!==json.fileExtension?"pt_br"==this.cronapi.$translate.use()?"<b>Extensão:</b> <br/>"+json.fileExtension+"<br/>":"<b>Extension:</b> <br/>"+json.fileExtension+"<br/>":"",result}},this.cronapi.internal.getContentTypeFromExtension=function(t){if(t)switch(t.toLowerCase()){case".png":return"image/png";case".jpg":return"image/jpeg";case".mp4":return"video/mp4";case".pdf":return"application/pdf";case".ico":return"image/vnd.microsoft.icon";case".rar":return"application/x-rar-compressed";case".rtf":return"application/rtf";case".txt":return"text/plain";case".zip":return"application/zip";case".srt":return"text/srt";default:return"unknown"}},this.cronapi.internal.getExtensionBase64=function(t){if(t)switch(t.substr(0,5).toLocaleUpperCase()){case"IVBOR":return".png";case"/9J/4":return".jpg";case"AAAAF":return".mp4";case"JVBER":return".pdf";case"AAABA":return".ico";case"UMFYI":return".rar";case"E1XYD":return".rtf";case"U1PKC":return".txt";case"UESDB":return".zip";case"MQOWM":case"77U/M":return".srt";default:return""}return""},this.cronapi.internal.isBase64=function(t){try{return btoa(atob(t))==t}catch(t){return!1}},this.cronapi.internal.downloadUrl=function(t,n){let a=document.createElement("a");a.setAttribute("href",t),a.setAttribute("download",n);let o=document.createEvent("MouseEvents");o.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,0,null),a.dispatchEvent(o)},this.cronapi.internal.makeDownloadFromBytes=function(valueContent,fileInfo){var urlCreator=window.URL||window.webkitURL||window.mozURL||window.msURL,bytesOrFileInput,fileName="download";if(valueContent.match(/__odataFile_/g))bytesOrFileInput=eval(valueContent),fileName=bytesOrFileInput.name;else{fileName+=cronapi.internal.getExtensionBase64(valueContent);try{valueContent=window.atob(valueContent)}catch(t){}bytesOrFileInput=cronapi.internal.castBinaryStringToByteArray(valueContent)}let fileInfoDescription=eval(fileInfo);if(fileInfoDescription){let t=JSON.parse(fileInfoDescription);fileName=t.name}var url=urlCreator.createObjectURL(new Blob([bytesOrFileInput],{type:"application/octet-stream"}));cronapi.internal.downloadUrl(url,fileName)},this.cronapi.internal.downloadFileEntity=function(t,n,a,o){var r,s,c=null;if(a)r=t.data[a][n],s=t.data[a];else try{r=t.active[n],s=t.active}catch(a){r=t[n],s=t}try{c=JSON.parse(r)}catch(t){}if(c)window.open("/api/cronapi/filePreview/"+c.path);else if(r.startsWith("https://")||r.startsWith("http://"))window.open(r);else if(t.isOData())cronapi.internal.makeDownloadFromBytes(r,o);else{var l="/api/cronapi/downloadFile",p=t.entity.split("/"),u=p[p.length-1];if(u.indexOf(":")>-1){for(var d="",h=p[3].split("."),f=0;f<h.length-1;f++)d+=h[f]+".";var g=u.split(":");u=d+g[g.length-1]}l+="/"+u,l+="/"+n;JSON.parse(localStorage.getItem("_u"));var m=s,w=this.cronapi.internal.getAddressWithHostApp(l);let a=window.isUsingCookie()?{"Content-Type":"application/json"}:{"Content-Type":"application/json","X-AUTH-TOKEN":this.cronapi.util.getUserToken()};this.$promise=this.cronapi.$scope.$http({method:"POST",url:w,data:m?JSON.stringify(m):null,responseType:"blob",headers:a}).then(function(t,n,a,o){a=(a=a||t.headers)(),t=this.cronapi.getRequestData(t);var r=a["x-filename"]||"download.bin",s=window.URL||window.webkitURL||window.mozURL||window.msURL;try{var c=s.createObjectURL(t);cronapi.internal.downloadUrl(c,r)}catch(t){console.log("Error downloading file"),console.log(t)}}.bind(this)).catch(function(t,n,a,o){console.log("Error downloading file")}.bind(this))}},this.cronapi.internal.uploadFileAjax=function(t,n,a){var o=new FormData;o.append("file",n);JSON.parse(localStorage.getItem("_u"));var r=this.cronapi.internal.getAddressWithHostApp("/api/cronapi/uploadFile");let s=window.isUsingCookie()?{"Content-Type":void 0}:{"Content-Type":void 0,"X-AUTH-TOKEN":this.cronapi.util.getUserToken()};this.$promise=this.cronapi.$scope.$http({method:"POST",url:r,data:o,headers:s,onProgress:function(t){if(t.lengthComputable){var n=t.loaded/t.total*100|0,o=$("#"+a);if(o.length>0)if("bootstrapProgress"==o.data("type"))n<100?(o.show(),o.find(".progress-bar").css("width",n+"%")):(o.hide(),o.find(".progress-bar").css("width","0%"));else{var r=document.getElementById(a);r.value=r.innerHTML=n}}}}).then(function(n,a,o,r){n=this.cronapi.getRequestData(n),this.cronapi.screen.changeValueOfField(t,n.jsonString)}.bind(this)).catch(function(t,n,a,o){alert("Error uploading file")}.bind(this))},this.cronapi.internal.getFieldFromActiveString=function(t){return/.active.([a-zA-Z0-9_-]*)/g.exec(t)[1]},this.cronapi.internal.getJsonDescriptionFromFile=function(t){let n={};if(t){let a=t.name.split("."),o="."+a[a.length-1];n.fileExtension=o,n.name=t.name,n.contentType=t.type||"unknown"}return n},this.cronapi.internal.uploadFile=function(field,file,progressId,fileInfo,errorFile){if(errorFile&&errorFile.length&&errorFile[0].$errorMessages&&errorFile[0].$errorMessages.maxSize){let t=this.cronapi.$translate.instant("maxFileSize");showErrorNotification.bind(this)(`${t} ${errorFile[0].$errorParam}`)}if(file){var regexForDatasource=/(.*?).active./g,groupDatasource=regexForDatasource.exec(field);if(groupDatasource){var datasource=eval(groupDatasource[1]);if(datasource.isOData()){let t=cronapi.internal.getFieldFromActiveString(field),n=datasource.getFieldSchema(t);if(n&&"Binary"==n.type){if(datasource.active["__odataFile_"+t]=file,datasource.active[t]=datasource.name+".active.__odataFile_"+t,fileInfo){let t=cronapi.internal.getJsonDescriptionFromFile(file),n=cronapi.internal.getFieldFromActiveString(fileInfo);datasource.active[n]=JSON.stringify(t)}return}}}this.cronapi.internal.uploadFileAjax(field,file,progressId)}},this.cronapi.object={},this.cronapi.object.getProperty=function(t,n){t||(t={});var a=n.split(".");if(a.length>1){var o=function(t,n,a){return a||(a=0),void 0===t[n[a]]&&(t[n[a]]={}),++a<n.length?o(t[n[a-1]],n,a):t[n[a-1]]};return o(t,a,0)}return t[n]},this.cronapi.object.setProperty=function(t,n,a){var o=n.split(".");if(o.length>1){var r=function(t,n,a,o){o||(o=0),void 0===t[n[o]]&&(t[n[o]]={}),++o<n.length?r(t[n[o-1]],n,a,o):t[n[o-1]]=a};r(t,o,a,0)}else t[n]=a},this.cronapi.object.createObjectFromString=function(t){return JSON.parse(t)},this.cronapi.object.createObjectLoginFromString=function(t,n){let a={};return a.username=t,a.password=n,JSON.parse(JSON.stringify(a))},this.cronapi.object.serializeObject=function(t){return JSON.stringify(t)},this.cronapi.object.deleteProperty=function(t,n){delete t[n]},this.cronapi.object.newObject=function(){var t={};if(arguments&&arguments.length>0)for(var n=0;n<arguments.length;n++){var a=arguments[n];a.name&&(t[a.name]=a.value)}return t},this.cronapi.object.getObjectField=function(t,n){var a=void 0;return t&&n&&(a=t[n]),a},this.cronapi.json={},this.cronapi.json.createObjectFromString=function(t){return this.cronapi.object.createObjectFromString(t)},this.cronapi.json.setProperty=function(t,n,a){this.cronapi.object.setProperty(t,n,a)},this.cronapi.json.deleteProperty=function(t,n){this.cronapi.object.deleteProperty(t,n)},this.cronapi.json.getProperty=function(t,n){return this.cronapi.object.getProperty(t,n)},this.cronapi.cordova={},this.cronapi.cordova.vibrate=function(t){navigator.vibrate(t)},this.cronapi.cordova.device={},this.cronapi.cordova.device.getFirebaseToken=function(t,n){document.addEventListener("deviceready",(function(){try{window.FirebasePlugin.getToken(cronapi.util.handleCallback(t),cronapi.util.handleCallback(n))}catch(t){console.error(t),n(t)}}),!1)},this.cronapi.cordova.device.getFirebaseNotificationData=function(t,n){document.addEventListener("deviceready",(function(){try{window.FirebasePlugin.onMessageReceived((function(n){t(n)}),(function(t){n(t)}))}catch(t){console.warn(t)}try{window.FirebasePlugin.onNotificationOpen((function(n){t(n)}),(function(t){n(t)}))}catch(t){console.warn(t)}}),!1)},this.cronapi.cordova.device.getDeviceInfo=function(t){return window.device[t]},this.cronapi.cordova.geolocation={},this.cronapi.cordova.geolocation.getCurrentPosition=function(t,n){navigator.geolocation.getCurrentPosition(this.cronapi.util.handleCallback(t),this.cronapi.util.handleCallback(n))},this.cronapi.cordova.geolocation.watchPosition=function(t,n,a,o,r){return navigator.geolocation.watchPosition(this.cronapi.util.handleCallback(t),this.cronapi.util.handleCallback(n),{maximumAge:a,timeout:o,enableHighAccuracy:r})},this.cronapi.cordova.geolocation.clearWatchPosition=function(t){navigator.geolocation.clearWatch(t)},this.cronapi.cordova.camera={},this.cronapi.cordova.camera.startPreview=async function(t,n,a){t=1===t||"1"===t?CameraPreview.CAMERA_DIRECTION.FRONT:CameraPreview.CAMERA_DIRECTION.BACK,n=n||{};let o=0,r=0,s=window.screen.width,c=window.screen.height;if(a){let t=$(`#${a}`);t.length&&(s=t[0].getBoundingClientRect().width,c=t[0].getBoundingClientRect().height,o=t[0].getBoundingClientRect().x,r=t[0].getBoundingClientRect().y)}let l={x:o,y:r,width:s,height:c,camera:t,toBack:!1,tapPhoto:!1,tapFocus:!1,previewDrag:!1,storeToFile:!1,disableExifHeaderStripping:!1,...n};return new Promise(((t,n)=>{CameraPreview.startCamera(l,(()=>{t()}),(t=>{n(t)}))}))},this.cronapi.cordova.camera.stopPreview=async function(){return new Promise(((t,n)=>{CameraPreview.stopCamera((()=>{t()}),(t=>{n(t)}))}))},this.cronapi.cordova.camera.takeSnapshot=async function(t){t=t||{};let n={quality:85,...t};return new Promise(((t,a)=>{CameraPreview.takeSnapshot(n,(n=>{t("data:image/jpeg;base64,"+n)}),(t=>{a(t)}))}))},this.cronapi.cordova.camera.getPicture=function(t,n,a,o,r,s,c,l){null==r&&(r=0),s=!0===s||"true"===s,c=!0===c||"true"===c,l=1===l||"1"===l?1:0;let p={destinationType:Number(a),sourceType:Number(o),mediaType:Number(r),allowEdit:s,quality:c?50:100,encodingType:c?0:1,correctOrientation:!0,cameraDirection:l};if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId){let o=async n=>{n.startsWith("file://")?n=Ionic.WebView.convertFileSrc(n):n&&!n.startsWith("data:image")&&(n="data:image/jpeg;base64, "+n),!t||t(n)};const c=t=>new Promise(((n,a)=>{window.resolveLocalFileSystemURL(t,(t=>{t.file((t=>{const a=new FileReader;a.onloadend=()=>{const t=a.result;n(t)},a.readAsDataURL(t)}),(t=>a(t)))}))}));s&&0===Number(r)?navigator.camera.getPicture((t=>plugins.ratioCrop((t=>{Number(a)===Camera.DestinationType.FILE_URI?o(t):c(t).then(this.cronapi.util.handleCallback(o)).catch(this.cronapi.util.handleCallback(n))}),this.cronapi.util.handleCallback(n),t,{})),this.cronapi.util.handleCallback(n),{...p,destinationType:Camera.DestinationType.FILE_URI,allowEdit:!1}):navigator.camera.getPicture(this.cronapi.util.handleCallback(o),this.cronapi.util.handleCallback(n),p)}else p.allowEdit=s,p.successCallback=t,p.errorCallback=n,p.targetWidth=640,p.targetHeight=480,this.cronapi.internal.getPicture(p)},this.cronapi.cordova.camera.qrCodeScanner=function(t,n,a,o){const r={preferFrontCamera:!1,showFlipCameraButton:!0,showTorchButton:!0,saveHistory:!0,prompt:n,resultDisplayDuration:500,orientation:"portrait",disableAnimations:!0,disableSuccessBeep:!1};"all"!==t&&(r.formats=t),window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId?cordova.plugins.barcodeScanner.scan((function(t){a(t.text)}),(function(t){"Scan is already in progress"!==t&&o(t)}),r):this.cronapi.internal.qrCodeScanner(a,o,r)},this.cronapi.cordova.file={},this.cronapi.cordova.file.getDirectory=function(t){var n;return"0"==t?n=cordova.file.dataDirectory:((n=cordova.file.externalApplicationStorageDirectory)||(n=cordova.file.externalDataDirectory),n||(n=cordova.file.syncedDataDirectory)),n},this.cronapi.cordova.file.removeFile=function(t,n,a){window.resolveLocalFileSystemURL(t,function(t){t.remove(function(t){n&&n(t)}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.readFile=function(t,n,a,o){window.resolveLocalFileSystemURL(t,function(t){t.file(function(t){var a=new FileReader;switch(a.onloadend=function(t){n(this.result)},o){case"ARRAYBUFFER":a.readAsArrayBuffer(t);break;case"TEXT":default:a.readAsText(t);break;case"BINARYSTRING":a.readAsBinaryString(t);break;case"DATAURL":a.readAsDataURL(t)}}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.createFile=function(t,n,a,o,r){t||getDirectory(0);window.resolveLocalFileSystemURL(t,function(s){console.log(t),s.getFile(n,{create:!0},function(t){t.createWriter(function(t){t.onwriteend=function(t){console.log('Write of file "'+n+'"" completed.')},t.onerror=function(t){console.log("Write failed: "+t.toString())};var r=new Blob([a],{type:"text/plain"});t.write(r),o&&setTimeout(function(){o()}.bind(this),500)}.bind(this),this.cronapi.util.handleCallback(r))}.bind(this),this.cronapi.util.handleCallback(r))}.bind(this),this.cronapi.util.handleCallback(r))},this.cronapi.cordova.file.createDirectory=function(t,n,a,o){window.resolveLocalFileSystemURL(t,function(t){t.getDirectory(n,{create:!0},function(t){a&&a(t.fullPath)}.bind(this),this.cronapi.util.handleCallback(o))}.bind(this),this.cronapi.util.handleCallback(o))},this.cronapi.cordova.storage={},this.cronapi.cordova.storage.setStorageItem=function(t,n){var a=window.localStorage;a?a.setItem(t,n):console.error("Local Storage not Found!")},this.cronapi.cordova.storage.getStorageItem=function(t){var n=window.localStorage;if(n)return n.getItem(t);console.error("Local Storage not Found!")},this.cronapi.cordova.storage.removeStorageItem=function(t){var n=window.localStorage;n?n.removeItem(t):console.error("Local Storage not Found!")},this.cronapi.cordova.connection={},this.cronapi.cordova.connection.getConnection=function(){return navigator.connection.type},this.cronapi.cordova.connection.verifyConnection=function(t){return navigator.connection.type==t},this.cronapi.cordova.database={},this.cronapi.cordova.database.DatabaseModule=class{constructor(){this.DEFAULT_DATABASE_NAME="cronappDB"}connect(t=this.DEFAULT_DATABASE_NAME){let n=window.openDatabase;if(window.sqlitePlugin&&(n=window.sqlitePlugin.openDatabase),void 0===n)throw"Sem suporte para SQLDatabase!";return n(t,"1.0",t,1e6)}async executeSQL(t=this.DEFAULT_DATABASE_NAME,n="",a=[]){const o=this.connect(t);try{const t=n.trim().split(";").filter((t=>t||null));return this.handleExecuteTransaction(o,t,a)}catch(t){throw console.log(t),t}}extractSQLResult(t){return t._array?t._array:t}async handleExecuteSQL(t,n,a){return new Promise(((o,r)=>{t.executeSql(n,a,((t,n)=>{try{o(n.rows)}catch(t){r(t)}}))}))}async handleExecuteTransaction(t,n,a){return new Promise(((o,r)=>{try{t.transaction((async t=>{let r;for(let o of n)r=await this.handleExecuteSQL(t,o,a);o(this.extractSQLResult(r))}))}catch(t){r(t)}}))}},this.cronapi.cordova.database.openDatabase=function(t){return(new this.cronapi.cordova.database.DatabaseModule).connect(t)},this.cronapi.cordova.database.executeSQL=async function(t,n,a){return(new this.cronapi.cordova.database.DatabaseModule).executeSQL(t,n,a)},this.cronapi.cordova.database.executeSql=function(t,n,a,o,r){this.cronapi.cordova.database.openDatabase(t).transaction(function(t){t.executeSql(n,a,function(t,n){o.call(this,Object.values(n.rows))}.bind(this))}.bind(this),function(t){console.log(t),r(t)}.bind(this))},this.cronapi.cordova.database.executeMultipleSql=function(t,n,a,o){var r=this.cronapi.cordova.database.openDatabase(t);let s=[],c=n.split(";");for(let t in c){let n=c[t];if(!n)break;let a=new Promise(((t,a)=>{r.transaction(function(o){o.executeSql(n.trim(),[],function(n,a){t(a)}.bind(this),function(t,n){a(n)}.bind(this))}.bind(this))}));s.push(a)}Promise.all(s).then(function(t){a(t)}.bind(this)).catch(function(t){o(t)}.bind(this))},this.cronapi.event={},this.cronapi.event.contextMenu=function(t,n,a,o){var r="#ulKendoContextMenu";$(r).kendoMenu();var s=$(r).data("kendoMenu");s&&s.destroy();let c=$("body"),l=$('<ul id="ulKendoContextMenu"></ul>');c.append(l);let p={target:"#"+t,animation:{open:{effects:n},duration:500}};"left"===a&&(p.showOn="click"),p.dataSource=Array.isArray(o)?o:[o],$("#ulKendoContextMenu").kendoContextMenu(p)},this.cronapi.event.itemContextMenu=function(t,n,a,o){let r={text:t};return o&&(r.items=Array.isArray(o)?o:[o]),o||(r.select=a),n&&(r.cssClass=n),r},this.cronapi.event.changeValueAccordion=function(t,n,a){switch(n){case"collapseAll":$("#"+t+" .panel-collapse").data("bs.collapse",null),$("#"+t+" .panel-collapse").collapse("hide");break;case"expandAll":$("#"+t+" .panel-collapse").data("bs.collapse",null),$("#"+t+" .panel-collapse").collapse("show");break;case"collapseOne":setTimeout((function(){$("#"+a).filter("[aria-expanded=true]").trigger("click")}),500);break;case"expandOne":setTimeout((function(){$("#"+a).filter("[aria-expanded=false]").trigger("click")}),500)}},this.cronapi.event.changeInnerTextButton=function(t,n){let a=`#${t} button span`;"BUTTON"===$(`#${t}`).prop("tagName")&&(a=`#${t} span`),$(a).text(n)},this.cronapi.cordova.database.openInAppBrowser=function(t){cordova.InAppBrowser&&cordova.InAppBrowser.open(t,"_blank","location=no")},this.cronapi.cordova.util={},this.cronapi.cordova.util.fingerPrintRead=function(t,n){if(Fingerprint){function a(){Fingerprint.show({},o,r)}function o(){t(0)}function r(t){n(-1)}function s(){n(-2)}Fingerprint.isAvailable(a,s)}else n(-2)},this.cronapi.internal.ptDate=function(t){var n=t[1],a=t[2],o=t[3],r=t[5],s=t[6],c=t[7];return r?new Date(o,a-1,n,r,s,c):new Date(o,a-1,n,0,0,0)},this.cronapi.internal.enDate=function(t){var n=t[1],a=t[2],o=t[3],r=t[5],s=t[6],c=t[7];return r?new Date(o,n-1,a,r,s,c):new Date(o,n-1,a,0,0,0)},this.cronapi.internal.parseBoolean=function(t){return!!t&&("boolean"==typeof t?t:"1"==(t=t.toString().toLowerCase().trim())||"true"==t)},this.cronapi.internal.removeAccents=function(t){var n="áàãâäéèêëíìîïóòõôöúùûüçÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÖÔÚÙÛÜÇ",a="";for(i=0;i<t.length;i++)n.search(t.substr(i,1))>=0?a+="aaaaaeeeeiiiiooooouuuucAAAAAEEEEIIIIOOOOOUUUUC".substr(n.search(t.substr(i,1)),1):a+=t.substr(i,1);return a},this.cronapi.internal.arrayRemove=function(t,n){var a=this.cronapi.internal.arrayIndexOf(t,n);-1!=a&&t.splice(a,1)},this.cronapi.internal.arrayIndexOf=function(t,n){var a=-1;return $(t).each((function(t){n==this&&(a=t)})),a},this.cronapi.internal.replaceAll=function(t,n,a){return t.toString().split(n).join(a)},this.cronapi.internal.getWindowHeight=function(){$(window).height()},this.cronapi.internal.getWindowWidth=function(){$(window).width()},this.cronapi.internal.getAddressWithHostApp=function(t){var n=window.hostApp||"";if(n=n.endsWith("/")?n.substr(0,n.length-1):n,t){var a=t.startsWith("/")?t.substr(1):t;n=""===n?a:n+"/"+a}return n},this.cronapi.internal.Url={encode:function(t){return t?escape(this.cronapi.internal.Url._utf8_encode(t)):""},decode:function(t){return t?this.cronapi.internal.Url._utf8_decode(unescape(t)):""},_utf8_encode:function(t){t=t.replace(/\r\n/g,"\n");for(var n="",a=0;a<t.length;a++){var o=t.charCodeAt(a);o<128?n+=String.fromCharCode(o):o>127&&o<2048?(n+=String.fromCharCode(o>>6|192),n+=String.fromCharCode(63&o|128)):(n+=String.fromCharCode(o>>12|224),n+=String.fromCharCode(o>>6&63|128),n+=String.fromCharCode(63&o|128))}return n},_utf8_decode:function(t){for(var n="",a=0,o=c1=c2=0;a<t.length;)(o=t.charCodeAt(a))<128?(n+=String.fromCharCode(o),a++):o>191&&o<224?(c2=t.charCodeAt(a+1),n+=String.fromCharCode((31&o)<<6|63&c2),a+=2):(c2=t.charCodeAt(a+1),c3=t.charCodeAt(a+2),n+=String.fromCharCode((15&o)<<12|(63&c2)<<6|63&c3),a+=3);return n}},this.cronapi.internal.stringToJs=function(t){return(t+"").replace(/[\\"']/g,"\\$&").replace(/\u0000/g,"\\0")},this.cronapi.internal.getErrorMessage=function(t,n){try{var a=null;if("object"==typeof t?t.data&&("object"==typeof t.data?a=t.data:"string"==typeof t.data&&(a=JSON.parse(t.data))):"string"==typeof t&&(a=JSON.parse(t)),a&&a.error)return a.error}catch(t){}return n},this.cronapi.util.upload=function(t,n,a,o,r){this.UploadService.upload({description:n,id:t,filter:a,maxSize:o,multiple:r,scope:this})},this.cronapi.util.getBaseUrl=function(){return window.location.origin},this.cronapi.util.watchAcceleration=function(t){window.addEventListener("deviceorientation",(function(n){t({absolute:n.absolute,alpha:n.alpha,beta:n.beta,gamma:n.gamma})}),!1)},this.cronapi.chart={},this.cronapi.chart.createChart=function(t,n,a,o,r){let s;if("object"==typeof o)s=o;else try{s=JSON.parse(o)}catch(t){s={},console.log(t)}var c=s&&s.colors?s.colors:[],l=["#FF5C00","#0E53A7","#48DD00","#FFD500","#7309AA","#CD0074","#00AF64","#BF8230","#F16D95","#A65000","#A65000","#AF66D5"],p=0;function u(){return p<l.length?p++:p=0,p}function d(){""==m.data.datasets[0].label&&(null==m.options.legend?(m.options.legend={},m.options.legend.display=!1):m.options.legend.display=!1)}function h(t){var n=[],a=4;Array.isArray(t[4])&&"object"==typeof t[4][0]&&"label"in t[4][0]&&"data"in t[4][0]&&(t=t[4],a=0);for(;a<t.length;a++){let o=t[a].label?t[a].label:null,r=t[a].options?t[a].options:null,s=t[a].data?t[a].data:t[a];n.push(cronapi.chart.createDataset(o,s,r))}return n}function f(){null==m.options?(m.options={},m.options.scales={},m.options.scales.yAxes=[{ticks:{beginAtZero:!0}}]):null==m.options.scales&&(m.options.scales={},m.options.scales.yAxes=[{ticks:{beginAtZero:!0}}])}var g=document.getElementById(t);if(g){g._chart&&g._chart.destroy(),g.getContext("2d");var m={};switch(m.type=n,m.data=[],m.options=s,Array.isArray(a)?m.data.labels=a:m.data.labels=JSON.parse(a),m.data.datasets=[],n){case"line":m.data.datasets=h(arguments),$.each(m.data.datasets,(function(t,n){n.fill=!1,n.backgroundColor=c[t]?c[t]:l[u()],n.borderColor=n.backgroundColor,f(),d()}));break;case"bar":case"horizontalBar":m.data.datasets=h(arguments),$.each(m.data.datasets,(function(t,n){1===m.data.datasets.length&&c.length>1?n.backgroundColor=c:n.backgroundColor=c[t]?c[t]:l[u()],n.borderColor=n.backgroundColor})),f(),d();break;case"doughnut":case"pie":case"polarArea":var w=h(arguments);$.each(w,(function(t,n){var a={};(a=w[t]).backgroundColor=[],a.borderColor=[],$.each(a.data,(function(t,n){a.backgroundColor.push(c[t]?c[t]:l[u()])})),a.borderColor=a.backgroundColor,m.data.datasets.push(a),p=0}))}var y=new Chart(g,m);g._chart=y}},this.cronapi.chart.createDataset=function(t,n,a){let o;if("object"==typeof a)o=a;else try{o=JSON.parse(a)}catch(t){o={},console.log(t)}var r={options:o};return r.label=t||"",Array.isArray(n)?r.data=n:r.data=n?JSON.parse(n):[],r},this.cronapi.social={},this.cronapi.social.gup=function(t,n){n||(n=location.href),t=t.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a=new RegExp("[\\?&]"+t+"=([^&#]*)").exec(n);return null==a?null:a[1]},this.cronapi.social.login=function(t,n,a){this.cronapi.$scope.login(t,n,a)},this.cronapi.social.sociaLogin=function(t,n){var a=this,o=window.hostApp+"signin/"+t+"/";if(window.cordova&&cordova.InAppBrowser){var r="";!0!==n&&"true"!==n||(r=",clearcache=yes");var s=cordova.InAppBrowser.open(o,"_blank","location=no"+r);s.addEventListener("loadstart",(function(t){t.url.indexOf("_ctk")>-1&&(s.close(),a.cronapi.social.login.bind(a)("#OAUTH#","#OAUTH#",a.cronapi.social.gup("_ctk",t.url)))}))}else window.location.href="signin/"+t+"/"},this.cronapi.social.ssoLogin=async function(){let t=this.cronapi.$scope,n={method:"GET",url:this.cronapi.internal.getAddressWithHostApp("authproviders")},a=await this.$http(n);return new Promise(((n,o)=>{let r="login";if(a.data&&1==a.data.length&&(r=a.data[0].loginURL),window.cordova&&cordova.InAppBrowser){const a=cordova.InAppBrowser.open(this.cronapi.internal.getAddressWithHostApp(r),"_blank","location=no,footer=yes,zoom=no,enableViewportScale=yes,hidenavigationbuttons=yes"),s=r=>{const c=new URL(r.url),l=new URLSearchParams(c.search);l.has("_ctk")?(a.removeEventListener("loadstart",s),a.close(),t.loginWithToken(l.get("_ctk")),n()):o()};a.addEventListener("loadstart",s)}else window.location.href=this.cronapi.internal.getAddressWithHostApp(r)}))},this.cronapi.screen.getSelectedRowsGrid=function(t){var n=[],a=$('[ng-model="'+t+'"]').children().data("kendoGrid");a&&a.select().each((function(){var t=a.dataItem(this);n.push(t)}));return n},this.cronapi.screen.getSelectedRowsAdvancedList=function(t){var n=[],a=$('[ng-model="'+t+'"]');return a.length&&a.find("[crn-list-item].selected").each((function(){var t=angular.element(this).scope();t&&t.item&&n.push(t.item)})),n},this.cronapi.screen.back=function(){history.back()},this.cronapi.notification={},this.cronapi.notification.customNotify=function(t,n,a,o,r,s){let c="customNotification",l={stacking:"default",autoHideAfter:5e3,position:{pinned:!0},animation:{open:{effects:null},close:{effects:null}}};function p(t){if("bottom"===t)l.position.bottom=20,c=c.concat("-bottom");else l.position.top=60,c=c.concat("-top")}function u(t){switch(t){case"right":l.position.right=20,c=c.concat("-right");break;case"center":l.show=d,c=c.concat("-center");break;default:l.position.left=20,c=c.concat("-left")}}function d(t){if(1==t.sender.getNotifications().length){var n,a=t.element.parent().width(),o=$(window).width();n=Math.floor(o/2-a/2),t.element.parent().css({left:n})}}function h(t){switch(t){case"slide":l.show&&null!=l.position.bottom?(l.animation.open.effects="slideIn:up",c=c.concat("-slideIn-up")):l.show&&null!=l.position.top?(l.animation.open.effects="slideIn:down",c=c.concat("-slideIn-dow")):null!=l.position.left?(l.animation.open.effects="slideIn:right",c=c.concat("-slideIn-right")):null==l.position.left&&(l.animation.open.effects="slideIn:left",c=c.concat("-slideIn-left")),l.animation.close.effects="slideOut";break;case"zoom":l.animation.open.effects="zoomIn",l.animation.close.effects="zoomOut",c=c.concat("-zoom");break;default:l.animation.open.effects="fadeIn",l.animation.close.effects="fadeOut",c=c.concat("-fade")}}function f(t){"false"==t&&(l.autoHideAfter=0,c=c.concat("-autoHideAfter"))}async function g(t,n){if(!function(t){return document.getElementById(t)}(t)){let a=$(`<span id="${t}"></span>`);$("body").append(a),await $(`#${t}`).kendoNotification(n),"center"==r&&d(e)}}function m(t,n,a){$(`#${t}`).getKendoNotification().show(n,a)}a||o||r||s?async function(t,n,a,o,r,s){p(o),u(r),h(a),f(s),g(c,l),m(c,t,n)}(n,t,a,o,r,s):async function(t,n){let a={id:"CronappNotification",verticalPosition:"top",horizontalPosition:"left",animation:"slide",autoHide:"false"};p(a.verticalPosition),u(a.horizontalPosition),h(a.animation),f(a.autoHide),function(t){return $(`#${t}`).getKendoNotification()}(a.id)||g(a.id,l);m(a.id,t,n)}(n,t)},this.cronapi.notification.confirmDialogAlert=function(t,n,a,o){let r="cronapp-dialog-"+String(Math.random()).substring(2),s=$(`<div data-dialog-type="${t}" id="${r}"></div>`);$("body").append(s);const c=window.ionic&&window.cordova,l=`<div id="modalBodyConfirmDialog">\n <div class="icon">\n <div class="cronapp-icon cronapp-${t}">${(()=>{switch(t){case"error":return'<span class="cronapp-x-mark">\n <span class="cronapp-x-mark-line-left"></span>\n <span class="cronapp-x-mark-line-right"></span>\n </span>';case"success":return'<div class="cronapp-success-circular-line-left"></div>\n <span class="cronapp-success-line-tip"></span>\n <span class="cronapp-success-line-long"></span>\n <div class="cronapp-success-ring"></div>\n <div class="cronapp-success-fix"></div>\n <div class="cronapp-success-circular-line-right">\n </div>';case"info":return'<div class="cronapp-icon-content">i</div>';default:return'<div class="cronapp-icon-content">!</div>'}})()}</div>\n </div>\n <h2 class="title">${n}</h2> <h3 class="subtitle">${a}</h3>\n </div>`;let p={width:"450px",minWidth:300,maxWidth:()=>window.innerWidth-40,title:c&&n||!1,closable:!1,modal:!0,content:c?a:l,buttonLayout:c?"stretched":"normal",actions:[],close:()=>setTimeout((()=>s.data("kendoDialog").destroy()))};!function(t){let n=Array.isArray(t)?t:[t],a=!1;for(let t=0;t<n.length;t++){let o=n[t];o&&(p.actions.push({text:o.title,action:o.value,primary:"true"==o.primaryValue||null}),a=!0)}a||p.actions.push({text:"OK",primary:!0})}(o),s.kendoDialog(p);const u=s.data("kendoDialog"),d=u.wrapper;d.attr("data-dialog-type",t);let h=cronapi.internal.getMaxZIndex()+1;d.css("z-index",h).css("pointer-events","all"),u.open()},this.cronapi.notification.buttonConfirmDialogAlert=function(t,n,a){return{title:n,value:function(){return a&&a(),!0},primaryValue:t}},this.cronapi.regex={},this.cronapi.regex.extractTextByRegex=function(t,n,a){if(this.cronapi.logic.isNull(t)||this.cronapi.logic.isNull(n))return[];let o=null;o=null!=a&&"-"!==a?new RegExp(n,a):new RegExp(n);let r,s=[],c=null;for(;(r=o.exec(t))&&(null==c||c!=r.index);){let t=[];for(i=1;i<r.length;i++)t.push(r[i]);c=r.index,s.push(t)}return s},this.cronapi.regex.validateTextWithRegex=function(t,n,a){return!this.cronapi.logic.isNull(t)&&!this.cronapi.logic.isNull(n)&&(null!=a&&"-"!==a?new RegExp(n,a).test(t):new RegExp(n).test(t))},this.cronapi.calendar={},this.cronapi.calendar.getCalendarValue=async function(t){const n=await getCalendar(t);return n?n.value():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarValue=async function(t,n){const a=await getCalendar(t);a?a.value(n):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.getCalendarMin=async function(t){const n=await getCalendar(t);return n?n.min():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarMin=async function(t,n){const a=await getCalendar(t);a?a.min(n):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.getCalendarMax=async function(t){const n=await getCalendar(t);return n?n.max():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarMax=async function(t,n){const a=await getCalendar(t);a?a.max(n):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.getCalendarSelectDates=async function(t){const n=await getCalendar(t);return n?n.selectDates():(showErrorNotification("calendarElementNotPresent"),null)},this.cronapi.calendar.setCalendarSelectDates=async function(t,n){const a=await getCalendar(t);a?a.selectDates(Array.isArray(n)?n:[n]):showErrorNotification("calendarElementNotPresent")},this.cronapi.calendar.navigateCalendarTo=async function(t,n,a){const o=await getCalendar(t);o?o.navigate(n,a):showErrorNotification("calendarElementNotPresent")},this.cronapi.chat={},this.cronapi.chat.chatUserObj=function(t,n,a){return{id:t,name:n,iconUrl:a}},this.cronapi.chat.chatAttachmentObj=function(t,n,a,o,r,s){return{contentType:"heroCard",content:{title:t,subtitle:n,text:a,images:[{url:o,alt:r}],buttons:Array.isArray(s)?s:[s]}}},this.cronapi.chat.chatSuggestedActionObj=function(t,n){return{title:t,value:n}},this.cronapi.chat.getChatUser=async function(t,n,a){getChat(t).then((t=>{if(t)n(t.getUser());else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),a(t)}}))},this.cronapi.chat.postChatMessage=function(t,n,a,o){getChat(t).then((t=>{if(t)t.postMessage(n),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.renderChatMessage=function(t,n,a,o,r){getChat(t).then((t=>{if(t)t.renderMessage({type:"text",text:n},a),o();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),r(t)}}))},this.cronapi.chat.renderChatAttachments=function(t,n,a,o,r,s){getChat(t).then((t=>{if(t)t.renderAttachments({attachments:Array.isArray(a)?a:[a],attachmentLayout:o},n),r();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),s(t)}}))},this.cronapi.chat.renderChatHtml=function(t,n,a,o,r,s){const c=function(t){let n=document.createElement("div");n.innerHTML=t;let a=n.getElementsByTagName("script"),o=a.length;for(;o--;)a[o].parentNode.removeChild(a[o]);return n.innerHTML},l=kendo.template('\n <div class="#=styles.card# #=styles.cardRich#">\n <div class="#=styles.cardBody#">\n <div>\n #=text#\n </div>\n </div>\n </div>');kendo.chat.Templates.kendoChatHtmlTemplate||kendo.chat.registerTemplate("kendoChatHtmlTemplate",l);let p=[];if(Array.isArray(a))for(let t in a){let n={contentType:"kendoChatHtmlTemplate",content:{text:c(a[t])}};p.push(n)}else{let t={contentType:"kendoChatHtmlTemplate",content:{text:c(a)}};p.push(t)}getChat(t).then((t=>{if(t)t.renderAttachments({attachments:p,attachmentLayout:o},n),r();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),s(t)}}))},this.cronapi.chat.renderChatSuggestedActions=function(t,n,a,o){getChat(t).then((t=>{if(t)t.renderSuggestedActions(Array.isArray(n)?n:[n]),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.renderChatUserTypingIndicator=function(t,n,a,o){getChat(t).then((t=>{if(t)t.renderUserTypingIndicator(n),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.clearChatUserTypingIndicator=function(t,n,a,o){getChat(t).then((t=>{if(t)t.clearUserTypingIndicator(n),a();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),o(t)}}))},this.cronapi.chat.removeChatTypingIndicator=function(t,n,a){getChat(t).then((t=>{if(t)t.removeTypingIndicator(),n();else{let t=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(t),a(t)}}))},this.cronapi.util.setCookie=function(t,n,a,o){let r=new Date,s=new Date,c=0;this.cronapi.logic.isNullOrEmpty(o)||0==o?s.setTime(r.getTime()+864e5):s.setTime(r.getTime()+parseInt(o*function(t){return"seconds"===t?c=1e3:"minutes"===t?c=6e4:"hours"===t?c=36e5:"days"===t&&(c=864e5),c}(a))),document.cookie=encodeURIComponent(t)+"="+encodeURIComponent(n)+"; expires="+s.toGMTString()},this.cronapi.util.getCookie=function(t){const n=function(t,n){return t.find((t=>t.startsWith(n+"=")))}(document.cookie.split("; "),t);return function(t){return void 0===t?null:t.split("=").pop()}(n)},this.cronapi.util.checkSavedCookies=function(t){var n=document.cookie.split(";");return n.forEach((function(t){let[a,o]=t.split("=");n[a.trim()]=o})),n.cookieEssencial},this.cronapi.authentication={},this.cronapi.authentication.login=function(t,n,a){this.cronapi.$scope.login(t,n,a)},this.cronapi.authentication.changePassword=function(){let t,n,a;this.cronapi.screen.getValueOfField("vars.newPassword")===this.cronapi.screen.getValueOfField("vars.confirmationPassword")?(a=this.cronapi.screen.getValueOfField("vars.oldPassword"),t=this.cronapi.screen.getValueOfField("vars.newPassword"),n=this.cronapi.screen.getValueOfField("vars.confirmationPassword"),this.cronapi.screen.showLoading(),this.cronapi.logic.isNullOrEmpty(this.cronapi.screen.getHostapp())?(this.cronapi.screen.hide(),this.cronapi.screen.notify("error","HostApp is Required")):this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",String(this.cronapi.screen.getHostapp())+String("changePassword"),this.cronapi.object.createObjectFromString(['{ "oldPassword": "',a,'" , "newPassword": "',t,'" , "newPasswordConfirmation": "',n,'" } '].join("")),this.cronapi.object.createObjectFromString(['{ "X-AUTH-TOKEN": "',this.cronapi.util.getUserToken(),'" } '].join("")),(async t=>{this.cronapi.screen.hide(),this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.passwordChanged",[]));try{await this.cronapi.client("blockly.js.blockly.auth.ChangePassword.closeModal").run()}catch(t){this.cronapi.screen.hideIonicModal("changePassword")}finally{this.cronapi.screen.changeValueOfField("vars.oldPassword",""),this.cronapi.screen.changeValueOfField("vars.newPassword",""),this.cronapi.screen.changeValueOfField("vars.confirmationPassword","")}}),(t=>{"403"==this.cronapi.object.getProperty(t,"status")||"401"==this.cronapi.object.getProperty(t,"status")?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[])):this.cronapi.screen.notify("error",this.cronapi.object.getProperty(t,"responseJSON.message")),this.cronapi.screen.hide()}))):this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[]))},this.cronapi.authentication.signup=async function(t,n,a,o){let r,s,c,l,p=this.cronapi.authentication.isValidSignup;const u=this?.blockly?.js?.blockly?.UserControl?.isValidSignup,d=this?.blockly?.js?.blockly?.auth?.UserControl?.isValidSignup;angular.isFunction(u)?p=u:angular.isFunction(d)&&(p=d),await p(t,n,a,o)&&this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:signUp",(async t=>{r=t,s=this.cronapi.json.createObjectFromString(r),c=this.cronapi.json.getProperty(s,"code"),l=this.cronapi.json.getProperty(s,"message"),"201"==c?(window.cordova&&window.ionic?this.cronapi.screen.changeView("#/app/login",[]):this.cronapi.screen.changeView("#/login",[]),this.cronapi.screen.notify("success",this.cronapi.i18n.translate("UserSuccessfullyRegistered",[]))):this.cronapi.logic.isNullOrEmpty(l)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("General.ErrorNotSpecified",[])):this.cronapi.screen.notify("warning",l)}),t,n,a)},this.cronapi.authentication.mutualSignup=async function(){let t;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",String(this.cronapi.util.getBaseUrl())+String("/mutual/register"),this.cronapi.object.createObjectFromString(['{ "token": "',this.cronapi.util.getUserToken(),'" } '].join("")),null,(async n=>{t=n,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))}),(async n=>{t=n,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(t,"responseJSON.message"))}))},this.cronapi.authentication.mutualLogin=async function(){let t;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",String(this.cronapi.util.getBaseUrl())+String("/mutual/register"),this.cronapi.object.createObjectFromString(['{ "token": "',this.cronapi.util.getUserToken(),'" } '].join("")),null,(async n=>{t=n,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))}),(async n=>{t=n,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(t,"responseJSON.message"))}))},this.cronapi.authentication.isValidSignup=function(t,n,a,o){let r=!0;return this.cronapi.logic.isNullOrEmpty(t)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("UsernameCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(n)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(a)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("PasswordCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(o)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("PasswordConfirmationCanNotBeEmpty",[])),r=!1),a!==o&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("PasswordDoesNotMatch",[])),r=!1),r},this.cronapi.authentication.resetPassword=function(t){this.cronapi.logic.isNullOrEmpty(t)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",(t=>{this.cronapi.screen.notify("success",this.cronapi.i18n.translate("ForgotPasswordSent",[])),this.cronapi.screen.hideModal("forgotPasswordModal")}),t,!1)},this.cronapi.authentication.resetPasswordWithOTP=function(t){this.cronapi.logic.isNullOrEmpty(t)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):(localStorage.removeItem("otpToken"),this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",(t=>{localStorage.setItem("otpToken",t),this.cronapi.screen.changeView("#/app/login",[])}),t,!0),this.cronapi.screen.notify("success",this.cronapi.i18n.translate("ForgotPasswordSent",[])))},this.cronapi.organizers={},this.cronapi.organizers.marker=function(){},this.cronapi.organizers.comment=function(){},this.cronapi.organizers.group=function(){},this.cronapi.map={},this.cronapi.map.createMap=function(t){return t},this.cronapi.map.setMapValueByKey=function(t,n,a){const o={[n]:a};t.push(o)},this.cronapi.map.setMapValueByPath=function(t,n,a){const o={},r=n.split("."),s=r.pop(),c=r.reduce(((t,n)=>t[n]=t[n]||{}),o);c[s]=a,t.push(o)},this.cronapi.map.getMapValueByPath=function(t,n){let a=null;return t.forEach((t=>{a=t;const o=n.split(".");for(;o.length;){const t=o.shift();if(!a.hasOwnProperty(t))break;a=a[t]}})),a},this.cronapi.map.getMapValueByKey=function(t,n){let a=null;return t.forEach((t=>{t.hasOwnProperty(n)&&(a=t[n])})),a},this.cronapi.breadcrumb={},this.cronapi.breadcrumb.jsonBreadcrumb=function(t){let n=[];return(t=Array.isArray(t)?t:[t]).forEach((function(t){n.push(t)})),n},this.cronapi.breadcrumb.listBreadcrumb=function(t,n,a,o){let r={};return r.type="true"===t||!0===t?"rootitem":"item",r.text=n,r.showText=!0,r.href="javascript:void(0);",o&&(r.action=o),a?(r.icon=a,r.showIcon=!0):r.showIcon=!1,console.log(r),r},this.cronapi.websocket={},this.cronapi.websocket.connect=function(t,n,a,o){let r={};return function s(){r.ws=new WebSocket(t),r.ws.onopen=()=>{n&&n(r.ws)},r.ws.onmessage=t=>{a&&a(t.data)},r.ws.onclose=t=>{r.__closed||(console.log("Socket is closed. Reconnect will be attempted in 1 second.",t.reason),setTimeout((()=>{s()}),1e3))},r.ws.onerror=t=>{console.error("Socket encountered error: ",t.message),o&&o(t)}}(),r},this.cronapi.websocket.send=function(t,n){t&&!t.__closed&&t.ws.send(n)},this.cronapi.websocket.close=function(t){t&&!t.__closed&&(t.__closed=!0,t.ws.close())},this.cronapi.multimedia=this.cronapi.multimedia||{},this.cronapi.multimedia.recordAudio=async function(){let t={audio:!0};try{const n=await navigator.mediaDevices.getUserMedia(t),a=document.createElement("audio");a.srcObject=n,document.body.appendChild(a);const o=new MediaRecorder(n);return o.start(),o}catch(t){alert(t)}},this.cronapi.multimedia.pauseRecord=async function(t){"recording"===t.state?t.pause():t.resume()},this.cronapi.multimedia.stopRecord=async function(t){const n=new Promise((function(n,a){let o=[];t.ondataavailable=function(t){o.push(t.data)},t.onstop=function(){let t=new Blob(o,{type:"audio/mp3;"});n(t)},t.stop()}));return await n},this.cronapi.dateTime.getLastDayOfMonth=function(t,n){if(t<1||t>12)return"invalid month";if(n<1)return"invalid year";let a=new Date;return a.setYear(n),a.setDate(1),a.setMonth(t),a.setDate(a.getDate()-1),a.getDate()}}void 0!==window.fixedTimeZone&&null!==window.fixedTimeZone||(window.fixedTimeZone=!0),void 0!==window.timeZone&&null!==window.timeZone||(window.timeZone="UTC"),void 0!==window.timeZoneOffset&&null!==window.timeZoneOffset||(window.timeZoneOffset=0),window.systemTimeZoneOffset=window.timeZoneOffset,window.fixedTimeZone||(window.timeZoneOffset=moment().utcOffset()),window.isUsingCookie||(window.isUsingCookie=function(){return navigator.cookieEnabled&&!window.disableServerCookies&&!window.cordova}),cronapi.bind(window)();try{module&&(module.exports={window:window})}catch(t){}
|
package/i18n/locale_en_us.json
CHANGED
|
@@ -1867,6 +1867,15 @@
|
|
|
1867
1867
|
"getParam": "Get param from query string",
|
|
1868
1868
|
"getParentNodeDescription": "Function that return a parent element from a XML element",
|
|
1869
1869
|
"getParentNodeName": "Get parent element",
|
|
1870
|
+
"startPreview": "Open Camera",
|
|
1871
|
+
"startPreviewDescription": "Function to open the camera",
|
|
1872
|
+
"stopPreview": "Close Camera",
|
|
1873
|
+
"cameraId": "Camera ID: Element screenID to be used as camera",
|
|
1874
|
+
"stopPreviewDescription": "Function to close the camera",
|
|
1875
|
+
"cameraOptions": "Camera Options. Example: {\n x: 0,\n y: 0,\n width: window.screen.width,\n height: window.screen.height,\n camera: CameraPreview.CAMERA_DIRECTION.BACK,\n toBack: false,\n tapPhoto: true,\n tapFocus: false,\n previewDrag: false,\n storeToFile: false,\n disableExifHeaderStripping: false\n}",
|
|
1876
|
+
"takeSnapshot": "Take Snapshot from Camera",
|
|
1877
|
+
"takeSnapshotDescription": "Function to take a snapshot from the camera and returns as base64",
|
|
1878
|
+
"cameraSnapshotOptions": "Camera Snapshot Options. Example: {\n quality: 85\n}",
|
|
1870
1879
|
"getPicture": "Get Image",
|
|
1871
1880
|
"getPictureDescription": "Function to get an image of the Camera, Gallery, Album of the device.",
|
|
1872
1881
|
"getProperty": "Get Property",
|
|
@@ -2225,6 +2234,9 @@
|
|
|
2225
2234
|
"toSupplyTextParam0": "Text: Text that will be formatted, ex. Today is {0} of month {1} and year {2}",
|
|
2226
2235
|
"toSupplyTextParam1": "Term: Term to replace in Text, ex. [31, 12, 2050]",
|
|
2227
2236
|
"true": "True",
|
|
2237
|
+
"back": "Back",
|
|
2238
|
+
"front": "Front",
|
|
2239
|
+
"cameraDirection": "Camera Direction",
|
|
2228
2240
|
"type": "Type",
|
|
2229
2241
|
"typeOf": "Is type of?",
|
|
2230
2242
|
"typeOfDescription": "Function that verify if a variable is of determined type",
|
package/i18n/locale_pt_br.json
CHANGED
|
@@ -1870,6 +1870,15 @@
|
|
|
1870
1870
|
"getParam": "Obter parâmetro da query string",
|
|
1871
1871
|
"getParentNodeDescription": "Função que retorna o elemento pai do elemento XML",
|
|
1872
1872
|
"getParentNodeName": "Obtém elemento pai",
|
|
1873
|
+
"startPreview": "Abrir Câmera",
|
|
1874
|
+
"startPreviewDescription": "Função para abrir a câmera do dispositivo",
|
|
1875
|
+
"stopPreview": "Fechar Câmera",
|
|
1876
|
+
"cameraId": "Id do Elemento: id do elemento da tela que a câmera vai ser atachada",
|
|
1877
|
+
"stopPreviewDescription": "Função para fechar a câmera do dispositivo",
|
|
1878
|
+
"cameraOptions": "Opções da Câmera: Mapa com as opções da câmera. Exemplo: {\n x: 0,\n y: 0,\n width: window.screen.width,\n height: window.screen.height,\n camera: CameraPreview.CAMERA_DIRECTION.BACK,\n toBack: false,\n tapPhoto: true,\n tapFocus: false,\n previewDrag: false,\n storeToFile: false,\n disableExifHeaderStripping: false\n}",
|
|
1879
|
+
"takeSnapshot": "Obtém frame da câmera",
|
|
1880
|
+
"takeSnapshotDescription": "Função para obter um frame da câmera aberta e retornar como base64",
|
|
1881
|
+
"cameraSnapshotOptions": "Opções da Câmera: Mapa com as opções da câmera. Exemplo: {\n quality: 85\n}",
|
|
1873
1882
|
"getPicture": "Obter Imagem",
|
|
1874
1883
|
"getPictureDescription": "Função para obter uma imagem da Camera, Galeria, Album do dispositivo.",
|
|
1875
1884
|
"getProperty": "Obter Propriedade",
|
|
@@ -2228,6 +2237,9 @@
|
|
|
2228
2237
|
"toSupplyTextParam0": "Texto: Texto que será formatado. ex: Hoje é {0} do mês {1} e ano {2}",
|
|
2229
2238
|
"toSupplyTextParam1": "Termo: Termo para substituir no Texto. ex: [31, 12, 2050]",
|
|
2230
2239
|
"true": "Verdadeiro",
|
|
2240
|
+
"back": "Traseira",
|
|
2241
|
+
"front": "Frontal",
|
|
2242
|
+
"cameraDirection": "Direção da Câmera",
|
|
2231
2243
|
"type": "Tipo",
|
|
2232
2244
|
"typeOf": "É do tipo? ",
|
|
2233
2245
|
"typeOfDescription": "Função que verifica se uma variável é de determinado tipo",
|