cronapi-js 3.2.0 → 3.2.1-SP.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 CHANGED
@@ -3025,6 +3025,43 @@ function cronapi() {
3025
3025
  }
3026
3026
  };
3027
3027
 
3028
+ /**
3029
+ * @type function
3030
+ * @name {{cronapi.dateTime.changeDateMask.name}}
3031
+ * @nameTags format|mask|date|datetime|formatar|máscara|data
3032
+ * @description {{cronapi.dateTime.changeDateMask.description}}
3033
+ * @param {ObjectType.STRING} date {{cronapi.dateTime.changeDateMask.param.date}}
3034
+ * @param {ObjectType.STRING} initMask {{cronapi.dateTime.changeDateMask.param.initMask}}
3035
+ * @param {ObjectType.STRING} initLocale {{cronapi.dateTime.changeDateMask.param.initLocale}}
3036
+ * @param {ObjectType.STRING} endMask {{cronapi.dateTime.changeDateMask.param.endMask}}
3037
+ * @param {ObjectType.STRING} endLocale {{cronapi.dateTime.changeDateMask.param.endLocale}}
3038
+ * @returns {ObjectType.STRING}
3039
+ */
3040
+ this.cronapi.dateTime.changeDateMask = function(date, initMask, initLocale, endMask, endLocale) {
3041
+ if (this.cronapi.logic.isNullOrEmpty(date)) {
3042
+ return date;
3043
+ }
3044
+ if (this.cronapi.logic.isNullOrEmpty(initMask)) {
3045
+ return new Var("INVALID INIT MASK");
3046
+ }
3047
+ if (this.cronapi.logic.isNullOrEmpty(initLocale)) {
3048
+ initLocale = "pt-BR";
3049
+ } else {
3050
+ initLocale = initLocale.replace("_", "-");
3051
+ }
3052
+ if (this.cronapi.logic.isNullOrEmpty(endMask)) {
3053
+ return new Var("INVALID END MASK");
3054
+ }
3055
+ if (this.cronapi.logic.isNullOrEmpty(endLocale)) {
3056
+ endLocale = "pt-BR";
3057
+ } else {
3058
+ endLocale = endLocale.replace("_", "-");
3059
+ }
3060
+ var result = moment(date, initMask, initLocale);
3061
+ result.locale(endLocale);
3062
+ return result.format(endMask);
3063
+ };
3064
+
3028
3065
  /**
3029
3066
  * @type function
3030
3067
  * @name {{getSecondFromDate}}
@@ -7302,7 +7339,6 @@ function cronapi() {
7302
7339
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7303
7340
  */
7304
7341
  this.cronapi.chat.getChatUser = async function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7305
-
7306
7342
  getChat(id).then((chat) => {
7307
7343
  if (chat) {
7308
7344
  success(chat.getUser());
@@ -7312,10 +7348,10 @@ function cronapi() {
7312
7348
  error(errorMsg);
7313
7349
  }
7314
7350
  });
7315
-
7316
7351
  };
7317
7352
 
7318
- /**
7353
+ /**
7354
+ * @deprecated true
7319
7355
  * @type function
7320
7356
  * @name {{postChatMessage}}
7321
7357
  * @nameTags Chat
@@ -7323,11 +7359,10 @@ function cronapi() {
7323
7359
  * @description {{postChatMessageDesc}}
7324
7360
  * @param {ObjectType.STRING} component {{ComponentParam}}
7325
7361
  * @param {ObjectType.STRING} textMessage {{textMessage}}
7326
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7362
+ * @type {ObjectType.STATEMENT} @description {{success}}
7327
7363
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7328
7364
  */
7329
- this.cronapi.chat.postChatMessage = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.STRING} */ textMessage, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7330
-
7365
+ this.cronapi.chat.postChatMessage = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.STRING} */ textMessage, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7331
7366
  getChat(id).then((chat) => {
7332
7367
  if (chat) {
7333
7368
  chat.postMessage(textMessage);
@@ -7338,10 +7373,10 @@ function cronapi() {
7338
7373
  error(errorMsg);
7339
7374
  }
7340
7375
  });
7341
-
7342
7376
  };
7343
7377
 
7344
7378
  /**
7379
+ * @deprecated true
7345
7380
  * @type function
7346
7381
  * @name {{renderChatMessage}}
7347
7382
  * @nameTags Chat
@@ -7350,11 +7385,10 @@ function cronapi() {
7350
7385
  * @param {ObjectType.STRING} component {{ComponentParam}}
7351
7386
  * @param {ObjectType.STRING} chatMessage {{chatMessage}}
7352
7387
  * @param {ObjectType.OBJECT} chatUser {{chatUser}}
7353
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7388
+ * @type {ObjectType.STATEMENT} @description {{success}}
7354
7389
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7355
7390
  */
7356
- this.cronapi.chat.renderChatMessage = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.STRING} */ chatMessage, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7357
-
7391
+ this.cronapi.chat.renderChatMessage = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.STRING} */ chatMessage, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7358
7392
  getChat(id).then((chat) => {
7359
7393
  if (chat) {
7360
7394
  chat.renderMessage({'type': 'text', 'text': chatMessage}, chatUser);
@@ -7365,10 +7399,10 @@ function cronapi() {
7365
7399
  error(errorMsg);
7366
7400
  }
7367
7401
  });
7368
-
7369
7402
  };
7370
7403
 
7371
7404
  /**
7405
+ * @deprecated true
7372
7406
  * @type function
7373
7407
  * @name {{renderChatAttachments}}
7374
7408
  * @nameTags Chat
@@ -7378,11 +7412,10 @@ function cronapi() {
7378
7412
  * @param {ObjectType.OBJECT} chatUser {{chatUser}}
7379
7413
  * @param {ObjectType.OBJECT} chatAttachments {{chatAttachments}}
7380
7414
  * @param {ObjectType.STRING} chatAttachmentLayout {{chatAttachmentLayout}}
7381
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7415
+ * @type {ObjectType.STATEMENT} @description {{success}}
7382
7416
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7383
7417
  */
7384
- this.cronapi.chat.renderChatAttachments = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.OBJECT} */ chatAttachments, /** @type {ObjectType.STRING} @description {{chatAttachmentLayoutDesc}} @blockType util_dropdown @keys list|carousel @values {{chatAttachmentList}}|{{chatAttachmentCarousel}} */ chatAttachmentLayout, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7385
-
7418
+ this.cronapi.chat.renderChatAttachments = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.OBJECT} */ chatAttachments, /** @type {ObjectType.STRING} @description {{chatAttachmentLayoutDesc}} @blockType util_dropdown @keys list|carousel @values {{chatAttachmentList}}|{{chatAttachmentCarousel}} */ chatAttachmentLayout, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7386
7419
  getChat(id).then((chat) => {
7387
7420
  if (chat) {
7388
7421
  chat.renderAttachments({
@@ -7396,10 +7429,10 @@ function cronapi() {
7396
7429
  error(errorMsg);
7397
7430
  }
7398
7431
  });
7399
-
7400
7432
  };
7401
7433
 
7402
7434
  /**
7435
+ * @deprecated true
7403
7436
  * @type function
7404
7437
  * @name {{renderChatHtml}}
7405
7438
  * @nameTags Chat
@@ -7409,11 +7442,10 @@ function cronapi() {
7409
7442
  * @param {ObjectType.OBJECT} chatUser {{chatUser}}
7410
7443
  * @param {ObjectType.OBJECT} html Html
7411
7444
  * @param {ObjectType.STRING} chatAttachmentLayout {{chatAttachmentLayout}}
7412
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7445
+ * @type {ObjectType.STATEMENT} @description {{success}}
7413
7446
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7414
7447
  */
7415
- this.cronapi.chat.renderChatHtml = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.OBJECT} */ html, /** @type {ObjectType.STRING} @description {{chatAttachmentLayoutDesc}} @blockType util_dropdown @keys list|carousel @values {{chatAttachmentList}}|{{chatAttachmentCarousel}} */ chatAttachmentLayout, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7416
-
7448
+ this.cronapi.chat.renderChatHtml = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.OBJECT} */ html, /** @type {ObjectType.STRING} @description {{chatAttachmentLayoutDesc}} @blockType util_dropdown @keys list|carousel @values {{chatAttachmentList}}|{{chatAttachmentCarousel}} */ chatAttachmentLayout, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7417
7449
  // Remove any script in the html message
7418
7450
  const stripScripts = function (s) {
7419
7451
  let div = document.createElement('div');
@@ -7425,7 +7457,6 @@ function cronapi() {
7425
7457
  }
7426
7458
  return div.innerHTML;
7427
7459
  };
7428
-
7429
7460
  const kendoChatHtmlTemplate = kendo.template(`
7430
7461
  <div class="#=styles.card# #=styles.cardRich#">
7431
7462
  <div class="#=styles.cardBody#">
@@ -7434,13 +7465,10 @@ function cronapi() {
7434
7465
  </div>
7435
7466
  </div>
7436
7467
  </div>`);
7437
-
7438
7468
  if(!kendo.chat.Templates.kendoChatHtmlTemplate){
7439
7469
  kendo.chat.registerTemplate("kendoChatHtmlTemplate", kendoChatHtmlTemplate);
7440
7470
  }
7441
-
7442
7471
  let attachments = [];
7443
-
7444
7472
  if (Array.isArray(html)) {
7445
7473
  for(let index in html){
7446
7474
  let attachment = {
@@ -7460,7 +7488,6 @@ function cronapi() {
7460
7488
  };
7461
7489
  attachments.push(attachment)
7462
7490
  }
7463
-
7464
7491
  getChat(id).then((chat) => {
7465
7492
  if (chat) {
7466
7493
  chat.renderAttachments({
@@ -7474,10 +7501,10 @@ function cronapi() {
7474
7501
  error(errorMsg);
7475
7502
  }
7476
7503
  });
7477
-
7478
7504
  };
7479
7505
 
7480
7506
  /**
7507
+ * @deprecated true
7481
7508
  * @type function
7482
7509
  * @name {{renderChatSuggestedActions}}
7483
7510
  * @nameTags Chat
@@ -7485,11 +7512,10 @@ function cronapi() {
7485
7512
  * @description {{renderChatSuggestedActionsDesc}}
7486
7513
  * @param {ObjectType.STRING} component {{ComponentParam}}
7487
7514
  * @param {ObjectType.OBJECT} chatSuggestedActions {{chatSuggestedActions}}
7488
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7515
+ * @type {ObjectType.STATEMENT} @description {{success}}
7489
7516
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7490
7517
  */
7491
- this.cronapi.chat.renderChatSuggestedActions = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatSuggestedActions, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7492
-
7518
+ this.cronapi.chat.renderChatSuggestedActions = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatSuggestedActions, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7493
7519
  getChat(id).then((chat) => {
7494
7520
  if (chat) {
7495
7521
  chat.renderSuggestedActions((Array.isArray(chatSuggestedActions) ? chatSuggestedActions : [chatSuggestedActions]));
@@ -7500,10 +7526,10 @@ function cronapi() {
7500
7526
  error(errorMsg);
7501
7527
  }
7502
7528
  });
7503
-
7504
7529
  };
7505
7530
 
7506
7531
  /**
7532
+ * @deprecated true
7507
7533
  * @type function
7508
7534
  * @name {{renderChatUserTypingIndicator}}
7509
7535
  * @nameTags Chat
@@ -7511,11 +7537,10 @@ function cronapi() {
7511
7537
  * @description {{renderChatUserTypingIndicatorDesc}}
7512
7538
  * @param {ObjectType.STRING} component {{ComponentParam}}
7513
7539
  * @param {ObjectType.OBJECT} chatUser {{chatUser}}
7514
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7540
+ * @type {ObjectType.STATEMENT} @description {{success}}
7515
7541
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7516
7542
  */
7517
- this.cronapi.chat.renderChatUserTypingIndicator = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7518
-
7543
+ this.cronapi.chat.renderChatUserTypingIndicator = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7519
7544
  getChat(id).then((chat) => {
7520
7545
  if (chat) {
7521
7546
  chat.renderUserTypingIndicator(chatUser);
@@ -7526,10 +7551,10 @@ function cronapi() {
7526
7551
  error(errorMsg);
7527
7552
  }
7528
7553
  });
7529
-
7530
7554
  };
7531
-
7555
+
7532
7556
  /**
7557
+ * @deprecated true
7533
7558
  * @type function
7534
7559
  * @name {{clearChatUserTypingIndicator}}
7535
7560
  * @nameTags Chat
@@ -7537,11 +7562,10 @@ function cronapi() {
7537
7562
  * @description {{clearChatUserTypingIndicatorDesc}}
7538
7563
  * @param {ObjectType.STRING} component {{ComponentParam}}
7539
7564
  * @param {ObjectType.OBJECT} chatUser {{chatUser}}
7540
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7565
+ * @type {ObjectType.STATEMENT} @description {{success}}
7541
7566
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7542
7567
  */
7543
- this.cronapi.chat.clearChatUserTypingIndicator = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7544
-
7568
+ this.cronapi.chat.clearChatUserTypingIndicator = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.OBJECT} */ chatUser, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7545
7569
  getChat(id).then((chat) => {
7546
7570
  if (chat) {
7547
7571
  chat.clearUserTypingIndicator(chatUser);
@@ -7552,10 +7576,10 @@ function cronapi() {
7552
7576
  error(errorMsg);
7553
7577
  }
7554
7578
  });
7555
-
7556
7579
  };
7557
7580
 
7558
7581
  /**
7582
+ * @deprecated true
7559
7583
  * @type function
7560
7584
  * @name {{removeChatTypingIndicator}}
7561
7585
  * @nameTags Chat
@@ -7563,11 +7587,10 @@ function cronapi() {
7563
7587
  * @description {{removeChatTypingIndicatorDesc}}
7564
7588
  * @param {ObjectType.STRING} component {{ComponentParam}}
7565
7589
  * @param {ObjectType.OBJECT} chatUser {{chatUser}}
7566
- * @type {ObjectType.STATEMENTSENDER} @description {{success}}
7590
+ * @type {ObjectType.STATEMENT} @description {{success}}
7567
7591
  * @type {ObjectType.STATEMENTSENDER} @description {{error}}
7568
7592
  */
7569
- this.cronapi.chat.removeChatTypingIndicator = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.STATEMENTSENDER} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7570
-
7593
+ this.cronapi.chat.removeChatTypingIndicator = function (/** @type {ObjectType.OBJECT} @blockType ids_from_screen*/ id, /** @type {ObjectType.STATEMENT} @description {{success}} */ success, /** @type {ObjectType.STATEMENTSENDER} @description {{error}} */ error) {
7571
7594
  getChat(id).then((chat) => {
7572
7595
  if (chat) {
7573
7596
  chat.removeTypingIndicator();
@@ -7578,9 +7601,8 @@ function cronapi() {
7578
7601
  error(errorMsg);
7579
7602
  }
7580
7603
  });
7581
-
7582
- }
7583
-
7604
+ };
7605
+
7584
7606
  /**
7585
7607
  * @type function
7586
7608
  * @name {{setCookie}}
@@ -7755,8 +7777,13 @@ function cronapi() {
7755
7777
  let responseSignUp, json, httpCodeStatus, httpMessageStatus;
7756
7778
  let isValidSignup = this.cronapi.authentication.isValidSignup;
7757
7779
  // Client isValidSignup blockly location is different on WEB and MOBILE projects and may not exist.
7758
- const webIsValidSignup = this?.blockly?.js?.blockly?.UserControl?.isValidSignup;
7759
- const mobileIsValidSignup = this?.blockly?.js?.blockly?.auth?.UserControl?.isValidSignup;
7780
+ var webIsValidSignup = (this && this.blockly && this.blockly.js && this.blockly.js.blockly && this.blockly.js.blockly.UserControl)
7781
+ ? this.blockly.js.blockly.UserControl.isValidSignup
7782
+ : undefined;
7783
+
7784
+ var mobileIsValidSignup = (this && this.blockly && this.blockly.js && this.blockly.js.blockly && this.blockly.js.blockly.auth && this.blockly.js.blockly.auth.UserControl)
7785
+ ? this.blockly.js.blockly.auth.UserControl.isValidSignup
7786
+ : undefined;
7760
7787
  if (angular.isFunction(webIsValidSignup)) {
7761
7788
  isValidSignup = webIsValidSignup;
7762
7789
  } else if (angular.isFunction(mobileIsValidSignup)) {
@@ -8052,38 +8079,44 @@ function cronapi() {
8052
8079
  return breadcrumb;
8053
8080
  };
8054
8081
 
8055
- /**
8056
- * @type function
8057
- * @name {{listBreadcrumb}}
8058
- * @description {{listBreadcrumbDesc}}
8059
- * @param {ObjectType.BOOLEAN} root {{listBreadcrumbRoot}}
8060
- * @param {ObjectType.STRING} title {{listBreadcrumbTitle}}
8061
- * @param {ObjectType.STRING} link {{listBreadcrumbLink}}
8062
- * @param {ObjectType.MAP} icon {{listBreadcrumbIcon}}
8063
- * @returns {ObjectType.STRING}
8064
- */
8065
- this.cronapi.breadcrumb.listBreadcrumb = function ( /** @type {ObjectType.BOOLEAN} @description {{listBreadcrumbRoot}} @blockType util_dropdown @keys true|false @values {{yes}}|{{no}} */ root, /** @type {ObjectType.STRING} @description {{listBreadcrumbTitle}} */ title, /** @type {ObjectType.STRING} @description {{listBreadcrumbIcon}} */ icon, /** @type {ObjectType.STATEMENT} @description {{listBreadcrumbLink}} */ link) {
8066
- let json = {};
8067
-
8068
- if (root === 'true' || root === true) {
8069
- json.type = "rootitem"
8070
- } else {
8071
- json.type = "item"
8072
- }
8073
-
8074
- json.text = title;
8075
- json.showText = true;
8076
- json.href = "javascript:void(0);";
8077
- if (link) json.action = link
8078
- if (icon) {
8079
- json.icon = icon
8080
- json.showIcon = true
8081
- } else {
8082
- json.showIcon = false
8083
- }
8084
-
8085
- return json;
8086
- };
8082
+ /**
8083
+ * @type function
8084
+ * @name {{listBreadcrumb}}
8085
+ * @description {{listBreadcrumbDesc}}
8086
+ * @param {ObjectType.BOOLEAN} root {{listBreadcrumbRoot}}
8087
+ * @param {ObjectType.STRING} title {{listBreadcrumbTitle}}
8088
+ * @param {ObjectType.STRING} link {{listBreadcrumbLink}}
8089
+ * @param {ObjectType.STRING} icon {{listBreadcrumbIcon}}
8090
+ * @returns {ObjectType.STRING}
8091
+ */
8092
+ this.cronapi.breadcrumb.listBreadcrumb = function ( /** @type {ObjectType.BOOLEAN} @description {{listBreadcrumbRoot}} @blockType util_dropdown @keys true|false @values {{yes}}|{{no}} */ root, /** @type {ObjectType.STRING} @description {{listBreadcrumbTitle}} */ title, /** @type {ObjectType.STRING} @description {{listBreadcrumbIcon}} @blockType util_dropdown @keys calendar|home|download|save|pencil|trash|eye|link|undo|redo|search|zoom-in|zoom-out|cart|print|bell|warning-circle|warning-triangle|info-circle|user|star|heart|plus|minus|check|x|filter|sort-asc|sort-desc|upload|download-light|lock|unlock|folder|folder-open|cloud|play|pause|stop|arrow-up|arrow-right|arrow-down|arrow-left|chevron-up|chevron-right|chevron-down|chevron-left|level-up|level-down|info|envelope|comment|cog|gears|wrench|settings|paperclip|camera|images|clipboard|table|code|chart|chart-pie|chart-line|chart-bar|book|edit|hand|file|file-add|file-remove|folder-add|folder-remove|heart-outline|star-outline|checkbox|radiobutton|thumbs-up|thumbs-down|eye-slash|playlist|volume-up|volume-down|volume-mute|fullscreen|grid|layout|music-notes|camera|gear|map-marker|pin|video @values Calendar|Home|Download|Save|Edit|Delete|Eye|Link|Undo|Redo|Search|Zoom In|Zoom Out|Cart|Print|Bell|Warning Circle|Warning Triangle|Info Circle|User|Star|Heart|Plus|Minus|Check|X|Filter|Sort Ascending|Sort Descending|Upload|Download Light|Lock|Unlock|Folder|Folder Open|Cloud|Play|Pause|Stop|Arrow Up|Arrow Right|Arrow Down|Arrow Left|Chevron Up|Chevron Right|Chevron Down|Chevron Left|Level Up|Level Down|Info|Envelope|Comment|Cog|Gears|Wrench|Settings|Paperclip|Camera|Images|Clipboard|Table|Code|Chart|Chart Pie|Chart Line|Chart Bar|Book|Edit|Hand|File|Add File|Remove File|Add Folder|Remove Folder|Heart Outline|Star Outline|Checkbox|Radio Button|Thumbs Up|Thumbs Down|Eye Slash|Playlist|Volume Up|Volume Down|Volume Mute|Fullscreen|Grid|Layout|Music Notes|Camera|Gear|Map Marker|Pin|Video */ icon, /** @type {ObjectType.STATEMENT} @description {{listBreadcrumbLink}} */ link) {
8093
+ let json = {};
8094
+
8095
+
8096
+ if (root === 'true' || root === true) {
8097
+ json.type = "rootitem";
8098
+ } else {
8099
+ json.type = "item";
8100
+ }
8101
+
8102
+
8103
+ json.text = title;
8104
+ json.showText = true;
8105
+ json.href = "javascript:void(0);";
8106
+
8107
+
8108
+ if (link) json.action = link;
8109
+
8110
+
8111
+ if (icon) {
8112
+ json.icon = icon;
8113
+ json.showIcon = true;
8114
+ } else {
8115
+ json.showIcon = false;
8116
+ }
8117
+ console.log(json);
8118
+ return json;
8119
+ };
8087
8120
 
8088
8121
  /**
8089
8122
  * @category Websocket
@@ -1,4 +1,4 @@
1
- (window.fixedTimeZone===void 0||null===window.fixedTimeZone)&&(window.fixedTimeZone=!0),(window.timeZone===void 0||null===window.timeZone)&&(window.timeZone="UTC"),(window.timeZoneOffset===void 0||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||"browser"==window.cordova.platformId)});function cronapi(){"use strict";var _StringfromCharCode=String.fromCharCode;function getCalendar(n){let t=Date.now(),a=1e4,o=(r,c)=>{let s=$("#"+n+" cron-calendar").data("kendoCalendar");s?r(s):a&&Date.now()-t>=a?r():setTimeout(()=>o(r,c),200)};return new Promise(o)}function showErrorNotification(n){const t=this.cronapi.$translate.instant(n);this.cronapi.$scope.Notification.error(t)}function getChat(n){let t=Date.now(),a=1e4,o=(r,c)=>{let s=$("#"+n+" .k-chat").data("kendoChat");s?r(s):a&&Date.now()-t>=a?r():setTimeout(()=>o(r,c),200)};return new Promise(o)}this.$evt=function(n){var t=this;if(!t.$eval){var a;a=event?event.target:t.$element[0],t=angular.element(a).scope()}t||(t=angular.element(document.getElementById("main-view")).scope()),t.$eval(n)}.bind(this),this.cronapi={},this.cronapi.getRequestData=n=>{let t=n||{};return n.data&&"object"==typeof n.data&&(t=n.data),t},this.cronapi.toDate=function(n){return new Date(n)};var getDatasource=function(n){return"string"==typeof n?window[n]:n};this.cronapi.doEval=function(n){return n};var reorderArgs=function(n,t,a){if(t&&t.length&&a&&a.length){let r=[];for(var o=0;o<t.length;o++)r.push(null);for(let o=0;o<t.length;o++)for(let c=0;c<a.length;c++)if("string"==typeof t[o]){if(t[o]==a[c]){r[o]=n[c];break}}else if(t[o].description==a[c]||t[o].id==a[c]){r[o]=n[c];break}return r}return n};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,func;i<result.commands.length;i++){func=eval(result.commands[i].function);let argsNames=result.commands[i].names,args=result.commands[i].params,argsMetadata;try{argsMetadata=eval(result.commands[i].function+"Args")}catch(n){}args=reorderArgs(args,argsMetadata,argsNames),await func.apply(this,args)}return result.value}};let clientMap={},clientMapTimeout={};this.cronapi.client=function(pack){let attr=!1,notificationOnError=!0,argsNames;return{attr:function(){return attr=!0,this},disableNotification:function(){return notificationOnError=!1,this},names:function(){argsNames=[];for(let n=0;n<arguments.length;n++)argsNames.push(arguments[n]);return this},run:function(){for(var key=pack,args=[],i=0;i<arguments.length;i++)key+=arguments[i]+"",args.push(arguments[i]);var bk,argsMetadata;try{bk=eval("blockly."+pack)}catch(n){}try{argsMetadata=eval("blockly."+pack+"Args")}catch(n){}if(!argsMetadata)try{argsMetadata=eval(pack+"Args")}catch(n){}bk||(bk=eval(pack)),args=reorderArgs(args,argsMetadata,argsNames);let isAsyncResult=n=>n!==void 0&&null!==n&&n.then&&"function"==typeof n.then,result;if(!attr){let n="AsyncFunction"===bk.constructor.name;return n?bk.apply(this,args).catch(n=>{if(notificationOnError)this.cronapi.$scope.Notification.error(n);else throw n}):bk.apply(this,args)}return(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(n=>{clientMap[key]!==n&&this.safeApply(()=>{clientMap[key]=n})}).catch(n=>{clientMap[key]!==n&&this.safeApply(()=>{clientMap[key]=n})}):clientMap[key]=result,clientMap[key]),300),clientMap[key])?clientMap[key]:void 0}.bind(this)}};var serverMap={};this.cronapi.server=function(n){var t=!1,a=!1,o=!0,r=!0;let c;return{attr:function(){return t=!0,this},toPromise:function(){return a=!0,this},notAsync:function(){return o=!1,this},names:function(){c=[];for(let n=0;n<arguments.length;n++)c.push(arguments[n]);return this},disableNotification:function(){return r=!1,this},run:function(){for(var s=n,l=0;l<arguments.length;l++)s+=arguments[l]+"";if(t){if(serverMap.hasOwnProperty(s))return"$$loading"==serverMap[s]?"":serverMap[s];serverMap[s]="$$loading"}var p=n.split("."),d=p[p.length-1];p.pop();var u=p.join("."),g=new Promise((n,t)=>{b=n,y=t}),m=function(n){this.safeApply(function(){t&&(serverMap[s]=n),b(n)})}.bind(this),h=function(n){this.safeApply(function(){t&&(serverMap[s]=n),y(n)}),n&&r&&this.cronapi.$scope.Notification.error(n)}.bind(this),f=[u+":"+d],b,y;if(o){f.push(m),f.push(h),c&&c.length&&f.push({argsNames:c});for(var l=0;l<arguments.length;l++)f.push(arguments[l]);if(this.cronapi.util.makeCallServerBlocklyAsync.apply(this,f),a)return g}else{c&&c.length&&f.push({argsNames:c});for(var l=0;l<arguments.length;l++)f.push(arguments[l]);let n=this.cronapi.util.callServerBlockly.apply(this,f);return t&&(serverMap[s]=n),n}}.bind(this)}},this.cronapi.callFunction=function(name){return{call:function(){var ref;try{ref=eval(name)}catch(n){}return ref?ref.apply(this,arguments):void 0}.bind(this)}},this.cronapi.conversion={},this.cronapi.conversion.asciiToBinary=function(n){var t="";if(0<n.length)for(var a=0,o;a<n.length;a++){o=n.charCodeAt(a);for(var r=7;0<=r;r--)t+=1&o>>r}return t},this.cronapi.conversion.toBoolean=function(n){return this.cronapi.internal.parseBoolean(n)},this.cronapi.conversion.toBytes=function(n){return n?n.toString():""},this.cronapi.conversion.chrToAscii=function(n){return n?n.charCodeAt(0):null},this.cronapi.conversion.stringToJs=function(n){return this.cronapi.internal.stringToJs(n)},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(n,t){let a=moment(n,t);return a.isValid()?a.toDate():null},this.cronapi.conversion.intToHex=function(n){return(+n).toString(16).toUpperCase()},this.cronapi.conversion.toLong=function(n){return parseInt(n)},this.cronapi.conversion.toString=function(n){if(n){var t=new String(n);return t.toString()}return""},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 n=[];for(let t=0,a;t<paramsNames.length;t++)a={},a[paramsNames[t]]=params[t],n.push(a);params=n}let convertToODataDate=n=>{let t=n.getFullYear(),a=(n.getMonth()+1+"").padStart(2,"0"),o=(n.getDate()+"").padStart(2,"0"),r=(n.getHours()+"").padStart(2,"0"),c=(n.getMinutes()+"").padStart(2,"0"),s=(n.getSeconds()+"").padStart(2,"0");return`'${t}-${a}-${o}T${r}:${c}:${s}'`},evalForODATA=async value=>{let result="";try{result=await eval(value.replace("await ",""))}catch(n){result=value}return"string"==typeof result&&(result=`'${result}'`),"object"==typeof result&&result.getFullYear&&(result=convertToODataDate(result)),result},getFilter=n=>{let t="",a=n.match(/(\$filter=)(.*)/);return a&&2<a.length&&(t=a[2]),t},getUrl=n=>{let t="",a=n.match(/^(GET|POST|DELETE|PUT)\s(.*?)($|\?)/);return a&&2<a.length&&(t=`${odataUrl}${a[2]}`),t};if(params){for(let n=0,t;n<params.length;n++)for(let a in t=params[n],t)t[a]=await evalForODATA(t[a]);params.forEach(n=>{for(let t in n)filterUrl=filterUrl.replace(`:${t}`,n[t])})}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(n,t,a)=>{let o=this.$http(n);o.then(n=>t(n)),o.catch(n=>a(n))},success=n=>{let t=n.data.d,a=t.results.length;totalReceived+=a,totalReceived<t.__count&&(config.params.$skip+=defaultPagination,makeRequest(config,success,error)),this.cronapi.internal.updatePouchDB(db,t.results),console.log(`Caching Data (%c${id}%c): %c${totalReceived} of ${t.__count}`,"color: red","color: black","color: red")},error=n=>{console.error(`error caching datasource ${db.name}`,n)};makeRequest(config,success,error)},this.cronapi.util.changeViewLogout=function(){let n=window.cordova?this.cronapi.util.getMobileLogoutRoute():this.cronapi.util.getWebLogoutRoute();this.cronapi.screen.changeView(n)},this.cronapi.util.getWebLogoutRoute=function(){let n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){let a=t.responseJSON,o=a["cronapp.framework.web.logoutroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n)},this.cronapi.util.getMobileLogoutRoute=function(){let n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){let a=t.responseJSON,o=a["cronapp.framework.mobile.logoutroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n)},this.cronapi.util.changeViewMain=function(){var n;n=window.cordova?this.cronapi.util.getMobileMainRoute():this.cronapi.util.getWebMainRoute(),this.cronapi.screen.changeView(n)},this.cronapi.util.getWebMainRoute=function(){var n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){var a=t.responseJSON,o=a["cronapp.framework.web.mainroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n)},this.cronapi.util.getMobileMainRoute=function(){var n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){var a=t.responseJSON,o=a["cronapp.framework.mobile.mainroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n,"mobile")},this.cronapi.util.setToken=function(n){let t={};localStorage.getItem("_u")&&(t=JSON.parse(localStorage.getItem("_u")),window.isUsingCookie()?delete t.token:t.token=n),localStorage.setItem("_u",JSON.stringify(t))},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 n=new Promise((n,o)=>{t=n,a=o}),t,a;return n.__functionToResolve=t,n.__functionToReject=a,n},this.cronapi.util.handleValueToPromise=function(n,t,a){"resolve"===n?t.__functionToResolve(a):t.__functionToReject(a)},this.cronapi.util.monitorPromise=function(n,t,a){n&&(t&&n.then(t),a&&n.catch(a))},this.cronapi.util.sleep=async function(n){var t=new Promise(t=>{setInterval(()=>{t(n)},n)});return t},this.cronapi.util.callServerBlocklyAsync=function(n,t,a,o){const r=()=>{const n=new WeakSet;return(t,a)=>{if("object"==typeof a&&null!==a){if(n.has(a))return;n.add(a)}return a}};var c="api/cronapi/call/body/#classNameWithMethod#/".replace("#classNameWithMethod#",n),s=this.cronapi.$scope.http,l=[],p;$(arguments).each(function(){this&&Array.isArray(this.argsNames)?p=this.argsNames:l.push(this)});var d={fields:t,inputs:l.slice(4)};p&&(d.names=p);var u=this.cronapi.internal.getAddressWithHostApp(c);let g;try{g=JSON.stringify(d)}catch(n){g=JSON.stringify(d,r())}let m=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()};$.ajax({type:"POST",url:u,dataType:"html",data:g,headers:m,success:a,error:o})},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(n){}if(fieldValue&&0!==Object.keys(fieldValue).length){var keys=Object.keys(fieldValue);keys.forEach(function(n){void 0!==fieldValue[n]&&null!==fieldValue[n]&&(!fields.vars&&(fields.vars={}),fields.vars[n]=fieldValue[n])})}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.responseText,errorThrown);"string"==typeof callbackError?eval(callbackError)(message):callbackError?callbackError(message):this.cronapi.$scope.Notification.error(message)}.bind(this)),$(arguments).each(function(n){3<=n&&paramsApply.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(n){throw n},this.cronapi.util.createException=function(n){return n},this.cronapi.util.language=function(){var n=(window.navigator.userLanguage||window.navigator.language||"pt_br").replace("-","_");return n},this.cronapi.util.share=function(n,t,a){const o=new Promise((o,r)=>{navigator.share({title:n,text:t,url:a}).then(()=>{o("Successful share"),console.log("Successful share")}).catch(n=>{r(n),console.log("Error sharing:",n)})});return o},this.cronapi.util.callServerBlockly=async function(n){let t=[n,null,null],a=1;for(a;a<arguments.length;a++)t.push(arguments[a]);return new Promise(((n,a)=>{t[1]=(t=>{n(t)}).bind(this),t[2]=(n=>{a(n)}).bind(this),this.cronapi.util.makeCallServerBlocklyAsync.apply(this,t)}).bind(this))},this.cronapi.util.callServerBlocklyAsynchronous=function(n,t,a){if(""!=n&&"function"==typeof t){var a=[n,t,t],o=2;for(o;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(n){var t=this.cronapi.internal.getAddressWithHostApp(n);this.cronapi.screen.openUrl(t,"_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(n){this.cronapi.$scope.getReport(n)},this.cronapi.util.getIP=function(){return $.get({url:"https://api.ipify.org/",async:!1}).responseText},this.cronapi.util.openDashboard=function(n){this.cronapi.$scope.getReport(n)},this.cronapi.util.handleCallback=function(n){if(n){let t="AsyncFunction"===n.constructor.name;return t?function(){(async()=>await n.apply(this,arguments))()}.bind(this):n.bind(this)}},this.cronapi.util.getURLFromOthers=function(n,t,a,o,r,c,s){if(o&&"application/x-www-form-urlencoded"===t){for(var l in o)if(o[l]instanceof Array){var p=o[l].toString();o[l]=`[${p}]`}}else o&&"application/json"===t&&(o=JSON.stringify(o));var d=Object.create(r);d["Content-Type"]=t,$.ajax({method:n,url:a,data:o,headers:d}).done(this.cronapi.util.handleCallback(c).bind(this)).fail(this.cronapi.util.handleCallback(s.bind(this)))},this.cronapi.util.getUserToken=function(){if(localStorage.getItem("_u")){let n=JSON.parse(window.localStorage.getItem("_u"));if(n.token)return n.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(n,t){window.sessionStorage.setItem(n,t)},this.cronapi.util.getSessionStorage=function(n){return window.sessionStorage.getItem(n)},this.cronapi.util.setLocalStorage=function(n,t){window.localStorage.setItem(n,t)},this.cronapi.util.getLocalStorage=function(n){return window.localStorage.getItem(n)},this.cronapi.util.executeAsynchronous=function(n){setTimeout(n,0)},this.cronapi.util.scheduleExecution=function(n,t,a,o,r){r=r||!0,r="true"===r||!0===r;var c=1;"seconds"===o?c=1e3:"minutes"===o?c=6e4:"hours"==o&&(c=36e5),t*=c,a*=c;var s=-1,l=setTimeout(function(){n(),s=setInterval(n,a)}.bind(this),t);r&&this.$on("$destroy",function(){try{clearTimeout(l)}catch(n){}try{clearInterval(s)}catch(n){}})},this.cronapi.util.openReport=function(n,t,a){this.cronapi.$scope.getReport(n,t,a)},this.cronapi.util.openDashboard=function(n,t,a){this.cronapi.$scope.getReport(n,t,a)},this.cronapi.util.getCEP=function(n,t){if(this.cronapi.logic.isNullOrEmpty(n))throw new Error("Informe o CEP");if(n=n.replace(/\.|\-/g,"").split(" ").join(""),8>n.length)throw new Error("CEP inv\xE1lido");let a="https://viacep.com.br/ws/"+n+"/json/?callback=?";$.getJSON(a,this.cronapi.util.handleCallback(t.bind(this)))},this.cronapi.screen={},this.cronapi.screen.isInsertingMode=function(n){return getDatasource(n).inserting},this.cronapi.screen.isEditingMode=function(n){return getDatasource(n).editing},this.cronapi.screen.changeTitleScreen=function(n){window.document.title=n},this.cronapi.screen.fieldFromScreen=function(n){return n},this.cronapi.screen.changeValueOfField=function(n,t){try{this.__tempValue=t;var a=new Function("this."+n+" = this.__tempValue;");this.safeApply(a.bind(this))}catch(n){}},this.cronapi.screen.getValueOfField=function(field){try{if(field&&0<field.length){if(-1<field.indexOf(".active."))return eval(field);var scope=eval("this"),recursiveLookup=function(scope){var fieldValue;try{fieldValue=eval("scope."+field)}catch(n){}return void 0!==fieldValue||null!==fieldValue?fieldValue:scope&&scope.$parent?recursiveLookup(scope.$parent):""};return recursiveLookup(scope)}return""}catch(n){alert(n)}},this.cronapi.screen.createScopeVariable=function(n,t){this.cronapi.$scope.safeApply(()=>this.cronapi.$scope.vars[n]=t)},this.cronapi.screen.getScopeVariable=function(n){return this.cronapi.$scope.vars[n]},this.cronapi.screen.notify=function(n,t){(null==t||t==null)&&(t=""),this.cronapi.$scope.Notification({message:t.toString()},n)},this.cronapi.screen.datasourceFromScreen=function(n){return n},this.cronapi.screen.startInsertingMode=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).startInserting(null,()=>{t()})}catch(n){a(n)}})})},this.cronapi.screen.startEditingMode=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).startEditing(null,()=>{t()})}catch(n){a(n)}})})},this.cronapi.screen.backNormalState=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).onBackNomalState(),t()}catch(n){a(n)}})})},this.cronapi.screen.previusRecord=function(n){getDatasource(n).$apply(new function(){getDatasource(n).previous()})},this.cronapi.screen.nextRecord=function(n){getDatasource(n).$apply(new function(){getDatasource(n).next()})},this.cronapi.screen.firstRecord=function(n){getDatasource(n).$apply(new function(){var t=getDatasource(n);t.cursor=-1,t.next()})},this.cronapi.screen.lastRecord=function(n){getDatasource(n).$apply(new function(){var t=getDatasource(n);t.cursor=t.data.length-2,t.next()})},this.cronapi.screen.removeRecord=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).removeSilent(null,()=>{t()},n=>{a(n)})}catch(n){a(n)}})})},this.cronapi.screen.refreshActiveRecord=async function(n){return new Promise((t,a)=>{try{getDatasource(n).refreshActive(()=>{t()},n=>{a(n)})}catch(n){a(n)}})},this.cronapi.screen.hasNextRecord=function(n){return getDatasource(n).hasNext()},this.cronapi.screen.quantityRecords=function(n){return getDatasource(n).data.length},this.cronapi.screen.post=async function(n){return new Promise((t,a)=>{try{getDatasource(n).postSilent(()=>{t()},n=>{a(n)})}catch(n){a(n)}})},this.cronapi.screen.filter=function(n,t){getDatasource(n).isOData()?getDatasource(n).search(t):getDatasource(n).filter("/"+t)},this.cronapi.screen.doFilter=function(n,t,a){let o=a;a instanceof Array&&(o=a.join(" "+t+" ")),getDatasource(n).isOData()?getDatasource(n).search(o):getDatasource(n).filter("/"+o)},this.cronapi.screen.createFilter=function(n,t,a){return"substringof"===t?"substringof('"+(a||!1===a?a instanceof Date?a.toISOString():a:"")+"', "+n+")":n+" "+t+" "+objToOData(a)+""},this.cronapi.screen.changeView=function(view,params){try{function decodeCharParam(value){if(value)for(var param in paramsStopEncode){var regex=eval("/"+param+"/g");value=value.replace(regex,paramsStopEncode[param])}return value}var queryString="",paramsStopEncode={};if(paramsStopEncode["%24"]="$","undefined"!=typeof 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=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=n=>{if(this.cronapi.$scope&&this.cronapi.$scope.$state){let t=this.cronapi.$scope.$state.get(),a=n.split("/").slice(2),o="views/"+a.join("/")+".view.html";t.forEach(t=>{let a=t.templateUrl;if(a instanceof Function){let n=/('|")[a-z0-9/.]+('|")/gim.exec(a.toString());null!==n&&void 0!==n&&n[0]&&(a=n[0].replace(/'|"/g,""))}a===o&&(n="#"+t.url)})}return n};var oldHash=window.location.hash;view=existRoute(view),window.location.hash=view+(queryString?"?"+queryString:"");var oldHashToCheck=oldHash+(-1<oldHash.indexOf("?")?"":"?"),viewToCheck=view+(-1<view.indexOf("?")?"":"?");this.cronapi.forceCloseAllModal(),0<=oldHashToCheck.indexOf(viewToCheck)&&window.location.reload()}catch(n){alert(n)}},this.cronapi.screen.openUrl=function(n,t,a,o){try{var r="_self",c="";t&&"true"==t.toString().toLowerCase()&&(r="_blank"),a&&(c+="width="+a+","),o&&(c+="height="+o+","),window.open(n,r,c)}catch(n){alert(n)}},this.cronapi.screen.getParam=function(n){try{for(var t=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),o=0,r;o<a.length;o++)r=a[o].split("="),t.push(r[0]),t[r[0]]=r[1];if(t[n]!==void 0)return decodeURIComponent(t[n])}catch(n){}return null},this.cronapi.screen.confimDialog=function(n){var t=confirm(n);return t},this.cronapi.screen.createDefaultModal=function(n,t,a,o,r,c,s){$("#modalTemplateTitle").text(n),$("#modalTemplateBody").text(t),$("#modalTemplateCancel").text(a),$("#modalTemplateSave").text(o),$("#modalTemplateClose").unbind("click"),$("#modalTemplateClose").click(s),$("#modalTemplateCancel").unbind("click"),$("#modalTemplateCancel").click(c),$("#modalTemplateSave").unbind("click"),$("#modalTemplateSave").click(r),this.cronapi.screen.showModal("modalTemplate")},this.cronapi.screen.showModal=function(n){let t=`#${n}`,a=$(":focus"),o=$(":hover");try{$(t).one("shown.bs.modal",function(){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(){let n=$(t).data("lastFocused"),a=!1,o;n&&n.length&&(o=$($(this).data("lastFocusedClass")),a=$("html").has(n).length?n.is(":visible"):o.is(":visible"));let r=function(n){return $(n[n.length-1]).closest("li:visible").find("a:first")},c=$(t).data("lastHovers");if(a)o.focus(),n.focus();else if($("html").has(n).length){let t=r(n);t.focus()}else if(c&&c.length){let n=r(c);n.focus()}}).modal({backdrop:"static",keyboard:!1})}catch(n){$(t).show()}$(t).css("overflow-y","auto")},this.cronapi.screen.setActiveTab=function(n){this.cronapi.$scope.safeApply(function(){$("#"+n).attr("data-target")===void 0?$("[data-target=\"#"+n+"\"]").tab("show"):$("#"+n).tab("show")})},this.cronapi.screen.hideModal=function(n){try{$("#"+n).modal("hide")}catch(t){$("#"+n).hide()}},this.cronapi.screen.showIonicModal=async function(n){return $(`#${n}`).data("cronapp-modal")&&$(`#${n}`).data("cronapp-modal").remove(),new Promise((t,a)=>{this.cronapi.$scope.$ionicModal.fromTemplateUrl(n,{scope:this.cronapi.$scope,animation:"slide-in-up"}).then(a=>{$("#"+n).data("cronapp-modal",a),a.show(),t()}).catch(n=>a(n))})},this.cronapi.screen.hideIonicModal=function(n){if($("#"+n).data("cronapp-modal")){var t=$("#"+n).data("cronapp-modal");t.remove(),$("#"+n).data("cronapp-modal",null)}},this.cronapi.screen.isShownIonicModal=function(n){if($("#"+n).data("cronapp-modal")){var t=$("#"+n).data("cronapp-modal");return t.isShown()}return!1},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(n){const t=$("#"+n);if(0<t.length){const n=t.parent();t.attr("data-component")?t.attr("style","display:block !important"):n.attr("style","display:block !important")}else console.error("Element not found: "+n)},this.cronapi.screen.hideComponent=function(n){const t=$("#"+n);if(0<t.length){const n=t.parent();t.attr("data-component")?t.attr("style","display:none !important"):n.attr("style","display:none !important")}else console.error("Element not found: "+n)},this.cronapi.screen.disableComponent=function(n){let t;if(window.cordova)t=this.cronapi.$scope;else{let n=window.angular.element("body").injector();t=n.get("$rootScope")}let a=(n,t)=>{n.data("kendoComboBox")?n.data("kendoComboBox").enable(!1):n.hasClass("cronSelect")&&n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!1):n.data("kendoDropDownList")?n.data("kendoDropDownList").enable(!1):n.data("kendoMultiSelect")?n.data("kendoMultiSelect").enable(!1):n.find("[data-role=grid]").data("kendoGrid")||n.find("cron-grid").length?this.cronapi.internal.coverElement(n):$.each(n.find("*").addBack(),function(n,o){let r=$(o);r.prop("disabled",!0).addClass("disabled"),t&&a(r,!1)})},o=()=>{let r=$(`#${n}`);"$apply"!==t.$$phase&&"$digest"!==t.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout(()=>o(),200)};o()},this.cronapi.screen.enableComponent=function(n){let t;if(window.cordova)t=this.cronapi.$scope;else{let n=window.angular.element("body").injector();t=n.get("$rootScope")}let a=(n,t)=>{n.data("kendoComboBox")?n.data("kendoComboBox").enable(!0):n.hasClass("cronSelect")&&n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!0):n.data("kendoDropDownList")?n.data("kendoDropDownList").enable(!0):n.data("kendoMultiSelect")?n.data("kendoMultiSelect").enable(!0):n.find("[data-role=grid]").data("kendoGrid")||n.find("cron-grid").length?this.cronapi.internal.discoverElement(n):$.each(n.find("*").addBack(),function(n,o){let r=$(o);r.prop("disabled",!1).removeClass("disabled"),t&&a(r,!1)})},o=()=>{let r=$(`#${n}`);"$apply"!==t.$$phase&&"$digest"!==t.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout(()=>o(),200)};o()},this.cronapi.screen.focusComponent=function(n){this.cronapi.$scope.safeApply(function(){tinyMCE&&tinyMCE.get(n)?tinyMCE.get(n).focus():$("#"+n).find("*").addBack().focus()})},this.cronapi.screen.changeAttrValue=function(n,t,a){$("#"+n).attr(t,a)},this.cronapi.screen.getAttrValue=function(n,t){return $(`#${n}`).attr(t)},this.cronapi.screen.changeContent=function(n,t,a){if($("#"+n).html(t),!0===a||"true"===a){var o=angular.injector(["ng"]),r=this;o.invoke(["$compile",function(t){t(document.querySelector("#"+n))(r.cronapi.$scope)}])}},this.cronapi.screen.setVisibility=function(n,t){let a=!0===t||"true"===t?"visible":"hidden";$(`#${n}`).css("visibility",`${a}`)},this.cronapi.screen.getContent=function(n){return $(`#${n}`).html()},this.cronapi.screen.copyValue=function(n){var t=this.cronapi.screen.getValueOfField(n);t==null&&(t=""),navigator.clipboard.writeText(t)},this.cronapi.screen.toggleClass=function(n,t){$(`#${n}`).toggleClass(t)},this.cronapi.screen.recompileComponent=async function(n){let t=$(`#${n}`);t.data("alreadycompiled",!1);let a=await(n=>new Promise(t=>{let a=n.data("$compile");if(a)t(a);else{var o=angular.injector(["ng"]);o.invoke(["$compile",n=>t(n)])}}))(t),o=this.cronapi.$scope;o.safeApply(()=>a(t)(o))},this.cronapi.screen.logout=function(){this.cronapi.$scope.logout!=null&&this.cronapi.$scope.logout()},this.cronapi.screen.refreshDatasource=function(n,t){!0==t||"true"==t?this[n].search(this[n].terms,this[n].caseInsensitive):this[n].search("",this[n].caseInsensitive)},this.cronapi.screen.loadMore=function(n){getDatasource(n).$apply(function(){getDatasource(n).nextPage()})},this.cronapi.screen.hasNextPage=function(n){return getDatasource(n).hasNextPage()},this.cronapi.screen.load=function(n){let t=getDatasource(n);t.reloadedFromCronapi=!0,t.fetch({params:{}},void 0,void 0,{origin:"button"})},this.cronapi.screen.addClass=function(n,t){$(`#${n}`).addClass(t)},this.cronapi.screen.removeClass=function(n,t){$(`#${n}`).removeClass(t)},this.cronapi.screen.createMenuObjectMobile=function(n){let t=[];n&&(Array.isArray(n)?t=n:t.push(n));let a={escope:"MOBILE",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,t)};return a},this.cronapi.screen.createMenuObjectWeb=function(n){let t=[];n&&(Array.isArray(n)?t=n:t.push(n));let a={escope:"WEB",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,t)};return a},this.cronapi.screen.recursiveDefineItemsIds=function(n,t,a){for(let o=0;o<a.length;o++)a[o].level=t,a[o].id=n+"-"+(o+1),a[o].menuItems=this.cronapi.screen.recursiveDefineItemsIds(a[o].id,t+1,a[o].menuItems);return a},this.cronapi.screen.createMenuItemMobile=function(n,t,a,o,r,c,s,l,p,d){let u="";return a&&"ion-NONE"!=a&&(0==a.indexOf("ion-")?u="icon "+a:u=a),{id:"TODO",name:n?n:"",title:t?t:"",iconClass:u,hide:o?o:"",security:r?r:"",action:c?c:"",level:0,textPosition:s?s:"left",imagePosition:l?l:"left",contentTheme:p?p:"light",iconTheme:d?d:"light",menuItems:[]}},this.cronapi.screen.createMenuItemWeb=function(n,t,a,o,r,c,s){let l=[];s&&(Array.isArray(s)?l=s:l.push(s));let p="";return a&&"fa-NONE"!=a&&(0==a.indexOf("fa-")?p="fa "+a:p=a),{id:"TODO",name:n?n:"",title:t?t:"",iconClass:p,hide:o?o:"",security:r?r:"",action:c?c:"",level:0,textPosition:"left",imagePosition:"left",contentTheme:"light",iconTheme:"light",menuItems:l}},this.cronapi.screen.createMenuItemSecurity=function(n,t){let a=[];n&&""!==n&&(Array.isArray(n)?a=n:a.push(n));let o=[];t&&""!==t&&(Array.isArray(t)?o=t:o.push(t));let r="";return 0<a.length&&(r="visible : "+a.join(";")),0<o.length&&(0<r.length?r=r+", enabled : "+o.join(";"):r="enabled : "+o.join(";")),r},this.cronapi.dateTime={},this.cronapi.dateTime.formats=function(){var n=[];return n="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"],n.push("YYYY-MM-DDTHH:mm:ss"),n.push("HH:mm:ss"),n.push("MMMM"),n},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=/\/Date((.*?))\//,regexExecution=dateString.exec(value);if(regexExecution&&1<regexExecution.length){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.getSecond=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("second"):0},this.cronapi.dateTime.getMinute=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("minute"):0},this.cronapi.dateTime.getHour=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("hour"):0},this.cronapi.dateTime.getYear=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("year"):0},this.cronapi.dateTime.getMonth=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("month")+1:0},this.cronapi.dateTime.getDay=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("date"):0},this.cronapi.dateTime.getSecondsBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"seconds")},this.cronapi.dateTime.getMinutesBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"minutes")},this.cronapi.dateTime.getHoursBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"hours")},this.cronapi.dateTime.getDaysBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"days")},this.cronapi.dateTime.getMonthsBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"months")},this.cronapi.dateTime.getYearsBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"years")},this.cronapi.dateTime.incSecond=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("seconds",t).toDate()},this.cronapi.dateTime.incMinute=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("minutes",t).toDate()},this.cronapi.dateTime.incHour=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("hours",t).toDate()},this.cronapi.dateTime.incDay=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("days",t).toDate()},this.cronapi.dateTime.incMonth=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("months",t).toDate()},this.cronapi.dateTime.incYear=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("years",t).toDate()},this.cronapi.dateTime.getNow=function(){var n=moment();return n.toDate()},this.cronapi.dateTime.formatDateTime=function(n,t){return this.cronapi.dateTime.getMomentObj(n).format(t)},this.cronapi.dateTime.newDate=function(n,t,a,o,r,c){var s=new Date;return s.setYear(n),s.setMonth(t-1),s.setDate(a),s.setHours(o),s.setMinutes(r),s.setSeconds(c),this.cronapi.dateTime.getMomentObj(s).toDate()},this.cronapi.dateTime.updateDate=function(n,t,a,o,r,c,s,l){var p=this.cronapi.dateTime.getMomentObj(n).toDate();if(p&&!isNaN(p.getTime()))p.setYear(t),p.setMonth(a-1),p.setDate(o),p.setHours(r),p.setMinutes(c),p.setSeconds(s),p.setMilliseconds(l);else return void this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]));return this.cronapi.dateTime.getMomentObj(p).toDate()},this.cronapi.dateTime.updateNewDate=function(n,t,a){var o=this.cronapi.dateTime.getMomentObj(n).toDate();if(o&&!isNaN(o.getTime()))"year"===t?o.setYear(a):"month"===t?o.setMonth(a-1):"day"===t?o.setDate(a):"hour"===t?o.setHours(a):"minute"===t?o.setMinutes(a):"second"===t?o.setSeconds(a):"millisecond"===t?o.setMilliseconds(a):void 0;else return void this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]));return this.cronapi.dateTime.getMomentObj(o).toDate()},this.cronapi.text={},this.cronapi.text.prompt=function(){return null},this.cronapi.text.formatTextWithReplacement=function(n,...t){var a=Array.prototype.slice.call(t,0);return n.replace(/\{(\d+)\}/g,function(n,t){return a[t]})},this.cronapi.text.newline=function(){return"\n"},this.cronapi.text.replaceAll=function(n,t,a,o){return this.cronapi.logic.isNull(n)||this.cronapi.logic.isNull(t)||this.cronapi.logic.isNull(o)?null:"-"===a?n.replace(t,o):n.replace(new RegExp(t,a),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(n){var t=$.parseXML("<?xml version=\"1.0\" encoding=\"UTF-8\"?><root></root>");return t.removeChild(t.firstElementChild),t.appendChild(n),t},this.cronapi.xml.newXMLElement=function(n,t){var a=document.createElement(n);return a.textContent=t,a},this.cronapi.xml.addXMLElement=function(n,t){try{var a=t.cloneNode(!0);return n.appendChild(a),!0}catch(n){return!1}},this.cronapi.xml.XMLHasRootElement=function(n){return!!(n&&n.getRootNode())},this.cronapi.xml.XMLGetRootElement=function(n){return n instanceof XMLDocument?n.firstElementChild:n.getRootNode()},this.cronapi.xml.XMLDocumentToText=function(n){if(n instanceof XMLDocument)return $($($(n.firstElementChild).context.outerHTML).removeAttr("xmlns"))[0].outerHTML;if(1<$(n).size()){var t="";return $.each($(n).toArray(),function(n,a){t+=$($(a)[0].outerHTML).removeAttr("xmlns")[0].outerHTML}),t}return $($($(n).context.outerHTML).removeAttr("xmlns"))[0].outerHTML},this.cronapi.xml.getChildren=function(n,t){return n instanceof XMLDocument?n.firstElementChild.toArray:t?t.localName?$(n).find(t.localName).toArray():$(n).find(t).toArray():$(n).children().toArray()},this.cronapi.xml.setAttribute=function(n,t,a){return!!t&&(n instanceof XMLDocument?(n.firstChild.setAttribute(t,a),!0):!!n&&(n.setAttribute(t,a),!0))},this.cronapi.xml.getAttributeValue=function(n,t){return t?n instanceof XMLDocument?n.firstChild.getAttribute(t)?n.firstChild.getAttribute(t):"":n&&t?n.getAttribute(t):"":""},this.cronapi.xml.getParentNode=function(n){return n instanceof XMLDocument?n.firstChild:n.parentNode},this.cronapi.xml.setElementContent=function(n,t){n instanceof XMLDocument&&(n.firstChild.textContent=t),n.textContent=t},this.cronapi.xml.getElementContent=function(n){return n instanceof XMLDocument?n.firstChild.innerText:n.innerText},this.cronapi.xml.removeElement=function(n,t){n instanceof XMLDocument?t?t instanceof HTMLUnknownElement?t.remove():$.each($(n.firstElementChild.children),function(n,a){a.localName==t&&a.remove()}):$.each($(n.firstElementChild.children),function(n,t){t.remove()}):t?t instanceof HTMLUnknownElement?t.remove():$.each($(n.children),function(n,a){a.localName==t&&a.remove()}):$.each($(n.children),function(n,t){t.remove()})},this.cronapi.xml.getElementName=function(n){return n instanceof XMLDocument?n.firstChild.localName:n.localName},this.cronapi.xml.renameElement=function(n,t){var a=n.outerHTML.replace(n.localName,t);a=a.replace("/"+n.localName,"/"+t),a=$(a).removeAttr("xmlns"),n.replaceWith(a[0])},this.cronapi.logic={},this.cronapi.logic.isNull=function(n){return null===n||"undefined"==typeof n||n==null},this.cronapi.logic.isEmpty=function(n){return""===n},this.cronapi.logic.isNullOrEmpty=function(n){return this.cronapi.logic.isNull(n)||this.cronapi.logic.isEmpty(n)},this.cronapi.logic.typeOf=function(n,t){return"array"===t?Array.isArray(n):!("object"===t&&Array.isArray(n))&&typeof n==t},this.cronapi.i18n={},this.cronapi.i18n.translate=function(n,t){if(n){for(var a=this.cronapi.$translate.instant(n),o=0,r;o<t.length;o++)if(r=t[o],null!=r&&"undefined"!=typeof r){var c=new RegExp("\\{"+o+"\\}","g");a=a.replace(c,r)}return a}},this.cronapi.internal={},this.cronapi.internal.forceRefreshNgModel=async function(n,t){let a=()=>new Promise(n=>{let t=setInterval(()=>{clearInterval(t),n()})});await a(),this.cronapi.screen.changeValueOfField(n,void 0),await a(),this.cronapi.screen.changeValueOfField(n,t)},this.cronapi.internal.hasMethodInCallStack=function(n){return-1<new Error().stack.indexOf(n)},this.cronapi.internal.lastCronappMenuClick=function(n){let t=window.angular.element("body").injector(),a=t.get("$rootScope");a.__lastCronappMenuClick=n},this.cronapi.internal.isJsonString=n=>{if("string"!=typeof n)return!1;try{return JSON.parse(n),!0}catch(n){return!1}},this.cronapi.internal.getPouchDB=n=>{window.pouchDBInstances=window.pouchDBInstances||{};let t=n=>(window.pouchDBInstances[n]=new PouchDB(n),window.pouchDBInstances[n]),a;return a=window.pouchDBInstances[n]?window.pouchDBInstances[n]:t(n),a.info().then(function(o){o||(a.close(),a=t(n))}).catch(function(){a.close(),a=t(n)}),a},this.cronapi.internal.updatePouchDB=function(n,t,a){let o=$.extend(!0,{},t),r=this.cronapi.internal.normalizePouchDBData(o);r.forEach(t=>{n.get(t._id).then(a=>(a&&a._id&&(t._rev=a._rev),n.put(t))).then(a).catch(o=>{"not_found"===o.name?n.post(t).then(a).catch(n=>{console.error(n)}):console.error(o)})})},this.cronapi.internal.normalizePouchDBData=function(n,t){let a=[];return $.each(n,function(n,o){let r=o;r[t?"__metadata":"$metadata"]=r[t?"$metadata":"__metadata"],r[t?"_objectKey":"$objectKey"]=r[t?"$objectKey":"_objectKey"],r[t?"__$masterExpression":"$$masterExpression"]=r[t?"$$masterExpression":"__$masterExpression"],r[t?"__parentId":"$parentId"]=r[t?"$parentId":"__parentId"],r[t?"__sender":"$sender"]=r[t?"$sender":"__sender"],r[t?"__status":"$status"]=r[t?"$status":"__status"],r[t?"__original":"$original"]=r[t?"$original":"__original"],r.hasOwnProperty(t?"$odataFile_attached":"__odataFile_attached")&&(r[t?"__odataFile_attached":"$odataFile_attached"]=r[t?"$odataFile_attached":"__odataFile_attached"]),t?(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 n=0;return $("body *").each((t,a)=>{var o=Number.isNaN;let r=window.getComputedStyle(a).zIndex;r&&!o(parseFloat(r))&&$(a).is(":visible")&&(r=parseFloat(r),n=r>n?r:n)}),n},this.cronapi.internal.viewToRoute=function(n,t){var a=void 0;if(this.cronapi.$scope&&this.cronapi.$scope.$state){let t=this.cronapi.$scope.$state.get();var o=t.find(t=>t.templateUrl===n);o&&(a="".concat(o.url))}return a||(a="/".concat(n.replace("views/","").replace(".view.html","")),"mobile"===t&&(a="/app".concat(a))),a},this.cronapi.internal.loginSocial=function(n){let t=$(`#${n}`),a=t.attr("action"),o=$("<form/>");o.attr("method","POST"),o.attr("action",a),t.children().appendTo(o),t.parent().append(o),o.submit()},this.cronapi.internal.selectContent=function(n){let t=window.getSelection(),a=document.createRange();a.selectNodeContents(n),t.removeAllRanges(),t.addRange(a)},this.cronapi.internal.skipIterationLoop=function(){return new Promise(n=>{n()})},this.cronapi.internal.coverElement=function(n){let t=n.attr("id");((t,a)=>{let o=a.eq(0).outerWidth(),r=a.eq(0).outerHeight();a.each(function(){let a=n.closest(".modal-dialog").length,c=a?999999:9999,s=a?$(".modal.fade.in"):n.parent(),l=$(this).offset();$(`<div class='cover-${t}'>`).css({width:o,height:r,position:"absolute",top:l.top,left:l.left,"z-index":c}).appendTo(s)})})(t,n)},this.cronapi.internal.discoverElement=function(n){let t=n.attr("id");$(`.cover-${t}`).remove()},this.cronapi.internal.focusFormInput=function(){let n=$($("form")[0]),t=$(n.find("input")[0]);if(t&&t.length){let n=setInterval(()=>{t.is(":visible")&&("dropdownlist"!==t.data("role")&&t.focus(),clearInterval(n))},100)}},this.cronapi.forceCloseAllModal=function(){var n=$(".modal.fade.in");n&&n.each((n,t)=>this.cronapi.screen.hideModal(t.id)),$(".modal-backdrop.fade.in").remove()},this.cronapi.internal.setFile=function(n,t){this.cronapi.internal.fileToBase64(t,function(t){this.cronapi.screen.changeValueOfField(n,t)}.bind(this))},this.cronapi.internal.fileToBase64=function(n,t){var a=new FileReader;a.readAsDataURL(n),a.onload=function(n){var a=n.target.result.substr(n.target.result.indexOf("base64,")+7);t(a)}},this.cronapi.internal.getMaxResolution=function(n,t){var a=window.innerWidth,o=window.innerHeight,r=0;return r=a/n,t*=r,n*=r,n>a&&(r=a/n,t*=r,n*=r),t>o&&(r=o/t,n*=r,t*=r),{width:n,height:t}},this.cronapi.internal.startCamera=function(n,t,a){if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId)this.cronapi.cordova.camera.getPicture(t=>{this.cronapi.screen.changeValueOfField(n,t.replace(/^data:image\/\w+;base64,/,""))},n=>{console.error(n),this.cronapi.$scope.Notification.error(n)},0,1,0,a,100!==parseInt(t));else{var o="<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>",r=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia({video:!0}).then(function(t){r=t;var a=cronapi.internal.getMaxResolution(t.getTracks()[0].getSettings().width,t.getTracks()[0].getSettings().height),c=a.width,s=a.height;try{c=parseInt(c/2),s=parseInt(s/2)}catch(n){}o=o.split("$height$").join(a.height+"px").split("$width$").join(a.width+"px").split("$marginleft$").join(c+"px").split("$margintop$").join(s+"px");var l=$(o);l.prependTo("body");var p=document.getElementById("cronapiVideoCapture");l.find("#cronapiVideoCaptureCancel").on("click",function(){null!=r&&0<r.getTracks().length&&r.getTracks()[0].stop(),$(l).remove()}.bind(this)),l.find("#cronapiVideoCaptureOk").on("click",function(){this.cronapi.internal.captureFromCamera(n,a.width,a.height),null!=r&&0<r.getTracks().length&&r.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=t,p.onloadedmetadata=function(){p.play()}}.bind(this))}},this.cronapi.internal.getPicture=function(n){if(1===n.sourceType)cronapi.internal.getPictureFromCamera(n);else if(0===n.sourceType||2===n.sourceType)cronapi.internal.getPictureFromFile(n);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(n),!0}},{text:this.cronapi.i18n.translate("gallery",[]),action:function(){return cronapi.internal.getPictureFromFile(n),!0}}]})}},this.cronapi.internal.getPictureFromCamera=function(n){var t=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({video:!0}).then(function(a){t=a;var o=cronapi.internal.getMaxResolution(a.getTracks()[0].getSettings().width,a.getTracks()[0].getSettings().height),r=o.width,c=o.height;try{r=parseInt(r/2),c=parseInt(c/2)}catch(n){}var s="<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>";s=s.split("$height$").join(o.height+"px").split("$width$").join(o.width+"px").split("$marginleft$").join(r+"px").split("$margintop$").join(c+"px");var l=$(s);l.prependTo("body");var p=document.getElementById("cronapiFileBrowser");l.find("#cronapiFileBrowserCancel").on("click",function(){null!=t&&0<t.getTracks().length&&t.getTracks()[0].stop(),n.errorCallback&&n.errorCallback("Opera\xE7\xE3o cancelada"),$(l).remove()}.bind(this)),l.find("#cronapiFileBrowserOk").on("click",function(){cronapi.internal.getPictureSuccess(n,o.width,o.height),null!=t&&0<t.getTracks().length&&t.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=a,p.onloadedmetadata=function(){p.play()}}.bind(this)).catch(function(t){n.errorCallback&&n.errorCallback(t.toString())}.bind(this)):n.errorCallback&&n.errorCallback("Recurso n\xE3o suportado ou n\xE3o autorizado")},this.cronapi.internal.getPictureFromFile=function(n){var t=cronapi.internal.getMaxResolution(window.innerWidth,window.innerHeight),a=t.width,o=t.height;try{a=parseInt(a/2),o=parseInt(o/2)}catch(n){console.log(n)}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(t.height+"px").split("$width$").join(t.width+"px").split("$marginleft$").join(a+"px").split("$margintop$").join(o+"px");var c=$(r);c.prependTo("body"),c.find("#cronapiFileBrowserCancel").on("click",function(){n.errorCallback&&n.errorCallback("Opera\xE7\xE3o cancelada"),$(c).remove()}.bind(this)),c.find("#cronapiFileBrowserOK").on("click",function(){cronapi.internal.getPictureSuccess(n,t.width,t.height,!0),$(c).remove()}.bind(this)),c.find("#imgPreview").on("touchend click",function(n){"touchend"==n.type&&$(this).off("click"),$("#imageBrowser").trigger("click")}),c.find("#imageBrowser").on("change",function(){if($("img#imgPreview").attr("src",""),"undefined"!=typeof FileReader){var n=new FileReader;n.onload=function(n){$("img#imgPreview").attr("src",n.target.result)},n.readAsDataURL($(this)[0].files[0])}})},this.cronapi.internal.getPictureSuccess=function(n,t,a,o){if(n.successCallback)if(o){var r=document.getElementById("imageBrowser").files[0];if(r){var c=new FileReader;c.onload=function(t){var a=t.target.result;n.successCallback(a)},c.readAsDataURL(r)}else n.successCallback(null)}else{var s=document.createElement("canvas");s.width=t,s.height=a;var l=s.getContext("2d"),p=document.getElementById("cronapiFileBrowser");l.drawImage(p,0,0,t,a);let o="data:image/jpeg;base64, "+s.toDataURL().substr(22);n.successCallback(o)}},this.cronapi.internal.downloadFileEntityMobile=function(n,t,a,o){var r=null,c,s;if(a)c=n.data[a][t],s=n.data[a];else try{c=n.active[t],s=n.active}catch(a){c=n[t],s=n}try{var r=JSON.parse(c)}catch(n){}if(r){var l=this.cronapi.internal.getAddressWithHostApp("/api/cronapi/filePreview/");window.open(l+r.path,"_system")}else if(c.startsWith("https://")||c.startsWith("http://"))window.open(c,"_system");else if(n.isOData())cronapi.internal.makeDownloadFromBytes(c,o);else{var p="/api/cronapi/downloadFile",d=n.entity.split("/"),u=d[d.length-1];if(-1<u.indexOf(":")){for(var g="",m=d[3].split("."),h=0;h<m.length-1;h++)g+=m[h]+".";var f=u.split(":");u=g+f[f.length-1]}p+="/"+u,p+="/"+t;var b=s,y=n.getKeyValues(b),v=0;for(var A in y)p=0==v?p+"/"+b[A]:p+":"+b[A],v++;var l=this.cronapi.internal.getAddressWithHostApp(p);window.open(l,"_system")}},this.cronapi.internal.captureFromCamera=function(n,t,a){var o=document.createElement("canvas");o.width=t,o.height=a;var r=o.getContext("2d"),c=document.getElementById("cronapiVideoCapture");r.drawImage(c,0,0,t,a);var s=o.toDataURL().substr(22);this.cronapi.screen.changeValueOfField(n,s)},this.cronapi.internal.qrCodeScanner=function(n,t,a){let o,r;navigator.mediaDevices.getUserMedia({audio:!1,video:!0}).then(()=>{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(t=>{o=t[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"),t.map((n,t)=>{if("videoinput"===n.kind){let a=document.createElement("option");a.value=n.deviceId,a.text=n.label||"C\xE2mera "+(t+1),0===t&&(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 n=$("#videoSource").prop("selectedIndex"),t=$("#videoSource option").length;n<t-1?$("#videoSource").prop("selectedIndex",n+1):$("#videoSource").prop("selectedIndex",0),$("#videoSource").trigger("change")}).bind(this)),a.find("#videoSource").on("change",(()=>{r.decodeOnceFromVideoDevice($("#videoSource").val(),"video").then(t=>{t&&(n(t.text),$(a).remove(),r.reset())})}).bind(this)),r.decodeOnceFromVideoDevice(o,"video").then(t=>{t&&(n(t.text),$(a).remove(),r.reset())})}).catch(n=>{t(n),r.reset()})}).catch(function(n){t(n)})},this.cronapi.internal.castBinaryStringToByteArray=function(n){for(var t=n.length,a=new Uint8Array(t),o=0;o<t;o++)a[o]=n.charCodeAt(o);return a},this.cronapi.internal.castBase64ToByteArray=function(n){var t=window.atob(n);return this.cronapi.internal.castBinaryStringToByteArray(t)},this.cronapi.internal.castByteArrayToString=function(n){return _StringfromCharCode.apply(null,new Uint16Array(n))},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){25<json.name.length&&(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\xE3o:</b> <br/>"+json.fileExtension+"<br/>":"<b>Extension:</b> <br/>"+json.fileExtension+"<br/>",result}},this.cronapi.internal.getContentTypeFromExtension=function(n){if(n)switch(n.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(n){if(n){var t=n.substr(0,5);switch(t.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(n){try{return btoa(atob(n))==n}catch(n){return!1}},this.cronapi.internal.downloadUrl=function(n,t){let a=document.createElement("a");a.setAttribute("href",n),a.setAttribute("download",t);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,fileName="download",bytesOrFileInput;if(valueContent.match(/__odataFile_/g))bytesOrFileInput=eval(valueContent),fileName=bytesOrFileInput.name;else{fileName+=cronapi.internal.getExtensionBase64(valueContent);try{valueContent=window.atob(valueContent)}catch(n){}bytesOrFileInput=cronapi.internal.castBinaryStringToByteArray(valueContent)}let fileInfoDescription=eval(fileInfo);if(fileInfoDescription){let n=JSON.parse(fileInfoDescription);fileName=n.name}var url=urlCreator.createObjectURL(new Blob([bytesOrFileInput],{type:"application/octet-stream"}));cronapi.internal.downloadUrl(url,fileName)},this.cronapi.internal.downloadFileEntity=function(n,t,a,o){var r=null,c,s;if(a)c=n.data[a][t],s=n.data[a];else try{c=n.active[t],s=n.active}catch(a){c=n[t],s=n}try{var r=JSON.parse(c)}catch(n){}if(r)window.open("/api/cronapi/filePreview/"+r.path);else if(c.startsWith("https://")||c.startsWith("http://"))window.open(c);else if(n.isOData())cronapi.internal.makeDownloadFromBytes(c,o);else{var l="/api/cronapi/downloadFile",p=n.entity.split("/"),d=p[p.length-1];if(-1<d.indexOf(":")){for(var u="",g=p[3].split("."),m=0;m<g.length-1;m++)u+=g[m]+".";var h=d.split(":");d=u+h[h.length-1]}l+="/"+d,l+="/"+t;var f=JSON.parse(localStorage.getItem("_u"))||{},b=s,y=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:y,data:b?JSON.stringify(b):null,responseType:"blob",headers:a}).then(function(n,t,a){a=a||n.headers,a=a(),n=this.cronapi.getRequestData(n);var o=a["x-filename"]||"download.bin",r=window.URL||window.webkitURL||window.mozURL||window.msURL;try{var c=r.createObjectURL(n);cronapi.internal.downloadUrl(c,o)}catch(n){console.log("Error downloading file"),console.log(n)}}.bind(this)).catch(function(){console.log("Error downloading file")}.bind(this))}},this.cronapi.internal.uploadFileAjax=function(n,t,a){var o=new FormData;o.append("file",t);var r=JSON.parse(localStorage.getItem("_u"))||{},c=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:c,data:o,headers:s,onProgress:function(n){if(n.lengthComputable){var t=0|100*(n.loaded/n.total),o=$("#"+a);if(0<o.length)if("bootstrapProgress"==o.data("type"))100>t?(o.show(),o.find(".progress-bar").css("width",t+"%")):(o.hide(),o.find(".progress-bar").css("width","0%"));else{var r=document.getElementById(a);r.value=r.innerHTML=t}}}}).then(function(t){t=this.cronapi.getRequestData(t),this.cronapi.screen.changeValueOfField(n,t.jsonString)}.bind(this)).catch(function(){alert("Error uploading file")}.bind(this))},this.cronapi.internal.getFieldFromActiveString=function(n){var t=/.active.([a-zA-Z0-9_-]*)/g.exec(n),a=t[1];return a},this.cronapi.internal.getJsonDescriptionFromFile=function(n){let t={};if(n){let a=n.name.split("."),o="."+a[a.length-1];t.fileExtension=o,t.name=n.name,t.contentType=n.type||"unknown"}return t},this.cronapi.internal.uploadFile=function(field,file,progressId,fileInfo,errorFile){if(errorFile&&errorFile.length&&errorFile[0].$errorMessages&&errorFile[0].$errorMessages.maxSize){let n=this.cronapi.$translate.instant("maxFileSize");showErrorNotification.bind(this)(`${n} ${errorFile[0].$errorParam}`)}if(file){var regexForDatasource=/(.*?).active./g,groupDatasource=regexForDatasource.exec(field);if(groupDatasource){var datasource=eval(groupDatasource[1]);if(datasource.isOData()){let n=cronapi.internal.getFieldFromActiveString(field),t=datasource.getFieldSchema(n);if(t&&"Binary"==t.type){if(datasource.active["__odataFile_"+n]=file,datasource.active[n]=datasource.name+".active.__odataFile_"+n,fileInfo){let n=cronapi.internal.getJsonDescriptionFromFile(file),t=cronapi.internal.getFieldFromActiveString(fileInfo);datasource.active[t]=JSON.stringify(n)}return}}}this.cronapi.internal.uploadFileAjax(field,file,progressId)}},this.cronapi.object={},this.cronapi.object.getProperty=function(n,t){n||(n={});var a=t.split(".");if(1<a.length){var o=function(n,t,a){return a||(a=0),void 0===n[t[a]]&&(n[t[a]]={}),a++,a<t.length?o(n[t[a-1]],t,a):n[t[a-1]]};return o(n,a,0)}return n[t]},this.cronapi.object.setProperty=function(n,t,a){var o=t.split(".");if(1<o.length){var r=function(n,t,a,o){o||(o=0),n[t[o]]===void 0&&(n[t[o]]={}),o++,o<t.length?r(n[t[o-1]],t,a,o):n[t[o-1]]=a};r(n,o,a,0)}else n[t]=a},this.cronapi.object.createObjectFromString=function(n){return JSON.parse(n)},this.cronapi.object.createObjectLoginFromString=function(n,t){return JSON.parse(JSON.stringify({username:n,password:t}))},this.cronapi.object.serializeObject=function(n){return JSON.stringify(n)},this.cronapi.object.deleteProperty=function(n,t){delete n[t]},this.cronapi.object.newObject=function(){var n={};if(arguments&&0<arguments.length)for(var t=0,a;t<arguments.length;t++)a=arguments[t],a.name&&(n[a.name]=a.value);return n},this.cronapi.object.getObjectField=function(n,t){var a;return n&&t&&(a=n[t]),a},this.cronapi.json={},this.cronapi.json.createObjectFromString=function(n){return this.cronapi.object.createObjectFromString(n)},this.cronapi.json.setProperty=function(n,t,a){this.cronapi.object.setProperty(n,t,a)},this.cronapi.json.deleteProperty=function(n,t){this.cronapi.object.deleteProperty(n,t)},this.cronapi.json.getProperty=function(n,t){return this.cronapi.object.getProperty(n,t)},this.cronapi.cordova={},this.cronapi.cordova.vibrate=function(n){navigator.vibrate(n)},this.cronapi.cordova.device={},this.cronapi.cordova.device.getFirebaseToken=function(n,t){document.addEventListener("deviceready",function(){try{window.FirebasePlugin.getToken(cronapi.util.handleCallback(n),cronapi.util.handleCallback(t))}catch(n){console.error(n),t(n)}},!1)},this.cronapi.cordova.device.getFirebaseNotificationData=function(n,t){document.addEventListener("deviceready",function(){try{window.FirebasePlugin.onMessageReceived(function(t){n(t)},function(n){t(n)})}catch(n){console.warn(n)}try{window.FirebasePlugin.onNotificationOpen(function(t){n(t)},function(n){t(n)})}catch(n){console.warn(n)}},!1)},this.cronapi.cordova.device.getDeviceInfo=function(n){return window.device[n]},this.cronapi.cordova.geolocation={},this.cronapi.cordova.geolocation.getCurrentPosition=function(n,t){navigator.geolocation.getCurrentPosition(this.cronapi.util.handleCallback(n),this.cronapi.util.handleCallback(t))},this.cronapi.cordova.geolocation.watchPosition=function(n,t,a,o,r){return navigator.geolocation.watchPosition(this.cronapi.util.handleCallback(n),this.cronapi.util.handleCallback(t),{maximumAge:a,timeout:o,enableHighAccuracy:r})},this.cronapi.cordova.geolocation.clearWatchPosition=function(n){navigator.geolocation.clearWatch(n)},this.cronapi.cordova.camera={},this.cronapi.cordova.camera.getPicture=function(n,t,a,o,r,c,s){(r===void 0||null===r)&&(r=0),c=!0===c||"true"===c,s=!0===s||"true"===s;let l={destinationType:+a,sourceType:+o,mediaType:+r,allowEdit:c,quality:s?50:100,encodingType:s?0:1};if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId){let o=async t=>{t.startsWith("file://")?t=Ionic.WebView.convertFileSrc(t):t&&!t.startsWith("data:image")&&(t="data:image/jpeg;base64, "+t),n&&n(t)};const s=n=>new Promise((t,a)=>{window.resolveLocalFileSystemURL(n,n=>{n.file(n=>{const a=new FileReader;a.onloadend=()=>{const n=a.result;t(n)},a.readAsDataURL(n)},n=>a(n))})});c&&0===+r?navigator.camera.getPicture(n=>plugins.ratioCrop(n=>{+a===Camera.DestinationType.FILE_URI?o(n):s(n).then(this.cronapi.util.handleCallback(o)).catch(this.cronapi.util.handleCallback(t))},this.cronapi.util.handleCallback(t),n,{}),this.cronapi.util.handleCallback(t),{...l,destinationType:Camera.DestinationType.FILE_URI,allowEdit:!1}):navigator.camera.getPicture(this.cronapi.util.handleCallback(o),this.cronapi.util.handleCallback(t),l)}else l.allowEdit=c,l.successCallback=n,l.errorCallback=t,l.targetWidth=640,l.targetHeight=480,this.cronapi.internal.getPicture(l)},this.cronapi.cordova.camera.qrCodeScanner=function(n,t,a,o){const r={preferFrontCamera:!1,showFlipCameraButton:!0,showTorchButton:!0,saveHistory:!0,prompt:t,resultDisplayDuration:500,orientation:"portrait",disableAnimations:!0,disableSuccessBeep:!1};"all"!==n&&(r.formats=n),window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId?cordova.plugins.barcodeScanner.scan(function(n){a(n.text)},function(n){"Scan is already in progress"!==n&&o(n)},r):this.cronapi.internal.qrCodeScanner(a,o,r)},this.cronapi.cordova.file={},this.cronapi.cordova.file.getDirectory=function(n){var t;return"0"==n?t=cordova.file.dataDirectory:(t=cordova.file.externalApplicationStorageDirectory,!t&&(t=cordova.file.externalDataDirectory),!t&&(t=cordova.file.syncedDataDirectory)),t},this.cronapi.cordova.file.removeFile=function(n,t,a){window.resolveLocalFileSystemURL(n,function(n){n.remove(function(n){t&&t(n)}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.readFile=function(n,t,a,o){window.resolveLocalFileSystemURL(n,function(n){n.file(function(n){var a=new FileReader;switch(a.onloadend=function(){t(this.result)},o){case"ARRAYBUFFER":{a.readAsArrayBuffer(n);break}case"TEXT":{a.readAsText(n);break}case"BINARYSTRING":{a.readAsBinaryString(n);break}case"DATAURL":{a.readAsDataURL(n);break}default:a.readAsText(n)}}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.createFile=function(n,t,a,o,r){n||getDirectory(0);window.resolveLocalFileSystemURL(n,function(c){console.log(n),c.getFile(t,{create:!0},function(n){n.createWriter(function(n){n.onwriteend=function(){console.log("Write of file \""+t+"\"\" completed.")},n.onerror=function(n){console.log("Write failed: "+n.toString())};var r=new Blob([a],{type:"text/plain"});n.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(n,t,a,o){window.resolveLocalFileSystemURL(n,function(n){n.getDirectory(t,{create:!0},function(n){a&&a(n)}.bind(this),this.cronapi.util.handleCallback(o))}.bind(this),this.cronapi.util.handleCallback(o))},this.cronapi.cordova.storage={},this.cronapi.cordova.storage.setStorageItem=function(n,t){var a=window.localStorage;a?a.setItem(n,t):console.error("Local Storage not Found!")},this.cronapi.cordova.storage.getStorageItem=function(n){var t=window.localStorage;return t?t.getItem(n):void console.error("Local Storage not Found!")},this.cronapi.cordova.storage.removeStorageItem=function(n){var t=window.localStorage;t?t.removeItem(n):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(n){return navigator.connection.type==n},this.cronapi.cordova.database={},this.cronapi.cordova.database.DatabaseModule=class{constructor(){this.DEFAULT_DATABASE_NAME="cronappDB"}connect(n=this.DEFAULT_DATABASE_NAME){let t=window.openDatabase;if(window.sqlitePlugin&&(t=window.sqlitePlugin.openDatabase),void 0===t)throw"Sem suporte para SQLDatabase!";return t(n,"1.0",n,1e6)}async executeSQL(n=this.DEFAULT_DATABASE_NAME,t="",a=[]){const o=this.connect(n),r=n=>n.trim().split(";").filter(n=>n?n:null);try{const n=r(t);return this.handleExecuteTransaction(o,n,a)}catch(n){throw console.log(n),n}}extractSQLResult(n){return n._array?n._array:n}async handleExecuteSQL(n,t,a){return new Promise((o,r)=>{n.executeSql(t,a,(n,t)=>{try{o(t.rows)}catch(n){r(n)}})})}async handleExecuteTransaction(n,t,a){return new Promise((o,r)=>{try{n.transaction(async n=>{let r;for(let o of t)r=await this.handleExecuteSQL(n,o,a);o(this.extractSQLResult(r))})}catch(n){r(n)}})}},this.cronapi.cordova.database.openDatabase=function(n){const t=new this.cronapi.cordova.database.DatabaseModule;return t.connect(n)},this.cronapi.cordova.database.executeSQL=async function(n,t,a){let o=new this.cronapi.cordova.database.DatabaseModule;return o.executeSQL(n,t,a)},this.cronapi.cordova.database.executeSql=function(n,t,a,o,r){var c=this.cronapi.cordova.database.openDatabase(n);c.transaction(function(n){n.executeSql(t,a,function(n,t){o.call(this,Object.values(t.rows))}.bind(this))}.bind(this),function(n){console.log(n),r(n)}.bind(this))},this.cronapi.cordova.database.executeMultipleSql=function(n,t,a,o){var r=this.cronapi.cordova.database.openDatabase(n);let c=[],s=t.split(";");for(let l in s){let n=s[l];if(!n)break;let t=new Promise((t,a)=>{r.transaction(function(o){o.executeSql(n.trim(),[],function(n,a){t(a)}.bind(this),function(n,t){a(t)}.bind(this))}.bind(this))});c.push(t)}Promise.all(c).then(function(n){a(n)}.bind(this)).catch(function(n){o(n)}.bind(this))},this.cronapi.event={},this.cronapi.event.contextMenu=function(n,t,a,o){$("#ulKendoContextMenu").kendoMenu();var r=$("#ulKendoContextMenu").data("kendoMenu");r&&r.destroy();let c=$("body"),s=$(`<ul id="ulKendoContextMenu"></ul>`);c.append(s);let l={target:"#"+n,animation:{open:{effects:t},duration:500}};"left"===a&&(l.showOn="click"),l.dataSource=Array.isArray(o)?o:[o],$("#ulKendoContextMenu").kendoContextMenu(l)},this.cronapi.event.itemContextMenu=function(n,t,a,o){let r={text:n};return o&&(r.items=Array.isArray(o)?o:[o]),o||(r.select=a),t&&(r.cssClass=t),r},this.cronapi.event.changeValueAccordion=function(n,t,a){"collapseAll"===t?($("#"+n+" .panel-collapse").data("bs.collapse",null),$("#"+n+" .panel-collapse").collapse("hide")):"expandAll"===t?($("#"+n+" .panel-collapse").data("bs.collapse",null),$("#"+n+" .panel-collapse").collapse("show")):"collapseOne"===t?setTimeout(function(){$("#"+a).filter("[aria-expanded=true]").trigger("click")},500):"expandOne"===t?setTimeout(function(){$("#"+a).filter("[aria-expanded=false]").trigger("click")},500):void 0},this.cronapi.event.changeInnerTextButton=function(n,t){let a=`#${n} button span`;"BUTTON"===$(`#${n}`).prop("tagName")&&(a=`#${n} span`),$(a).text(t)},this.cronapi.cordova.database.openInAppBrowser=function(n){cordova.InAppBrowser&&cordova.InAppBrowser.open(n,"_blank","location=no")},this.cronapi.cordova.util={},this.cronapi.cordova.util.fingerPrintRead=function(n,t){if(Fingerprint){function a(){n(0)}function o(){t(-1)}Fingerprint.isAvailable(function(){Fingerprint.show({},a,o)},function(){t(-2)})}else t(-2)},this.cronapi.internal.ptDate=function(n){var t=n[1],a=n[2],o=n[3],r=n[5],c=n[6],s=n[7],l;return l=r?new Date(o,a-1,t,r,c,s):new Date(o,a-1,t,0,0,0),l},this.cronapi.internal.enDate=function(n){var t=n[1],a=n[2],o=n[3],r=n[5],c=n[6],s=n[7],l;return l=r?new Date(o,t-1,a,r,c,s):new Date(o,t-1,a,0,0,0),l},this.cronapi.internal.parseBoolean=function(n){return!!n&&("boolean"==typeof n?n:(n=n.toString().toLowerCase().trim(),"1"==n||"true"==n))},this.cronapi.internal.removeAccents=function(n){var t="";for(i=0;i<n.length;i++)t+=0<="\xE1\xE0\xE3\xE2\xE4\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF3\xF2\xF5\xF4\xF6\xFA\xF9\xFB\xFC\xE7\xC1\xC0\xC3\xC2\xC4\xC9\xC8\xCA\xCB\xCD\xCC\xCE\xCF\xD3\xD2\xD5\xD6\xD4\xDA\xD9\xDB\xDC\xC7".search(n.substr(i,1))?"aaaaaeeeeiiiiooooouuuucAAAAAEEEEIIIIOOOOOUUUUC".substr("\xE1\xE0\xE3\xE2\xE4\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF3\xF2\xF5\xF4\xF6\xFA\xF9\xFB\xFC\xE7\xC1\xC0\xC3\xC2\xC4\xC9\xC8\xCA\xCB\xCD\xCC\xCE\xCF\xD3\xD2\xD5\xD6\xD4\xDA\xD9\xDB\xDC\xC7".search(n.substr(i,1)),1):n.substr(i,1);return t},this.cronapi.internal.arrayRemove=function(n,t){var a=this.cronapi.internal.arrayIndexOf(n,t);-1!=a&&n.splice(a,1)},this.cronapi.internal.arrayIndexOf=function(n,t){var a=-1;return $(n).each(function(n){t==this&&(a=n)}),a},this.cronapi.internal.replaceAll=function(n,t,a){return n.toString().split(t).join(a)},this.cronapi.internal.getWindowHeight=function(){$(window).height()},this.cronapi.internal.getWindowWidth=function(){$(window).width()},this.cronapi.internal.getAddressWithHostApp=function(n){var t=window.hostApp||"";if(t=t.endsWith("/")?t.substr(0,t.length-1):t,n){var a=n.startsWith("/")?n.substr(1):n;t=""===t?a:t+"/"+a}return t},this.cronapi.internal.Url={encode:function(n){return n?escape(this.cronapi.internal.Url._utf8_encode(n)):""},decode:function(n){return n?this.cronapi.internal.Url._utf8_decode(unescape(n)):""},_utf8_encode:function(t){t=t.replace(/\r\n/g,"\n");for(var a="",o=0,r;o<t.length;o++)r=t.charCodeAt(o),128>r?a+=_StringfromCharCode(r):127<r&&2048>r?(a+=_StringfromCharCode(192|r>>6),a+=_StringfromCharCode(128|63&r)):(a+=_StringfromCharCode(224|r>>12),a+=_StringfromCharCode(128|63&r>>6),a+=_StringfromCharCode(128|63&r));return a},_utf8_decode:function(n){for(var t="",a=0,o=c1=c2=0;a<n.length;)o=n.charCodeAt(a),128>o?(t+=_StringfromCharCode(o),a++):191<o&&224>o?(c2=n.charCodeAt(a+1),t+=_StringfromCharCode((31&o)<<6|63&c2),a+=2):(c2=n.charCodeAt(a+1),c3=n.charCodeAt(a+2),t+=_StringfromCharCode((15&o)<<12|(63&c2)<<6|63&c3),a+=3);return t}},this.cronapi.internal.stringToJs=function(n){return(n+"").replace(/[\\"']/g,"\\$&").replace(/\u0000/g,"\\0")},this.cronapi.internal.getErrorMessage=function(n,t){try{var a=null;if("object"==typeof n?n.data&&("object"==typeof n.data?a=n.data:"string"==typeof n.data&&(a=JSON.parse(n.data))):"string"==typeof n&&(a=JSON.parse(n)),a&&a.error)return a.error}catch(n){}return t},this.cronapi.util.upload=function(n,t,a,o,r){this.UploadService.upload({description:t,id:n,filter:a,maxSize:o,multiple:r,scope:this})},this.cronapi.util.getBaseUrl=function(){return window.location.origin},this.cronapi.util.watchAcceleration=function(n){window.addEventListener("deviceorientation",function(t){n({absolute:t.absolute,alpha:t.alpha,beta:t.beta,gamma:t.gamma})},!1)},this.cronapi.chart={},this.cronapi.chart.createChart=function(n,t,a,o){function r(){return g<u.length?g++:g=0,g}function c(){""==h.data.datasets[0].label&&(null==h.options.legend?(h.options.legend={},h.options.legend.display=!1):h.options.legend.display=!1)}function s(n){var t=[],a=4;for(Array.isArray(n[4])&&"object"==typeof n[4][0]&&("label"in n[4][0])&&("data"in n[4][0])&&(n=n[4],a=0),a;a<n.length;a++){let o=n[a].label?n[a].label:null,r=n[a].options?n[a].options:null,c=n[a].data?n[a].data:n[a];t.push(cronapi.chart.createDataset(o,c,r))}return t}function l(){null==h.options?(h.options={},h.options.scales={},h.options.scales.yAxes=[{ticks:{beginAtZero:!0}}]):null==h.options.scales&&(h.options.scales={},h.options.scales.yAxes=[{ticks:{beginAtZero:!0}}])}let p;if("object"==typeof o)p=o;else try{p=JSON.parse(o)}catch(n){p={},console.log(n)}var d=p&&p.colors?p.colors:[],u=["#FF5C00","#0E53A7","#48DD00","#FFD500","#7309AA","#CD0074","#00AF64","#BF8230","#F16D95","#A65000","#A65000","#AF66D5"],g=0,m=document.getElementById(n);if(m){m._chart&&m._chart.destroy(),m.getContext("2d");var h={};switch(h.type=t,h.data=[],h.options=p,h.data.labels=Array.isArray(a)?a:JSON.parse(a),h.data.datasets=[],t){case"line":{h.data.datasets=s(arguments),$.each(h.data.datasets,function(n,t){t.fill=!1,t.backgroundColor=d[n]?d[n]:u[r()],t.borderColor=t.backgroundColor,l(),c()});break}case"bar":case"horizontalBar":{h.data.datasets=s(arguments),$.each(h.data.datasets,function(n,t){t.backgroundColor=1===h.data.datasets.length&&1<d.length?d:d[n]?d[n]:u[r()],t.borderColor=t.backgroundColor}),l(),c();break}case"doughnut":case"pie":case"polarArea":{var f=s(arguments);$.each(f,function(n){var t={};t=f[n],t.backgroundColor=[],t.borderColor=[],$.each(t.data,function(n){t.backgroundColor.push(d[n]?d[n]:u[r()])}),t.borderColor=t.backgroundColor,h.data.datasets.push(t),g=0});break}default:}var b=new Chart(m,h);m._chart=b}},this.cronapi.chart.createDataset=function(n,t,a){let o;if("object"==typeof a)o=a;else try{o=JSON.parse(a)}catch(n){o={},console.log(n)}var r={options:o};return r.label=n?n:"",r.data=Array.isArray(t)?t:t?JSON.parse(t):[],r},this.cronapi.social={},this.cronapi.social.gup=function(n,t){t||(t=location.href),n=n.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a="[\\?&]"+n+"=([^&#]*)",o=new RegExp(a),r=o.exec(t);return null==r?null:r[1]},this.cronapi.social.login=function(n,t,a){var o=this.cronapi.screen.getHostapp()?`${this.cronapi.screen.getHostapp()}\auth`:`\auth`,r;return window.cordova&&!this.cronapi.screen.getHostapp()?void this.cronapi.screen.notify("error","HostApp is Required"):void(this.cronapi.screen.showLoading(),this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",o,this.cronapi.object.createObjectFromString(["{ \"username\": \"",n,"\" , \"password\": \"",t,"\" } "].join("")),this.cronapi.object.createObjectFromString(["{ \"X-AUTH-TOKEN\": \"",a,"\" } "].join("")),async n=>{r=n,window.isUsingCookie()&&delete r.token,this.cronapi.screen.hide(),this.cronapi.util.setLocalStorage("_u",this.cronapi.object.serializeObject(r));try{this.cronapi.blockly.js.blockly.auth.Home.change&&(await this.cronapi.client("blockly.js.blockly.auth.Home.change").run())}catch(n){this.cronapi.screen.changeView("#/app/logged/home",[])}},n=>{if(r=n,"403"==this.cronapi.object.getProperty(r,"status")||"401"==this.cronapi.object.getProperty(r,"status")){var t=this.cronapi.$translate.instant("Login.view.invalidPassword");this.cronapi.screen.notify("error",t)}else this.cronapi.screen.notify("error",this.cronapi.object.getProperty(r,"responseJSON.message"));this.cronapi.screen.hide()}))},this.cronapi.social.sociaLogin=function(n,t){var a=this,o=window.hostApp+"signin/"+n+"/";if(window.cordova&&cordova.InAppBrowser){var r="";(!0===t||"true"===t)&&(r=",clearcache=yes");var c=cordova.InAppBrowser.open(o,"_blank","location=no"+r);c.addEventListener("loadstart",function(n){-1<n.url.indexOf("_ctk")&&(c.close(),a.cronapi.social.login.bind(a)("#OAUTH#","#OAUTH#",a.cronapi.social.gup("_ctk",n.url)))})}else window.location.href="signin/"+n+"/"},this.cronapi.social.ssoLogin=async function(){let n=this.cronapi.$scope,t=new Promise((t,a)=>{if(window.cordova&&cordova.InAppBrowser){const o=cordova.InAppBrowser.open(window.hostApp+"login","_blank","location=no,footer=yes,zoom=no,enableViewportScale=yes,hidenavigationbuttons=yes"),r=c=>{const s=new URL(c.url),l=new URLSearchParams(s.search);l.has("_ctk")?(o.removeEventListener("loadstart",r),o.close(),n.login("#OAUTH#","#OAUTH#",l.get("_ctk")),t()):a()};o.addEventListener("loadstart",r)}else window.ssoWindow=window.open(this.cronapi.internal.getAddressWithHostApp("login")),window.addEventListener("message",function(a){a.data&&"sso_user"===a.data.type&&(window.ssoWindow&&window.ssoWindow.close(),n.login("#OAUTH#","#OAUTH#",a.data._ctk),t())},!1)});return t},this.cronapi.screen.getSelectedRowsGrid=function(n){var t=[],a=$("[ng-model=\""+n+"\"]").children().data("kendoGrid");if(a){var o=a.select();o.each(function(){var n=a.dataItem(this);t.push(n)})}return t},this.cronapi.screen.back=function(){history.back()},this.cronapi.notification={},this.cronapi.notification.customNotify=function(n,t,a,o,r,c){function s(n){"bottom"===n?(y.position.bottom=20,b=b.concat("-bottom")):(y.position.top=60,b=b.concat("-top"))}function l(n){"right"===n?(y.position.right=20,b=b.concat("-right")):"center"===n?(y.show=p,b=b.concat("-center")):(y.position.left=20,b=b.concat("-left"))}function p(n){if(1==n.sender.getNotifications().length){var t=n.element.parent(),a=t.width(),o=$(window).width(),r;r=Math.floor(o/2-a/2),n.element.parent().css({left:r})}}function d(n){"slide"===n?(y.show&&null!=y.position.bottom?(y.animation.open.effects="slideIn:up",b=b.concat("-slideIn-up")):y.show&&null!=y.position.top?(y.animation.open.effects="slideIn:down",b=b.concat("-slideIn-dow")):null==y.position.left?null==y.position.left&&(y.animation.open.effects="slideIn:left",b=b.concat("-slideIn-left")):(y.animation.open.effects="slideIn:right",b=b.concat("-slideIn-right")),y.animation.close.effects="slideOut"):"zoom"===n?(y.animation.open.effects="zoomIn",y.animation.close.effects="zoomOut",b=b.concat("-zoom")):(y.animation.open.effects="fadeIn",y.animation.close.effects="fadeOut",b=b.concat("-fade"))}function u(n){"false"==n&&(y.autoHideAfter=0,b=b.concat("-autoHideAfter"))}async function g(n,t){if(!f(n)){let a=$(`<span id="${n}"></span>`);$("body").append(a),await $(`#${n}`).kendoNotification(t),"center"==r&&p(e)}}function m(n){return $(`#${n}`).getKendoNotification()}function h(n,t,a){$(`#${n}`).getKendoNotification().show(t,a)}function f(n){return document.getElementById(n)}let b="customNotification",y={stacking:"default",autoHideAfter:5e3,position:{pinned:!0},animation:{open:{effects:null},close:{effects:null}}};a||o||r||c?async function p(n,t,a,o,r,c){s(o),l(r),d(a),u(c),g(b,y),h(b,n,t)}(t,n,a,o,r,c):async function a(n,t){let o={id:"CronappNotification",verticalPosition:"top",horizontalPosition:"left",animation:"slide",autoHide:"false"};s(o.verticalPosition),l(o.horizontalPosition),d(o.animation),u(o.autoHide),m(o.id)||g(o.id,y),h(o.id,n,t)}(t,n)},this.cronapi.notification.confirmDialogAlert=function(n,t,a,o){function r(n){let t=Array.isArray(n)?n:[n],a=!1;for(let o=0,r;o<t.length;o++)r=t[o],r&&(u.actions.push({text:r.title,action:r.value,primary:"true"==r.primaryValue||null}),a=!0);a||u.actions.push({text:"OK",primary:!0})}let c="cronapp-dialog-"+(Math.random()+"").substring(2),s=$(`<div data-dialog-type="${n}" id="${c}"></div>`);$("body").append(s);const l=window.ionic&&window.cordova,p=()=>"error"===n?`<span class="cronapp-x-mark">
1
+ (window.fixedTimeZone===void 0||null===window.fixedTimeZone)&&(window.fixedTimeZone=!0),(window.timeZone===void 0||null===window.timeZone)&&(window.timeZone="UTC"),(window.timeZoneOffset===void 0||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||"browser"==window.cordova.platformId)});function cronapi(){"use strict";var _StringfromCharCode=String.fromCharCode;function getCalendar(n){let t=Date.now(),a=1e4,o=(r,c)=>{let s=$("#"+n+" cron-calendar").data("kendoCalendar");s?r(s):a&&Date.now()-t>=a?r():setTimeout(()=>o(r,c),200)};return new Promise(o)}function showErrorNotification(n){const t=this.cronapi.$translate.instant(n);this.cronapi.$scope.Notification.error(t)}function getChat(n){let t=Date.now(),a=1e4,o=(r,c)=>{let s=$("#"+n+" .k-chat").data("kendoChat");s?r(s):a&&Date.now()-t>=a?r():setTimeout(()=>o(r,c),200)};return new Promise(o)}this.$evt=function(n){var t=this;if(!t.$eval){var a;a=event?event.target:t.$element[0],t=angular.element(a).scope()}t||(t=angular.element(document.getElementById("main-view")).scope()),t.$eval(n)}.bind(this),this.cronapi={},this.cronapi.getRequestData=n=>{let t=n||{};return n.data&&"object"==typeof n.data&&(t=n.data),t},this.cronapi.toDate=function(n){return new Date(n)};var getDatasource=function(n){return"string"==typeof n?window[n]:n};this.cronapi.doEval=function(n){return n};var reorderArgs=function(n,t,a){if(t&&t.length&&a&&a.length){let r=[];for(var o=0;o<t.length;o++)r.push(null);for(let o=0;o<t.length;o++)for(let c=0;c<a.length;c++)if("string"==typeof t[o]){if(t[o]==a[c]){r[o]=n[c];break}}else if(t[o].description==a[c]||t[o].id==a[c]){r[o]=n[c];break}return r}return n};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,func;i<result.commands.length;i++){func=eval(result.commands[i].function);let argsNames=result.commands[i].names,args=result.commands[i].params,argsMetadata;try{argsMetadata=eval(result.commands[i].function+"Args")}catch(n){}args=reorderArgs(args,argsMetadata,argsNames),await func.apply(this,args)}return result.value}};let clientMap={},clientMapTimeout={};this.cronapi.client=function(pack){let attr=!1,notificationOnError=!0,argsNames;return{attr:function(){return attr=!0,this},disableNotification:function(){return notificationOnError=!1,this},names:function(){argsNames=[];for(let n=0;n<arguments.length;n++)argsNames.push(arguments[n]);return this},run:function(){for(var key=pack,args=[],i=0;i<arguments.length;i++)key+=arguments[i]+"",args.push(arguments[i]);var bk,argsMetadata;try{bk=eval("blockly."+pack)}catch(n){}try{argsMetadata=eval("blockly."+pack+"Args")}catch(n){}if(!argsMetadata)try{argsMetadata=eval(pack+"Args")}catch(n){}bk||(bk=eval(pack)),args=reorderArgs(args,argsMetadata,argsNames);let isAsyncResult=n=>n!==void 0&&null!==n&&n.then&&"function"==typeof n.then,result;if(!attr){let n="AsyncFunction"===bk.constructor.name;return n?bk.apply(this,args).catch(n=>{if(notificationOnError)this.cronapi.$scope.Notification.error(n);else throw n}):bk.apply(this,args)}return(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(n=>{clientMap[key]!==n&&this.safeApply(()=>{clientMap[key]=n})}).catch(n=>{clientMap[key]!==n&&this.safeApply(()=>{clientMap[key]=n})}):clientMap[key]=result,clientMap[key]),300),clientMap[key])?clientMap[key]:void 0}.bind(this)}};var serverMap={};this.cronapi.server=function(n){var t=!1,a=!1,o=!0,r=!0;let c;return{attr:function(){return t=!0,this},toPromise:function(){return a=!0,this},notAsync:function(){return o=!1,this},names:function(){c=[];for(let n=0;n<arguments.length;n++)c.push(arguments[n]);return this},disableNotification:function(){return r=!1,this},run:function(){for(var s=n,l=0;l<arguments.length;l++)s+=arguments[l]+"";if(t){if(serverMap.hasOwnProperty(s))return"$$loading"==serverMap[s]?"":serverMap[s];serverMap[s]="$$loading"}var p=n.split("."),d=p[p.length-1];p.pop();var u=p.join("."),g=new Promise((n,t)=>{b=n,y=t}),m=function(n){this.safeApply(function(){t&&(serverMap[s]=n),b(n)})}.bind(this),h=function(n){this.safeApply(function(){t&&(serverMap[s]=n),y(n)}),n&&r&&this.cronapi.$scope.Notification.error(n)}.bind(this),f=[u+":"+d],b,y;if(o){f.push(m),f.push(h),c&&c.length&&f.push({argsNames:c});for(var l=0;l<arguments.length;l++)f.push(arguments[l]);if(this.cronapi.util.makeCallServerBlocklyAsync.apply(this,f),a)return g}else{c&&c.length&&f.push({argsNames:c});for(var l=0;l<arguments.length;l++)f.push(arguments[l]);let n=this.cronapi.util.callServerBlockly.apply(this,f);return t&&(serverMap[s]=n),n}}.bind(this)}},this.cronapi.callFunction=function(name){return{call:function(){var ref;try{ref=eval(name)}catch(n){}return ref?ref.apply(this,arguments):void 0}.bind(this)}},this.cronapi.conversion={},this.cronapi.conversion.asciiToBinary=function(n){var t="";if(0<n.length)for(var a=0,o;a<n.length;a++){o=n.charCodeAt(a);for(var r=7;0<=r;r--)t+=1&o>>r}return t},this.cronapi.conversion.toBoolean=function(n){return this.cronapi.internal.parseBoolean(n)},this.cronapi.conversion.toBytes=function(n){return n?n.toString():""},this.cronapi.conversion.chrToAscii=function(n){return n?n.charCodeAt(0):null},this.cronapi.conversion.stringToJs=function(n){return this.cronapi.internal.stringToJs(n)},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(n,t){let a=moment(n,t);return a.isValid()?a.toDate():null},this.cronapi.conversion.intToHex=function(n){return(+n).toString(16).toUpperCase()},this.cronapi.conversion.toLong=function(n){return parseInt(n)},this.cronapi.conversion.toString=function(n){if(n){var t=new String(n);return t.toString()}return""},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 n=[];for(let t=0,a;t<paramsNames.length;t++)a={},a[paramsNames[t]]=params[t],n.push(a);params=n}let convertToODataDate=n=>{let t=n.getFullYear(),a=(n.getMonth()+1+"").padStart(2,"0"),o=(n.getDate()+"").padStart(2,"0"),r=(n.getHours()+"").padStart(2,"0"),c=(n.getMinutes()+"").padStart(2,"0"),s=(n.getSeconds()+"").padStart(2,"0");return`'${t}-${a}-${o}T${r}:${c}:${s}'`},evalForODATA=async value=>{let result="";try{result=await eval(value.replace("await ",""))}catch(n){result=value}return"string"==typeof result&&(result=`'${result}'`),"object"==typeof result&&result.getFullYear&&(result=convertToODataDate(result)),result},getFilter=n=>{let t="",a=n.match(/(\$filter=)(.*)/);return a&&2<a.length&&(t=a[2]),t},getUrl=n=>{let t="",a=n.match(/^(GET|POST|DELETE|PUT)\s(.*?)($|\?)/);return a&&2<a.length&&(t=`${odataUrl}${a[2]}`),t};if(params){for(let n=0,t;n<params.length;n++)for(let a in t=params[n],t)t[a]=await evalForODATA(t[a]);params.forEach(n=>{for(let t in n)filterUrl=filterUrl.replace(`:${t}`,n[t])})}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(n,t,a)=>{let o=this.$http(n);o.then(n=>t(n)),o.catch(n=>a(n))},success=n=>{let t=n.data.d,a=t.results.length;totalReceived+=a,totalReceived<t.__count&&(config.params.$skip+=defaultPagination,makeRequest(config,success,error)),this.cronapi.internal.updatePouchDB(db,t.results),console.log(`Caching Data (%c${id}%c): %c${totalReceived} of ${t.__count}`,"color: red","color: black","color: red")},error=n=>{console.error(`error caching datasource ${db.name}`,n)};makeRequest(config,success,error)},this.cronapi.util.changeViewLogout=function(){let n=window.cordova?this.cronapi.util.getMobileLogoutRoute():this.cronapi.util.getWebLogoutRoute();this.cronapi.screen.changeView(n)},this.cronapi.util.getWebLogoutRoute=function(){let n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){let a=t.responseJSON,o=a["cronapp.framework.web.logoutroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n)},this.cronapi.util.getMobileLogoutRoute=function(){let n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){let a=t.responseJSON,o=a["cronapp.framework.mobile.logoutroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n)},this.cronapi.util.changeViewMain=function(){var n;n=window.cordova?this.cronapi.util.getMobileMainRoute():this.cronapi.util.getWebMainRoute(),this.cronapi.screen.changeView(n)},this.cronapi.util.getWebMainRoute=function(){var n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){var a=t.responseJSON,o=a["cronapp.framework.web.mainroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n)},this.cronapi.util.getMobileMainRoute=function(){var n="views/login.view.html",t=$.get({url:"cronapp.json",async:!1});if(t&&t.responseJSON){var a=t.responseJSON,o=a["cronapp.framework.mobile.mainroute"];o&&(n=o)}return this.cronapi.internal.viewToRoute(n,"mobile")},this.cronapi.util.setToken=function(n){let t={};localStorage.getItem("_u")&&(t=JSON.parse(localStorage.getItem("_u")),window.isUsingCookie()?delete t.token:t.token=n),localStorage.setItem("_u",JSON.stringify(t))},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 n=new Promise((n,o)=>{t=n,a=o}),t,a;return n.__functionToResolve=t,n.__functionToReject=a,n},this.cronapi.util.handleValueToPromise=function(n,t,a){"resolve"===n?t.__functionToResolve(a):t.__functionToReject(a)},this.cronapi.util.monitorPromise=function(n,t,a){n&&(t&&n.then(t),a&&n.catch(a))},this.cronapi.util.sleep=async function(n){var t=new Promise(t=>{setInterval(()=>{t(n)},n)});return t},this.cronapi.util.callServerBlocklyAsync=function(n,t,a,o){const r=()=>{const n=new WeakSet;return(t,a)=>{if("object"==typeof a&&null!==a){if(n.has(a))return;n.add(a)}return a}};var c="api/cronapi/call/body/#classNameWithMethod#/".replace("#classNameWithMethod#",n),s=this.cronapi.$scope.http,l=[],p;$(arguments).each(function(){this&&Array.isArray(this.argsNames)?p=this.argsNames:l.push(this)});var d={fields:t,inputs:l.slice(4)};p&&(d.names=p);var u=this.cronapi.internal.getAddressWithHostApp(c);let g;try{g=JSON.stringify(d)}catch(n){g=JSON.stringify(d,r())}let m=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()};$.ajax({type:"POST",url:u,dataType:"html",data:g,headers:m,success:a,error:o})},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(n){}if(fieldValue&&0!==Object.keys(fieldValue).length){var keys=Object.keys(fieldValue);keys.forEach(function(n){void 0!==fieldValue[n]&&null!==fieldValue[n]&&(!fields.vars&&(fields.vars={}),fields.vars[n]=fieldValue[n])})}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.responseText,errorThrown);"string"==typeof callbackError?eval(callbackError)(message):callbackError?callbackError(message):this.cronapi.$scope.Notification.error(message)}.bind(this)),$(arguments).each(function(n){3<=n&&paramsApply.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(n){throw n},this.cronapi.util.createException=function(n){return n},this.cronapi.util.language=function(){var n=(window.navigator.userLanguage||window.navigator.language||"pt_br").replace("-","_");return n},this.cronapi.util.share=function(n,t,a){const o=new Promise((o,r)=>{navigator.share({title:n,text:t,url:a}).then(()=>{o("Successful share"),console.log("Successful share")}).catch(n=>{r(n),console.log("Error sharing:",n)})});return o},this.cronapi.util.callServerBlockly=async function(n){let t=[n,null,null],a=1;for(a;a<arguments.length;a++)t.push(arguments[a]);return new Promise(((n,a)=>{t[1]=(t=>{n(t)}).bind(this),t[2]=(n=>{a(n)}).bind(this),this.cronapi.util.makeCallServerBlocklyAsync.apply(this,t)}).bind(this))},this.cronapi.util.callServerBlocklyAsynchronous=function(n,t,a){if(""!=n&&"function"==typeof t){var a=[n,t,t],o=2;for(o;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(n){var t=this.cronapi.internal.getAddressWithHostApp(n);this.cronapi.screen.openUrl(t,"_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(n){this.cronapi.$scope.getReport(n)},this.cronapi.util.getIP=function(){return $.get({url:"https://api.ipify.org/",async:!1}).responseText},this.cronapi.util.openDashboard=function(n){this.cronapi.$scope.getReport(n)},this.cronapi.util.handleCallback=function(n){if(n){let t="AsyncFunction"===n.constructor.name;return t?function(){(async()=>await n.apply(this,arguments))()}.bind(this):n.bind(this)}},this.cronapi.util.getURLFromOthers=function(n,t,a,o,r,c,s){if(o&&"application/x-www-form-urlencoded"===t){for(var l in o)if(o[l]instanceof Array){var p=o[l].toString();o[l]=`[${p}]`}}else o&&"application/json"===t&&(o=JSON.stringify(o));var d=Object.create(r);d["Content-Type"]=t,$.ajax({method:n,url:a,data:o,headers:d}).done(this.cronapi.util.handleCallback(c).bind(this)).fail(this.cronapi.util.handleCallback(s.bind(this)))},this.cronapi.util.getUserToken=function(){if(localStorage.getItem("_u")){let n=JSON.parse(window.localStorage.getItem("_u"));if(n.token)return n.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(n,t){window.sessionStorage.setItem(n,t)},this.cronapi.util.getSessionStorage=function(n){return window.sessionStorage.getItem(n)},this.cronapi.util.setLocalStorage=function(n,t){window.localStorage.setItem(n,t)},this.cronapi.util.getLocalStorage=function(n){return window.localStorage.getItem(n)},this.cronapi.util.executeAsynchronous=function(n){setTimeout(n,0)},this.cronapi.util.scheduleExecution=function(n,t,a,o,r){r=r||!0,r="true"===r||!0===r;var c=1;"seconds"===o?c=1e3:"minutes"===o?c=6e4:"hours"==o&&(c=36e5),t*=c,a*=c;var s=-1,l=setTimeout(function(){n(),s=setInterval(n,a)}.bind(this),t);r&&this.$on("$destroy",function(){try{clearTimeout(l)}catch(n){}try{clearInterval(s)}catch(n){}})},this.cronapi.util.openReport=function(n,t,a){this.cronapi.$scope.getReport(n,t,a)},this.cronapi.util.openDashboard=function(n,t,a){this.cronapi.$scope.getReport(n,t,a)},this.cronapi.util.getCEP=function(n,t){if(this.cronapi.logic.isNullOrEmpty(n))throw new Error("Informe o CEP");if(n=n.replace(/\.|\-/g,"").split(" ").join(""),8>n.length)throw new Error("CEP inv\xE1lido");let a="https://viacep.com.br/ws/"+n+"/json/?callback=?";$.getJSON(a,this.cronapi.util.handleCallback(t.bind(this)))},this.cronapi.screen={},this.cronapi.screen.isInsertingMode=function(n){return getDatasource(n).inserting},this.cronapi.screen.isEditingMode=function(n){return getDatasource(n).editing},this.cronapi.screen.changeTitleScreen=function(n){window.document.title=n},this.cronapi.screen.fieldFromScreen=function(n){return n},this.cronapi.screen.changeValueOfField=function(n,t){try{this.__tempValue=t;var a=new Function("this."+n+" = this.__tempValue;");this.safeApply(a.bind(this))}catch(n){}},this.cronapi.screen.getValueOfField=function(field){try{if(field&&0<field.length){if(-1<field.indexOf(".active."))return eval(field);var scope=eval("this"),recursiveLookup=function(scope){var fieldValue;try{fieldValue=eval("scope."+field)}catch(n){}return void 0!==fieldValue||null!==fieldValue?fieldValue:scope&&scope.$parent?recursiveLookup(scope.$parent):""};return recursiveLookup(scope)}return""}catch(n){alert(n)}},this.cronapi.screen.createScopeVariable=function(n,t){this.cronapi.$scope.safeApply(()=>this.cronapi.$scope.vars[n]=t)},this.cronapi.screen.getScopeVariable=function(n){return this.cronapi.$scope.vars[n]},this.cronapi.screen.notify=function(n,t){(null==t||t==null)&&(t=""),this.cronapi.$scope.Notification({message:t.toString()},n)},this.cronapi.screen.datasourceFromScreen=function(n){return n},this.cronapi.screen.startInsertingMode=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).startInserting(null,()=>{t()})}catch(n){a(n)}})})},this.cronapi.screen.startEditingMode=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).startEditing(null,()=>{t()})}catch(n){a(n)}})})},this.cronapi.screen.backNormalState=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).onBackNomalState(),t()}catch(n){a(n)}})})},this.cronapi.screen.previusRecord=function(n){getDatasource(n).$apply(new function(){getDatasource(n).previous()})},this.cronapi.screen.nextRecord=function(n){getDatasource(n).$apply(new function(){getDatasource(n).next()})},this.cronapi.screen.firstRecord=function(n){getDatasource(n).$apply(new function(){var t=getDatasource(n);t.cursor=-1,t.next()})},this.cronapi.screen.lastRecord=function(n){getDatasource(n).$apply(new function(){var t=getDatasource(n);t.cursor=t.data.length-2,t.next()})},this.cronapi.screen.removeRecord=async function(n){return new Promise((t,a)=>{getDatasource(n).$apply(()=>{try{getDatasource(n).removeSilent(null,()=>{t()},n=>{a(n)})}catch(n){a(n)}})})},this.cronapi.screen.refreshActiveRecord=async function(n){return new Promise((t,a)=>{try{getDatasource(n).refreshActive(()=>{t()},n=>{a(n)})}catch(n){a(n)}})},this.cronapi.screen.hasNextRecord=function(n){return getDatasource(n).hasNext()},this.cronapi.screen.quantityRecords=function(n){return getDatasource(n).data.length},this.cronapi.screen.post=async function(n){return new Promise((t,a)=>{try{getDatasource(n).postSilent(()=>{t()},n=>{a(n)})}catch(n){a(n)}})},this.cronapi.screen.filter=function(n,t){getDatasource(n).isOData()?getDatasource(n).search(t):getDatasource(n).filter("/"+t)},this.cronapi.screen.doFilter=function(n,t,a){let o=a;a instanceof Array&&(o=a.join(" "+t+" ")),getDatasource(n).isOData()?getDatasource(n).search(o):getDatasource(n).filter("/"+o)},this.cronapi.screen.createFilter=function(n,t,a){return"substringof"===t?"substringof('"+(a||!1===a?a instanceof Date?a.toISOString():a:"")+"', "+n+")":n+" "+t+" "+objToOData(a)+""},this.cronapi.screen.changeView=function(view,params){try{function decodeCharParam(value){if(value)for(var param in paramsStopEncode){var regex=eval("/"+param+"/g");value=value.replace(regex,paramsStopEncode[param])}return value}var queryString="",paramsStopEncode={};if(paramsStopEncode["%24"]="$","undefined"!=typeof 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=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=n=>{if(this.cronapi.$scope&&this.cronapi.$scope.$state){let t=this.cronapi.$scope.$state.get(),a=n.split("/").slice(2),o="views/"+a.join("/")+".view.html";t.forEach(t=>{let a=t.templateUrl;if(a instanceof Function){let n=/('|")[a-z0-9/.]+('|")/gim.exec(a.toString());null!==n&&void 0!==n&&n[0]&&(a=n[0].replace(/'|"/g,""))}a===o&&(n="#"+t.url)})}return n};var oldHash=window.location.hash;view=existRoute(view),window.location.hash=view+(queryString?"?"+queryString:"");var oldHashToCheck=oldHash+(-1<oldHash.indexOf("?")?"":"?"),viewToCheck=view+(-1<view.indexOf("?")?"":"?");this.cronapi.forceCloseAllModal(),0<=oldHashToCheck.indexOf(viewToCheck)&&window.location.reload()}catch(n){alert(n)}},this.cronapi.screen.openUrl=function(n,t,a,o){try{var r="_self",c="";t&&"true"==t.toString().toLowerCase()&&(r="_blank"),a&&(c+="width="+a+","),o&&(c+="height="+o+","),window.open(n,r,c)}catch(n){alert(n)}},this.cronapi.screen.getParam=function(n){try{for(var t=[],a=window.location.href.slice(window.location.href.indexOf("?")+1).split("&"),o=0,r;o<a.length;o++)r=a[o].split("="),t.push(r[0]),t[r[0]]=r[1];if(t[n]!==void 0)return decodeURIComponent(t[n])}catch(n){}return null},this.cronapi.screen.confimDialog=function(n){var t=confirm(n);return t},this.cronapi.screen.createDefaultModal=function(n,t,a,o,r,c,s){$("#modalTemplateTitle").text(n),$("#modalTemplateBody").text(t),$("#modalTemplateCancel").text(a),$("#modalTemplateSave").text(o),$("#modalTemplateClose").unbind("click"),$("#modalTemplateClose").click(s),$("#modalTemplateCancel").unbind("click"),$("#modalTemplateCancel").click(c),$("#modalTemplateSave").unbind("click"),$("#modalTemplateSave").click(r),this.cronapi.screen.showModal("modalTemplate")},this.cronapi.screen.showModal=function(n){let t=`#${n}`,a=$(":focus"),o=$(":hover");try{$(t).one("shown.bs.modal",function(){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(){let n=$(t).data("lastFocused"),a=!1,o;n&&n.length&&(o=$($(this).data("lastFocusedClass")),a=$("html").has(n).length?n.is(":visible"):o.is(":visible"));let r=function(n){return $(n[n.length-1]).closest("li:visible").find("a:first")},c=$(t).data("lastHovers");if(a)o.focus(),n.focus();else if($("html").has(n).length){let t=r(n);t.focus()}else if(c&&c.length){let n=r(c);n.focus()}}).modal({backdrop:"static",keyboard:!1})}catch(n){$(t).show()}$(t).css("overflow-y","auto")},this.cronapi.screen.setActiveTab=function(n){this.cronapi.$scope.safeApply(function(){$("#"+n).attr("data-target")===void 0?$("[data-target=\"#"+n+"\"]").tab("show"):$("#"+n).tab("show")})},this.cronapi.screen.hideModal=function(n){try{$("#"+n).modal("hide")}catch(t){$("#"+n).hide()}},this.cronapi.screen.showIonicModal=async function(n){return $(`#${n}`).data("cronapp-modal")&&$(`#${n}`).data("cronapp-modal").remove(),new Promise((t,a)=>{this.cronapi.$scope.$ionicModal.fromTemplateUrl(n,{scope:this.cronapi.$scope,animation:"slide-in-up"}).then(a=>{$("#"+n).data("cronapp-modal",a),a.show(),t()}).catch(n=>a(n))})},this.cronapi.screen.hideIonicModal=function(n){if($("#"+n).data("cronapp-modal")){var t=$("#"+n).data("cronapp-modal");t.remove(),$("#"+n).data("cronapp-modal",null)}},this.cronapi.screen.isShownIonicModal=function(n){if($("#"+n).data("cronapp-modal")){var t=$("#"+n).data("cronapp-modal");return t.isShown()}return!1},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(n){const t=$("#"+n);if(0<t.length){const n=t.parent();t.attr("data-component")?t.attr("style","display:block !important"):n.attr("style","display:block !important")}else console.error("Element not found: "+n)},this.cronapi.screen.hideComponent=function(n){const t=$("#"+n);if(0<t.length){const n=t.parent();t.attr("data-component")?t.attr("style","display:none !important"):n.attr("style","display:none !important")}else console.error("Element not found: "+n)},this.cronapi.screen.disableComponent=function(n){let t;if(window.cordova)t=this.cronapi.$scope;else{let n=window.angular.element("body").injector();t=n.get("$rootScope")}let a=(n,t)=>{n.data("kendoComboBox")?n.data("kendoComboBox").enable(!1):n.hasClass("cronSelect")&&n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!1):n.data("kendoDropDownList")?n.data("kendoDropDownList").enable(!1):n.data("kendoMultiSelect")?n.data("kendoMultiSelect").enable(!1):n.find("[data-role=grid]").data("kendoGrid")||n.find("cron-grid").length?this.cronapi.internal.coverElement(n):$.each(n.find("*").addBack(),function(n,o){let r=$(o);r.prop("disabled",!0).addClass("disabled"),t&&a(r,!1)})},o=()=>{let r=$(`#${n}`);"$apply"!==t.$$phase&&"$digest"!==t.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout(()=>o(),200)};o()},this.cronapi.screen.enableComponent=function(n){let t;if(window.cordova)t=this.cronapi.$scope;else{let n=window.angular.element("body").injector();t=n.get("$rootScope")}let a=(n,t)=>{n.data("kendoComboBox")?n.data("kendoComboBox").enable(!0):n.hasClass("cronSelect")&&n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox")?n.closest(".form-group").find("input.cronSelect[data-role=combobox]").data("kendoComboBox").enable(!0):n.data("kendoDropDownList")?n.data("kendoDropDownList").enable(!0):n.data("kendoMultiSelect")?n.data("kendoMultiSelect").enable(!0):n.find("[data-role=grid]").data("kendoGrid")||n.find("cron-grid").length?this.cronapi.internal.discoverElement(n):$.each(n.find("*").addBack(),function(n,o){let r=$(o);r.prop("disabled",!1).removeClass("disabled"),t&&a(r,!1)})},o=()=>{let r=$(`#${n}`);"$apply"!==t.$$phase&&"$digest"!==t.$$phase||r.find("cron-grid").length?a(r,!0):setTimeout(()=>o(),200)};o()},this.cronapi.screen.focusComponent=function(n){this.cronapi.$scope.safeApply(function(){tinyMCE&&tinyMCE.get(n)?tinyMCE.get(n).focus():$("#"+n).find("*").addBack().focus()})},this.cronapi.screen.changeAttrValue=function(n,t,a){$("#"+n).attr(t,a)},this.cronapi.screen.getAttrValue=function(n,t){return $(`#${n}`).attr(t)},this.cronapi.screen.changeContent=function(n,t,a){if($("#"+n).html(t),!0===a||"true"===a){var o=angular.injector(["ng"]),r=this;o.invoke(["$compile",function(t){t(document.querySelector("#"+n))(r.cronapi.$scope)}])}},this.cronapi.screen.setVisibility=function(n,t){let a=!0===t||"true"===t?"visible":"hidden";$(`#${n}`).css("visibility",`${a}`)},this.cronapi.screen.getContent=function(n){return $(`#${n}`).html()},this.cronapi.screen.copyValue=function(n){var t=this.cronapi.screen.getValueOfField(n);t==null&&(t=""),navigator.clipboard.writeText(t)},this.cronapi.screen.toggleClass=function(n,t){$(`#${n}`).toggleClass(t)},this.cronapi.screen.recompileComponent=async function(n){let t=$(`#${n}`);t.data("alreadycompiled",!1);let a=await(n=>new Promise(t=>{let a=n.data("$compile");if(a)t(a);else{var o=angular.injector(["ng"]);o.invoke(["$compile",n=>t(n)])}}))(t),o=this.cronapi.$scope;o.safeApply(()=>a(t)(o))},this.cronapi.screen.logout=function(){this.cronapi.$scope.logout!=null&&this.cronapi.$scope.logout()},this.cronapi.screen.refreshDatasource=function(n,t){!0==t||"true"==t?this[n].search(this[n].terms,this[n].caseInsensitive):this[n].search("",this[n].caseInsensitive)},this.cronapi.screen.loadMore=function(n){getDatasource(n).$apply(function(){getDatasource(n).nextPage()})},this.cronapi.screen.hasNextPage=function(n){return getDatasource(n).hasNextPage()},this.cronapi.screen.load=function(n){let t=getDatasource(n);t.reloadedFromCronapi=!0,t.fetch({params:{}},void 0,void 0,{origin:"button"})},this.cronapi.screen.addClass=function(n,t){$(`#${n}`).addClass(t)},this.cronapi.screen.removeClass=function(n,t){$(`#${n}`).removeClass(t)},this.cronapi.screen.createMenuObjectMobile=function(n){let t=[];n&&(Array.isArray(n)?t=n:t.push(n));let a={escope:"MOBILE",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,t)};return a},this.cronapi.screen.createMenuObjectWeb=function(n){let t=[];n&&(Array.isArray(n)?t=n:t.push(n));let a={escope:"WEB",subMenuOptions:this.cronapi.screen.recursiveDefineItemsIds("menuItem",1,t)};return a},this.cronapi.screen.recursiveDefineItemsIds=function(n,t,a){for(let o=0;o<a.length;o++)a[o].level=t,a[o].id=n+"-"+(o+1),a[o].menuItems=this.cronapi.screen.recursiveDefineItemsIds(a[o].id,t+1,a[o].menuItems);return a},this.cronapi.screen.createMenuItemMobile=function(n,t,a,o,r,c,s,l,p,d){let u="";return a&&"ion-NONE"!=a&&(0==a.indexOf("ion-")?u="icon "+a:u=a),{id:"TODO",name:n?n:"",title:t?t:"",iconClass:u,hide:o?o:"",security:r?r:"",action:c?c:"",level:0,textPosition:s?s:"left",imagePosition:l?l:"left",contentTheme:p?p:"light",iconTheme:d?d:"light",menuItems:[]}},this.cronapi.screen.createMenuItemWeb=function(n,t,a,o,r,c,s){let l=[];s&&(Array.isArray(s)?l=s:l.push(s));let p="";return a&&"fa-NONE"!=a&&(0==a.indexOf("fa-")?p="fa "+a:p=a),{id:"TODO",name:n?n:"",title:t?t:"",iconClass:p,hide:o?o:"",security:r?r:"",action:c?c:"",level:0,textPosition:"left",imagePosition:"left",contentTheme:"light",iconTheme:"light",menuItems:l}},this.cronapi.screen.createMenuItemSecurity=function(n,t){let a=[];n&&""!==n&&(Array.isArray(n)?a=n:a.push(n));let o=[];t&&""!==t&&(Array.isArray(t)?o=t:o.push(t));let r="";return 0<a.length&&(r="visible : "+a.join(";")),0<o.length&&(0<r.length?r=r+", enabled : "+o.join(";"):r="enabled : "+o.join(";")),r},this.cronapi.dateTime={},this.cronapi.dateTime.formats=function(){var n=[];return n="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"],n.push("YYYY-MM-DDTHH:mm:ss"),n.push("HH:mm:ss"),n.push("MMMM"),n},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=/\/Date((.*?))\//,regexExecution=dateString.exec(value);if(regexExecution&&1<regexExecution.length){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(n,t,a,o,r){if(this.cronapi.logic.isNullOrEmpty(n))return n;if(this.cronapi.logic.isNullOrEmpty(t))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 c=moment(n,t,a);return c.locale(r),c.format(o)},this.cronapi.dateTime.getSecond=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("second"):0},this.cronapi.dateTime.getMinute=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("minute"):0},this.cronapi.dateTime.getHour=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("hour"):0},this.cronapi.dateTime.getYear=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("year"):0},this.cronapi.dateTime.getMonth=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("month")+1:0},this.cronapi.dateTime.getDay=function(n){var t=this.cronapi.dateTime.getMomentObj(n);return t?t.get("date"):0},this.cronapi.dateTime.getSecondsBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"seconds")},this.cronapi.dateTime.getMinutesBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"minutes")},this.cronapi.dateTime.getHoursBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"hours")},this.cronapi.dateTime.getDaysBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"days")},this.cronapi.dateTime.getMonthsBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"months")},this.cronapi.dateTime.getYearsBetweenDates=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n),o=this.cronapi.dateTime.getMomentObj(t);return a.diff(o,"years")},this.cronapi.dateTime.incSecond=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("seconds",t).toDate()},this.cronapi.dateTime.incMinute=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("minutes",t).toDate()},this.cronapi.dateTime.incHour=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("hours",t).toDate()},this.cronapi.dateTime.incDay=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("days",t).toDate()},this.cronapi.dateTime.incMonth=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("months",t).toDate()},this.cronapi.dateTime.incYear=function(n,t){var a=this.cronapi.dateTime.getMomentObj(n);return a.add("years",t).toDate()},this.cronapi.dateTime.getNow=function(){var n=moment();return n.toDate()},this.cronapi.dateTime.formatDateTime=function(n,t){return this.cronapi.dateTime.getMomentObj(n).format(t)},this.cronapi.dateTime.newDate=function(n,t,a,o,r,c){var s=new Date;return s.setYear(n),s.setMonth(t-1),s.setDate(a),s.setHours(o),s.setMinutes(r),s.setSeconds(c),this.cronapi.dateTime.getMomentObj(s).toDate()},this.cronapi.dateTime.updateDate=function(n,t,a,o,r,c,s,l){var p=this.cronapi.dateTime.getMomentObj(n).toDate();if(p&&!isNaN(p.getTime()))p.setYear(t),p.setMonth(a-1),p.setDate(o),p.setHours(r),p.setMinutes(c),p.setSeconds(s),p.setMilliseconds(l);else return void this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]));return this.cronapi.dateTime.getMomentObj(p).toDate()},this.cronapi.dateTime.updateNewDate=function(n,t,a){var o=this.cronapi.dateTime.getMomentObj(n).toDate();if(o&&!isNaN(o.getTime()))"year"===t?o.setYear(a):"month"===t?o.setMonth(a-1):"day"===t?o.setDate(a):"hour"===t?o.setHours(a):"minute"===t?o.setMinutes(a):"second"===t?o.setSeconds(a):"millisecond"===t?o.setMilliseconds(a):void 0;else return void this.cronapi.screen.notify("error",this.cronapi.i18n.translate("InvalidDate",[]));return this.cronapi.dateTime.getMomentObj(o).toDate()},this.cronapi.text={},this.cronapi.text.prompt=function(){return null},this.cronapi.text.formatTextWithReplacement=function(n,...t){var a=Array.prototype.slice.call(t,0);return n.replace(/\{(\d+)\}/g,function(n,t){return a[t]})},this.cronapi.text.newline=function(){return"\n"},this.cronapi.text.replaceAll=function(n,t,a,o){return this.cronapi.logic.isNull(n)||this.cronapi.logic.isNull(t)||this.cronapi.logic.isNull(o)?null:"-"===a?n.replace(t,o):n.replace(new RegExp(t,a),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(n){var t=$.parseXML("<?xml version=\"1.0\" encoding=\"UTF-8\"?><root></root>");return t.removeChild(t.firstElementChild),t.appendChild(n),t},this.cronapi.xml.newXMLElement=function(n,t){var a=document.createElement(n);return a.textContent=t,a},this.cronapi.xml.addXMLElement=function(n,t){try{var a=t.cloneNode(!0);return n.appendChild(a),!0}catch(n){return!1}},this.cronapi.xml.XMLHasRootElement=function(n){return!!(n&&n.getRootNode())},this.cronapi.xml.XMLGetRootElement=function(n){return n instanceof XMLDocument?n.firstElementChild:n.getRootNode()},this.cronapi.xml.XMLDocumentToText=function(n){if(n instanceof XMLDocument)return $($($(n.firstElementChild).context.outerHTML).removeAttr("xmlns"))[0].outerHTML;if(1<$(n).size()){var t="";return $.each($(n).toArray(),function(n,a){t+=$($(a)[0].outerHTML).removeAttr("xmlns")[0].outerHTML}),t}return $($($(n).context.outerHTML).removeAttr("xmlns"))[0].outerHTML},this.cronapi.xml.getChildren=function(n,t){return n instanceof XMLDocument?n.firstElementChild.toArray:t?t.localName?$(n).find(t.localName).toArray():$(n).find(t).toArray():$(n).children().toArray()},this.cronapi.xml.setAttribute=function(n,t,a){return!!t&&(n instanceof XMLDocument?(n.firstChild.setAttribute(t,a),!0):!!n&&(n.setAttribute(t,a),!0))},this.cronapi.xml.getAttributeValue=function(n,t){return t?n instanceof XMLDocument?n.firstChild.getAttribute(t)?n.firstChild.getAttribute(t):"":n&&t?n.getAttribute(t):"":""},this.cronapi.xml.getParentNode=function(n){return n instanceof XMLDocument?n.firstChild:n.parentNode},this.cronapi.xml.setElementContent=function(n,t){n instanceof XMLDocument&&(n.firstChild.textContent=t),n.textContent=t},this.cronapi.xml.getElementContent=function(n){return n instanceof XMLDocument?n.firstChild.innerText:n.innerText},this.cronapi.xml.removeElement=function(n,t){n instanceof XMLDocument?t?t instanceof HTMLUnknownElement?t.remove():$.each($(n.firstElementChild.children),function(n,a){a.localName==t&&a.remove()}):$.each($(n.firstElementChild.children),function(n,t){t.remove()}):t?t instanceof HTMLUnknownElement?t.remove():$.each($(n.children),function(n,a){a.localName==t&&a.remove()}):$.each($(n.children),function(n,t){t.remove()})},this.cronapi.xml.getElementName=function(n){return n instanceof XMLDocument?n.firstChild.localName:n.localName},this.cronapi.xml.renameElement=function(n,t){var a=n.outerHTML.replace(n.localName,t);a=a.replace("/"+n.localName,"/"+t),a=$(a).removeAttr("xmlns"),n.replaceWith(a[0])},this.cronapi.logic={},this.cronapi.logic.isNull=function(n){return null===n||"undefined"==typeof n||n==null},this.cronapi.logic.isEmpty=function(n){return""===n},this.cronapi.logic.isNullOrEmpty=function(n){return this.cronapi.logic.isNull(n)||this.cronapi.logic.isEmpty(n)},this.cronapi.logic.typeOf=function(n,t){return"array"===t?Array.isArray(n):!("object"===t&&Array.isArray(n))&&typeof n==t},this.cronapi.i18n={},this.cronapi.i18n.translate=function(n,t){if(n){for(var a=this.cronapi.$translate.instant(n),o=0,r;o<t.length;o++)if(r=t[o],null!=r&&"undefined"!=typeof r){var c=new RegExp("\\{"+o+"\\}","g");a=a.replace(c,r)}return a}},this.cronapi.internal={},this.cronapi.internal.forceRefreshNgModel=async function(n,t){let a=()=>new Promise(n=>{let t=setInterval(()=>{clearInterval(t),n()})});await a(),this.cronapi.screen.changeValueOfField(n,void 0),await a(),this.cronapi.screen.changeValueOfField(n,t)},this.cronapi.internal.hasMethodInCallStack=function(n){return-1<new Error().stack.indexOf(n)},this.cronapi.internal.lastCronappMenuClick=function(n){let t=window.angular.element("body").injector(),a=t.get("$rootScope");a.__lastCronappMenuClick=n},this.cronapi.internal.isJsonString=n=>{if("string"!=typeof n)return!1;try{return JSON.parse(n),!0}catch(n){return!1}},this.cronapi.internal.getPouchDB=n=>{window.pouchDBInstances=window.pouchDBInstances||{};let t=n=>(window.pouchDBInstances[n]=new PouchDB(n),window.pouchDBInstances[n]),a;return a=window.pouchDBInstances[n]?window.pouchDBInstances[n]:t(n),a.info().then(function(o){o||(a.close(),a=t(n))}).catch(function(){a.close(),a=t(n)}),a},this.cronapi.internal.updatePouchDB=function(n,t,a){let o=$.extend(!0,{},t),r=this.cronapi.internal.normalizePouchDBData(o);r.forEach(t=>{n.get(t._id).then(a=>(a&&a._id&&(t._rev=a._rev),n.put(t))).then(a).catch(o=>{"not_found"===o.name?n.post(t).then(a).catch(n=>{console.error(n)}):console.error(o)})})},this.cronapi.internal.normalizePouchDBData=function(n,t){let a=[];return $.each(n,function(n,o){let r=o;r[t?"__metadata":"$metadata"]=r[t?"$metadata":"__metadata"],r[t?"_objectKey":"$objectKey"]=r[t?"$objectKey":"_objectKey"],r[t?"__$masterExpression":"$$masterExpression"]=r[t?"$$masterExpression":"__$masterExpression"],r[t?"__parentId":"$parentId"]=r[t?"$parentId":"__parentId"],r[t?"__sender":"$sender"]=r[t?"$sender":"__sender"],r[t?"__status":"$status"]=r[t?"$status":"__status"],r[t?"__original":"$original"]=r[t?"$original":"__original"],r.hasOwnProperty(t?"$odataFile_attached":"__odataFile_attached")&&(r[t?"__odataFile_attached":"$odataFile_attached"]=r[t?"$odataFile_attached":"__odataFile_attached"]),t?(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 n=0;return $("body *").each((t,a)=>{var o=Number.isNaN;let r=window.getComputedStyle(a).zIndex;r&&!o(parseFloat(r))&&$(a).is(":visible")&&(r=parseFloat(r),n=r>n?r:n)}),n},this.cronapi.internal.viewToRoute=function(n,t){var a=void 0;if(this.cronapi.$scope&&this.cronapi.$scope.$state){let t=this.cronapi.$scope.$state.get();var o=t.find(t=>t.templateUrl===n);o&&(a="".concat(o.url))}return a||(a="/".concat(n.replace("views/","").replace(".view.html","")),"mobile"===t&&(a="/app".concat(a))),a},this.cronapi.internal.loginSocial=function(n){let t=$(`#${n}`),a=t.attr("action"),o=$("<form/>");o.attr("method","POST"),o.attr("action",a),t.children().appendTo(o),t.parent().append(o),o.submit()},this.cronapi.internal.selectContent=function(n){let t=window.getSelection(),a=document.createRange();a.selectNodeContents(n),t.removeAllRanges(),t.addRange(a)},this.cronapi.internal.skipIterationLoop=function(){return new Promise(n=>{n()})},this.cronapi.internal.coverElement=function(n){let t=n.attr("id");((t,a)=>{let o=a.eq(0).outerWidth(),r=a.eq(0).outerHeight();a.each(function(){let a=n.closest(".modal-dialog").length,c=a?999999:9999,s=a?$(".modal.fade.in"):n.parent(),l=$(this).offset();$(`<div class='cover-${t}'>`).css({width:o,height:r,position:"absolute",top:l.top,left:l.left,"z-index":c}).appendTo(s)})})(t,n)},this.cronapi.internal.discoverElement=function(n){let t=n.attr("id");$(`.cover-${t}`).remove()},this.cronapi.internal.focusFormInput=function(){let n=$($("form")[0]),t=$(n.find("input")[0]);if(t&&t.length){let n=setInterval(()=>{t.is(":visible")&&("dropdownlist"!==t.data("role")&&t.focus(),clearInterval(n))},100)}},this.cronapi.forceCloseAllModal=function(){var n=$(".modal.fade.in");n&&n.each((n,t)=>this.cronapi.screen.hideModal(t.id)),$(".modal-backdrop.fade.in").remove()},this.cronapi.internal.setFile=function(n,t){this.cronapi.internal.fileToBase64(t,function(t){this.cronapi.screen.changeValueOfField(n,t)}.bind(this))},this.cronapi.internal.fileToBase64=function(n,t){var a=new FileReader;a.readAsDataURL(n),a.onload=function(n){var a=n.target.result.substr(n.target.result.indexOf("base64,")+7);t(a)}},this.cronapi.internal.getMaxResolution=function(n,t){var a=window.innerWidth,o=window.innerHeight,r=0;return r=a/n,t*=r,n*=r,n>a&&(r=a/n,t*=r,n*=r),t>o&&(r=o/t,n*=r,t*=r),{width:n,height:t}},this.cronapi.internal.startCamera=function(n,t,a){if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId)this.cronapi.cordova.camera.getPicture(t=>{this.cronapi.screen.changeValueOfField(n,t.replace(/^data:image\/\w+;base64,/,""))},n=>{console.error(n),this.cronapi.$scope.Notification.error(n)},0,1,0,a,100!==parseInt(t));else{var o="<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>",r=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia({video:!0}).then(function(t){r=t;var a=cronapi.internal.getMaxResolution(t.getTracks()[0].getSettings().width,t.getTracks()[0].getSettings().height),c=a.width,s=a.height;try{c=parseInt(c/2),s=parseInt(s/2)}catch(n){}o=o.split("$height$").join(a.height+"px").split("$width$").join(a.width+"px").split("$marginleft$").join(c+"px").split("$margintop$").join(s+"px");var l=$(o);l.prependTo("body");var p=document.getElementById("cronapiVideoCapture");l.find("#cronapiVideoCaptureCancel").on("click",function(){null!=r&&0<r.getTracks().length&&r.getTracks()[0].stop(),$(l).remove()}.bind(this)),l.find("#cronapiVideoCaptureOk").on("click",function(){this.cronapi.internal.captureFromCamera(n,a.width,a.height),null!=r&&0<r.getTracks().length&&r.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=t,p.onloadedmetadata=function(){p.play()}}.bind(this))}},this.cronapi.internal.getPicture=function(n){if(1===n.sourceType)cronapi.internal.getPictureFromCamera(n);else if(0===n.sourceType||2===n.sourceType)cronapi.internal.getPictureFromFile(n);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(n),!0}},{text:this.cronapi.i18n.translate("gallery",[]),action:function(){return cronapi.internal.getPictureFromFile(n),!0}}]})}},this.cronapi.internal.getPictureFromCamera=function(n){var t=null;navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?navigator.mediaDevices.getUserMedia({video:!0}).then(function(a){t=a;var o=cronapi.internal.getMaxResolution(a.getTracks()[0].getSettings().width,a.getTracks()[0].getSettings().height),r=o.width,c=o.height;try{r=parseInt(r/2),c=parseInt(c/2)}catch(n){}var s="<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>";s=s.split("$height$").join(o.height+"px").split("$width$").join(o.width+"px").split("$marginleft$").join(r+"px").split("$margintop$").join(c+"px");var l=$(s);l.prependTo("body");var p=document.getElementById("cronapiFileBrowser");l.find("#cronapiFileBrowserCancel").on("click",function(){null!=t&&0<t.getTracks().length&&t.getTracks()[0].stop(),n.errorCallback&&n.errorCallback("Opera\xE7\xE3o cancelada"),$(l).remove()}.bind(this)),l.find("#cronapiFileBrowserOk").on("click",function(){cronapi.internal.getPictureSuccess(n,o.width,o.height),null!=t&&0<t.getTracks().length&&t.getTracks()[0].stop(),$(l).remove()}.bind(this)),p.srcObject=a,p.onloadedmetadata=function(){p.play()}}.bind(this)).catch(function(t){n.errorCallback&&n.errorCallback(t.toString())}.bind(this)):n.errorCallback&&n.errorCallback("Recurso n\xE3o suportado ou n\xE3o autorizado")},this.cronapi.internal.getPictureFromFile=function(n){var t=cronapi.internal.getMaxResolution(window.innerWidth,window.innerHeight),a=t.width,o=t.height;try{a=parseInt(a/2),o=parseInt(o/2)}catch(n){console.log(n)}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(t.height+"px").split("$width$").join(t.width+"px").split("$marginleft$").join(a+"px").split("$margintop$").join(o+"px");var c=$(r);c.prependTo("body"),c.find("#cronapiFileBrowserCancel").on("click",function(){n.errorCallback&&n.errorCallback("Opera\xE7\xE3o cancelada"),$(c).remove()}.bind(this)),c.find("#cronapiFileBrowserOK").on("click",function(){cronapi.internal.getPictureSuccess(n,t.width,t.height,!0),$(c).remove()}.bind(this)),c.find("#imgPreview").on("touchend click",function(n){"touchend"==n.type&&$(this).off("click"),$("#imageBrowser").trigger("click")}),c.find("#imageBrowser").on("change",function(){if($("img#imgPreview").attr("src",""),"undefined"!=typeof FileReader){var n=new FileReader;n.onload=function(n){$("img#imgPreview").attr("src",n.target.result)},n.readAsDataURL($(this)[0].files[0])}})},this.cronapi.internal.getPictureSuccess=function(n,t,a,o){if(n.successCallback)if(o){var r=document.getElementById("imageBrowser").files[0];if(r){var c=new FileReader;c.onload=function(t){var a=t.target.result;n.successCallback(a)},c.readAsDataURL(r)}else n.successCallback(null)}else{var s=document.createElement("canvas");s.width=t,s.height=a;var l=s.getContext("2d"),p=document.getElementById("cronapiFileBrowser");l.drawImage(p,0,0,t,a);let o="data:image/jpeg;base64, "+s.toDataURL().substr(22);n.successCallback(o)}},this.cronapi.internal.downloadFileEntityMobile=function(n,t,a,o){var r=null,c,s;if(a)c=n.data[a][t],s=n.data[a];else try{c=n.active[t],s=n.active}catch(a){c=n[t],s=n}try{var r=JSON.parse(c)}catch(n){}if(r){var l=this.cronapi.internal.getAddressWithHostApp("/api/cronapi/filePreview/");window.open(l+r.path,"_system")}else if(c.startsWith("https://")||c.startsWith("http://"))window.open(c,"_system");else if(n.isOData())cronapi.internal.makeDownloadFromBytes(c,o);else{var p="/api/cronapi/downloadFile",d=n.entity.split("/"),u=d[d.length-1];if(-1<u.indexOf(":")){for(var g="",m=d[3].split("."),h=0;h<m.length-1;h++)g+=m[h]+".";var f=u.split(":");u=g+f[f.length-1]}p+="/"+u,p+="/"+t;var b=s,y=n.getKeyValues(b),v=0;for(var A in y)p=0==v?p+"/"+b[A]:p+":"+b[A],v++;var l=this.cronapi.internal.getAddressWithHostApp(p);window.open(l,"_system")}},this.cronapi.internal.captureFromCamera=function(n,t,a){var o=document.createElement("canvas");o.width=t,o.height=a;var r=o.getContext("2d"),c=document.getElementById("cronapiVideoCapture");r.drawImage(c,0,0,t,a);var s=o.toDataURL().substr(22);this.cronapi.screen.changeValueOfField(n,s)},this.cronapi.internal.qrCodeScanner=function(n,t,a){let o,r;navigator.mediaDevices.getUserMedia({audio:!1,video:!0}).then(()=>{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(t=>{o=t[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"),t.map((n,t)=>{if("videoinput"===n.kind){let a=document.createElement("option");a.value=n.deviceId,a.text=n.label||"C\xE2mera "+(t+1),0===t&&(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 n=$("#videoSource").prop("selectedIndex"),t=$("#videoSource option").length;n<t-1?$("#videoSource").prop("selectedIndex",n+1):$("#videoSource").prop("selectedIndex",0),$("#videoSource").trigger("change")}).bind(this)),a.find("#videoSource").on("change",(()=>{r.decodeOnceFromVideoDevice($("#videoSource").val(),"video").then(t=>{t&&(n(t.text),$(a).remove(),r.reset())})}).bind(this)),r.decodeOnceFromVideoDevice(o,"video").then(t=>{t&&(n(t.text),$(a).remove(),r.reset())})}).catch(n=>{t(n),r.reset()})}).catch(function(n){t(n)})},this.cronapi.internal.castBinaryStringToByteArray=function(n){for(var t=n.length,a=new Uint8Array(t),o=0;o<t;o++)a[o]=n.charCodeAt(o);return a},this.cronapi.internal.castBase64ToByteArray=function(n){var t=window.atob(n);return this.cronapi.internal.castBinaryStringToByteArray(t)},this.cronapi.internal.castByteArrayToString=function(n){return _StringfromCharCode.apply(null,new Uint16Array(n))},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){25<json.name.length&&(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\xE3o:</b> <br/>"+json.fileExtension+"<br/>":"<b>Extension:</b> <br/>"+json.fileExtension+"<br/>",result}},this.cronapi.internal.getContentTypeFromExtension=function(n){if(n)switch(n.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(n){if(n){var t=n.substr(0,5);switch(t.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(n){try{return btoa(atob(n))==n}catch(n){return!1}},this.cronapi.internal.downloadUrl=function(n,t){let a=document.createElement("a");a.setAttribute("href",n),a.setAttribute("download",t);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,fileName="download",bytesOrFileInput;if(valueContent.match(/__odataFile_/g))bytesOrFileInput=eval(valueContent),fileName=bytesOrFileInput.name;else{fileName+=cronapi.internal.getExtensionBase64(valueContent);try{valueContent=window.atob(valueContent)}catch(n){}bytesOrFileInput=cronapi.internal.castBinaryStringToByteArray(valueContent)}let fileInfoDescription=eval(fileInfo);if(fileInfoDescription){let n=JSON.parse(fileInfoDescription);fileName=n.name}var url=urlCreator.createObjectURL(new Blob([bytesOrFileInput],{type:"application/octet-stream"}));cronapi.internal.downloadUrl(url,fileName)},this.cronapi.internal.downloadFileEntity=function(n,t,a,o){var r=null,c,s;if(a)c=n.data[a][t],s=n.data[a];else try{c=n.active[t],s=n.active}catch(a){c=n[t],s=n}try{var r=JSON.parse(c)}catch(n){}if(r)window.open("/api/cronapi/filePreview/"+r.path);else if(c.startsWith("https://")||c.startsWith("http://"))window.open(c);else if(n.isOData())cronapi.internal.makeDownloadFromBytes(c,o);else{var l="/api/cronapi/downloadFile",p=n.entity.split("/"),d=p[p.length-1];if(-1<d.indexOf(":")){for(var u="",g=p[3].split("."),m=0;m<g.length-1;m++)u+=g[m]+".";var h=d.split(":");d=u+h[h.length-1]}l+="/"+d,l+="/"+t;var f=JSON.parse(localStorage.getItem("_u"))||{},b=s,y=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:y,data:b?JSON.stringify(b):null,responseType:"blob",headers:a}).then(function(n,t,a){a=a||n.headers,a=a(),n=this.cronapi.getRequestData(n);var o=a["x-filename"]||"download.bin",r=window.URL||window.webkitURL||window.mozURL||window.msURL;try{var c=r.createObjectURL(n);cronapi.internal.downloadUrl(c,o)}catch(n){console.log("Error downloading file"),console.log(n)}}.bind(this)).catch(function(){console.log("Error downloading file")}.bind(this))}},this.cronapi.internal.uploadFileAjax=function(n,t,a){var o=new FormData;o.append("file",t);var r=JSON.parse(localStorage.getItem("_u"))||{},c=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:c,data:o,headers:s,onProgress:function(n){if(n.lengthComputable){var t=0|100*(n.loaded/n.total),o=$("#"+a);if(0<o.length)if("bootstrapProgress"==o.data("type"))100>t?(o.show(),o.find(".progress-bar").css("width",t+"%")):(o.hide(),o.find(".progress-bar").css("width","0%"));else{var r=document.getElementById(a);r.value=r.innerHTML=t}}}}).then(function(t){t=this.cronapi.getRequestData(t),this.cronapi.screen.changeValueOfField(n,t.jsonString)}.bind(this)).catch(function(){alert("Error uploading file")}.bind(this))},this.cronapi.internal.getFieldFromActiveString=function(n){var t=/.active.([a-zA-Z0-9_-]*)/g.exec(n),a=t[1];return a},this.cronapi.internal.getJsonDescriptionFromFile=function(n){let t={};if(n){let a=n.name.split("."),o="."+a[a.length-1];t.fileExtension=o,t.name=n.name,t.contentType=n.type||"unknown"}return t},this.cronapi.internal.uploadFile=function(field,file,progressId,fileInfo,errorFile){if(errorFile&&errorFile.length&&errorFile[0].$errorMessages&&errorFile[0].$errorMessages.maxSize){let n=this.cronapi.$translate.instant("maxFileSize");showErrorNotification.bind(this)(`${n} ${errorFile[0].$errorParam}`)}if(file){var regexForDatasource=/(.*?).active./g,groupDatasource=regexForDatasource.exec(field);if(groupDatasource){var datasource=eval(groupDatasource[1]);if(datasource.isOData()){let n=cronapi.internal.getFieldFromActiveString(field),t=datasource.getFieldSchema(n);if(t&&"Binary"==t.type){if(datasource.active["__odataFile_"+n]=file,datasource.active[n]=datasource.name+".active.__odataFile_"+n,fileInfo){let n=cronapi.internal.getJsonDescriptionFromFile(file),t=cronapi.internal.getFieldFromActiveString(fileInfo);datasource.active[t]=JSON.stringify(n)}return}}}this.cronapi.internal.uploadFileAjax(field,file,progressId)}},this.cronapi.object={},this.cronapi.object.getProperty=function(n,t){n||(n={});var a=t.split(".");if(1<a.length){var o=function(n,t,a){return a||(a=0),void 0===n[t[a]]&&(n[t[a]]={}),a++,a<t.length?o(n[t[a-1]],t,a):n[t[a-1]]};return o(n,a,0)}return n[t]},this.cronapi.object.setProperty=function(n,t,a){var o=t.split(".");if(1<o.length){var r=function(n,t,a,o){o||(o=0),n[t[o]]===void 0&&(n[t[o]]={}),o++,o<t.length?r(n[t[o-1]],t,a,o):n[t[o-1]]=a};r(n,o,a,0)}else n[t]=a},this.cronapi.object.createObjectFromString=function(n){return JSON.parse(n)},this.cronapi.object.createObjectLoginFromString=function(n,t){return JSON.parse(JSON.stringify({username:n,password:t}))},this.cronapi.object.serializeObject=function(n){return JSON.stringify(n)},this.cronapi.object.deleteProperty=function(n,t){delete n[t]},this.cronapi.object.newObject=function(){var n={};if(arguments&&0<arguments.length)for(var t=0,a;t<arguments.length;t++)a=arguments[t],a.name&&(n[a.name]=a.value);return n},this.cronapi.object.getObjectField=function(n,t){var a;return n&&t&&(a=n[t]),a},this.cronapi.json={},this.cronapi.json.createObjectFromString=function(n){return this.cronapi.object.createObjectFromString(n)},this.cronapi.json.setProperty=function(n,t,a){this.cronapi.object.setProperty(n,t,a)},this.cronapi.json.deleteProperty=function(n,t){this.cronapi.object.deleteProperty(n,t)},this.cronapi.json.getProperty=function(n,t){return this.cronapi.object.getProperty(n,t)},this.cronapi.cordova={},this.cronapi.cordova.vibrate=function(n){navigator.vibrate(n)},this.cronapi.cordova.device={},this.cronapi.cordova.device.getFirebaseToken=function(n,t){document.addEventListener("deviceready",function(){try{window.FirebasePlugin.getToken(cronapi.util.handleCallback(n),cronapi.util.handleCallback(t))}catch(n){console.error(n),t(n)}},!1)},this.cronapi.cordova.device.getFirebaseNotificationData=function(n,t){document.addEventListener("deviceready",function(){try{window.FirebasePlugin.onMessageReceived(function(t){n(t)},function(n){t(n)})}catch(n){console.warn(n)}try{window.FirebasePlugin.onNotificationOpen(function(t){n(t)},function(n){t(n)})}catch(n){console.warn(n)}},!1)},this.cronapi.cordova.device.getDeviceInfo=function(n){return window.device[n]},this.cronapi.cordova.geolocation={},this.cronapi.cordova.geolocation.getCurrentPosition=function(n,t){navigator.geolocation.getCurrentPosition(this.cronapi.util.handleCallback(n),this.cronapi.util.handleCallback(t))},this.cronapi.cordova.geolocation.watchPosition=function(n,t,a,o,r){return navigator.geolocation.watchPosition(this.cronapi.util.handleCallback(n),this.cronapi.util.handleCallback(t),{maximumAge:a,timeout:o,enableHighAccuracy:r})},this.cronapi.cordova.geolocation.clearWatchPosition=function(n){navigator.geolocation.clearWatch(n)},this.cronapi.cordova.camera={},this.cronapi.cordova.camera.getPicture=function(n,t,a,o,r,c,s){(r===void 0||null===r)&&(r=0),c=!0===c||"true"===c,s=!0===s||"true"===s;let l={destinationType:+a,sourceType:+o,mediaType:+r,allowEdit:c,quality:s?50:100,encodingType:s?0:1};if(window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId){let o=async t=>{t.startsWith("file://")?t=Ionic.WebView.convertFileSrc(t):t&&!t.startsWith("data:image")&&(t="data:image/jpeg;base64, "+t),n&&n(t)};const s=n=>new Promise((t,a)=>{window.resolveLocalFileSystemURL(n,n=>{n.file(n=>{const a=new FileReader;a.onloadend=()=>{const n=a.result;t(n)},a.readAsDataURL(n)},n=>a(n))})});c&&0===+r?navigator.camera.getPicture(n=>plugins.ratioCrop(n=>{+a===Camera.DestinationType.FILE_URI?o(n):s(n).then(this.cronapi.util.handleCallback(o)).catch(this.cronapi.util.handleCallback(t))},this.cronapi.util.handleCallback(t),n,{}),this.cronapi.util.handleCallback(t),{...l,destinationType:Camera.DestinationType.FILE_URI,allowEdit:!1}):navigator.camera.getPicture(this.cronapi.util.handleCallback(o),this.cronapi.util.handleCallback(t),l)}else l.allowEdit=c,l.successCallback=n,l.errorCallback=t,l.targetWidth=640,l.targetHeight=480,this.cronapi.internal.getPicture(l)},this.cronapi.cordova.camera.qrCodeScanner=function(n,t,a,o){const r={preferFrontCamera:!1,showFlipCameraButton:!0,showTorchButton:!0,saveHistory:!0,prompt:t,resultDisplayDuration:500,orientation:"portrait",disableAnimations:!0,disableSuccessBeep:!1};"all"!==n&&(r.formats=n),window.cordova&&window.cordova.platformId&&"browser"!==window.cordova.platformId?cordova.plugins.barcodeScanner.scan(function(n){a(n.text)},function(n){"Scan is already in progress"!==n&&o(n)},r):this.cronapi.internal.qrCodeScanner(a,o,r)},this.cronapi.cordova.file={},this.cronapi.cordova.file.getDirectory=function(n){var t;return"0"==n?t=cordova.file.dataDirectory:(t=cordova.file.externalApplicationStorageDirectory,!t&&(t=cordova.file.externalDataDirectory),!t&&(t=cordova.file.syncedDataDirectory)),t},this.cronapi.cordova.file.removeFile=function(n,t,a){window.resolveLocalFileSystemURL(n,function(n){n.remove(function(n){t&&t(n)}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.readFile=function(n,t,a,o){window.resolveLocalFileSystemURL(n,function(n){n.file(function(n){var a=new FileReader;switch(a.onloadend=function(){t(this.result)},o){case"ARRAYBUFFER":{a.readAsArrayBuffer(n);break}case"TEXT":{a.readAsText(n);break}case"BINARYSTRING":{a.readAsBinaryString(n);break}case"DATAURL":{a.readAsDataURL(n);break}default:a.readAsText(n)}}.bind(this),this.cronapi.util.handleCallback(a))}.bind(this),this.cronapi.util.handleCallback(a))},this.cronapi.cordova.file.createFile=function(n,t,a,o,r){n||getDirectory(0);window.resolveLocalFileSystemURL(n,function(c){console.log(n),c.getFile(t,{create:!0},function(n){n.createWriter(function(n){n.onwriteend=function(){console.log("Write of file \""+t+"\"\" completed.")},n.onerror=function(n){console.log("Write failed: "+n.toString())};var r=new Blob([a],{type:"text/plain"});n.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(n,t,a,o){window.resolveLocalFileSystemURL(n,function(n){n.getDirectory(t,{create:!0},function(n){a&&a(n)}.bind(this),this.cronapi.util.handleCallback(o))}.bind(this),this.cronapi.util.handleCallback(o))},this.cronapi.cordova.storage={},this.cronapi.cordova.storage.setStorageItem=function(n,t){var a=window.localStorage;a?a.setItem(n,t):console.error("Local Storage not Found!")},this.cronapi.cordova.storage.getStorageItem=function(n){var t=window.localStorage;return t?t.getItem(n):void console.error("Local Storage not Found!")},this.cronapi.cordova.storage.removeStorageItem=function(n){var t=window.localStorage;t?t.removeItem(n):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(n){return navigator.connection.type==n},this.cronapi.cordova.database={},this.cronapi.cordova.database.DatabaseModule=class{constructor(){this.DEFAULT_DATABASE_NAME="cronappDB"}connect(n=this.DEFAULT_DATABASE_NAME){let t=window.openDatabase;if(window.sqlitePlugin&&(t=window.sqlitePlugin.openDatabase),void 0===t)throw"Sem suporte para SQLDatabase!";return t(n,"1.0",n,1e6)}async executeSQL(n=this.DEFAULT_DATABASE_NAME,t="",a=[]){const o=this.connect(n),r=n=>n.trim().split(";").filter(n=>n?n:null);try{const n=r(t);return this.handleExecuteTransaction(o,n,a)}catch(n){throw console.log(n),n}}extractSQLResult(n){return n._array?n._array:n}async handleExecuteSQL(n,t,a){return new Promise((o,r)=>{n.executeSql(t,a,(n,t)=>{try{o(t.rows)}catch(n){r(n)}})})}async handleExecuteTransaction(n,t,a){return new Promise((o,r)=>{try{n.transaction(async n=>{let r;for(let o of t)r=await this.handleExecuteSQL(n,o,a);o(this.extractSQLResult(r))})}catch(n){r(n)}})}},this.cronapi.cordova.database.openDatabase=function(n){const t=new this.cronapi.cordova.database.DatabaseModule;return t.connect(n)},this.cronapi.cordova.database.executeSQL=async function(n,t,a){let o=new this.cronapi.cordova.database.DatabaseModule;return o.executeSQL(n,t,a)},this.cronapi.cordova.database.executeSql=function(n,t,a,o,r){var c=this.cronapi.cordova.database.openDatabase(n);c.transaction(function(n){n.executeSql(t,a,function(n,t){o.call(this,Object.values(t.rows))}.bind(this))}.bind(this),function(n){console.log(n),r(n)}.bind(this))},this.cronapi.cordova.database.executeMultipleSql=function(n,t,a,o){var r=this.cronapi.cordova.database.openDatabase(n);let c=[],s=t.split(";");for(let l in s){let n=s[l];if(!n)break;let t=new Promise((t,a)=>{r.transaction(function(o){o.executeSql(n.trim(),[],function(n,a){t(a)}.bind(this),function(n,t){a(t)}.bind(this))}.bind(this))});c.push(t)}Promise.all(c).then(function(n){a(n)}.bind(this)).catch(function(n){o(n)}.bind(this))},this.cronapi.event={},this.cronapi.event.contextMenu=function(n,t,a,o){$("#ulKendoContextMenu").kendoMenu();var r=$("#ulKendoContextMenu").data("kendoMenu");r&&r.destroy();let c=$("body"),s=$(`<ul id="ulKendoContextMenu"></ul>`);c.append(s);let l={target:"#"+n,animation:{open:{effects:t},duration:500}};"left"===a&&(l.showOn="click"),l.dataSource=Array.isArray(o)?o:[o],$("#ulKendoContextMenu").kendoContextMenu(l)},this.cronapi.event.itemContextMenu=function(n,t,a,o){let r={text:n};return o&&(r.items=Array.isArray(o)?o:[o]),o||(r.select=a),t&&(r.cssClass=t),r},this.cronapi.event.changeValueAccordion=function(n,t,a){"collapseAll"===t?($("#"+n+" .panel-collapse").data("bs.collapse",null),$("#"+n+" .panel-collapse").collapse("hide")):"expandAll"===t?($("#"+n+" .panel-collapse").data("bs.collapse",null),$("#"+n+" .panel-collapse").collapse("show")):"collapseOne"===t?setTimeout(function(){$("#"+a).filter("[aria-expanded=true]").trigger("click")},500):"expandOne"===t?setTimeout(function(){$("#"+a).filter("[aria-expanded=false]").trigger("click")},500):void 0},this.cronapi.event.changeInnerTextButton=function(n,t){let a=`#${n} button span`;"BUTTON"===$(`#${n}`).prop("tagName")&&(a=`#${n} span`),$(a).text(t)},this.cronapi.cordova.database.openInAppBrowser=function(n){cordova.InAppBrowser&&cordova.InAppBrowser.open(n,"_blank","location=no")},this.cronapi.cordova.util={},this.cronapi.cordova.util.fingerPrintRead=function(n,t){if(Fingerprint){function a(){n(0)}function o(){t(-1)}Fingerprint.isAvailable(function(){Fingerprint.show({},a,o)},function(){t(-2)})}else t(-2)},this.cronapi.internal.ptDate=function(n){var t=n[1],a=n[2],o=n[3],r=n[5],c=n[6],s=n[7],l;return l=r?new Date(o,a-1,t,r,c,s):new Date(o,a-1,t,0,0,0),l},this.cronapi.internal.enDate=function(n){var t=n[1],a=n[2],o=n[3],r=n[5],c=n[6],s=n[7],l;return l=r?new Date(o,t-1,a,r,c,s):new Date(o,t-1,a,0,0,0),l},this.cronapi.internal.parseBoolean=function(n){return!!n&&("boolean"==typeof n?n:(n=n.toString().toLowerCase().trim(),"1"==n||"true"==n))},this.cronapi.internal.removeAccents=function(n){var t="";for(i=0;i<n.length;i++)t+=0<="\xE1\xE0\xE3\xE2\xE4\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF3\xF2\xF5\xF4\xF6\xFA\xF9\xFB\xFC\xE7\xC1\xC0\xC3\xC2\xC4\xC9\xC8\xCA\xCB\xCD\xCC\xCE\xCF\xD3\xD2\xD5\xD6\xD4\xDA\xD9\xDB\xDC\xC7".search(n.substr(i,1))?"aaaaaeeeeiiiiooooouuuucAAAAAEEEEIIIIOOOOOUUUUC".substr("\xE1\xE0\xE3\xE2\xE4\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF3\xF2\xF5\xF4\xF6\xFA\xF9\xFB\xFC\xE7\xC1\xC0\xC3\xC2\xC4\xC9\xC8\xCA\xCB\xCD\xCC\xCE\xCF\xD3\xD2\xD5\xD6\xD4\xDA\xD9\xDB\xDC\xC7".search(n.substr(i,1)),1):n.substr(i,1);return t},this.cronapi.internal.arrayRemove=function(n,t){var a=this.cronapi.internal.arrayIndexOf(n,t);-1!=a&&n.splice(a,1)},this.cronapi.internal.arrayIndexOf=function(n,t){var a=-1;return $(n).each(function(n){t==this&&(a=n)}),a},this.cronapi.internal.replaceAll=function(n,t,a){return n.toString().split(t).join(a)},this.cronapi.internal.getWindowHeight=function(){$(window).height()},this.cronapi.internal.getWindowWidth=function(){$(window).width()},this.cronapi.internal.getAddressWithHostApp=function(n){var t=window.hostApp||"";if(t=t.endsWith("/")?t.substr(0,t.length-1):t,n){var a=n.startsWith("/")?n.substr(1):n;t=""===t?a:t+"/"+a}return t},this.cronapi.internal.Url={encode:function(n){return n?escape(this.cronapi.internal.Url._utf8_encode(n)):""},decode:function(n){return n?this.cronapi.internal.Url._utf8_decode(unescape(n)):""},_utf8_encode:function(t){t=t.replace(/\r\n/g,"\n");for(var a="",o=0,r;o<t.length;o++)r=t.charCodeAt(o),128>r?a+=_StringfromCharCode(r):127<r&&2048>r?(a+=_StringfromCharCode(192|r>>6),a+=_StringfromCharCode(128|63&r)):(a+=_StringfromCharCode(224|r>>12),a+=_StringfromCharCode(128|63&r>>6),a+=_StringfromCharCode(128|63&r));return a},_utf8_decode:function(n){for(var t="",a=0,o=c1=c2=0;a<n.length;)o=n.charCodeAt(a),128>o?(t+=_StringfromCharCode(o),a++):191<o&&224>o?(c2=n.charCodeAt(a+1),t+=_StringfromCharCode((31&o)<<6|63&c2),a+=2):(c2=n.charCodeAt(a+1),c3=n.charCodeAt(a+2),t+=_StringfromCharCode((15&o)<<12|(63&c2)<<6|63&c3),a+=3);return t}},this.cronapi.internal.stringToJs=function(n){return(n+"").replace(/[\\"']/g,"\\$&").replace(/\u0000/g,"\\0")},this.cronapi.internal.getErrorMessage=function(n,t){try{var a=null;if("object"==typeof n?n.data&&("object"==typeof n.data?a=n.data:"string"==typeof n.data&&(a=JSON.parse(n.data))):"string"==typeof n&&(a=JSON.parse(n)),a&&a.error)return a.error}catch(n){}return t},this.cronapi.util.upload=function(n,t,a,o,r){this.UploadService.upload({description:t,id:n,filter:a,maxSize:o,multiple:r,scope:this})},this.cronapi.util.getBaseUrl=function(){return window.location.origin},this.cronapi.util.watchAcceleration=function(n){window.addEventListener("deviceorientation",function(t){n({absolute:t.absolute,alpha:t.alpha,beta:t.beta,gamma:t.gamma})},!1)},this.cronapi.chart={},this.cronapi.chart.createChart=function(n,t,a,o){function r(){return g<u.length?g++:g=0,g}function c(){""==h.data.datasets[0].label&&(null==h.options.legend?(h.options.legend={},h.options.legend.display=!1):h.options.legend.display=!1)}function s(n){var t=[],a=4;for(Array.isArray(n[4])&&"object"==typeof n[4][0]&&("label"in n[4][0])&&("data"in n[4][0])&&(n=n[4],a=0),a;a<n.length;a++){let o=n[a].label?n[a].label:null,r=n[a].options?n[a].options:null,c=n[a].data?n[a].data:n[a];t.push(cronapi.chart.createDataset(o,c,r))}return t}function l(){null==h.options?(h.options={},h.options.scales={},h.options.scales.yAxes=[{ticks:{beginAtZero:!0}}]):null==h.options.scales&&(h.options.scales={},h.options.scales.yAxes=[{ticks:{beginAtZero:!0}}])}let p;if("object"==typeof o)p=o;else try{p=JSON.parse(o)}catch(n){p={},console.log(n)}var d=p&&p.colors?p.colors:[],u=["#FF5C00","#0E53A7","#48DD00","#FFD500","#7309AA","#CD0074","#00AF64","#BF8230","#F16D95","#A65000","#A65000","#AF66D5"],g=0,m=document.getElementById(n);if(m){m._chart&&m._chart.destroy(),m.getContext("2d");var h={};switch(h.type=t,h.data=[],h.options=p,h.data.labels=Array.isArray(a)?a:JSON.parse(a),h.data.datasets=[],t){case"line":{h.data.datasets=s(arguments),$.each(h.data.datasets,function(n,t){t.fill=!1,t.backgroundColor=d[n]?d[n]:u[r()],t.borderColor=t.backgroundColor,l(),c()});break}case"bar":case"horizontalBar":{h.data.datasets=s(arguments),$.each(h.data.datasets,function(n,t){t.backgroundColor=1===h.data.datasets.length&&1<d.length?d:d[n]?d[n]:u[r()],t.borderColor=t.backgroundColor}),l(),c();break}case"doughnut":case"pie":case"polarArea":{var f=s(arguments);$.each(f,function(n){var t={};t=f[n],t.backgroundColor=[],t.borderColor=[],$.each(t.data,function(n){t.backgroundColor.push(d[n]?d[n]:u[r()])}),t.borderColor=t.backgroundColor,h.data.datasets.push(t),g=0});break}default:}var b=new Chart(m,h);m._chart=b}},this.cronapi.chart.createDataset=function(n,t,a){let o;if("object"==typeof a)o=a;else try{o=JSON.parse(a)}catch(n){o={},console.log(n)}var r={options:o};return r.label=n?n:"",r.data=Array.isArray(t)?t:t?JSON.parse(t):[],r},this.cronapi.social={},this.cronapi.social.gup=function(n,t){t||(t=location.href),n=n.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a="[\\?&]"+n+"=([^&#]*)",o=new RegExp(a),r=o.exec(t);return null==r?null:r[1]},this.cronapi.social.login=function(n,t,a){var o=this.cronapi.screen.getHostapp()?`${this.cronapi.screen.getHostapp()}\auth`:`\auth`,r;return window.cordova&&!this.cronapi.screen.getHostapp()?void this.cronapi.screen.notify("error","HostApp is Required"):void(this.cronapi.screen.showLoading(),this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",o,this.cronapi.object.createObjectFromString(["{ \"username\": \"",n,"\" , \"password\": \"",t,"\" } "].join("")),this.cronapi.object.createObjectFromString(["{ \"X-AUTH-TOKEN\": \"",a,"\" } "].join("")),async n=>{r=n,window.isUsingCookie()&&delete r.token,this.cronapi.screen.hide(),this.cronapi.util.setLocalStorage("_u",this.cronapi.object.serializeObject(r));try{this.cronapi.blockly.js.blockly.auth.Home.change&&(await this.cronapi.client("blockly.js.blockly.auth.Home.change").run())}catch(n){this.cronapi.screen.changeView("#/app/logged/home",[])}},n=>{if(r=n,"403"==this.cronapi.object.getProperty(r,"status")||"401"==this.cronapi.object.getProperty(r,"status")){var t=this.cronapi.$translate.instant("Login.view.invalidPassword");this.cronapi.screen.notify("error",t)}else this.cronapi.screen.notify("error",this.cronapi.object.getProperty(r,"responseJSON.message"));this.cronapi.screen.hide()}))},this.cronapi.social.sociaLogin=function(n,t){var a=this,o=window.hostApp+"signin/"+n+"/";if(window.cordova&&cordova.InAppBrowser){var r="";(!0===t||"true"===t)&&(r=",clearcache=yes");var c=cordova.InAppBrowser.open(o,"_blank","location=no"+r);c.addEventListener("loadstart",function(n){-1<n.url.indexOf("_ctk")&&(c.close(),a.cronapi.social.login.bind(a)("#OAUTH#","#OAUTH#",a.cronapi.social.gup("_ctk",n.url)))})}else window.location.href="signin/"+n+"/"},this.cronapi.social.ssoLogin=async function(){let n=this.cronapi.$scope,t=new Promise((t,a)=>{if(window.cordova&&cordova.InAppBrowser){const o=cordova.InAppBrowser.open(window.hostApp+"login","_blank","location=no,footer=yes,zoom=no,enableViewportScale=yes,hidenavigationbuttons=yes"),r=c=>{const s=new URL(c.url),l=new URLSearchParams(s.search);l.has("_ctk")?(o.removeEventListener("loadstart",r),o.close(),n.login("#OAUTH#","#OAUTH#",l.get("_ctk")),t()):a()};o.addEventListener("loadstart",r)}else window.ssoWindow=window.open(this.cronapi.internal.getAddressWithHostApp("login")),window.addEventListener("message",function(a){a.data&&"sso_user"===a.data.type&&(window.ssoWindow&&window.ssoWindow.close(),n.login("#OAUTH#","#OAUTH#",a.data._ctk),t())},!1)});return t},this.cronapi.screen.getSelectedRowsGrid=function(n){var t=[],a=$("[ng-model=\""+n+"\"]").children().data("kendoGrid");if(a){var o=a.select();o.each(function(){var n=a.dataItem(this);t.push(n)})}return t},this.cronapi.screen.back=function(){history.back()},this.cronapi.notification={},this.cronapi.notification.customNotify=function(n,t,a,o,r,c){function s(n){"bottom"===n?(y.position.bottom=20,b=b.concat("-bottom")):(y.position.top=60,b=b.concat("-top"))}function l(n){"right"===n?(y.position.right=20,b=b.concat("-right")):"center"===n?(y.show=p,b=b.concat("-center")):(y.position.left=20,b=b.concat("-left"))}function p(n){if(1==n.sender.getNotifications().length){var t=n.element.parent(),a=t.width(),o=$(window).width(),r;r=Math.floor(o/2-a/2),n.element.parent().css({left:r})}}function d(n){"slide"===n?(y.show&&null!=y.position.bottom?(y.animation.open.effects="slideIn:up",b=b.concat("-slideIn-up")):y.show&&null!=y.position.top?(y.animation.open.effects="slideIn:down",b=b.concat("-slideIn-dow")):null==y.position.left?null==y.position.left&&(y.animation.open.effects="slideIn:left",b=b.concat("-slideIn-left")):(y.animation.open.effects="slideIn:right",b=b.concat("-slideIn-right")),y.animation.close.effects="slideOut"):"zoom"===n?(y.animation.open.effects="zoomIn",y.animation.close.effects="zoomOut",b=b.concat("-zoom")):(y.animation.open.effects="fadeIn",y.animation.close.effects="fadeOut",b=b.concat("-fade"))}function u(n){"false"==n&&(y.autoHideAfter=0,b=b.concat("-autoHideAfter"))}async function g(n,t){if(!f(n)){let a=$(`<span id="${n}"></span>`);$("body").append(a),await $(`#${n}`).kendoNotification(t),"center"==r&&p(e)}}function m(n){return $(`#${n}`).getKendoNotification()}function h(n,t,a){$(`#${n}`).getKendoNotification().show(t,a)}function f(n){return document.getElementById(n)}let b="customNotification",y={stacking:"default",autoHideAfter:5e3,position:{pinned:!0},animation:{open:{effects:null},close:{effects:null}}};a||o||r||c?async function p(n,t,a,o,r,c){s(o),l(r),d(a),u(c),g(b,y),h(b,n,t)}(t,n,a,o,r,c):async function a(n,t){let o={id:"CronappNotification",verticalPosition:"top",horizontalPosition:"left",animation:"slide",autoHide:"false"};s(o.verticalPosition),l(o.horizontalPosition),d(o.animation),u(o.autoHide),m(o.id)||g(o.id,y),h(o.id,n,t)}(t,n)},this.cronapi.notification.confirmDialogAlert=function(n,t,a,o){function r(n){let t=Array.isArray(n)?n:[n],a=!1;for(let o=0,r;o<t.length;o++)r=t[o],r&&(u.actions.push({text:r.title,action:r.value,primary:"true"==r.primaryValue||null}),a=!0);a||u.actions.push({text:"OK",primary:!0})}let c="cronapp-dialog-"+(Math.random()+"").substring(2),s=$(`<div data-dialog-type="${n}" id="${c}"></div>`);$("body").append(s);const l=window.ionic&&window.cordova,p=()=>"error"===n?`<span class="cronapp-x-mark">
2
2
  <span class="cronapp-x-mark-line-left"></span>
3
3
  <span class="cronapp-x-mark-line-right"></span>
4
4
  </span>`:"success"===n?`<div class="cronapp-success-circular-line-left"></div>
@@ -19,7 +19,7 @@
19
19
  #=text#
20
20
  </div>
21
21
  </div>
22
- </div>`);kendo.chat.Templates.kendoChatHtmlTemplate||kendo.chat.registerTemplate("kendoChatHtmlTemplate",l);let p=[];if(Array.isArray(a))for(let n in a){let t={contentType:"kendoChatHtmlTemplate",content:{text:s(a[n])}};p.push(t)}else{let n={contentType:"kendoChatHtmlTemplate",content:{text:s(a)}};p.push(n)}getChat(n).then(n=>{if(n)n.renderAttachments({attachments:p,attachmentLayout:o},t),r();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),c(n)}})},this.cronapi.chat.renderChatSuggestedActions=function(n,t,a,o){getChat(n).then(n=>{if(n)n.renderSuggestedActions(Array.isArray(t)?t:[t]),a();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),o(n)}})},this.cronapi.chat.renderChatUserTypingIndicator=function(n,t,a,o){getChat(n).then(n=>{if(n)n.renderUserTypingIndicator(t),a();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),o(n)}})},this.cronapi.chat.clearChatUserTypingIndicator=function(n,t,a,o){getChat(n).then(n=>{if(n)n.clearUserTypingIndicator(t),a();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),o(n)}})},this.cronapi.chat.removeChatTypingIndicator=function(n,t,a){getChat(n).then(n=>{if(n)n.removeTypingIndicator(),t();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),a(n)}})},this.cronapi.util.setCookie=function(n,t,a,o){function r(n){return"seconds"===n?l=1e3:"minutes"===n?l=6e4:"hours"===n?l=36e5:"days"==n&&(l=864e5),l}let c=new Date,s=new Date,l=0;const p=86400000;this.cronapi.logic.isNullOrEmpty(o)||0==o?s.setTime(c.getTime()+86400000):s.setTime(c.getTime()+parseInt(o*r(a))),document.cookie=encodeURIComponent(n)+"="+encodeURIComponent(t)+"; expires="+s.toGMTString()},this.cronapi.util.getCookie=function(n){function t(){return document.cookie.split("; ")}function a(n,t){return n.find(n=>n.startsWith(t+"="))}function o(n){return"undefined"==typeof n?null:n.split("=").pop()}const r=t(),c=a(r,n);return o(c)},this.cronapi.util.checkSavedCookies=function(n){var t=document.cookie.split(";");return t.forEach(function(n){let[a,o]=n.split("=");t[a.trim()]=o}),t.cookieEssencial},this.cronapi.authentication={},this.cronapi.authentication.login=function(n,t,a){this.cronapi.social.login(n,t,a)},this.cronapi.authentication.changePassword=function(){let n,t,a;this.cronapi.screen.getValueOfField("vars.newPassword")===this.cronapi.screen.getValueOfField("vars.confirmationPassword")?(a=this.cronapi.screen.getValueOfField("vars.oldPassword"),n=this.cronapi.screen.getValueOfField("vars.newPassword"),t=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",this.cronapi.screen.getHostapp()+""+"changePassword",this.cronapi.object.createObjectFromString(["{ \"oldPassword\": \"",a,"\" , \"newPassword\": \"",n,"\" , \"newPasswordConfirmation\": \"",t,"\" } "].join("")),this.cronapi.object.createObjectFromString(["{ \"X-AUTH-TOKEN\": \"",this.cronapi.util.getUserToken(),"\" } "].join("")),async n=>{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(n){this.cronapi.screen.hideIonicModal("changePassword")}finally{this.cronapi.screen.changeValueOfField("vars.oldPassword",""),this.cronapi.screen.changeValueOfField("vars.newPassword",""),this.cronapi.screen.changeValueOfField("vars.confirmationPassword","")}},n=>{"403"==this.cronapi.object.getProperty(n,"status")||"401"==this.cronapi.object.getProperty(n,"status")?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[])):this.cronapi.screen.notify("error",this.cronapi.object.getProperty(n,"responseJSON.message")),this.cronapi.screen.hide()})):this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[]))},this.cronapi.authentication.signup=async function(n,t,a,o){let r=this.cronapi.authentication.isValidSignup,c,s,l,p;const d=this?.blockly?.js?.blockly?.UserControl?.isValidSignup,u=this?.blockly?.js?.blockly?.auth?.UserControl?.isValidSignup;angular.isFunction(d)?r=d:angular.isFunction(u)&&(r=u),(await r(n,t,a,o))&&this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:signUp",async n=>{c=n,s=this.cronapi.json.createObjectFromString(c),l=this.cronapi.json.getProperty(s,"code"),p=this.cronapi.json.getProperty(s,"message"),"201"==l?(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(p)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("General.ErrorNotSpecified",[])):this.cronapi.screen.notify("warning",p)},n,t,a)},this.cronapi.authentication.mutualSignup=async function(){let n;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",this.cronapi.util.getBaseUrl()+""+"/mutual/register",this.cronapi.object.createObjectFromString(["{ \"token\": \"",this.cronapi.util.getUserToken(),"\" } "].join("")),null,async t=>{n=t,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))},async t=>{n=t,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(n,"responseJSON.message"))})},this.cronapi.authentication.mutualLogin=async function(){let n;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",this.cronapi.util.getBaseUrl()+""+"/mutual/register",this.cronapi.object.createObjectFromString(["{ \"token\": \"",this.cronapi.util.getUserToken(),"\" } "].join("")),null,async t=>{n=t,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))},async t=>{n=t,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(n,"responseJSON.message"))})},this.cronapi.authentication.isValidSignup=function(n,t,a,o){let r=!0;return this.cronapi.logic.isNullOrEmpty(n)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("UsernameCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(t)&&(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(n){this.cronapi.logic.isNullOrEmpty(n)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",n=>{this.cronapi.screen.notify("success",this.cronapi.i18n.translate("ForgotPasswordSent",[])),this.cronapi.screen.hideModal("forgotPasswordModal")},n,!1)},this.cronapi.authentication.resetPasswordWithOTP=function(n){this.cronapi.logic.isNullOrEmpty(n)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):(localStorage.removeItem("otpToken"),this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",n=>{localStorage.setItem("otpToken",n),this.cronapi.screen.changeView("#/app/login",[])},n,!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(n){return n},this.cronapi.map.setMapValueByKey=function(n,t,a){const o={[t]:a};n.push(o)},this.cronapi.map.setMapValueByPath=function(n,t,a){const o={},r=t.split("."),c=r.pop(),s=r.reduce((n,t)=>n[t]=n[t]||{},o);s[c]=a,n.push(o)},this.cronapi.map.getMapValueByPath=function(n,t){let a=null;return n.forEach(n=>{a=n;for(const o=t.split(".");o.length;){const n=o.shift();if(!a.hasOwnProperty(n))break;a=a[n]}}),a},this.cronapi.map.getMapValueByKey=function(n,t){let a=null;return n.forEach(n=>{n.hasOwnProperty(t)&&(a=n[t])}),a},this.cronapi.breadcrumb={},this.cronapi.breadcrumb.jsonBreadcrumb=function(n){let t=[];return n=Array.isArray(n)?n:[n],n.forEach(function(n){t.push(n)}),t},this.cronapi.breadcrumb.listBreadcrumb=function(n,t,a,o){let r={};return r.type="true"===n||!0===n?"rootitem":"item",r.text=t,r.showText=!0,r.href="javascript:void(0);",o&&(r.action=o),a?(r.icon=a,r.showIcon=!0):r.showIcon=!1,r},this.cronapi.websocket={},this.cronapi.websocket.connect=function(n,t,a,o){function r(){c.ws=new WebSocket(n),c.ws.onopen=()=>{t&&t(c.ws)},c.ws.onmessage=n=>{a&&a(n.data)},c.ws.onclose=n=>{c.__closed||(console.log("Socket is closed. Reconnect will be attempted in 1 second.",n.reason),setTimeout(()=>{r()},1e3))},c.ws.onerror=n=>{console.error("Socket encountered error: ",n.message),o&&o(n)}}let c={};return r(),c},this.cronapi.websocket.send=function(n,t){n&&!n.__closed&&n.ws.send(t)},this.cronapi.websocket.close=function(n){n&&!n.__closed&&(n.__closed=!0,n.ws.close())},this.cronapi.multimedia=this.cronapi.multimedia||{},this.cronapi.multimedia.recordAudio=async function(){let n={audio:!0};try{const t=await navigator.mediaDevices.getUserMedia(n),a=document.createElement("audio");a.srcObject=t,document.body.appendChild(a);const o=new MediaRecorder(t);return o.start(),o}catch(n){alert(n)}},this.cronapi.multimedia.pauseRecord=async function(n){"recording"===n.state?n.pause():n.resume()},this.cronapi.multimedia.stopRecord=async function(n){const t=new Promise(function(t,a){let o=[];n.ondataavailable=function(n){o.push(n.data)},n.onstop=function(){let n=new Blob(o,{type:"audio/mp3;"});t(n)},n.stop()}),a=await t;return a}}cronapi.bind(window)();try{module&&(module.exports={window})}catch(n){}
22
+ </div>`);kendo.chat.Templates.kendoChatHtmlTemplate||kendo.chat.registerTemplate("kendoChatHtmlTemplate",l);let p=[];if(Array.isArray(a))for(let n in a){let t={contentType:"kendoChatHtmlTemplate",content:{text:s(a[n])}};p.push(t)}else{let n={contentType:"kendoChatHtmlTemplate",content:{text:s(a)}};p.push(n)}getChat(n).then(n=>{if(n)n.renderAttachments({attachments:p,attachmentLayout:o},t),r();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),c(n)}})},this.cronapi.chat.renderChatSuggestedActions=function(n,t,a,o){getChat(n).then(n=>{if(n)n.renderSuggestedActions(Array.isArray(t)?t:[t]),a();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),o(n)}})},this.cronapi.chat.renderChatUserTypingIndicator=function(n,t,a,o){getChat(n).then(n=>{if(n)n.renderUserTypingIndicator(t),a();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),o(n)}})},this.cronapi.chat.clearChatUserTypingIndicator=function(n,t,a,o){getChat(n).then(n=>{if(n)n.clearUserTypingIndicator(t),a();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),o(n)}})},this.cronapi.chat.removeChatTypingIndicator=function(n,t,a){getChat(n).then(n=>{if(n)n.removeTypingIndicator(),t();else{let n=this.cronapi.$translate.instant("chatElementNotPresent");this.cronapi.$scope.Notification.error(n),a(n)}})},this.cronapi.util.setCookie=function(n,t,a,o){function r(n){return"seconds"===n?l=1e3:"minutes"===n?l=6e4:"hours"===n?l=36e5:"days"==n&&(l=864e5),l}let c=new Date,s=new Date,l=0;const p=86400000;this.cronapi.logic.isNullOrEmpty(o)||0==o?s.setTime(c.getTime()+86400000):s.setTime(c.getTime()+parseInt(o*r(a))),document.cookie=encodeURIComponent(n)+"="+encodeURIComponent(t)+"; expires="+s.toGMTString()},this.cronapi.util.getCookie=function(n){function t(){return document.cookie.split("; ")}function a(n,t){return n.find(n=>n.startsWith(t+"="))}function o(n){return"undefined"==typeof n?null:n.split("=").pop()}const r=t(),c=a(r,n);return o(c)},this.cronapi.util.checkSavedCookies=function(n){var t=document.cookie.split(";");return t.forEach(function(n){let[a,o]=n.split("=");t[a.trim()]=o}),t.cookieEssencial},this.cronapi.authentication={},this.cronapi.authentication.login=function(n,t,a){this.cronapi.social.login(n,t,a)},this.cronapi.authentication.changePassword=function(){let n,t,a;this.cronapi.screen.getValueOfField("vars.newPassword")===this.cronapi.screen.getValueOfField("vars.confirmationPassword")?(a=this.cronapi.screen.getValueOfField("vars.oldPassword"),n=this.cronapi.screen.getValueOfField("vars.newPassword"),t=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",this.cronapi.screen.getHostapp()+""+"changePassword",this.cronapi.object.createObjectFromString(["{ \"oldPassword\": \"",a,"\" , \"newPassword\": \"",n,"\" , \"newPasswordConfirmation\": \"",t,"\" } "].join("")),this.cronapi.object.createObjectFromString(["{ \"X-AUTH-TOKEN\": \"",this.cronapi.util.getUserToken(),"\" } "].join("")),async n=>{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(n){this.cronapi.screen.hideIonicModal("changePassword")}finally{this.cronapi.screen.changeValueOfField("vars.oldPassword",""),this.cronapi.screen.changeValueOfField("vars.newPassword",""),this.cronapi.screen.changeValueOfField("vars.confirmationPassword","")}},n=>{"403"==this.cronapi.object.getProperty(n,"status")||"401"==this.cronapi.object.getProperty(n,"status")?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[])):this.cronapi.screen.notify("error",this.cronapi.object.getProperty(n,"responseJSON.message")),this.cronapi.screen.hide()})):this.cronapi.screen.notify("error",this.cronapi.i18n.translate("Login.view.invalidPassword",[]))},this.cronapi.authentication.signup=async function(n,t,a,o){let r=this.cronapi.authentication.isValidSignup,c,s,l,p;var d=this&&this.blockly&&this.blockly.js&&this.blockly.js.blockly&&this.blockly.js.blockly.UserControl?this.blockly.js.blockly.UserControl.isValidSignup:void 0,u=this&&this.blockly&&this.blockly.js&&this.blockly.js.blockly&&this.blockly.js.blockly.auth&&this.blockly.js.blockly.auth.UserControl?this.blockly.js.blockly.auth.UserControl.isValidSignup:void 0;angular.isFunction(d)?r=d:angular.isFunction(u)&&(r=u),(await r(n,t,a,o))&&this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:signUp",async n=>{c=n,s=this.cronapi.json.createObjectFromString(c),l=this.cronapi.json.getProperty(s,"code"),p=this.cronapi.json.getProperty(s,"message"),"201"==l?(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(p)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("General.ErrorNotSpecified",[])):this.cronapi.screen.notify("warning",p)},n,t,a)},this.cronapi.authentication.mutualSignup=async function(){let n;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",this.cronapi.util.getBaseUrl()+""+"/mutual/register",this.cronapi.object.createObjectFromString(["{ \"token\": \"",this.cronapi.util.getUserToken(),"\" } "].join("")),null,async t=>{n=t,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))},async t=>{n=t,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(n,"responseJSON.message"))})},this.cronapi.authentication.mutualLogin=async function(){let n;this.cronapi.util.getURLFromOthers("POST","application/x-www-form-urlencoded",this.cronapi.util.getBaseUrl()+""+"/mutual/register",this.cronapi.object.createObjectFromString(["{ \"token\": \"",this.cronapi.util.getUserToken(),"\" } "].join("")),null,async t=>{n=t,this.cronapi.screen.notify("info",this.cronapi.i18n.translate("Home.view.tokenRegistered",[]))},async t=>{n=t,this.cronapi.screen.notify("error",this.cronapi.object.getProperty(n,"responseJSON.message"))})},this.cronapi.authentication.isValidSignup=function(n,t,a,o){let r=!0;return this.cronapi.logic.isNullOrEmpty(n)&&(this.cronapi.screen.notify("error",this.cronapi.i18n.translate("UsernameCanNotBeEmpty",[])),r=!1),this.cronapi.logic.isNullOrEmpty(t)&&(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(n){this.cronapi.logic.isNullOrEmpty(n)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",n=>{this.cronapi.screen.notify("success",this.cronapi.i18n.translate("ForgotPasswordSent",[])),this.cronapi.screen.hideModal("forgotPasswordModal")},n,!1)},this.cronapi.authentication.resetPasswordWithOTP=function(n){this.cronapi.logic.isNullOrEmpty(n)?this.cronapi.screen.notify("error",this.cronapi.i18n.translate("EmailCanNotBeEmpty",[])):(localStorage.removeItem("otpToken"),this.cronapi.util.callServerBlocklyAsynchronous("blockly.UserControl:resetPassword",n=>{localStorage.setItem("otpToken",n),this.cronapi.screen.changeView("#/app/login",[])},n,!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(n){return n},this.cronapi.map.setMapValueByKey=function(n,t,a){const o={[t]:a};n.push(o)},this.cronapi.map.setMapValueByPath=function(n,t,a){const o={},r=t.split("."),c=r.pop(),s=r.reduce((n,t)=>n[t]=n[t]||{},o);s[c]=a,n.push(o)},this.cronapi.map.getMapValueByPath=function(n,t){let a=null;return n.forEach(n=>{a=n;for(const o=t.split(".");o.length;){const n=o.shift();if(!a.hasOwnProperty(n))break;a=a[n]}}),a},this.cronapi.map.getMapValueByKey=function(n,t){let a=null;return n.forEach(n=>{n.hasOwnProperty(t)&&(a=n[t])}),a},this.cronapi.breadcrumb={},this.cronapi.breadcrumb.jsonBreadcrumb=function(n){let t=[];return n=Array.isArray(n)?n:[n],n.forEach(function(n){t.push(n)}),t},this.cronapi.breadcrumb.listBreadcrumb=function(n,t,a,o){let r={};return r.type="true"===n||!0===n?"rootitem":"item",r.text=t,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(n,t,a,o){function r(){c.ws=new WebSocket(n),c.ws.onopen=()=>{t&&t(c.ws)},c.ws.onmessage=n=>{a&&a(n.data)},c.ws.onclose=n=>{c.__closed||(console.log("Socket is closed. Reconnect will be attempted in 1 second.",n.reason),setTimeout(()=>{r()},1e3))},c.ws.onerror=n=>{console.error("Socket encountered error: ",n.message),o&&o(n)}}let c={};return r(),c},this.cronapi.websocket.send=function(n,t){n&&!n.__closed&&n.ws.send(t)},this.cronapi.websocket.close=function(n){n&&!n.__closed&&(n.__closed=!0,n.ws.close())},this.cronapi.multimedia=this.cronapi.multimedia||{},this.cronapi.multimedia.recordAudio=async function(){let n={audio:!0};try{const t=await navigator.mediaDevices.getUserMedia(n),a=document.createElement("audio");a.srcObject=t,document.body.appendChild(a);const o=new MediaRecorder(t);return o.start(),o}catch(n){alert(n)}},this.cronapi.multimedia.pauseRecord=async function(n){"recording"===n.state?n.pause():n.resume()},this.cronapi.multimedia.stopRecord=async function(n){const t=new Promise(function(t,a){let o=[];n.ondataavailable=function(n){o.push(n.data)},n.onstop=function(){let n=new Blob(o,{type:"audio/mp3;"});t(n)},n.stop()}),a=await t;return a}}cronapi.bind(window)();try{module&&(module.exports={window})}catch(n){}
23
23
  !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).ZXing={})}(this,(function(t){"use strict";
24
24
  /*! *****************************************************************************
25
25
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -190,6 +190,13 @@
190
190
  "createSerieParamData": "Data: Serie data",
191
191
  "createSerieParamName": "Serie name",
192
192
  "createSerieParamOptions": "Options: Serie Options",
193
+ "cronapi.dateTime.changeDateMask.description": "Modify the mask of a date",
194
+ "cronapi.dateTime.changeDateMask.name": "Change date mask",
195
+ "cronapi.dateTime.changeDateMask.param.date": "Date",
196
+ "cronapi.dateTime.changeDateMask.param.endLocale": "Final Locale: Optional, default value: pt_BR",
197
+ "cronapi.dateTime.changeDateMask.param.endMask": "Final mask",
198
+ "cronapi.dateTime.changeDateMask.param.initLocalek": "Initial Locale: Optional, default value: pt_BR",
199
+ "cronapi.dateTime.changeDateMask.param.initMask": "Initial mask",
193
200
  "cssClass": "CSS class",
194
201
  "dashboard": "Dashboard",
195
202
  "datasource": "Datasource",
@@ -192,6 +192,13 @@
192
192
  "createSerieParamData": "Dados: Dados da série",
193
193
  "createSerieParamName": "Nome da série",
194
194
  "createSerieParamOptions": "Opções: Opções da série",
195
+ "cronapi.dateTime.changeDateMask.description": "Modificar a máscara de uma data",
196
+ "cronapi.dateTime.changeDateMask.name": "Mudar máscara da data",
197
+ "cronapi.dateTime.changeDateMask.param.date": "Data",
198
+ "cronapi.dateTime.changeDateMask.param.endLocale": "Idioma final: Opcional, valor padrão: pt_BR",
199
+ "cronapi.dateTime.changeDateMask.param.endMask": "Máscara final",
200
+ "cronapi.dateTime.changeDateMask.param.initLocale": "Idioma inicial: Opcional, valor padrão: pt_BR",
201
+ "cronapi.dateTime.changeDateMask.param.initMask": "Máscara inicial",
195
202
  "cssClass": "Classe CSS",
196
203
  "dashboard": "Dashboard",
197
204
  "datasource": "Fonte de dados",
@@ -1,9 +1,9 @@
1
1
  <div class="modal fade" id="modalTemplate" tabindex="-1" role="dialog" aria-labelledby="modalTemplateTitle" aria-hidden="true">
2
2
  <div class="modal-dialog" role="document">
3
3
  <div class="modal-content">
4
- <div class="modal-header">
4
+ <div class="modal-header">
5
+ <button type="button" class="close" data-dismiss="modal" aria-label="Close" id="modalTemplateClose"><span aria-hidden="true">×</span></button>
5
6
  <h2 class="modal-title" id="modalTemplateTitle">Title</h2>
6
- <button type="button" class="close" data-dismiss="modal" aria-label="Close" id="modalTemplateClose"><span aria-hidden="true">×</span></button>
7
7
  </div>
8
8
  <div class="modal-body" id="modalTemplateBody">
9
9
  </div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cronapi-js",
3
- "version": "3.2.0",
3
+ "version": "3.2.1-SP.11",
4
4
  "description": "Public library for CronApp's users",
5
5
  "main": "cronapi.js",
6
6
  "scripts": {