cronapp-framework-js 2.8.32 → 2.8.36

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.
Files changed (59) hide show
  1. package/components/crn-carousel.components.json +1 -1
  2. package/components/crn-eight-four-container.components.json +2 -2
  3. package/components/crn-enterprise-autocomplete.components.json +8 -0
  4. package/components/crn-enterprise-combobox-multiple.components.json +7 -0
  5. package/components/crn-enterprise-combobox.components.json +7 -0
  6. package/components/crn-enterprise-dynamic-autocomplete.components.json +35 -27
  7. package/components/crn-enterprise-dynamic-combobox.components.json +7 -0
  8. package/components/crn-four-eight-container.components.json +2 -2
  9. package/components/crn-one-container.components.json +2 -2
  10. package/components/crn-ordered-list.components.json +1 -0
  11. package/components/crn-ordered-sub-list.components.json +1 -0
  12. package/components/crn-radioOption.components.json +8 -0
  13. package/components/crn-textarea.components.json +8 -0
  14. package/components/crn-textinput.components.json +8 -0
  15. package/components/crn-textinputbutton.components.json +8 -0
  16. package/components/crn-textinputicon.components.json +8 -0
  17. package/components/crn-three-container.components.json +2 -2
  18. package/components/crn-trhee-six-three-container.components.json +2 -2
  19. package/components/crn-two-container.components.json +2 -2
  20. package/components/crn-unordered-list.components.json +1 -0
  21. package/components/crn-unordered-sub-list.components.json +1 -0
  22. package/components/cron-breadcrumbs.components.json +64 -0
  23. package/components/cron-ordered-list.components.json +152 -0
  24. package/components/templates/accordion.template.html +6 -6
  25. package/components/templates/carousel.template.html +3 -3
  26. package/components/templates/cron-breadcrumbs.designtime.html +11 -0
  27. package/components/templates/cron-breadcrumbs.template.html +5 -0
  28. package/components/templates/cron-ordered-list.template.html +7 -0
  29. package/components/templates/tabs.template.html +4 -4
  30. package/css/app.css +7 -0
  31. package/css/themes/custom/material/components_css/crn-scheduler.css +1 -2
  32. package/dist/components/css/font-size.css +1 -0
  33. package/dist/components/css/image.css +1 -0
  34. package/dist/components/js/jquery.inputmask.bundle.js +1 -1
  35. package/dist/components/js/jquery.mask.min.js +1 -1
  36. package/dist/components/js/qrcode.js +1 -1
  37. package/dist/components/templates/accordion.template.html +1 -1
  38. package/dist/components/templates/carousel.template.html +1 -1
  39. package/dist/components/templates/cron-breadcrumbs.designtime.html +1 -0
  40. package/dist/components/templates/cron-breadcrumbs.template.html +1 -0
  41. package/dist/components/templates/cron-ordered-list.template.html +1 -0
  42. package/dist/components/templates/evaluation.template.html +1 -0
  43. package/dist/components/templates/tabs.template.html +1 -1
  44. package/dist/components/templates/text.template.html +1 -0
  45. package/dist/components/templates/textinputbutton.html +1 -0
  46. package/dist/css/app.css +1 -1
  47. package/dist/css/themes/custom/material/components_css/crn-scheduler.css +1 -1
  48. package/dist/img/cron-icon/cron-breadrumb.svg +1 -0
  49. package/dist/js/LanguageSelectDirective.js +1 -1
  50. package/dist/js/LocaleService.js +1 -1
  51. package/dist/js/app.authentication.js +1 -0
  52. package/dist/js/app.js +1 -1
  53. package/dist/js/controllers.authentication.js +1 -0
  54. package/dist/js/directives.js +1 -1
  55. package/dist/js/reports/parameters.controller.js +1 -1
  56. package/img/cron-icon/cron-breadrumb.svg +638 -0
  57. package/js/app.js +12 -13
  58. package/js/directives.js +243 -40
  59. package/package.json +1 -1
package/js/app.js CHANGED
@@ -233,18 +233,6 @@ var app = (function() {
233
233
  }
234
234
  }
235
235
 
236
- //Components personalization jquery
237
- $scope.registerComponentScripts = function() {
238
- //carousel slider
239
- $('.carousel-indicators li').on('click', function() {
240
- var currentCarousel = '#' + $(this).parent().parent().parent().attr('id');
241
- var index = $(currentCarousel + ' .carousel-indicators li').index(this);
242
- $(currentCarousel + ' #carousel-example-generic').carousel(index);
243
- });
244
- };
245
-
246
- $scope.registerComponentScripts();
247
-
248
236
  try {
249
237
  var contextAfterPageController = $controller('AfterPageController', { $scope: $scope });
250
238
  app.copyContext(contextAfterPageController, this, 'AfterPageController');
@@ -333,6 +321,7 @@ var app = (function() {
333
321
  }
334
322
 
335
323
  $rootScope.renderFinished = true;
324
+ registerComponentScripts();
336
325
  });
337
326
  };
338
327
 
@@ -536,4 +525,14 @@ const keyCodeFormActions = {
536
525
  handle: (e) => !keyCodeFormActions[e.keyCode || e.which] || keyCodeFormActions[e.keyCode || e.which](e),
537
526
  13: (e) => e.preventDefault()
538
527
  };
539
- keyCodeFormActions.initialize();
528
+ keyCodeFormActions.initialize();
529
+
530
+ //Components personalization jquery
531
+ var registerComponentScripts = function() {
532
+ //carousel slider
533
+ $('.carousel-indicators li').on('click', function() {
534
+ var currentCarousel = '#' + $(this).parent().parent().parent().attr('id');
535
+ var index = $(currentCarousel + ' .carousel-indicators li').index(this);
536
+ $(currentCarousel + ' > div').carousel(index);
537
+ });
538
+ };
package/js/directives.js CHANGED
@@ -796,7 +796,7 @@
796
796
  if (o.length >= 10 && o.match(ISO_PATTERN)) {
797
797
  return "datetimeoffset'" + o + "'";
798
798
  } else {
799
- return "'" + o + "'";
799
+ return "'" + o.replaceAll("'", "''") + "'";
800
800
  }
801
801
  }
802
802
  } else {
@@ -3373,7 +3373,7 @@
3373
3373
  var parent = element.parent();
3374
3374
  $(parent).append('<input style="width: 100%;" '+ id + name + ' class="cronSelect"/>');
3375
3375
  var $element = $(parent).find('input.cronSelect');
3376
-
3376
+ var cronDisabled = attrs.cronDisabled;
3377
3377
  var options = await app.kendoHelper.getConfigCombobox(select, scope);
3378
3378
  options.close = attrs.ngClose ? function (){scope.$eval(attrs.ngClose)}: undefined;
3379
3379
  options.dataBound = attrs.ngDataBound ? function (){scope.$eval(attrs.ngDataBound)}: undefined;
@@ -3423,7 +3423,11 @@
3423
3423
  }
3424
3424
  };
3425
3425
  initializeAttrAndEvents();
3426
- combobox.enable(true);
3426
+ if (cronDisabled) {
3427
+ combobox.enable(false);
3428
+ } else {
3429
+ combobox.enable(true);
3430
+ }
3427
3431
 
3428
3432
  var _scope = scope;
3429
3433
  var _ngModelCtrl = ngModelCtrl;
@@ -3524,6 +3528,7 @@
3524
3528
  var self = this;
3525
3529
  var parentDS = {};
3526
3530
  var textField = null;
3531
+ var cronDisabled = attrs.cronDisabled;
3527
3532
  try {
3528
3533
  select = JSON.parse(attrs.options);
3529
3534
  parentDS = this.getActive(attrs.ngModel);
@@ -3581,6 +3586,9 @@
3581
3586
  _combobox.isEvaluating = false;
3582
3587
  } else {
3583
3588
  _dataSource.findObj([options.value], false, function(data) {
3589
+ if (Array.isArray(data)) {
3590
+ data = data[0];
3591
+ }
3584
3592
  options.success(data);
3585
3593
  _combobox.isEvaluating = false;
3586
3594
 
@@ -3690,9 +3698,16 @@
3690
3698
  var found = _goTo(_scope, combobox, combobox.dataItem());
3691
3699
 
3692
3700
  if (!found) {
3693
- dataItem = objectClone(combobox.dataItem(), combobox.dataSource.options.schema.model.fields);
3694
- dataSourceScreen.data.push(dataItem);
3695
- _goTo(_scope, combobox, dataItem);
3701
+ dataSourceScreen.findObj([value], false, (dataresult) => {
3702
+ if (Array.isArray(dataresult)) {
3703
+ dataresult = dataresult[0];
3704
+ }
3705
+ if (dataresult) {
3706
+ dataSourceScreen.data.push(dataresult);
3707
+ _goTo(_scope, combobox, dataresult);
3708
+ modelSetter(_scope, value);
3709
+ }
3710
+ });
3696
3711
  }
3697
3712
  }
3698
3713
  }
@@ -3887,7 +3902,13 @@
3887
3902
  _compileAngular(scope, combobox.ul);
3888
3903
 
3889
3904
  $(element).remove();
3890
- combobox.enable(true);
3905
+
3906
+ if(cronDisabled){
3907
+ combobox.enable(false);
3908
+ } else {
3909
+ combobox.enable(true);
3910
+ }
3911
+
3891
3912
  $("[aria-owns='" + `${attrs.id}_listbox` + "']").attr('aria-label', $translate.instant('template.crud.search'));
3892
3913
  }
3893
3914
  };
@@ -3901,6 +3922,7 @@
3901
3922
  var modelGetter = $parse(attrs['ngModel']);
3902
3923
  var modelSetter = modelGetter.assign;
3903
3924
  var model = attrs['ngModel'];
3925
+ var cronDisabled = attrs.cronDisabled;
3904
3926
 
3905
3927
  var _self = this;
3906
3928
  var select = {};
@@ -4037,7 +4059,11 @@
4037
4059
  deselect = attrs.ngDeselect ? function (){_scope.$eval(attrs.ngDeselect)}: undefined;
4038
4060
 
4039
4061
  var combobox = $element.kendoMultiSelect(options).data('kendoMultiSelect');
4040
- combobox.enable(true);
4062
+ if(cronDisabled){
4063
+ combobox.enable(false);
4064
+ }else {
4065
+ combobox.enable(true);
4066
+ }
4041
4067
  app.kendoHelper.receivePushData(combobox);
4042
4068
 
4043
4069
  $("[aria-describedby='" + `${attrs.id}_taglist` + "']").attr('id', `${attrs.id}-container`);
@@ -4107,6 +4133,7 @@
4107
4133
  options.select = attrs.ngSelect ? function (){scope.$eval(attrs.ngSelect);}: undefined;
4108
4134
  var parent = element.parent();
4109
4135
  var id = attrs.id ? ' id="' + attrs.id + '"' : '';
4136
+ var cronDisabled = attrs.cronDisabled;
4110
4137
  var name = attrs.name ? ' name="' + attrs.name + '"' : '';
4111
4138
  var validationmessage = attrs.validationmessage ? ' validationmessage="' + attrs.validationmessage + '"' : '';
4112
4139
  var required = '';
@@ -4138,7 +4165,12 @@
4138
4165
  }
4139
4166
 
4140
4167
  var autoComplete = $element.kendoAutoComplete(options).data('kendoAutoComplete');
4141
- autoComplete.enable(true);
4168
+
4169
+ if(cronDisabled){
4170
+ autoComplete.enable(false);
4171
+ } else {
4172
+ autoComplete.enable(true);
4173
+ }
4142
4174
 
4143
4175
  if (ngModelCtrl) {
4144
4176
  ngModelCtrl.$formatters.push(function (value) {
@@ -4299,7 +4331,7 @@
4299
4331
  });
4300
4332
  resizeObserver.observe(slider.wrapper[0])
4301
4333
 
4302
- if (attrs.ngRequired || attrs.required) {
4334
+ if (attrs.ngRequired === 'true' || attrs.required) {
4303
4335
  var id = attrs.id ? ' id="input' + app.common.generateId() + '"' : '';
4304
4336
  var name = attrs.name ? ' name="input' + app.common.generateId() + '"' : '';
4305
4337
  var parent = element.parent();
@@ -4542,7 +4574,7 @@
4542
4574
  const populateSubitems = (item) => {
4543
4575
  var subitem = item.menuItems;
4544
4576
  var templateSubitens = '';
4545
-
4577
+
4546
4578
  subitem.forEach((subitem) => {
4547
4579
  var securitySubitem = (subitem.security && subitem.security != null) ? ' cronapp-security="' + subitem.security + '" ' : '';
4548
4580
  var actionSubitem = (subitem.action && subitem.action != null) ? ' ng-click="' + subitem.action + '" ' : '';
@@ -4550,48 +4582,48 @@
4550
4582
  var iconClassSubitem = (subitem.iconClass && subitem.iconClass != null) ? '<i class="' + subitem.iconClass + '"></i>&nbsp;' : '';
4551
4583
  var titleSubitem = '<span></span>';
4552
4584
  var caretSubitem = (subitem.menuItems && Array.isArray(subitem.menuItems) && (subitem.menuItems.length > 0)) ? '<span class="caret submenu"></span>' : '';
4553
-
4585
+
4554
4586
  if (subitem.title) {
4555
4587
  titleSubitem = '<span>' + $translate.instant(subitem.title) + '</span>';
4556
4588
  }
4557
-
4589
+
4558
4590
  if (subitem.menuItems.length > 0) {
4559
4591
  templateSubitens = templateSubitens + '<li class="dropdown-submenu">\
4560
4592
  <a class="dropdown-item dropdown-toggle" role="button" aria-haspopup="true" aria-expanded="false" href=""' + securitySubitem + actionSubitem + '>' + iconClassSubitem + titleSubitem + caretSubitem + '</a>\
4561
4593
  ' + populateItems(subitem.menuItems) + '\
4562
4594
  </li>';
4563
-
4595
+
4564
4596
  } else {
4565
4597
  templateSubitens = templateSubitens + '<li class="dropdown-submenu">\
4566
4598
  <a role="button" aria-haspopup="true" aria-expanded="false" href=""' + securitySubitem + actionSubitem + '>' + iconClassSubitem + titleSubitem + caretSubitem + '</a>\
4567
4599
  </li>';
4568
4600
  }
4569
4601
  });
4570
-
4602
+
4571
4603
  if (templateSubitens != '') {
4572
4604
  templateSubitens = '<ul class="dropdown-menu">' + templateSubitens + '</ul>';
4573
4605
  }
4574
-
4606
+
4575
4607
  return templateSubitens;
4576
4608
  };
4577
-
4609
+
4578
4610
  const populateItems = (items) => {
4579
4611
  var templateItens = '';
4580
-
4612
+
4581
4613
  if (items && items.length > 0 && Array.isArray(items)) {
4582
4614
  items.forEach(function (item) {
4583
-
4615
+
4584
4616
  var security = (item.security && item.security != null) ? ' cronapp-security="' + item.security + '" ' : '';
4585
4617
  var action = (item.action && item.action != null) ? ' ng-click="' + item.action + '" ' : '';
4586
4618
  var hide = (item.hide && item.hide != null) ? ' ng-hide="' + item.hide + '" ' : '';
4587
4619
  var iconClass = (item.iconClass && item.iconClass != null) ? '<i class="' + item.iconClass + '"></i>&nbsp;' : '';
4588
4620
  var title = '<span></span>';
4589
4621
  var caret = (item.menuItems && Array.isArray(item.menuItems) && (item.menuItems.length > 0)) ? '<span class="caret submenu"></span>' : '';
4590
-
4622
+
4591
4623
  if (item.title) {
4592
4624
  title = '<span>' + $translate.instant(item.title) + '</span>';
4593
4625
  }
4594
-
4626
+
4595
4627
  if (item.menuItems.length > 0) {
4596
4628
  templateItens = templateItens + '\
4597
4629
  <li class="dropdown-submenu" ' + security + hide + '> \
@@ -4604,36 +4636,36 @@
4604
4636
  <a href="" ' + action + ' class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">' + iconClass + title + caret + ' </a> \
4605
4637
  </li>';
4606
4638
  }
4607
-
4639
+
4608
4640
  });
4609
-
4641
+
4610
4642
  if (templateItens != '') {
4611
4643
  templateItens = '<ul class="dropdown-menu">' + templateItens + '</ul>';
4612
4644
  }
4613
4645
  }
4614
-
4646
+
4615
4647
  return templateItens;
4616
4648
  }
4617
4649
  return {
4618
4650
  restrict: 'EA',
4619
4651
  populateMenu: function (menuOptions, isVertical) {
4620
4652
  var template = '';
4621
-
4653
+
4622
4654
  if (menuOptions && menuOptions != null && menuOptions.subMenuOptions && menuOptions.subMenuOptions != null && Array.isArray(menuOptions.subMenuOptions)) {
4623
-
4655
+
4624
4656
  menuOptions.subMenuOptions.forEach(function (menu) {
4625
-
4657
+
4626
4658
  var security = (menu.security && menu.security != null) ? ' cronapp-security="' + menu.security + '" ' : '';
4627
4659
  var action = (menu.action && menu.action != null) ? ' ng-click="' + menu.action + '" ' : '';
4628
4660
  var caret = (menu.menuItems && Array.isArray(menu.menuItems) && (menu.menuItems.length > 0)) ? '<span class="caret"></span>' : '';
4629
4661
  var hide = (menu.hide && menu.hide != null) ? ' ng-hide="' + menu.hide + '" ' : '';
4630
4662
  var iconClass = (menu.iconClass && menu.iconClass != null) ? '<i class="' + menu.iconClass + '"></i>&nbsp;' : '';
4631
4663
  var title = '<span></span>'
4632
-
4664
+
4633
4665
  if (menu.title) {
4634
4666
  title = '<span>' + $translate.instant(menu.title) + '</span>';
4635
4667
  }
4636
-
4668
+
4637
4669
  template = template + '\
4638
4670
  <li class="dropdown nav-item '+ (isVertical ? 'col-md-12 padding-0' : '') + '"' + security + hide + '>\
4639
4671
  <a href="" ' + action + ' class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">\
@@ -4641,17 +4673,17 @@
4641
4673
  </a> \
4642
4674
  ' + populateItems(menu.menuItems) + '\
4643
4675
  </li>';
4644
-
4676
+
4645
4677
  })
4646
4678
  }
4647
-
4679
+
4648
4680
  return template;
4649
4681
  },
4650
4682
  link: function (scope, element, attrs) {
4651
4683
  $translate.onReady(() => {
4652
4684
  //Somente fica na vertical se for o menu principal da IDE (E estiver configurado para isso)
4653
4685
  let isVertical = element.closest('.crn-navigator-vertical').length;
4654
-
4686
+
4655
4687
  var TEMPLATE_MAIN = '<ul class="nav navbar-nav ' + (isVertical ? 'col-md-12 padding-0' : '') + ' " style="float:left"></ul>';
4656
4688
  var options = {};
4657
4689
  try {
@@ -4659,30 +4691,30 @@
4659
4691
  } catch (e) {
4660
4692
  console.log('CronDynamicMenu: Invalid configuration!')
4661
4693
  }
4662
-
4694
+
4663
4695
  var main = $(TEMPLATE_MAIN);
4664
4696
  main.attr('id', attrs.id);
4665
-
4697
+
4666
4698
  var menus = this.populateMenu(options, isVertical);
4667
4699
  main.append(menus);
4668
4700
  if (isVertical) {
4669
4701
  main.append($('#navbar2 li:first').addClass('col-md-12 padding-0'));
4670
4702
  }
4671
-
4703
+
4672
4704
  var newElement = angular.element(main);
4673
4705
  element.html('');
4674
4706
  element.append(main);
4675
4707
  element.attr('id', null);
4676
4708
  $compile(newElement)(scope);
4677
-
4709
+
4678
4710
  var multilevelAction = attrs.multilevelAction;
4679
-
4711
+
4680
4712
  if (multilevelAction === 'hover') {
4681
4713
  $('.dropdown-menu .dropdown-submenu').on('mouseover', function () {
4682
4714
  var subMenu = $(this).children('ul.dropdown-menu');
4683
4715
  subMenu.addClass('displayBlock');
4684
4716
  });
4685
-
4717
+
4686
4718
  $('.dropdown-menu .dropdown-submenu').on('mouseout', function () {
4687
4719
  var subMenu = $(this).children('ul.dropdown-menu');
4688
4720
  subMenu.removeClass('displayBlock');
@@ -4701,12 +4733,147 @@
4701
4733
  return false;
4702
4734
  });
4703
4735
  }
4704
-
4736
+
4705
4737
  });
4706
4738
  }
4707
4739
  }
4708
4740
  }])
4709
4741
 
4742
+ .directive('cronBreadcrumbs', function () {
4743
+ 'use strict';
4744
+ return {
4745
+ restrict: 'E',
4746
+ replace: true,
4747
+ link: function (scope, element, attrs) {
4748
+ setTimeout(() => {
4749
+
4750
+ let crnDelimiterIcon = attrs.crnDelimiterIcon;
4751
+ let idMenu = attrs.idMenu;
4752
+
4753
+ // Capturar o json do menu
4754
+ let menuOptions = $(`#${idMenu}`)[0].parentElement.attributes['options'];
4755
+ menuOptions = JSON.parse(menuOptions.value);
4756
+ let subMenuOptions = menuOptions.subMenuOptions;
4757
+
4758
+ // Capturar a url da pagina
4759
+ let page = document.location.hash;
4760
+ page = page.split("/");
4761
+
4762
+ let idBreadcrumb = attrs.id;
4763
+
4764
+ let breadcrumb = [];
4765
+ let arrayPaiBreadcrumb = [];
4766
+
4767
+ inicio(subMenuOptions);
4768
+
4769
+ function inicio(items) {
4770
+ let x = false;
4771
+
4772
+ for (let i in items) {
4773
+
4774
+ let action = items[i].action;
4775
+ if (action && action != "") {
4776
+ action = action.replace("cronapi.screen.changeView('", '');
4777
+ action = action.replace("', [])", '')
4778
+ action = action.split("/");
4779
+ } else {
4780
+ action = null
4781
+ }
4782
+
4783
+ if (items[i].level === 1) {
4784
+ arrayPaiBreadcrumb = [];
4785
+ }
4786
+
4787
+ if (arrayPaiBreadcrumb.length != 0 && items[i].level === arrayPaiBreadcrumb[arrayPaiBreadcrumb.length - 1].level) {
4788
+ if (!action) {
4789
+ arrayPaiBreadcrumb[arrayPaiBreadcrumb.length - 1] = {
4790
+ level: items[i].level,
4791
+ title: items[i].title,
4792
+ href: '#'
4793
+ };
4794
+
4795
+ } else if (action) {
4796
+ arrayPaiBreadcrumb[arrayPaiBreadcrumb.length - 1] = {
4797
+ level: items[i].level,
4798
+ title: items[i].title,
4799
+ href: document.location.origin + '/' + action.join("/")
4800
+ };
4801
+
4802
+ }
4803
+
4804
+ } else {
4805
+ if (!action) {
4806
+ arrayPaiBreadcrumb.push({
4807
+ level: items[i].level,
4808
+ title: items[i].title,
4809
+ href: '#'
4810
+ });
4811
+ } else if (action) {
4812
+ arrayPaiBreadcrumb.push({
4813
+ level: items[i].level,
4814
+ title: items[i].title,
4815
+ href: document.location.origin + '/' + action.join("/")
4816
+ });
4817
+ }
4818
+ }
4819
+
4820
+ if (items[i].menuItems.length > 0) {
4821
+ inicio(items[i].menuItems);
4822
+
4823
+ } else {
4824
+ if (action) {
4825
+ if (action[action.length - 1] === page[page.length - 1]) {
4826
+ x = true;
4827
+ }
4828
+ }
4829
+ }
4830
+
4831
+ if (x) {
4832
+ for (let y in arrayPaiBreadcrumb) {
4833
+
4834
+ if (y == 0 && arrayPaiBreadcrumb[y].level == 1) {
4835
+ breadcrumb.push({
4836
+ type: "rootitem",
4837
+ href: arrayPaiBreadcrumb[y].href,
4838
+ text: arrayPaiBreadcrumb[y].title,
4839
+ showText: true,
4840
+ showIcon: false
4841
+ })
4842
+ } else if (y == 0 && arrayPaiBreadcrumb[y].level != 1) {
4843
+ breadcrumb.push({
4844
+ type: "rootitem",
4845
+ href: arrayPaiBreadcrumb[y].href,
4846
+ text: arrayPaiBreadcrumb[y].title,
4847
+ showText: true,
4848
+ showIcon: false
4849
+ })
4850
+ } else {
4851
+ breadcrumb.push({
4852
+ type: "item",
4853
+ href: arrayPaiBreadcrumb[y].href,
4854
+ text: arrayPaiBreadcrumb[y].title,
4855
+ showText: true,
4856
+ showIcon: false
4857
+ })
4858
+ }
4859
+ }
4860
+
4861
+ return breadcrumb
4862
+ }
4863
+ }
4864
+ }
4865
+
4866
+ $(`#${idBreadcrumb}`).kendoBreadcrumb({
4867
+ items: breadcrumb,
4868
+ delimiterIcon: crnDelimiterIcon,
4869
+ navigational: true
4870
+ });
4871
+
4872
+ }, 800);
4873
+ }
4874
+ }
4875
+ })
4876
+
4710
4877
  .directive('ngInitialValue', function($parse) {
4711
4878
  return {
4712
4879
  restrict: 'A',
@@ -4723,7 +4890,7 @@
4723
4890
  let blocklyPackage = shortVersion.split("').names")[0];
4724
4891
  blocklyPackage = blocklyPackage.split("').attr()")[0];
4725
4892
  let blocklyParams = shortVersion.split('.run')[1];
4726
- evaluated = await scope.$eval(blocklyPackage + blocklyParams);
4893
+ evaluated = await scope.$eval(blocklyPackage + blocklyParams);
4727
4894
  } else {
4728
4895
  evaluated = scope.$eval(attrs.ngInitialValue);
4729
4896
  }
@@ -4936,6 +5103,42 @@
4936
5103
  }
4937
5104
  })
4938
5105
 
5106
+ .directive('cronOrderedList', function ($compile, $sce, $parse) {
5107
+ 'use strict';
5108
+ return {
5109
+ restrict: 'EA',
5110
+ replace: true,
5111
+ link: function (scope, element, attrs, ngModelCtrl) {
5112
+
5113
+ let attributeValue = attrs.attributeValue;
5114
+ let orderedAttributeValue = attrs.orderedAttributeValue
5115
+ let listType = attrs.listType;
5116
+ let content = element[0].children[0].children;
5117
+ content = $(content);
5118
+ let templateDyn = '';
5119
+ let contentUL = '';
5120
+
5121
+ $.each(content, function (i, item) {
5122
+ contentUL = contentUL + item.outerHTML;
5123
+ });
5124
+
5125
+ switch (listType) {
5126
+ case 'numbered-list':
5127
+ templateDyn = `<ol style="list-style-type: ${attributeValue}">${contentUL}</ol>`
5128
+ break
5129
+
5130
+ case 'ordered-list':
5131
+ templateDyn = `<ul style="list-style-type: ${orderedAttributeValue}">${contentUL}</ul>`
5132
+ break
5133
+ }
5134
+
5135
+ templateDyn = $(templateDyn);
5136
+ $(element).replaceWith(templateDyn);
5137
+ $compile(templateDyn)(scope);
5138
+ }
5139
+ }
5140
+ })
5141
+
4939
5142
  }(app));
4940
5143
 
4941
5144
  function maskDirectiveAsDate($compile, $translate, $parse) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cronapp-framework-js",
3
- "version": "2.8.32",
3
+ "version": "2.8.36",
4
4
  "description": "Javascript library for CronApp's projects",
5
5
  "main": "cronapp.framework.js",
6
6
  "scripts": {