@simpleangularcontrols/sac-common 10.0.0-rc.26 → 10.0.0-rc.28

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 (121) hide show
  1. package/bundles/simpleangularcontrols-sac-common.umd.js +716 -361
  2. package/bundles/simpleangularcontrols-sac-common.umd.js.map +1 -1
  3. package/bundles/simpleangularcontrols-sac-common.umd.min.js +1 -1
  4. package/bundles/simpleangularcontrols-sac-common.umd.min.js.map +1 -1
  5. package/common/basedatetimecontrol.d.ts +5 -0
  6. package/common/basemodelcontrol.d.ts +4 -0
  7. package/common/baseuploadcontrol.d.ts +4 -0
  8. package/controls/buttons/button.d.ts +25 -21
  9. package/controls/checkbox/checkbox.d.ts +1 -1
  10. package/controls/confirm/confirm.d.ts +19 -19
  11. package/controls/confirm/confirm.service.d.ts +10 -10
  12. package/controls/contextmenu/contextmenu.d.ts +8 -0
  13. package/controls/datetime/dateselector.d.ts +9 -1
  14. package/controls/dialog/dialog.d.ts +5 -1
  15. package/controls/form/form.d.ts +4 -4
  16. package/controls/grid/grid.d.ts +22 -18
  17. package/controls/grid/gridbutton.d.ts +23 -4
  18. package/controls/grid/gridcolumn.d.ts +5 -5
  19. package/controls/grid/gridcolumnaction.d.ts +1 -1
  20. package/controls/grid/gridcolumnbase.d.ts +17 -5
  21. package/controls/grid/model.d.ts +17 -17
  22. package/controls/grid/paging.d.ts +33 -29
  23. package/controls/input/inputdecimal.d.ts +1 -1
  24. package/controls/input/inputemail.d.ts +1 -1
  25. package/controls/input/inputinteger.d.ts +1 -1
  26. package/controls/input/inputsearch.d.ts +5 -5
  27. package/controls/list/dropdown.d.ts +3 -3
  28. package/controls/list/dropdownoptions.d.ts +1 -1
  29. package/controls/list/listbox.d.ts +1 -1
  30. package/controls/multilanguage/multilanguageinput.d.ts +2 -2
  31. package/controls/static/staticlabel.d.ts +1 -1
  32. package/controls/tabs/tab.d.ts +19 -15
  33. package/controls/tabs/tabitem.d.ts +4 -4
  34. package/controls/tinymce/tinymce.d.ts +26 -22
  35. package/controls/tinymce/tinymcedialogsettings.d.ts +9 -9
  36. package/controls/tooltip/tooltip.d.ts +8 -0
  37. package/controls/upload/dropzonemultiple.d.ts +4 -0
  38. package/controls/upload/dropzonesingle.d.ts +4 -0
  39. package/controls/upload/uploadmultiple.d.ts +4 -0
  40. package/controls/upload/uploadsingle.d.ts +4 -0
  41. package/controls/validation/validationsummary.d.ts +8 -4
  42. package/controls/wizard/wizard.d.ts +30 -30
  43. package/controls/wizard/wizarditem.d.ts +4 -4
  44. package/esm2015/common/basedatetimecontrol.js +6 -1
  45. package/esm2015/common/basemodelcontrol.js +6 -1
  46. package/esm2015/common/baseuploadcontrol.js +18 -5
  47. package/esm2015/controls/buttons/button.js +37 -32
  48. package/esm2015/controls/checkbox/checkbox.js +2 -2
  49. package/esm2015/controls/confirm/confirm.button.js +1 -1
  50. package/esm2015/controls/confirm/confirm.js +33 -35
  51. package/esm2015/controls/confirm/confirm.service.js +2 -2
  52. package/esm2015/controls/contextmenu/contextmenu.js +12 -1
  53. package/esm2015/controls/contextmenu/contextmenuanchor.js +1 -1
  54. package/esm2015/controls/contextmenu/contextmenucontainer.js +1 -1
  55. package/esm2015/controls/datetime/dateselector.js +41 -19
  56. package/esm2015/controls/dialog/dialog.js +22 -12
  57. package/esm2015/controls/form/form.js +3 -4
  58. package/esm2015/controls/grid/grid.js +23 -13
  59. package/esm2015/controls/grid/gridbutton.js +55 -14
  60. package/esm2015/controls/grid/gridcolumn.js +8 -8
  61. package/esm2015/controls/grid/gridcolumnaction.js +2 -2
  62. package/esm2015/controls/grid/gridcolumnbase.js +18 -7
  63. package/esm2015/controls/grid/gridimage.js +1 -1
  64. package/esm2015/controls/grid/model.js +23 -23
  65. package/esm2015/controls/grid/paging.js +48 -38
  66. package/esm2015/controls/input/inputdecimal.js +2 -2
  67. package/esm2015/controls/input/inputemail.js +2 -2
  68. package/esm2015/controls/input/inputinteger.js +2 -2
  69. package/esm2015/controls/input/inputsearch.js +8 -8
  70. package/esm2015/controls/layout/formlayout.js +6 -2
  71. package/esm2015/controls/list/buildvaluestring.js +3 -1
  72. package/esm2015/controls/list/dropdown.js +11 -2
  73. package/esm2015/controls/list/dropdownoptions.js +9 -2
  74. package/esm2015/controls/list/list.module.js +2 -2
  75. package/esm2015/controls/list/listbox.js +4 -4
  76. package/esm2015/controls/multilanguage/multilanguageinput.js +2 -2
  77. package/esm2015/controls/static/staticlabel.js +6 -2
  78. package/esm2015/controls/tabs/tab.js +38 -28
  79. package/esm2015/controls/tabs/tabitem.js +5 -3
  80. package/esm2015/controls/tinymce/tinymce.js +33 -32
  81. package/esm2015/controls/tinymce/tinymcedialogsettings.js +3 -1
  82. package/esm2015/controls/tinymce/tinymcedialogsettingsmeta.js +1 -4
  83. package/esm2015/controls/tinymce/tinymceinstance.js +1 -1
  84. package/esm2015/controls/tooltip/tooltip.js +12 -1
  85. package/esm2015/controls/upload/dropzonemultiple.js +10 -2
  86. package/esm2015/controls/upload/dropzonesingle.js +10 -2
  87. package/esm2015/controls/upload/uploadmultiple.js +10 -2
  88. package/esm2015/controls/upload/uploadsingle.js +10 -2
  89. package/esm2015/controls/validation/validationsummary.js +12 -6
  90. package/esm2015/controls/wizard/wizard.js +55 -49
  91. package/esm2015/controls/wizard/wizarditem.js +8 -6
  92. package/esm2015/interfaces/ISacConfigurationService.js +1 -1
  93. package/esm2015/interfaces/ISacIconService.js +1 -1
  94. package/esm2015/public_api.js +4 -1
  95. package/esm2015/services/sac-configuration.service.js +15 -5
  96. package/esm2015/services/sac-filebrowser.service.js +68 -62
  97. package/esm2015/services/sac-icon.service.js +31 -1
  98. package/esm2015/services/sac-language.service.js +6 -2
  99. package/esm2015/utilities/guid.js +4 -4
  100. package/esm2015/utilities/popuphelper.js +2 -2
  101. package/esm2015/utilities/testingattribute.pipe.js +39 -0
  102. package/esm2015/utilities/testingattribute.pipe.ngfactory.js +7 -0
  103. package/esm2015/utilities/utilities.module.js +12 -0
  104. package/esm2015/utilities/utilities.module.ngfactory.js +7 -0
  105. package/fesm2015/simpleangularcontrols-sac-common.js +708 -382
  106. package/fesm2015/simpleangularcontrols-sac-common.js.map +1 -1
  107. package/interfaces/ISacConfigurationService.d.ts +4 -0
  108. package/interfaces/ISacIconService.d.ts +20 -0
  109. package/package.json +1 -1
  110. package/public_api.d.ts +2 -0
  111. package/services/sac-configuration.service.d.ts +13 -5
  112. package/services/sac-filebrowser.service.d.ts +59 -59
  113. package/services/sac-icon.service.d.ts +40 -0
  114. package/services/sac-language.service.d.ts +2 -2
  115. package/simpleangularcontrols-sac-common-10.0.0-rc.28.tgz +0 -0
  116. package/simpleangularcontrols-sac-common.metadata.json +1 -1
  117. package/utilities/testingattribute.pipe.d.ts +12 -0
  118. package/utilities/testingattribute.pipe.ngfactory.d.ts +1 -0
  119. package/utilities/utilities.module.d.ts +2 -0
  120. package/utilities/utilities.module.ngfactory.d.ts +3 -0
  121. package/simpleangularcontrols-sac-common-10.0.0-rc.26.tgz +0 -0
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common/http'), require('rxjs'), require('@angular/forms'), require('moment'), require('imask'), require('ngx-uploadx'), require('@angular/common')) :
3
- typeof define === 'function' && define.amd ? define('@simpleangularcontrols/sac-common', ['exports', '@angular/core', '@angular/common/http', 'rxjs', '@angular/forms', 'moment', 'imask', 'ngx-uploadx', '@angular/common'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.simpleangularcontrols = global.simpleangularcontrols || {}, global.simpleangularcontrols['sac-common'] = {}), global.ng.core, global.ng.common.http, global.rxjs, global.ng.forms, global.moment, global.IMask, global.ngxUploadx, global.ng.common));
5
- }(this, (function (exports, i0, i1, rxjs, forms, moment_, IMask, ngxUploadx, common) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common/http'), require('rxjs'), require('@angular/forms'), require('moment'), require('angular-imask'), require('imask'), require('ngx-uploadx'), require('@angular/common')) :
3
+ typeof define === 'function' && define.amd ? define('@simpleangularcontrols/sac-common', ['exports', '@angular/core', '@angular/common/http', 'rxjs', '@angular/forms', 'moment', 'angular-imask', 'imask', 'ngx-uploadx', '@angular/common'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.simpleangularcontrols = global.simpleangularcontrols || {}, global.simpleangularcontrols['sac-common'] = {}), global.ng.core, global.ng.common.http, global.rxjs, global.ng.forms, global.moment, global.angularImask, global.IMask, global.ngxUploadx, global.ng.common));
5
+ }(this, (function (exports, i0, i1, rxjs, forms, moment_, angularImask, IMask, ngxUploadx, common) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
@@ -23,37 +23,51 @@
23
23
  */
24
24
  this._role = 'default';
25
25
  /**
26
- * Input Property für Icon Style Klasse; default Wert - ''
27
- */
28
- this.icon = '';
29
- /**
30
- * Input Property für Name; default Wert - ''
31
- */
32
- this.name = '';
33
- /**
34
- * Input Property für Text des Buttons; default Wert - ''
26
+ * Das boolean property ist benutzt für Aktivation des Spinner des Button. Default ist false.
35
27
  */
36
- this.text = '';
28
+ this._isloadingvalue = false;
37
29
  /**
38
30
  * Output Event Emitter
39
31
  */
40
32
  this.clicked = new i0.EventEmitter();
41
33
  /**
42
- * Das boolean property ist benutzt für Aktivation des Spinner des Button. Default ist false.
34
+ * Identifier used for the E2E data attribute.
43
35
  */
44
- this._isloadingvalue = false;
36
+ this.e2eidentifier = null;
45
37
  /**
46
38
  * Boolean Property für Error; default Wert - false
47
39
  */
48
40
  this.hasError = false;
41
+ /**
42
+ * Input Property für Icon Style Klasse; default Wert - ''
43
+ */
44
+ this.icon = '';
45
+ /**
46
+ * Input Property für Name; default Wert - ''
47
+ */
48
+ this.name = '';
49
+ /**
50
+ * Input Property für Text des Buttons; default Wert - ''
51
+ */
52
+ this.text = '';
49
53
  // #endregion Public Methods
50
54
  }
55
+ Object.defineProperty(SacButtonCommon.prototype, "_isdisabled", {
56
+ // #endregion Properties
57
+ // #region Public Getters And Setters
58
+ /**
59
+ * Getter Methode. Ergibt boolean Wert. Definiert, ob das Button desabled ist.
60
+ */
61
+ get: function () {
62
+ return this._isdisabledvalue;
63
+ },
64
+ enumerable: false,
65
+ configurable: true
66
+ });
51
67
  Object.defineProperty(SacButtonCommon.prototype, "isdisabled", {
52
68
  get: function () {
53
69
  return this._isdisabledvalue;
54
70
  },
55
- // #endregion Properties
56
- // #region Public Getters And Setters
57
71
  /**
58
72
  * Deaktivieren von Buttons
59
73
  * @param v Deaktiviert den Button
@@ -130,16 +144,6 @@
130
144
  enumerable: false,
131
145
  configurable: true
132
146
  });
133
- Object.defineProperty(SacButtonCommon.prototype, "_isdisabled", {
134
- /**
135
- * Getter Methode. Ergibt boolean Wert. Definiert, ob das Button desabled ist.
136
- */
137
- get: function () {
138
- return this._isdisabledvalue;
139
- },
140
- enumerable: false,
141
- configurable: true
142
- });
143
147
  // #endregion Public Getters And Setters
144
148
  // #region Public Methods
145
149
  /**
@@ -156,10 +160,11 @@
156
160
  { type: i0.Directive }
157
161
  ];
158
162
  SacButtonCommon.propDecorators = {
163
+ clicked: [{ type: i0.Output }],
164
+ e2eidentifier: [{ type: i0.Input }],
159
165
  icon: [{ type: i0.Input }],
160
166
  name: [{ type: i0.Input }],
161
167
  text: [{ type: i0.Input }],
162
- clicked: [{ type: i0.Output }],
163
168
  isdisabled: [{ type: i0.Input }],
164
169
  isloading: [{ type: i0.Input }],
165
170
  role: [{ type: i0.Input }]
@@ -678,6 +683,7 @@
678
683
  */
679
684
  var SacFormLayoutCommon = /** @class */ (function () {
680
685
  function SacFormLayoutCommon() {
686
+ // #region Properties
681
687
  /**
682
688
  * Defines the default display for a checkbox. You can choose between a checkbox and a switch. If no style is defined, the global style or the style on the control is used.
683
689
  */
@@ -726,8 +732,11 @@
726
732
  * Detach label text and tooltip from each other in Label so that label and tooltip can be aligned differently. This is in Bootstrap 3 not supported!
727
733
  */
728
734
  this.splitlabelandhelptext = null;
735
+ // #endregion Public Getters And Setters
729
736
  }
730
737
  Object.defineProperty(SacFormLayoutCommon.prototype, "IsInlineErrorEnabled", {
738
+ // #endregion Properties
739
+ // #region Public Getters And Setters
731
740
  /**
732
741
  * Returns whether the inline error messages for the form are active.
733
742
  */
@@ -776,6 +785,13 @@
776
785
  ControlHeight[ControlHeight["Large"] = 2] = "Large";
777
786
  })(exports.ControlHeight || (exports.ControlHeight = {}));
778
787
 
788
+ // #region Variables
789
+ /**
790
+ * injection token for component configuration service
791
+ */
792
+ var SACCONFIGURATION_SERVICE = new i0.InjectionToken('SacConfigurationService');
793
+ // #endregion Variables
794
+ // #region Exported Classes
779
795
  /**
780
796
  * abstract class for configuration settings providing in components
781
797
  */
@@ -797,6 +813,7 @@
797
813
  return _super !== null && _super.apply(this, arguments) || this;
798
814
  }
799
815
  Object.defineProperty(SacDefaultConfigurationService.prototype, "CheckboxStyle", {
816
+ // #region Public Getters And Setters
800
817
  /**
801
818
  * @inheritdoc
802
819
  */
@@ -826,6 +843,16 @@
826
843
  enumerable: false,
827
844
  configurable: true
828
845
  });
846
+ Object.defineProperty(SacDefaultConfigurationService.prototype, "EnableE2EAttributes", {
847
+ /**
848
+ * @inheritdoc
849
+ */
850
+ get: function () {
851
+ return false;
852
+ },
853
+ enumerable: false,
854
+ configurable: true
855
+ });
829
856
  Object.defineProperty(SacDefaultConfigurationService.prototype, "HelptextMode", {
830
857
  /**
831
858
  * @inheritdoc
@@ -932,10 +959,6 @@
932
959
  SacDefaultConfigurationService.decorators = [
933
960
  { type: i0.Injectable, args: [{ providedIn: 'root' },] }
934
961
  ];
935
- /**
936
- * injection token for component configuration service
937
- */
938
- var SACCONFIGURATION_SERVICE = new i0.InjectionToken('SacConfigurationService');
939
962
 
940
963
  /**
941
964
  * Klasse für API Request zum löschen eines Files
@@ -1035,10 +1058,13 @@
1035
1058
  return BrowserNodeRequest;
1036
1059
  }());
1037
1060
 
1061
+ // #region Variables
1038
1062
  /**
1039
1063
  * Injection Token für Language Service
1040
1064
  */
1041
1065
  var SACFILEBROWSER_SERVICE = new i0.InjectionToken('FileBrowserService');
1066
+ // #endregion Variables
1067
+ // #region Exported Classes
1042
1068
  /**
1043
1069
  * Abstrakte Implementierung des File Service für die Browser Component
1044
1070
  */
@@ -1058,6 +1084,7 @@
1058
1084
  */
1059
1085
  var SacDefaultFileBrowserService = /** @class */ (function (_super) {
1060
1086
  __extends(SacDefaultFileBrowserService, _super);
1087
+ // #region Constructors
1061
1088
  /**
1062
1089
  * Konstruktor
1063
1090
  * @param httpclient HTTP Client Service
@@ -1067,18 +1094,20 @@
1067
1094
  _this.httpclient = httpclient;
1068
1095
  return _this;
1069
1096
  }
1097
+ // #endregion Constructors
1098
+ // #region Public Methods
1070
1099
  /**
1071
- * Gibt einen Node zurück
1100
+ * Löscht eine Datei
1072
1101
  * @param apiurl URL zu API Service
1073
- * @param path Pfad des Node welcher angefordert wird
1074
- * @param allowedextensions Erlaubte Extensions die angezeigt werden dürfen
1102
+ * @param path Pfad des Files welches gelöscht werden soll
1103
+ * @param allowedextensions Erlaubte Extensions für Files
1075
1104
  */
1076
- SacDefaultFileBrowserService.prototype.GetNode = function (apiurl, path, allowedextensions) {
1077
- var url = apiurl + "/getnodes";
1105
+ SacDefaultFileBrowserService.prototype.DeleteFile = function (apiurl, path, allowedextensions) {
1106
+ var url = apiurl + "/deletefile";
1078
1107
  if (!path) {
1079
1108
  path = '';
1080
1109
  }
1081
- var request = new BrowserNodeRequest({
1110
+ var request = new BrowserFileDeleteRequest({
1082
1111
  Path: path,
1083
1112
  AllowedTypes: allowedextensions,
1084
1113
  });
@@ -1087,113 +1116,115 @@
1087
1116
  });
1088
1117
  };
1089
1118
  /**
1090
- * Speichert einen Node
1119
+ * Löscht einen Node
1091
1120
  * @param apiurl URL zu API Service
1092
- * @param path Pfad in welchem der Node gespeichert werden soll
1093
- * @param newFoldername Name des neuen Nodes
1121
+ * @param path Pfad des Nodes welcher gelöscht werden soll
1094
1122
  */
1095
- SacDefaultFileBrowserService.prototype.SaveNode = function (apiurl, path, newFoldername) {
1096
- var url = apiurl + "/newnode";
1123
+ SacDefaultFileBrowserService.prototype.DeleteNode = function (apiurl, path) {
1124
+ var url = apiurl + "/deletenode";
1097
1125
  if (!path) {
1098
1126
  path = '';
1099
1127
  }
1100
- var request = new BrowserNodeNewRequest({
1128
+ var request = new BrowserNodeDeleteRequest({
1101
1129
  Path: path,
1102
- NewFoldername: newFoldername,
1103
1130
  });
1104
1131
  return this.httpclient.post(url, request, {
1105
1132
  withCredentials: true,
1106
1133
  });
1107
1134
  };
1108
1135
  /**
1109
- * Rename eines Nodes
1136
+ * Methode welche die Dateien eines Nodes ausliest
1110
1137
  * @param apiurl URL zu API Service
1111
- * @param path Pfad des Nodes welcher umbenannt werden soll
1112
- * @param newFoldername Neuer Name des Nodes
1138
+ * @param path Pfad des Nodes in welchem die Files gelesen werden sollen
1139
+ * @param allowedextensions Erlaubte File Extensions
1113
1140
  */
1114
- SacDefaultFileBrowserService.prototype.RenameNode = function (apiurl, path, newFoldername) {
1115
- var url = apiurl + "/renamenode";
1141
+ SacDefaultFileBrowserService.prototype.GetFiles = function (apiurl, path, allowedextensions) {
1142
+ var url = apiurl + "/getfiles";
1116
1143
  if (!path) {
1117
1144
  path = '';
1118
1145
  }
1119
- var request = new BrowserNodeRenameRequest({
1146
+ var request = new BrowserNodeRequest({
1120
1147
  Path: path,
1121
- NewFoldername: newFoldername,
1148
+ AllowedTypes: allowedextensions,
1122
1149
  });
1123
- return this.httpclient.put(url, request, {
1150
+ return this.httpclient.post(url, request, {
1124
1151
  withCredentials: true,
1125
1152
  });
1126
1153
  };
1127
1154
  /**
1128
- * Löscht einen Node
1155
+ * Gibt einen Node zurück
1129
1156
  * @param apiurl URL zu API Service
1130
- * @param path Pfad des Nodes welcher gelöscht werden soll
1157
+ * @param path Pfad des Node welcher angefordert wird
1158
+ * @param allowedextensions Erlaubte Extensions die angezeigt werden dürfen
1131
1159
  */
1132
- SacDefaultFileBrowserService.prototype.DeleteNode = function (apiurl, path) {
1133
- var url = apiurl + "/deletenode";
1160
+ SacDefaultFileBrowserService.prototype.GetNode = function (apiurl, path, allowedextensions) {
1161
+ var url = apiurl + "/getnodes";
1134
1162
  if (!path) {
1135
1163
  path = '';
1136
1164
  }
1137
- var request = new BrowserNodeDeleteRequest({
1165
+ var request = new BrowserNodeRequest({
1138
1166
  Path: path,
1167
+ AllowedTypes: allowedextensions,
1139
1168
  });
1140
1169
  return this.httpclient.post(url, request, {
1141
1170
  withCredentials: true,
1142
1171
  });
1143
1172
  };
1144
1173
  /**
1145
- * Methode welche die Dateien eines Nodes ausliest
1174
+ * Methode welche eine Datei umbenannt
1146
1175
  * @param apiurl URL zu API Service
1147
- * @param path Pfad des Nodes in welchem die Files gelesen werden sollen
1148
- * @param allowedextensions Erlaubte File Extensions
1176
+ * @param path Pfad zum File welches umbenannt werden soll
1177
+ * @param newFilename Neuer Dateiname
1178
+ * @param allowedextensions Erlaubte Extension für Files
1149
1179
  */
1150
- SacDefaultFileBrowserService.prototype.GetFiles = function (apiurl, path, allowedextensions) {
1151
- var url = apiurl + "/getfiles";
1180
+ SacDefaultFileBrowserService.prototype.RenameFile = function (apiurl, path, newFilename, allowedextensions) {
1181
+ var url = apiurl + "/renamefile";
1152
1182
  if (!path) {
1153
1183
  path = '';
1154
1184
  }
1155
- var request = new BrowserNodeRequest({
1185
+ var request = new BrowserFileRenameRequest({
1156
1186
  Path: path,
1187
+ NewFilename: newFilename,
1157
1188
  AllowedTypes: allowedextensions,
1158
1189
  });
1159
- return this.httpclient.post(url, request, {
1190
+ return this.httpclient.put(url, request, {
1160
1191
  withCredentials: true,
1161
1192
  });
1162
1193
  };
1163
1194
  /**
1164
- * Speichert eine Hochgeladene Datei in der Struktur
1195
+ * Rename eines Nodes
1165
1196
  * @param apiurl URL zu API Service
1166
- * @param path Pfad in welchem das neue File gespeichert werden soll
1167
- * @param id ID des Uploads
1168
- * @param allowedextensions Erlaubte Extensions für den Upload
1197
+ * @param path Pfad des Nodes welcher umbenannt werden soll
1198
+ * @param newFoldername Neuer Name des Nodes
1169
1199
  */
1170
- SacDefaultFileBrowserService.prototype.SaveFile = function (apiurl, path, id, allowedextensions) {
1171
- var url = apiurl + "/uploadfile";
1200
+ SacDefaultFileBrowserService.prototype.RenameNode = function (apiurl, path, newFoldername) {
1201
+ var url = apiurl + "/renamenode";
1172
1202
  if (!path) {
1173
1203
  path = '';
1174
1204
  }
1175
- var request = new BrowserFileSaveRequest({
1205
+ var request = new BrowserNodeRenameRequest({
1176
1206
  Path: path,
1177
- UploadId: id,
1178
- AllowedTypes: allowedextensions,
1207
+ NewFoldername: newFoldername,
1179
1208
  });
1180
- return this.httpclient.post(url, request, {
1209
+ return this.httpclient.put(url, request, {
1181
1210
  withCredentials: true,
1182
1211
  });
1183
1212
  };
1184
1213
  /**
1185
- * Löscht eine Datei
1214
+ * Speichert eine Hochgeladene Datei in der Struktur
1186
1215
  * @param apiurl URL zu API Service
1187
- * @param path Pfad des Files welches gelöscht werden soll
1188
- * @param allowedextensions Erlaubte Extensions für Files
1216
+ * @param path Pfad in welchem das neue File gespeichert werden soll
1217
+ * @param id ID des Uploads
1218
+ * @param allowedextensions Erlaubte Extensions für den Upload
1189
1219
  */
1190
- SacDefaultFileBrowserService.prototype.DeleteFile = function (apiurl, path, allowedextensions) {
1191
- var url = apiurl + "/deletefile";
1220
+ SacDefaultFileBrowserService.prototype.SaveFile = function (apiurl, path, id, allowedextensions) {
1221
+ var url = apiurl + "/uploadfile";
1192
1222
  if (!path) {
1193
1223
  path = '';
1194
1224
  }
1195
- var request = new BrowserFileDeleteRequest({
1225
+ var request = new BrowserFileSaveRequest({
1196
1226
  Path: path,
1227
+ UploadId: id,
1197
1228
  AllowedTypes: allowedextensions,
1198
1229
  });
1199
1230
  return this.httpclient.post(url, request, {
@@ -1201,23 +1232,21 @@
1201
1232
  });
1202
1233
  };
1203
1234
  /**
1204
- * Methode welche eine Datei umbenannt
1235
+ * Speichert einen Node
1205
1236
  * @param apiurl URL zu API Service
1206
- * @param path Pfad zum File welches umbenannt werden soll
1207
- * @param newFilename Neuer Dateiname
1208
- * @param allowedextensions Erlaubte Extension für Files
1237
+ * @param path Pfad in welchem der Node gespeichert werden soll
1238
+ * @param newFoldername Name des neuen Nodes
1209
1239
  */
1210
- SacDefaultFileBrowserService.prototype.RenameFile = function (apiurl, path, newFilename, allowedextensions) {
1211
- var url = apiurl + "/renamefile";
1240
+ SacDefaultFileBrowserService.prototype.SaveNode = function (apiurl, path, newFoldername) {
1241
+ var url = apiurl + "/newnode";
1212
1242
  if (!path) {
1213
1243
  path = '';
1214
1244
  }
1215
- var request = new BrowserFileRenameRequest({
1245
+ var request = new BrowserNodeNewRequest({
1216
1246
  Path: path,
1217
- NewFilename: newFilename,
1218
- AllowedTypes: allowedextensions,
1247
+ NewFoldername: newFoldername,
1219
1248
  });
1220
- return this.httpclient.put(url, request, {
1249
+ return this.httpclient.post(url, request, {
1221
1250
  withCredentials: true,
1222
1251
  });
1223
1252
  };
@@ -1401,6 +1430,56 @@
1401
1430
  enumerable: false,
1402
1431
  configurable: true
1403
1432
  });
1433
+ Object.defineProperty(SacDefaultIconService.prototype, "GridButtonDefaultDeleteIcon", {
1434
+ /**
1435
+ * @inheritdoc
1436
+ */
1437
+ get: function () {
1438
+ return 'fa-trash';
1439
+ },
1440
+ enumerable: false,
1441
+ configurable: true
1442
+ });
1443
+ Object.defineProperty(SacDefaultIconService.prototype, "GridButtonDefaultDeleteIconSet", {
1444
+ /**
1445
+ * @inheritdoc
1446
+ */
1447
+ get: function () {
1448
+ return 'fa';
1449
+ },
1450
+ enumerable: false,
1451
+ configurable: true
1452
+ });
1453
+ Object.defineProperty(SacDefaultIconService.prototype, "GridButtonDefaultEditIcon", {
1454
+ /**
1455
+ * @inheritdoc
1456
+ */
1457
+ get: function () {
1458
+ return 'fa-pen';
1459
+ },
1460
+ enumerable: false,
1461
+ configurable: true
1462
+ });
1463
+ Object.defineProperty(SacDefaultIconService.prototype, "GridButtonDefaultEditIconSet", {
1464
+ /**
1465
+ * @inheritdoc
1466
+ */
1467
+ get: function () {
1468
+ return 'fa';
1469
+ },
1470
+ enumerable: false,
1471
+ configurable: true
1472
+ });
1473
+ Object.defineProperty(SacDefaultIconService.prototype, "GridButtonDisabledIconSuffix", {
1474
+ /**
1475
+ * @inheritdoc
1476
+ */
1477
+ get: function () {
1478
+ return ' disabled';
1479
+ },
1480
+ enumerable: false,
1481
+ configurable: true
1482
+ });
1404
1483
  Object.defineProperty(SacDefaultIconService.prototype, "GridComponentSortDown", {
1405
1484
  /**
1406
1485
  * @inheritdoc
@@ -1566,10 +1645,13 @@
1566
1645
  IconType[IconType["CssSprite"] = 2] = "CssSprite";
1567
1646
  })(exports.IconType || (exports.IconType = {}));
1568
1647
 
1648
+ // #region Variables
1569
1649
  /**
1570
1650
  * injection token for language service
1571
1651
  */
1572
1652
  var SACLANGUAGE_SERVICE = new i0.InjectionToken('SacLanguageService');
1653
+ // #endregion Variables
1654
+ // #region Exported Classes
1573
1655
  /**
1574
1656
  * abstract class for languages provides in components
1575
1657
  */
@@ -1590,6 +1672,7 @@
1590
1672
  function SacDefaultLanguageService() {
1591
1673
  return _super !== null && _super.apply(this, arguments) || this;
1592
1674
  }
1675
+ // #region Public Methods
1593
1676
  /**
1594
1677
  * @inheritdoc
1595
1678
  */
@@ -2591,10 +2674,10 @@
2591
2674
  return obj;
2592
2675
  }
2593
2676
 
2594
- // #region Functions
2595
2677
  /**
2596
2678
  * create a guid with crypto library if availabe and a fallback to Math.Random implementation
2597
2679
  */
2680
+ // #region Exported Functions
2598
2681
  function createGuid() {
2599
2682
  if (typeof crypto !== undefined && crypto['randomUUID'] !== undefined) {
2600
2683
  // return guid without hyphen
@@ -2602,12 +2685,12 @@
2602
2685
  }
2603
2686
  else {
2604
2687
  return 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
2605
- var r = (Math.random() * 16) | 0, v = c == 'x' ? r : (r & 0x3) | 0x8;
2688
+ var r = (Math.random() * 16) | 0, v = c === 'x' ? r : (r & 0x3) | 0x8;
2606
2689
  return v.toString(16);
2607
2690
  });
2608
2691
  }
2609
2692
  }
2610
- // #endregion Functions
2693
+ // #endregion Exported Functions
2611
2694
 
2612
2695
  /**
2613
2696
  * Abstract Klasse für SacBaseModelControl. Implements ControlValueAccessor, Validator, OnInit
@@ -2667,6 +2750,10 @@
2667
2750
  * Deaktiviert das Label im Template
2668
2751
  */
2669
2752
  this.disablelabel = false;
2753
+ /**
2754
+ * Identifier used for the E2E data attribute.
2755
+ */
2756
+ this.e2eidentifier = null;
2670
2757
  /**
2671
2758
  * Text to support the user during input.
2672
2759
  */
@@ -3158,6 +3245,7 @@
3158
3245
  componentHeight: [{ type: i0.Input }],
3159
3246
  disabled: [{ type: i0.Input }],
3160
3247
  disablelabel: [{ type: i0.Input }],
3248
+ e2eidentifier: [{ type: i0.Input }],
3161
3249
  helptext: [{ type: i0.Input }],
3162
3250
  helptextmode: [{ type: i0.Input }],
3163
3251
  inlineError: [{ type: i0.Input }],
@@ -4056,12 +4144,15 @@
4056
4144
  * Base Komponente für Dialog
4057
4145
  */
4058
4146
  var SacDialogCommon = /** @class */ (function () {
4147
+ // #endregion Properties
4148
+ // #region Constructors
4059
4149
  /**
4060
4150
  * Konstruktor
4061
4151
  * Inject des Formulars
4062
4152
  */
4063
4153
  function SacDialogCommon(cdRef) {
4064
4154
  this.cdRef = cdRef;
4155
+ // #region Properties
4065
4156
  this.hasSetBodyTag = false;
4066
4157
  /**
4067
4158
  * Boolean Property definiert ob das Dialog angezeigt wird
@@ -4084,20 +4175,26 @@
4084
4175
  * Steuert ob im Header des Dialogs ein Button angezeigt wird.
4085
4176
  */
4086
4177
  this.closebutton = true;
4178
+ /**
4179
+ * Identifier used for the E2E data attribute.
4180
+ */
4181
+ this.e2eidentifier = null;
4087
4182
  /**
4088
4183
  * Output Emitter. Wird aufgerufen, wenn das Wert des _show property geändert ist - damait das Dialog geöfnet/geschlossen wird.
4089
4184
  */
4090
4185
  this.isvisibleChange = new i0.EventEmitter();
4091
4186
  /**
4092
- * Input Property. Erhält den Namen des Dialog - benutzt für das ID. Default Value: ''
4187
+ * name of control
4093
4188
  */
4094
- this.name = '';
4189
+ this.name = createGuid();
4095
4190
  /**
4096
4191
  * Input Property. Erhält den Title des Dialog. Default Value: 'Dialog'.
4097
4192
  */
4098
4193
  this.title = 'Dialog';
4099
4194
  }
4100
4195
  Object.defineProperty(SacDialogCommon.prototype, "dialogElementSetter", {
4196
+ // #endregion Constructors
4197
+ // #region Public Getters And Setters
4101
4198
  /**
4102
4199
  * Implementation als Setter, da mit ngIf das Element bei Unsichtbarkeit UNDEFINED ist.
4103
4200
  */
@@ -4118,15 +4215,11 @@
4118
4215
  * Setter. Erhält das boolen Wert des _show property
4119
4216
  */
4120
4217
  set: function (v) {
4121
- if (v &&
4122
- !this.hasSetBodyTag &&
4123
- !document.body.classList.contains('modal-open')) {
4218
+ if (v && !this.hasSetBodyTag && !document.body.classList.contains('modal-open')) {
4124
4219
  document.body.classList.add('modal-open');
4125
4220
  this.hasSetBodyTag = true;
4126
4221
  }
4127
- if (!v &&
4128
- this.hasSetBodyTag &&
4129
- document.body.classList.contains('modal-open')) {
4222
+ if (!v && this.hasSetBodyTag && document.body.classList.contains('modal-open')) {
4130
4223
  document.body.classList.remove('modal-open');
4131
4224
  this.hasSetBodyTag = false;
4132
4225
  }
@@ -4149,6 +4242,8 @@
4149
4242
  configurable: true
4150
4243
  });
4151
4244
  Object.defineProperty(SacDialogCommon.prototype, "ChangeDetector", {
4245
+ // #endregion Public Getters And Setters
4246
+ // #region Protected Getters And Setters
4152
4247
  /**
4153
4248
  * Getter for ChangeDetector.
4154
4249
  */
@@ -4158,6 +4253,8 @@
4158
4253
  enumerable: false,
4159
4254
  configurable: true
4160
4255
  });
4256
+ // #endregion Protected Getters And Setters
4257
+ // #region Public Methods
4161
4258
  /**
4162
4259
  * Die Methode setz den Wert des _show property auf false
4163
4260
  */
@@ -4204,8 +4301,7 @@
4204
4301
  */
4205
4302
  SacDialogCommon.prototype.show = function () {
4206
4303
  this._show = true;
4207
- if (!this.hasSetBodyTag &&
4208
- !document.body.classList.contains('modal-open')) {
4304
+ if (!this.hasSetBodyTag && !document.body.classList.contains('modal-open')) {
4209
4305
  document.body.classList.add('modal-open');
4210
4306
  this.hasSetBodyTag = true;
4211
4307
  }
@@ -4223,6 +4319,7 @@
4223
4319
  allowesc: [{ type: i0.Input }],
4224
4320
  backdrop: [{ type: i0.Input }],
4225
4321
  closebutton: [{ type: i0.Input }],
4322
+ e2eidentifier: [{ type: i0.Input }],
4226
4323
  isvisibleChange: [{ type: i0.Output }],
4227
4324
  name: [{ type: i0.Input }],
4228
4325
  title: [{ type: i0.Input }],
@@ -4233,8 +4330,7 @@
4233
4330
  onKeydownHandler: [{ type: i0.HostListener, args: ['document:keydown', ['$event'],] }]
4234
4331
  };
4235
4332
 
4236
- // #endregion Type aliases
4237
- // #region Classes
4333
+ // #region Exported Classes
4238
4334
  /**
4239
4335
  * Base Komponente für SacFormular
4240
4336
  */
@@ -4367,7 +4463,7 @@
4367
4463
  SacFormCommon.propDecorators = {
4368
4464
  updateon: [{ type: i0.Input }]
4369
4465
  };
4370
- // #endregion Classes
4466
+ // #endregion Exported Types
4371
4467
 
4372
4468
  /**
4373
4469
  * Abstract Klasse für SacBaseListControl. Extendes SacBaseModelControl
@@ -4461,6 +4557,7 @@
4461
4557
  * @param id ID
4462
4558
  * @param value Wert der an das Element gebunden werden soll
4463
4559
  */
4560
+ // #region Exported Functions
4464
4561
  function _buildValueString(id, value) {
4465
4562
  // Wenn ID null ist Object zurückgeben
4466
4563
  if (id == null) {
@@ -4473,12 +4570,15 @@
4473
4570
  // String als ID
4474
4571
  return (id + ": " + value).slice(0, 50);
4475
4572
  }
4573
+ // #endregion Exported Functions
4476
4574
 
4477
4575
  /**
4478
4576
  * Base Dropdown Komponente
4479
4577
  */
4480
4578
  var SacDropdownCommon = /** @class */ (function (_super) {
4481
4579
  __extends(SacDropdownCommon, _super);
4580
+ // #endregion Properties
4581
+ // #region Constructors
4482
4582
  /**
4483
4583
  * Constructor
4484
4584
  * @param formlayout SacFormLayoutCommon to define scoped layout settings
@@ -4490,6 +4590,7 @@
4490
4590
  var _this = _super.call(this, formlayout, injector) || this;
4491
4591
  _this.renderer = renderer;
4492
4592
  _this.elementRef = elementRef;
4593
+ // #region Properties
4493
4594
  /**
4494
4595
  * compareWith-Funktion
4495
4596
  */
@@ -4521,6 +4622,8 @@
4521
4622
  return _this;
4522
4623
  }
4523
4624
  Object.defineProperty(SacDropdownCommon.prototype, "comparewith", {
4625
+ // #endregion Constructors
4626
+ // #region Public Getters And Setters
4524
4627
  /**
4525
4628
  * compareWith-Funktion
4526
4629
  */
@@ -4533,6 +4636,8 @@
4533
4636
  enumerable: false,
4534
4637
  configurable: true
4535
4638
  });
4639
+ // #endregion Public Getters And Setters
4640
+ // #region Public Methods
4536
4641
  /**
4537
4642
  * Registriert das OptionID-Counter als String
4538
4643
  */
@@ -4583,6 +4688,8 @@
4583
4688
  this.setSelectedValue(value);
4584
4689
  _super.prototype.writeValue.call(this, value);
4585
4690
  };
4691
+ // #endregion Public Methods
4692
+ // #region Private Methods
4586
4693
  /**
4587
4694
  * ID extrahieren
4588
4695
  * @param valueString String bei welchem die ID Extrahiert werden soll
@@ -4663,6 +4770,8 @@
4663
4770
  * SacDropdownOption-Klasse
4664
4771
  */
4665
4772
  var SacDropdownOptionCommon = /** @class */ (function () {
4773
+ // #endregion Properties
4774
+ // #region Constructors
4666
4775
  /**
4667
4776
  * Konstruktor
4668
4777
  * @param _element Referenz auf HTML Element
@@ -4673,6 +4782,7 @@
4673
4782
  this._element = _element;
4674
4783
  this._renderer = _renderer;
4675
4784
  this._dropdown = _dropdown;
4785
+ // #region Properties
4676
4786
  /**
4677
4787
  * ID-String
4678
4788
  */
@@ -4682,6 +4792,8 @@
4682
4792
  }
4683
4793
  }
4684
4794
  Object.defineProperty(SacDropdownOptionCommon.prototype, "ngValue", {
4795
+ // #endregion Constructors
4796
+ // #region Public Getters And Setters
4685
4797
  /**
4686
4798
  * Option ngValue
4687
4799
  */
@@ -4707,6 +4819,8 @@
4707
4819
  enumerable: false,
4708
4820
  configurable: true
4709
4821
  });
4822
+ // #endregion Public Getters And Setters
4823
+ // #region Public Methods
4710
4824
  /**
4711
4825
  * Den Wert vom Option-Element einstellen
4712
4826
  * @param value Wert
@@ -4763,7 +4877,7 @@
4763
4877
  this._listbox.registerOption(this);
4764
4878
  }
4765
4879
  }
4766
- Object.defineProperty(SacListboxOptionCommon.prototype, "ngvalue", {
4880
+ Object.defineProperty(SacListboxOptionCommon.prototype, "ngValue", {
4767
4881
  // #endregion Constructors
4768
4882
  // #region Public Getters And Setters
4769
4883
  /**
@@ -4820,7 +4934,7 @@
4820
4934
  { type: SacListboxCommon }
4821
4935
  ]; };
4822
4936
  SacListboxOptionCommon.propDecorators = {
4823
- ngvalue: [{ type: i0.Input }],
4937
+ ngValue: [{ type: i0.Input }],
4824
4938
  value: [{ type: i0.Input }]
4825
4939
  };
4826
4940
  /**
@@ -4939,42 +5053,40 @@
4939
5053
  */
4940
5054
  var SacTabCommon = /** @class */ (function () {
4941
5055
  function SacTabCommon() {
5056
+ // #region Properties
4942
5057
  /**
4943
- * control name
5058
+ * Identifier used for the E2E data attribute.
4944
5059
  */
4945
- this.name = '';
5060
+ this.e2eidentifier = null;
4946
5061
  /**
4947
- * dispose tabs when they are hidden
5062
+ * name of control
4948
5063
  */
4949
- this.unloadtabitemswhenhidden = null;
5064
+ this.name = createGuid();
4950
5065
  /**
4951
5066
  * Event when new tab is selected
4952
5067
  */
4953
5068
  this.tabselected = new i0.EventEmitter();
5069
+ /**
5070
+ * dispose tabs when they are hidden
5071
+ */
5072
+ this.unloadtabitemswhenhidden = null;
5073
+ // #endregion Private Methods
4954
5074
  }
4955
- // #region Control initialisieren
5075
+ // #endregion Properties
5076
+ // #region Public Methods
4956
5077
  /**
4957
- * AfterContentInit Event
5078
+ * get id of tab button
5079
+ * @param tabitemid id of tab
4958
5080
  */
4959
- SacTabCommon.prototype.ngAfterContentInit = function () {
4960
- this.initTabs();
5081
+ SacTabCommon.prototype.GetTabItemButtonId = function (tabitemid) {
5082
+ return this.name + '_' + tabitemid;
4961
5083
  };
4962
5084
  /**
4963
- * Initialisiert die Tabs
5085
+ * AfterContentInit Event
4964
5086
  */
4965
- SacTabCommon.prototype.initTabs = function () {
4966
- var _this = this;
4967
- var activeTab = this.tabItems().filter(function (tab) { return tab.active; });
4968
- this.tabItems().forEach(function (itm) {
4969
- if (_this.unloadtabitemswhenhidden !== null) {
4970
- itm.unloadwhenhidden = _this.unloadtabitemswhenhidden;
4971
- }
4972
- });
4973
- if (activeTab.length === 0) {
4974
- this.selectTab(this.tabItems()[0]);
4975
- }
5087
+ SacTabCommon.prototype.ngAfterContentInit = function () {
5088
+ this.initTabs();
4976
5089
  };
4977
- // #endregion
4978
5090
  /**
4979
5091
  * select new tab
4980
5092
  * @param tab tab that should be selected
@@ -4988,12 +5100,22 @@
4988
5100
  tab.active = true;
4989
5101
  this.tabselected.emit(tab.id);
4990
5102
  };
5103
+ // #endregion Public Methods
5104
+ // #region Private Methods
4991
5105
  /**
4992
- * get id of tab button
4993
- * @param tabitemid id of tab
5106
+ * Initialisiert die Tabs
4994
5107
  */
4995
- SacTabCommon.prototype.GetTabItemButtonId = function (tabitemid) {
4996
- return this.name + '_' + tabitemid;
5108
+ SacTabCommon.prototype.initTabs = function () {
5109
+ var _this = this;
5110
+ var activeTab = this.tabItems().filter(function (tab) { return tab.active; });
5111
+ this.tabItems().forEach(function (itm) {
5112
+ if (_this.unloadtabitemswhenhidden !== null) {
5113
+ itm.unloadwhenhidden = _this.unloadtabitemswhenhidden;
5114
+ }
5115
+ });
5116
+ if (activeTab.length === 0) {
5117
+ this.selectTab(this.tabItems()[0]);
5118
+ }
4997
5119
  };
4998
5120
  return SacTabCommon;
4999
5121
  }());
@@ -5001,10 +5123,11 @@
5001
5123
  { type: i0.Directive }
5002
5124
  ];
5003
5125
  SacTabCommon.propDecorators = {
5126
+ e2eidentifier: [{ type: i0.Input }],
5004
5127
  name: [{ type: i0.Input }],
5005
5128
  tablabeltemplate: [{ type: i0.Input }],
5006
- unloadtabitemswhenhidden: [{ type: i0.Input }],
5007
- tabselected: [{ type: i0.Output }]
5129
+ tabselected: [{ type: i0.Output }],
5130
+ unloadtabitemswhenhidden: [{ type: i0.Input }]
5008
5131
  };
5009
5132
 
5010
5133
  /**
@@ -5012,6 +5135,7 @@
5012
5135
  */
5013
5136
  var SacTabItemCommon = /** @class */ (function () {
5014
5137
  function SacTabItemCommon() {
5138
+ // #region Properties
5015
5139
  /**
5016
5140
  * Boolean Property prüft ob das Tab aktiv ist
5017
5141
  */
@@ -5024,6 +5148,7 @@
5024
5148
  * Das Input property ekzeptiert boolen Wert. Default ist true. Definiert, ob die Komponente hidden sein sollte.
5025
5149
  */
5026
5150
  this.unloadwhenhidden = true;
5151
+ // #endregion Properties
5027
5152
  }
5028
5153
  return SacTabItemCommon;
5029
5154
  }());
@@ -5035,8 +5160,8 @@
5035
5160
  disabled: [{ type: i0.Input }],
5036
5161
  id: [{ type: i0.Input }],
5037
5162
  label: [{ type: i0.Input }],
5038
- unloadwhenhidden: [{ type: i0.Input }],
5039
- templateRef: [{ type: i0.ContentChild, args: [i0.TemplateRef, { static: true },] }]
5163
+ templateRef: [{ type: i0.ContentChild, args: [i0.TemplateRef, { static: true },] }],
5164
+ unloadwhenhidden: [{ type: i0.Input }]
5040
5165
  };
5041
5166
 
5042
5167
  /**
@@ -5051,9 +5176,13 @@
5051
5176
  */
5052
5177
  function SacValidationSummaryCommon(parent, injector) {
5053
5178
  /**
5054
- * Name-Property
5179
+ * Identifier used for the E2E data attribute.
5055
5180
  */
5056
- this.name = '';
5181
+ this.e2eidentifier = null;
5182
+ /**
5183
+ * name of control
5184
+ */
5185
+ this.name = createGuid();
5057
5186
  this.parent = parent;
5058
5187
  this.validationKeyService = injector.get(SACVALIDATIONKEY_SERVICE, new SacDefaultValidationKeyService());
5059
5188
  this.lngResourceService = injector.get(SACLOCALISATION_SERVICE, new SacDefaultLocalisationService(this.validationKeyService));
@@ -5172,6 +5301,7 @@
5172
5301
  { type: i0.Injector }
5173
5302
  ]; };
5174
5303
  SacValidationSummaryCommon.propDecorators = {
5304
+ e2eidentifier: [{ type: i0.Input }],
5175
5305
  form: [{ type: i0.Input }],
5176
5306
  formGroupName: [{ type: i0.Input }],
5177
5307
  name: [{ type: i0.Input }]
@@ -5819,14 +5949,14 @@
5819
5949
  * Text welcher auf dem Button angezeigt wird
5820
5950
  */
5821
5951
  _this.buttontext = '';
5822
- /**
5823
- * Name des Such-Icons
5824
- */
5825
- _this.iconname = '';
5826
5952
  /**
5827
5953
  * Event wenn auf das Such-Icon geclickt wird
5828
5954
  */
5829
5955
  _this.clicked = new i0.EventEmitter();
5956
+ /**
5957
+ * Name des Such-Icons
5958
+ */
5959
+ _this.iconname = '';
5830
5960
  return _this;
5831
5961
  // #endregion Private Methods
5832
5962
  }
@@ -5870,14 +6000,29 @@
5870
6000
  SacInputSearchCommon.propDecorators = {
5871
6001
  buttonmode: [{ type: i0.Input }],
5872
6002
  buttontext: [{ type: i0.Input }],
5873
- iconname: [{ type: i0.Input }],
5874
- clicked: [{ type: i0.Output }]
6003
+ clicked: [{ type: i0.Output }],
6004
+ iconname: [{ type: i0.Input }]
5875
6005
  };
5876
6006
 
5877
- // #region Classes
5878
6007
  /**
5879
6008
  * GridResponse class
5880
6009
  */
6010
+ (function (SortOrder) {
6011
+ /**
6012
+ * No sorting
6013
+ */
6014
+ SortOrder[SortOrder["None"] = 0] = "None";
6015
+ /**
6016
+ * Ascending
6017
+ */
6018
+ SortOrder[SortOrder["Ascending"] = 1] = "Ascending";
6019
+ /**
6020
+ * Descending
6021
+ */
6022
+ SortOrder[SortOrder["Descending"] = 2] = "Descending";
6023
+ })(exports.SortOrder || (exports.SortOrder = {}));
6024
+ // #endregion Exported Enums
6025
+ // #region Exported Classes
5881
6026
  var GridResponse = /** @class */ (function () {
5882
6027
  function GridResponse() {
5883
6028
  }
@@ -5958,21 +6103,7 @@
5958
6103
  }
5959
6104
  return SortDescriptor;
5960
6105
  }());
5961
- (function (SortOrder) {
5962
- /**
5963
- * No sorting
5964
- */
5965
- SortOrder[SortOrder["None"] = 0] = "None";
5966
- /**
5967
- * Ascending
5968
- */
5969
- SortOrder[SortOrder["Ascending"] = 1] = "Ascending";
5970
- /**
5971
- * Descending
5972
- */
5973
- SortOrder[SortOrder["Descending"] = 2] = "Descending";
5974
- })(exports.SortOrder || (exports.SortOrder = {}));
5975
- // #endregion Enums
6106
+ // #endregion Exported Classes
5976
6107
 
5977
6108
  /**
5978
6109
  * Basic component for SacGrid
@@ -6000,6 +6131,18 @@
6000
6131
  * Contains Array of Pages.
6001
6132
  */
6002
6133
  this.paginators = [];
6134
+ /**
6135
+ * Number of columns in the grid
6136
+ */
6137
+ this.ColumnCount = 0;
6138
+ /**
6139
+ * Identifier used for the E2E data attribute.
6140
+ */
6141
+ this.e2eidentifier = null;
6142
+ /**
6143
+ * name of control
6144
+ */
6145
+ this.name = createGuid();
6003
6146
  /**
6004
6147
  * Deactivates the selection of the PageSize in the pager
6005
6148
  */
@@ -6012,14 +6155,6 @@
6012
6155
  * Event when the pager is clicked.
6013
6156
  */
6014
6157
  this.paging = new i0.EventEmitter();
6015
- /**
6016
- * Event when a header is clicked so that the grid is sorted.
6017
- */
6018
- this.sorting = new i0.EventEmitter();
6019
- /**
6020
- * Number of columns in the grid
6021
- */
6022
- this.ColumnCount = 0;
6023
6158
  /**
6024
6159
  * Column by which currently sorted.
6025
6160
  */
@@ -6028,6 +6163,10 @@
6028
6163
  * Current direction of sorting
6029
6164
  */
6030
6165
  this.sortDirection = exports.SortOrder.None;
6166
+ /**
6167
+ * Event when a header is clicked so that the grid is sorted.
6168
+ */
6169
+ this.sorting = new i0.EventEmitter();
6031
6170
  this.validationKeyService = injector.get(SACVALIDATIONKEY_SERVICE, new SacDefaultValidationKeyService());
6032
6171
  // Set Default Values from Injector
6033
6172
  this.pagesizetext = this.validationKeyService.PagingEntries;
@@ -6105,6 +6244,7 @@
6105
6244
  ]; };
6106
6245
  SacGridCommon.propDecorators = {
6107
6246
  body: [{ type: i0.Input }],
6247
+ e2eidentifier: [{ type: i0.Input }],
6108
6248
  emptytext: [{ type: i0.Input }],
6109
6249
  headers: [{ type: i0.Input }],
6110
6250
  maxvisiblepagenumbers: [{ type: i0.Input }],
@@ -6113,10 +6253,10 @@
6113
6253
  pagesizedisabled: [{ type: i0.Input }],
6114
6254
  pagesizes: [{ type: i0.Input }],
6115
6255
  pagesizetext: [{ type: i0.Input }],
6116
- pagingtext: [{ type: i0.Input }],
6117
- value: [{ type: i0.Input }],
6118
6256
  paging: [{ type: i0.Output }],
6257
+ pagingtext: [{ type: i0.Input }],
6119
6258
  sorting: [{ type: i0.Output }],
6259
+ value: [{ type: i0.Input }],
6120
6260
  sortdata: [{ type: i0.Input }]
6121
6261
  };
6122
6262
 
@@ -6124,28 +6264,35 @@
6124
6264
  * Base Grid Action Button
6125
6265
  */
6126
6266
  var SacGridButtonCommon = /** @class */ (function () {
6127
- function SacGridButtonCommon() {
6128
- // #region Properties
6267
+ // #endregion Properties
6268
+ // #region Constructors
6269
+ /**
6270
+ * Constructor
6271
+ *
6272
+ * @param injector Injector to resovle services
6273
+ */
6274
+ function SacGridButtonCommon(injector) {
6275
+ this.injector = injector;
6129
6276
  /**
6130
6277
  * Button is deactivated
6131
6278
  */
6132
6279
  this._isdisabledvalue = false;
6133
- /**
6134
- * Input property for styling the button. Defines the CSS classes of the button
6135
- */
6136
- this.iconstyle = '';
6137
6280
  /**
6138
6281
  * Event when the button is clicked
6139
6282
  */
6140
6283
  this.clicked = new i0.EventEmitter();
6141
- // #endregion Public Methods
6284
+ /**
6285
+ * Input property for styling the button. Defines the CSS classes of the button
6286
+ */
6287
+ this.iconstyle = '';
6288
+ this.iconService = injector.get(SACICON_SERVICE, new SacDefaultIconService());
6142
6289
  }
6143
6290
  Object.defineProperty(SacGridButtonCommon.prototype, "isdisabled", {
6291
+ // #endregion Constructors
6292
+ // #region Public Getters And Setters
6144
6293
  get: function () {
6145
6294
  return this._isdisabledvalue;
6146
6295
  },
6147
- // #endregion Properties
6148
- // #region Public Getters And Setters
6149
6296
  /**
6150
6297
  * Deactivating buttons
6151
6298
  * @param v Deactivates the button. Can be a Boolean or the strings `true` or `false`.
@@ -6172,15 +6319,48 @@
6172
6319
  this.clicked.emit(this.iconstyle);
6173
6320
  }
6174
6321
  };
6322
+ /**
6323
+ * Defines the CSS class for the icon on the button
6324
+ */
6325
+ SacGridButtonCommon.prototype.getIconClass = function () {
6326
+ var cssclass;
6327
+ // Handle Default Icons
6328
+ if (this.iconstyle === '') {
6329
+ switch (this.icon) {
6330
+ case 'edit':
6331
+ cssclass = this.iconService.GridButtonDefaultEditIconSet + " " + this.iconService.GridButtonDefaultEditIcon;
6332
+ break;
6333
+ case 'delete':
6334
+ cssclass = this.iconService.GridButtonDefaultDeleteIconSet + " " + this.iconService.GridButtonDefaultDeleteIcon;
6335
+ break;
6336
+ default:
6337
+ cssclass = this.icon;
6338
+ break;
6339
+ }
6340
+ }
6341
+ else {
6342
+ cssclass = this.iconstyle + " " + this.icon;
6343
+ }
6344
+ // trim style
6345
+ cssclass = cssclass.trim();
6346
+ if (this._isdisabledvalue) {
6347
+ cssclass += this.iconService.GridButtonDisabledIconSuffix;
6348
+ }
6349
+ return cssclass;
6350
+ };
6175
6351
  return SacGridButtonCommon;
6176
6352
  }());
6177
6353
  SacGridButtonCommon.decorators = [
6178
6354
  { type: i0.Directive }
6179
6355
  ];
6356
+ SacGridButtonCommon.ctorParameters = function () { return [
6357
+ { type: i0.Injector }
6358
+ ]; };
6180
6359
  SacGridButtonCommon.propDecorators = {
6360
+ clicked: [{ type: i0.Output }],
6181
6361
  icon: [{ type: i0.Input }],
6182
6362
  iconstyle: [{ type: i0.Input }],
6183
- clicked: [{ type: i0.Output }],
6363
+ name: [{ type: i0.Input }],
6184
6364
  isdisabled: [{ type: i0.Input }]
6185
6365
  };
6186
6366
 
@@ -6200,6 +6380,10 @@
6200
6380
  this.grid = grid;
6201
6381
  this.injector = injector;
6202
6382
  this.el = el;
6383
+ /**
6384
+ * Align the column
6385
+ */
6386
+ this.alignment = 'left';
6203
6387
  /**
6204
6388
  * Click on Column Element
6205
6389
  */
@@ -6279,9 +6463,7 @@
6279
6463
  * Triggers the events so that the table is sorted according to this column.
6280
6464
  */
6281
6465
  SacGridColumnBaseCommon.prototype.SortByColumn = function () {
6282
- if (this.sortkey !== undefined &&
6283
- this.sortkey !== null &&
6284
- this.sortkey !== '') {
6466
+ if (this.sortkey !== undefined && this.sortkey !== null && this.sortkey !== '') {
6285
6467
  return this.grid.SortBy(this.sortkey);
6286
6468
  }
6287
6469
  };
@@ -6289,6 +6471,12 @@
6289
6471
  * Called when the component is destroyed.
6290
6472
  */
6291
6473
  SacGridColumnBaseCommon.prototype.ngOnDestroy = function () {
6474
+ if (this.headerElement) {
6475
+ this.headerElement.nativeElement.remove();
6476
+ }
6477
+ if (this.bodyElement) {
6478
+ this.bodyElement.nativeElement.remove();
6479
+ }
6292
6480
  if (this.IsHeader()) {
6293
6481
  this.grid.UnregisterColumn();
6294
6482
  }
@@ -6318,13 +6506,16 @@
6318
6506
  { type: i0.ElementRef }
6319
6507
  ]; };
6320
6508
  SacGridColumnBaseCommon.propDecorators = {
6509
+ alignment: [{ type: i0.Input }],
6510
+ bodyElement: [{ type: i0.ViewChild, args: ['bodyElement', { static: false },] }],
6321
6511
  header: [{ type: i0.Input }],
6512
+ headerElement: [{ type: i0.ViewChild, args: ['headerElement', { static: false },] }],
6322
6513
  name: [{ type: i0.Input }],
6514
+ rowclicked: [{ type: i0.Output }],
6323
6515
  sortkey: [{ type: i0.Input }],
6324
6516
  type: [{ type: i0.Input }],
6325
6517
  value: [{ type: i0.Input }],
6326
- width: [{ type: i0.Input }],
6327
- rowclicked: [{ type: i0.Output }]
6518
+ width: [{ type: i0.Input }]
6328
6519
  };
6329
6520
 
6330
6521
  /**
@@ -6347,14 +6538,14 @@
6347
6538
  return _this;
6348
6539
  }
6349
6540
  Object.defineProperty(SacGridColumnCommon.prototype, "ellipsis", {
6541
+ // #endregion Constructors
6542
+ // #region Public Getters And Setters
6350
6543
  /**
6351
6544
  * Getter for the ellipsis property. Always returns a boolean type.
6352
6545
  */
6353
6546
  get: function () {
6354
6547
  return this._ellipsis;
6355
6548
  },
6356
- // #endregion Constructors
6357
- // #region Public Getters And Setters
6358
6549
  /**
6359
6550
  * Sets the ellipsis property. Can be a Boolean or the strings `true` or `false`.
6360
6551
  */
@@ -6443,6 +6634,30 @@
6443
6634
  * Total number of rows
6444
6635
  */
6445
6636
  this.totalRowCount = 0;
6637
+ /**
6638
+ * Active page index
6639
+ */
6640
+ this.activePageIndex = 0;
6641
+ /**
6642
+ * Identifier used for the E2E data attribute.
6643
+ */
6644
+ this.e2eidentifier = null;
6645
+ /**
6646
+ * First page index
6647
+ */
6648
+ this.firstPageIndex = 0;
6649
+ /**
6650
+ * Last page index
6651
+ */
6652
+ this.lastPageIndex = 0;
6653
+ /**
6654
+ * name of control
6655
+ */
6656
+ this.name = createGuid();
6657
+ /**
6658
+ * Number of elements per page
6659
+ */
6660
+ this.pageSize = 20;
6446
6661
  /**
6447
6662
  * Deactivate page size selection
6448
6663
  */
@@ -6460,59 +6675,28 @@
6460
6675
  */
6461
6676
  this.pagesizetext = '';
6462
6677
  /**
6463
- * Text in pager for 'Page x of y'. The following interpolation texts are available:
6464
- * {{CURRENTPAGE}}: Current page
6465
- * {{TOTALPAGES}}: Number of pages
6678
+ * Item for each paging element (page number)
6466
6679
  */
6467
- this.pagingtext = '';
6680
+ this.paginators = [];
6468
6681
  /**
6469
6682
  * Event when the page is changed in the grid. The new PageIndex is given as a parameter.
6470
6683
  */
6471
6684
  this.paging = new i0.EventEmitter();
6472
6685
  /**
6473
- * Active page index
6474
- */
6475
- this.activePageIndex = 0;
6476
- /**
6477
- * First page index
6478
- */
6479
- this.firstPageIndex = 0;
6480
- /**
6481
- * Last page index
6482
- */
6483
- this.lastPageIndex = 0;
6484
- /**
6485
- * Number of elements per page
6486
- */
6487
- this.pageSize = 20;
6488
- /**
6489
- * Item for each paging element (page number)
6686
+ * Text in pager for 'Page x of y'. The following interpolation texts are available:
6687
+ * {{CURRENTPAGE}}: Current page
6688
+ * {{TOTALPAGES}}: Number of pages
6490
6689
  */
6491
- this.paginators = [];
6690
+ this.pagingtext = '';
6492
6691
  this.validationKeyService = injector.get(SACVALIDATIONKEY_SERVICE, new SacDefaultValidationKeyService());
6493
6692
  // Set Default Values from Injector
6494
6693
  this.pagesizetext = this.validationKeyService.PagingEntries;
6495
6694
  this.pagingtext = this.validationKeyService.PagingPageOf;
6496
6695
  this.lngResourceService = injector.get(SACLOCALISATION_SERVICE, new SacDefaultLocalisationService(this.validationKeyService));
6497
6696
  }
6498
- Object.defineProperty(SacPagingCommon.prototype, "pagerdata", {
6697
+ Object.defineProperty(SacPagingCommon.prototype, "PageSizeText", {
6499
6698
  // #endregion Constructors
6500
6699
  // #region Public Getters And Setters
6501
- /**
6502
- * Property for Pager Data
6503
- */
6504
- set: function (p) {
6505
- if (p != null) {
6506
- this.totalRowCount = p.TotalRowCount;
6507
- this.activePageIndex = p.CurrentPageIndex;
6508
- this.pageSize = p.PageSize;
6509
- }
6510
- this.createPager();
6511
- },
6512
- enumerable: false,
6513
- configurable: true
6514
- });
6515
- Object.defineProperty(SacPagingCommon.prototype, "PageSizeText", {
6516
6700
  /**
6517
6701
  * Property with text for total entries in page
6518
6702
  */
@@ -6545,6 +6729,21 @@
6545
6729
  enumerable: false,
6546
6730
  configurable: true
6547
6731
  });
6732
+ Object.defineProperty(SacPagingCommon.prototype, "pagerdata", {
6733
+ /**
6734
+ * Property for Pager Data
6735
+ */
6736
+ set: function (p) {
6737
+ if (p != null) {
6738
+ this.totalRowCount = p.TotalRowCount;
6739
+ this.activePageIndex = p.CurrentPageIndex;
6740
+ this.pageSize = p.PageSize;
6741
+ }
6742
+ this.createPager();
6743
+ },
6744
+ enumerable: false,
6745
+ configurable: true
6746
+ });
6548
6747
  // #endregion Public Getters And Setters
6549
6748
  // #region Public Methods
6550
6749
  /**
@@ -6683,12 +6882,13 @@
6683
6882
  { type: i0.Injector }
6684
6883
  ]; };
6685
6884
  SacPagingCommon.propDecorators = {
6885
+ e2eidentifier: [{ type: i0.Input }],
6686
6886
  name: [{ type: i0.Input }],
6687
6887
  pagesizedisabled: [{ type: i0.Input }],
6688
6888
  pagesizes: [{ type: i0.Input }],
6689
6889
  pagesizetext: [{ type: i0.Input }],
6690
- pagingtext: [{ type: i0.Input }],
6691
6890
  paging: [{ type: i0.Output }],
6891
+ pagingtext: [{ type: i0.Input }],
6692
6892
  pagerdata: [{ type: i0.Input }]
6693
6893
  };
6694
6894
 
@@ -7212,6 +7412,9 @@
7212
7412
  else {
7213
7413
  this.value = null;
7214
7414
  }
7415
+ // update imaks reference
7416
+ this.cdRef.detectChanges();
7417
+ this.iMask.maskRef.updateControl();
7215
7418
  },
7216
7419
  enumerable: false,
7217
7420
  configurable: true
@@ -7385,6 +7588,7 @@
7385
7588
  { type: i0.ChangeDetectorRef }
7386
7589
  ]; };
7387
7590
  SacBaseDateTimeControl.propDecorators = {
7591
+ iMask: [{ type: i0.ViewChild, args: [angularImask.IMaskDirective, { static: false },] }],
7388
7592
  isrequired: [{ type: i0.Input }],
7389
7593
  pickerarrow: [{ type: i0.ViewChild, args: ['pickerarrow', { static: false },] }],
7390
7594
  pickerbutton: [{ type: i0.ViewChild, args: ['pickerbutton', { static: true },] }],
@@ -7671,6 +7875,14 @@
7671
7875
  }
7672
7876
  return DateSelectorItem;
7673
7877
  }());
7878
+ // #endregion Classes
7879
+ // #region Variables
7880
+ /**
7881
+ * Moment
7882
+ */
7883
+ var moment$2 = moment___default['default'];
7884
+ // #endregion Variables
7885
+ // #region Exported Classes
7674
7886
  /**
7675
7887
  *Basis Komponente für SacDateSelector
7676
7888
  */
@@ -7694,10 +7906,18 @@
7694
7906
  * Datum Selector
7695
7907
  */
7696
7908
  this.dateselection = false;
7909
+ /**
7910
+ * Identifier used for the E2E data attribute.
7911
+ */
7912
+ this.e2eidentifier = null;
7697
7913
  /**
7698
7914
  * Monat
7699
7915
  */
7700
7916
  this.month = 4;
7917
+ /**
7918
+ * name of control
7919
+ */
7920
+ this.name = createGuid();
7701
7921
  /**
7702
7922
  * Output Event beim Datum Selektieren
7703
7923
  */
@@ -7778,6 +7998,10 @@
7778
7998
  tempValue.year(1900);
7779
7999
  this._selectedValue = tempValue.utc();
7780
8000
  }
8001
+ if (this._selectedValue === null && this._initialValue !== null) {
8002
+ this.selectdate.emit({ date: this._initialValue.local() });
8003
+ return;
8004
+ }
7781
8005
  this.selectdate.emit({
7782
8006
  date: this._selectedValue,
7783
8007
  });
@@ -7879,12 +8103,8 @@
7879
8103
  */
7880
8104
  SacDateSelectorCommon.prototype.selectDate = function (v) {
7881
8105
  if (v.isenabled) {
7882
- this.dates.forEach(function (date) { return date
7883
- .filter(function (filter) { return filter.isnew; })
7884
- .forEach(function (itm) { return (itm.isnew = false); }); });
7885
- this.dates.forEach(function (date) { return date
7886
- .filter(function (filter) { return filter.isselected; })
7887
- .forEach(function (itm) { return (itm.isselected = false); }); });
8106
+ this.dates.forEach(function (date) { return date.filter(function (filter) { return filter.isnew; }).forEach(function (itm) { return (itm.isnew = false); }); });
8107
+ this.dates.forEach(function (date) { return date.filter(function (filter) { return filter.isselected; }).forEach(function (itm) { return (itm.isselected = false); }); });
7888
8108
  v.isnew = true;
7889
8109
  v.isselected = true;
7890
8110
  var dateValue = moment$2(v.date);
@@ -7912,6 +8132,9 @@
7912
8132
  * Setter für Stunden Uhrzeit
7913
8133
  */
7914
8134
  SacDateSelectorCommon.prototype.setHours = function (v) {
8135
+ if (v >= 24) {
8136
+ return;
8137
+ }
7915
8138
  /**
7916
8139
  * Select Value setzen falls leer
7917
8140
  */
@@ -7927,6 +8150,9 @@
7927
8150
  * Setter für Minuten Uhrzeit
7928
8151
  */
7929
8152
  SacDateSelectorCommon.prototype.setMinutes = function (v) {
8153
+ if (v >= 60) {
8154
+ return;
8155
+ }
7930
8156
  /**
7931
8157
  * Select Value setzen falls leer
7932
8158
  */
@@ -8004,9 +8230,7 @@
8004
8230
  for (var dayinmonth = 1; dayinmonth <= currentMonth.daysInMonth(); dayinmonth++) {
8005
8231
  var isSelectedDate = false;
8006
8232
  var isNewDate = false;
8007
- var isCurrentDate = moment$2().month() === this.month &&
8008
- moment$2().year() === this.year &&
8009
- moment$2().date() === dayinmonth;
8233
+ var isCurrentDate = moment$2().month() === this.month && moment$2().year() === this.year && moment$2().date() === dayinmonth;
8010
8234
  // Initial Wert setzen, falls vorhanden
8011
8235
  if (this._initialValue !== null) {
8012
8236
  isSelectedDate =
@@ -8058,6 +8282,11 @@
8058
8282
  if (this._selectedValue === null) {
8059
8283
  if (this._initialValue === null) {
8060
8284
  this._selectedValue = moment$2();
8285
+ /**
8286
+ * clean seconds and miliseconds for initial values
8287
+ */
8288
+ this._selectedValue.second(0);
8289
+ this._selectedValue.millisecond(0);
8061
8290
  }
8062
8291
  else {
8063
8292
  this._selectedValue = this._initialValue;
@@ -8075,19 +8304,15 @@
8075
8304
  SacDateSelectorCommon.propDecorators = {
8076
8305
  autoapplyselection: [{ type: i0.Input }],
8077
8306
  dateselection: [{ type: i0.Input }],
8307
+ e2eidentifier: [{ type: i0.Input }],
8078
8308
  month: [{ type: i0.Input }],
8309
+ name: [{ type: i0.Input }],
8079
8310
  selectdate: [{ type: i0.Output }],
8080
8311
  timeselection: [{ type: i0.Input }],
8081
8312
  year: [{ type: i0.Input }],
8082
8313
  initialvalue: [{ type: i0.Input }]
8083
8314
  };
8084
- // #endregion Classes
8085
- // #region Variables
8086
- /**
8087
- * Moment
8088
- */
8089
- var moment$2 = moment___default['default'];
8090
- // #endregion Variables
8315
+ // #endregion Exported Classes
8091
8316
 
8092
8317
  /**
8093
8318
  * Komponente für SacDateTimeCommon. Extends SacBaseDateTimeControl
@@ -8621,7 +8846,10 @@
8621
8846
  */
8622
8847
  _this.allowhtml = false;
8623
8848
  return _this;
8849
+ // #endregion Public Methods
8624
8850
  }
8851
+ // #endregion Properties
8852
+ // #region Public Methods
8625
8853
  /**
8626
8854
  * Validierung des Controls
8627
8855
  *
@@ -8646,18 +8874,15 @@
8646
8874
  */
8647
8875
  var SacWizardCommon = /** @class */ (function () {
8648
8876
  function SacWizardCommon() {
8649
- /**
8650
- * Name des Controls
8651
- */
8652
- this.name = '';
8877
+ // #region Properties
8653
8878
  /**
8654
8879
  * Boolean Property prüft ob Navigation im Wizard disabled ist; default Wert - false
8655
8880
  */
8656
8881
  this.disablenavigation = false;
8657
8882
  /**
8658
- * EventEmitter wenn der Schritt geändert wird
8883
+ * Name des Controls
8659
8884
  */
8660
- this.stepchanged = new i0.EventEmitter();
8885
+ this.name = '';
8661
8886
  /**
8662
8887
  * Leere Implementation von 'propagateChange'. Muss gemacht werden, damit kein Fehler entsteht
8663
8888
  */
@@ -8666,8 +8891,15 @@
8666
8891
  * Leere Implementation von 'propagateTouch'. Muss gemacht werden, damit kein Fehler entsteht
8667
8892
  */
8668
8893
  this.propagateTouch = function () { };
8894
+ /**
8895
+ * EventEmitter wenn der Schritt geändert wird
8896
+ */
8897
+ this.stepchanged = new i0.EventEmitter();
8898
+ // #endregion Private Methods
8669
8899
  }
8670
8900
  Object.defineProperty(SacWizardCommon.prototype, "currentstep", {
8901
+ // #endregion Properties
8902
+ // #region Public Getters And Setters
8671
8903
  get: function () {
8672
8904
  return this._currentstep;
8673
8905
  },
@@ -8681,41 +8913,8 @@
8681
8913
  enumerable: false,
8682
8914
  configurable: true
8683
8915
  });
8684
- SacWizardCommon.prototype.setStepInternal = function (step) {
8685
- this._currentstep = step;
8686
- this.propagateChange(this._currentstep);
8687
- };
8688
- // #region Control initialisieren
8689
- /**
8690
- * AfterContentInit Event
8691
- */
8692
- SacWizardCommon.prototype.ngAfterContentInit = function () {
8693
- this.initSteps();
8694
- };
8695
- /**
8696
- * Ursprünglicher Schritt wird selektiert
8697
- */
8698
- SacWizardCommon.prototype.initSteps = function () {
8699
- var activeStep = this.wizardItems().filter(function (step) { return step.active; });
8700
- if (activeStep.length === 0) {
8701
- var initStep = this.wizardItems().toArray()[0];
8702
- this.selectStep(initStep);
8703
- initStep.disabled = false;
8704
- this.setStepInternal(initStep.id);
8705
- }
8706
- };
8707
- // #endregion
8708
- /**
8709
- * Schritt selektieren
8710
- * @param step Step welcher selektiert werden soll
8711
- */
8712
- SacWizardCommon.prototype.selectStep = function (step) {
8713
- // Cancel if Navigation disabled
8714
- if (this.disablenavigation) {
8715
- return;
8716
- }
8717
- this.changeStep(step.id);
8718
- };
8916
+ // #endregion Public Getters And Setters
8917
+ // #region Public Methods
8719
8918
  /**
8720
8919
  * Auf nächsten/vorherigen Schritt gehen
8721
8920
  * @param step Step auf welchen gewechselt werden soll
@@ -8751,6 +8950,12 @@
8751
8950
  this.setStepInternal(step);
8752
8951
  this.stepchanged.emit(step);
8753
8952
  };
8953
+ /**
8954
+ * AfterContentInit Event
8955
+ */
8956
+ SacWizardCommon.prototype.ngAfterContentInit = function () {
8957
+ this.initSteps();
8958
+ };
8754
8959
  /**
8755
8960
  * Methode, damit andere Controls änderungen im Control mitbekommen können
8756
8961
  * Zur Änderungsinfo die Methode propagateChange aufrufen.
@@ -8764,6 +8969,17 @@
8764
8969
  SacWizardCommon.prototype.registerOnTouched = function (fn) {
8765
8970
  this.propagateTouch = function (obj) { return fn(obj); };
8766
8971
  };
8972
+ /**
8973
+ * Schritt selektieren
8974
+ * @param step Step welcher selektiert werden soll
8975
+ */
8976
+ SacWizardCommon.prototype.selectStep = function (step) {
8977
+ // Cancel if Navigation disabled
8978
+ if (this.disablenavigation) {
8979
+ return;
8980
+ }
8981
+ this.changeStep(step.id);
8982
+ };
8767
8983
  /**
8768
8984
  * Methode zum schreiben von Werten aus dem Model in das Control
8769
8985
  */
@@ -8772,16 +8988,34 @@
8772
8988
  this.changeStep(value);
8773
8989
  }
8774
8990
  };
8991
+ // #endregion Public Methods
8992
+ // #region Private Methods
8993
+ /**
8994
+ * Ursprünglicher Schritt wird selektiert
8995
+ */
8996
+ SacWizardCommon.prototype.initSteps = function () {
8997
+ var activeStep = this.wizardItems().filter(function (step) { return step.active; });
8998
+ if (activeStep.length === 0) {
8999
+ var initStep = this.wizardItems().toArray()[0];
9000
+ this.selectStep(initStep);
9001
+ initStep.disabled = false;
9002
+ this.setStepInternal(initStep.id);
9003
+ }
9004
+ };
9005
+ SacWizardCommon.prototype.setStepInternal = function (step) {
9006
+ this._currentstep = step;
9007
+ this.propagateChange(this._currentstep);
9008
+ };
8775
9009
  return SacWizardCommon;
8776
9010
  }());
8777
9011
  SacWizardCommon.decorators = [
8778
9012
  { type: i0.Directive }
8779
9013
  ];
8780
9014
  SacWizardCommon.propDecorators = {
8781
- name: [{ type: i0.Input }],
8782
9015
  disablenavigation: [{ type: i0.Input }],
8783
- currentstep: [{ type: i0.Input }],
8784
- stepchanged: [{ type: i0.Output }]
9016
+ name: [{ type: i0.Input }],
9017
+ stepchanged: [{ type: i0.Output }],
9018
+ currentstep: [{ type: i0.Input }]
8785
9019
  };
8786
9020
 
8787
9021
  /**
@@ -8789,14 +9023,16 @@
8789
9023
  */
8790
9024
  var SacWizardItemCommon = /** @class */ (function () {
8791
9025
  function SacWizardItemCommon() {
8792
- /**
8793
- * Prüft ob der Schritt abgeschlossen wurde.
8794
- */
8795
- this.iscomplete = false;
9026
+ // #region Properties
8796
9027
  /**
8797
9028
  * Prüft ob der Schritt disabled ist.
8798
9029
  */
8799
9030
  this.disabled = true;
9031
+ /**
9032
+ * Prüft ob der Schritt abgeschlossen wurde.
9033
+ */
9034
+ this.iscomplete = false;
9035
+ // #endregion Properties
8800
9036
  }
8801
9037
  return SacWizardItemCommon;
8802
9038
  }());
@@ -8805,9 +9041,9 @@
8805
9041
  ];
8806
9042
  SacWizardItemCommon.propDecorators = {
8807
9043
  active: [{ type: i0.Input }],
8808
- iscomplete: [{ type: i0.Input }],
8809
9044
  disabled: [{ type: i0.Input }],
8810
9045
  id: [{ type: i0.Input }],
9046
+ iscomplete: [{ type: i0.Input }],
8811
9047
  label: [{ type: i0.Input }]
8812
9048
  };
8813
9049
 
@@ -8815,6 +9051,8 @@
8815
9051
  * Settings für TinyMCE Dialog
8816
9052
  */
8817
9053
  var TinyMceDialogSettings = /** @class */ (function () {
9054
+ // #endregion Properties
9055
+ // #region Constructors
8818
9056
  /**
8819
9057
  * Konstruktor
8820
9058
  * @param init Initale Werte
@@ -8854,6 +9092,10 @@
8854
9092
  file_picker_callback: _this.showSelectDialog,
8855
9093
  save_onsavecallback: function () { },
8856
9094
  };
9095
+ /**
9096
+ * TinyMCE Config
9097
+ */
9098
+ _this._config = {};
8857
9099
  /**
8858
9100
  * Erlaubt im Filebrowser das löschen von Dateien
8859
9101
  */
@@ -8902,40 +9144,36 @@
8902
9144
  * Definiert das Control als Required
8903
9145
  */
8904
9146
  _this.isrequired = false;
8905
- /**
8906
- * Resource Key für Validation Message Required bei Control
8907
- */
8908
- _this.validationmessagerequired = _this.validationKeyService.ValidationErrorRequired;
8909
- /**
8910
- * Resource Key für Validation Message Required in Validation Summary
8911
- */
8912
- _this.validationmessagesummaryrequired = _this.validationKeyService.ValidationErrorSummaryRequired;
8913
9147
  /**
8914
9148
  * Event wenn Save Action in TinyMCE ausgelöst wird
8915
9149
  */
8916
9150
  _this.onsave = new i0.EventEmitter();
8917
- /**
8918
- * TinyMCE Config
8919
- */
8920
- _this._config = {};
8921
9151
  /**
8922
9152
  * Der Select Dialog wird angezeigt
8923
9153
  */
8924
9154
  _this.selectdialogvisible = false;
9155
+ /**
9156
+ * Resource Key für Validation Message Required bei Control
9157
+ */
9158
+ _this.validationmessagerequired = _this.validationKeyService.ValidationErrorRequired;
9159
+ /**
9160
+ * Resource Key für Validation Message Required in Validation Summary
9161
+ */
9162
+ _this.validationmessagesummaryrequired = _this.validationKeyService.ValidationErrorSummaryRequired;
8925
9163
  _this.validationKeyService = injector.get(SACVALIDATIONKEY_SERVICE, new SacDefaultValidationKeyService());
8926
9164
  _this.lngResourceService = injector.get(SACLOCALISATION_SERVICE, new SacDefaultLocalisationService(_this.validationKeyService));
8927
9165
  _this.config = {};
8928
9166
  return _this;
8929
9167
  }
8930
9168
  Object.defineProperty(SacTinyMceCommon.prototype, "config", {
9169
+ // #endregion Constructors
9170
+ // #region Public Getters And Setters
8931
9171
  /**
8932
9172
  * TinyMCE Konfiguration
8933
9173
  */
8934
9174
  get: function () {
8935
9175
  return this._config;
8936
9176
  },
8937
- // #endregion Constructors
8938
- // #region Public Getters And Setters
8939
9177
  /**
8940
9178
  * TinyMCE Konfiguration
8941
9179
  * @link https://www.tiny.cloud/docs/configure/
@@ -8948,6 +9186,12 @@
8948
9186
  });
8949
9187
  // #endregion Public Getters And Setters
8950
9188
  // #region Public Methods
9189
+ /**
9190
+ * event when control is touched
9191
+ */
9192
+ SacTinyMceCommon.prototype.blur = function () {
9193
+ this.propagateTouch();
9194
+ };
8951
9195
  /**
8952
9196
  * Schliesst den Dateiauswahl Dialog
8953
9197
  */
@@ -8966,10 +9210,8 @@
8966
9210
  */
8967
9211
  SacTinyMceCommon.prototype.setSelectDialogResult = function () {
8968
9212
  if (this.selectDialogSettings.value) {
8969
- if (this.selectDialogSettings.value.startsWith('/') ||
8970
- this.selectDialogSettings.value.startsWith('\\')) {
8971
- this.selectDialogSettings.value =
8972
- this.selectDialogSettings.value.substring(1);
9213
+ if (this.selectDialogSettings.value.startsWith('/') || this.selectDialogSettings.value.startsWith('\\')) {
9214
+ this.selectDialogSettings.value = this.selectDialogSettings.value.substring(1);
8973
9215
  }
8974
9216
  this.selectDialogSettings.callback(this.selectDialogSettings.value);
8975
9217
  }
@@ -8995,16 +9237,13 @@
8995
9237
  });
8996
9238
  switch (meta.filetype) {
8997
9239
  case 'image':
8998
- _this.settings.angular.selectDialogSettings.allowedtypes =
8999
- _this.settings.angular.filetypesimages;
9240
+ _this.settings.angular.selectDialogSettings.allowedtypes = _this.settings.angular.filetypesimages;
9000
9241
  break;
9001
9242
  case 'media':
9002
- _this.settings.angular.selectDialogSettings.allowedtypes =
9003
- _this.settings.angular.filetypesvideo;
9243
+ _this.settings.angular.selectDialogSettings.allowedtypes = _this.settings.angular.filetypesvideo;
9004
9244
  break;
9005
9245
  default:
9006
- _this.settings.angular.selectDialogSettings.allowedtypes =
9007
- _this.settings.angular.filetypesfiles;
9246
+ _this.settings.angular.selectDialogSettings.allowedtypes = _this.settings.angular.filetypesfiles;
9008
9247
  break;
9009
9248
  }
9010
9249
  });
@@ -9022,7 +9261,7 @@
9022
9261
  }
9023
9262
  return error;
9024
9263
  };
9025
- // #endregion Public Abstract Methods
9264
+ // #endregion Public Methods
9026
9265
  // #region Private Methods
9027
9266
  /**
9028
9267
  * Gibt die TinyMCE Settings zurück, die aus den Properties der Angular Komponenten erzeugt werden
@@ -9058,9 +9297,9 @@
9058
9297
  filetypesvideo: [{ type: i0.Input }],
9059
9298
  height: [{ type: i0.Input }],
9060
9299
  isrequired: [{ type: i0.Input }],
9300
+ onsave: [{ type: i0.Output }],
9061
9301
  validationmessagerequired: [{ type: i0.Input }],
9062
9302
  validationmessagesummaryrequired: [{ type: i0.Input }],
9063
- onsave: [{ type: i0.Output }],
9064
9303
  config: [{ type: i0.Input }]
9065
9304
  };
9066
9305
 
@@ -9507,6 +9746,14 @@
9507
9746
  * Position of the tooltip at the top
9508
9747
  */
9509
9748
  this.TopPos = 0;
9749
+ /**
9750
+ * Identifier used for the E2E data attribute.
9751
+ */
9752
+ this.e2eidentifier = null;
9753
+ /**
9754
+ * name of control
9755
+ */
9756
+ this.name = createGuid();
9510
9757
  /**
9511
9758
  * Position of the picker arrow at the left
9512
9759
  */
@@ -9707,6 +9954,8 @@
9707
9954
  ]; };
9708
9955
  SacTooltipCommon.propDecorators = {
9709
9956
  content: [{ type: i0.ViewChild, args: ['container', { static: true },] }],
9957
+ e2eidentifier: [{ type: i0.Input }],
9958
+ name: [{ type: i0.Input }],
9710
9959
  position: [{ type: i0.Input }],
9711
9960
  tooltiptext: [{ type: i0.Input }],
9712
9961
  inlinemode: [{ type: i0.Input }],
@@ -9761,9 +10010,22 @@
9761
10010
  * Handling von neuen Files im Input Control
9762
10011
  */
9763
10012
  _this.fileListener = function () {
9764
- if (_this.uploadInput.nativeElement.files) {
9765
- _this.uploadService.handleFileList(_this.uploadInput.nativeElement.files);
10013
+ // exit if files is null or undefined
10014
+ if (!_this.uploadInput.nativeElement.files) {
10015
+ return;
9766
10016
  }
10017
+ if (_this.GetMaxFiles() > 0) {
10018
+ var maxFiles = _this.GetMaxFiles() + _this.UploadedFileCount();
10019
+ var possibleFiles = maxFiles - _this.uploadInput.nativeElement.files.length;
10020
+ if (possibleFiles < 0) {
10021
+ var dataTransfer_1 = new DataTransfer();
10022
+ var files = Array.from(_this.uploadInput.nativeElement.files).splice(0, _this.uploadInput.nativeElement.files.length + possibleFiles);
10023
+ // clone files
10024
+ files.forEach(function (file) { return dataTransfer_1.items.add(file); });
10025
+ _this.uploadInput.nativeElement.files = dataTransfer_1.files;
10026
+ }
10027
+ }
10028
+ _this.uploadService.handleFileList(_this.uploadInput.nativeElement.files);
9767
10029
  };
9768
10030
  /**
9769
10031
  * Definiert das Control als Required
@@ -10131,7 +10393,7 @@
10131
10393
  }
10132
10394
  return error;
10133
10395
  };
10134
- // #endregion Public Methods
10396
+ // #endregion Protected Methods
10135
10397
  // #region Private Methods
10136
10398
  SacUploadBase.prototype.UpdateFileCount = function () {
10137
10399
  // HACK: Add addition property to FormControl. Can be fixed if solution for ticket: https://github.com/angular/angular/issues/19686
@@ -10271,7 +10533,7 @@
10271
10533
  */
10272
10534
  _this.validationmessagesummaryminfiles = _this.validationKeyService.ValidationErrorSummaryFilesMin;
10273
10535
  return _this;
10274
- // #endregion Public Methods
10536
+ // #endregion Protected Methods
10275
10537
  }
10276
10538
  // #endregion Properties
10277
10539
  // #region Public Methods
@@ -10386,6 +10648,14 @@
10386
10648
  }
10387
10649
  return error;
10388
10650
  };
10651
+ // #endregion Public Methods
10652
+ // #region Protected Methods
10653
+ /**
10654
+ * @inheritdoc
10655
+ */
10656
+ SacDropzoneMultipleCommon.prototype.GetMaxFiles = function () {
10657
+ return this.maxfiles;
10658
+ };
10389
10659
  return SacDropzoneMultipleCommon;
10390
10660
  }(SacUploadBase));
10391
10661
  SacDropzoneMultipleCommon.decorators = [
@@ -10415,7 +10685,7 @@
10415
10685
  */
10416
10686
  _this.uploadheight = null;
10417
10687
  return _this;
10418
- // #endregion Public Methods
10688
+ // #endregion Protected Methods
10419
10689
  }
10420
10690
  // #endregion Properties
10421
10691
  // #region Public Methods
@@ -10498,6 +10768,14 @@
10498
10768
  this.active = true;
10499
10769
  }
10500
10770
  };
10771
+ // #endregion Public Methods
10772
+ // #region Protected Methods
10773
+ /**
10774
+ * @inheritdoc
10775
+ */
10776
+ SacDropzoneSingleCommon.prototype.GetMaxFiles = function () {
10777
+ return 1;
10778
+ };
10501
10779
  return SacDropzoneSingleCommon;
10502
10780
  }(SacUploadBase));
10503
10781
  SacDropzoneSingleCommon.decorators = [
@@ -10539,7 +10817,7 @@
10539
10817
  */
10540
10818
  _this.validationmessagesummaryminfiles = _this.validationKeyService.ValidationErrorSummaryFilesMin;
10541
10819
  return _this;
10542
- // #endregion Public Methods
10820
+ // #endregion Protected Methods
10543
10821
  }
10544
10822
  // #endregion Properties
10545
10823
  // #region Public Methods
@@ -10613,6 +10891,14 @@
10613
10891
  }
10614
10892
  return error;
10615
10893
  };
10894
+ // #endregion Public Methods
10895
+ // #region Protected Methods
10896
+ /**
10897
+ * @inheritdoc
10898
+ */
10899
+ SacUploadMultipleCommon.prototype.GetMaxFiles = function () {
10900
+ return this.maxfiles;
10901
+ };
10616
10902
  return SacUploadMultipleCommon;
10617
10903
  }(SacUploadBase));
10618
10904
  SacUploadMultipleCommon.decorators = [
@@ -10643,7 +10929,7 @@
10643
10929
  */
10644
10930
  _this.buttonupload = '';
10645
10931
  return _this;
10646
- // #endregion Public Methods
10932
+ // #endregion Protected Methods
10647
10933
  }
10648
10934
  // #endregion Properties
10649
10935
  // #region Public Methods
@@ -10676,6 +10962,14 @@
10676
10962
  }
10677
10963
  }
10678
10964
  };
10965
+ // #endregion Public Methods
10966
+ // #region Protected Methods
10967
+ /**
10968
+ * @inheritdoc
10969
+ */
10970
+ SacUploadSingleCommon.prototype.GetMaxFiles = function () {
10971
+ return 1;
10972
+ };
10679
10973
  return SacUploadSingleCommon;
10680
10974
  }(SacUploadBase));
10681
10975
  SacUploadSingleCommon.decorators = [
@@ -11168,43 +11462,35 @@
11168
11462
  */
11169
11463
  var SacConfirmCommon = /** @class */ (function () {
11170
11464
  function SacConfirmCommon() {
11171
- //#region Input / Output Properties
11172
- /**
11173
- * Event wenn Dialog geschlossen wird
11174
- */
11175
- this.onconfirm = new i0.EventEmitter();
11176
- /**
11177
- * Dialog Titel für Confirm Dialog
11178
- */
11179
- this.title = '';
11465
+ // #region Properties
11180
11466
  /**
11181
- * Nachricht die auf dem Dialog angezeigt wird
11467
+ * Map mit Buttons die in Dialog angezeigt werden.
11182
11468
  */
11183
- this.message = '';
11469
+ this.buttons = [];
11184
11470
  /**
11185
11471
  * Icon welches auf dem Dialog angezeigt wird
11186
11472
  */
11187
11473
  this.image = '';
11188
- /**
11189
- * Map mit Buttons die in Dialog angezeigt werden.
11190
- */
11191
- this.buttons = [];
11192
- //#endregion
11193
- //#region Internal Properties and Methods
11194
11474
  /**
11195
11475
  * Definiert ob der Dialog sichtbar ist
11196
11476
  */
11197
11477
  this.isvisible = false;
11198
- //#endregion
11478
+ /**
11479
+ * Nachricht die auf dem Dialog angezeigt wird
11480
+ */
11481
+ this.message = '';
11482
+ /**
11483
+ * Event wenn Dialog geschlossen wird
11484
+ */
11485
+ this.onconfirm = new i0.EventEmitter();
11486
+ /**
11487
+ * Dialog Titel für Confirm Dialog
11488
+ */
11489
+ this.title = '';
11490
+ // #endregion Public Methods
11199
11491
  }
11200
- /**
11201
- * Definiert, ob für den Dialog ein Image definiert wurde
11202
- */
11203
- SacConfirmCommon.prototype.hasImage = function () {
11204
- return this.image !== '';
11205
- };
11206
- //#endregion
11207
- //#region Public Methods
11492
+ // #endregion Properties
11493
+ // #region Public Methods
11208
11494
  /**
11209
11495
  * Action wenn Button auf Dialog geklickt wurde. Löst den EventEmitter aus und blendet den Dialog aus.
11210
11496
  * @param action
@@ -11214,10 +11500,10 @@
11214
11500
  this.isvisible = false;
11215
11501
  };
11216
11502
  /**
11217
- * Zeigt den Dialog an
11503
+ * Definiert, ob für den Dialog ein Image definiert wurde
11218
11504
  */
11219
- SacConfirmCommon.prototype.show = function () {
11220
- this.isvisible = true;
11505
+ SacConfirmCommon.prototype.hasImage = function () {
11506
+ return this.image !== '';
11221
11507
  };
11222
11508
  /**
11223
11509
  * Blendet den Dialog aus
@@ -11225,17 +11511,23 @@
11225
11511
  SacConfirmCommon.prototype.hide = function () {
11226
11512
  this.isvisible = false;
11227
11513
  };
11514
+ /**
11515
+ * Zeigt den Dialog an
11516
+ */
11517
+ SacConfirmCommon.prototype.show = function () {
11518
+ this.isvisible = true;
11519
+ };
11228
11520
  return SacConfirmCommon;
11229
11521
  }());
11230
11522
  SacConfirmCommon.decorators = [
11231
11523
  { type: i0.Directive }
11232
11524
  ];
11233
11525
  SacConfirmCommon.propDecorators = {
11234
- onconfirm: [{ type: i0.Output }],
11235
- title: [{ type: i0.Input }],
11236
- message: [{ type: i0.Input }],
11526
+ buttons: [{ type: i0.Input }],
11237
11527
  image: [{ type: i0.Input }],
11238
- buttons: [{ type: i0.Input }]
11528
+ message: [{ type: i0.Input }],
11529
+ onconfirm: [{ type: i0.Output }],
11530
+ title: [{ type: i0.Input }]
11239
11531
  };
11240
11532
 
11241
11533
  /**
@@ -11775,10 +12067,18 @@
11775
12067
  * Extra CSS Klassen für das Control
11776
12068
  */
11777
12069
  this.cssclass = '';
12070
+ /**
12071
+ * Identifier used for the E2E data attribute.
12072
+ */
12073
+ this.e2eidentifier = null;
11778
12074
  /**
11779
12075
  * Definiert ob das Dropdown offen ist.
11780
12076
  */
11781
12077
  this.isopen = false;
12078
+ /**
12079
+ * name of control
12080
+ */
12081
+ this.name = createGuid();
11782
12082
  /**
11783
12083
  * The preferred placement of the dropdown.
11784
12084
  *
@@ -11931,8 +12231,10 @@
11931
12231
  buttontemplate: [{ type: i0.Input }],
11932
12232
  container: [{ type: i0.Input }],
11933
12233
  cssclass: [{ type: i0.Input }],
12234
+ e2eidentifier: [{ type: i0.Input }],
11934
12235
  isopen: [{ type: i0.Input }],
11935
12236
  menuitems: [{ type: i0.ContentChildren, args: [SacContextmenuItemCommon,] }],
12237
+ name: [{ type: i0.Input }],
11936
12238
  placement: [{ type: i0.Input }],
11937
12239
  onClick: [{ type: i0.HostListener, args: ['document:click', ['$event.target'],] }]
11938
12240
  };
@@ -12659,6 +12961,57 @@
12659
12961
  exitEditMode: [{ type: i0.HostListener, args: ['document:click', ['$event.target'],] }]
12660
12962
  };
12661
12963
 
12964
+ var SacTestingAttributePipe = /** @class */ (function () {
12965
+ // #endregion Properties
12966
+ // #region Constructors
12967
+ /**
12968
+ *
12969
+ */
12970
+ function SacTestingAttributePipe(injector) {
12971
+ // get attribute state from config
12972
+ var configurationService = injector.get(SACCONFIGURATION_SERVICE, new SacDefaultConfigurationService());
12973
+ this.isEnabled = configurationService.EnableE2EAttributes;
12974
+ }
12975
+ // #endregion Constructors
12976
+ // #region Public Methods
12977
+ SacTestingAttributePipe.prototype.transform = function (controlname, e2eattribute) {
12978
+ // return null to disable attribute if disabled
12979
+ if (!this.isEnabled) {
12980
+ return null;
12981
+ }
12982
+ if (e2eattribute) {
12983
+ return e2eattribute;
12984
+ }
12985
+ if (controlname) {
12986
+ return controlname;
12987
+ }
12988
+ // disable attribute if name and e2e attribute is not set
12989
+ return null;
12990
+ };
12991
+ return SacTestingAttributePipe;
12992
+ }());
12993
+ SacTestingAttributePipe.decorators = [
12994
+ { type: i0.Pipe, args: [{
12995
+ name: 'testingattribute',
12996
+ },] }
12997
+ ];
12998
+ SacTestingAttributePipe.ctorParameters = function () { return [
12999
+ { type: i0.Injector }
13000
+ ]; };
13001
+
13002
+ var SACCommonUtliltiesModule = /** @class */ (function () {
13003
+ function SACCommonUtliltiesModule() {
13004
+ }
13005
+ return SACCommonUtliltiesModule;
13006
+ }());
13007
+ SACCommonUtliltiesModule.decorators = [
13008
+ { type: i0.NgModule, args: [{
13009
+ declarations: [SacTestingAttributePipe],
13010
+ imports: [],
13011
+ exports: [SacTestingAttributePipe],
13012
+ },] }
13013
+ ];
13014
+
12662
13015
  /**
12663
13016
  * Model für Sprachen
12664
13017
  */
@@ -12681,7 +13034,7 @@
12681
13034
  { type: i0.NgModule, args: [{
12682
13035
  declarations: [],
12683
13036
  imports: [],
12684
- exports: []
13037
+ exports: [],
12685
13038
  },] }
12686
13039
  ];
12687
13040
 
@@ -12701,6 +13054,7 @@
12701
13054
  exports.Positioning = Positioning;
12702
13055
  exports.SACCONFIGURATION_SERVICE = SACCONFIGURATION_SERVICE;
12703
13056
  exports.SACCommonListboxOptionModule = SACCommonListboxOptionModule;
13057
+ exports.SACCommonUtliltiesModule = SACCommonUtliltiesModule;
12704
13058
  exports.SACFILEBROWSER_SERVICE = SACFILEBROWSER_SERVICE;
12705
13059
  exports.SACICON_SERVICE = SACICON_SERVICE;
12706
13060
  exports.SACLANGUAGE_SERVICE = SACLANGUAGE_SERVICE;
@@ -12761,6 +13115,7 @@
12761
13115
  exports.SacStaticLabelCommon = SacStaticLabelCommon;
12762
13116
  exports.SacTabCommon = SacTabCommon;
12763
13117
  exports.SacTabItemCommon = SacTabItemCommon;
13118
+ exports.SacTestingAttributePipe = SacTestingAttributePipe;
12764
13119
  exports.SacTimeCommon = SacTimeCommon;
12765
13120
  exports.SacTinyMceCommon = SacTinyMceCommon;
12766
13121
  exports.SacTooltipCommon = SacTooltipCommon;